factor out the common stuff
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2
3         * check/Makefile.am:
4         * check/gst.supp:
5         * common/Makefile.am:
6         * common/check.mak:
7         * common/gst.supp:
8           factor out some of the common stuff so we can use it
9
10 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11
12         * check/Makefile.am:
13         * check/gst/gstiterator.c: (GST_START_TEST):
14         * check/gst/gstsystemclock.c: (GST_START_TEST),
15         (gst_systemclock_suite):
16         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
17         * gst/gstclock.c:
18           valgrind more tests
19
20 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
21
22         * check/elements/.cvsignore:
23         * check/elements/gstfakesrc.c:
24           rename to name of element
25         * check/elements/identity.c: (chain_func), (event_func),
26         (setup_identity), (cleanup_identity), (GST_START_TEST),
27         (identity_suite), (main):
28           add a test for identity
29         * check/Makefile.am:
30         * pkgconfig/Makefile.am:
31         * pkgconfig/gstreamer-check.pc.in:
32         * pkgconfig/gstreamer-check-uninstalled.pc.in:
33         * gst/check:
34         * gst/Makefile.am:
35         * configure.ac:
36           move the check stuff to a library that gets installed
37         * check/gst-libs/controller.c: (GST_START_TEST):
38         * check/gst-libs/gdp.c:
39         * check/gst/gst.c: (GST_START_TEST):
40         * check/gst/gstbin.c:
41         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
42         * check/gst/gstbus.c:
43         * check/gst/gstcaps.c: (GST_START_TEST):
44         * check/gst/gstelement.c:
45         * check/gst/gstghostpad.c:
46         * check/gst/gstiterator.c:
47         * check/gst/gstmessage.c:
48         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
49         * check/gst/gstobject.c:
50         * check/gst/gstpad.c: (GST_START_TEST):
51         * check/gst/gststructure.c: (GST_START_TEST):
52         * check/gst/gstsystemclock.c: (GST_START_TEST),
53         (gst_systemclock_suite):
54         * check/gst/gsttag.c: (gst_tag_suite):
55         * check/gst/gstvalue.c:
56         * check/pipelines/cleanup.c:
57         * check/pipelines/simple_launch_lines.c:
58         * check/states/sinks.c:
59           change include statement
60
61         * docs/gst/gstreamer-sections.txt:
62         * docs/gst/tmpl/gstpad.sgml:
63           document more pad stuff
64         * gst/gstminiobject.c: (gst_mini_object_ref),
65         (gst_mini_object_unref):
66           debug refcounting
67
68 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
69
70         * docs/gst/tmpl/gst.sgml:
71         * gst/gst.c:
72           eliminate another tmpl file, fix spelling in the long-description
73
74 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
75
76         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
77         (test_event), (timediff), (gstevents_suite):
78           Should fix build on 64-bit arch's
79
80 2005-08-18  Andy Wingo  <wingo@pobox.com>
81
82         Make sure that when a pipeline goes to PLAYING, that data has
83         actually hit the sink.
84
85         * check/states/sinks.c (test_sink): A sink that doesn't get any
86         data shouldn't return SUCCESS for going to either PLAYING or
87         PAUSED. Test also the return values on the way back down.
88
89         * gst/gstelement.c (gst_element_set_state): When changing the
90         state of an element currently changing state asynchronously, go to
91         lost-state after commiting the pending state. Makes future calls
92         to get_state continue to return ASYNC.
93
94         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
95         ASYNC when going to PLAYING if we still don't have preroll, as can
96         happen with live sources.
97
98 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
99
100         * docs/pwg/advanced-types.xml:
101           Hack long paragraph into 2 chunks as a workaround for buggy
102           jadetex version in sid and breezy that loops infinitely and
103           eats all RAM.
104
105 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
106
107         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
108         (test_event), (timediff), (gstevents_suite):
109           Provide more error margin in clock measurements to allow for 
110           g_get_current_time inaccuracies.
111
112 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
113
114         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
115         (test_event), (timediff), (gstevents_suite):
116            Fix error message output so I might be able to tell why the
117            test works here but fails on the build farm.
118
119 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
120
121         * check/Makefile.am:
122         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
123         (test_event), (timediff), (gstevents_suite), (main):
124           I wrote a test!
125
126         * docs/design/part-seeking.txt:
127           Spelling correction
128
129         * docs/gst/tmpl/gstevent.sgml:
130         * docs/gst/tmpl/gstfakesrc.sgml:
131           Docs updates.
132
133         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
134           Treat a buffer-without-newsegment the same as a receiving 
135           a newsegment not in time format, and disable syncing to the clock
136           with a warning.
137
138         * gst/gstbus.c: (gst_bus_set_sync_handler):
139           Assert if anyone tries to replace the existing sync_handler for bus, 
140           as only the owner should be setting it.
141
142         * gst/gstevent.h:
143           Have a fixed set of custom event enums with events identified by
144           their structure name (as in 0.8), rather than a free-for-all
145           allowing collisions between enum values from different plugins.
146
147         * gst/gstpad.c: (gst_pad_class_init):
148           Docs change.
149           
150         * gst/gstqueue.c: (gst_queue_handle_sink_event):
151           Handle out-of-band downstream events from the sending thread.
152
153 2005-08-17  Andy Wingo  <wingo@pobox.com>
154
155         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
156         play-timeout==0 to mean no timeout at all. In that case, don't
157         bother with a get_state or a warning, just return directly, even
158         if it's ASYNC.
159
160         * gst/base/gstbasetransform.c: Debug changes.
161
162         * gst/gstutils.h:
163         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
164         ensure bins post state change messages. A bit of a hack but I can't
165         think of a way to avoid it.
166
167         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
168
169 2005-08-16  Andy Wingo  <wingo@pobox.com>
170
171         * gst/base/gstadapter.h:
172         * gst/base/gstadapter.c (gst_adapter_take): New function, like
173         peek() but you own the data. Not terribly efficient atm.
174
175 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
176
177         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
178         (gst_element_found_tags):
179         * gst/gstutils.h:
180           Add two utility functions for tag handling.
181
182 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
183
184         * docs/manual/advanced-dataaccess.xml:
185         * docs/manual/basics-helloworld.xml:
186           Fix docs to use _bin_add() before _link(), which fixes the examples
187           with recent core versions (reported by Madhan Raj M
188           <raj_madan@rediffmail.com>, #313199).
189
190 2005-08-16  Wim Taymans  <wim@fluendo.com>
191
192         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
193         Added subtract checks.
194
195         * docs/design/part-events.txt:
196         Some more docs about newsegment
197
198         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
199         Fix FIXME
200
201         * gst/gstcaps.c: (gst_caps_to_string):
202         Add comments, cleanups.
203         
204         * gst/gstelement.c: (gst_element_save_thyself):
205         cleanups
206         
207         * gst/gstvalue.c: (gst_value_collect_int_range),
208         (gst_string_unwrap), (gst_value_union_int_int_range),
209         (gst_value_union_int_range_int_range),
210         (gst_value_intersect_int_int_range),
211         (gst_value_intersect_int_range_int_range),
212         (gst_value_intersect_double_double_range),
213         (gst_value_intersect_double_range_double_range),
214         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
215         (gst_value_subtract_int_range_int),
216         (gst_value_subtract_double_range_double),
217         (gst_value_subtract_double_range_double_range),
218         (gst_value_subtract_from_list), (gst_value_subtract_list),
219         (gst_value_can_compare), (gst_value_compare_fraction):
220         Cleanups, add comments, remove unneeded asserts.
221
222 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
223
224         * tools/gst-launch.c: (event_loop):
225           don't convert NULL structures to strings
226
227 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
228
229         * docs/gst/gstreamer-sections.txt:
230           made some defines private
231         * docs/gst/tmpl/gstconfig.sgml:
232         * docs/gst/tmpl/gstqueue.sgml:
233         * docs/gst/tmpl/gsttaglist.sgml:
234         * docs/gst/tmpl/gsttypes.sgml:
235         * docs/gst/tmpl/gstutils.sgml:
236         * docs/pwg/appendix-porting.xml:
237         * gst/base/gstbasesink.h:
238         * gst/base/gstbasesrc.c:
239         * gst/base/gstbasesrc.h:
240         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
241         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
242         * gst/gstelement.c: (gst_element_class_init):
243         * gst/gstpad.c: (gst_pad_class_init):
244         * gst/gstqueue.c: (gst_queue_class_init):
245         * gst/gstxml.c: (gst_xml_class_init):
246           documented all undocumented signal inline
247         * libs/gst/controller/gst-controller.h:
248           added padding
249
250 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
251
252         * docs/pwg/appendix-porting.xml:
253           Document _set_link_function -> _set_setcaps_function.
254
255 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
256
257         * check/Makefile.am:
258           add a .check target for running the check
259         * check/gst-libs/controller.c: (GST_START_TEST):
260           cosmetic fixups
261         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
262           complete checks for gstbuffer; would be nice if I could get the
263           gcov stuff to work so I can see if I actually completed gstbuffer.c
264         * check/gstcheck.h:
265           add ASSERT_BUFFER_REFCOUNT
266
267 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
268
269         * docs/gst/gstreamer-sections.txt:
270         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
271         * gst/gsttag.h:
272           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
273           spew out a warning if a tag that is already registered
274           is re-registered, unless it is re-registered with a 
275           different type (#308438).
276
277 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
278
279         * docs/pwg/appendix-porting.xml:
280         * docs/pwg/building-state.xml:
281           Add some paragraphs about state changes in 0.9 to the PWG
282           and the porting guide, in particular about the new meaning
283           of GST_STATE_PAUSED and how to write state change functions
284           with concurrent access by multiple threads in mind.
285
286 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
287
288         * docs/gst/gstreamer-docs.sgml:
289         * docs/libs/gstreamer-libs-docs.sgml:
290           added deprecation and since indexes
291         * libs/gst/controller/gst-controller.c:
292         * libs/gst/controller/gst-helper.c:
293           added since tags
294
295
296 2005-08-11  Wim Taymans  <wim@fluendo.com>
297
298         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
299         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
300         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
301         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
302         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
303         (gst_ghost_pad_set_target):
304         Actually implement (re)setting the target on a ghostpad
305         as described in the docs.
306
307 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
308
309         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
310           Check whether GST_DEBUG_NO_COLOR environment variable is
311           set and disable coloured debug output if that is the case.
312
313 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
314
315         * gst/base/gsttypefindhelper.c: (helper_find_peek),
316         (gst_type_find_helper):
317           The memory returned by gst_type_find_peek() needs to
318           stay valid until the end of a typefind function, and
319           typefind functions may keep results from different 
320           offsets around, so we can't just unref the buffer from
321           the previous _peek(), but have to save all buffers 
322           returned by _peek() until typefinding is done and only
323           free them then.
324
325 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
326
327         * docs/gst/gstreamer-sections.txt:
328         * gst/gstutils.h:
329           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
330
331 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
332
333         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
334           Fix a pretty good memleak.
335
336 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
337
338         * gst/gstiterator.h:
339           Fix wrong include and 'make distcheck'.
340
341 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
342
343         * gst/gstbin.c: (bin_bus_handler):
344           Use gst_element_post_message() instead.
345
346 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
347
348         * gst/base/gstadapter.h:
349         * gst/base/gstbasesink.h:
350         * gst/base/gstbasesrc.h:
351         * gst/base/gstbasetransform.h:
352         * gst/base/gstcollectpads.h:
353         * gst/base/gstpushsrc.h:
354         * gst/gstiterator.h:
355           Add padding to our base elements' class and instance structs and
356           to GstIterator (you will need to rebuild all plugins and apps!)
357
358 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
359
360         * gst/gstbin.c: (bin_bus_handler):
361           Make default message forwarding from child->bus to bin->bus
362           threadsafe and make it not emit warnings if the parent has no bus.
363
364 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
365
366         * gst/gstelement.c: (activate_pads):
367           On paused->ready, set pad->caps to NULL, as is the documented
368           behaviour in this state change. Fixes playback of series of
369           media files when visualization is enabled in Totem.
370
371 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
372
373         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
374           Allow NULL as filter-caps (which means "any").
375
376 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
377
378         * docs/libs/gstreamer-libs-sections.txt:
379         * libs/gst/controller/gst-controller.c:
380         * libs/gst/controller/gst-controller.h:
381         * libs/gst/controller/gst-helper.c:
382           adding more entries to the docs and fix small doc-bugs
383
384 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
385
386         * docs/gst/gstreamer-docs.sgml:
387         * docs/gst/gstreamer-sections.txt:
388         * docs/gst/gstreamer.types:
389         * docs/gst/tmpl/gstbasesink.sgml:
390         * docs/gst/tmpl/gstbasesrc.sgml:
391         * docs/gst/tmpl/gstbasetransform.sgml:
392         * docs/gst/tmpl/gstfakesrc.sgml:
393         * gst/base/gstcollectpads.c:
394         * gst/base/gstcollectpads.h:
395         * libs/gst/controller/gst-controller.c:
396         * libs/gst/controller/gst-controller.h:
397         * libs/gst/controller/gst-helper.c:
398         * libs/gst/controller/gst-interpolation.c:
399         * libs/gst/controller/lib.c:
400           added long/short desc for controller docs
401           added collectpads base class docs
402           added correct includes to base-class docs
403
404 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
405
406         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
407         (gst_test_mono_source_set_property),
408         (gst_test_mono_source_class_init), (GST_START_TEST),
409         (gst_controller_suite):
410         * docs/gst/gstreamer-docs.sgml:
411         * docs/gst/gstreamer-sections.txt:
412         * docs/gst/gstreamer.types:
413         * docs/libs/gstreamer-libs-docs.sgml:
414         * docs/libs/gstreamer-libs-sections.txt:
415         * gst/base/gstadapter.c:
416         * libs/gst/controller/gst-controller.c:
417         (gst_controlled_property_new), (gst_controlled_property_free),
418         (gst_controller_new_valist),
419         (gst_controller_remove_properties_valist),
420         (gst_controller_sink_values), (_gst_controller_finalize):
421         * libs/gst/controller/gst-controller.h:
422         * libs/gst/controller/gst-helper.c:
423         (gst_object_control_properties), (gst_object_uncontrol_properties),
424         (gst_object_get_controller), (gst_object_set_controller),
425         (gst_object_sink_values), (gst_object_get_value_arrays),
426         (gst_object_get_value_array):
427           more tests (and fixes) for the controller
428           more docs for the controller
429           integrated companies docs for the adapter 
430
431 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
432
433         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
434         (GST_START_TEST), (fakesrc_suite):
435           add tests for sizetype
436
437 2005-08-04  Andy Wingo  <wingo@pobox.com>
438
439         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
440         fixes buffer_alloc proxying among other things.
441
442         * gst/base/gstbasetransform.c:
443         * gst/base/gstbasetransform.h:
444         Revert patch to gstbasetransform from 7-28 removing
445         delay_configure.
446
447         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
448         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
449         Semantics changed, should return not the size of the output buffer
450         but the byte size of a buffer with a given caps.
451
452         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
453         debug object.
454         (gst_base_transform_configure_caps): Don't set out_size here: (in,
455         out) are not the pad caps until setcaps finishes.
456         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
457         not-in-place case as well. Deal with changing from in-place to
458         not-in-place within calling pad_alloc_buffer. Still a bit
459         concerned about the overhead here...
460
461 2005-08-03  Andy Wingo  <wingo@pobox.com>
462
463         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
464         fixating is an error.
465
466 2005-08-04  Edward Hervey  <edward@fluendo.com>
467
468         * gst/base/gstadapter.h: 
469         Added gst_adapter_get_type() to the header
470
471 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
472
473         * check/Makefile.am:
474         * check/gst-libs/controller.c:
475         * libs/gst/controller/gst-controller.c:
476         (gst_controller_new_valist):
477           added check test suite for the controller
478         * gst/base/gstpushsrc.c:
479           fixed a doc typo
480
481 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
482
483         * docs/gst/Makefile.am:
484         * docs/gst/gstreamer-docs.sgml:
485         * docs/gst/gstreamer-sections.txt:
486         * docs/gst/gstreamer.types:
487         * docs/gst/tmpl/gstfakesrc.sgml:
488         * gst/base/README:
489         * gst/base/gstbasesink.c:
490         * gst/base/gstbasesink.h:
491         * gst/base/gstbasesrc.c:
492         * gst/base/gstbasesrc.h:
493         * gst/base/gstbasetransform.c:
494         * gst/base/gstpushsrc.c:
495         * gst/base/gstpushsrc.h:
496           add short/long description docs to base classes
497           add pushsrc to the docs
498           remove consolidated doc fragments
499
500 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
501
502         * configure.ac:
503         * docs/libs/Makefile.am:
504         * docs/libs/gstreamer-libs-docs.sgml:
505         * docs/libs/gstreamer-libs-sections.txt:
506         * docs/libs/gstreamer-libs.types:
507         * examples/Makefile.am:
508         * examples/controller/.cvsignore:
509         * examples/controller/Makefile.am:
510         * examples/controller/audio-example.c: (main):
511         * libs/gst/Makefile.am:
512         * libs/gst/controller/.cvsignore:
513         * libs/gst/controller/Makefile.am:
514         * libs/gst/controller/gst-controller.c:
515         (on_object_controlled_property_changed), (gst_timed_value_compare),
516         (gst_timed_value_find),
517         (gst_controlled_property_set_interpolation_mode),
518         (gst_controlled_property_new), (gst_controlled_property_free),
519         (gst_controller_find_controlled_property),
520         (gst_controller_new_valist), (gst_controller_new),
521         (gst_controller_remove_properties_valist),
522         (gst_controller_remove_properties), (gst_controller_set),
523         (gst_controller_set_from_list), (gst_controller_unset),
524         (gst_controller_get), (gst_controller_get_all),
525         (gst_controller_sink_values), (gst_controller_get_value_arrays),
526         (gst_controller_get_value_array),
527         (gst_controller_set_interpolation_mode),
528         (_gst_controller_finalize), (_gst_controller_init),
529         (_gst_controller_class_init), (gst_controller_get_type):
530         * libs/gst/controller/gst-controller.h:
531         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
532         (g_object_uncontrol_properties), (g_object_get_controller),
533         (g_object_set_controller), (g_object_sink_values),
534         (g_object_get_value_arrays), (g_object_get_value_array):
535         * libs/gst/controller/gst-interpolation.c:
536         (gst_controlled_property_find_timed_value_node),
537         (interpolate_none_get), (interpolate_trigger_get),
538         (interpolate_trigger_get_value_array):
539         * libs/gst/controller/lib.c: (gst_controller_init):
540         * pkgconfig/Makefile.am:
541         * pkgconfig/gstreamer-control-uninstalled.pc.in:
542         * pkgconfig/gstreamer-control.pc.in:
543         * testsuite/Makefile.am:
544         * testsuite/controller/.cvsignore:
545         * testsuite/controller/Makefile.am:
546         * testsuite/controller/interpolator.c: (main):
547           added controller code
548           removed dparam pc files
549
550 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
551         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
552         (gst_collectpads_stop):
553           Broadcast the condition when shutting down, to make sure we wake all
554           threads up. Shut down pads on finalize, for safety.
555
556 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
557         * gst/base/gstbasetransform.c: (gst_base_transform_init),
558         (gst_base_transform_handle_buffer),
559         (gst_base_transform_change_state):
560           Handle PAUSED->READY->PAUSED transition after negotiation
561           occurred already.
562         * gst/gstmessage.c: (gst_message_init):
563           Extra piece of debug for new messages.
564
565 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
566
567         * configure.ac:
568         * docs/gst/tmpl/gstbasesrc.sgml:
569         * docs/gst/tmpl/gstelement.sgml:
570         * docs/gst/tmpl/gstevent.sgml:
571         * docs/gst/tmpl/gstfakesrc.sgml:
572         * docs/gst/tmpl/gstformat.sgml:
573         * docs/gst/tmpl/gstghostpad.sgml:
574         * docs/gst/tmpl/gstpad.sgml:
575         * docs/gst/tmpl/gstquery.sgml:
576         * docs/gst/tmpl/gststructure.sgml:
577         * docs/gst/tmpl/gsttaglist.sgml:
578         * docs/gst/tmpl/gstvalue.sgml:
579         * docs/libs/gstreamer-libs-docs.sgml:
580         * docs/libs/gstreamer-libs-sections.txt:
581         * docs/libs/gstreamer-libs.types:
582         * libs/gst/Makefile.am:
583         * libs/gst/control/.cvsignore:
584         * libs/gst/control/Makefile.am:
585         * libs/gst/control/control.c:
586         * libs/gst/control/control.h:
587         * libs/gst/control/dparam.c:
588         * libs/gst/control/dparam.h:
589         * libs/gst/control/dparam_smooth.c:
590         * libs/gst/control/dparam_smooth.h:
591         * libs/gst/control/dparamcommon.h:
592         * libs/gst/control/dparammanager.c:
593         * libs/gst/control/dparammanager.h:
594         * libs/gst/control/dplinearinterp.c:
595         * libs/gst/control/dplinearinterp.h:
596         * libs/gst/control/unitconvert.c:
597         * libs/gst/control/unitconvert.h:
598         * testsuite/Makefile.am:
599         * testsuite/dynparams/.cvsignore:
600         * testsuite/dynparams/Makefile.am:
601         * testsuite/dynparams/dparamstest.c:
602         * tools/Makefile.am:
603         * tools/gst-inspect.c: (print_element_info), (main):
604         * tools/gst-xmlinspect.c: (print_element_info), (main):
605           deactivate and remove dparams (libgstcontrol)
606
607 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
608
609         * gst/elements/gsttypefindelement.c:
610         (gst_type_find_element_have_type), (gst_type_find_element_init),
611         (stop_typefinding), (gst_type_find_element_handle_event),
612         (gst_type_find_element_chain), (gst_type_find_element_getrange):
613         * gst/elements/gsttypefindelement.h:
614           Set caps on all outgoing buffers, not just the first one.
615
616 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
617
618         * gst/elements/gsttypefindelement.c:
619         (gst_type_find_element_have_type),
620         (gst_type_find_element_check_set_buffer_caps),
621         (gst_type_find_element_init), (stop_typefinding),
622         (gst_type_find_element_handle_event),
623         (gst_type_find_element_chain), (gst_type_find_element_getrange):
624         * gst/elements/gsttypefindelement.h:
625           Set caps on first outgoing buffer when we've found the type.
626
627 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
628
629         * docs/gst/gstreamer-docs.sgml:
630         * docs/gst/gstreamer-sections.txt:
631         * docs/gst/tmpl/gstscheduler.sgml:
632         * docs/gst/tmpl/gstschedulerfactory.sgml:
633           Remove some old cruft from docs.
634
635 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
636
637         * gst/gstpad.h:
638           Fix inline docs for GstPadLinkReturn.
639           
640         * gst/gststructure.c: (gst_structure_has_name):
641         * gst/gststructure.h:
642         * docs/gst/gstreamer-sections.txt:
643           New API: gst_structure_has_name().
644
645 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
646
647         * configure.ac:
648           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
649           and _LARGEFILE_SOURCE in config.h as required. Do not 
650           export those flags in our .pc files any longer (#142209).
651
652           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
653
654         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
655         (gst_file_sink_do_seek), (gst_file_sink_event),
656         (gst_file_sink_get_current_offset), (gst_file_sink_render):
657           Redo seek/tell calls with large file support in mind; add some
658           debugging messages; add log message that tells us when large
659           file support is unavailable or not enabled for some reason.
660
661         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
662           Add log message that tells us when large file support 
663           is unavailable or not enabled for some reason.
664
665 2005-07-29  Wim Taymans  <wim@fluendo.com>
666
667         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
668         Added test for removing an element with ghostpad from a bin.
669         Fixed test as current implementation does the right thing.
670
671         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
672         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
673         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
674         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
675         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
676         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
677         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
678         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
679         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
680         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
681         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
682         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
683         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
684         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
685         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
686         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
687         * gst/gstghostpad.h:
688         Clean up ghostpads, remove properties for internal stuff.
689         Make threadsafe.
690         Fix refcounting.
691         Prepare for switching targets, not all use cases work yet.
692
693 2005-07-29  Wim Taymans  <wim@fluendo.com>
694
695         * docs/design/part-gstghostpad.txt:
696         Small update.
697
698         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
699         (gst_bin_remove_func):
700         Unlinking pads while holding the bin LOCK is not a good
701         idea.
702
703         * gst/gstpad.c: (gst_pad_class_init),
704         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
705         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
706         No prob setting template after creating the pad.
707
708 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
709
710         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
711         (gst_bus_peek), (gst_bus_source_dispatch),
712         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
713         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
714           gst_bus_poll may be called from other threads. Handle
715           this nicely by not making poll_data disappear off the
716           stack once gst_bus_poll returns.
717           gst_bus_peek now increments the refcount on the returned
718           message.
719
720 2005-07-29  Wim Taymans  <wim@fluendo.com>
721
722         * docs/design/part-gstghostpad.txt:
723         Overview of current GhostPad datastructures and use
724         cases for changing the target.
725
726 2005-07-28  Wim Taymans  <wim@fluendo.com>
727
728         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
729         Added checks for hierarchy consistency whan adding linked
730         elements to bins.
731
732         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
733         Added check to test element scheduling without bin/pipeline.
734
735         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
736         First add elements to bin, then link.
737         
738         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
739         (gst_bin_remove_func):
740         Unlink pads from elements added/removed from bin to maintain
741         hierarchy consistency.
742
743 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
744
745         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
746         (gst_base_transform_handle_buffer):
747         * gst/base/gstbasetransform.h:
748           Remove broken delay_configure (fixes renegotiation of software
749           scaling pipelines); remove some leftover printf()s.
750
751 2005-07-28  Wim Taymans  <wim@fluendo.com>
752
753         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
754         Added some more tests for wrong hierarchy
755
756         * docs/design/part-overview.txt:
757         Some updates.
758
759         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
760         Cleanups.
761
762         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
763         (gst_element_dispose):
764         Some more cleanups.
765
766         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
767         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
768         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
769         (gst_pad_set_caps), (gst_pad_send_event):
770         Check for correct hierarchy when linking pads. Moving to
771         strict requirement for ghostpads when linking elements in
772         different bins.
773
774         * gst/gstpad.h:
775         Clean ups. Added WRONG_HIERARCHY return value.
776
777 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
778
779         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
780           Better debug if no transform is possible.
781
782 2005-07-27  Wim Taymans  <wim@fluendo.com>
783
784         * docs/random/wtay/network-transp:
785         Some old doc I had.
786
787 2005-07-27  Wim Taymans  <wim@fluendo.com>
788
789         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
790         (gst_dp_event_from_packet):
791         Fix serialization of seek events.
792
793 2005-07-27  Wim Taymans  <wim@fluendo.com>
794
795         * check/gst-libs/gdp.c: (GST_START_TEST):
796         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
797         Fix compilation and fix event serialization.
798
799 2005-07-27  Wim Taymans  <wim@fluendo.com>
800
801         * CHANGES-0.9:
802         * docs/design/part-TODO.txt:
803         * docs/design/part-events.txt:
804         Some docs updates
805
806         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
807         (gst_base_sink_event), (gst_base_sink_do_sync),
808         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
809         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
810         (gst_base_src_do_seek), (gst_base_src_event_handler),
811         (gst_base_src_loop):
812         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
813         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
814         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
815         (gst_base_transform_event), (gst_base_transform_handle_buffer),
816         (gst_base_transform_set_passthrough),
817         (gst_base_transform_is_passthrough):
818         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
819         * gst/elements/gstfilesink.c: (gst_file_sink_event):
820         Event updates.
821
822         * gst/gstbuffer.h:
823         Use faster casts.
824
825         * gst/gstelement.c: (gst_element_seek):
826         * gst/gstelement.h:
827         Update gst_element_seek.
828
829         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
830         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
831         (gst_event_new_flush_start), (gst_event_new_flush_stop),
832         (gst_event_new_eos), (gst_event_new_newsegment),
833         (gst_event_parse_newsegment), (gst_event_new_tag),
834         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
835         (gst_event_parse_qos), (gst_event_new_seek),
836         (gst_event_parse_seek), (gst_event_new_navigation):
837         * gst/gstevent.h:
838         Make GstEvent use GstStructure. Add parsing code, make sure the
839         API is sufficiently generic.
840         Mark possible directions of events and serialization.
841
842         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
843         (_gst_message_copy), (gst_message_new_segment_start),
844         (gst_message_new_segment_done), (gst_message_new_custom),
845         (gst_message_parse_segment_start),
846         (gst_message_parse_segment_done):
847         Small cleanups.
848
849         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
850         (gst_pad_set_caps), (gst_pad_send_event):
851         Update for new events. 
852         Catch events sent in wrong directions.
853
854         * gst/gstqueue.c: (gst_queue_link_src),
855         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
856         (gst_queue_handle_src_query):
857         Event updates.
858
859         * gst/gsttag.c:
860         * gst/gsttag.h:
861         Remove event code from this file.
862
863         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
864         (gst_dp_event_from_packet):
865         Event updates.
866
867 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
868
869         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
870         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
871         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
872           Make debugging actually useful.
873
874 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
875
876         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
877         (gst_pad_fixate_caps):
878           Implement default fixation once again, so that gst_pad_fixate()
879           actually does anything at all. This probably needs to be some
880           sort of a last resort, and use profile-based fixation first, but
881           since that doesn't exist yet, this is the best we have. Fixes
882           visualization in Totem.
883
884 2005-07-22  Wim Taymans  <wim@fluendo.com>
885
886         * docs/design/part-events.txt:
887         Small update.
888
889         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
890         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
891         (gst_base_sink_activate_pull):
892         Some more comments.
893
894         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
895         (gst_fake_src_create):
896         Fix handoff marshall.
897
898         * gst/elements/gstidentity.c: (gst_identity_class_init),
899         (gst_identity_transform_ip):
900         We're a real inplace element.
901
902         * gst/gstbus.c: (gst_bus_post):
903         Added some comments.
904
905         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
906         * tests/muxing/case1.c: (main):
907         * tests/sched/dynamic-pipeline.c: (main):
908         * tests/sched/interrupt1.c: (main):
909         * tests/sched/interrupt2.c: (main):
910         * tests/sched/interrupt3.c: (main):
911         * tests/sched/runxml.c: (main):
912         * tests/sched/sched-stress.c: (main):
913         * tests/seeking/seeking1.c: (event_received), (main):
914         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
915         (main):
916         * tests/threadstate/threadstate3.c: (main):
917         * tests/threadstate/threadstate4.c: (main):
918         * tests/threadstate/threadstate5.c: (main):
919         Fix the tests.
920
921 2005-07-21  Wim Taymans  <wim@fluendo.com>
922
923         * docs/design/part-seeking.txt:
924         Some small additions.
925
926         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
927         (gst_base_sink_get_times), (gst_base_sink_do_sync),
928         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
929         * gst/base/gstbasesink.h:
930         discont values are gint64, handle the math correctly.
931
932         * gst/base/gstbasesrc.c: (gst_base_src_loop):
933         Make the basesrc report error if the source pad is not linked.
934
935         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
936         (gst_queue_loop), (gst_queue_handle_src_query),
937         (gst_queue_src_activate_push):
938         Make queue collect data even if the srcpad is not linked.
939         Start pushing out data as soon as it is linked.
940
941         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
942         * gst/gstutils.h:
943         Added gst_flow_get_name() to ease error reporting.
944
945 2005-07-20  Wim Taymans  <wim@fluendo.com>
946
947         * gst/gstmessage.c: (gst_message_new_segment_start),
948         (gst_message_new_segment_done), (gst_message_parse_segment_start),
949         (gst_message_parse_segment_done):
950         * gst/gstmessage.h:
951         Added a bunch of messages for advanced seeking.
952
953         * gst/parse/grammar.y:
954         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
955         (gst_dpman_state_changed):
956         Fix some new-pad -> pad-added signals
957
958 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
959
960         * docs/manual/appendix-porting.xml:
961         * docs/pwg/appendix-porting.xml:
962           Document new-pad/state-change signal renames and the FixedList
963           type rename.
964
965 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
966
967         * docs/manual/advanced-autoplugging.xml:
968         * docs/manual/basics-helloworld.xml:
969         * docs/manual/basics-pads.xml:
970         * docs/random/ds/0.9-suggested-changes:
971         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
972         * gst/gstelement.h:
973         * gst/gstevent.h:
974         * gst/gstformat.h:
975         * gst/gstquery.h:
976         * gst/gststructure.c: (gst_structure_value_get_generic_type),
977         (gst_structure_parse_array), (gst_structure_parse_value):
978         * gst/gstvalue.c: (gst_type_is_fixed),
979         (gst_value_list_prepend_value), (gst_value_list_append_value),
980         (gst_value_list_get_size), (gst_value_list_get_value),
981         (gst_value_transform_array_string), (gst_value_serialize_array),
982         (gst_value_deserialize_array), (gst_value_intersect_array),
983         (gst_value_is_fixed), (_gst_value_initialize):
984         * gst/gstvalue.h:
985           GstElement::new-pad -> pad-added, GstElement::state-change ->
986           state-changed, GstValueFixedList -> GstValueArray, add format and
987           flags as their own arguments in gst_element_seek() (should improve
988           "bindeability"), remove function generators since they don't work
989           under a whole bunch of compilers (they were deprecated already
990           anyway).
991
992 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
993
994         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
995         (_gst_debug_register_funcptr):
996         * gst/gstinfo.h:
997           Fix illegal cast on some platforms (#309253).
998
999 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1000
1001         * gst/gstmessage.c: (gst_message_new_custom):
1002         * gst/gstmessage.h:
1003           Add _new_custom, make _new_application a macro to _new_custom.
1004
1005 2005-07-20  Wim Taymans  <wim@fluendo.com>
1006
1007         * gst/base/gstbasesrc.c: (gst_base_src_init),
1008         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
1009         * gst/base/gstbasesrc.h:
1010         Add a gboolean to decide when to push out a discont.
1011
1012         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1013         (gst_queue_loop), (gst_queue_handle_src_query),
1014         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
1015         (gst_queue_set_property), (gst_queue_get_property):
1016         Some cleanups.
1017
1018         * tests/threadstate/threadstate1.c: (main):
1019         Make a thread test compile and run... very silly..
1020
1021
1022 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1023
1024         * docs/manual/appendix-porting.xml:
1025           Mention removal of libgstgconf-0.9.la and existence of gconf
1026           elements.
1027
1028 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1029
1030         * docs/pwg/advanced-clock.xml:
1031         * docs/pwg/appendix-porting.xml:
1032         * docs/pwg/intro-preface.xml:
1033         * docs/pwg/other-base.xml:
1034         * docs/pwg/other-manager.xml:
1035         * docs/pwg/other-nton.xml:
1036         * docs/pwg/other-ntoone.xml:
1037         * docs/pwg/other-oneton.xml:
1038         * docs/pwg/pwg.xml:
1039           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
1040           demuxer), remove n-to-n (was never written), fix some code examples
1041           and links and update the porting section to include all this.
1042
1043 2005-07-19  Wim Taymans  <wim@fluendo.com>
1044
1045         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
1046         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
1047         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
1048         (gst_queue_src_activate_push), (gst_queue_change_state),
1049         (gst_queue_get_property):
1050         * gst/gstqueue.h:
1051         Propagate GstFlowReturn more intelligently upstream and output
1052         an ERROR/EOS when streaming stopped due to fatal error.
1053
1054 2005-07-19  Wim Taymans  <wim@fluendo.com>
1055
1056         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1057         Don't block forever for the state change to complete, the
1058         pipeline already did with a sensible timeout.
1059
1060 2005-07-19  Wim Taymans  <wim@fluendo.com>
1061
1062         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
1063         Make sure we never call the create function is we
1064         got deactivated.
1065
1066 2005-07-19  Andy Wingo  <wingo@pobox.com>
1067
1068         * gst/parse/parse.l: Attempt to solve bug #172815.
1069
1070 2005-07-19  Wim Taymans  <wim@fluendo.com>
1071
1072         * docs/design/part-clocks.txt:
1073         * docs/design/part-events.txt:
1074         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1075         Small docs updates.
1076         Only update the seeking values when we are not
1077         busy streaming.
1078
1079 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1080
1081         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1082           Oops, ignore the result of gst_pad_push_event here.
1083
1084 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1085
1086         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1087         (gst_base_src_activate_push):
1088           Send discont event from the loop function, as pads
1089           aren't activated yet in the activate_push handler.
1090
1091         * gst/gstbin.c: (bin_bus_handler):
1092           Don't leak element name.
1093
1094 2005-07-18  Andy Wingo  <wingo@pobox.com>
1095
1096         * configure.ac: Use AS_LIBTOOL_TAGS.
1097
1098 2005-07-18  Wim Taymans  <wim@fluendo.com>
1099
1100         * docs/gst/gstreamer.types:
1101         Remove deleted types.
1102
1103 2005-07-18  Wim Taymans  <wim@fluendo.com>
1104
1105         * check/elements/gstfakesrc.c: (GST_START_TEST):
1106         * configure.ac:
1107         * gst/Makefile.am:
1108         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1109         (init_popt_callback):
1110         * gst/gst.h:
1111         * gst/gst_private.h:
1112         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1113         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1114         * gst/gstbin.h:
1115         * gst/gstbus.h:
1116         * gst/gstconfig.h.in:
1117         * gst/gstelement.c: (gst_element_class_init),
1118         (gst_element_set_base_time), (gst_element_get_base_time),
1119         (iterator_fold_with_resync), (gst_element_change_state),
1120         (gst_element_dispose), (gst_element_get_bus):
1121         * gst/gstelement.h:
1122         * gst/gstelementfactory.h:
1123         * gst/gsterror.c: (_gst_core_errors_init):
1124         * gst/gsterror.h:
1125         * gst/gstevent.h:
1126         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1127         * gst/gstindex.c:
1128         * gst/gstinfo.c: (_gst_debug_init):
1129         * gst/gstmessage.c: (_gst_message_copy):
1130         * gst/gstmessage.h:
1131         * gst/gstminiobject.h:
1132         * gst/gstobject.c:
1133         * gst/gstobject.h:
1134         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1135         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1136         * gst/gstpad.h:
1137         * gst/gstparse.h:
1138         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1139         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1140         (gst_pipeline_get_last_stream_time):
1141         * gst/gstpipeline.h:
1142         * gst/gstpluginfeature.h:
1143         * gst/gstquery.h:
1144         * gst/gstscheduler.c:
1145         * gst/gstscheduler.h:
1146         * gst/gststructure.h:
1147         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1148         (gst_task_finalize), (gst_task_func), (gst_task_create),
1149         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1150         (gst_task_stop), (gst_task_pause):
1151         * gst/gsttask.h:
1152         * gst/gsttypefind.h:
1153         * gst/gsttypes.h:
1154         * gst/registries/gstlibxmlregistry.c: (load_feature),
1155         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1156         * gst/registries/gstxmlregistry.c:
1157         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1158         * gst/schedulers/threadscheduler.c:
1159         * libs/gst/control/dparammanager.h:
1160         * tools/gst-inspect.c: (print_element_list),
1161         (print_plugin_features), (print_element_features):
1162         * tools/gst-xmlinspect.c: (print_element_list),
1163         (print_plugin_info), (main):
1164         Removed plugable schedulers.
1165         Removed Scheduler/Manager from elements.
1166         Removed gsttypes.h, rearranged includes.
1167         Removed dependency pad<->element, element<>pipeline, and
1168         various others,  fix includes.
1169         implement gst_pad_get_parent() with gst_object_get_parent()
1170         Make GstTask sefcontained.
1171         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1172         timeout.
1173         Fix endless loop in iterator_fold_with_resync.
1174
1175
1176 2005-07-18  Wim Taymans  <wim@fluendo.com>
1177
1178         * gst/Makefile.am:
1179         * gst/gstarch.h:
1180         Remove old file.
1181
1182 2005-07-18  Wim Taymans  <wim@fluendo.com>
1183
1184         * gst/Makefile.am:
1185         No more cothreads.h
1186
1187 2005-07-18  Wim Taymans  <wim@fluendo.com>
1188
1189         * gst/cothreads.c:
1190         * gst/cothreads.h:
1191         Let's remove these.
1192
1193 2005-07-18  Wim Taymans  <wim@fluendo.com>
1194
1195         * docs/design/part-dynamic.txt:
1196         * docs/design/part-events.txt:
1197         * docs/design/part-seeking.txt:
1198         Some more docs in the works.
1199
1200         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1201         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1202         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1203         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1204         (gst_base_transform_handle_buffer),
1205         (gst_base_transform_sink_activate_push),
1206         (gst_base_transform_src_activate_pull),
1207         (gst_base_transform_set_passthrough),
1208         (gst_base_transform_is_passthrough):
1209         Refcounting fixes.
1210
1211         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1212         Cleanups.
1213
1214         * gst/gstevent.c: (gst_event_finalize):
1215         Set SRC to NULL.
1216
1217         * gst/gstutils.c: (gst_element_unlink),
1218         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1219         (gst_pad_proxy_setcaps):
1220         * gst/gstutils.h:
1221         Add _get_parent_element() to get a pads parent as an element.
1222
1223 2005-07-18  Wim Taymans  <wim@fluendo.com>
1224
1225         * check/gst/gstbin.c: (GST_START_TEST):
1226         Remove bogus test.
1227
1228 2005-07-18  Wim Taymans  <wim@fluendo.com>
1229
1230         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1231         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1232         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1233         (gst_base_sink_event), (gst_base_sink_do_sync),
1234         (gst_base_sink_chain), (gst_base_sink_loop),
1235         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1236         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1237         Refcounting fixes.
1238         Fix logic for returning ASYNC when not prerolled.
1239
1240 2005-07-18  Wim Taymans  <wim@fluendo.com>
1241
1242         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1243         Fix nasty refcount bug.
1244
1245 2005-07-16 Philippe Khalaf <burger@speedy.org>
1246         * gst/elements/gstfdsrc.c:
1247         * gst/elements/gstfdsrc.h:
1248         * gst/elements/gstelements.c:
1249         * gst/elements/Makefile.am:
1250         Ported fdsrc to 0.9.
1251
1252 2005-07-16  Wim Taymans  <wim@fluendo.com>
1253
1254         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1255         (gst_base_sink_do_sync):
1256         Fix compile error.
1257
1258 2005-07-16  Wim Taymans  <wim@fluendo.com>
1259
1260         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1261         (gst_base_sink_event), (gst_base_sink_get_times),
1262         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1263         * gst/base/gstbasesink.h:
1264         Store and use discont values when syncing buffers as described
1265         in design docs.
1266         
1267         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1268         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1269         (gst_base_src_activate_push):
1270         Push discont event when starting.
1271
1272         * gst/elements/gstidentity.c: (gst_identity_transform):
1273         Small cleanups.
1274
1275         * gst/gstbin.c: (gst_bin_change_state):
1276         Small cleanups in base_time  distribution.
1277
1278         * gst/gstelement.c: (gst_element_set_base_time),
1279         (gst_element_get_base_time), (gst_element_change_state):
1280         * gst/gstelement.h:
1281         Added methods for the base_time of the element.
1282         Some MT fixes.
1283
1284         * gst/gstpipeline.c: (gst_pipeline_send_event),
1285         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1286         (gst_pipeline_get_last_stream_time):
1287         * gst/gstpipeline.h:
1288         MT fixes.
1289         Handle seeking as described in design doc, remove stream_time
1290         hack.
1291         Cleanups clock and stream_time selection code. Added accessors
1292         for the stream_time.
1293         
1294
1295 2005-07-16  Andy Wingo  <wingo@pobox.com>
1296
1297         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1298         (#305291).
1299
1300 2005-07-16  Wim Taymans  <wim@fluendo.com>
1301
1302         * check/gst/gstbin.c: (GST_START_TEST):
1303         Make elements silent as the deep_notify refs the
1304         parent, which might make the test fail.
1305
1306         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1307         Don't hold the lock for too long.
1308
1309 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1310
1311         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1312           Don't unref the caps we passed to gst_caps_make_writable() after
1313           passing them. gst_caps_make_writable() will do that for us.
1314
1315 2005-07-15  Andy Wingo  <wingo@pobox.com>
1316
1317         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1318         (#157311).
1319
1320         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1321         own marshalling function for the handoff signal. Properly type the
1322         buffer as a buffer. Fixes some warnings. Should do a more general
1323         solution.
1324         (gst_identity_class_init): Plug into the right marshaller.
1325
1326 2005-07-15  Wim Taymans  <wim@fluendo.com>
1327
1328         * docs/design/part-TODO.txt:
1329         * docs/design/part-clocks.txt:
1330         * docs/design/part-element-sink.txt:
1331         * docs/design/part-events.txt:
1332         * docs/design/part-gstpipeline.txt:
1333         Updated docs, mostly DISCONT related.
1334
1335 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1336
1337         * docs/pwg/building-pads.xml:
1338           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1339
1340 2005-07-15  Andy Wingo  <wingo@pobox.com>
1341
1342         * tools/gst-typefind.c: Update, add copyright block.
1343
1344         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1345         Normalize and truncate caps before fixation.
1346
1347         * gst/gstcaps.h:
1348         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1349         discards all but the first structure from its argument.
1350
1351 2005-07-15  Wim Taymans  <wim@fluendo.com>
1352
1353         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1354         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1355         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1356         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1357         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1358         (gst_base_transform_chain), (gst_base_transform_change_state),
1359         (gst_base_transform_set_passthrough),
1360         (gst_base_transform_is_passthrough):
1361         * gst/base/gstbasetransform.h:
1362         Make passthrough work using the bufferpools.
1363         Changed API a bit, subclasses have to write into a buffer
1364         provided by the base class.
1365         More debug info in nego functions.
1366         
1367         * gst/elements/gstidentity.c: (gst_identity_init),
1368         (gst_identity_transform):
1369         Port to new base class.
1370
1371 2005-07-15  Wim Taymans  <wim@fluendo.com>
1372
1373         * gst/gstmessage.c: (gst_message_new_state_changed):
1374         * tools/gst-launch.c: (event_loop), (main):
1375         Totally dump messages in -launch with the -m option.
1376         Fix message name for State messages,
1377
1378 2005-07-14  Wim Taymans  <wim@fluendo.com>
1379
1380         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1381         Post error messages on errors.
1382
1383 2005-07-14  Wim Taymans  <wim@fluendo.com>
1384
1385         * gst/gstcaps.c: (gst_caps_do_simplify):
1386         Remove debug info.
1387
1388         * gst/gsterror.h:
1389         Define error for stream stopped.
1390
1391         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1392         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1393         Do proper return values.
1394
1395         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1396         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1397         (gst_pad_get_range):
1398         Better return values.
1399
1400         * gst/gstpad.h:
1401         Reorganise return values, add macro to check for fatal errors.
1402
1403         * gst/gstqueue.c: (gst_queue_chain):
1404         Return proper GstFlowReturn values,
1405
1406 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1407
1408         * docs/gst/gstreamer-sections.txt:
1409         * docs/gst/gstreamer.types:
1410         * docs/gst/tmpl/gst.sgml:
1411         * docs/gst/tmpl/gstbasesink.sgml:
1412         * docs/gst/tmpl/gstbasesrc.sgml:
1413         * docs/gst/tmpl/gstbasetransform.sgml:
1414         * docs/gst/tmpl/gstbin.sgml:
1415         * docs/gst/tmpl/gstbuffer.sgml:
1416         * docs/gst/tmpl/gstcaps.sgml:
1417         * docs/gst/tmpl/gstclock.sgml:
1418         * docs/gst/tmpl/gstcompat.sgml:
1419         * docs/gst/tmpl/gstconfig.sgml:
1420         * docs/gst/tmpl/gstelement.sgml:
1421         * docs/gst/tmpl/gstelementdetails.sgml:
1422         * docs/gst/tmpl/gstelementfactory.sgml:
1423         * docs/gst/tmpl/gstenumtypes.sgml:
1424         * docs/gst/tmpl/gsterror.sgml:
1425         * docs/gst/tmpl/gstevent.sgml:
1426         * docs/gst/tmpl/gstfakesink.sgml:
1427         * docs/gst/tmpl/gstfakesrc.sgml:
1428         * docs/gst/tmpl/gstfilesink.sgml:
1429         * docs/gst/tmpl/gstfilesrc.sgml:
1430         * docs/gst/tmpl/gstfilter.sgml:
1431         * docs/gst/tmpl/gstformat.sgml:
1432         * docs/gst/tmpl/gstghostpad.sgml:
1433         * docs/gst/tmpl/gstimplementsinterface.sgml:
1434         * docs/gst/tmpl/gstindex.sgml:
1435         * docs/gst/tmpl/gstindexfactory.sgml:
1436         * docs/gst/tmpl/gstinfo.sgml:
1437         * docs/gst/tmpl/gstiterator.sgml:
1438         * docs/gst/tmpl/gstmacros.sgml:
1439         * docs/gst/tmpl/gstmemchunk.sgml:
1440         * docs/gst/tmpl/gstminiobject.sgml:
1441         * docs/gst/tmpl/gstobject.sgml:
1442         * docs/gst/tmpl/gstpad.sgml:
1443         * docs/gst/tmpl/gstpadtemplate.sgml:
1444         * docs/gst/tmpl/gstparse.sgml:
1445         * docs/gst/tmpl/gstpipeline.sgml:
1446         * docs/gst/tmpl/gstplugin.sgml:
1447         * docs/gst/tmpl/gstpluginfeature.sgml:
1448         * docs/gst/tmpl/gstquery.sgml:
1449         * docs/gst/tmpl/gstqueue.sgml:
1450         * docs/gst/tmpl/gstregistry.sgml:
1451         * docs/gst/tmpl/gstregistrypool.sgml:
1452         * docs/gst/tmpl/gstscheduler.sgml:
1453         * docs/gst/tmpl/gstschedulerfactory.sgml:
1454         * docs/gst/tmpl/gststructure.sgml:
1455         * docs/gst/tmpl/gstsystemclock.sgml:
1456         * docs/gst/tmpl/gsttaglist.sgml:
1457         * docs/gst/tmpl/gsttagsetter.sgml:
1458         * docs/gst/tmpl/gsttrace.sgml:
1459         * docs/gst/tmpl/gsttrashstack.sgml:
1460         * docs/gst/tmpl/gsttypefind.sgml:
1461         * docs/gst/tmpl/gsttypefindfactory.sgml:
1462         * docs/gst/tmpl/gsttypes.sgml:
1463         * docs/gst/tmpl/gsturihandler.sgml:
1464         * docs/gst/tmpl/gsturitype.sgml:
1465         * docs/gst/tmpl/gstutils.sgml:
1466         * docs/gst/tmpl/gstvalue.sgml:
1467         * docs/gst/tmpl/gstversion.sgml:
1468         * docs/gst/tmpl/gstxml.sgml:
1469         * docs/libs/tmpl/gstcontrol.sgml:
1470         * docs/libs/tmpl/gstdataprotocol.sgml:
1471         * docs/libs/tmpl/gstdparam.sgml:
1472         * docs/libs/tmpl/gstdplinint.sgml:
1473         * docs/libs/tmpl/gstdpman.sgml:
1474         * docs/libs/tmpl/gstdpsmooth.sgml:
1475         * docs/libs/tmpl/gstgetbits.sgml:
1476         * docs/libs/tmpl/gstunitconvert.sgml:
1477         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1478         (gst_push_src_base_init), (gst_push_src_class_init),
1479         (gst_push_src_init), (gst_push_src_create):
1480         * gst/base/gstpushsrc.h:
1481         * gst/elements/gstelements.c:
1482         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1483         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1484         (gst_fake_sink_init), (gst_fake_sink_set_property),
1485         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1486         (gst_fake_sink_event), (gst_fake_sink_preroll),
1487         (gst_fake_sink_render), (gst_fake_sink_change_state):
1488         * gst/elements/gstfakesink.h:
1489         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1490         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1491         (gst_fake_src_base_init), (gst_fake_src_class_init),
1492         (gst_fake_src_init), (gst_fake_src_event_handler),
1493         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1494         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1495         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1496         (gst_fake_src_create_buffer), (gst_fake_src_create),
1497         (gst_fake_src_start), (gst_fake_src_stop):
1498         * gst/elements/gstfakesrc.h:
1499         * gst/elements/gstfilesink.c: (_do_init),
1500         (gst_file_sink_base_init), (gst_file_sink_class_init),
1501         (gst_file_sink_init), (gst_file_sink_dispose),
1502         (gst_file_sink_set_location), (gst_file_sink_set_property),
1503         (gst_file_sink_get_property), (gst_file_sink_open_file),
1504         (gst_file_sink_close_file), (gst_file_sink_query),
1505         (gst_file_sink_event), (gst_file_sink_render),
1506         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1507         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1508         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1509         * gst/elements/gstfilesink.h:
1510         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1511         (gst_file_src_class_init), (gst_file_src_init),
1512         (gst_file_src_finalize), (gst_file_src_set_location),
1513         (gst_file_src_set_property), (gst_file_src_get_property),
1514         (gst_file_src_map_region), (gst_file_src_map_small_region),
1515         (gst_file_src_create_mmap), (gst_file_src_create_read),
1516         (gst_file_src_create), (gst_file_src_is_seekable),
1517         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1518         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1519         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1520         (gst_file_src_uri_handler_init):
1521         * gst/elements/gstfilesrc.h:
1522           more autistic cleanliness in functions/names/defines
1523
1524 2005-07-13  Andy Wingo  <wingo@pobox.com>
1525
1526         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1527         source couldn't negotiate.
1528
1529         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1530         connections again.
1531
1532         * gst/gstutils.h:
1533         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1534         function. I am channeling Hades. Put your boots on suckers!!!
1535
1536 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1537
1538         * testsuite/caps/Makefile.am:
1539         * testsuite/caps/value_compare.c:
1540         * testsuite/caps/value_intersect.c:
1541         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1542           move two testsuite apps over to the check dir
1543
1544 2005-07-12  Wim Taymans  <wim@fluendo.com>
1545
1546         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1547         Added more debug info in the negotiate process.
1548
1549         * gst/gstmessage.h:
1550         Prepare for segment playback.
1551
1552         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1553         Better debugging.
1554
1555         * gst/gstutils.c:
1556         Some more docs.
1557
1558         * tools/gst-launch.c: (main):
1559         NULL pipeline on errors.
1560
1561 2005-07-12  Andy Wingo  <wingo@pobox.com>
1562
1563         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1564         not it comes from a malloc region. Make sure our copy gets freed.
1565
1566 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1567
1568         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1569         * check/gst/gstmessage.c: (GST_START_TEST):
1570         * check/gst/gststructure.c: (GST_START_TEST),
1571         (gst_structure_suite), (main):
1572           more testing
1573         * gst/gstelement.c: (gst_element_message_full):
1574           clean up GError and debug string now that they get copied
1575         * gst/gstmessage.c: (gst_message_new_error),
1576         (gst_message_new_warning), (gst_message_parse_error),
1577         (gst_message_parse_warning):
1578           use GST_TYPE_G_ERROR for structure_new, and take copies of
1579           arguments, so that we don't mess up refcounting
1580
1581 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1582
1583         * check/Makefile.am:
1584           add per-test valgrind targets
1585         * check/gst-libs/gdp.c: (GST_START_TEST),
1586         (gst_data_protocol_suite), (main):
1587           clean up
1588
1589 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1590
1591         * check/Makefile.am:
1592           instate more valgrindable tests
1593         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1594         (GST_START_TEST), (fakesrc_suite):
1595         * check/gst/gstpad.c: (GST_START_TEST):
1596         * check/gst/gststructure.c: (GST_START_TEST):
1597           fix test leaks
1598         * docs/gst/tmpl/gstminiobject.sgml:
1599         * gst/gstpad.c: (gst_pad_finalize):
1600           fix the static mutex leak
1601
1602 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1603
1604         * check/Makefile.am:
1605           add two more tests for valgrinding
1606         * check/gst/gstvalue.c: (GST_START_TEST):
1607           test refcount of deserialized buffer, found a leak
1608         * docs/gst/gstreamer-docs.sgml:
1609         * docs/gst/gstreamer-sections.txt:
1610         * docs/gst/gstreamer.types:
1611         * docs/gst/tmpl/gstminiobject.sgml:
1612           add miniobject to docs
1613         * gst/gstminiobject.c:
1614           add some docs
1615         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1616         (gst_string_unwrap):
1617           fix a hard-to-find invalid write for one of the tests
1618           fix a leak for deserialized buffers
1619
1620 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1621
1622         * docs/pwg/advanced-events.xml:
1623         * docs/pwg/advanced-request.xml:
1624         * docs/pwg/advanced-scheduling.xml:
1625         * docs/pwg/appendix-porting.xml:
1626         * docs/pwg/building-boiler.xml:
1627         * docs/pwg/intro-preface.xml:
1628         * docs/pwg/other-ntoone.xml:
1629           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1630           of example code and explanation for pad activation, loop() and
1631           getrange() functions and a bit more. Remove old comments pointing
1632           to loop-functions.
1633         * examples/pwg/Makefile.am:
1634           Add loop/getrange examples.
1635
1636 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1637
1638         * configure.ac:
1639           check for valgrind binary + some fixes
1640         * check/gst.supp:
1641           valgrind suppressions for the tests
1642         * check/Makefile.am:
1643           add a valgrind: target that valgrinds the unit tests
1644         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1645         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1646         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1647         * check/gst/gstghostpad.c:
1648           added some cleanup
1649         * check/gst/gstdata.c:
1650           removed
1651         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1652         (thread_unref), (gst_mini_object_suite), (main):
1653           added
1654         * gst/gst.c: (gst_deinit):
1655         * gst/gst.h:
1656           add a method to clean up.
1657         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1658         (gst_system_clock_obtain):
1659           allow for disposing the system clock.
1660         * tools/gst-launch.c: (main):
1661           deinit
1662
1663 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1664
1665         * docs/gst/tmpl/gstbasesrc.sgml:
1666         * docs/gst/tmpl/gstfakesrc.sgml:
1667         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1668         (gst_base_src_init), (gst_base_src_set_property),
1669         (gst_base_src_get_property), (gst_base_src_get_range),
1670         (gst_base_src_start):
1671         * gst/base/gstbasesrc.h:
1672           add num-buffers property
1673         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1674         (gst_fakesrc_init), (gst_fakesrc_set_property),
1675         (gst_fakesrc_get_property), (gst_fakesrc_create),
1676         (gst_fakesrc_start):
1677           remove num-buffers property
1678
1679 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1680
1681         * docs/gst/gstreamer-sections.txt:
1682         * docs/gst/tmpl/gstbasesink.sgml:
1683         * docs/gst/tmpl/gstbasesrc.sgml:
1684         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1685         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1686         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1687         (gst_base_sink_set_property), (gst_base_sink_get_property),
1688         (gst_base_sink_handle_object), (gst_base_sink_event),
1689         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1690         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1691         (gst_base_sink_loop), (gst_base_sink_deactivate),
1692         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1693         (gst_base_sink_change_state):
1694         * gst/base/gstbasesink.h:
1695         * gst/base/gstbasesrc.h:
1696         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1697         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1698         (gst_filesink_init):
1699           more macro splitting
1700
1701 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1702
1703         * gst/gstelement.c: (gst_element_get_bus):
1704           add debug
1705         * tools/gst-launch.c: (check_intr), (event_loop):
1706           fix bus leaks
1707
1708 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1709
1710         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1711           fix a caps leak
1712
1713 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1714
1715         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1716         (gst_base_src_finalize):
1717           add finalize method and clean up properly
1718         * gst/gstpipeline.c: (gst_pipeline_dispose):
1719           add debug
1720
1721 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1722
1723         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1724         (gst_bin_suite):
1725           add more things to check
1726         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1727         * gst/gstelement.c:
1728           more debug
1729
1730 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1731
1732         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1733         (GST_START_TEST), (fakesrc_suite):
1734         * check/gst-libs/gdp.c: (GST_START_TEST):
1735         * check/gst/gst.c: (GST_START_TEST):
1736         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1737         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1738         * check/gst/gstbus.c: (GST_START_TEST):
1739         * check/gst/gstcaps.c: (GST_START_TEST):
1740         * check/gst/gstdata.c: (GST_START_TEST):
1741         * check/gst/gstelement.c: (GST_START_TEST):
1742         * check/gst/gstghostpad.c: (GST_START_TEST):
1743         * check/gst/gstiterator.c: (GST_START_TEST):
1744         * check/gst/gstmessage.c: (GST_START_TEST):
1745         * check/gst/gstobject.c: (GST_START_TEST):
1746         * check/gst/gstpad.c: (GST_START_TEST):
1747         * check/gst/gststructure.c: (GST_START_TEST):
1748         * check/gst/gstsystemclock.c: (GST_START_TEST),
1749         (gst_systemclock_suite):
1750         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1751         * check/gst/gstvalue.c: (GST_START_TEST):
1752         * check/pipelines/cleanup.c: (GST_START_TEST):
1753         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1754         * check/states/sinks.c: (GST_START_TEST):
1755         * check/gstcheck.c: (gst_check_init):
1756         * check/gstcheck.h:
1757           add debugging category
1758           use GST_START_TEST now, so we add a debug line
1759
1760 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1761
1762         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1763           add test for state change message on a bin
1764         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1765           add another test
1766         * gst/gstbin.c: (gst_bin_init):
1767         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1768         * gst/gstelement.c: (gst_element_post_message),
1769         (gst_element_set_state):
1770         * gst/gstelementfactory.c: (gst_element_factory_create):
1771         * gst/gstmessage.c: (gst_message_new):
1772         * gst/gstscheduler.c:
1773           various debugging additions and cleanups
1774
1775 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1776
1777         * check/Makefile.am:
1778         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1779         (main):
1780           adding tests for elements
1781         * gst/gstelement.c: (gst_element_dispose):
1782
1783 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1784
1785         * gst/registries/gstlibxmlregistry.c: (load_feature):
1786           plug more leaks.  A simple gst_init() now is leakfree, yay.
1787
1788 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1789
1790         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1791         (gst_xml_registry_load):
1792           plug another memleak
1793
1794 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1795
1796         * configure.ac:
1797           use GST_SET_ERROR_CFLAGS
1798         * docs/faq/cvs.xml:
1799           change to ERROR_CFLAGS
1800
1801 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1802
1803         * configure.ac:
1804           make GST_ERROR_CFLAGS overridable and re-enable Werror
1805         * docs/faq/cvs.xml:
1806           add a note about error CFLAGS
1807         * docs/gst/tmpl/gstfakesrc.sgml:
1808         * gst/elements/gstfakesrc.c:
1809           comment out some unused code
1810         * gst/gst.c: (split_and_iterate):
1811         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1812         (load_feature):
1813           plug some memleaks
1814
1815 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1816
1817         * common/Makefile.am:
1818         * common/gtk-doc.mak:
1819         * docs/gst/Makefile.am:
1820           factor out gtk-doc.mak
1821
1822 2005-07-07  Wim Taymans  <wim@fluendo.com>
1823
1824         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1825         (gst_thread_scheduler_dispose):
1826         Unlock the STREAM_LOCK completely.
1827
1828 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1829
1830         * check/Makefile.am:
1831         * check/elements/.cvsignore:
1832         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1833         (START_TEST), (fakesrc_suite), (main):
1834         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1835         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1836         (gst_fakesrc_create), (gst_fakesrc_start):
1837         * gst/elements/gstfakesrc.h:
1838           adding a first element test
1839
1840 2005-07-07  Andy Wingo  <wingo@pobox.com>
1841
1842         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1843         debug message.
1844
1845 2005-07-07  Wim Taymans  <wim@fluendo.com>
1846
1847         * gst/gstquery.c:
1848         * gst/gstquery.h:
1849         Remove old types
1850
1851 2005-07-07  Wim Taymans  <wim@fluendo.com>
1852
1853         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1854         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1855         Allow subclasses to implement their own negotiation.
1856
1857 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1858
1859         * docs/design/part-gstbin.txt:
1860         * docs/design/part-gstpipeline.txt:
1861           Update design notes to reflect the movement of
1862           responsibility for bus handling from GstPipeline to
1863           GstBin
1864
1865 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1866
1867         * configure.ac:
1868           Remove unnecessary queue2/3/4 examples.
1869
1870 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1871
1872         * examples/Makefile.am:
1873         * examples/helloworld/helloworld.c: (event_loop), (main):
1874         * examples/queue/queue.c: (event_loop), (main):
1875         * examples/queue2/queue2.c: (main):
1876           Update a couple of the examples to work again.
1877
1878         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1879         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1880          Spelling corrections and extra debug.
1881         
1882         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1883         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1884         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1885         * gst/gstbin.h:
1886         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1887         (gst_pipeline_change_state):
1888         * gst/gstpipeline.h:
1889           Move the bus handler for children to the GstBin, and create a
1890           separate bus for receiving messages from children to the one the
1891           bus sends 'upwards' on.
1892
1893 2005-07-06  Wim Taymans  <wim@fluendo.com>
1894
1895         * gst/base/README:
1896         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1897         (gst_base_sink_handle_object), (gst_base_sink_loop),
1898         (gst_base_sink_change_state):
1899         * gst/base/gstbasesink.h:
1900         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1901         (gst_base_src_init), (gst_base_src_setcaps),
1902         (gst_base_src_getcaps), (gst_base_src_loop),
1903         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1904         (gst_base_src_start), (gst_base_src_change_state):
1905         * gst/base/gstbasesrc.h:
1906         Make basesrc negotiate.
1907         Handle the case where preroll fails in basesink.
1908         Update README.
1909
1910 2005-07-06  Wim Taymans  <wim@fluendo.com>
1911
1912         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1913         Implement the fixate function.
1914         Clean up acceptcaps.
1915
1916 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1917
1918         * docs/pwg/building-filterfactory.xml:
1919         * docs/pwg/pwg.xml:
1920           Remove never-written filter-factory chapter; I'll add the various
1921           base classes to part 4 ("other element types") later on.
1922
1923 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1924
1925         * docs/pwg/advanced-negotiation.xml:
1926         * docs/pwg/building-boiler.xml:
1927         * docs/pwg/building-pads.xml:
1928         * docs/pwg/pwg.xml:
1929         * examples/pwg/Makefile.am:
1930           Add a chapter on caps negotiation, simplify the original code
1931           samples a bit w.r.t. caps negotiation, add link to the advanced
1932           section. Add a bunch of examples showing different use cases of
1933           different types of caps negotiation. Upstream renegotiation isn't
1934           fully documented yet since nobody knows how that works.
1935
1936 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1937
1938         * check/gst/gstpad.c:
1939         * check/gstcheck.c:
1940         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1941           if pad has no parent, return NULL as list of internal links
1942
1943 2005-07-05  Andy Wingo  <wingo@pobox.com>
1944
1945         * gst/elements/gstfilesrc.c:
1946         * gst/elements/gstfakesrc.c: 
1947         * gst/base/gstpushsrc.c:
1948         * gst/base/gstbasesrc.h: 
1949         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1950         
1951 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1952
1953         * Makefile.am:
1954           better report generation target (lcov needs a patch)
1955
1956 2005-07-05  Andy Wingo  <wingo@pobox.com>
1957
1958         * gst/elements, testsuite: Null if we got it...
1959
1960 2005-07-05  Wim Taymans  <wim@fluendo.com>
1961
1962         * configure.ac:
1963         * libs/gst/dataprotocol/Makefile.am:
1964         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1965         * libs/gst/dataprotocol/dataprotocol.h:
1966         * pkgconfig/Makefile.am:
1967         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1968         * pkgconfig/gstreamer-dataprotocol.pc.in:
1969         Ported dataprotol to 0.9. 
1970         Added pkgconfig files.
1971
1972 2005-07-05  Andy Wingo  <wingo@pobox.com>
1973
1974         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1975         Default to returning TRUE for the case when tranform_caps returns
1976         a fixed caps, like for identity or volume.
1977
1978         * check/gst/gstbus.c (pound_bus_with_messages): 
1979         * check/gst/gstmessage.c (START_TEST): 
1980         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1981         message API change.
1982
1983         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1984         logic weaks here: always run transform_caps, trying passthrough
1985         operation only if the original caps intersects with the transform.
1986
1987         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1988         source and sink caps.
1989
1990         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
1991         Intersect the peer caps with the pad template before going into
1992         transform_caps.
1993         (gst_base_transform_transform_caps): More debugging.
1994
1995         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
1996         src argument.
1997
1998 2005-07-04  Edward Hervey  <edward@fluendo.com>
1999
2000         * gst/gstutils.c:
2001         * gst/gstutils.h:
2002         (gst_pad_add_*_probe): now returns the signal id for better wrapping
2003         in bindings.
2004
2005 2005-07-04  Andy Wingo  <wingo@pobox.com>
2006
2007         * check/gst/gstpad.c: Only set explicit caps on pads.
2008
2009 2005-07-01  Andy Wingo  <wingo@pobox.com>
2010
2011         * tests/network-clock.scm: Commentary update.
2012
2013         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
2014         Didn't really make sense, not implementable with basetransform,
2015         etc.
2016         (gst_identity_transform): Unref inbuf via make_writable. Feeble
2017         attempt at implementing the sync property, needs an unlock method.
2018
2019         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
2020         New func, by default returns the same caps (the identity
2021         transformation).
2022         (gst_base_transform_getcaps): Uses transform_caps to return
2023         something sensible.
2024         (gst_base_transform_setcaps): Complicated logic to get caps on
2025         both pads, even if they are different, and to call set_caps once
2026         for every time both pads get their caps set.
2027         (gst_base_transform_handle_buffer): Give the ref to the transform
2028         function. Allows in-place modification of the buffer.
2029
2030         * gst/base/gstbasetransform.h (transform_caps): New class method.
2031         Given caps on one side, what can I do on the other.
2032         (set_caps): Take two caps, one for each side of the element.
2033
2034         * gst/gstpad.h:
2035         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
2036         caps in place. This is safe because we can check the mutability of
2037         the caps, and a good idea because fixate functions are just called
2038         as a matter of last resort. (Not actually implemented.)
2039         (gst_pad_set_caps): If the caps we're setting is actually the same
2040         as the existing pad caps, just update the pointer without calling
2041         setcaps. Assert that caps is either NULL or fixed, as per the
2042         docs.
2043
2044         * gst/gstghostpad.c: Update for fixate changes.
2045
2046 2005-07-02  Andy Wingo  <wingo@pobox.com>
2047
2048         * gst/gstcaps.c:
2049         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
2050         two refcounts makes it immutable, which is enough. Doc more.
2051
2052 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
2053
2054         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
2055           Put the mini_object into GValue as a mini_object,
2056           not a gpointer, since that's how we declared
2057           the signal.
2058
2059 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2060
2061         * examples/pwg/Makefile.am:
2062           Fix buildbot again.
2063
2064 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2065
2066         * docs/pwg/building-testapp.xml:
2067           Add extra check.
2068         * examples/pwg/Makefile.am:
2069           Fix buildbot.
2070
2071 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2072
2073         * configure.ac:
2074         * examples/Makefile.am:
2075         * examples/pwg/Makefile.am:
2076         * examples/pwg/extract.pl:
2077           Enable building the PWG examples.
2078         * docs/pwg/advanced-interfaces.xml:
2079           Add URI interface stub.
2080         * docs/pwg/advanced-types.xml:
2081         * docs/pwg/other-autoplugger.xml:
2082         * docs/pwg/appendix-porting.xml:
2083         * docs/pwg/pwg.xml:
2084           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2085         * docs/pwg/building-boiler.xml:
2086         * docs/pwg/building-chainfn.xml:
2087         * docs/pwg/building-pads.xml:
2088         * docs/pwg/building-props.xml:
2089         * docs/pwg/building-state.xml:
2090         * docs/pwg/building-testapp.xml:
2091           Update the building-*.xml parts for 0.9 changes. All examples
2092           code blocks compile in examples/pwg/*.
2093
2094 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2095
2096         * docs/manual/advanced-autoplugging.xml:
2097         * docs/manual/appendix-checklist.xml:
2098         * docs/manual/appendix-integration.xml:
2099         * docs/manual/highlevel-components.xml:
2100           Fix playbin/decodebin examples, update docs a bit, mention bus
2101           instead of signals in various places, mention kmplayer and
2102           kaffeine since they have a working GStreamer backend in the KDE
2103           section.
2104
2105 2005-06-30  Wim Taymans  <wim@fluendo.com>
2106
2107         * CHANGES-0.9:
2108         * docs/design/draft-ghostpads.txt:
2109         * docs/design/draft-push-pull.txt:
2110         * docs/design/draft-query.txt:
2111         * docs/design/part-TODO.txt:
2112         * docs/design/part-query.txt:
2113         Added CHANGES-0.9 doc, updated status of other docs.
2114         
2115         * gst/gstquery.h:
2116         Remove "hmm" macro
2117
2118 2005-06-30  Wim Taymans  <wim@fluendo.com>
2119
2120         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2121         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2122         (gst_base_sink_change_state):
2123         * gst/base/gstbasesink.h:
2124         Some tweaks, only EOS and a buffer complete a preroll.
2125
2126 2005-06-30  Andy Wingo  <wingo@pobox.com>
2127
2128         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2129         activate_push down to the internal pad as well.
2130
2131 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2132
2133         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2134
2135         * gst/gsttaginterface.c:
2136           Some documentation fixes (#307394 and #307397).
2137
2138 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2139
2140         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2141
2142         * gst/gstvalue.c: (gst_value_intersect_list):
2143           Fix memleak (#309125).
2144
2145 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2146
2147         * docs/manual/advanced-dataaccess.xml:
2148           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2149         * docs/manual/basics-pads.xml:
2150           Add reference for filtered caps to above chapter.
2151
2152 2005-06-30  Wim Taymans  <wim@fluendo.com>
2153
2154         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2155         (gst_bin_change_state):
2156         Probes are gone.
2157         Lame attempt at making the state change function a bit
2158         more readable.
2159
2160 2005-06-30  Wim Taymans  <wim@fluendo.com>
2161
2162         * docs/design/part-clocks.txt:
2163         * docs/design/part-element-sink.txt:
2164         * docs/design/part-events.txt:
2165         * docs/design/part-preroll.txt:
2166         * docs/design/part-states.txt:
2167         Some more tweeks and additions to the docs.
2168
2169 2005-06-30  Wim Taymans  <wim@fluendo.com>
2170
2171         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2172         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2173         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2174         (gst_pad_check_pull_range), (gst_pad_get_range),
2175         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2176         * gst/gstpad.h:
2177         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2178         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2179         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2180         (gst_pad_remove_buffer_probe):
2181         Removed atomic operations, use existing LOCK.
2182         Move exception handling out of main code path.
2183
2184 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2185
2186         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2187         (silly_return_true_function), (gst_pad_class_init),
2188         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2189         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2190         (gst_pad_send_event):
2191           Fix accumulator, add default value by using _emitv() instead
2192           of _emit() for signal emission.
2193
2194 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2195
2196         * docs/manual/advanced-dataaccess.xml:
2197         * examples/manual/Makefile.am:
2198           Add probe example.
2199         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2200           Make work (??).
2201
2202 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2203
2204         * gst/elements/gstfilesink.c: (gst_filesink_render):
2205           Simplify code so that we don't have to handle short
2206           writes and return GST_FLOW_ERROR if an error occured.
2207
2208 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2209
2210         * docs/gst/gstreamer-docs.sgml:
2211           Remove probes more.
2212
2213 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2214
2215         * docs/gst/gstreamer-sections.txt:
2216         * docs/gst/tmpl/gstpad.sgml:
2217         * docs/gst/tmpl/gstprobe.sgml:
2218         * gst/Makefile.am:
2219         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2220         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2221         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2222         (gst_pad_push_event), (gst_pad_send_event):
2223         * gst/gstpad.h:
2224         * gst/gstutils.c: (gst_pad_add_data_probe),
2225         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2226         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2227         (gst_pad_remove_buffer_probe):
2228         * gst/gstutils.h:
2229           Remove old probes, add new g-signal-based probes and some utility
2230           functions.
2231
2232 2005-06-29  Edward Hervey  <edward@fluendo.com>
2233
2234         * gst/gstelementfactory.c:
2235         * gst/gstutils.h:
2236         * gst/gstutils.c:
2237         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2238         the definition to the header file.
2239
2240 2005-06-29  Andy Wingo  <wingo@pobox.com>
2241
2242         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2243         plugins from the source directory.
2244
2245 2005-06-29  Wim Taymans  <wim@fluendo.com>
2246
2247         * docs/gst/tmpl/gstbuffer.sgml:
2248         * docs/gst/tmpl/gstclock.sgml:
2249         Some fixings for blantently wrong text.
2250
2251 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2252
2253         * check/Makefile.am:
2254         * gst/gst.c: (add_path_func), (init_pre):
2255         * gst/gstregistry.c: (gst_registry_add_path):
2256           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2257           only scan the GST_PLUGIN_PATH locations, and not add
2258           system locations
2259
2260 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2261
2262         * docs/gst/gstreamer-sections.txt:
2263         * docs/gst/tmpl/gstbasesrc.sgml:
2264         * gst/gstelement.c:
2265         * gst/gstelement.h:
2266         * gst/gstevent.c:
2267         * gst/gstutils.c:
2268           doc fixes
2269
2270 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2271
2272         * docs/manual/advanced-autoplugging.xml:
2273           Fix autoplugging example.
2274
2275 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2276
2277         * docs/manual/advanced-autoplugging.xml:
2278         * docs/manual/mime-world.fig:
2279           Try to get autoplugging working, fix type detection. Fix text
2280           in hello-world image.
2281
2282 2005-06-29  Wim Taymans  <wim@fluendo.com>
2283
2284         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2285         (gst_base_sink_change_state):
2286         Small debug line.
2287
2288         * gst/gstclock.h:
2289         map SIGNAL and BROADCAST to the right function.
2290
2291         * gst/gstobject.h:
2292         Remove redundant braces.
2293
2294         * gst/gstpad.c: (gst_pad_set_caps):
2295         Don't call setcaps function when reseting caps to NULL.
2296
2297         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2298         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2299         (gst_system_clock_id_unschedule):
2300         Use BROADCAST as this is what we do.
2301
2302 2005-06-29  Wim Taymans  <wim@fluendo.com>
2303
2304         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2305         We are actually prerolling before commiting the state
2306         change. 
2307
2308 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2309
2310         * docs/manual/advanced-clocks.xml:
2311         * docs/manual/advanced-interfaces.xml:
2312         * docs/manual/advanced-metadata.xml:
2313         * docs/manual/advanced-position.xml:
2314         * docs/manual/advanced-schedulers.xml:
2315         * docs/manual/advanced-threads.xml:
2316         * docs/manual/appendix-porting.xml:
2317         * docs/manual/basics-bins.xml:
2318         * docs/manual/basics-bus.xml:
2319         * docs/manual/basics-elements.xml:
2320         * docs/manual/basics-helloworld.xml:
2321         * docs/manual/basics-pads.xml:
2322         * docs/manual/highlevel-components.xml:
2323         * docs/manual/manual.xml:
2324         * docs/manual/thread.fig:
2325           Update (until threads/scheduling) Application Development Manual;
2326           remove GstThread, add GstBus, add simple porting checklist, add
2327           documentation for tag writing, clocks, make all examples until this
2328           part compile and run.
2329         * examples/manual/Makefile.am:
2330           Update from changes to Application Development Manual; add bus
2331           example, remove thread example.
2332
2333 2005-06-28  Wim Taymans  <wim@fluendo.com>
2334
2335         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2336         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2337         (gst_bus_source_dispatch):
2338         Add debugging messages.
2339         Make internal methods static.
2340         Handle the case where the bus is flushed in the handler.
2341         
2342         * gst/gstelement.c: (gst_element_get_bus):
2343         Fix refcount in _get_bus();
2344
2345         * gst/gstpipeline.c: (gst_pipeline_change_state),
2346         (gst_pipeline_get_clock_func):
2347         Clock refcounting fixes.
2348         Handle the case where preroll timed out more gracefully.
2349         
2350         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2351         Clean up the internal thread in dispose. This is needed
2352         for subclasses that actually get disposed.
2353         
2354         * gst/schedulers/threadscheduler.c:
2355         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2356         (gst_thread_scheduler_dispose):
2357         Free thread pool in dispose.
2358
2359 2005-06-28  Andy Wingo  <wingo@pobox.com>
2360
2361         * tests/network-clock-utils.scm (debug, print-event): New utils.
2362
2363         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2364         (*packet-loss*): Unified loss probability.
2365         (network-time): Report out-of-band events.
2366
2367         * tests/plot-data: Add support for out-of-band events. Hack it
2368         into this script instead of passing it down the pipe; should fix
2369         this later.
2370
2371 2005-06-28  Wim Taymans  <wim@fluendo.com>
2372
2373         * docs/gst/gstreamer.types:
2374         * docs/gst/tmpl/gstbasesrc.sgml:
2375         * docs/gst/tmpl/gstpad.sgml:
2376         Docs fixes.
2377
2378 2005-06-28  Wim Taymans  <wim@fluendo.com>
2379
2380         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2381         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2382         (gst_proxy_pad_do_fixatecaps):
2383         Correctly proxy the check_pull_range function.
2384
2385 2005-06-28  Andy Wingo  <wingo@pobox.com>
2386
2387         * tests/network-clock.scm: Removed need for slib.
2388         
2389 2005-06-28  Wim Taymans  <wim@fluendo.com>
2390
2391         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2392         (gst_basesink_preroll_queue_flush):
2393         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2394         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2395         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2396         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2397         (gst_proxy_pad_set_property):
2398         * gst/gstpad.c:
2399         * gst/gstpad.h:
2400         * gst/gstqueue.c: (gst_queue_init):
2401         The deprecated pad loop function is removed now.
2402
2403 2005-06-28  Andy Wingo  <wingo@pobox.com>
2404
2405         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2406         New parameters, simulate network packet loss.
2407
2408         * tests/network-clock-utils.scm: Initialize the RNG.
2409
2410 2005-06-28  Wim Taymans  <wim@fluendo.com>
2411
2412         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2413         (gst_basesink_event), (gst_basesink_deactivate):
2414         Flushing the preroll queue always needs to unlock the waiters.
2415
2416 2005-06-28  Edward Hervey  <edward@fluendo.com>
2417
2418         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2419         Wheen a seek was successful on a pipeline, set the stream_time to the
2420         seek offset in order to have a synchronized stream_time.
2421
2422 2005-06-28  Wim Taymans  <wim@fluendo.com>
2423
2424         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2425         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2426         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2427         (gst_proxy_pad_do_fixatecaps):
2428         Call wrapper function instead of just calling the function
2429         pointers. This takes care of any locking and whatmore.
2430
2431 2005-06-28  Wim Taymans  <wim@fluendo.com>
2432
2433         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2434         (gst_pad_pull_range):
2435         * gst/gstpad.h:
2436         CONNECTED -> LINKED.
2437
2438 2005-06-28  Andy Wingo  <wingo@pobox.com>
2439
2440         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2441         source-munging commit!!!
2442
2443         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2444         (gst_object_sink): Take gpointer arguments, not GstObject --
2445         avoids casts. Like GLib.
2446
2447         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2448         activate.
2449
2450 2005-06-27  Andy Wingo  <wingo@pobox.com>
2451
2452         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2453         remaining buffer.
2454
2455         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2456         returns a sorted copy of the trace list.
2457         (gst_alloc_trace_print_live): New API, only prints traces with
2458         live objects. Sort the list.
2459         (gst_alloc_trace_print_all): Sort the list.
2460         (gst_alloc_trace_print): Align columns.
2461
2462         * gst/elements/gstttypefindelement.c:
2463         * gst/elements/gsttee.c:
2464         * gst/base/gstbasesrc.c:
2465         * gst/base/gstbasesink.c:
2466         * gst/base/gstbasetransform.c:
2467         * gst/gstqueue.c: Adapt for pad activation changes.
2468
2469         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2470         sched.
2471         (gst_pipeline_dispose): Drop ref on sched.
2472
2473         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2474         (gst_pad_activate_default): Push mode by default.
2475         (pre_activate_switch, post_activate_switch): New stubs, things to
2476         do before and after switching activation modes on pads.
2477         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2478         the pad's activate function to choose which mode to activate.
2479         Shortcut on deactivation and call the right function directly.
2480         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2481         mode.
2482         (gst_pad_activate_push): New API, same for push mode.
2483         (gst_pad_set_activate_function) 
2484         (gst_pad_set_activatepull_function) 
2485         (gst_pad_set_activatepush_function): Setters for new API.
2486
2487         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2488         Trace all miniobjects.
2489         (gst_mini_object_make_writable): Unref the arg if we copy, like
2490         gst_caps_make_writable.
2491
2492         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2493
2494         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2495         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2496         Adapt for new pad API.
2497
2498         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2499
2500         * gst/gstelement.h:
2501         * gst/gstelement.c (gst_element_iterate_src_pads) 
2502         (gst_element_iterate_sink_pads): New API functions.
2503         
2504         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2505         should fold into gstiterator.c in some form.
2506         (gst_element_pads_activate): Simplified via use of fold and
2507         delegation of decisions to gstpad->activate.
2508
2509         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2510         help in debugging.
2511
2512         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2513         class once in init, like gstmessage. Didn't run into this issue
2514         but it seems correct. Don't initialize a trace, gstminiobject does
2515         that.
2516
2517         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2518         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2519         to the bus.
2520         (assert_live_count): New util function, uses alloc traces to check
2521         cleanup.
2522
2523         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2524         To be modified when unlink drops the internal pad.
2525
2526 2005-06-27  Wim Taymans  <wim@fluendo.com>
2527
2528         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2529         (gst_bin_change_state):
2530         Cleanup the get_state() function a little, make sure it
2531         iterates the same set of elements.
2532         Added stub iterate_state_order().
2533
2534 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2535
2536         * docs/gst/gstreamer-docs.sgml:
2537         * docs/gst/gstreamer-sections.txt:
2538         * docs/gst/gstreamer.types:
2539         * docs/gst/tmpl/gstbasesink.sgml:
2540         * docs/gst/tmpl/gstbasesrc.sgml:
2541         * docs/gst/tmpl/gstbasetransform.sgml:
2542         * docs/gst/tmpl/gstelement.sgml:
2543         * docs/gst/tmpl/gstiterator.sgml:
2544         * gst/base/gstbasesrc.c:
2545         * gst/base/gstbasesrc.h:
2546         * gst/base/gstbasetransform.h:
2547         * gst/gstelement.c:
2548         * gst/gstiterator.h:
2549           adding basetransform and iterator docs
2550
2551 2005-06-27  Andy Wingo  <wingo@pobox.com>
2552
2553         * docs/design/part-activation.txt: Notes on how activation should
2554         work -- not quite implemented yet.
2555
2556 2005-06-25  Wim Taymans  <wim@fluendo.com>
2557
2558         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2559         At least get the chain function correct, needs more
2560         fixing.
2561
2562 2005-06-25  Wim Taymans  <wim@fluendo.com>
2563
2564         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2565         (gst_basesink_handle_object), (gst_basesink_event),
2566         (gst_basesink_do_sync), (gst_basesink_handle_event),
2567         (gst_basesink_change_state):
2568         * gst/gsttask.h:
2569         Right, two problems here: ghostpads don't take locks and
2570         glib _rec_mutex_lock_full() with depth==0 still locks.
2571         Catch illegal locking and g_warn them.
2572
2573 2005-06-25  Wim Taymans  <wim@fluendo.com>
2574
2575         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2576         Have to check for completion now...
2577
2578 2005-06-25  Wim Taymans  <wim@fluendo.com>
2579
2580         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2581         (gst_basesink_handle_object), (gst_basesink_event),
2582         (gst_basesink_do_sync), (gst_basesink_handle_event),
2583         (gst_basesink_change_state):
2584         * gst/gstpad.h:
2585         Unlock STREAM_LOCK whatever the recursion was.
2586
2587 2005-06-25  Wim Taymans  <wim@fluendo.com>
2588
2589         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2590         (gst_basesink_preroll_queue_empty),
2591         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2592         (gst_basesink_event), (gst_basesink_do_sync),
2593         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2594         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2595         (gst_basesink_change_state):
2596         Reworked the base sink, handle event and buffer serialisation
2597         correctly and removed possible deadlock.
2598         Handle EOS correctly.
2599
2600 2005-06-25  Wim Taymans  <wim@fluendo.com>
2601
2602         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2603         (gst_pipeline_change_state):
2604         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2605         Allow elements to post EOS in the state change function.
2606         Fix up -launch, make it exit the poll loop when the
2607         pipeline actually changed state.
2608         Fix up warning parsing in -launch.
2609
2610 2005-06-25  Wim Taymans  <wim@fluendo.com>
2611
2612         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2613         (gst_tee_sink_activate):
2614         Core takes STREAM_LOCK for us now.
2615
2616 2005-06-25  Wim Taymans  <wim@fluendo.com>
2617
2618         * gst/gstelement.c: (gst_element_get_state_func),
2619         (gst_element_set_state):
2620         * gst/gstelement.h:
2621         * gst/gstmessage.c: (gst_message_parse_error),
2622         (gst_message_parse_warning):
2623         Keep track of current target state while performing a state
2624         change so that subclasses can do something interesting.
2625         Fix parsing of warning/error messages when GError is NULL.
2626
2627 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2628
2629         * docs/gst/Makefile.am:
2630         * docs/gst/gstreamer-docs.sgml:
2631         * docs/gst/gstreamer-sections.txt:
2632         * docs/gst/gstreamer.types:
2633         * docs/gst/tmpl/gstbasesink.sgml:
2634         * docs/gst/tmpl/gstbasesrc.sgml:
2635         * docs/gst/tmpl/gstbin.sgml:
2636         * docs/gst/tmpl/gstcompat.sgml:
2637         * docs/gst/tmpl/gstfakesink.sgml:
2638         * docs/gst/tmpl/gstfakesrc.sgml:
2639         * docs/gst/tmpl/gstfilesink.sgml:
2640         * docs/gst/tmpl/gstfilesrc.sgml:
2641         * docs/gst/tmpl/gstindex.sgml:
2642         * docs/manual/appendix-quotes.xml:
2643         * gst/base/gstbasesrc.h:
2644         * gst/elements/gstfakesrc.h:
2645         * gst/gstmessage.h:
2646           start pulling in base classes and elements in our docs
2647
2648 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2649
2650         * docs/gst/Makefile.am:
2651         * docs/libs/Makefile.am:
2652           fixed make distcheck with gtk-doc 1.3
2653
2654 2005-06-23  Wim Taymans  <wim@fluendo.com>
2655
2656         * gst/gstelement.c: (gst_element_get_state_func),
2657         (gst_element_set_state), (gst_element_change_state):
2658         When the state did not change, also report NO_PREROLL
2659         when it matters.
2660
2661 2005-06-23  Wim Taymans  <wim@fluendo.com>
2662
2663         * gst/gstpad.c: (gst_pad_event_default):
2664         * gst/gstqueue.c: (gst_queue_loop):
2665         No unsafe task pausing please.
2666
2667 2005-06-23  Wim Taymans  <wim@fluendo.com>
2668
2669         * gst/schedulers/threadscheduler.c:
2670         (gst_thread_scheduler_task_start),
2671         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2672         Ref the task before pushing it on the threadpool. This
2673         makes sure that we have a ref when the threadfunction is
2674         actually called.
2675
2676 2005-06-23  Andy Wingo  <wingo@pobox.com>
2677
2678         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2679         offset is greater than the file's size.
2680
2681         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2682         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2683         * gst/gstobject.c (gst_object_class_init): Make the class lock
2684         recursive. Wim won't let me drop deep_notify. Decodebin works
2685         again, whoopdy doo.
2686
2687         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2688         internal pad, and hacks accordingly. Doesn't do it on the target
2689         pad because we change its caps. Probably catches all cases of
2690         interest tho.
2691         (gst_ghost_pad_set_property): Connect to notify::caps as
2692         appropritate.
2693
2694         * tests/network-clock.scm (plot-simulation): Pipe data to the
2695         elite python skript.
2696
2697         * tests/network-clock-utils.scm (define-parameter): New macro,
2698         defines a parameter that can be set via the command line.
2699         (set-parameter!, parse-parameter-arguments): Command line args
2700         parser.
2701
2702         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2703         stdin.
2704
2705 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2706
2707         * gst/elements/gsttypefindelement.c:
2708         (gst_type_find_element_handle_event):
2709           Don't restart typefinding on a discont.
2710         * gst/gstelement.c: (gst_element_set_state):
2711           Debug spelling fix.
2712         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2713           Allow changing mode of an active pad.
2714           Debug output fixes.
2715         * gst/registries/gstlibxmlregistry.c: (load_feature):
2716           Don't cast a static pad template to a normal pad template.
2717
2718 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2719
2720         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2721         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2722           remove gst_strtoll completely, since it didn't actually do
2723           anything more than what g_ascii_strtoull already does.
2724           check for range errors when deserializing
2725           do a cast for the unsigned cases; but further fixing needs
2726           a decision on what the interpretation of "(int)" and
2727           deserialization should be for values that fall outside the
2728           type's boundaries (ie, refuse, or interpret as casting)
2729
2730 2005-06-23  Wim Taymans  <wim@fluendo.com>
2731
2732         * check/Makefile.am:
2733         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2734         * docs/design/part-live-source.txt:
2735         * docs/design/part-states.txt:
2736         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2737         (gst_basesrc_set_live), (gst_basesrc_is_live),
2738         (gst_basesrc_get_range), (gst_basesrc_activate),
2739         (gst_basesrc_change_state):
2740         * gst/base/gstbasesrc.h:
2741         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2742         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2743         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2744         * gst/gstelement.c: (gst_element_get_state_func),
2745         (gst_element_set_state):
2746         * gst/gstelement.h:
2747         * gst/gsttypes.h:
2748         * tools/gst-launch.c: (event_loop), (main):
2749         Added support for live sources and other elements that
2750         cannot do preroll.
2751         Updated design docs, added live-source design doc.
2752         Implemented live source functionality in basesrc
2753         Fix error condition in _bin_get_state()
2754         Implement live source handling in -launch.
2755         Added check for live sources.
2756         Fixed case in GstBin where elements were changed state
2757         multiple times.
2758
2759
2760 2005-06-23  Andy Wingo  <wingo@pobox.com>
2761
2762         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2763         borken refcounting.
2764
2765         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2766         gst_caps_replace takes care of this for us.
2767
2768         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2769         gst_pad_set_caps on the target, not just its setcaps() function.
2770
2771         * tests/network-clock.scm: 
2772         * tests/network-clock-utils.scm: A network clock simulator.
2773         Something of an algorithmic testbed before doing something in C.
2774
2775 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2776
2777         * check/Makefile.am:
2778         * check/gst/capslist.h:
2779           copy over from 0.8, and add two with bitmasks specified with
2780           (int) 0xFF...
2781         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2782           add test to parse everything from capslist.h
2783         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2784         (main):
2785           add test for structure deserialization
2786         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2787           add tests for deserialization of strings to int types
2788         * gst/gststructure.c: (gst_structure_nth_field_name):
2789         * gst/gststructure.h:
2790           add a way to get the name of a field referenced by index
2791         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2792           instead of checking if the resulting long long lies between
2793           min and max, we check if the long long would fit into
2794           a number of bytes for the final type.
2795           This fixes cases where a string represents 2^32 - 1, which
2796           when cast to int would be the (valid) -1, but is bigger than
2797           G_MAXINT
2798
2799 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2800
2801         * gst/parse/grammar.y:
2802           add a log line for type deserialization
2803
2804 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2805
2806         * check/gst/gstvalue.c: (START_TEST):
2807         * gst/gstvalue.c: (gst_value_deserialize):
2808           return long long, not int, so gint64 deserialization actually
2809           works.  Is there any flag that makes the compiler check this ?
2810           Fixes #308559
2811
2812 2005-06-22  Wim Taymans  <wim@fluendo.com>
2813
2814         * gst/gstbuffer.h:
2815         Added convenience macros for setting buffers in GValue.
2816
2817 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2818
2819         * check/gst/.cvsignore:
2820         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2821           add a test deserializing int64, and comment part out because
2822           it fails, yay !
2823
2824 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2825
2826         * check/Makefile.am:
2827         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2828         * testsuite/Makefile.am:
2829         * testsuite/caps/Makefile.am:
2830         * testsuite/caps/value_serialize.c:
2831         * testsuite/test_gst_init.c:
2832           move a value_serialize test over
2833
2834 2005-06-20  Wim Taymans  <wim@fluendo.com>
2835
2836         * gst/gstpad.c:
2837         Small doc updates.
2838         
2839         * gst/gstvalue.c: (gst_value_compare_buffer),
2840         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2841         (gst_value_compare_flags), (gst_value_serialize_flags),
2842         (gst_value_deserialize_flags), (_gst_value_initialize):
2843         Fix serialisation of buffers, they are not boxed types anymore
2844
2845 2005-06-20  Wim Taymans  <wim@fluendo.com>
2846
2847         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2848         Testcase to show error in buffer-on-caps serialisation.
2849
2850 2005-06-20  Andy Wingo  <wingo@pobox.com>
2851
2852         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2853         will be adding to later.
2854
2855         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2856         if its socks fill with rocks.
2857         (gst_system_clock_obtain): Set the name on object construction.
2858         Avoid double-checked locking.
2859
2860 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2861
2862         * gst/gsturi.c: (gst_element_make_from_uri):
2863           Fix potential endless loop.
2864
2865 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2866
2867         * check/Makefile.am:
2868           add gsttag
2869         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2870         (main):
2871           move over from testsuite dir and clean up
2872         * configure.ac:
2873         * gst/gsttag.c:
2874         * testsuite/Makefile.am:
2875         * testsuite/tags/.cvsignore:
2876         * testsuite/tags/Makefile.am:
2877         * testsuite/tags/merge.c:
2878           remove testsuite/tags
2879
2880 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2881
2882         * docs/gst/gstreamer-sections.txt:
2883         * docs/gst/tmpl/gstenumtypes.sgml:
2884         * win32/gstenumtypes.c:
2885           clean up documentation build a little
2886
2887 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2888
2889         * check/gstcheck.h:
2890           add macros for checking refcounts on objects and caps
2891         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2892           add some more unit tests
2893         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2894         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2895           fix leaked refcounts (I hope :)) so unittest works
2896         * gst/gstpad.h:
2897           whitespace removal
2898
2899 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2900
2901         * configure.ac: back to HEAD
2902
2903 === release 0.9.1 ===
2904
2905 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2906
2907         * NEWS:
2908         * RELEASE:
2909           updated
2910
2911 2005-06-17  Andy Wingo  <wingo@pobox.com>
2912
2913         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2914         assert; it's always possible that the pad gets deactivated in
2915         between the checks in gstpad.c and the implementation. Rely on
2916         finish_preroll() to return a FLUSHING or similar instead of on the
2917         assert.
2918         
2919         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2920         clock and post an EOS message if we come out of finish_preroll in
2921         the playing state.
2922
2923 2005-06-16  David Schleef  <ds@schleef.org>
2924
2925         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2926         (gst_capsfilter_set_property): Allow NULL as possible value
2927         for filter_caps property, indicating GST_CAPS_ANY.
2928
2929 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2930
2931         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2932           fix debug output
2933         * gst/schedulers/Makefile.am:
2934           use libgst prefix
2935         * gstreamer.spec.in:
2936           fix spec for it
2937
2938 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2939
2940         * gstreamer.spec.in:
2941           clean up
2942
2943 2005-06-08  Andy Wingo  <wingo@pobox.com>
2944
2945         * gst/gstutils.c: RPAD fixes all around.
2946         (gst_element_link_pads): Refcounting fixes.
2947
2948         * tools/gst-inspect.c:
2949         * tools/gst-xmlinspect.c:
2950         * parse/grammar.y:
2951         * gst/base/gsttypefindhelper.c:
2952         * gst/base/gstbasesink.c:
2953         * gst/gstqueue.c: RPAD fixes.
2954
2955         * gst/gstghostpad.h:
2956         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2957         pads. The tricky thing is they provide both source and sink
2958         interfaces, since they proxy the internal pad for the external
2959         pad, and vice versa. Implement with lower-level ProxyPad objects,
2960         with the interior proxy pad as a child of the exterior ghost pad.
2961         Should write a doc on this.
2962         
2963         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2964         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2965         gst_object API.
2966         
2967         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2968         pads are real pads. No ghost pads in this file. Not documenting
2969         the myriad s/RPAD/PAD/ and REALIZE fixes.
2970         (gst_pad_class_init): Add properties for "direction" and
2971         "template". Both are construct-only, so they can't change during
2972         the life of the pad. Fixes properly deriving from GstPad.
2973         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2974         derived objects, just set properties when creating the objects via
2975         g_object_new.
2976         (gst_pad_get_parent): Implement as a function, return NULL if the
2977         parent is not an element.
2978         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2979         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2980         
2981         * gst/gstobject.c (gst_object_class_init): Make name a construct
2982         property. Don't set it in the object init.
2983
2984         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2985         with UNKNOWN direction.
2986         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2987         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2988         (gst_element_remove_pad): Remove ghost-pad special cases.
2989         (gst_element_pads_activate): Remove rpad cruft.
2990
2991         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
2992         catch the pad's-parent-not-an-element case.
2993
2994         * gst/gst.h: Include gstghostpad.h.
2995
2996         * gst/gst.c (init_post): No more real, ghost pads.
2997
2998         * gst/Makefile.am: Add gstghostpad.[ch].
2999
3000         * check/Makefile.am:
3001         * check/gst/gstbin.c:
3002         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
3003         into a bin creates ghost pads, and that the refcounts are right.
3004         Partly moved from gstbin.c.
3005
3006 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3007
3008         * check/gst-libs/.cvsignore:
3009         * check/gst/.cvsignore:
3010         * check/pipelines/.cvsignore:
3011           ignore more
3012         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
3013         (START_TEST), (cleanup_suite), (main):
3014           add some tests related to cleanup after running pipelines
3015
3016 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3017
3018         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
3019           add a testsuite for GstBuffer
3020
3021 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3022
3023         * gst/gstminiobject.h:
3024           add defines for accessing the refcount
3025
3026 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
3027
3028         * Makefile.am: added support for html unit test coverage reports
3029
3030 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
3031
3032         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
3033           Free existing caps if the capsfilter changes. Add a FIXME about
3034           setting those caps on the pads.
3035
3036         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
3037           Before adding a ghost pad to a parent bin, check that there isn't
3038           already one for the element on the bin. Prevents infinite recursion
3039           when using decodebin in parse pipelines. Andy says he'll rewrite the
3040           way this works anyway, so ignore the hack.
3041
3042 2005-06-02  Andy Wingo  <wingo@pobox.com>
3043
3044         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
3045         file size, pass it on to the type find helper.
3046
3047         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
3048         segment_start and segment_end properly according to the seek
3049         method. Segment_end is still a bit flaky because offset can be
3050         negative for CUR and END cases, but it takes -1 as an "unset"
3051         value.
3052
3053 2005-06-02  Wim Taymans  <wim@fluendo.com>
3054
3055         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
3056         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
3057         (gst_basesink_activate):
3058         * gst/base/gstbasesink.h:
3059         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3060         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3061         (gst_pad_query), (gst_pad_start_task):
3062         * gst/gstpad.h:
3063         * gst/gstqueue.c: (gst_queue_bufferalloc),
3064         (gst_queue_handle_sink_event), (gst_queue_chain):
3065         Bufferalloc: return GstFlowReturn to more accuratly report
3066         why allocation failed.
3067
3068 2005-06-02  Wim Taymans  <wim@fluendo.com>
3069
3070         * gst/gstpipeline.c: (gst_pipeline_send_event):
3071         Take snapshot of state without blocking.
3072
3073 2005-06-02  Wim Taymans  <wim@fluendo.com>
3074
3075         * docs/design/part-TODO.txt:
3076         * docs/design/part-caps.txt:
3077         * docs/design/part-clocks.txt:
3078         * docs/design/part-negotiation.txt:
3079         * docs/design/part-preroll.txt:
3080         Small doc updates 
3081
3082 2005-05-30  Wim Taymans  <wim@fluendo.com>
3083
3084         * gst/elements/gstidentity.c: (gst_identity_event),
3085         (gst_identity_transform), (gst_identity_get_property):
3086         Protect last_message property as it is accessed from
3087         multiple threads.
3088
3089 2005-05-30  Wim Taymans  <wim@fluendo.com>
3090
3091         * gst/gstelement.c: (gst_element_init),
3092         (gst_element_pads_activate), (gst_element_change_state):
3093         Slicker pad activation code.
3094
3095 2005-05-30  Wim Taymans  <wim@fluendo.com>
3096
3097         * gst/Makefile.am:
3098         * gst/gstelement.h:
3099         * gst/gstelementfactory.h:
3100         * gst/gsttypes.h:
3101         Move elementfactory methods to separate .h file.
3102
3103 2005-05-30  Wim Taymans  <wim@fluendo.com>
3104
3105         * docs/design/part-overview.txt:
3106         * gst/gstsystemclock.h:
3107         Small typo fixes, doc updates.
3108
3109 2005-05-30  Wim Taymans  <wim@fluendo.com>
3110
3111         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3112         (init_popt_callback):
3113         Remove cpu-opt flag.
3114
3115 2005-05-30  Wim Taymans  <wim@fluendo.com>
3116
3117         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3118         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3119         * gst/gstbuffer.h:
3120         Avoid typechecking in places where not needed.
3121         Added accessor for malloc_data.
3122
3123 2005-05-30  Wim Taymans  <wim@fluendo.com>
3124
3125         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3126         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3127         (gst_pad_configure_sink), (gst_pad_configure_src),
3128         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3129         (gst_pad_start_task):
3130         Propagate errors from _set_caps() in configure_src/sink
3131         functions instead of returning TRUE.
3132         FLUSH events can travel up and downstream
3133
3134
3135 2005-05-30  Wim Taymans  <wim@fluendo.com>
3136
3137         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3138         (gst_basesink_activate):
3139         Handle EOS in preroll.
3140
3141 2005-05-30  Wim Taymans  <wim@fluendo.com>
3142
3143         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3144         (gst_queue_loop), (gst_queue_handle_src_event):
3145         Remove old pieces of code
3146         Flushing the queue in an upstream event is a very bad idea.
3147
3148 2005-05-26  Andy Wingo  <wingo@pobox.com>
3149
3150         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3151         gst_value_set_mini_object so as to add a ref on the object (which
3152         will be removed when the value is unset).
3153
3154         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3155         arg type in ::handoff.
3156
3157         * gst/gstelement.c (gst_element_change_state): Also deactivate
3158         pads in READY->NULL, just in case the element didn't make it to
3159         PAUSED. Wingo tested, Wim approved.
3160
3161 2005-05-26  Wim Taymans  <wim@fluendo.com>
3162
3163         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3164         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3165         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3166         A flushing pad cannot be used to alloc_buffer from.
3167
3168 2005-05-26  Wim Taymans  <wim@fluendo.com>
3169
3170         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3171         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3172         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3173         (gst_bus_create_watch), (gst_bus_add_watch_full):
3174         * gst/gstbus.h:
3175         Implement a real GSource and use g_main_context_wakeup() to
3176         signal new messages instead of the socketpair.
3177
3178 2005-05-25  Wim Taymans  <wim@fluendo.com>
3179
3180         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3181         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3182         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3183         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3184         (gst_pad_send_event), (gst_pad_start_task):
3185         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3186         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3187         (gst_queue_sink_activate), (gst_queue_src_activate),
3188         (gst_queue_change_state):
3189         * gst/gstqueue.h:
3190         Fix state changes for non sinks. We now change sinks, then elements
3191         with unconnected srcpads, then the rest.
3192         More efficient queue unlocking in flush and state changes.
3193         Set the pad activate mode even if it does not have an activate
3194         function.
3195
3196 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3197
3198         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3199           Don't go in pull mode for non-seekable sources.
3200         * gst/elements/gsttypefindelement.h:
3201         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3202         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3203         (free_entry), (stop_typefinding),
3204         (gst_type_find_element_handle_event), (find_peek),
3205         (gst_type_find_element_chain), (do_pull_typefind),
3206         (gst_type_find_element_change_state):
3207           Allow typefinding (w/o seeking) in push-mode, simplified version
3208           of what was in 0.8.
3209         * gst/gstutils.c: (gst_buffer_join):
3210         * gst/gstutils.h:
3211           gst_buffer_join() from 0.8.
3212
3213 2005-05-25  Wim Taymans  <wim@fluendo.com>
3214
3215         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3216         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3217         (gst_pad_send_event), (gst_pad_start_task):
3218         Disable attempt at mode switching until it is figured out.
3219
3220 2005-05-25  Wim Taymans  <wim@fluendo.com>
3221
3222         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3223         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3224         (gst_basesink_finish_preroll), (gst_basesink_chain),
3225         (gst_basesink_loop), (gst_basesink_activate),
3226         (gst_basesink_change_state):
3227         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3228         (gst_basesrc_get_range), (gst_basesrc_loop),
3229         (gst_basesrc_activate):
3230         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3231         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3232         (gst_real_pad_init), (gst_real_pad_set_property),
3233         (gst_real_pad_get_property), (gst_pad_set_active),
3234         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3235         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3236         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3237         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3238         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3239         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3240         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3241         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3242         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3243         (gst_pad_stop_task):
3244         * gst/gstpad.h:
3245         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3246         (gst_queue_loop), (gst_queue_src_activate):
3247         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3248         (gst_task_get_state):
3249         * gst/gsttask.h:
3250         * gst/schedulers/threadscheduler.c:
3251         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3252         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3253         in task function.
3254         Remove ACTIVE pad flag, use FLUSHING everywhere
3255         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3256         functions.
3257         Add locks around IS_FLUSHING when reading.
3258         Take STREAM lock in chain(), get_range() functions so plugins
3259         don't need to take it anymore.
3260         
3261
3262
3263 2005-05-25  Wim Taymans  <wim@fluendo.com>
3264
3265         * tools/gst-launch.c: (event_loop):
3266         Unref message after using its contents instead of
3267         before.
3268
3269 2005-05-24  Wim Taymans  <wim@fluendo.com>
3270
3271         * docs/design/draft-ghostpads.txt:
3272         * docs/design/draft-push-pull.txt:
3273         * docs/design/draft-query.txt:
3274         * docs/design/part-overview.txt:
3275         Docs updates, added general overview doc.
3276
3277 2005-05-21  David Schleef  <ds@schleef.org>
3278
3279         * docs/gst/tmpl/old/GstBin.sgml:
3280         * docs/gst/tmpl/old/GstBuffer.sgml:
3281         * docs/gst/tmpl/old/GstCaps.sgml:
3282         * docs/gst/tmpl/old/GstClock.sgml:
3283         * docs/gst/tmpl/old/GstCompat.sgml:
3284         * docs/gst/tmpl/old/GstData.sgml:
3285         * docs/gst/tmpl/old/GstElement.sgml:
3286         * docs/gst/tmpl/old/GstEvent.sgml:
3287         * docs/gst/tmpl/old/GstIndex.sgml:
3288         * docs/gst/tmpl/old/GstStructure.sgml:
3289         * docs/gst/tmpl/old/GstTag.sgml:
3290         * docs/gst/tmpl/old/cothreads.sgml:
3291         * docs/gst/tmpl/old/cothreads_compat.sgml:
3292         * docs/gst/tmpl/old/gettext.sgml:
3293         * docs/gst/tmpl/old/gobject2gtk.sgml:
3294         * docs/gst/tmpl/old/grammar.tab.sgml:
3295         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3296         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3297         * docs/gst/tmpl/old/gst_private.sgml:
3298         * docs/gst/tmpl/old/gstaggregator.sgml:
3299         * docs/gst/tmpl/old/gstarch.sgml:
3300         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3301         * docs/gst/tmpl/old/gstbufferstore.sgml:
3302         * docs/gst/tmpl/old/gstdata_private.sgml:
3303         * docs/gst/tmpl/old/gstdisksink.sgml:
3304         * docs/gst/tmpl/old/gstdisksrc.sgml:
3305         * docs/gst/tmpl/old/gstelementfactory.sgml:
3306         * docs/gst/tmpl/old/gstextratypes.sgml:
3307         * docs/gst/tmpl/old/gstfakesink.sgml:
3308         * docs/gst/tmpl/old/gstfakesrc.sgml:
3309         * docs/gst/tmpl/old/gstfdsink.sgml:
3310         * docs/gst/tmpl/old/gstfdsrc.sgml:
3311         * docs/gst/tmpl/old/gstfilesink.sgml:
3312         * docs/gst/tmpl/old/gstfilesrc.sgml:
3313         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3314         * docs/gst/tmpl/old/gstidentity.sgml:
3315         * docs/gst/tmpl/old/gstindexfactory.sgml:
3316         * docs/gst/tmpl/old/gstmarshal.sgml:
3317         * docs/gst/tmpl/old/gstmd5sink.sgml:
3318         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3319         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3320         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3321         * docs/gst/tmpl/old/gstpipefilter.sgml:
3322         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3323         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3324         * docs/gst/tmpl/old/gstshaper.sgml:
3325         * docs/gst/tmpl/old/gstspider.sgml:
3326         * docs/gst/tmpl/old/gstspideridentity.sgml:
3327         * docs/gst/tmpl/old/gststatistics.sgml:
3328         * docs/gst/tmpl/old/gsttee.sgml:
3329         * docs/gst/tmpl/old/gsttimecache.sgml:
3330         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3331         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3332         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3333         * docs/gst/tmpl/old/types.sgml:
3334           I didn't intend to add these or check them in.
3335
3336 2005-05-19  David Schleef  <ds@schleef.org>
3337
3338         * configure.ac: Use -no-common everywhere.  In a sane world, it
3339           would be the default in libtool, because without it, you can't
3340           build DLLs on Windows.
3341         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3342         * docs/gst/gstreamer-sections.txt:
3343         * docs/gst/tmpl/gstcpu.sgml:
3344         * docs/gst/tmpl/gstdata.sgml:
3345         * docs/gst/tmpl/gstthread.sgml:
3346
3347 2005-05-19  David Schleef  <ds@schleef.org>
3348
3349         * gst/gstminiobject.c: (gst_value_set_mini_object),
3350         (gst_value_take_mini_object), (gst_value_get_mini_object):
3351         * gst/gstminiobject.h: Add GValue set/get functions.
3352
3353 2005-05-19  Wim Taymans  <wim@fluendo.com>
3354
3355         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3356         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3357         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3358         * gst/gstbuffer.h:
3359         * gst/gstbus.c: (gst_bus_post):
3360         * gst/gstelement.c: (gst_element_get_random_pad):
3361         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3362         Make subbufer unref the parent in finalize.
3363         some more debugging info.
3364
3365
3366 2005-05-19  Wim Taymans  <wim@fluendo.com>
3367
3368         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3369         (gst_basesink_init), (gst_basesink_finalize),
3370         (gst_basesink_activate), (gst_basesink_change_state):
3371         Don't free preroll queue too early.
3372
3373 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3374
3375         * gst/Makefile.am:
3376         * gst/ROADMAP:
3377           Hi, I'm outdated. Please shoot me.
3378
3379 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3380
3381         * gst/gstpipeline.c: (gst_pipeline_send_event):
3382           Do not access variables after they have been deleted.
3383
3384 2005-05-19  Wim Taymans  <wim@fluendo.com>
3385
3386         * tools/gst-inspect.c: (print_plugin_features):
3387         A plugin feature does unfortunatly not use the
3388         object name yet...
3389
3390 2005-05-18  Wim Taymans  <wim@fluendo.com>
3391
3392         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3393         Port _span() functions to new subbuffers.
3394
3395 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3396
3397         * gst/gstbin.c: (gst_bin_add_func):
3398           Fix clock settery in bins when adding kids after the clock has
3399           been selected.
3400
3401 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3402
3403         * gst/elements/gstidentity.c: (gst_identity_class_init):
3404           Workaround until signals support GstMiniObject.
3405
3406 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3407
3408         * gst/gstbuffer.c:
3409         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3410
3411 2005-05-18  Wim Taymans  <wim@fluendo.com>
3412
3413         * gst/base/Makefile.am:
3414         * gst/base/gstadapter.c: (gst_adapter_base_init),
3415         (gst_adapter_class_init), (gst_adapter_init),
3416         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3417         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3418         (gst_adapter_flush), (gst_adapter_available),
3419         (gst_adapter_available_fast):
3420         * gst/base/gstadapter.h:
3421         Ported and added adapter to the base classes.
3422
3423 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3424
3425         * gst/gst.c:
3426         * gst/gstmessage.c:
3427           Make sure the class is reffed/unreffed once before threads can be
3428           used.  Fixes #304551.
3429
3430 2005-05-17  Wim Taymans  <wim@fluendo.com>
3431
3432         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3433         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3434         * gst/gstminiobject.c: (gst_mini_object_get_type),
3435         (gst_mini_object_free):
3436         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3437         (gst_pad_push), (gst_pad_push_event):
3438         * gst/gstqueue.c: (gst_queue_change_state):
3439         Don't queue buffers in basesink when we are flushing.
3440         Unref buffer when flushing in basesink.
3441         Flush queue when going to READY
3442         Unref buffer when _push() returns an error.
3443         Don't free MiniObject instance when refcount is incremented
3444         in _finalize() so that we can recover objects.
3445
3446 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3447
3448         * docs/manual/advanced-schedulers.xml:
3449         * docs/manual/appendix-checklist.xml:
3450         * docs/pwg/advanced-clock.xml:
3451         * docs/pwg/advanced-interfaces.xml:
3452         * docs/pwg/advanced-request.xml:
3453         * docs/pwg/advanced-types.xml:
3454         * docs/pwg/intro-preface.xml:
3455         * examples/plugins/example.c: (gst_example_get_type),
3456         (gst_example_class_init), (gst_example_chain),
3457         (gst_example_set_property), (gst_example_get_property),
3458         (gst_example_change_state), (plugin_init):
3459         * examples/plugins/example.h:
3460           small doc fixes
3461
3462 2005-05-17  Wim Taymans  <wim@fluendo.com>
3463
3464         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3465         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3466         * gst/gstqueue.c: (gst_queue_change_state):
3467         Clear queue when going to READY.
3468         Remove IN_SETCAPS flag too.
3469
3470 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3471
3472         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3473           Remove implicit cast from gboolean to GstElementStateReturn;
3474           make sure we still return failure in paused => ready case if
3475           the parent class fails to change state and our own stop 
3476           vfunc succeeds.
3477
3478 2005-05-17  Wim Taymans  <wim@fluendo.com>
3479
3480         * tools/gst-launch.c: (event_loop):
3481         Message was unreffed too soon.
3482
3483 2005-05-16  Andy Wingo  <wingo@pobox.com>
3484
3485         * gst/gstbin.c (sink_iterator_filter): Err... um...
3486
3487         * check/gst/gstbin.c (test_ghost_pads): New test for the
3488         ghosting-if-elements-not-in-same-bin behavior.
3489
3490 2005-05-16  David Schleef  <ds@schleef.org>
3491
3492         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3493         accessing refcount directly.
3494
3495 2005-05-15  David Schleef  <ds@schleef.org>
3496
3497         * check/Makefile.am: remove GstData checks
3498         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3499         * gst/Makefile.am: add miniobject, remove data
3500         * gst/gst.h: add miniobject, remove data
3501         * gst/gstdata.c: remove
3502         * gst/gstdata.h: remove
3503         * gst/gstdata_private.h: remove
3504         * gst/gsttypes.h: remove GstEvent and GstMessage
3505         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3506         * gst/gstmarshal.list: change BOXED -> OBJECT
3507
3508         Implement GstMiniObject.
3509         * gst/gstminiobject.c:
3510         * gst/gstminiobject.h:
3511
3512         Modify to be subclasses of GstMiniObject.
3513         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3514         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3515         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3516         (gst_subbuffer_get_type), (gst_subbuffer_init),
3517         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3518         (gst_buffer_span):
3519         * gst/gstbuffer.h:
3520         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3521         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3522         (_gst_event_copy), (gst_event_new):
3523         * gst/gstevent.h:
3524         * gst/gstmessage.c: (_gst_message_initialize),
3525         (gst_message_get_type), (gst_message_class_init),
3526         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3527         (gst_message_new), (gst_message_new_error),
3528         (gst_message_new_warning), (gst_message_new_tag),
3529         (gst_message_new_state_changed), (gst_message_new_application):
3530         * gst/gstmessage.h:
3531         * gst/gstprobe.c: (gst_probe_perform),
3532         (gst_probe_dispatcher_dispatch):
3533         * gst/gstprobe.h:
3534         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3535         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3536         (_gst_query_copy), (gst_query_new):
3537
3538         Update elements for GstData -> GstMiniObject changes
3539         * gst/gstquery.h:
3540         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3541         (gst_queue_chain), (gst_queue_loop):
3542         * gst/elements/gstbufferstore.c:
3543         (gst_buffer_store_add_buffer_func),
3544         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3545         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3546         (gst_fakesink_render):
3547         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3548         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3549         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3550         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3551         (gst_filesrc_create_read):
3552         * gst/elements/gstidentity.c: (gst_identity_class_init):
3553         * gst/elements/gsttypefindelement.c:
3554         (gst_type_find_element_src_event), (free_entry_buffers),
3555         (gst_type_find_element_handle_event):
3556         * libs/gst/dataprotocol/dataprotocol.c:
3557         (gst_dp_header_from_buffer):
3558         * libs/gst/dataprotocol/dataprotocol.h:
3559         * libs/gst/dataprotocol/dp-private.h:
3560
3561 2005-05-15  David Schleef  <ds@schleef.org>
3562
3563         * gst/elements/gstelements.c: Don't include headers that were
3564         just removed.
3565
3566 2005-05-15  David Schleef  <ds@schleef.org>
3567
3568         * gst/elements/Makefile.am: Remove some elements that don't
3569         need to be in the core (or even exist at all).
3570         * gst/elements/gstaggregator.c:
3571         * gst/elements/gstaggregator.h:
3572         * gst/elements/gstmd5sink.c:
3573         * gst/elements/gstmd5sink.h:
3574         * gst/elements/gstmultifilesrc.c:
3575         * gst/elements/gstmultifilesrc.h:
3576         * gst/elements/gstpipefilter.c:
3577         * gst/elements/gstpipefilter.h:
3578         * gst/elements/gstshaper.c:
3579         * gst/elements/gstshaper.h:
3580         * gst/elements/gststatistics.c:
3581         * gst/elements/gststatistics.h:
3582         * po/POTFILES.in: Remove above files.
3583
3584 2005-05-14  Andy Wingo  <wingo@pobox.com>
3585
3586         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3587         so as to get the refs right.
3588         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3589         unreffing objects that don't pass the filter.
3590
3591         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3592         gst_element_set_bus.
3593         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3594         normal cases, this will destroy the bus.
3595
3596         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3597         object.
3598
3599         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3600         has no sinks.
3601
3602 2005-05-13  Andy Wingo  <wingo@pobox.com>
3603
3604         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3605         gst_pad_link, call pad_link_maybe_ghosting,
3606         (pad_link_maybe_ghosting): Links pads, making sure that the
3607         elements being linked are in the same bin.
3608         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3609         Helpers for pad_link_maybe_ghosting.
3610
3611 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3612
3613         * configure.ac:
3614           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3615
3616 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3617
3618         * docs/design/part-element-source.txt:
3619           Mention GstPushSrc
3620
3621 2005-05-12  Wim Taymans  <wim@fluendo.com>
3622
3623         * gst/base/gstbasesink.c: (gst_basesink_init),
3624         (gst_basesink_activate):
3625         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3626         (gst_basesrc_is_seekable):
3627         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3628         (bin_element_is_sink), (gst_bin_change_state):
3629         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3630         * gst/gstelement.h:
3631         Identify sinks by their flag to avoid overly complicated
3632         checks (fow now).
3633         Do state changes even for elements not reachable from the
3634         sinks.
3635         BaseSink is a sink now :)
3636         Some more debugging info in the basesrc.
3637
3638
3639 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3640
3641         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3642           Implement _query on a bin, similar to _send_event.
3643
3644 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3645
3646         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3647           Discont event offset format should be GST_FORMAT_BYTES,
3648           not GST_FORMAT_TIME.
3649
3650 2005-05-12  Wim Taymans  <wim@fluendo.com>
3651
3652         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3653         Same fix as Ronald's but without the signal. 
3654
3655 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3656
3657         * gst/gstutils.c: (gst_element_query_position):
3658           No, an element is not a pad.
3659
3660 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3661
3662         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3663         (gst_bin_get_state):
3664           If a child is removed from a bin while we remove the child from
3665           the bin and while we're retrieving its state, signal this to the
3666           get_state function so we abort the wait (instead of waiting for
3667           a timeout) and can immediately re-iterate over all other elements.
3668
3669 2005-05-12  Wim Taymans  <wim@fluendo.com>
3670
3671         * gst/base/Makefile.am:
3672         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3673         (gst_basesrc_start):
3674         * gst/base/gstbasesrc.h:
3675         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3676         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3677         (gst_pushsrc_init), (gst_pushsrc_create):
3678         * gst/base/gstpushsrc.h:
3679         Added is_seekable to BaseSrc
3680         Added simple PushSrc.
3681
3682 2005-05-11  Wim Taymans  <wim@fluendo.com>
3683
3684         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3685         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3686         (gst_element_link_pads), (gst_element_query_position),
3687         (gst_element_query_convert), (intersect_caps_func),
3688         (gst_pad_query_position), (gst_pad_query_convert):
3689         Fix refcounting in utils function.
3690         No point in trying to activate a pad when it's added, it could
3691         be added from the state change function and then we deadlock, the
3692         element has to decide what to do.
3693
3694 2005-05-10  Andy Wingo  <wingo@pobox.com>
3695
3696         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3697         *all* the arguments.
3698
3699         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3700         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3701         lock (according to the docs -- if this is wrong change the docs).
3702
3703         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3704         flush messages in the NULL state.
3705
3706         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3707         message immediately and return.
3708         (gst_bus_set_flushing): New function. If a bus is flushing, it
3709         flushes out any queued messages and immediately unrefs new
3710         messages. This is so when an element goes to NULL, all of the
3711         unhandled messages coming from it can be freed, and their
3712         references to the element dropped. In other words: message source
3713         ref considered harmful :P
3714
3715         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3716         we're finished with it.
3717
3718         * gst/gstmessage.c (gst_message_new_state_changed): 
3719
3720 2005-05-10  Wim Taymans  <wim@fluendo.com>
3721
3722         * gst/gstvalue.c: (gst_value_compare_flags),
3723         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3724         (_gst_value_initialize):
3725         Added flags serialize/deserialize/compare code.
3726
3727 2005-05-09  Andy Wingo  <wingo@pobox.com>
3728
3729         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3730         Intersect the peer's caps with our caps.
3731
3732 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3733
3734         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3735         * gst/elements/gsttypefindelement.c: (find_peek):
3736           Handle negative offsets better. Fixes decodebin.
3737
3738 2005-05-09  Wim Taymans  <wim@fluendo.com>
3739
3740         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3741         (gst_base_transform_event):
3742         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3743         Implement accept_caps.
3744         Fix silly lock/unlock mismatch in base class.
3745
3746 2005-05-09  Wim Taymans  <wim@fluendo.com>
3747
3748         * docs/design/draft-push-pull.txt:
3749         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3750         * gst/elements/gstfilesink.c: (gst_filesink_init),
3751         (gst_filesink_query):
3752         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3753         (gst_type_find_handle_src_query), (find_element_get_length):
3754         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3755         * gst/gstelement.h:
3756         * gst/gstmessage.c:
3757         * gst/gstmessage.h:
3758         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3759         (gst_real_pad_get_caps_unlocked),
3760         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3761         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3762         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3763         (gst_real_pad_dispose), (gst_real_pad_finalize),
3764         (gst_pad_load_and_link), (gst_pad_save_thyself),
3765         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3766         (gst_pad_check_pull_range), (gst_pad_pull_range),
3767         (gst_pad_template_get_type), (gst_pad_template_class_init),
3768         (gst_pad_template_init), (gst_pad_template_dispose),
3769         (name_is_valid), (gst_static_pad_template_get),
3770         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3771         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3772         (gst_pad_get_element_private), (gst_pad_start_task),
3773         (gst_pad_pause_task), (gst_pad_stop_task),
3774         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3775         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3776         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3777         (gst_ghost_pad_new):
3778         * gst/gstpad.h:
3779         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3780         (gst_query_new_position), (gst_query_set_position),
3781         (gst_query_parse_position), (gst_query_new_convert),
3782         (gst_query_set_convert), (gst_query_parse_convert):
3783         * gst/gstquery.h:
3784         * gst/gstqueryutils.c:
3785         * gst/gstqueryutils.h:
3786         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3787         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3788         (gst_queue_handle_src_query):
3789         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3790         (gst_element_query_position), (gst_element_query_convert),
3791         (intersect_caps_func), (gst_pad_query_position),
3792         (gst_pad_query_convert):
3793         * gst/gstutils.h:
3794         * tools/gst-inspect.c: (print_pad_info):
3795         * tools/gst-xmlinspect.c: (print_element_info):
3796         Remove old query functions. Ported old code.
3797         Added position/convert helper functions to gstutils.
3798         Reordered gstpad.c code, grouping relevant things.
3799         Remove gst_message_new(), always need to speficy a specific
3800         message.
3801
3802
3803 2005-05-09  Andy Wingo  <wingo@pobox.com>
3804
3805         * gst/gstiterator.h: Add some includes.
3806
3807         * gst/gstqueryutils.h: Include more headers.
3808
3809         * gst/gstpad.h:
3810         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3811         some uses of gst_pad_query.
3812
3813         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3814         NULL out parameters.
3815         (gst_query_new_position): New proc, allocates a new position
3816         query.
3817
3818         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3819         gstqueryutils.c to the build.
3820
3821         * gst/gststructure.c (gst_structure_set_valist): Implement with
3822         the generic G_VALUE_COLLECT.
3823         
3824 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3825
3826         * gst/Makefile.am: (gst_headers):
3827         Added gstqueryutils.h to the list of headers to install, that was
3828         a 'nachty' move wingo :)
3829
3830 2005-05-06  Andy Wingo  <wingo@pobox.com>
3831
3832         * gst/gstquery.h
3833         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3834         GstData, init a memchunk.
3835         (standard_definitions): Add a few query types, deprecate a few.
3836         (gst_query_get_type): New proc.
3837         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3838         implementation.
3839         (gst_query_new_application, gst_query_get_structure): New public
3840         procs.
3841
3842         * docs/design/draft-query.txt: Removed LINKS from the query types,
3843         because all the rest can be dispatched to other pads -- seemed
3844         ugly to have a query that couldn't be dispatched. internal_links
3845         is fine as a pad method.
3846
3847         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3848         in gstpad.c, but maintain binary compatibility for the moment.
3849         Will fix before 0.9 is out.
3850
3851         * gst/gstqueryutils.c: 
3852         * gst/gstqueryutils.h: New files, implement 3 methods for each
3853         query type: parse_query, parse_response, and set. Probably need an
3854         allocator as well.
3855
3856         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3857
3858         * gst/elements/gstfilesink.c (gst_filesink_query2):
3859         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3860         query_types, and formats methods.
3861
3862         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3863         (gst_pad_set_query2_function): New functions.
3864         (gst_real_pad_init): Set query2_default as the default query2
3865         function. Basically just dispatches to internally linked pads.
3866
3867         Needs review!
3868         
3869         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3870         without using the atomic operations. Only one thread can possibly
3871         be accessing the data at this point. Changed so as to avoid
3872         gst_atomic operations.
3873
3874 2005-05-06  Wim Taymans  <wim@fluendo.com>
3875
3876         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3877         Also set caps if we use the fallback buffer alloc.
3878
3879 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3880
3881         * docs/gst/Makefile.am:
3882         * docs/gst/gstreamer-docs.sgml:
3883         * docs/gst/gstreamer-sections.txt:
3884         * docs/gst/tmpl/gstatomic.sgml:
3885         * docs/gst/tmpl/gstmemchunk.sgml:
3886         * testsuite/elements/struct_i386.h:
3887         * win32/GStreamer.vcproj:
3888         * win32/Makefile:
3889           Purge GstAtomic stuff from docs and win32 makefiles as well
3890
3891 2005-05-06  Wim Taymans  <wim@fluendo.com>
3892
3893         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3894         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3895         * gst/gstpad.c: (gst_pad_peer_get_caps):
3896         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3897         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3898         (gst_queue_src_activate), (gst_queue_change_state):
3899         * gst/gstqueue.h:
3900         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3901         (intersect_caps_func):
3902         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3903         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3904         Some fixes for the peer_get_caps() change.
3905
3906 2005-05-06  Wim Taymans  <wim@fluendo.com>
3907
3908         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3909         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3910         (gst_basesink_activate):
3911         Actually do something with error codes returned from the push
3912         functions.
3913
3914 2005-05-06  Wim Taymans  <wim@fluendo.com>
3915
3916         * docs/design/part-element-sink.txt:
3917         * docs/design/part-element-source.txt:
3918         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3919         (gst_basesink_event), (gst_basesink_activate):
3920         * gst/base/gstbasesink.h:
3921         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3922         (gst_basesrc_activate):
3923         * gst/base/gstbasesrc.h:
3924         * gst/gstelement.c: (gst_element_pads_activate):
3925         Some more documentation.
3926         Fixed scheduling decision in _pads_activate().
3927
3928 2005-05-05  Andy Wingo  <wingo@pobox.com>
3929
3930         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3931         the test suite.
3932
3933 2005-05-05  Wim Taymans  <wim@fluendo.com>
3934
3935         * gst/base/Makefile.am:
3936         * gst/base/gstbasesink.h:
3937         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3938         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3939         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3940         (gst_collectpads_class_init), (gst_collectpads_init),
3941         (gst_collectpads_finalize), (gst_collectpads_new),
3942         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3943         (find_pad), (gst_collectpads_remove_pad),
3944         (gst_collectpads_is_active), (gst_collectpads_collect),
3945         (gst_collectpads_collect_range), (gst_collectpads_start),
3946         (gst_collectpads_stop), (gst_collectpads_peek),
3947         (gst_collectpads_pop), (gst_collectpads_available),
3948         (gst_collectpads_read), (gst_collectpads_flush),
3949         (gst_collectpads_chain):
3950         * gst/base/gstcollectpads.h:
3951         * gst/elements/Makefile.am:
3952         * gst/elements/gstelements.c:
3953         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3954         (gst_fakesink_get_times), (gst_fakesink_event),
3955         (gst_fakesink_preroll), (gst_fakesink_render):
3956         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3957         (gst_filesink_init), (gst_filesink_set_location),
3958         (gst_filesink_open_file), (gst_filesink_close_file),
3959         (gst_filesink_pad_query), (gst_filesink_event),
3960         (gst_filesink_render), (gst_filesink_change_state):
3961         * gst/elements/gstfilesink.h:
3962         Added object to help in making collect pad based elements.
3963         Ported filesink.
3964         Make event function in sink baseclass return gboolean.
3965
3966 2005-05-05  Wim Taymans  <wim@fluendo.com>
3967
3968         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3969         (gst_bin_get_by_name):
3970         * gst/gstbuffer.h:
3971         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3972         (gst_clock_finalize):
3973         * gst/gstdata.c: (gst_data_replace):
3974         * gst/gstdata.h:
3975         * gst/gstelement.c: (gst_element_request_pad),
3976         (gst_element_pads_activate):
3977         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3978         (gst_object_unref):
3979         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3980         (gst_pad_set_checkgetrange_function),
3981         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3982         (gst_pad_check_pull_range), (gst_pad_pull_range),
3983         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3984         (gst_pad_pause_task), (gst_pad_stop_task):
3985         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3986         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3987         Fix name lookup in GstBin.
3988         Added _data_replace() function and _buffer_replace()
3989         Use finalize method to clean up clock.
3990         Fix refcounting on request pads.
3991         Fix pad schedule mode error.
3992         Some more object refcounting debug info,
3993
3994
3995 2005-05-04  Andy Wingo <wingo@pobox.com>
3996
3997         * check/Makefile.am:
3998         * docs/gst/tmpl/gstatomic.sgml:
3999         * docs/gst/tmpl/gstplugin.sgml:
4000         * gst/base/gstbasesink.c: (gst_basesink_activate):
4001         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
4002         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
4003         (gst_basesrc_query), (gst_basesrc_set_property),
4004         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
4005         (gst_basesrc_activate):
4006         * gst/base/gstbasesrc.h:
4007         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
4008         (gst_base_transform_src_activate):
4009         * gst/elements/gstelements.c:
4010         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4011         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
4012         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4013         * gst/elements/gsttypefindelement.c: (find_element_get_length),
4014         (gst_type_find_element_checkgetrange),
4015         (gst_type_find_element_activate):
4016         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
4017         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
4018         (gst_caps_load_thyself):
4019         * gst/gstelement.c: (gst_element_pads_activate),
4020         (gst_element_save_thyself), (gst_element_restore_thyself):
4021         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
4022         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
4023         * gst/gstpad.h:
4024         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
4025         (gst_xml_parse_file), (gst_xml_parse_memory),
4026         (gst_xml_get_element), (gst_xml_make_element):
4027         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4028         (_file_index_id_save_xml), (gst_file_index_commit):
4029         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
4030         (read_enum), (load_pad_template), (load_feature), (load_plugin),
4031         (load_paths):
4032         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
4033         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
4034         * tools/gst-complete.c: (main):
4035         * tools/gst-compprep.c: (main):
4036         * tools/gst-inspect.c: (print_element_properties_info):
4037         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
4038         * tools/gst-xmlinspect.c: (print_element_properties):
4039         GCC 4 fixen.
4040         
4041 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4042
4043         * gst/gstplugin.c: (gst_plugin_check_module),
4044         (gst_plugin_check_file), (gst_plugin_load_file):
4045             apply patch from #172526 to make register work on MacOSX
4046
4047 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4048
4049         * docs/gst/tmpl/gstconfig.sgml:
4050         * gst/gstconfig.h.in:
4051           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
4052         * testsuite/debug/printf_extension.c: (main):
4053           Do not use GST_PTR_FORMAT on pointers to types with
4054           sizeof < sizeof(gpointer).  Fixes test on 64-bit
4055         * testsuite/elements/property.h:
4056           use correct printf format
4057
4058 2005-05-02  Wim Taymans  <wim@fluendo.com>
4059
4060         * docs/design/draft-push-pull.txt:
4061         * docs/design/draft-query.txt:
4062         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
4063         (gst_basesrc_start):
4064         Added draft for new query API.
4065         Added draft for better selecting scheduling methods.
4066         Make basesrc ignore length if the subclass does not support
4067         it.
4068
4069 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4070
4071         * gst/Makefile.am:
4072           possible fixes for automake-1.5 - _LIBADD is reserved
4073
4074 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4075
4076         * docs/faq/Makefile.am:
4077         * docs/manual/Makefile.am:
4078         * docs/manuals.mak:
4079         * docs/pwg/Makefile.am:
4080         * gst/Makefile.am:
4081           possible fixes for automake-1.5
4082
4083 2005-04-28  Wim Taymans  <wim@fluendo.com>
4084
4085         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4086         (gst_basesink_pad_getcaps), (gst_basesink_init),
4087         (gst_basesink_do_sync):
4088         * gst/gstclock.c: (gst_clock_entry_new):
4089         * gst/gstevent.c: (gst_event_discont_get_value):
4090         * gst/gstpipeline.c: (pipeline_bus_handler),
4091         (gst_pipeline_change_state):
4092         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4093         Better debugging of clocking info.
4094         Allow NULL values when getting discont values.
4095
4096 2005-04-27  Wim Taymans  <wim@fluendo.com>
4097
4098         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4099         * check/gst/gstpad.c: (gst_pad_suite):
4100         Increase timeout for checks.
4101
4102 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4103
4104         * check/Makefile.am:
4105           fix the broken rule for cleanup.  Apparently this rule is
4106           only needed on FC2, so maybe this warrants further autotool
4107           inspection.
4108
4109 2005-04-26  Wim Taymans  <wim@fluendo.com>
4110
4111         * gst/gsttrashstack.h:
4112         Ooohh. a nasty one! After having a failed pop() from the stack,
4113         it's possible that the stack is empty. In that case, don't
4114         follow the NULL pointer.
4115
4116 2005-04-25  Wim Taymans  <wim@fluendo.com>
4117
4118         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4119         (gst_pad_set_checkgetrange_function),
4120         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4121         (gst_pad_check_pull_range), (gst_pad_pull_range),
4122         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4123         (gst_pad_pause_task), (gst_pad_stop_task):
4124         * gst/gstplugin.c: (gst_plugin_load):
4125         * gst/gstplugin.h:
4126         Remove gst_library_load as it does more harm than good with
4127         the new g_module flags.
4128         Revert bogus caps template check in pad linking, pad caps
4129         are important when linking not the template, which is more
4130         general than the current caps.
4131
4132 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4133
4134         * gst/autoplug/.cvsignore:
4135         * gst/autoplug/Makefile.am:
4136         * gst/autoplug/gstsearchfuncs.c:
4137         * gst/autoplug/gstsearchfuncs.h:
4138         * gst/autoplug/gstspider.c:
4139         * gst/autoplug/gstspider.h:
4140         * gst/autoplug/gstspideridentity.c:
4141         * gst/autoplug/gstspideridentity.h:
4142         * gst/autoplug/spidertest.c:
4143           Die, spider, die.
4144
4145 2005-04-25  Wim Taymans  <wim@fluendo.com>
4146
4147         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4148         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4149         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4150         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4151         * gst/gstpad.h:
4152         Added stubs for unimplemented functions. 
4153
4154 2005-04-24  David Schleef  <ds@schleef.org>
4155
4156         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4157         please fix.
4158
4159 2005-04-24  David Schleef  <ds@schleef.org>
4160
4161         Convert everything from GstAtomicInt to g_atomic_int_*, and
4162         remove gstatomic.
4163         * gst/Makefile.am:
4164         * gst/gstatomic.c:
4165         * gst/gstatomic.h:
4166         * gst/gstatomic_impl.h:
4167         * gst/gstbuffer.c:
4168         * gst/gstcaps.c:
4169         * gst/gstcaps.h:
4170         * gst/gstclock.c:
4171         * gst/gstclock.h:
4172         * gst/gstdata.c:
4173         * gst/gstdata.h:
4174         * gst/gstdata_private.h:
4175         * gst/gstevent.c:
4176         * gst/gstinfo.c:
4177         * gst/gstinfo.h:
4178         * gst/gstmessage.c:
4179         * gst/gstobject.c:
4180         * gst/gstobject.h:
4181         * gst/gststructure.c:
4182         * gst/gststructure.h:
4183         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4184         * gst/gstutils.h:
4185
4186 2005-04-24  David Schleef  <ds@schleef.org>
4187
4188         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4189         make the regressions tests work.  Remove some code that is no
4190         longer true.
4191         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4192         Disable warning for pads without templates.
4193
4194 2005-04-24  David Schleef  <ds@schleef.org>
4195
4196         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4197         functions that handle filtered links.
4198         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4199         removed functions.
4200         * gst/gstutils.c: Fix/remove utility functions that handle
4201         filtered caps.
4202         * gst/gstutils.h:
4203         * gst/gstvalue.c: Add serialization/deserialization of caps
4204         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4205         requires fixing so that the filter caps notation creates
4206         a capsfilter element and sets the filter_caps property.  I
4207         think everyone probably wants to keep the shorthand notation.
4208         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4209         * docs/gst/tmpl/gstpad.sgml:
4210
4211         * gst/elements/gstelements.c: Register capsfilter element.
4212         * gst/Makefile.am: fix spacing
4213         * docs/random/ds/0.9-suggested-changes: random
4214
4215 2005-04-23  David Schleef  <ds@schleef.org>
4216
4217         * gst/elements/Makefile.am:
4218         * gst/elements/gstcapsfilter.c: New element that acts like an
4219         identity, but filters caps.  Will eventually replace filtered
4220         caps in pad linking.
4221         * gst/gstutils.c: (gst_element_create_all_pads): New function
4222         to create all the ALWAYS pads that are registered with an
4223         element class.  This functionality should eventually be
4224         merged in with GstElement initialization.
4225         * gst/gstutils.h:
4226         * testsuite/trigger/README: part of trigger test code that should
4227         have been checked in a long time ago.
4228
4229 2005-04-23  David Schleef  <ds@schleef.org>
4230
4231         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4232         needed with new versions of libtool (nobody will confirm this),
4233         and hard to carry around.
4234         * gst/autoplug/Makefile.am:
4235         * gst/base/Makefile.am:
4236         * gst/elements/Makefile.am:
4237         * gst/indexers/Makefile.am:
4238         * gst/schedulers/Makefile.am:
4239         * libs/gst/bytestream/Makefile.am:
4240         * libs/gst/control/Makefile.am:
4241         * libs/gst/dataprotocol/Makefile.am:
4242         * libs/gst/getbits/Makefile.am:
4243
4244 2005-04-21  Wim Taymans  <wim@fluendo.com>
4245
4246         * docs/design/draft-push-pull.txt:
4247         * docs/design/part-MT-refcounting.txt:
4248         * docs/design/part-TODO.txt:
4249         * docs/design/part-caps.txt:
4250         * docs/design/part-events.txt:
4251         * docs/design/part-gstbus.txt:
4252         * docs/design/part-gstpipeline.txt:
4253         * docs/design/part-messages.txt:
4254         * docs/design/part-push-pull.txt:
4255         * docs/design/part-query.txt:
4256         Some more docs.
4257
4258 2005-04-21  Wim Taymans  <wim@fluendo.com>
4259
4260         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4261         (gst_message_new), (gst_message_new_error),
4262         (gst_message_new_warning), (gst_message_new_tag),
4263         (gst_message_new_state_changed), (gst_message_new_application),
4264         (gst_message_get_structure):
4265         * gst/gstmessage.h:
4266         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4267         (gst_structure_copy_conditional):
4268         Use parent refcount in GstMessage to ensure GstStructure
4269         consistency.
4270         Cleaned up headers a bit.
4271         
4272
4273 2005-04-20  Wim Taymans  <wim@fluendo.com>
4274
4275         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4276         (gst_basesink_pad_getcaps), (gst_basesink_init),
4277         (gst_basesink_chain_unlocked):
4278         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4279         (gst_type_find_helper):
4280         * gst/elements/gsttypefindelement.c:
4281         (gst_type_find_element_have_type), (gst_type_find_element_init),
4282         (stop_typefinding), (gst_type_find_element_handle_event),
4283         (find_suggest), (gst_type_find_element_chain),
4284         (gst_type_find_element_checkgetrange),
4285         (gst_type_find_element_getrange), (do_typefind),
4286         (gst_type_find_element_activate):
4287         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4288         (gst_buffer_default_free), (gst_buffer_default_copy),
4289         (gst_buffer_set_caps):
4290         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4291         (gst_caps_replace):
4292         * gst/gstmessage.c: (gst_message_new),
4293         (gst_message_new_state_changed):
4294         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4295         (gst_pad_set_checkgetrange_function),
4296         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4297         (gst_pad_set_caps), (gst_pad_check_pull_range),
4298         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4299         * gst/gstpad.h:
4300         * gst/gsttypefind.c: (gst_type_find_register):
4301         Make gst_caps_replace() work like other _replace() functions.
4302         Use _caps_replace() where possible.
4303         Make sure _message_new() initialises its field.
4304         Add gst_static_pad_template_get_caps()
4305
4306
4307 2005-04-18  Andy Wingo  <wingo@pobox.com>
4308
4309         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4310         on the peer, not the pad. I think that was a typo. Pass an extra
4311         arg to see if random access is possible. Activate the pads as
4312         PULL_RANGE if possible.
4313
4314         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4315
4316         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4317         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4318         to PROP_....
4319
4320 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4321
4322         * docs/faq/using.xml:
4323           Add note on gstreamer-properties (#154996).
4324
4325 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4326
4327         * docs/random/bbb/optional-properties:
4328           Some analysis on optional properties.
4329
4330 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4331
4332         * docs/gst/tmpl/gstelementfactory.sgml:
4333         * gst/gstelement.h:
4334         * gst/gstelementfactory.c: (gst_element_factory_init),
4335         (gst_element_factory_cleanup), (gst_element_register),
4336         (__gst_element_factory_add_static_pad_template),
4337         (gst_element_factory_get_static_pad_templates),
4338         (gst_element_factory_can_src_caps),
4339         (gst_element_factory_can_sink_caps):
4340         * gst/registries/Makefile.am:
4341         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4342         (gst_xml_registry_class_init), (gst_xml_registry_init),
4343         (gst_xml_registry_new), (gst_xml_registry_set_property),
4344         (gst_xml_registry_get_property), (get_time), (make_dir),
4345         (gst_xml_registry_get_perms_func),
4346         (plugin_times_older_than_recurse), (plugin_times_older_than),
4347         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4348         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4349         (add_to_char_array), (read_string), (read_uint), (read_enum),
4350         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4351         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4352         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4353         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4354         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4355         (gst_xml_registry_rebuild):
4356         * gst/registries/gstlibxmlregistry.h:
4357         * tools/gst-compprep.c: (main):
4358         * tools/gst-inspect.c: (print_pad_templates_info):
4359         * tools/gst-xmlinspect.c: (print_element_info):
4360           Use libxml2 for registry parsing, use staticpadtemplates in
4361           elementfactories. Makes gst_init() +/- 10x faster.
4362
4363 2005-04-12  Wim Taymans  <wim@fluendo.com>
4364
4365         * gst/base/Makefile.am:
4366         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4367         (gst_basesink_pad_getcaps), (gst_basesink_init),
4368         (gst_basesink_event), (gst_basesink_change_state):
4369         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4370         (gst_basesrc_init), (gst_basesrc_query),
4371         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4372         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4373         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4374         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4375         (gst_basesrc_stop), (gst_basesrc_activate),
4376         (gst_basesrc_change_state):
4377         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4378         (helper_find_suggest), (gst_type_find_helper):
4379         * gst/base/gsttypefindhelper.h:
4380         * gst/elements/Makefile.am:
4381         * gst/elements/gstelements.c:
4382         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4383         (gst_fakesink_get_times), (gst_fakesink_event),
4384         (gst_fakesink_preroll), (gst_fakesink_render):
4385         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4386         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4387         (gst_fakesrc_get_property), (gst_fakesrc_create),
4388         (gst_fakesrc_start), (gst_fakesrc_stop):
4389         * gst/elements/gstfakesrc.h:
4390         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4391         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4392         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4393         (gst_filesrc_create_read), (gst_filesrc_create),
4394         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4395         (gst_filesrc_start):
4396         * gst/elements/gsttypefindelement.c:
4397         (gst_type_find_element_have_type), (gst_type_find_element_init),
4398         (start_typefinding), (stop_typefinding), (push_buffer_store),
4399         (gst_type_find_element_handle_event),
4400         (gst_type_find_element_chain),
4401         (gst_type_find_element_checkgetrange),
4402         (gst_type_find_element_getrange), (do_typefind),
4403         (gst_type_find_element_activate),
4404         (gst_type_find_element_change_state):
4405         * gst/elements/gsttypefindelement.h:
4406         * gst/gstpipeline.c: (pipeline_bus_handler):
4407         Added typefind helper.
4408         Small preroll fix in the base sink.
4409         Disable typefind code in basesrc.
4410         Crude port of typefindelement.
4411         Fakesrc cleanups.
4412
4413
4414 2005-04-11  Wim Taymans  <wim@fluendo.com>
4415
4416         * check/gst/gstbus.c: (gstbus_suite):
4417         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4418         * check/gstcheck.h:
4419           Fix up the timeout so that the test does not fail.
4420
4421 2005-04-06  Wim Taymans  <wim@fluendo.com>
4422
4423         * gst/base/README:
4424         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4425         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4426         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4427         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4428         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4429         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4430         (gst_basesrc_stop), (gst_basesrc_activate),
4431         (gst_basesrc_change_state), (basesrc_find_peek),
4432         (basesrc_find_suggest), (gst_basesrc_type_find):
4433         * gst/base/gstbasesrc.h:
4434         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4435         (gst_filesrc_class_init), (gst_filesrc_init),
4436         (gst_filesrc_finalize), (gst_filesrc_set_location),
4437         (gst_filesrc_set_property), (gst_filesrc_get_property),
4438         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4439         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4440         (gst_filesrc_create_read), (gst_filesrc_create),
4441         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4442         * gst/elements/gstfilesrc.h:
4443         * gst/gstelement.c: (gst_element_get_state_func),
4444         (gst_element_lost_state), (gst_element_pads_activate):
4445         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4446         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4447         (gst_pad_pull_range):
4448         * gst/gstpad.h:
4449         More work on the generic source base class, implement seeking,
4450         query.
4451         Make filesrc extend the base source class.
4452         Added gst_pad_set_checkgetrange_function to GstPad.
4453
4454 2005-04-06  Andy Wingo  <wingo@pobox.com>
4455
4456         * pkgconfig/gstreamer-base.pc.in:
4457         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4458
4459         * pkgconfig/Makefile.am:
4460         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4461
4462 2005-04-04  Wim Taymans  <wim@fluendo.com>
4463
4464         * gst/base/Makefile.am:
4465         * gst/base/README:
4466         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4467         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4468         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4469         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4470         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4471         (gst_basesrc_base_init), (gst_basesrc_class_init),
4472         (gst_basesrc_init), (gst_basesrc_get_formats),
4473         (gst_basesrc_get_query_types), (gst_basesrc_query),
4474         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4475         (gst_basesrc_set_property), (gst_basesrc_get_property),
4476         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4477         (gst_basesrc_loop), (gst_basesrc_activate),
4478         (gst_basesrc_change_state):
4479         * gst/base/gstbasesrc.h:
4480         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4481         (gst_fakesrc_class_init), (gst_fakesrc_init),
4482         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4483         (gst_fakesrc_get_property), (gst_fakesrc_create):
4484         * gst/elements/gstfakesrc.h:
4485         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4486         (gst_filesrc_open_file), (gst_filesrc_loop),
4487         (gst_filesrc_activate), (filesrc_find_peek),
4488         (gst_filesrc_type_find):
4489         Made base source class, make fakesrc extend it.
4490         Add comments to basesink class.
4491         Some filesrc cleanup.
4492
4493 2005-03-31  David Schleef  <ds@schleef.org>
4494
4495         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4496         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4497         expected to link against libgstreamer.
4498         * gst/base/Makefile.am: link against libgstreamer
4499         * gst/elements/Makefile.am: same
4500
4501 2005-03-31  Andy Wingo  <wingo@pobox.com>
4502
4503         * tests/instantiate/Makefile.am:
4504         * tests/instantiate/caps.c: Add test to test speed of caps copy
4505         and free.
4506
4507         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4508         GMemChunk to be fair.
4509
4510         * gst/gsttrashstack.h: Remove warning about using the fallback
4511         trash stack implementation, it's still faster than malloc.
4512
4513 2005-03-30  Andy Wingo  <wingo@pobox.com>
4514
4515         * tests/complexity.c: Add a copyright.
4516
4517 2005-03-31  Wim Taymans  <wim@fluendo.com>
4518
4519         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4520         (gst_base_transform_class_init), (gst_base_transform_init),
4521         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4522         (gst_base_transform_get_property),
4523         (gst_base_transform_sink_activate),
4524         (gst_base_transform_src_activate),
4525         (gst_base_transform_change_state):
4526         * gst/base/gstbasetransform.h:
4527         * gst/elements/gstidentity.c: (gst_identity_class_init),
4528         (gst_identity_event), (gst_identity_check_perfect),
4529         (gst_identity_transform), (gst_identity_start),
4530         (gst_identity_stop):
4531         Added start/stop methods to transform base class so subclasses 
4532         don't need to deal with state changes even.
4533
4534 2005-03-31  Wim Taymans  <wim@fluendo.com>
4535
4536         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4537         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4538         * gst/gstevent.h:
4539         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4540         (gst_pad_pull_range):
4541         Added rate to the discont event to prepare for variable speed
4542         and reverse playback.
4543
4544 2005-03-29  David Schleef  <ds@schleef.org>
4545
4546         * configure.ac:
4547         * testsuite/trigger/Makefile.am:
4548         * testsuite/trigger/trigger.c: A little example program to show
4549         how trigger-based elements can work.
4550
4551 2005-03-29  Wim Taymans  <wim@fluendo.com>
4552
4553         * gst/base/Makefile.am:
4554         * gst/base/README:
4555         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4556         (gst_basesink_base_init), (gst_basesink_class_init),
4557         (gst_basesink_pad_getcaps), (gst_basesink_init),
4558         (gst_basesink_activate), (gst_basesink_change_state):
4559         * gst/base/gstbasesink.h:
4560         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4561         (gst_base_transform_base_init), (gst_base_transform_finalize),
4562         (gst_base_transform_class_init), (gst_base_transform_init),
4563         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4564         (gst_base_transform_event), (gst_base_transform_getrange),
4565         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4566         (gst_base_transform_set_property),
4567         (gst_base_transform_get_property),
4568         (gst_base_transform_sink_activate),
4569         (gst_base_transform_src_activate),
4570         (gst_base_transform_change_state):
4571         * gst/base/gstbasetransform.h:
4572         * gst/elements/gstidentity.c: (gst_identity_finalize),
4573         (gst_identity_class_init), (gst_identity_init),
4574         (gst_identity_event), (gst_identity_check_perfect),
4575         (gst_identity_transform), (gst_identity_set_property),
4576         (gst_identity_get_property), (gst_identity_change_state):
4577         * gst/elements/gstidentity.h:
4578         * gst/gstelement.c: (gst_element_get_state_func),
4579         (gst_element_lost_state), (gst_element_pads_activate):
4580         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4581         (gst_pad_check_pull_range), (gst_pad_pull_range):
4582         * gst/gstpad.h:
4583         Simplify pad activation.
4584         Added function to check if pull_range can be performed.
4585         Error out when pulling inactive or flushing pads.
4586         Removed const from refcounted types as it does not make sense.
4587         Simplify pad templates in basesink
4588         Added base class for simple 1-to-1 transforms.
4589         Make identity subclass the base transform.
4590
4591 2005-03-29  Andy Wingo  <wingo@pobox.com>
4592
4593         * docs/libs/gstreamer-libs-overrides.txt: 
4594         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4595         really don't understand what's going on, but like whatever. I want
4596         green buildbot!
4597
4598         * docs/gst/Makefile.am:
4599         * docs/libs/Makefile.am: Dist the overrides files.
4600
4601         * check/Makefile.am (clean-local): Remove .libs directories.
4602
4603         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4604         elements to EXTRA_DIST, so po/ files are happy.
4605
4606         * po/POTFILES.in: Er, remove it here.
4607
4608         * po/POTFILES: Remove gstspider.c.
4609
4610         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4611
4612         * docs/libs/gstreamer-libs-docs.sgml: 
4613         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4614         bytestream.
4615
4616         * tests/complexity.c (main): Set the length of the preroll queue
4617         on the sinks to prevent a lockup.
4618
4619         * libs/gst/dataprotocol/Makefile.am: 
4620         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4621         the same as the one in check/gst-libs/gdp.c.
4622
4623         * po/, docs/gst/: Commit automatic changes to docs and po files.
4624
4625         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4626         the versioned libgstbase.
4627
4628         * check/Makefile.am: Depend on an unversioned gst-register, seems
4629         to make autoconf happier.
4630
4631         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4632
4633 2005-03-28  Wim Taymans  <wim@fluendo.com>
4634
4635         * configure.ac:
4636         * docs/design/part-gstelement.txt:
4637         * docs/design/part-negotiation.txt:
4638         * docs/design/part-preroll.txt:
4639         * docs/design/part-scheduling.txt:
4640         * docs/design/part-states.txt:
4641         * gst/Makefile.am:
4642         * gst/base/Makefile.am:
4643         * gst/base/README:
4644         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4645         (gst_basesink_base_init), (gst_basesink_class_init),
4646         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4647         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4648         (gst_basesink_set_pad_functions),
4649         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4650         (gst_basesink_set_property), (gst_basesink_get_property),
4651         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4652         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4653         (gst_basesink_preroll_queue_push),
4654         (gst_basesink_preroll_queue_empty),
4655         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4656         (gst_basesink_event), (gst_basesink_get_times),
4657         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4658         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4659         (gst_basesink_loop), (gst_basesink_activate),
4660         (gst_basesink_change_state):
4661         * gst/base/gstbasesink.h:
4662         * gst/elements/Makefile.am:
4663         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4664         (gst_fakesink_class_init), (gst_fakesink_init),
4665         (gst_fakesink_set_property), (gst_fakesink_get_property),
4666         (gst_fakesink_get_times), (gst_fakesink_event),
4667         (gst_fakesink_preroll), (gst_fakesink_render),
4668         (gst_fakesink_change_state):
4669         * gst/elements/gstfakesink.h:
4670         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4671         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4672         * gst/gstelement.c: (gst_element_add_pad),
4673         (gst_element_get_state_func), (gst_element_abort_state),
4674         (gst_element_commit_state), (gst_element_lost_state),
4675         (gst_element_set_state), (gst_element_pads_activate):
4676         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4677         * gst/gstpipeline.c: (gst_pipeline_send_event),
4678         (gst_pipeline_change_state):
4679         Added state change code.
4680         Added/updated docs.
4681         Added sink base class, make fakesink extend the base class.
4682         Small cleanups in GstPipeline.
4683
4684 2005-03-26  David Schleef  <ds@schleef.org>
4685
4686         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4687         is broken and should be implemented in a different library.
4688         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4689         * gst/gst.h: remove gstcpu.h
4690         * gst/gstcpu.c: remove
4691         * gst/gstcpu.h: remove
4692         * gst/Makefile.am.future: Remove this file.  It's ancient.
4693
4694 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4695
4696         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4697         (gst_bin_send_event):
4698           Add default event/set_manager handlers. The set_manager handler
4699           takes care that the manager is distributed over kids that were
4700           already in the bin before the manager was set. The event handler
4701           is a utility virtual function that sends the event over all sinks,
4702           so that gst_element_send_event (bin, event); has the expected
4703           behaviour.
4704         * gst/gstpad.c: (gst_pad_event_default):
4705           Re-install default event handling for discontinuities, so that
4706           seeking works without requiring hacks in applications or extra
4707           code in sinks.
4708         * gst/gstpipeline.c: (gst_pipeline_class_init),
4709         (gst_pipeline_send_event):
4710           Half hack, half utility: set a pipeline to PAUSED for seek events,
4711           since that is the only way we can guarantee a/v sync. Means that
4712           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4713           and it "just works".
4714
4715 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4716
4717         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4718           Lock/unlock mismatch.
4719
4720 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4721
4722         * docs/faq/gst-uninstalled:
4723           add gst-plugins-base
4724         * docs/gst/Makefile.am:
4725           don't error out until docs are fixed
4726         * docs/gst/gstreamer.types:
4727           remove thread
4728
4729 2005-03-22  Wim Taymans  <wim@fluendo.com>
4730
4731         * check/Makefile.am:
4732         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4733         * gst/gststructure.c: (gst_structure_set_valist),
4734         (gst_structure_copy_conditional):
4735         Activated more tests.
4736         Added message test.
4737         Added G_TYPE_POINTER to GstStructure.
4738         
4739
4740 2005-03-22  Wim Taymans  <wim@fluendo.com>
4741
4742         * docs/design/part-TODO.txt:
4743         * docs/design/part-events.txt:
4744         * docs/design/part-gstbin.txt:
4745         * docs/design/part-gstbus.txt:
4746         * docs/design/part-gstpipeline.txt:
4747         * docs/design/part-messages.txt:
4748         * gst/gstbus.c:
4749         * gst/gstmessage.c:
4750         Docs updates
4751
4752 2005-03-21  Wim Taymans  <wim@fluendo.com>
4753
4754         * gst/gstbus.c: (gst_bus_post):
4755         Fix copy-and-paste error.
4756
4757 2005-03-21  Wim Taymans  <wim@fluendo.com>
4758
4759         * check/Makefile.am:
4760         * gst/Makefile.am:
4761         * gst/elements/Makefile.am:
4762         * gst/elements/gstelements.c:
4763         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4764         (gst_fakesink_event), (gst_fakesink_chain):
4765         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4766         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4767         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4768         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4769         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4770         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4771         (gst_fakesrc_loop), (gst_fakesrc_activate),
4772         (gst_fakesrc_change_state):
4773         * gst/elements/gstfakesrc.h:
4774         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4775         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4776         (gst_filesrc_open_file), (gst_filesrc_loop),
4777         (gst_filesrc_activate), (gst_filesrc_change_state),
4778         (filesrc_find_peek), (filesrc_find_suggest),
4779         (gst_filesrc_type_find):
4780         * gst/elements/gstidentity.c: (gst_identity_finalize),
4781         (gst_identity_class_init), (gst_identity_init),
4782         (gst_identity_proxy_getcaps), (identity_queue_push),
4783         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4784         (gst_identity_getrange), (gst_identity_chain),
4785         (gst_identity_sink_loop), (gst_identity_src_loop),
4786         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4787         (gst_identity_set_property), (gst_identity_get_property),
4788         (gst_identity_change_state):
4789         * gst/elements/gstidentity.h:
4790         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4791         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4792         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4793         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4794         (gst_tee_sink_activate):
4795         * gst/elements/gsttee.h:
4796         * gst/gst.c: (gst_register_core_elements), (init_post):
4797         * gst/gst.h:
4798         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4799         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4800         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4801         (gst_bin_change_state):
4802         * gst/gstbin.h:
4803         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4804         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4805         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4806         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4807         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4808         (bus_watch_callback), (bus_watch_destroy),
4809         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4810         (poll_timeout), (gst_bus_poll):
4811         * gst/gstbus.h:
4812         * gst/gstcaps.h:
4813         * gst/gstdata.h:
4814         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4815         (gst_element_post_message), (gst_element_message_full),
4816         (gst_element_get_state_func), (gst_element_get_state),
4817         (gst_element_abort_state), (gst_element_commit_state),
4818         (gst_element_lost_state), (gst_element_set_state),
4819         (gst_element_pads_activate), (gst_element_change_state),
4820         (gst_element_dispose), (gst_element_set_manager_func),
4821         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4822         (gst_element_set_manager), (gst_element_get_manager),
4823         (gst_element_set_bus), (gst_element_get_bus),
4824         (gst_element_set_scheduler), (gst_element_get_scheduler):
4825         * gst/gstelement.h:
4826         * gst/gstevent.c: (gst_event_new_segment_seek),
4827         (gst_event_new_flush):
4828         * gst/gstevent.h:
4829         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4830         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4831         (gst_message_new_eos), (gst_message_new_error),
4832         (gst_message_new_warning), (gst_message_new_tag),
4833         (gst_message_new_state_changed), (gst_message_new_application),
4834         (gst_message_get_structure), (gst_message_parse_tag),
4835         (gst_message_parse_state_changed), (gst_message_parse_error),
4836         (gst_message_parse_warning):
4837         * gst/gstmessage.h:
4838         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4839         (gst_real_pad_set_property), (gst_pad_set_active),
4840         (gst_pad_is_active), (gst_pad_set_blocked_async),
4841         (gst_pad_set_blocked), (gst_pad_is_blocked),
4842         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4843         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4844         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4845         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4846         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4847         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4848         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4849         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4850         (gst_pad_set_caps), (gst_pad_configure_sink),
4851         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4852         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4853         (gst_real_pad_dispose), (gst_real_pad_finalize),
4854         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4855         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4856         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4857         * gst/gstpad.h:
4858         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4859         (pipeline_bus_handler), (gst_pipeline_change_state),
4860         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4861         * gst/gstpipeline.h:
4862         * gst/gstprobe.h:
4863         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4864         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4865         (gst_queue_link_src), (gst_queue_bufferalloc),
4866         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4867         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4868         (gst_queue_loop), (gst_queue_handle_src_event),
4869         (gst_queue_handle_src_query), (gst_queue_src_activate),
4870         (gst_queue_change_state):
4871         * gst/gstqueue.h:
4872         * gst/gstscheduler.c: (gst_scheduler_init),
4873         (gst_scheduler_dispose), (gst_scheduler_create_task),
4874         (gst_scheduler_factory_create):
4875         * gst/gstscheduler.h:
4876         * gst/gststructure.c: (gst_structure_get_type),
4877         (gst_structure_copy_conditional):
4878         * gst/gststructure.h:
4879         * gst/gsttaginterface.h:
4880         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4881         (gst_task_init), (gst_task_dispose), (gst_task_create),
4882         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4883         (gst_task_pause):
4884         * gst/gsttask.h:
4885         * gst/gstthread.c:
4886         * gst/gstthread.h:
4887         * gst/gsttypes.h:
4888         * gst/schedulers/Makefile.am:
4889         * gst/schedulers/cothreads_compat.h:
4890         * gst/schedulers/entryscheduler.c:
4891         * gst/schedulers/faircothreads.c:
4892         * gst/schedulers/faircothreads.h:
4893         * gst/schedulers/fairscheduler.c:
4894         * gst/schedulers/gstbasicscheduler.c:
4895         * gst/schedulers/gstoptimalscheduler.c:
4896         * gst/schedulers/gthread-cothreads.h:
4897         * gst/schedulers/threadscheduler.c:
4898         (gst_thread_scheduler_task_get_type),
4899         (gst_thread_scheduler_task_class_init),
4900         (gst_thread_scheduler_task_init),
4901         (gst_thread_scheduler_task_start),
4902         (gst_thread_scheduler_task_stop),
4903         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4904         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4905         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4906         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4907         (plugin_init):
4908         * libs/gst/Makefile.am:
4909         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4910         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4911         (gst_file_pad_parent_set):
4912         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4913         (gst_dp_event_from_packet):
4914         * tests/complexity.c: (main):
4915         * tests/mass_elements.c: (main):
4916         * testsuite/states/locked.c: (message_received), (main):
4917         * testsuite/states/parent.c: (main):
4918         * tools/gst-inspect.c: (print_element_flag_info),
4919         (print_implementation_info), (print_pad_info):
4920         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4921         (main):
4922         * tools/gst-md5sum.c: (event_loop), (main):
4923         * tools/gst-typefind.c: (main):
4924         * tools/gst-xmlinspect.c: (print_element_info):
4925         Next big merge.
4926         Added GstBus for mainloop integration.
4927         Added GstMessage for sending notifications on the bus.
4928         Added GstTask as an abstraction for pipeline entry points.
4929         Removed GstThread.
4930         Removed Schedulers.
4931         Simplified GstQueue for multithreaded core.
4932         Made _link threadsafe, removed old capsnego.
4933         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4934         Added pad blocking functions.
4935         Reworked scheduling functions in GstPad to prepare for
4936         scheduling updates soon.
4937         Moved events out of data stream.
4938         Simplified GstEvent types.
4939         Added return values to push/pull.
4940         Removed clocking from GstElement.
4941         Added prototypes for state change function for next merge.
4942         Removed iterate from bins and state change management.
4943         Fixed some elements, disabled others for now.
4944         Fixed -inspect and -launch.
4945         Added check for GstBus.
4946
4947 2005-03-10  Wim Taymans  <wim@fluendo.com>
4948
4949         * docs/design/part-MT-refcounting.txt:
4950         * docs/design/part-clocks.txt:
4951         * docs/design/part-gstelement.txt:
4952         * docs/design/part-gstobject.txt:
4953         * docs/design/part-standards.txt:
4954         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4955         (gst_bin_remove_func), (gst_bin_remove):
4956         * gst/gstbin.h:
4957         * gst/gstbuffer.c:
4958         * gst/gstcaps.h:
4959         * testsuite/clock/clock1.c: (main):
4960         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4961         (main):
4962         * testsuite/dlopen/loadgst.c: (do_test):
4963         * testsuite/refcounting/bin.c: (add_remove_test1),
4964         (add_remove_test2), (main):
4965         * testsuite/refcounting/element.c: (main):
4966         * testsuite/refcounting/element_pad.c: (main):
4967         * testsuite/refcounting/pad.c: (main):
4968         * tools/gst-launch.c: (sigint_handler_sighandler):
4969         * tools/gst-typefind.c: (main):
4970         Doc updates.
4971         Added doc about clock.
4972         removed gst_bin_iterate_recurse_up(), marked methods
4973         for removal.
4974         Fix more testsuites.
4975
4976 2005-03-09  Wim Taymans  <wim@fluendo.com>
4977
4978         * gst/gstpad.c: (gst_pad_get_direction),
4979         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4980         (gst_pad_collect_valist):
4981         * testsuite/bins/interface.c: (main):
4982         * testsuite/caps/audioscale.c: (test_caps):
4983         * testsuite/caps/caps.c: (test1), (test2), (test3):
4984         * testsuite/caps/deserialize.c: (main):
4985         * testsuite/caps/enumcaps.c: (main):
4986         * testsuite/caps/filtercaps.c: (main):
4987         * testsuite/caps/intersect2.c: (main):
4988         * testsuite/caps/random.c: (main):
4989         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4990         * testsuite/caps/sets.c: (check_caps):
4991         * testsuite/caps/simplify.c: (check_caps), (main):
4992         * testsuite/caps/subtract.c: (check_caps):
4993         Fix _pad_get_direction wrt ghostpads.
4994         Fix caps testsuite.
4995
4996 2005-03-09  Wim Taymans  <wim@fluendo.com>
4997
4998         * check/Makefile.am:
4999         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
5000         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
5001         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
5002         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
5003         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
5004         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
5005         (gst_bin_remove), (gst_bin_iterate_recurse_up),
5006         (bin_element_is_sink), (gst_bin_iterate_sinks),
5007         (gst_bin_iterate_all_by_interface):
5008         * gst/gstbin.h:
5009         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
5010         (gst_element_change_state), (gst_element_dispose),
5011         (gst_element_finalize), (gst_element_set_loop_function):
5012         * gst/gstelement.h:
5013         * gst/gstiterator.c: (find_custom_fold_func):
5014         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5015         (gst_pad_collectv), (gst_pad_collect_valist),
5016         (gst_pad_template_new):
5017         * gst/gstpipeline.c: (gst_pipeline_class_init),
5018         (gst_pipeline_dispose), (gst_pipeline_set_property),
5019         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
5020         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
5021         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
5022         * gst/gstutils.h:
5023         * gst/schedulers/entryscheduler.c:
5024         * gst/schedulers/gstbasicscheduler.c:
5025         (gst_basic_scheduler_cothreaded_chain),
5026         (gst_basic_scheduler_chain_add_element):
5027         * testsuite/bins/interface.c: (main):
5028         Added GstBin test.
5029         Added GstSystemClock test.
5030         Implemented clock distribution code in GstBin.
5031         Implemented iterate sinks method for future use.
5032         Rearranged gstelement.h
5033         Fix GstIterator comparison bug.
5034         Moved some code to GstPipeline, mostly clocking related.
5035
5036 2005-03-09  Wim Taymans  <wim@fluendo.com>
5037
5038         * configure.ac:
5039         * gst/gst_private.h:
5040         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5041         (gst_bin_remove_func), (gst_bin_remove),
5042         (gst_bin_get_by_name_recurse_up):
5043         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
5044         (gst_clock_id_compare_func), (gst_clock_id_wait),
5045         (gst_clock_id_wait_async), (gst_clock_init),
5046         (gst_clock_adjust_unlocked), (gst_clock_get_time):
5047         * gst/gstelement.h:
5048         * gst/gstinfo.c: (_gst_debug_init):
5049         * gst/gstobject.h:
5050         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5051         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
5052         * gst/gstpad.h:
5053         Bump version number, we're now 0.9.0
5054         Add future debugging category.
5055         Fix NULL _unref() in _get_by_name_recurse_up
5056         Rearrange gstpad.h.
5057         Update some docs.
5058
5059 2005-03-08  Wim Taymans  <wim@fluendo.com>
5060
5061         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
5062         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5063         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
5064         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
5065         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
5066         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
5067         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
5068         * gst/elements/gstidentity.c: (gst_identity_class_init):
5069         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
5070         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5071         * gst/elements/gstshaper.c: (gst_shaper_class_init):
5072         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5073         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5074         (gst_tee_link):
5075         * gst/gstelement.c: (gst_element_class_init),
5076         (gst_element_base_class_init), (gst_element_init),
5077         (gst_element_get_random_pad), (gst_element_wait_state_change),
5078         (gst_element_change_state), (gst_element_dispose),
5079         (gst_element_finalize), (gst_element_set_loop_function):
5080         * gst/gstelement.h:
5081         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5082         * gst/gstthread.c: (gst_thread_class_init),
5083         (gst_thread_release_children_locks), (gst_thread_change_state):
5084         * gst/schedulers/gstbasicscheduler.c:
5085         (gst_basic_scheduler_loopfunc_wrapper),
5086         (gst_basic_scheduler_chain_wrapper),
5087         (gst_basic_scheduler_src_wrapper),
5088         (gst_basic_scheduler_remove_element):
5089         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5090         Remove threadsafe properties. Fix elements because GObject
5091         complains when installing a property before declaring a
5092         set/get_property handler.
5093         Rearrange gstelement.h file, use STATE macros for state locks.
5094         Free mutexes in the finalize method instead of dispose.
5095
5096 2005-03-08  Wim Taymans  <wim@fluendo.com>
5097
5098         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5099         * gst/gstthread.c: (gst_thread_release_children_locks):
5100         Added parentage check.
5101         Fix build og GstThread again.
5102
5103 2005-03-08  Wim Taymans  <wim@fluendo.com>
5104
5105         * docs/design/part-MT-refcounting.txt:
5106         * docs/design/part-conventions.txt:
5107         * docs/design/part-gstobject.txt:
5108         * docs/design/part-relations.txt:
5109         * docs/design/part-standards.txt:
5110         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5111         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5112         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5113         (gst_bin_iterate_all_by_interface):
5114         * gst/gstbuffer.h:
5115         * gst/gstclock.h:
5116         * gst/gstelement.c: (gst_element_class_init),
5117         (gst_element_change_state), (gst_element_set_loop_function):
5118         * gst/gstelement.h:
5119         * gst/gstiterator.c:
5120         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5121         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5122         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5123         (gst_object_set_parent), (gst_object_unparent),
5124         (gst_object_check_uniqueness):
5125         * gst/gstobject.h:
5126         Docs updates, clean up some headers.
5127
5128 2005-03-07  Wim Taymans  <wim@fluendo.com>
5129
5130         * check/.cvsignore:
5131         * check/Makefile.am:
5132         * check/gst-libs/.cvsignore:
5133         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5134         * check/gst/.cvsignore:
5135         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5136         (START_TEST), (gstbus_suite), (main):
5137         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5138         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5139         (gst_data_suite), (main):
5140         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5141         (add_fold_func), (gstiterator_suite), (main):
5142         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5143         (thread_name_object), (thread_name_object_default),
5144         (gst_object_name_compare), (gst_object_suite), (main):
5145         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5146         (gst_pad_suite), (main):
5147         * check/gstcheck.c: (gst_check_log_message_func),
5148         (gst_check_log_critical_func), (gst_check_init):
5149         * check/gstcheck.h:
5150         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5151         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5152         Added checks.
5153
5154 2005-03-07  Wim Taymans  <wim@fluendo.com>
5155
5156         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5157         (gst_list_iterator_next), (gst_list_iterator_resync),
5158         (gst_list_iterator_free), (gst_iterator_new_list),
5159         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5160         (gst_iterator_free), (gst_iterator_push), (filter_next),
5161         (filter_resync), (filter_uninit), (filter_free),
5162         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5163         (gst_iterator_foreach), (find_custom_fold_func),
5164         (gst_iterator_find_custom):
5165         * gst/gstiterator.h:
5166         Added missing files.
5167
5168 2005-03-07  Wim Taymans  <wim@fluendo.com>
5169
5170         * Makefile.am:
5171         * configure.ac:
5172         * docs/design/part-MT-refcounting.txt:
5173         * docs/design/part-conventions.txt:
5174         * docs/design/part-gstobject.txt:
5175         * docs/design/part-relations.txt:
5176         * examples/mixer/mixer.c: (main):
5177         * examples/thread/thread.c: (eos), (main):
5178         * gst/Makefile.am:
5179         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5180         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5181         (gst_spider_plug_from_srcpad):
5182         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5183         (gst_spider_identity_change_state),
5184         (gst_spider_identity_sink_loop_type_finding):
5185         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5186         * gst/elements/gstidentity.c: (gst_identity_init):
5187         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5188         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5189         * gst/elements/gsttypefindelement.c: (free_entry):
5190         * gst/gst.c:
5191         * gst/gst.h:
5192         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5193         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5194         (gst_bin_set_index), (gst_bin_set_element_sched),
5195         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5196         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5197         (gst_bin_iterate_elements), (iterate_child_recurse),
5198         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5199         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5200         (compare_interface), (gst_bin_get_by_interface),
5201         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5202         * gst/gstbin.h:
5203         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5204         (gst_buffer_default_free), (gst_buffer_default_copy),
5205         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5206         (gst_buffer_create_sub):
5207         * gst/gstbuffer.h:
5208         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5209         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5210         (gst_caps_unref), (gst_static_caps_get),
5211         (gst_caps_remove_and_get_structure), (gst_caps_append),
5212         (gst_caps_append_structure), (gst_caps_remove_structure),
5213         (gst_caps_copy_nth), (gst_caps_set_simple),
5214         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5215         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5216         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5217         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5218         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5219         (gst_caps_structure_figure_out_union),
5220         (gst_caps_switch_structures), (gst_caps_do_simplify),
5221         (gst_caps_replace), (gst_caps_from_string),
5222         (gst_caps_copy_conditional):
5223         * gst/gstcaps.h:
5224         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5225         (_gst_clock_id_free), (gst_clock_id_unref),
5226         (gst_clock_id_compare_func), (gst_clock_id_wait),
5227         (gst_clock_id_wait_async), (gst_clock_class_init),
5228         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5229         (gst_clock_get_time), (gst_clock_set_time_adjust),
5230         (gst_clock_set_property), (gst_clock_get_property):
5231         * gst/gstclock.h:
5232         * gst/gstcompat.h:
5233         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5234         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5235         * gst/gstdata.h:
5236         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5237         (gst_element_requires_clock), (gst_element_provides_clock),
5238         (gst_element_set_clock), (gst_element_clock_wait),
5239         (gst_element_wait), (gst_element_set_time_delay),
5240         (gst_element_is_indexable), (gst_element_add_pad),
5241         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5242         (pad_compare_name), (gst_element_get_static_pad),
5243         (gst_element_request_pad), (gst_element_get_request_pad),
5244         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5245         (gst_element_class_get_pad_template_list),
5246         (gst_element_class_get_pad_template), (gst_element_error_func),
5247         (gst_element_get_random_pad), (gst_element_get_event_masks),
5248         (gst_element_send_event), (gst_element_seek),
5249         (gst_element_get_query_types), (gst_element_query),
5250         (gst_element_get_formats), (gst_element_convert),
5251         (gst_element_is_locked_state), (gst_element_set_locked_state),
5252         (gst_element_sync_state_with_parent), (gst_element_change_state),
5253         (gst_element_finalize), (gst_element_yield),
5254         (gst_element_interrupt), (gst_element_set_scheduler),
5255         (gst_element_get_scheduler), (gst_element_set_loop_function):
5256         * gst/gstelement.h:
5257         * gst/gstevent.h:
5258         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5259         (gst_format_get_by_nick), (gst_format_get_details),
5260         (gst_format_iterate_definitions):
5261         * gst/gstformat.h:
5262         * gst/gstindex.c: (gst_index_gtype_resolver):
5263         * gst/gstinfo.c:
5264         * gst/gstinfo.h:
5265         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5266         (gst_mem_chunk_free):
5267         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5268         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5269         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5270         (gst_object_dispatch_properties_changed),
5271         (gst_object_set_name_default), (gst_object_set_name),
5272         (gst_object_get_name), (gst_object_set_name_prefix),
5273         (gst_object_get_name_prefix), (gst_object_set_parent),
5274         (gst_object_get_parent), (gst_object_unparent),
5275         (gst_object_check_uniqueness), (gst_object_save_thyself),
5276         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5277         (gst_object_set_property), (gst_object_get_property),
5278         (gst_object_get_path_string):
5279         * gst/gstobject.h:
5280         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5281         (gst_real_pad_init), (gst_real_pad_get_property),
5282         (gst_pad_custom_new), (gst_pad_get_direction),
5283         (gst_pad_set_active), (gst_pad_is_active),
5284         (gst_pad_set_event_function), (gst_pad_is_linked),
5285         (gst_pad_link_free), (gst_pad_link_intersect),
5286         (gst_pad_link_fixate), (gst_pad_set_caps),
5287         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5288         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5289         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5290         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5291         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5292         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5293         (gst_pad_realize), (gst_pad_get_allowed_caps),
5294         (gst_real_pad_dispose), (gst_real_pad_finalize),
5295         (gst_pad_collectv), (gst_pad_collect_valist),
5296         (gst_pad_template_dispose), (gst_pad_template_new),
5297         (gst_pad_get_internal_links):
5298         * gst/gstpad.h:
5299         * gst/gstpipeline.c: (gst_pipeline_dispose),
5300         (gst_pipeline_change_state):
5301         * gst/gstpipeline.h:
5302         * gst/gstplugin.c:
5303         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5304         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5305         * gst/gstpluginfeature.h:
5306         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5307         * gst/gstquery.c: (_gst_query_type_initialize),
5308         (gst_query_type_register), (gst_query_type_get_by_nick),
5309         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5310         * gst/gstquery.h:
5311         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5312         * gst/gstscheduler.c: (gst_scheduler_add_element),
5313         (gst_scheduler_factory_create):
5314         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5315         (gst_structure_free), (gst_structure_set_name),
5316         (gst_structure_id_set_value), (gst_structure_set_value),
5317         (gst_structure_set_valist), (gst_structure_remove_field),
5318         (gst_structure_remove_fields),
5319         (gst_structure_remove_fields_valist),
5320         (gst_structure_remove_all_fields), (gst_structure_foreach),
5321         (gst_structure_map_in_place),
5322         (gst_caps_structure_fixate_field_nearest_int),
5323         (gst_caps_structure_fixate_field_nearest_double):
5324         * gst/gststructure.h:
5325         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5326         (gst_system_clock_init), (gst_system_clock_dispose),
5327         (gst_system_clock_async_thread),
5328         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5329         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5330         * gst/gstsystemclock.h:
5331         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5332         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5333         * gst/gsttaginterface.c:
5334         * gst/gstthread.c: (gst_thread_dispose),
5335         (gst_thread_release_children_locks), (gst_thread_change_state),
5336         (gst_thread_main_loop):
5337         * gst/gsttrashstack.h:
5338         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5339         * gst/gsttypes.h:
5340         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5341         (gst_element_request_pad), (gst_element_get_pad_from_template),
5342         (gst_element_request_compatible_pad),
5343         (gst_element_get_compatible_pad_filtered),
5344         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5345         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5346         (gst_element_link_many), (gst_element_link),
5347         (gst_element_link_pads), (gst_element_unlink_pads),
5348         (gst_element_unlink_many), (gst_element_unlink),
5349         (gst_pad_can_link_filtered), (gst_pad_can_link),
5350         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5351         (gst_object_default_error), (gst_bin_add_many),
5352         (gst_bin_remove_many), (gst_element_populate_std_props),
5353         (gst_element_class_install_std_props), (gst_buffer_merge),
5354         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5355         (link_fold_func), (gst_pad_proxy_setcaps):
5356         * gst/gstutils.h:
5357         * gst/gstvalue.c: (gst_value_deserialize_string):
5358         * gst/parse/grammar.y:
5359         * gst/schedulers/gstbasicscheduler.c:
5360         (gst_basic_scheduler_cothreaded_chain),
5361         (gst_basic_scheduler_chain_recursive_add),
5362         (gst_basic_scheduler_pad_link):
5363         * gst/schedulers/gstoptimalscheduler.c:
5364         (get_group_schedule_function),
5365         (gst_opt_scheduler_state_transition),
5366         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5367         * libs/gst/bytestream/bytestream.c:
5368         * libs/gst/dataprotocol/dataprotocol.c:
5369         (gst_dp_header_from_buffer):
5370         * po/nb.po:
5371         * po/ru.po:
5372         * tests/threadstate/threadstate2.c: (eos):
5373         * tools/gst-compprep.c: (main):
5374         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5375         (print_pad_info), (print_children_info):
5376         * tools/gst-launch.c: (idle_func), (main):
5377         * tools/gst-md5sum.c: (idle_func), (main):
5378         * tools/gst-xmlinspect.c: (print_element_info):
5379         First THREADED backport attempt, focusing on adding locks and
5380         making sure the API is threadsafe. Needs more work. More docs
5381         follow this week.
5382
5383 2005-02-24  Andy Wingo  <wingo@pobox.com>
5384
5385         * tests/bench-complexity.scm:
5386         * tests/complexity.gnuplot: New files, good for running complexity
5387         benchmarks.
5388
5389         * tests/Makefile.am:
5390         * tests/complexity.c: New test, sets up N elements, at each level
5391         teeing into M streams per element. Eeeenteresting.
5392
5393         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5394         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5395         running bench-mass_elements.scm.
5396
5397         * tests/bench-mass_elements.scm: New script, runs mass_elements
5398         for various numbers of identities, outputting the results to a
5399         file. Requires guile 1.6. Just for testing.
5400
5401 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5402
5403         * gst/schedulers/fairscheduler.c:
5404           compile with debug disabled
5405
5406 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5407
5408         * configure.ac:
5409           hunting season on 0.9 is now OPEN
5410
5411 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5412
5413         * docs/libs/tmpl/gstcontrol.sgml:
5414         * docs/libs/tmpl/gstdparam.sgml:
5415         * docs/libs/tmpl/gstdplinint.sgml:
5416         * docs/libs/tmpl/gstdpman.sgml:
5417         * docs/libs/tmpl/gstdpsmooth.sgml:
5418         * docs/libs/tmpl/gstunitconvert.sgml:
5419           more docs for the state of dparams
5420
5421 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5422
5423         * gst/gstelementfactory.c: (gst_element_factory_create):
5424         * gst/gstobject.c: (gst_object_init),
5425         (gst_object_set_name_default), (gst_object_set_name):
5426           name objects by default, not in gst_element_factory_create. Allows
5427           using elements created with g_object_new. (fixes #167283)
5428
5429 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5430
5431         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5432           make the time that debugging functions print relative to when
5433           gst_init was called
5434
5435 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5436
5437         * gst/gsttaginterface.c:
5438           Fix inline docs: tag setter vararg functions are NULL-terminated,
5439           GST_TAG_INVALID doesn't exist any more.
5440
5441 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5442
5443         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5444         Allocate the 1 byte more memory that was forgotten!!!!!
5445         fixes memory corruption on 64bit platforms
5446
5447 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5448
5449         * docs/pwg/building-pads.xml:
5450         * docs/pwg/intro-basics.xml:
5451           fixed a few typos, relabeled introductionary list of types
5452         * docs/random/ensonic/dparams.txt:
5453           more notes abut dparam changes
5454         * libs/gst/control/dparam.c: (gst_dparam_attach):
5455         * libs/gst/control/dparammanager.c:
5456         * libs/gst/control/dparammanager.h:
5457           - many comments and notes on dparam implementation
5458           - new dparams are were not initialized to the default value
5459             from param spec
5460
5461 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5462
5463         submitted by: Peter Astakhov
5464
5465         * po/LINGUAS:
5466         * po/ru.po:
5467           adding Russian translation
5468
5469 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5470
5471         * configure.ac:
5472         * docs/gst/Makefile.am:
5473         * docs/libs/Makefile.am:
5474           make sure popt is added to gtk-doc flags.  Fixes #147782.
5475
5476 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5477
5478         * docs/faq/using.xml:
5479           Fix typo in FAQ (artssink => artsdsink)
5480
5481 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5482
5483         * tools/gst-launch.1.in:
5484           Fix typo (#166699).
5485
5486 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5487
5488         * docs/faq/using.xml:
5489           Add -v argument to fakesrc/fakesink gst-launch line,
5490           so that the promised output will actually show up.
5491
5492 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5493
5494         * gst/gstthread.c: (gst_thread_change_state):
5495           Implement state-change error handling (#166073).
5496
5497 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5498
5499         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5500           Release interrupt after handling (#166250).
5501
5502 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5503
5504         * configure.ac:
5505           back to HEAD
5506
5507 === release 0.8.9 ===
5508
5509 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5510
5511         * NEWS:
5512         * RELEASE:
5513         * configure.ac:
5514           releasing 0.8.9, "Like Eating Glass"
5515
5516 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5517
5518         submitted by: Clytie Siddall
5519
5520         * po/vi.po: Added Vietnamese translation
5521
5522 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5523
5524         patch by: Tim Philipp-Müller
5525
5526         * configure.ac:
5527         * gst/gstpad.c:
5528           unref data when probe function returns FALSE.  Fixes #166362
5529
5530 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5531
5532         * gst/gst.c: (gst_init_get_popt_table):
5533           Fix typo (#166269).
5534
5535 2005-02-04  Andy Wingo  <wingo@pobox.com>
5536
5537         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5538         the debugging on whether the caps are compatible.
5539
5540 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5541
5542         * docs/manual/basics-elements.xml:
5543           Fix two typos.
5544
5545 2005-02-02  Wim Taymans  <wim@fluendo.com>
5546
5547         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5548         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5549         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5550         Remove some FIXMEs after analysing and commenting why they
5551         are not issues.
5552
5553 2005-02-02  Wim Taymans  <wim@fluendo.com>
5554
5555         * gst/schedulers/gstoptimalscheduler.c:
5556         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5557         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5558         (get_invalid_call), (chain_invalid_call),
5559         (get_group_schedule_function), (loop_group_schedule_function),
5560         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5561         (gst_opt_scheduler_state_transition),
5562         (gst_opt_scheduler_add_element),
5563         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5564         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5565         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5566         (gst_opt_scheduler_show):
5567         Added lock to protect scheduler data structures.
5568
5569 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5570
5571         * testsuite/threads/threadi.c: (cb_data):
5572           Fix buglet in test.
5573
5574 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5575
5576         * testsuite/threads/Makefile.am:
5577         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5578           On Wim's request, split the test in three separately-compiled
5579           tests that each test a very specific bug. Two of them still fail,
5580           will create bugs for those. threadi.c indicates why they fail.
5581
5582 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5583
5584         * gst/schedulers/gstoptimalscheduler.c:
5585         (get_group_schedule_function):
5586           Try to work with the threading mess that queue_link is.
5587
5588 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5589
5590         * gst/gstbin.c: (gst_bin_remove_func):
5591           Explicitely make an element release locks in a group when being
5592           remove from a bin.
5593         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5594           If there's no scheduler, always return immediately (similar to
5595           gst_element_interrupt).
5596
5597 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5598
5599         * gst/gstbin.c: (gst_bin_child_state_change_func):
5600           Remove a piece of code that could never be reached.
5601         * docs/gst/gstreamer-sections.txt:
5602         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5603         (gst_pad_call_get_function):
5604         * gst/gstpad.h:
5605         * testsuite/pad/Makefile.am:
5606           Fix #150546, enable tests.
5607
5608 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5609
5610         * docs/pwg/advanced-types.xml:
5611           Fix description for buffer-frames=0.
5612         * docs/gst/tmpl/gstbin.sgml:
5613         * gst/gstbin.c: (gst_bin_child_state_change_func),
5614         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5615         * gst/gstbin.h:
5616         * testsuite/threads/Makefile.am:
5617         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5618         (cb_state), (cb_play), (main):
5619           Fix non-recursive state changes to *really* change the state
5620           of the object, and not just call parent_class->state_change.
5621           Fix a lot of lockups caused by this. Fixes #132775. Add test
5622           for the problem. Also enable test to show #142588 (fixed).
5623         * gst/gstthread.c: (gst_thread_change_state),
5624         (gst_thread_child_state_change):
5625           Don't exit the thread if we go to NULL and are inside thread
5626           context. Instead, return control to the main thread context
5627           and exit from there.
5628         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5629           Don't unset virtual functions, since those may still be used.
5630           That's not necessarily correct, but suffices for now.
5631         * configure.ac:
5632         * testsuite/Makefile.am:
5633         * testsuite/pad/Makefile.am:
5634         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5635         (gst_test_sink_base_init), (gst_test_sink_chain),
5636         (gst_test_sink_init), (main):
5637         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5638         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5639         (main):
5640         * testsuite/pad/link.c: (gst_test_element_class_init),
5641         (gst_test_element_base_init), (gst_test_src_get),
5642         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5643         (gst_test_filter_loop), (gst_test_filter_init),
5644         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5645         (cb_error), (main):
5646           Add tests to show #150546. Pass, but should fail (currently
5647           disabled from the testsuite).
5648         * gst/gstscheduler.c: (gst_scheduler_dispose):
5649           Dereference child schedulers on dispose (#94464).
5650         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5651           Fix typo.
5652         * testsuite/threads/thread.c: (main):
5653           Add more debug.
5654
5655 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5656
5657         * gst/gstpad.c: (gst_pad_push):
5658           Oops, revert previous commit, broke testsuite...
5659
5660 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5661
5662         * gst/gstpad.c: (gst_pad_push):
5663           Add check that the pad on which the push is performed is not a
5664           get-based pad (#150546).
5665
5666 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5667
5668         * gst/elements/gsttypefindelement.c:
5669         (gst_type_find_element_handle_event):
5670           Fix buffer pushing if stream EOSes during typefinding.
5671
5672 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5673
5674         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5675
5676         * gst/gstvalue.c: (gst_string_wrap):
5677           Allow NULL-strings as argument (#165365).
5678
5679 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5680
5681         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5682
5683         * gst/schedulers/faircothreads.c:
5684         (gst_fair_scheduler_cothread_queue_show):
5685           Fix build without debug enabled.
5686
5687 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5688
5689         * docs/gst/gstreamer-sections.txt:
5690         * docs/libs/gstreamer-libs-docs.sgml:
5691         * docs/libs/gstreamer-libs-sections.txt:
5692         * docs/libs/tmpl/gstcontrol.sgml:
5693         * docs/libs/tmpl/gstdparam.sgml:
5694         * docs/libs/tmpl/gstdplinint.sgml:
5695         * docs/libs/tmpl/gstdpman.sgml:
5696         * docs/libs/tmpl/gstdpsmooth.sgml:
5697         * docs/libs/tmpl/gstputbits.sgml:
5698         * docs/libs/tmpl/gstunitconvert.sgml:
5699         * libs/gst/control/dparam.c:
5700         * libs/gst/control/dparam.h:
5701         * libs/gst/control/dparammanager.c:
5702         (gst_dpman_add_required_dparam_callback),
5703         (gst_dpman_add_required_dparam_direct),
5704         (gst_dpman_add_required_dparam_array),
5705         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5706         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5707         (gst_dpman_get_manager)
5708           restructured DParam docs
5709
5710 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5711
5712         * gst-element-check.m4:
5713           Only check for gst-inspect if we haven't already
5714           found it in previous element check runs
5715
5716 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5717
5718         * docs/gst/Makefile.am:
5719         * docs/libs/Makefile.am:
5720           fixed install rules to treat style.css as optional
5721
5722 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5723
5724         * docs/gst/Makefile.am:
5725         * docs/libs/Makefile.am:
5726           install style.css along with docs
5727         * docs/gst/tmpl/gstbin.sgml:
5728         * docs/gst/tmpl/gstclock.sgml:
5729         * docs/gst/tmpl/gstdata.sgml:
5730         * docs/gst/tmpl/gstelement.sgml:
5731         * gst/gstbin.h:
5732         * gst/gstelement.c: (gst_element_class_init):
5733         * gst/gstelement.h:
5734           fixing incomplete docs
5735
5736 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5737
5738         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5739           Don't unref seek event twice when fflush() fails
5740           
5741 2005-01-22  David Schleef  <ds@schleef.org>
5742
5743         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5744
5745 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5746
5747         * docs/gst/Makefile.am:
5748         * docs/libs/Makefile.am:
5749           added params for deprecation guards
5750         * gst/gst.c:
5751         * gst/gst.h:
5752         * gst/gsterror.c: (_gst_resource_errors_init),
5753         (_gst_stream_errors_init):
5754         * gst/gsterror.h:
5755           documented some more enums
5756
5757 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5758         * gst/autoplug/gstspideridentity.c:
5759         Cosmetic fix - spider_find_peek should be static
5760         * gst/parse/parse.l:
5761         Applying fix for #164261
5762
5763 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5764
5765         * docs/gst/gstreamer-sections.txt:
5766         * docs/gst/tmpl/gstplugin.sgml:
5767         * docs/libs/gstreamer-libs-sections.txt:
5768         * docs/libs/tmpl/gstcontrol.sgml:
5769         * gst/gstbuffer.h:
5770         * gst/gsttag.h:
5771         * gst/gstvalue.c:
5772           added docs for the TAG defines
5773
5774 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5775
5776         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5777           Only unref entry if there is an entry.
5778
5779 2005-01-17  Wim Taymans  <wim@fluendo.com>
5780
5781         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5782         (remove_from_group), (schedule_group), (normalize_group),
5783         (gst_opt_scheduler_iterate):
5784         Also ref/unref decoupled elements before iterating the
5785         group since they are not added to the list of elements.
5786
5787 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5788
5789         * docs/manual/highlevel-components.xml:
5790           Add subtitle/streamselection as new features to playbin.
5791
5792 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5793
5794         * docs/manual/manual.xml:
5795           Re-enable dataaccess docs (oops).
5796
5797 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5798
5799         * docs/pwg/advanced-types.xml:
5800         * docs/random/mimetypes:
5801           Add documentation on libsndfile types (#163309), by Steve Baker
5802           <steve@stevebaker.org>.
5803         * gst/gstelement.c: (gst_element_release_request_pad):
5804           If an element has no explicit function, just remove the pad.
5805
5806 2005-01-17  Luca Ognibene  <luogni@tin.it>
5807
5808         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5809
5810         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5811           Fix memleak (#163801).
5812
5813 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5814
5815         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5816           I think this is actually more correct...
5817
5818 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5819
5820         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5821           Another workaround for memory access while destroyed in callback.
5822           Please, someone with refcount knowledge, have a look at this.
5823
5824 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5825
5826         * docs/faq/faq.xml:
5827         * docs/faq/legal.xml:
5828           move the legal Q&A here
5829
5830 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5831
5832         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5833         (gst_tee_request_new_pad):
5834           Fix negotiation.
5835
5836 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5837
5838         * docs/random/omega/caps2:
5839         * testsuite/caps/caps_strings:
5840           replace framerate aproximations by their real value
5841           (24000/1001, 30000/1001, 60000/1001)
5842           Partially fixes bug #164049
5843
5844 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5845
5846         * docs/gst/Makefile.am:
5847           don't fail on the stupid GstPoptOption
5848
5849 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5850
5851         * gst/gstpad.h:
5852         * gst/gstprobe.c:
5853           allow probes to work on ghost pads by realizing the pad
5854           probe debugging
5855
5856 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5857
5858         * docs/gst/gstreamer-sections.txt:
5859         * docs/gst/tmpl/gstpad.sgml:
5860         * gst/gstpad.c: (gst_pad_set_active_recursive):
5861         * gst/gstpad.h:
5862           Add gst_pad_set_active_recursive().
5863
5864 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5865
5866         * docs/random/release:
5867           updates
5868         * gst/gst_private.h:
5869         * gst/gstinfo.c:
5870         * gst/gstobject.c:
5871           move deep_notify logging to a new category
5872         * gst/gstprobe.c:
5873         * gst/gstprobe.h:
5874           add stuff so bindings can wrap probes
5875
5876 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5877
5878         * gst/gstplugin.c: (gst_plugin_load):
5879           Fix plugin loading if plugin/lib was already loaded. Fixes
5880           #163383
5881
5882 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5883
5884         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5885
5886         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5887           Protect plugin loading by a mutex so it's threadsafe. Fixes
5888           #163234.
5889
5890 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5891
5892         * gst/gstevent.c: (_gst_event_copy):
5893           Reference source object when copying events, since it'll be
5894           dereferenced on event dereferencing as well.
5895
5896 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5897
5898         * docs/gst/gstreamer-sections.txt:
5899         * docs/gst/tmpl/gstevent.sgml:
5900         * gst/gstevent.c: (gst_event_new_filler_stamped),
5901         (gst_event_filler_get_duration):
5902         * gst/gstevent.h:
5903           Add two new functions for filler events (which are used to
5904           synchronize streams if one of them is not having any data
5905           for a while) without interrupting the actual data-stream.
5906           Basically a no-op.
5907         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5908         (gst_queue_link_sink), (gst_queue_link_src),
5909         (gst_queue_change_state):
5910           Allow for renegotiation while filled. Required for stream
5911           switching while playing.
5912
5913 2005-01-08  Benjamin Otte  <otte@gnome.org>
5914
5915         * gst/gstelement.c: (gst_element_link_many):
5916           fix up g_return_if_fail's
5917         * po/LINGUAS:
5918         * po/de.po:
5919           add German translation, that was somehow not included
5920
5921 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5922
5923         * docs/random/mimetypes:
5924           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5925           do not add them to riff-lib as they are not common
5926
5927 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5928
5929         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5930           Check for existence of probe after performing the probe before
5931           re-accessing it to prevent segfaults caused by removal of the
5932           probe in the callback.
5933
5934 2005-01-05  David Schleef  <ds@schleef.org>
5935
5936         * testsuite/registry/Makefile.am:
5937         * testsuite/registry/gst-print-formats.c:
5938         (print_pad_templates_info), (print_element_list),
5939         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5940         (g_list_uniqify), (get_pad_templates_info),
5941         (get_element_mime_list), (print_mime_list), (main): A little
5942         program that looks through the registry to find elements of
5943         a given type.  Not particularly interesting as a test, except
5944         that there's no other test covering the same area.
5945
5946 2005-01-05  David Schleef  <ds@schleef.org>
5947
5948         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5949         (fault_handler_sigaction), (fault_spin),
5950         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5951         in signal.h-type signal handlers by not calling forbidden functions,
5952         including gst_element_set_state().
5953
5954 2005-01-05  David Schleef  <ds@schleef.org>
5955
5956         * gst/gstvalue.h: Mark _gst_reserved[] as private
5957
5958 2005-01-05  David Schleef  <ds@schleef.org>
5959
5960         * gst/gstvalue.c: Fix doc build problem.
5961
5962 2005-01-05  David Schleef  <ds@schleef.org>
5963
5964         * gst/gstvalue.c: Add some documentation
5965
5966 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5967
5968         * docs/README:
5969           another shell oneliner for empty return value docs
5970         * gst/gstcaps.c:
5971         * gst/gstvalue.c:
5972         * libs/gst/control/dparam.c:
5973           more doc fixes (parameters and return values)
5974
5975 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5976
5977         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5978
5979         * gst/gstregistry.h:
5980         * gst/registries/gstxmlregistry.c:
5981           Fix macro's for Mingw (fixes #162276).
5982
5983 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5984
5985         * docs/README:
5986           quick shell oneliner to find undocumented members
5987         * docs/gst/tmpl/gstplugin.sgml:
5988         * docs/gst/tmpl/gstscheduler.sgml:
5989         * docs/gst/tmpl/gstthread.sgml:
5990           more enumtypes cleanup
5991         * gst/gsterror.h:
5992           activated documentation comments, now someone needs to document
5993           the enums :(
5994
5995 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5996
5997         * docs/manual/manual.xml:
5998           Add dataaccess part (doh!).
5999
6000 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6001
6002         * docs/manual/advanced-autoplugging.xml:
6003           Fix typo (intiate -> initiate).
6004
6005 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6006
6007         * docs/random/bbb/streamselection:
6008           Add some notes on how to handle multi-subtitle/-audio streams.
6009
6010 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
6011
6012         * docs/gst/gstreamer-docs.sgml:
6013         * docs/gst/gstreamer-sections.txt:
6014         * docs/gst/tmpl/gstenumtypes.sgml:
6015         * docs/gst/tmpl/gsterror.sgml:
6016         * docs/gst/tmpl/gstevent.sgml:
6017         * docs/gst/tmpl/gstpad.sgml:
6018         * docs/gst/tmpl/gstpadtemplate.sgml:
6019         * docs/gst/tmpl/gstthread.sgml:
6020           removed gstenumtypes section from docs and put all the enums into
6021           their sections
6022
6023 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6024
6025         * gst/gstplugin.c:
6026           document gst_library_load a bit more (riff special case + return
6027           value if already loaded)
6028         * testsuite/bytestream/filepadsink.c:
6029           plugin name is 'gstbytestream', not 'bytestream'
6030
6031 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6032
6033         * docs/random/bbb/subtitles:
6034           Add some first mind rumblings on proper subtitle support.
6035
6036 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6037
6038         * po/ca.po:
6039         * po/sv.po:
6040           updated translations
6041
6042 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6043
6044         * docs/manual/advanced-dataaccess.xml:
6045           Add section on how to use fakesrc/fakesink/identity in your
6046           application, plus section on how to embed plugins. Also mention
6047           probes.
6048         * docs/manual/appendix-checklist.xml:
6049         * docs/manual/appendix-debugging.xml:
6050         * docs/manual/appendix-gnome.xml:
6051         * docs/manual/appendix-integration.xml:
6052           Debug -> checklist, GNOME -> integration, add sections on Linux,
6053           KDE integration and add other things useful for application
6054           development.
6055         * docs/manual/manual.xml:
6056           Remove some fixmes, update some file pointers.
6057         * docs/pwg/appendix-checklist.xml:
6058           Fix typo.
6059         * docs/pwg/building-boiler.xml:
6060           Remove ugly header and add commented fixme.
6061         * docs/pwg/pwg.xml:
6062           Add fixme.
6063         * examples/manual/Makefile.am:
6064           Add example for added docs.
6065
6066 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6067
6068         * configure.ac:
6069           back to HEAD
6070
6071 === release 0.8.8 ===
6072
6073 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6074
6075         * NEWS:
6076         * RELEASE:
6077         * configure.ac:
6078           Releasing 0.8.8, "I'll Take Care Of You"
6079
6080 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6081
6082         * configure.ac:
6083           second prerelease
6084
6085 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6086
6087         patch by: Wim Taymans
6088
6089         * gst/gstbin.c:
6090           Fix for #159852 - make iterate emission threadsafe
6091
6092 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6093
6094         * docs/faq/cvs.xml:
6095           notes about new fdo account request
6096
6097 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6098
6099         * docs/gst/gstreamer-docs.sgml:
6100         * docs/gst/tmpl/gstenumtypes.sgml:
6101         * docs/gst/tmpl/gstplugin.sgml:
6102         * docs/libs/gstreamer-libs-docs.sgml:
6103           Added missing short docs. Added ids for navigation.
6104
6105 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6106
6107         * docs/manual/advanced-autoplugging.xml:
6108         * docs/manual/advanced-schedulers.xml:
6109         * docs/manual/advanced-threads.xml:
6110           Rewrites. Remove cothreads, go a bit into opt specifically,
6111           document threads and their gotchas, and do some technical stuff
6112           on autoplugging plus add some working examples. Fixes #157395.
6113         * examples/manual/Makefile.am:
6114           Add typefind/autoplugger example (one that actually works).
6115           Remove queue example since it's a duplicate of the thread one.
6116
6117 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6118
6119         * gst/gstvalue.c: (gst_value_deserialize_string):
6120           use deprecated g_value_set_string_take_ownership to keep compatible
6121           with glib 2.2
6122
6123 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6124
6125         * gst/gstvalue.c: (gst_value_deserialize_string):
6126           revert last patch, only dom a g_utf8_validate now before accepting
6127           the string - caps parsing strips " from strings so we can't rely on
6128           them
6129         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6130           disable a test that tested the above and comment it
6131
6132 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6133
6134         Patch reviewed by David Schleef  <ds@schleef.org>
6135
6136         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6137         bug #153882)
6138         * win32/gstenumtypes.h: same
6139
6140 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6141
6142         * gst/gstpad.c: (gst_pad_query):
6143           Do query on realized pad, similar to how convert/send_event handle
6144           this. Also makes sense, since this pad belongs to the function to
6145           which this query will be sent. Fixes #158163.
6146
6147 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6148
6149         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6150
6151 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6152
6153         * docs/faq/general.xml: fix pipeline to actually work
6154
6155 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6156
6157         * gst/gstvalue.c: (gst_value_deserialize_string):
6158           check that a simple string that gets deserialized does not contain
6159           invalid characters
6160         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6161           remove a test that tested a wring behaviour
6162
6163 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6164
6165         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6166
6167         * docs/manual/intro-motivation.xml:
6168           Fix typos.
6169
6170 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6171
6172         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6173
6174         * docs/gst/tmpl/gstprobe.sgml:
6175           Fix documentation of probe callback - it is supposed to return
6176           FALSE, not TRUE, to remove data from the stream (#159087).
6177
6178 2004-12-16  Daniel Gazard  <dany42@free.fr>
6179
6180         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6181
6182         * gst/gstelementfactory.c: (gst_element_factory_create):
6183           Fix compile failure if compiling without libxml2 support (#149936).
6184
6185 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6186
6187         * docs/manual/advanced-autoplugging.xml:
6188         * docs/manual/highlevel-components.xml:
6189           Move spider from autoplugging to components. Autoplugging is for
6190           internals, not for solutions. ;-).
6191
6192 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6193
6194         * docs/random/ds/0.9-suggested-changes:
6195           Make note on device/location/uri property names.
6196
6197 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6198
6199         * docs/manual/advanced-autoplugging.xml:
6200         * docs/manual/advanced-clocks.xml:
6201         * docs/manual/advanced-interfaces.xml:
6202         * docs/manual/advanced-metadata.xml:
6203         * docs/manual/advanced-position.xml:
6204         * docs/manual/advanced-schedulers.xml:
6205         * docs/manual/advanced-threads.xml:
6206         * docs/manual/appendix-gnome.xml:
6207         * docs/manual/appendix-programs.xml:
6208         * docs/manual/appendix-quotes.xml:
6209         * docs/manual/autoplugging.xml:
6210         * docs/manual/basics-bins.xml:
6211         * docs/manual/basics-data.xml:
6212         * docs/manual/basics-elements.xml:
6213         * docs/manual/basics-helloworld.xml:
6214         * docs/manual/basics-init.xml:
6215         * docs/manual/basics-pads.xml:
6216         * docs/manual/basics-plugins.xml:
6217         * docs/manual/bins-api.xml:
6218         * docs/manual/bins.xml:
6219         * docs/manual/buffers-api.xml:
6220         * docs/manual/buffers.xml:
6221         * docs/manual/clocks.xml:
6222         * docs/manual/components.xml:
6223         * docs/manual/cothreads.xml:
6224         * docs/manual/debugging.xml:
6225         * docs/manual/dparams-app.xml:
6226         * docs/manual/dynamic.xml:
6227         * docs/manual/elements-api.xml:
6228         * docs/manual/elements.xml:
6229         * docs/manual/factories.xml:
6230         * docs/manual/gnome.xml:
6231         * docs/manual/goals.xml:
6232         * docs/manual/helloworld.xml:
6233         * docs/manual/helloworld2.xml:
6234         * docs/manual/highlevel-components.xml:
6235         * docs/manual/highlevel-xml.xml:
6236         * docs/manual/init-api.xml:
6237         * docs/manual/intro-basics.xml:
6238         * docs/manual/intro-motivation.xml:
6239         * docs/manual/intro-preface.xml:
6240         * docs/manual/intro.xml:
6241         * docs/manual/links-api.xml:
6242         * docs/manual/links.xml:
6243         * docs/manual/manual.xml:
6244         * docs/manual/motivation.xml:
6245         * docs/manual/pads-api.xml:
6246         * docs/manual/pads.xml:
6247         * docs/manual/plugins-api.xml:
6248         * docs/manual/plugins.xml:
6249         * docs/manual/programs.xml:
6250         * docs/manual/queues.xml:
6251         * docs/manual/quotes.xml:
6252         * docs/manual/schedulers.xml:
6253         * docs/manual/states-api.xml:
6254         * docs/manual/states.xml:
6255         * docs/manual/threads.xml:
6256         * docs/manual/typedetection.xml:
6257         * docs/manual/win32.xml:
6258         * docs/manual/xml.xml:
6259           Try 2. This time, include a short preface as a "general
6260           introduction", also add code blocks around all code samples
6261           so they get compiled. We still need a way to tell readers
6262           the filename of the code sample. In some cases, don't show
6263           all code in the documentation, but do include it in the generated
6264           code. This allows for focussing on specific bits in the docs,
6265           while still having a full test application available.
6266         * examples/manual/Makefile.am:
6267           Fix up examples for new ADM. Add several of the new examples that
6268           were either added or were missing from the build system.
6269         * examples/manual/extract.pl:
6270           Allow nameless blocks.
6271
6272 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6273
6274         * docs/manual/elements-api.xml:
6275         * docs/manual/helloworld.xml:
6276         * examples/manual/extract.pl:
6277           fix last example.  Add example of adding code blocks that are not
6278           shown in docbook output.
6279
6280 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6281
6282         * docs/manual/dynamic.xml:
6283         * docs/manual/elements-api.xml:
6284         * docs/manual/gnome.xml:
6285         * docs/manual/helloworld2.xml:
6286         * docs/manual/init-api.xml:
6287         * docs/manual/queues.xml:
6288         * docs/manual/threads.xml:
6289         * docs/manual/xml.xml:
6290         * examples/manual/extract.pl:
6291           Make it possible to extract example code from separate blocks.
6292           Should make Ronald happy.
6293
6294 2004-12-15  Wim Taymans  <wim@fluendo.com>
6295
6296         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6297         (remove_from_group), (group_elements_set_visited),
6298         (normalize_group), (gst_opt_scheduler_iterate):
6299         Fix bug where a flag was not updated on a decoupled entry point 
6300         because we were just checking the group element list and decoupled
6301         elements are not in that list..
6302
6303 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6304
6305         * docs/manual/advanced-autoplugging.xml:
6306         * docs/manual/advanced-clocks.xml:
6307         * docs/manual/advanced-dparams.xml:
6308         * docs/manual/advanced-interfaces.xml:
6309         * docs/manual/advanced-metadata.xml:
6310         * docs/manual/advanced-position.xml:
6311         * docs/manual/advanced-schedulers.xml:
6312         * docs/manual/advanced-threads.xml:
6313         * docs/manual/appendix-debugging.xml:
6314         * docs/manual/appendix-gnome.xml:
6315         * docs/manual/appendix-programs.xml:
6316         * docs/manual/appendix-quotes.xml:
6317         * docs/manual/appendix-win32.xml:
6318         * docs/manual/autoplugging.xml:
6319         * docs/manual/basics-bins.xml:
6320         * docs/manual/basics-data.xml:
6321         * docs/manual/basics-elements.xml:
6322         * docs/manual/basics-helloworld.xml:
6323         * docs/manual/basics-init.xml:
6324         * docs/manual/basics-pads.xml:
6325         * docs/manual/basics-plugins.xml:
6326         * docs/manual/bins-api.xml:
6327         * docs/manual/bins.xml:
6328         * docs/manual/buffers-api.xml:
6329         * docs/manual/buffers.xml:
6330         * docs/manual/clocks.xml:
6331         * docs/manual/components.xml:
6332         * docs/manual/cothreads.xml:
6333         * docs/manual/debugging.xml:
6334         * docs/manual/dparams-app.xml:
6335         * docs/manual/dynamic.xml:
6336         * docs/manual/elements-api.xml:
6337         * docs/manual/elements.xml:
6338         * docs/manual/factories.xml:
6339         * docs/manual/gnome.xml:
6340         * docs/manual/goals.xml:
6341         * docs/manual/helloworld.xml:
6342         * docs/manual/helloworld2.xml:
6343         * docs/manual/highlevel-components.xml:
6344         * docs/manual/highlevel-xml.xml:
6345         * docs/manual/init-api.xml:
6346         * docs/manual/intro-motivation.xml:
6347         * docs/manual/intro-preface.xml:
6348         * docs/manual/intro.xml:
6349         * docs/manual/links-api.xml:
6350         * docs/manual/links.xml:
6351         * docs/manual/manual.xml:
6352         * docs/manual/motivation.xml:
6353         * docs/manual/pads-api.xml:
6354         * docs/manual/pads.xml:
6355         * docs/manual/plugins-api.xml:
6356         * docs/manual/plugins.xml:
6357         * docs/manual/programs.xml:
6358         * docs/manual/queues.xml:
6359         * docs/manual/quotes.xml:
6360         * docs/manual/schedulers.xml:
6361         * docs/manual/states-api.xml:
6362         * docs/manual/states.xml:
6363         * docs/manual/threads.xml:
6364         * docs/manual/typedetection.xml:
6365         * docs/manual/win32.xml:
6366         * docs/manual/xml.xml:
6367           First try at rewriting the ADM. Needs lotsamore work, but some
6368           parts might already be somewhat useful.
6369         * docs/pwg/advanced-interfaces.xml:
6370           Remove properties interface, it never actually existed (except for
6371           on my HD...).
6372
6373 2004-12-13  David Schleef  <ds@schleef.org>
6374
6375         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6376         be NULL (bug #160220).
6377
6378 2004-12-13  David Schleef  <ds@schleef.org>
6379
6380         * configure.ac: remove all mmx stuff, because it's not used.
6381         * docs/random/ds/0.9-suggested-changes: additional notes
6382         * include/Makefile.am: we don't use these anymore
6383         * include/mmx.h: remove
6384         * include/sse.h: remove
6385
6386 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6387
6388         * docs/random/mimetypes:
6389           Add FOURCC code for h264 codec (VSSH)
6390           Add alternate FOURCC codes for h263 related codecs
6391
6392 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6393
6394         * docs/manual/programs.xml:
6395           Added more gst-launch examples.
6396
6397 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6398
6399         * gst/gstqueue.c: (gst_queue_handle_src_query):
6400           Check for availability again.
6401
6402 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6403
6404         * gst/gstcaps.c: (gst_caps_compare_structures):
6405           Simple caps go first. This has the nice side-effect of fixing an
6406           obscure warning.
6407
6408 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6409
6410         * gst/gstversion.h.in:
6411           Protect header.
6412
6413 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6414
6415         * gst/schedulers/gstoptimalscheduler.c:
6416         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6417         (gst_opt_scheduler_get_wrapper):
6418           When we're recursing into a chain run, only run the directly
6419           related group, not all queued ones. This will fix a possible
6420           deadlock in chains with more than two groups.
6421
6422 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6423
6424         * autogen.sh:
6425           remove patch if autopoint fails
6426
6427 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6428
6429         * docs/gst/gstreamer-sections.txt:
6430           Document Thomas' addition, fix build, make Luis the sheriff happy.
6431
6432 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6433
6434         * gst/gstplugin.c:
6435         * gst/gstplugin.h:
6436           add accessor for version field
6437
6438 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6439
6440         submitted by: Luca Ferretti <elle.uca@infinito.it>
6441
6442         * po/LINGUAS:
6443         * po/it.po:
6444           New tranlation added: Italian
6445
6446 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6447
6448         * gst/gstpad.c: (gst_pad_is_negotiated),
6449         (gst_pad_get_negotiated_caps):
6450           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6451           it doesn't actually check the contents), so be sure to hand it
6452           a RealPad else we'll crash.
6453
6454 2004-12-03  Wim Taymans  <wim@fluendo.com>
6455
6456         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6457         (gst_queue_link), (gst_queue_handle_src_query):
6458         Reverted to 1.110 until this makes the testsuite and various
6459         apps work.
6460
6461 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6462
6463         * docs/upload.mak: fix included CVS conflict strings
6464
6465 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6466
6467         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6468
6469         * gst/gstelement.c: (gst_element_error_full):
6470           Use g_error_new_literal because error text may have
6471           percentage signs in it. Fixes #160019.
6472
6473 2004-12-01  Benjamin Otte  <otte@gnome.org>
6474
6475         * gst/elements/gstbufferstore.c:
6476         (gst_buffer_store_add_buffer_func):
6477           don't try to make subbuffers bigger than they can be. (fixes
6478           #159970)
6479
6480 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6481
6482         * docs/gst/gstreamer-sections.txt:
6483         * docs/gst/tmpl/gstvalue.sgml:
6484           Add new function to docs to fix build.
6485
6486 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6487
6488         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6489         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6490         (_gst_pad_default_fixate_foreach):
6491         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6492         * gst/gstvalue.h:
6493           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6494           in some cases (arrays), the fixedness depends on the content.
6495         * gst/gstqueue.c: (gst_queue_handle_src_query):
6496           Check for availability before doing something.
6497
6498 2004-11-29  Wim Taymans  <wim@fluendo.com>
6499
6500         * testsuite/threads/Makefile.am:
6501         * testsuite/threads/signals.c: (gst_test_get_type),
6502         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6503         (gst_test_set_property), (gst_test_get_property),
6504         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6505         (gst_test_do_prop), (run_thread), (main):
6506         Added a bunch of testcases that show threadsafety bugs in glib.
6507
6508 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6509
6510         * docs/manual/programs.xml:
6511           Added a first batch of gst-launch examples, as provided by Ronald
6512           and others from the devel-mlist
6513
6514 2004-11-28  Benjamin Otte  <otte@gnome.org>
6515
6516         * gst/gstelement.c: (gst_element_negotiate_pads):
6517           simplify
6518         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6519         (gst_value_serialize_string), (gst_value_deserialize_string):
6520           add unwrapping of previously wrapped strings. Fix bug in wrapping
6521           while at it.
6522         * testsuite/caps/value_serialize.c: (test1),
6523         (test_string_serialization), (test_string_deserialization), (main):
6524           add tests for string (de)serialization
6525
6526 2004-11-26  Wim Taymans  <wim@fluendo.com>
6527
6528         * testsuite/threads/159566.c: (object_deep_notify), (main):
6529         * testsuite/threads/Makefile.am:
6530         Added testsuite to show bug #159566
6531
6532 2004-11-25  Wim Taymans  <wim@fluendo.com>
6533
6534         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6535         (gst_thread_child_state_change), (gst_thread_main_loop):
6536         Ref the thread object in the GThread mainloop. Break out of the
6537         thread mainloop if it holds the last ref. This properly exits
6538         the threads when disposing the thread from its own context. It
6539         also avoids possible deadlocks in the dispose function.
6540
6541 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6542
6543         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6544         it is necessary to wait.
6545
6546 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6547
6548         * docs/pwg/building-boiler.xml:
6549           Make description somewhat clearer.
6550
6551 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6552
6553         * docs/upload.mak:
6554           Apparently docs changed location on FDO's server.
6555
6556 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6557
6558         * docs/pwg/appendix-checklist.xml:
6559           Add some random notes on things to check when writing an element.
6560           This list can be extended as people see fit.
6561
6562 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6563
6564         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6565         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6566         pad. The queue will now wait until it is empty and forward the new
6567         caps to the source.
6568         * gst/gstbin.c (gst_bin_set_element_sched)
6569         (gst_bin_unset_element_sched): Make sure that all elements and
6570         links are registered and unregistered with the scheduler exactly
6571         once. This elaborates on a fix by Benjamin Otte, but
6572         guarantees that decoupled elements are also registered.
6573
6574 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6575
6576         * docs/manual/quotes.xml:
6577           add a quote
6578         * configure.ac:
6579         * gst/gst.c:
6580         * gst/gstinfo.c:
6581           add LIBDIR and move init message higher up so it's at the start
6582
6583 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6584
6585         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6586         * gstreamer.spec.in: add fair
6587
6588 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6589
6590         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6591         * gst/elements/gstidentity.c: (gst_identity_class_init):
6592           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6593           <teuf@gnome.org> (#157263).
6594         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6595         (gst_type_find_handle_src_query):
6596           Subtract size of internally stored data from position queries.
6597
6598 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6599
6600         * gst/schedulers/fairscheduler.c:
6601         * gst/schedulers/faircothreads.c:
6602         * gst/schedulers/faircothreads.h:
6603         New cothread based scheduler: Fair scheduler.
6604         * gst/schedulers/gthread-cothreads.h: 
6605         Add the standard #if around the whole file.
6606         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6607         compilation of the functions defined in this file. This is
6608         necessary to be able to use this file as a normal header.
6609         * gst/schedulers/Makefile.am: Add compiling support for fair
6610         scheduler.
6611         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6612         scheduler cothreads layer from documentation generation.
6613
6614 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6615
6616         * gst/autoplug/gstspideridentity.c:
6617         (gst_spider_identity_sink_loop_type_finding):
6618           Don't crash if that function is not implemented.
6619
6620 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6621
6622         * docs/pwg/advanced-types.xml:
6623           Another typo.
6624
6625 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6626
6627         * docs/pwg/intro-preface.xml:
6628           Hm, ok, so the brackets weren't really useful...
6629         * docs/pwg/other-ntoone.xml:
6630           Fix embarassing typo.
6631
6632 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6633
6634         * docs/pwg/intro-preface.xml:
6635           Rewrite preface.
6636
6637 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6638
6639         * docs/pwg/advanced-scheduling.xml:
6640         * docs/pwg/advanced-tagging.xml:
6641         * docs/pwg/advanced-types.xml:
6642         * docs/pwg/building-boiler.xml:
6643         * docs/pwg/building-chainfn.xml:
6644         * docs/pwg/building-signals.xml:
6645         * docs/pwg/building-state.xml:
6646         * docs/pwg/building-testapp.xml:
6647         * docs/pwg/intro-basics.xml:
6648         * docs/pwg/other-manager.xml:
6649         * docs/pwg/other-source.xml:
6650           Typo fixes.
6651         * docs/pwg/other-manager.xml:
6652           Add some first content. No example code yet.
6653         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6654           Remove double newlines.
6655
6656 2004-11-04  Wim Taymans  <wim@fluendo.com>
6657
6658         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6659         (remove_from_group), (normalize_group), (group_migrate_connected),
6660         (gst_opt_scheduler_iterate):
6661         * testsuite/schedulers/.cvsignore:
6662         * testsuite/schedulers/Makefile.am:
6663         * testsuite/schedulers/queue_link.c: (main):
6664         Added testcase for scheduler segfault.
6665         Fix scheduler segfault when removing a decoupled
6666         entry point as the last element from a group.
6667
6668 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6669
6670         * gst/gstmarshal.list: add missing marshaller, fixes build
6671
6672 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6673
6674         * docs/random/signal: added notes about using BOXED for GstBuffer
6675         signal marshallers, not POINTER
6676
6677 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6678
6679         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6680         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6681         POINTER=>BOXED changes to marshal GstBuffers
6682
6683 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6684
6685         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6686         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6687
6688 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6689
6690         * docs/gst/gstreamer-sections.txt:
6691         * docs/gst/tmpl/gstcaps.sgml:
6692         * docs/gst/tmpl/gsterror.sgml:
6693         * docs/gst/tmpl/gstinfo.sgml:
6694         * docs/gst/tmpl/gstmacros.sgml:
6695         * docs/gst/tmpl/gstutils.sgml:
6696         * docs/random/ensonic/interfaces.txt:
6697         * gst/gstinfo.h:
6698           added some more docs, removed two obsolete defines
6699
6700 2004-11-02  Kjartan Maraas <as at gnome.org>
6701
6702         reviewed by: Wim Taymans, Ronald Bultje.
6703
6704         * gst/cothreads.c: (cothread_create):
6705         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6706         (gst_bin_child_state_change_func):
6707         * gst/gstbuffer.c: (gst_buffer_span):
6708         * gst/gstelement.c: (gst_element_get_index),
6709         (gst_element_get_event_masks), (gst_element_get_query_types),
6710         (gst_element_get_formats):
6711         * gst/gsterror.c: (_gst_core_errors_init),
6712         (_gst_library_errors_init), (_gst_resource_errors_init),
6713         (_gst_stream_errors_init):
6714         * gst/gstobject.c: (gst_object_default_deep_notify):
6715         * gst/gstpad.c: (gst_pad_get_event_masks),
6716         (gst_pad_get_internal_links_default):
6717         * gst/gstplugin.c: (gst_plugin_register_func),
6718         (gst_plugin_get_module):
6719         * gst/gststructure.c: (gst_structure_get_string),
6720         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6721         (gst_structure_to_abbr):
6722         * gst/gstutils.c: (gst_print_element_args):
6723         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6724         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6725         Aplied part of patch #157127: Cleanup of issues reported by 
6726         sparse.
6727         Also do not try to use cothreads when there is no cothread
6728         context yet.
6729
6730 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6731
6732         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6733         (gst_opt_scheduler_iterate):
6734         Applied patch #154061. Running a pipeline in which an element 
6735         calls GST_ELEMENT_ERROR in the chain function, the opt 
6736         scheduler doesn't unref the chain so it never gets freed.
6737
6738 2004-11-02  Wim Taymans  <wim@fluendo.com>
6739
6740         * gst/gststructure.c: (gst_structure_get_abbrs),
6741         (gst_structure_from_abbr), (gst_structure_to_abbr):
6742         Remove that ugly if-then thing in the code that converts
6743         between strings and types.
6744
6745 2004-11-02  Wim Taymans  <wim@fluendo.com>
6746
6747         * gst/gstscheduler.c: (gst_scheduler_add_element),
6748         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6749         Aplied clock distribution patch, this should fix bug
6750         #148787.
6751
6752 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6753
6754         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6755
6756         * po/LINGUAS:
6757         * po/nb.po:
6758           Added Norwegian Bokmaal translation
6759
6760 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6761
6762         * tools/gst-inspect.c: (print_signal_info):
6763           print signal arguments as pointers if they are
6764
6765 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6766
6767         * docs/pwg/building-boiler.xml:
6768           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6769
6770 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6771
6772         * gst/parse/parse.l:
6773         * testsuite/parse/parse1.c: (main):
6774         Since parse can do 'element name=a:b' make 'a:b.' work as
6775         well. 
6776         Added testcase to verify fix.
6777
6778 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6779
6780         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6781         Use the realpad when printing the direction.
6782         Add extra \n when printing extensions of typefind factories.
6783
6784 2004-10-13  David Schleef  <ds@schleef.org>
6785
6786         * examples/manual/Makefile.am: $< isn't portable in Makefile
6787         rules.
6788
6789 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6790
6791         * docs/gst/tmpl/gstobject.sgml:
6792         * docs/gst/tmpl/gstplugin.sgml:
6793         * docs/gst/tmpl/gstpluginfeature.sgml:
6794         * docs/gst/tmpl/gstregistry.sgml:
6795         * docs/gst/tmpl/gstversion.sgml:
6796         * gst/gstbin.c:
6797           more api documentation
6798         * gst/gstplugin.c: (gst_plugin_register_func),
6799         (gst_plugin_check_file), (gst_plugin_load_file):
6800           better error signaling and logging
6801
6802 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6803
6804         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6805           Subtract current queue contents from position queries.
6806
6807 2004-10-11  Johan Dahlin  <johan@gnome.org>
6808
6809         * gst/gsturi.c (gst_uri_get_location): unescape string
6810         (gst_uri_construct): escape string.
6811
6812 2004-10-11  Benjamin Otte  <otte@gnome.org>
6813
6814         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6815         (gst_pad_try_set_caps_nonfixed):
6816           allow renegotiation of unconnected pads (as inside spider). Simply
6817           return OK if unconnected - mimic try_set_caps there.
6818
6819 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6820
6821         * gst/gstbin.c: (gst_bin_sync_children_state):
6822           Add missing break.
6823
6824 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6825
6826         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6827         Set element to EOS before sending EOS event
6828
6829 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6830
6831         * gst/elements/gsttypefindelement.c:
6832         (gst_type_find_element_handle_event):
6833         Handle EOS events when doing the transition from
6834         typefind to data passing. This should fix the
6835         infinite loops in short files.
6836
6837 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6838
6839         * gst/gstthread.c: (gst_thread_change_state),
6840         (gst_thread_child_state_change):
6841         Make sure no iteration happens while performing
6842         the state change as it could mess up the internal
6843         consistency of the thread state.
6844
6845 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6846
6847         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6848         (gst_thread_change_state), (gst_thread_child_state_change):
6849         Do not try to grab the iterate lock in the state change method
6850         when we are in the same thread as the iterate or else we
6851         could deadlock. Some other cleanups.
6852
6853 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6854
6855         * configure.ac:
6856           bump nano to cvs
6857
6858 === release 0.8.7 ===
6859
6860 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6861
6862         * configure.ac:
6863         * NEWS:
6864         * RELEASE:
6865         * configure.ac:
6866           releasing 0.8.7, "A Cruise"
6867
6868 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6869
6870         * docs/random/mimetypes:
6871         Add an entry for Sony ATRAC3 audio format with mime-type
6872         used by rmdemux et riff-read
6873
6874 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6875
6876         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6877         Push the buffer store instead of clearing it in case that
6878         the stream is not seekable.
6879
6880 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6881
6882         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6883         (gst_thread_main_loop):
6884         Lock the iteration and the state change so that automatic
6885         negotiation and fixation does not happen at the same time
6886         as the in stream negotiation.
6887
6888 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6889
6890         * configure.ac:
6891           bump nano to cvs
6892
6893 === release 0.8.6 ===
6894
6895 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6896
6897         * configure.ac:
6898         * NEWS:
6899         * RELEASE:
6900         * configure.ac:
6901           releasing 0.8.6, "Narc"
6902
6903 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6904
6905         * configure.ac:
6906           prerel bump
6907
6908 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6909
6910         patch by: Steve Lhomme
6911
6912         * gst/elements/gstfakesrc.c:
6913         * gst/elements/gstidentity.c:
6914         * gst/gstthread.c:
6915           Fix for #153881
6916
6917 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6918
6919         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6920         Fix threadsafety of the crc checking function.
6921
6922 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6923
6924         patch by: Ronald Bultje
6925
6926         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6927         (gst_type_find_element_handle_event),
6928         (gst_type_find_element_chain):
6929         * gst/elements/gsttypefindelement.h:
6930          #153657.
6931          Filter out discont event from seekable sources when typefind
6932          asks them to seek.  Fixes typefind with demuxers for
6933          avi, asf and matroska.
6934
6935 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6936
6937         * docs/gst/gstreamer-sections.txt:
6938         * gst/gstcaps.c:
6939         * gst/gstcaps.h:
6940         * gst/gstpad.c:
6941           Revert preferred caps: (#147789)
6942
6943 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6944
6945         * win32/dirent.c:
6946           fix a memory leak
6947
6948 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6949
6950         * configure.ac:
6951           bump for prerelease
6952
6953 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6954
6955         * docs/Makefile.am:
6956         * docs/manual/elements-api.xml:
6957           restructure so that common stuff is shown first
6958         * docs/manual/init-api.xml:
6959           convert to examples
6960         * docs/manual/manual.xml:
6961         * docs/manuals.mak:
6962         * docs/url.entities:
6963           link to API on the website, possibly override later in build
6964         * examples/manual/.cvsignore:
6965           ignore more
6966         * examples/manual/Makefile.am:
6967           add more examples
6968         * examples/manual/extract.pl:
6969           error out on failure
6970
6971 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6972
6973         * docs/gst/tmpl/gstthread.sgml:
6974         * docs/manual/init-api.xml:
6975         * examples/manual/Makefile.am:
6976           convert two code bits to examples
6977
6978 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6979
6980         * gst/gstelement.c: (gst_element_change_state):
6981           Well, actually, I was about to remove this insane assert when
6982           I noticed Wim already did that. A warning is nice so we can
6983           fix actual ugs (using --g-fatal-warnings and backtraces), so
6984           I added that instead.
6985
6986 2004-09-06  Wim Taymans  <wim@fluendo.com>
6987
6988         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6989         (gst_element_threadsafe_properties_post_run),
6990         (gst_element_set_state), (gst_element_change_state):
6991         Added extra refcounting around various places. 
6992
6993 2004-09-06  Wim Taymans  <wim@fluendo.com>
6994
6995         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6996         Fix debug info.
6997
6998 2004-09-06  Wim Taymans  <wim@fluendo.com>
6999
7000         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7001         (remove_from_group):
7002         Some more debug info.
7003
7004 2004-09-03  Wim Taymans  <wim@fluendo.com>
7005
7006         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
7007         (gst_fakesrc_init), (gst_fakesrc_set_clock),
7008         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
7009         (gst_fakesrc_get), (gst_fakesrc_change_state):
7010         * gst/elements/gstfakesrc.h:
7011         * gst/elements/gstidentity.c: (gst_identity_class_init),
7012         (gst_identity_init), (gst_identity_chain),
7013         (gst_identity_set_property), (gst_identity_get_property),
7014         (gst_identity_change_state):
7015         * gst/elements/gstidentity.h:
7016         Added datarate properties to limit the datarate.
7017
7018 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7019
7020         * gst/autoplug/gstspider.c: (plugin_init):
7021           don't set a rank. We don't want to autoplug by inserting spiders.
7022
7023 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7024
7025         * gst/autoplug/gstspider.c: (gst_spider_class_init),
7026         (gst_spider_identity_plug):
7027           add a template for spider's sink
7028         * gst/gst.c: (gst_register_core_elements):
7029           queue's rank should be NULL, we don't want spider to add it.
7030
7031 2004-08-18  David Schleef  <ds@schleef.org>
7032
7033         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
7034         * docs/libs/Makefile.am: same
7035         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
7036         * docs/random/ds/0.9-planning: random additions
7037         * docs/random/ds/0.9-suggested-changes: same
7038         * gst/gstxml.h: remove vestigal GstXMLNs definition
7039
7040         Preferred caps: (#147789)
7041         * docs/gst/gstreamer-sections.txt: Add symbols
7042         * docs/gst/tmpl/gstcaps.sgml: Add symbols
7043         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7044         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
7045         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
7046         (gst_caps_get_preferred), (gst_caps_set_preferred),
7047         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
7048         (gst_caps_use_preferred): Handle caps preferences
7049         * gst/gstcaps.h: Add caps preferences
7050         * gst/gstpad.c: (gst_pad_link_get_preferred),
7051         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
7052         (gst_pad_renegotiate), (gst_pad_guess_preferred),
7053         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
7054         negotiation.
7055
7056 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7057
7058         * gst/autoplug/gstspideridentity.c:
7059         (gst_spider_identity_request_new_pad):
7060         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
7061         (gst_aggregator_init):
7062         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
7063         (gst_fakesink_init):
7064         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
7065         (gst_fakesrc_init):
7066         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
7067         (gst_fdsink_init):
7068         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
7069         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
7070         (gst_filesink_init):
7071         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7072         (gst_filesrc_init):
7073         * gst/elements/gstidentity.c: (gst_identity_base_init),
7074         (gst_identity_init):
7075         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7076         (gst_multifilesrc_init):
7077         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7078         (gst_pipefilter_init):
7079         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7080         (gst_statistics_init):
7081         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7082         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7083           s/gst_pad_new/&_from_template/
7084           register pad templates in the base_init function
7085           add static pad template definitions
7086
7087 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7088
7089         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7090         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7091         * testsuite/refcounting/pad.c: (main):
7092         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7093           s/gst_pad_new/&_from_template/
7094           prepare deprecation of gst_pad_new
7095
7096 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7097
7098         patch by: Luca Ognibene <skaboy81@virgilio.it>
7099
7100         * gst/gstcaps.c:
7101         * gst/gstelement.c:
7102         * gst/gstpad.c:
7103         * gst/gstxml.c:
7104           fix memleaks.  Fixes #150001
7105
7106 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7107
7108         * docs/random/ds/0.9-suggested-changes:
7109           add notes - mostly about pad templates
7110
7111 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7112
7113         * win32/GStreamer.vcproj:
7114           temporary locale files are .gmo not .mo
7115
7116 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7117
7118         * configure.ac: bump nano to cvs
7119
7120 === release 0.8.5 ===
7121
7122 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7123
7124         * configure.ac:
7125           releasing 0.8.5, "Stuttgart"
7126         * NEWS:
7127         * RELEASE:
7128         * configure.ac:
7129         * docs/random/release:
7130           updates for release
7131
7132 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7133
7134         patch by: Wim Taymans (wim@fluendo.com)
7135
7136         * gst/gstbuffer.c:
7137         * gst/gstindex.h:
7138         * libs/gst/dataprotocol/dataprotocol.c:
7139           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7140
7141 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7142
7143         * Makefile.am:
7144         * win32/MANIFEST:
7145           add win32 dir to the build.  Fixes #149981.
7146
7147 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7148
7149         * configure.ac:
7150           bump libtool versioning
7151         * gst/gststructure.c:
7152           mark function as static
7153         * po/af.po:
7154         * po/az.po:
7155         * po/ca.po:
7156         * po/cs.po:
7157         * po/en_GB.po:
7158         * po/fr.po:
7159         * po/nl.po:
7160         * po/sq.po:
7161         * po/sr.po:
7162         * po/sv.po:
7163         * po/tr.po:
7164         * po/uk.po:
7165           translations update
7166         * win32/README.txt:
7167           trademark protection
7168
7169 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7170
7171         * configure.ac:
7172           fix GST_ORIGIN
7173           set GST_PACKAGE to source, and distinguish between release and other
7174         * tools/gst-inspect.c:
7175           print out plugin an element factory is part of so we see this info
7176
7177 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7178
7179         * docs/gst/gstreamer-sections.txt:
7180         * docs/gst/tmpl/gstbuffer.sgml:
7181         * docs/gst/tmpl/gstschedulerfactory.sgml:
7182           reorder docs a little, make GstBuffer's more sensible.
7183         * gst/gstbuffer.h:
7184           API: added GST_BUFFER_FLAG_DELTA_UNIT
7185         * gst/gstscheduler.c:
7186           comment API addition
7187
7188 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7189
7190         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7191           work with non-regular files that can be mmapped (like /dev/zero)
7192         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7193           get rid of typefinds that require a seek when we can't seek instead
7194           of trying them over and over again
7195         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7196           return non-zero failure value when the pipeline was interrupted or
7197           an error occurred
7198
7199 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7200
7201         * win32/config.h:
7202         * win32/GStreamer.vcproj:
7203           compile and install the locales
7204
7205 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7206
7207         * gst/gstvalue.c:
7208           fix a possible memory leak under Windows
7209
7210 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7211
7212         * win32/GStreamer.vcproj:
7213           fix a memory leak that occured under Windows
7214         * win32/gstreamer.def:
7215           add gst_scheduler_register
7216
7217 2004-08-11  Benjamin Otte  <otte@gnome.org>
7218
7219         * docs/gst/gstreamer-sections.txt:
7220         * gst/gstscheduler.c: (gst_scheduler_register):
7221         * gst/gstscheduler.h:
7222           API:
7223           add gst_scheduler_register shortcut similar to gst_element_register
7224         * gst/schedulers/entryscheduler.c: (plugin_init):
7225         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7226         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7227           use it
7228
7229 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7230
7231         * gst/gstvalue.h:
7232           fix a memory leak that occured under Windows
7233
7234 2004-08-10  Colin Walters  <walters@redhat.com>
7235
7236         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7237         Don't use O_EXCL to open temporary registry.  It will prevent
7238         registry creation if a temporary one already exists, which
7239         is unnecessary.
7240
7241 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7242
7243         * docs/gst/gstreamer-sections.txt:
7244         * docs/gst/tmpl/gstvalue.sgml:
7245           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7246
7247 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7248
7249         * win32/gstbytestream.vcproj:
7250         * win32/gstelements.vcproj:
7251         * win32/gstgetbits.vcproj:
7252         * win32/gst-inspect.vcproj:
7253         * win32/gst-launch.vcproj:
7254         * win32/gstoptimalscheduler.vcproj:
7255         * win32/GStreamer.vcproj:
7256         * win32/gst-register.vcproj:
7257         * win32/gstspider.vcproj:
7258           update the include and lib dirs to fit standard libraries as
7259           described in the Win32 manual
7260
7261 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7262
7263         * win32/config.h:
7264         * win32/gstversion.h:
7265           enable NLS again, push the version number for the coming 0.8.5 release
7266
7267 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7268
7269         * gst/gstvalue.h:
7270           export gst_type_XXX for windows DLLs
7271
7272 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7273
7274         * docs/faq/gst-uninstalled:
7275           fix PKG_CONFIG_PATH and PYTHONPATH
7276         * gst/schedulers/Makefile.am:
7277           cleanup
7278         * libs/gst/bytestream/bytestream.c:
7279           remove newline
7280         * po/LINGUAS:
7281         * po/sq.po:
7282           adding Albanian translation (Laurent Dhima)
7283         * po/cs.po:
7284           updated
7285
7286 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7287
7288         * po/ca.po:
7289         * po/sv.po:
7290           updated translations
7291
7292 2004-08-04  Benjamin Otte  <otte@gnome.org>
7293
7294         * tests/mass_elements.c: (main):
7295           allow specifying src and sink element explicitly, so I can test
7296           videotestsrc instead of fakesrc
7297
7298 2004-08-04  Benjamin Otte  <otte@gnome.org>
7299
7300         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7301         (gst_structure_id_empty_new), (gst_structure_empty_new),
7302         (gst_structure_copy):
7303           add gst_structure_id_empty_new_with_size to allow preallocating
7304           value array sizes. Use this in gst_structure_copy to get rid of
7305           reallocs.
7306           don't do quark=>string=>quark when copying structures
7307
7308 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7309
7310         * docs/manual/win32.xml:
7311         * win32/README.txt:
7312           update documentation with the clean version of dependencies
7313
7314 2004-08-03  Benjamin Otte  <otte@gnome.org>
7315
7316         * gst/schedulers/entryscheduler.c:
7317         (gst_entry_scheduler_remove_element):
7318           fix for GST_DISABLE_DEBUG
7319         * tools/gst-launch.c: (print_tag):
7320           fixes for G_DISABLE_ASSERT
7321
7322 2004-08-03  Benjamin Otte  <otte@gnome.org>
7323
7324         * gst/gst.c: (gst_register_core_elements):
7325           fix for G_DISABLE_ASSERT
7326         * gst/gstinfo.c: (__gst_in_valgrind):
7327           add for GST_DISABLE_DEBUG
7328
7329 2004-08-03  Benjamin Otte  <otte@gnome.org>
7330
7331         * gst/parse/parse.l:
7332           fix for G_DISABLE_ASSERT
7333
7334 2004-08-03  Wim Taymans  <wim@fluendo.com>
7335
7336         * gst/gstbin.c: (gst_bin_get_type),
7337         (gst_bin_child_state_change_func):
7338         * gst/gstthread.c: (gst_thread_change_state):
7339         Backported some debug logging from a reverted patch
7340         Don't try to destroy the thread twice. Added some more
7341         debugging in GstThread. Unlock and signal even if we
7342         are in the thread context.
7343
7344 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7345
7346         * po/uk.po:
7347           updated translation
7348
7349 2004-07-30  David Schleef  <ds@schleef.org>
7350
7351         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7352
7353 2004-07-29  David Schleef  <ds@schleef.org>
7354
7355         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7356         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7357
7358 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7359
7360         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7361         (gst_bin_add_func), (gst_bin_remove_func),
7362         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7363         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7364         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7365         (gst_bin_sync_children_state):
7366         * gst/gstbin.h:
7367         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7368         (gst_thread_change_state):
7369         * testsuite/states/Makefile.am:
7370           revert state change patches as agreed so we can rework them
7371           gradually
7372
7373 2004-07-29  Benjamin Otte  <otte@gnome.org>
7374
7375         * libs/gst/control/Makefile.am:
7376           link to libgstreamer (fixes Debian bug 262019, see
7377           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7378
7379 2004-07-29  Wim Taymans  <wim@fluendo.com>
7380
7381         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7382         (check_from_fraction_convert), (transform_test), (main):
7383         Make the test less pedantic about float roundoff errors.
7384
7385 2004-07-29  Benjamin Otte  <otte@gnome.org>
7386
7387         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7388         (gst_filesrc_srcpad_event):
7389           make seek events to before start/after end of file not fail, but
7390           seek to start/end instead
7391         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7392           add more output
7393
7394 2004-07-29  Benjamin Otte  <otte@gnome.org>
7395
7396         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7397           check that caps are fixed
7398         * gst/gstpad.c: (gst_pad_template_new):
7399           don't try to simplify caps, costs too much time on gst_init
7400         * gst/gstplugin.c: (gst_plugin_add_feature):
7401           G_ERROR if features are added twice
7402         * gst/gsttypefind.c: (gst_type_find_register):
7403         * gst/gstelementfactory.c: (gst_element_register):
7404           don't add features twice
7405         * docs/random/ds/0.9-suggested-changes:
7406           add note about possible gst_init optimization
7407
7408 2004-07-28  David Schleef  <ds@schleef.org>
7409
7410         * testsuite/elements/Makefile.am:
7411         * testsuite/elements/struct_i386.h:
7412         * testsuite/elements/struct_size.c: (main):  A little test
7413         to keep distcheck from working if someone changes a structure
7414         size accidentally.
7415
7416 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7417
7418         * docs/libs/Makefile.am:
7419         * docs/libs/gstreamer-libs-docs.sgml:
7420         * docs/libs/gstreamer-libs-sections.txt:
7421         * docs/libs/tmpl/gstbytestream.sgml:
7422         * docs/libs/tmpl/gstcontrol.sgml:
7423         * docs/libs/tmpl/gstdataprotocol.sgml:
7424         * docs/libs/tmpl/gstgetbits.sgml:
7425         * libs/gst/bytestream/Makefile.am:
7426         * libs/gst/bytestream/bytestream.c:
7427         * libs/gst/bytestream/bytestream.h:
7428         * libs/gst/control/Makefile.am:
7429         * libs/gst/dataprotocol/Makefile.am:
7430         * libs/gst/getbits/Makefile.am:
7431         * libs/gst/getbits/getbits.h:
7432           various doc and style fixes, adding bytestream to libs docs.
7433
7434 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7435
7436         * docs/gst/gstreamer-docs.sgml:
7437         * docs/libs/Makefile.am:
7438         * docs/libs/gstreamer-libs-docs.sgml:
7439         * docs/libs/gstreamer-libs-sections.txt:
7440         * libs/gst/control/dparam.c:
7441           more doc fixes.  gst-libs docs now build the same way as gst.
7442
7443 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7444
7445         * configure.ac:
7446         * testsuite/Makefile.am:
7447         * testsuite/bins/Makefile.am:
7448         * testsuite/caps/Makefile.am:
7449         * testsuite/cleanup/Makefile.am:
7450         * testsuite/clock/Makefile.am:
7451         * testsuite/debug/Makefile.am:
7452         * testsuite/dlopen/Makefile.am:
7453         * testsuite/dynparams/Makefile.am:
7454         * testsuite/elements/.cvsignore:
7455         * testsuite/elements/Makefile.am:
7456         * testsuite/enumcaps/Makefile.am:
7457         * testsuite/enumcaps/enumcaps.c:
7458         * testsuite/ghostpads/Makefile.am:
7459         * testsuite/indexers/Makefile.am:
7460         * testsuite/negotiation/Makefile.am:
7461         * testsuite/parse/Makefile.am:
7462         * testsuite/plugin/Makefile.am:
7463         * testsuite/refcounting/Makefile.am:
7464         * testsuite/schedulers/.cvsignore:
7465         * testsuite/states/Makefile.am:
7466         * testsuite/tags/Makefile.am:
7467         * testsuite/threads/Makefile.am:
7468           fold enumcaps into caps dir
7469           clean up Makefile.am's for testsuite
7470
7471 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7472
7473         * docs/gst/Makefile.am:
7474         * docs/libs/Makefile.am:
7475           clean up docs build.  Fixes needless rebuilding of template files.
7476
7477 2004-07-28  Wim Taymans  <wim@fluendo.com>
7478
7479         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7480         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7481         Make sure that a bin state change tries to keep the children
7482         in sync. 
7483         Added debug logging to the thread.
7484
7485 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7486
7487         * win32/GStreamer.vcproj:
7488         * win32/gstreamer.def:
7489           more exports for the plugins
7490
7491 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7492
7493         * win32/gstgetbits.vcproj:
7494         * win32/gstgetbits.def:
7495         * win32/msvc71.sln:
7496           add support for the getbits plugin
7497
7498 2004-07-27  Wim Taymans  <wim@fluendo.com>
7499
7500         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7501         (gst_value_transform_fraction_double), (_gst_value_initialize):
7502         * testsuite/caps/Makefile.am:
7503         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7504         (check_from_fraction_convert), (transform_test), (main):
7505         Added transform functions between double and fraction.
7506         Added testcase to verify transforms
7507
7508 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7509
7510         * win32/GStreamer.vcproj:
7511           rename GStreamer-0.8.lib to libgstreamer.lib
7512
7513 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7514
7515         * win32/gstelements.vcproj:
7516         * win32/gstoptimalscheduler.vcproj:
7517           fixes for the Release build
7518
7519 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7520
7521         * win32/config.h:
7522           update the version number
7523
7524 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7525
7526         * win32/GStreamer.vcproj:
7527           add gstinterface to the build
7528
7529 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7530
7531         * win32/gstreamer.def:
7532           add many definitions needed by plugins,
7533           GST_CAT_DEFAULT only available in the Debug build ?
7534
7535 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7536
7537         * gst/gstelement.c: (gst_element_set_eos_recursive):
7538           various whitespace fixes.
7539           doc fix, fixes #148497
7540
7541 2004-07-25  Benjamin Otte  <otte@gnome.org>
7542
7543         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7544           don't delay links on the sink elements, it causes unnegotiated
7545           links.
7546         * gst/elements/gsttypefindelement.c:
7547         (gst_type_find_element_base_init):
7548           add our padtemplates, we indeed do have some.
7549         * gst/elements/gsttypefindelement.c:
7550         (gst_type_find_element_handle_event),
7551         (gst_type_find_element_chain):
7552           don't push data when typefinding failed.
7553         * gst/gstpad.c: (gst_pad_link_fixate):
7554           check that no fixate function returns empty caps.
7555         * gst/gstpad.c: (gst_pad_push):
7556           check that the link is negotiated before data gets pushed.
7557         * tools/gst-register.c: (main):
7558           don't assert (fixes #148283)
7559
7560 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7561
7562         * docs/gst/gstreamer-sections.txt:
7563         * docs/gst/tmpl/gstconfig.sgml:
7564           add GST_PLUGIN_EXPORT definition
7565
7566 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7567
7568         * gst/gstplugin.h:
7569         * gst/gstconfig.h.in:
7570         * win32/gstconfig.h:
7571         * win32/gstelements.def:
7572         * win32/gstelements.vcproj:
7573         * win32/gstoptimalscheduler.def:
7574         * win32/gstoptimalscheduler.vcproj:
7575         * win32/gstspider.def:
7576         * win32/gstspider.vcproj:
7577           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7578
7579 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7580
7581         * docs/gst/gstreamer-sections.txt:
7582           remove GST_CAT_DEFAULT because the type has changed
7583
7584 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7585
7586         * win32/gstbytestream.vcproj:
7587         * win32/gstelements.vcproj:
7588         * win32/gst-inspect.vcproj:
7589         * win32/gst-launch.vcproj:
7590         * win32/gstoptimalscheduler.vcproj:
7591         * win32/GStreamer.vcproj:
7592         * win32/gst-register.vcproj:
7593         * win32/gstspider.vcproj:
7594         * win32/msvc71.sln:
7595           Copy the files where needed after building, The testsuite will be
7596           built separately
7597
7598 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7599
7600         * win32/config.h:
7601         * win32/README.txt:
7602         * docs/manual/win32.xml:
7603         Fixed the plugin and GStreamer location
7604
7605 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7606
7607         * win32/gstreamer.def:
7608         More exports for the plugins
7609
7610 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7611
7612         * gst/gstinfo.h:
7613         Marc was right, we need to export literally GST_CAT_DEFAULT
7614
7615 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7616
7617         * win32/config.h:
7618         NLS crashes in gettext, disabled until this is solved
7619
7620 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7621
7622         * win32/gst-inspect.vcproj:
7623         * win32/gst-launch.vcproj:
7624         Should use NLS when available
7625
7626 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7627
7628         * gst/registries/gstxmlregistry.c:
7629         removing the file doesn't seem to be a good idea on Linux
7630
7631 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7632
7633         * gst/registries/gstxmlregistry.c:
7634         Remove the registry before renaming the tempfile (needed for Windows)
7635
7636 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7637
7638         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7639         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7640         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7641         * gst/elements/gstmultifilesrc.h:
7642         Added newmedia property so it generates newmedia events between each
7643         file when property is set, as well as fixed eos handling
7644
7645 2004-07-22  David Schleef  <ds@schleef.org>
7646
7647         * gst/gststructure.c: (gst_structure_id_empty_new),
7648         (gst_structure_empty_new):  Set type field correctly.
7649         * gst/gststructure.h: Check type field correctly.
7650         * testsuite/caps/Makefile.am:
7651         * testsuite/caps/structure.c: (test1), (main): Add a very small
7652         test for structures.
7653
7654 2004-07-22  David Schleef  <ds@schleef.org>
7655
7656         * docs/random/ds/0.9-suggested-changes: more comments
7657         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7658
7659 2004-07-22  Benjamin Otte  <otte@gnome.org>
7660
7661         * gst/gstelementfactory.c: (gst_element_register):
7662           set the factory in the class struct, so gst_element_get_factory
7663           actually works
7664         * gst/parse/grammar.y:
7665           set element to playing when it gets unlocked as we can't rely on the
7666           bin state - all elements in the bin state might still be locked in
7667           NULL)
7668
7669 2004-07-22  Benjamin Otte  <otte@gnome.org>
7670
7671         * gst/gstelement.c: (gst_element_set_state_func):
7672           make this a static function
7673
7674 2004-07-22  Wim Taymans  <wim@fluendo.com>
7675
7676         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7677         (gst_opt_scheduler_pad_link):
7678         fix 147894-2 and the group_link problem.
7679
7680 2004-07-22  Wim Taymans  <wim@fluendo.com>
7681
7682         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7683         (handoff_identity), (main):
7684         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7685         (handoff_identity), (main):
7686         * testsuite/schedulers/Makefile.am:
7687         * testsuite/schedulers/group_link.c: (main):
7688         Show bug in scheduler when linking chain and loop based element 
7689         where the chain based element was not yet in a group.
7690
7691 2004-07-21  Benjamin Otte  <otte@gnome.org>
7692
7693         * gst/.cvsignore:
7694         * gst/autoplug/.cvsignore:
7695         * gst/elements/.cvsignore:
7696         * gst/indexers/.cvsignore:
7697         * libs/gst/bytestream/.cvsignore:
7698         * libs/gst/control/.cvsignore:
7699         * libs/gst/getbits/.cvsignore:
7700         * testsuite/states/.cvsignore:
7701         * testsuite/threads/.cvsignore:
7702           keep this up to date, since I seem to be the only one who cares
7703           about not missing files on commits (editor's note: no you don't,
7704           but feel free to change them at the time you add stuff instead
7705           of later on)
7706
7707 2004-07-21  Benjamin Otte  <otte@gnome.org>
7708
7709         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7710         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7711         (gst_bin_child_state_change_func), (set_kid_state_func),
7712         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7713           make state changes work correctly and reentrant (so removing
7714           elements from bins during state changes of bins doesn't cause
7715           segfaults or even wrong states)
7716           add debugging category and debugging output to print children states
7717         * gst/gstbin.c: (gst_bin_dispose): 
7718           add some assertion checks
7719         * gst/gstbin.h:
7720         * gst/gstbin.c: (gst_bin_sync_children_state):
7721           deprecate this function - it just does gst_bin_set_state (bin,
7722           GST_STATE (bin)) 
7723         * testsuite/threads/queue.c: (main):
7724           don't use gst_bin_sync_children_state anymore
7725         * testsuite/states/Makefile.am:
7726         * testsuite/states/bin.c:
7727           test that the state changes of bins work as expected
7728         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7729           some adjustments to change states correctly, too
7730         * gst/gstthread.c: (gst_thread_change_state):
7731           don't enable/disable "threadsafe" properties, they're unused and
7732           cause random segfaults
7733         * testsuite/threads/Makefile.am:
7734           the queue check randomly passes now, ignore it
7735
7736 2004-07-21  Benjamin Otte  <otte@gnome.org>
7737
7738         * gst/gstpad.c:
7739           check if data is NULL before outputting debug info. (fixes #145100)
7740
7741 2004-07-21  Benjamin Otte  <otte@gnome.org>
7742
7743         * gst/schedulers/entryscheduler.c:
7744         (gst_entry_scheduler_loop_wrapper),
7745         (gst_entry_scheduler_chain_wrapper),
7746         (gst_entry_scheduler_get_wrapper):
7747           reset the state when the cothread starts, so we don't get assertion
7748           failures on restarting of cothreads
7749
7750 2004-07-20  Benjamin Otte  <otte@gnome.org>
7751
7752         * gst/gstelement.c: (gst_element_link_pads_filtered):
7753           use correct sinkpad, if only sinkpad is specified, but not srcpad
7754           (fixes #147889)
7755         * gst/gstelement.c: (gst_element_set_state_func),
7756         (gst_element_change_state): ref/unref the element, signal handlers
7757         could get rid of the element otherwise
7758
7759 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7760
7761         * docs/random/ds/0.9-suggested-changes:
7762           Make note about renaming fixed-list to array.
7763         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7764         (_gst_value_initialize):
7765           Add array intersections.
7766         * testsuite/caps/intersect2.c: (main):
7767           Add test for array intersections.
7768
7769 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7770
7771         * configure.ac: back to cvs
7772
7773 === release 0.8.4 ===
7774
7775 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7776
7777         * configure.ac:
7778           releasing 0.8.4, "Paella"
7779           bump libtool versioning
7780
7781 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7782
7783         * po/LINGUAS:
7784         * po/ca.po:
7785           adding Catalan translation (Jordi Mallach)
7786
7787 2004-07-20  Wim Taymans  <wim@fluendo.com>
7788
7789         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7790         (handoff_identity), (main):
7791         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7792         (handoff_identity), (main):
7793         * testsuite/schedulers/Makefile.am:
7794         Added failing testcase for variant of #147894
7795
7796 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7797
7798         patch by: David Moore
7799
7800         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7801         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7802         (group_migrate_connected):
7803         * testsuite/schedulers/Makefile.am:
7804           fix for #142813 (Deadlock in optimal scheduler)
7805
7806 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7807
7808         patch by: Wim Taymans
7809
7810         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7811         (gst_opt_scheduler_schedule_run_queue),
7812         (gst_opt_scheduler_get_wrapper), (get_group),
7813         (group_migrate_connected):
7814         * testsuite/schedulers/Makefile.am:
7815           fix for #147819 (Add some checks in the opt scheduler)
7816
7817 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7818
7819         patch by: Benjamin Otte
7820
7821         * gst/gstelementfactory.c: (__gst_element_details_set):
7822           fix for #147929: running gst-register in non-utf8 locale can cause
7823           invalid registry
7824
7825 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7826
7827         patch by: Wim Taymans
7828
7829         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7830         (group_has_element), (element_get_reachables_func),
7831         (group_migrate_connected):
7832           fix for #147894 (opt scheduler decoupled elements mismanagement)
7833         * testsuite/schedulers/Makefile.am:
7834           testsuite app now passes
7835
7836 2004-07-19  Wim Taymans  <wim@fluendo.com>
7837
7838         * testsuite/schedulers/147819.c: (handoff_identity1),
7839         (handoff_identity2), (main):
7840         * testsuite/schedulers/Makefile.am:
7841         Added testcase for bug 147819
7842
7843 2004-07-19  Wim Taymans  <wim@fluendo.com>
7844
7845         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7846         (handoff_identity), (main):
7847         * testsuite/schedulers/Makefile.am:
7848         Added testcase for bug 147894
7849
7850 2004-07-16  Wim Taymans  <wim@fluendo.com>
7851
7852         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7853         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7854         * testsuite/schedulers/Makefile.am:
7855         Added testsuite for bug 142183 in its two incarnations. Refcount
7856         is not increased for scheduled elements and threadsafe properties
7857         mutexes are not properly unlocked.
7858
7859 2004-07-16  Wim Taymans  <wim@fluendo.com>
7860
7861         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7862         (create_chain), (destroy_chain), (create_group), (destroy_group),
7863         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7864         (group_dec_link), (gst_opt_scheduler_pad_link),
7865         (group_inc_links_for_element), (group_migrate_connected):
7866         Call group_inc_link with the proper src->sink ordering -- 
7867         break this, and we break sort_chain. patch from wingo for bug
7868         147713.
7869         Partially revert patch 1.89. When adding a loop based element to 
7870         the scheduler, the links to other groups are automatically followed
7871         and incremented. This should not happen because the bin will call
7872         pad_link explicitly for those connection, resulting in them counted 
7873         twice. Results in assertion failure on pipeline cleanup.
7874
7875 2004-07-16  Wim Taymans  <wim@fluendo.com>
7876
7877         * testsuite/schedulers/143777-2.c: (main):
7878         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7879         (main):
7880         * testsuite/schedulers/Makefile.am:
7881         Added cleanup code to testcase 143777-2.
7882         Added testcase to show bug 147713, does not really show the
7883         deadlock as I can't figure out how to trigger it, but it does
7884         demonstrate bad ordering in the scheduler.
7885
7886 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7887
7888         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7889           change strndup to g_strndup.  Fixes #147707
7890
7891 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7892
7893         * po/af.po:
7894         * po/az.po:
7895         * po/cs.po:
7896         * po/en_GB.po:
7897         * po/fr.po:
7898         * po/nl.po:
7899         * po/sr.po:
7900         * po/sv.po:
7901         * po/tr.po:
7902         * po/uk.po:
7903           updated translations
7904
7905 2004-07-16  Benjamin Otte  <otte@gnome.org>
7906
7907         * gst/gstvalue.c: (gst_greatest_common_divisor):
7908           use ints and return ints, fractions only use ints, too, so this
7909           avoids accidently casting multiplications to unsigned
7910         (gst_value_lcopy_fraction): it's ints, not uint32
7911         (gst_value_set_fraction): disallow minint, multiplying and negation
7912           are broken with it
7913         (gst_value_fraction_multiply): fix to make large numbers work and get
7914         rid of the assumption that the multiplication of two ints fits an
7915         int64 - dunno if that's true for all systems
7916         * testsuite/caps/Makefile.am:
7917         * testsuite/caps/fraction-multiply-and-zero.c:
7918         (check_multiplication), (check_equal), (zero_test), (main):
7919           add tests for all the stuff above
7920         * testsuite/caps/value_compare.c: (test1):
7921           fix comment
7922         * tests/.cvsignore:
7923         * testsuite/caps/.cvsignore:
7924         * testsuite/debug/.cvsignore:
7925         * testsuite/dlopen/.cvsignore:
7926         * testsuite/states/.cvsignore:
7927           get up to date
7928
7929 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7930
7931         * docs/manual/bins-api.xml:
7932         * docs/manual/factories.xml:
7933         * docs/manual/helloworld.xml:
7934         * docs/manual/links-api.xml: 
7935           fixes for out of date info, incorrect info and grammar
7936
7937 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7938
7939         * docs/manual/pads.xml:
7940         * docs/manual/pads-api.xml: grammar fix
7941
7942 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7943
7944         * docs/manual/pads-api.xml: typo + grammar fix
7945
7946 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7947
7948         * docs/gst/gstreamer-sections.txt:
7949           add new symbols
7950         * docs/gst/tmpl/gstelement.sgml:
7951         * docs/gst/tmpl/gstpad.sgml:
7952         * docs/gst/tmpl/gsttypes.sgml:
7953         * docs/gst/tmpl/gstvalue.sgml:
7954           update docs
7955         * gst/gststructure.c: (gst_structure_set_valist),
7956         (gst_structure_from_abbr), (gst_structure_to_abbr):
7957         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7958         (gst_greatest_common_divisor), (gst_value_init_fraction),
7959         (gst_value_copy_fraction), (gst_value_collect_fraction),
7960         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7961         (gst_value_get_fraction_numerator),
7962         (gst_value_get_fraction_denominator),
7963         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7964         (gst_value_deserialize_fraction),
7965         (gst_value_transform_fraction_string),
7966         (gst_value_transform_string_fraction),
7967         (gst_value_compare_fraction), (_gst_value_initialize):
7968         * gst/gstvalue.h:
7969           adding GstFraction GValue type, get/set, and multiply
7970         * testsuite/caps/Makefile.am:
7971         * testsuite/caps/fraction.c: (test), (main):
7972         * testsuite/caps/string-conversions.c: (main):
7973         * testsuite/caps/value_compare.c: (test1), (main):
7974           add regression tests for GstFraction
7975
7976 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7977         
7978         * docs/manual/init-api.xml: Grammar fix
7979
7980 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7981
7982         * docs/manual/states.xml: Fix inconsistent information
7983
7984 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7985
7986         * gst/gstelement.c: (gst_element_set_state):
7987         * gst/gstpad.c: (gst_pad_try_set_caps):
7988         * gst/gststructure.c:
7989         * gst/gstthread.c: (gst_thread_child_state_change):
7990         * gst/gstvalue.c: (gst_value_compare_double):
7991         * gst/gstvalue.h:
7992         * testsuite/parse/parse1.c: (main):
7993           debugging additions and style cleanups
7994
7995 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7996
7997         * docs/manual/states.xml: Grammar fix
7998
7999 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8000
8001         * docs/manual/pads.xml: Grammar fix
8002
8003 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8004
8005         * docs/manual/elements.xml: Fixed image reference
8006
8007 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8008
8009         * docs/manual/goals.xml: Grammar fix
8010
8011 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8012
8013         * docs/manual/motivation.xml:
8014         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
8015
8016 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8017
8018         * docs/manual/motivation.xml: Fix spelling
8019
8020 2004-07-15  Benjamin Otte  <otte@gnome.org>
8021
8022         * gst/gstelement.h: 
8023           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
8024           strings.
8025         * gst/gstelement.c (gst_element_class_init):
8026           GError's are boxed, not objects
8027         * gst/gstmarshal.list:
8028           update list for the fixed error signal
8029
8030 2004-07-14  Andy Wingo  <wingo@pobox.com>
8031
8032         * gst/gsttag.c: Add a tag merge func for pointers. The header was
8033         there all along, but the function wasn't. (guile-gstreamer's build
8034         system uses the address of the function -- I wasn't actually
8035         trying to use this.)
8036
8037 2004-07-14  Andy Wingo  <wingo@pobox.com>
8038
8039         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
8040         as gst_pad_proxy_pad_link) just link to every other pad when they
8041         are called. In the case where the graph has cycles, this will mean
8042         that a call to try_set_caps will recurse. Allow this recursion
8043         and return OK, while we wait for the first try_set_caps to give a
8044         proper return value.
8045         (gst_pad_link_call_link_functions): Since this function is the
8046         only one to set the NEGOTIATING flag on a pad, if the flag is set
8047         it means that the link functions have indirectly recursed. If this
8048         happens, error out to avoid infinite recursion and an eventual
8049         SEGV.
8050         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
8051         (gst_pad_proxy_getcaps): Intersect the result with the template
8052         caps to ensure that the return value is valid.
8053
8054 2004-07-14  Andy Wingo  <wingo@pobox.com>
8055
8056         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
8057         one refcount, the calling function is the owner of the buffer.
8058
8059 2004-07-14  Wim Taymans  <wim@fluendo.com>
8060
8061         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8062         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8063         Fix stupid warning when an element is to be migrated but
8064         is already migrated.
8065
8066 2004-07-14  Wim Taymans  <wim@fluendo.com>
8067
8068         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8069         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8070         Make sure that a single non-loop-based element does not 
8071         end up in a group. This fixes the testsuite again.
8072
8073 2004-07-14  Wim Taymans  <wim@fluendo.com>
8074
8075         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8076         (add_to_group), (merge_groups), (schedule_group),
8077         (gst_opt_scheduler_get_wrapper), (group_elements),
8078         (group_dec_link), (gst_opt_scheduler_pad_link),
8079         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8080         (gst_opt_scheduler_iterate):
8081         move isolated groups to a new chain.
8082         Emit a warning instead of segfaulting in some error cases.
8083         Fix a bug where the link count between groups was not calculated 
8084         correctly. Fixes #144510.
8085
8086 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8087         * gst/elements/gstfilesrc.c:
8088           Binary files support under Windows now OK
8089       
8090 2004-07-13  Benjamin Otte  <otte@gnome.org>
8091
8092           compatibility fixes for Solaris 8/gcc 2.95
8093         * configure.ac:
8094           include libintl libs in LDFLAGS
8095         * gstvalue.c (gst_value_deserialize_buffer):
8096           cast isxdigit stuff to int to silence compiler warning
8097
8098 2004-07-12  Benjamin Otte  <otte@gnome.org>
8099
8100         * gst/gsttypes.h:
8101           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8102           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8103           just causes support madness
8104         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8105           make it work without this
8106         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8107         (gst_file_index_commit):
8108           glib IO channels don't want binary mode
8109         * testsuite/bytestream/filepadsink.c: (main):
8110         * testsuite/bytestream/test1.c: (read_param_file):
8111           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8112
8113 2004-07-12  Benjamin Otte  <otte@gnome.org>
8114
8115         * gst/gstelement.c: (gst_element_class_init),
8116         (gst_element_set_state), (gst_element_set_state_func):
8117           virutalize gst_element_set_state, use set_state member in class
8118           struct that was already added in 0.7 for this.
8119         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8120         (gst_bin_change_state):
8121           make gst_bin_foreach works similar to other foreach functions, plug
8122           memleaks in it. Make functions using it work with the new approach.
8123           Document gst_bin_foreach, so it can be exported if we want to
8124         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8125           use virtualized set_state to make set_state on bins set the state of
8126           all its children.
8127
8128 2004-07-12  Benjamin Otte  <otte@gnome.org>
8129
8130         * configure.ac:
8131           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8132           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8133         * gst/gstpad.c: (gst_pad_alloc_buffer):
8134           allow buffer_alloc functions to return NULL and allocate a normal
8135           buffer in that case
8136
8137 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8138         * gst/elements/gstfilesink.c:
8139         * gst/elements/gstfilesrc.c:
8140         * gst/indexers/gstfileindex.c:
8141         * gst/gsttypes.h:
8142         * testsuite/bytestream/filepadsink.c:
8143         * testsuite/bytestream/test1.c:
8144           Handle binary files under Windows
8145
8146 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8147         * docs/manual/win32.xml:
8148         * win32/config.h:
8149         * win32/gst-register.vcproj:
8150         * win32/gstreamer.def:
8151           Update to another gettext public build
8152
8153 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8154         * gst/gstplugin.c:
8155           Fix an impossible C syntax
8156         * win32/config.h:
8157           Disable i18n under Windows for the moment
8158         * win32/gst-register.vcproj:
8159           Use this configuration
8160
8161 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8162         * docs/manual/quotes.xml:
8163           Keep the quotes file alive
8164         * docs/random/ds/0.9-suggested-changes:
8165           Add the suggestion of including a 'rowstride' as part of video
8166           format caps
8167
8168 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8169
8170         * gst/gstelement.c: (gst_element_set_state),
8171         (gst_element_change_state):
8172           d'oh.  Set PENDING state correctly before forcing bin to change.
8173         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8174         (gst_structure_parse_fixed_list):
8175         * gst/schedulers/gstoptimalscheduler.c:
8176         (gst_opt_scheduler_state_transition):
8177         * testsuite/states/parent.c: (main):
8178           remove comment now that it's fixed.
8179
8180 2004-07-11  Benjamin Otte  <otte@gnome.org>
8181
8182         * gst/gstclock.h:
8183           GST_SECOND shouldn't cause a conversion to unsigned.
8184         * testsuite/clock/.cvsignore:
8185         * testsuite/clock/Makefile.am:
8186         * testsuite/clock/signedness.c: (main):
8187           make sure it never will again
8188
8189 2004-07-11  Andy Wingo  <wingo@pobox.com>
8190
8191         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8192         whose state is higher than the bin state, raise the bin state to
8193         ensure that bin state := highest child state.
8194         
8195 2004-07-11  Andy Wingo  <wingo@pobox.com>
8196
8197         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8198         procedure on the children of a bin. Assumes that the procedure can
8199         change the set of children.
8200         (set_kid_state_func): New static function.
8201         (gst_bin_change_state): Use gst_bin_foreach to call
8202         set_kid_state_func. Fixes a bug: if a child had a state-change
8203         handler that removes it from the bin, there would be a segfault.
8204         Hopefully it should also work in the case where the state-change
8205         handler on one child adds or removes other children. In any case,
8206         fixes should go to gst_bin_foreach.
8207
8208 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8209
8210         * gst/gstelement.c: (gst_element_set_state):
8211           compatibility fix for latest plugins release.  Change loop back
8212           to while {}
8213
8214 2004-07-09  Wim Taymans  <wim@fluendo.com>
8215
8216         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8217         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8218         (gst_thread_main_loop):
8219         Since remove is virtual in GstBin we must not assume the 
8220         elements GList to have anothing useful.
8221         Add some more logging to GstThread and be a bit more paranoid
8222         when resetting the scheduler.
8223         Set the state of the bin to NULL before removing the children.
8224
8225 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8226
8227         * testsuite/threads/Makefile.am:
8228         * testsuite/threads/threadg.c:
8229           added test to check if problem when removing all elements from a
8230           GstThread before setting GstThread state to NULL
8231
8232 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8233
8234         * docs/gst/tmpl/gstelement.sgml:
8235         * docs/gst/tmpl/gsttypes.sgml:
8236         * gst/gstbin.c: (gst_bin_change_state):
8237         * gst/gstelement.c: (gst_element_set_state),
8238         (gst_element_change_state):
8239           rework so that for bins we try to set the state on all children
8240           as well even if the bin is in the correct state already.
8241           change while to do so at least one iteration is done.
8242           For regular elements, we fall back to the previous behaviour for
8243           now since we first need a new plugins release.
8244         * testsuite/states/parent.c: (main):
8245           test for this case
8246           Fixes #123774
8247
8248 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8249
8250         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8251         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8252         (gst_queue_release_locks), (gst_queue_change_state),
8253         (gst_queue_set_property):
8254           add proper lock debugging.  Change dispose to finalize, since
8255           we're freeing mutexes and other stuff which should happen only once.
8256
8257 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8258
8259         * docs/gst/tmpl/gstelement.sgml:
8260         * docs/gst/tmpl/gstplugin.sgml:
8261         * docs/gst/tmpl/gsttypes.sgml:
8262         * docs/pwg/building-state.xml:
8263         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8264         * gst/gstelement.c: (gst_element_change_state):
8265         * gst/gstthread.c: (gst_thread_change_state):
8266           catch wrong state changes in element base class.
8267
8268 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8269
8270         * gst/gstinfo.h:
8271           clean up layout a little.
8272
8273 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8274
8275         * configure.ac:
8276         * testsuite/Makefile.am:
8277         * testsuite/states/Makefile.am:
8278         * testsuite/states/parent.c: (main):
8279           re-enable states testsuite dir.  Add test for state changes and
8280           parent behaviour
8281
8282 2004-07-09  Wim Taymans  <wim@fluendo.com>
8283
8284         * gst/schedulers/gstoptimalscheduler.c:
8285         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8286         (element_get_reachables_func), (element_get_reachables),
8287         (debug_element), (rechain_group), (group_migrate_connected),
8288         (gst_opt_scheduler_pad_unlink):
8289         Do not try to migrate decoupled elements to a new group since
8290         they are not added to groups.
8291
8292 2004-07-08  Benjamin Otte  <otte@gnome.org>
8293
8294         * gst/gstelement.c: (gst_element_error_func):
8295           make reentrant (= allow removing elements in error handler)
8296
8297 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8298
8299         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8300         (gst_pad_send_event), (gst_pad_call_chain_function):
8301           events sent to elements below PAUSED cannot be handled, so
8302           don't try to
8303
8304 2004-07-08  Wim Taymans  <wim@fluendo.com>
8305
8306         * gst/schedulers/gstoptimalscheduler.c:
8307         (chain_recursively_migrate_group), (create_group),
8308         (schedule_group), (gst_opt_scheduler_pad_link),
8309         (group_elements_set_visited), (element_get_reachables_func),
8310         (element_get_reachables), (group_can_reach_group), (debug_element),
8311         (rechain_group), (group_migrate_connected),
8312         (gst_opt_scheduler_pad_unlink):
8313         * testsuite/schedulers/Makefile.am:
8314         Implemented group splitting and rechaining.
8315         Fixes 143777 and 143777-2 in the testsuite.
8316
8317 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8318
8319         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8320           extra debugging
8321         * gst/gstevent.h:
8322         * gst/gstinfo.c: (gst_debug_log_default):
8323           print time nicely.  add thread pointer until someone figures out
8324           a completely portable way of getting at thread id's.
8325         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8326         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8327         (gst_pad_call_chain_function):
8328           extra debugging
8329         * gst/schedulers/gstoptimalscheduler.c:
8330         (get_group_schedule_function), (loop_group_schedule_function),
8331         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8332         (pad_clear_queued), (gst_opt_scheduler_iterate):
8333           rename BUFPEN and friends to DATAPEN since that's what they are.
8334
8335 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8336
8337         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8338         * gst/gstbuffer.h:
8339         * gst/gstpad.c:
8340           cleanups and debugging
8341
8342 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8343
8344         * configure.ac:
8345         * gst/gstvalue.c: (gst_value_compare_enum),
8346         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8347         (gst_value_can_compare), (gst_value_compare):
8348         * testsuite/Makefile.am:
8349         * testsuite/enumcaps/Makefile.am:
8350         * testsuite/enumcaps/enumcaps.c:
8351           Fix enum serialization, deserialization, comparison in caps, add
8352           a test to ensure that this continues working in the future.
8353
8354 2004-07-06  David Schleef  <ds@schleef.org>
8355
8356         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8357         Fix memleak.
8358
8359 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8360
8361         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8362         * gst/gstplugin.h:
8363         * gst/registries/gstxmlregistry.c:
8364         (plugin_times_older_than_recurse), (plugin_times_older_than),
8365         (gst_xml_registry_parse_padtemplate):
8366           only rebuild registry when actual plugins have a newer time than
8367           the registry.  Fixes #145520
8368
8369 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8370
8371         * docs/manual/manual.xml:
8372         * docs/manual/win32.xml:
8373           add chapter on win32 building.  fixes #142422
8374
8375 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8376
8377         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8378
8379         * gst/autoplug/gstspider.c: (gst_spider_init),
8380         (gst_spider_dispose):
8381           fix spider memleaks.  fixes #137863
8382
8383 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8384
8385         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8386
8387         * gst/schedulers/gstoptimalscheduler.c:
8388         (gst_opt_scheduler_pad_unlink):
8389           fix SIGBUS error, fixes #145338
8390
8391 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8392
8393         * gst/gstobject.c: (gst_object_replace):
8394         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8395         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8396           clean up clock lifecycle.  Fixes #109831
8397
8398 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8399
8400         * po/LINGUAS:
8401         * po/cs.po:
8402           added Czech translation (Miloslav Trmac)
8403
8404 2004-07-04  David Schleef  <ds@schleef.org>
8405
8406         * tools/Makefile.am:
8407         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8408
8409 2004-07-04  David Schleef  <ds@schleef.org>
8410
8411         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8412
8413 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8414
8415         * gst/gstbin.c: (gst_bin_restore_thyself):
8416           chain to parent restore so the bins get restored correctly
8417           in the editor
8418
8419 2004-07-03  David Schleef  <ds@schleef.org>
8420
8421         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8422         Actually do something in these functions, like before the big
8423         caps change.  (bug #145137)
8424
8425 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8426
8427         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8428         (gst_element_get_compatible_pad_filtered):
8429         * gst/gstthread.c: (gst_thread_main_loop):
8430           more debugging
8431
8432 2004-07-02  David Schleef  <ds@schleef.org>
8433
8434         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8435         * gst/gstobject.h:
8436         * gst/gstparse.h:
8437         * gst/gsttrace.h:
8438         * gst/gstxml.h:
8439
8440 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8441
8442         * gst/gstpad.c: (gst_pad_check_schedulers),
8443         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8444         (gst_pad_link_prepare):
8445           revert until testsuite is fixed
8446
8447 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8448
8449         * testsuite/Makefile.am:
8450         * testsuite/caps/filtercaps.c: (main):
8451         * testsuite/clock/clock1.c: (main):
8452         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8453           fix some more tests
8454
8455 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8456
8457         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8458         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8459         * testsuite/cleanup/cleanup4.c: (main):
8460           fix testsuite
8461
8462 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8463
8464         * libs/gst/control/control.c:
8465         * libs/gst/control/dparam.c:
8466         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8467         * libs/gst/control/dparammanager.c:
8468         * libs/gst/control/dparammanager.h:
8469         * testsuite/dynparams/Makefile.am:
8470         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8471         (gst_dptest_change_state), (gst_dptest_chain), (main):
8472           fix testcase for dparams
8473           add debugging category
8474
8475 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8476
8477         * testsuite/Rules:
8478           change path
8479
8480 2004-07-02  Benjamin Otte  <otte@gnome.org>
8481
8482         * tests/.cvsignore:
8483         * tests/Makefile.am:
8484         * tests/mass_elements.c: (gst_get_current_time), (main):
8485           add simple benchmark to test various speeds of fakesrc ! identity !
8486           identity ! ... ! fakesink.
8487           Usage: mass_elements [num_identities] [num_buffers]
8488           If not specified they default to 1000.
8489
8490 2004-07-02  Benjamin Otte  <otte@gnome.org>
8491
8492         * gst/gstpad.c: (gst_pad_check_schedulers),
8493         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8494         (gst_pad_link_prepare):
8495           check that pads that get linked belong to the same manager. The old
8496           code allowed linking elements before putting them into bins, so it
8497           worked to link them and then put them in different threads, which
8498           lead to weird behaviour.
8499           Since this effectively disallows linking elements before putting
8500           them in a bin, some applications might not work after this and error
8501           out. If these applications are too critical, we might need to revert
8502           that patch. Please test this before the next release...
8503
8504 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8505
8506         * gst/gstpad.c: (gst_pad_get_caps):
8507           throw an error if the getcaps function does not return a subset of
8508           the template caps.
8509         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8510           make disconts without position info an error in debugging
8511         * tests/spidey_bench.c: (handoff), (main):
8512           don't count first try when averaging
8513
8514 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8515
8516         * gst/gstplugin.c: (gst_plugin_load_file):
8517           figure out problem with dynamic test
8518
8519 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8520
8521         * docs/gst/Makefile.am:
8522           fix docs build
8523
8524 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8525
8526         * po/POTFILES.in:
8527         * po/af.po:
8528         * po/az.po:
8529         * po/en_GB.po:
8530         * po/fr.po:
8531         * po/nl.po:
8532         * po/sr.po:
8533         * po/sv.po:
8534         * po/tr.po:
8535         * po/uk.po:
8536         * tools/gst-register.c: (plugin_added_func), (main):
8537           i18n-ize -register, fix plural
8538
8539 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8540
8541         * gst/elements/gstidentity.c: (gst_identity_class_init),
8542         (gst_identity_init), (gst_identity_chain),
8543         (gst_identity_set_property), (gst_identity_get_property):
8544         * gst/elements/gstidentity.h:
8545           check for perfect stream
8546
8547 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8548
8549         * gst/elements/gstidentity.c: (gst_identity_chain):
8550           print offset_end
8551
8552 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8553
8554         * docs/gst/Makefile.am:
8555         * docs/gst/gstreamer-docs.sgml:
8556           doc fixes
8557
8558 2004-06-24  David Schleef  <ds@schleef.org>
8559
8560         * autogen.sh:  Remove call to env, since the buildbot isn't
8561         broken anymore.
8562
8563 2004-06-24  Wim Taymans  <wim@fluendo.com>
8564
8565         * gst/elements/Makefile.am:
8566         * gst/elements/gstelements.c:
8567         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8568         (gst_multifdsink_class_init), (gst_multifdsink_init),
8569         (gst_multifdsink_add), (gst_multifdsink_remove),
8570         (gst_multifdsink_clear), (gst_multifdsink_chain),
8571         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8572         * gst/elements/gstmultifdsink.h:
8573         Added an element that writes to multiple filedescriptors at once.
8574
8575 2004-06-24  Benjamin Otte  <otte@gnome.org>
8576
8577         * gst/parse/grammar.y:
8578           don't try to link elements before they have been added to bins
8579
8580 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8581
8582         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8583         (gst_file_pad_get_length):
8584         * libs/gst/bytestream/filepad.h:
8585           add 2 new functions
8586
8587 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8588
8589         * docs/gst/gstreamer-sections.txt:
8590         remove from docs, the define that Benjamin removed from gstelement.h
8591
8592 2004-06-22  Benjamin Otte  <otte@gnome.org>
8593
8594         * gst/gstelement.h:
8595           remove define that referenced a nonexisting GstElement struct member
8596
8597 2004-06-20  Benjamin Otte  <otte@gnome.org>
8598
8599         * gst/gstdata.c: (gst_data_is_writable):
8600           whoops, return values were wrong, so writable data was marked as
8601           non-writable and vice versa. (fixes #143953, spotted by Francis
8602           Labonte)
8603           Shows how rarely we need to copy data ;)
8604
8605 2004-06-20  Benjamin Otte  <otte@gnome.org>
8606
8607         * testsuite/schedulers/.cvsignore:
8608         * testsuite/schedulers/Makefile.am:
8609         * testsuite/schedulers/143777-2.c: (main):
8610           add test for opt breakage in bug #143777
8611
8612 2004-06-20  Benjamin Otte  <otte@gnome.org>
8613
8614         * gst/gstpad.c: (gst_pad_call_chain_function):
8615           check for if we were unlinked while inside the chainfunction (fixes
8616           entrygthread having issues with #143777)
8617         * testsuite/schedulers/143777.c: (main):
8618         * testsuite/schedulers/Makefile.am:
8619           add a test for that fix
8620
8621 2004-06-20  Benjamin Otte  <otte@gnome.org>
8622
8623         * gst/gstvalue.c: (gst_value_set_int_range):
8624           test that start is smaller then end
8625         * libs/gst/bytestream/Makefile.am:
8626         * libs/gst/bytestream/filepad.c: 
8627         * libs/gst/bytestream/filepad.h:
8628           add GstFilePad - a pad that behaves like a FILE*
8629         * testsuite/bytestream/.cvsignore:
8630         * testsuite/bytestream/Makefile.am:
8631         * testsuite/bytestream/filepadsink.c: 
8632           test for the GstFilePad
8633
8634 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8635
8636         * gst/elements/gstidentity.c: (gst_identity_class_init),
8637         (gst_identity_init), (gst_identity_set_clock),
8638         (gst_identity_chain), (gst_identity_set_property),
8639         (gst_identity_get_property):
8640         * gst/elements/gstidentity.h:
8641         * gst/gstclock.c: (gst_clock_id_wait):
8642           add a "sync" property to sync to the clock
8643
8644 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8645
8646         * gst/gstelementfactory.c: (gst_element_factory_create):
8647           make the freakin "elementfactory bla has no type" message more
8648           useful. So we actually can do something when someone shows up
8649           complaining about it.
8650
8651 2004-06-15  Johan Dahlin  <johan@gnome.org>
8652
8653         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8654         found. This matches the old behavior better. Thanks to Thomas for
8655         pointing out.
8656
8657 2004-06-14  David Schleef  <ds@schleef.org>
8658
8659         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8660         -fomit-frame-pointer.  Appears to generate correct code in
8661         other cases as well.
8662
8663 2004-06-14  Johan Dahlin  <johan@gnome.org>
8664
8665         * tools/gst-inspect.c (main): Add two new command line options: -a
8666         to print all elements and -n to print the name on each line. Also
8667         fix some error reporting.
8668         (main): Simplify, remove -n and always print names if -a is specified
8669
8670 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8671
8672         * win32/gstconfig.h:
8673         * win32/GSTreamer.vcproj:
8674         * win32/Makefile:
8675         * gst/gstconfig.h.in:
8676         * gst/gst.h:
8677         * gst/gstbin.h:
8678         * gst/gstelement.h:
8679         * gst/gstevent.h:
8680         * gst/gstobject.h:
8681         * gst/gstpad.h:
8682         * docs/gst/gstreamer-sections.txt:
8683         * docs/gst/tmpl/gstconfig.sgml:
8684           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8685
8686 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8687         * docs/gst/gstreamer-sections.txt:
8688         * docs/gst/tmpl/gstconfig.sgml:
8689         Add the GSTREAMER_EXPORT macro to the docs
8690
8691 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8692
8693         * tools/gst-compprep.c: (handle_xmlerror), (main):
8694         Add a check for the version that introduced SetStructuredError to fix
8695         the build on FC1
8696
8697 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8698
8699         * win32/msvc71.sln:
8700         * win32/testsuite/:
8701           prepare to compile the testsuite with MSVC
8702
8703 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8704
8705         * docs/manual/win32.xml:
8706           attempt to transform the Win32 README into an XML doc
8707
8708 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8709
8710         * gst/gst.c:
8711         * gst/gstbin.*:
8712         * gst/config.h.in:
8713         * gst/gstelement.*:
8714         * gst/gstevent.h:
8715         * gst/gstobject.*:
8716         * gst/gstpad.h:
8717         * tools/gst-register.c:
8718         * win32/gstreamer.def:
8719           extern symbols are now exported for the Windows DLL
8720
8721 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8722
8723         * gst/gstinfo.h:
8724           fix a problem to enable/disable DEBUG under MSVC
8725
8726 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8727
8728         * win32/:
8729           enable more debug code in DEBUG build
8730
8731 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8732
8733         * win32/config.h:
8734         * gst/gst-i18n-app.h:
8735           enable NLS under Windows
8736
8737 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8738         * tools/gst-compprep.c: (handle_xmlerror), (main):
8739           Make an error that baffled me a bit clearer
8740
8741 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8742
8743         * gst/gstqueue.c:
8744           don't use g_queue_get_length () because it's 2.4, use ->length
8745
8746 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8747
8748         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8749
8750         * tools/gst-inspect.c: (print_signal_info):
8751           don't free random data twice. (fixes #144185)
8752
8753 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8754
8755         * gst/gstqueue.c:
8756         * gst/gstqueue.h:
8757           fix removing from the wrong queue on event timeout
8758           fix disposing of the event queue by casting correctly
8759           add mutexes for handling the event queue
8760           someone was sleeping when fixing queue last time around :)
8761
8762 2004-06-10  Johan Dahlin  <johan@gnome.org>
8763
8764         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8765         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8766
8767 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8768
8769         * docs/random/gdp:
8770         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8771         * libs/gst/dataprotocol/dataprotocol.c:
8772         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8773         (gst_dp_buffer_from_header):
8774         * libs/gst/dataprotocol/dataprotocol.h:
8775         * libs/gst/dataprotocol/dp-private.h:
8776           rev version to 0.1, add buffer flags and copy them
8777
8778 2004-06-09  Johan Dahlin  <johan@gnome.org>
8779
8780         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8781         the flags from the buffer we're copying.
8782
8783 2004-06-09  Wim Taymans  <wim@fluendo.com>
8784
8785         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8786         * gst/elements/gstidentity.c: (gst_identity_init),
8787         (gst_identity_chain):
8788         Print more buffer info in fakesink.
8789         Make identity output similar to fakesink.
8790
8791 2004-06-07  Daniel Gazard  <dany42@free.fr>
8792
8793         reviewed by Benjamin Otte  <otte@gnome.org>
8794
8795         * configure.ac:
8796           fix cross compiling not working. (fixes #143741)
8797
8798 2004-06-07  Benjamin Otte  <otte@gnome.org>
8799
8800         * gst/gstelement.c: (gst_element_set_time_delay):
8801           add failure check
8802         * gst/gstinfo.h:
8803           put brackets around macro arguments of GST_TIME_ARGS, add note to
8804           move it to correct header in 0.9
8805
8806 2004-06-07  Benjamin Otte  <otte@gnome.org>
8807
8808         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8809         (gst_file_index_load), (_file_index_id_save_entries),
8810         (gst_file_index_commit), (gst_file_index_add_association),
8811         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8812         (gst_file_index_plugin_init):
8813           make debugging use a default category
8814
8815 2004-06-06  David Moore  <dcm@acm.org>
8816
8817         reviewed by Benjamin Otte  <otte@gnome.org>
8818
8819         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8820         (gst_fdsrc_change_state):
8821           reset offset counter when going READY => PAUSED. (fixes #142903)
8822
8823 2004-06-06  ed@catmur.co.uk
8824
8825         reviewed by Benjamin Otte  <otte@gnome.org>
8826
8827         * gst/registries/gstxmlregistry.c:
8828         (gst_xml_registry_rebuild_recurse):
8829           don't rely on g_dir_open to figure out if a file is a directory, use
8830           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8831           directories. (fixes #142850)
8832
8833 2004-06-06  Benjamin Otte  <otte@gnome.org>
8834
8835         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8836           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8837         * libs/gst/bytestream/adapter.c:
8838         * libs/gst/bytestream/adapter.h:
8839           fix copyright in header and typo in debugging category name
8840
8841 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8842
8843         * configure.ac:
8844           bump nano to cvs
8845
8846 === release 0.8.3 ===
8847
8848 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8849
8850         * configure.ac:
8851           update libtool versioning
8852           do a new release
8853         * docs/gst/tmpl/gstelement.sgml:
8854         * docs/gst/tmpl/gsttypes.sgml:
8855         * gst/gstinfo.c: (_gst_debug_init):
8856           put back GST_CAT_DATAFLOW to fix API breakage
8857
8858 2004-06-04  David Schleef  <ds@schleef.org>
8859
8860         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8861
8862 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8863
8864         * configure.ac:
8865           bump nano to cvs
8866
8867 === release 0.8.2 ===
8868
8869 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8870
8871         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8872           check GST_DEBUG environment variable which is parsed the same way
8873           as --gst-debug=
8874
8875 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8876
8877         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8878                             gstmd5sink.c gstshaper.c gsttee.c
8879                             gsttypefindelement.c
8880         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8881
8882           - removing trailing commas at end of enums
8883             it is correct C99 code but C90 compilers would complain
8884             (AIX, Forte, ...)
8885             ('should' fix #143290, at least partially)
8886
8887 2004-05-27  Wim Taymans  <wim@fluendo.com>
8888
8889         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8890         (chain_group_set_enabled), (create_group), (add_to_group),
8891         (merge_groups), (setup_group_scheduler), (group_elements),
8892         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8893         Don't try to follow the pad connections with other groups
8894         when a loop based element is added to the scheduler because
8895         the bin will inform the scheduler about the pad links a little
8896         later.
8897
8898 2004-05-27  Wim Taymans  <wim@fluendo.com>
8899
8900         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8901         (remove_from_chain), (chain_group_set_enabled),
8902         (setup_group_scheduler), (group_element_set_enabled),
8903         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8904         (gst_opt_scheduler_show):
8905         Elements without a group can do a state change as well, just wait
8906         with the setup of the scheduling function when it is added to a
8907         chain.
8908
8909 2004-05-27  Wim Taymans  <wim@fluendo.com>
8910
8911         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8912         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8913         (merge_groups), (setup_group_scheduler),
8914         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8915         (gst_opt_scheduler_show):
8916         Fixes to maintain internal consistency of the scheduler data
8917         structures. 
8918          - adding an enabled group to a chain should increment the
8919            number of enabled elements in that chain.
8920          - removing an enabled group from a chain could disable the
8921            chain.
8922          - removing a disabled group from a chain could enable the
8923            chain.
8924          - add g_assert when internal inconsistency is detected.
8925          - adding an element to a group could increase the number of
8926            links this group has with other groups.
8927          - merging two groups also merges the chains.
8928          - also show group links in the _show method.
8929            
8930
8931 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8932
8933         * gst/gstcaps.c: (gst_caps_structure_simplify):
8934           don't print error messages when there is no error
8935         * gst/gstvalue.c: (gst_value_compare_int_range):
8936           compare the second value, too
8937         * testsuite/caps/Makefile.am:
8938         * testsuite/caps/random.c: (assert_on_error), (main):
8939           add tests to make sure the two things above are checked for
8940
8941 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8942
8943         * configure.ac:
8944         * libs/gst/dataprotocol/Makefile.am:
8945         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8946         * libs/gst/dataprotocol/dataprotocol.h:
8947           wrap header in GST_ENABLE_NEW.  make code use it
8948
8949 2004-05-23  Johan Dahlin  <johan@gnome.org>
8950
8951         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8952         so verbose and print GstElement signal names all the time.
8953
8954 2004-05-22  David Schleef  <ds@schleef.org>
8955
8956         * gst/registries/gstxmlregistry.c:
8957         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8958         (bug #142957)
8959
8960 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8961
8962         * configure.ac:
8963           scrub cflags for glib2 so gcc doesn't complain when glib is in
8964           /usr/local
8965
8966 2004-05-21  Johan Dahlin  <johan@gnome.org>
8967
8968         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8969         __GNUC__, patch from Brian Cameron, fixes bug #142804
8970
8971 2004-05-20  David Schleef  <ds@schleef.org>
8972
8973         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8974         comparison code.  (bug #142819)
8975
8976 2004-05-20  Wim Taymans  <wim@fluendo.com>
8977
8978         * gst/gstbuffer.c: (gst_buffer_default_copy):
8979         * gst/gstbuffer.h:
8980         Added Comment to a flag.
8981         copy relevant flags in _buffer_copy.
8982
8983 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8984
8985         reviewed by: Wim Taymans <wim at fluendo dot com>
8986
8987         * gst/gstbuffer.h:
8988           add GST_BUFFER_IN_CAPS buffer flag
8989         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8990         (gst_structure_parse_any_list), (gst_structure_parse_list),
8991         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
8992         * gst/gstvalue.c: (gst_value_serialize_any_list),
8993         (gst_value_transform_any_list_string),
8994         (gst_value_list_prepend_value), (gst_value_list_append_value),
8995         (gst_value_list_get_size), (gst_value_list_get_value),
8996         (gst_value_transform_list_string),
8997         (gst_value_transform_fixed_list_string),
8998         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
8999         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
9000         (_gst_value_initialize):
9001         * gst/gstvalue.h:
9002           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
9003           < , > as a format.
9004         * testsuite/caps/string-conversions.c: (main):
9005           add regression tests for < >
9006
9007 2004-05-20  Johan Dahlin  <johan@gnome.org>
9008
9009         * docs/gst/Makefile.am (all-local): Re-add
9010
9011 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9012
9013         * docs/gst/Makefile.am:
9014         * docs/gst/gstreamer-docs.sgml:
9015         * docs/libs/Makefile.am:
9016         * docs/libs/gstreamer-libs-docs.sgml:
9017           fix distcheck issues
9018
9019 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9020
9021         * libs/gst/dataprotocol/Makefile.am:
9022           add to autotest
9023
9024 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9025
9026         * libs/gst/dataprotocol/Makefile.am:
9027         * libs/gst/dataprotocol/dataprotocol.c:
9028         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9029         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
9030         * libs/gst/dataprotocol/dp-private.h:
9031           use GST macros to read/write fixed length ints
9032           add some more asserts
9033
9034 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9035
9036         * docs/libs/gstreamer-libs-docs.sgml:
9037         * docs/libs/gstreamer-libs-sections.txt:
9038           remove idct and putbits
9039         * configure.ac:
9040         * docs/libs/tmpl/gstdataprotocol.sgml:
9041         * libs/gst/Makefile.am:
9042         * libs/gst/dataprotocol/Makefile.am:
9043         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
9044         (buffer_test), (caps_test), (event_test), (main):
9045         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9046         (gst_dp_dump_byte_array), (gst_dp_init),
9047         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
9048         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9049         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
9050         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
9051         (gst_dp_validate_header), (gst_dp_validate_payload),
9052         (gst_dp_validate_packet), (plugin_init):
9053         * libs/gst/dataprotocol/dataprotocol.h:
9054         * libs/gst/dataprotocol/dp-private.h:
9055           add dataprotocol
9056
9057 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9058
9059         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9060           fix int variable deserialization and add a helper so we can actually
9061           debug this.
9062
9063 2004-05-18  David Schleef  <ds@schleef.org>
9064
9065         * testsuite/debug/commandline.c: (main): Call ./commandline, not
9066           argv[0].  Calling yourself is probably not the best way to
9067           construct a test like this, btw.
9068
9069 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9070
9071         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
9072           don't claim to be more intelligent than a scheduler when the
9073           scheduler claims the pipeline is stopped
9074         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9075         (safe_cothread_destroy),
9076         (gst_entry_scheduler_remove_all_cothreads),
9077         (gst_entry_scheduler_reset), (_remove_cothread),
9078         (gst_entry_scheduler_state_transition):
9079           hold off cothread destruction if we're not in main cothread
9080         * configure.ac:
9081         * testsuite/Makefile.am:
9082           add new test dir
9083         * testsuite/schedulers/.cvsignore:
9084         * testsuite/schedulers/Makefile.am:
9085           add tests
9086         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9087           check relinking and adding/removing elements from a running pipeline
9088         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9089           check unlinking in a running pipeline
9090         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9091           check unreffing a running pipeline
9092         * testsuite/schedulers/useless_iteration.c: (main):
9093           check iterating a pipeline that contains running threads works
9094
9095 2004-05-18  David Schleef  <ds@schleef.org>
9096
9097         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9098           is false.
9099
9100 2004-05-18  Wim Taymans  <wim@fluendo.com>
9101
9102         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9103         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9104         Fixed an error introduced with patch for 1.63. When setting
9105         a get based element as the entry point in a group, make sure
9106         to mark the group as GET based.
9107
9108 2004-05-18  Wim Taymans  <wim@fluendo.com>
9109
9110         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9111         (setup_group_scheduler), (loop_group_schedule_function),
9112         (gst_opt_scheduler_pad_link):
9113         Added some more debug info and fixed a bug where the group
9114         type was set to LOOP but it was in fact unknown.
9115
9116 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9117
9118         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9119           make resetting scheduler work twice in a row
9120
9121 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9122
9123         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9124         (CREATE_USERIALIZATION), (_gst_value_initialize),
9125         (gst_value_compare_float), (gst_value_serialize_float),
9126         (gst_value_deserialize_float), (gst_value_compare_enum),
9127         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9128           add serialization and comparison functions for long, int64, enum and
9129           float values
9130         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9131           use best serialization function in type hierarchy instead of only a
9132           matching one. This is required for enums to work.
9133         * gst/parse/grammar.y:
9134           use gst_caps_deserialize
9135         * testsuite/parse/Makefile.am:
9136           parse1 now works
9137         * testsuite/parse/parse1.c: (main):
9138           remove aggregator check, aggregator is broken, this test works now
9139           but fails because of bug #138012
9140         * testsuite/parse/parse2.c: (main):
9141           s/xvideosink/xvimagesink - this test looks a lot like we should
9142           disable it
9143
9144 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9145
9146         * gst/gstelement.c: (gst_element_class_init):
9147           whoops, store the signal id correctly
9148         * gst/schedulers/gstbasicscheduler.c:
9149         (gst_basic_scheduler_chain_wrapper):
9150           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9151           chain function isn't linked
9152
9153 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9154         * configure.ac:
9155         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9156         support until we decide where the flags should be used
9157         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9158         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9159         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9160         Output refused caps in the debug info
9161
9162 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9163
9164         * gst/elements/gstidentity.c: (gst_identity_chain):
9165           add duration debug
9166         * gst/gstinfo.c: (gst_debug_log_default):
9167           add timestamp
9168
9169 2004-05-13  Benjamin Otte  <otte@gnome.org>
9170
9171         * gst/gstpipeline.c: (gst_pipeline_dispose),
9172         (gst_pipeline_change_state):
9173           call gst_scheduler_reset on dispose (fixes #141416)
9174
9175 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9176
9177         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9178           compute mapsize correctly
9179         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9180           use correct datatypes when calling a varargs function
9181         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9182           push a DISCONT event as first thing
9183         * gst/gst_private.h:
9184         * gst/gstinfo.c: (_gst_debug_init):
9185           remove GST_DATAFLOW debugging category
9186         * gst/gstbin.c: (gst_bin_iterate):
9187           use GST_SCHEDULING category
9188         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9189         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9190         (gst_pad_call_get_function):
9191           add GST_DATAFLOW to easily track flow of buffers or events.
9192         * gst/gstqueue.c: (gst_queue_get_type),
9193         (gst_queue_handle_pending_events), (gst_queue_chain),
9194         (gst_queue_get), (gst_queue_handle_src_event):
9195           use own static debugging category GST_DATAFLOW for dataflow,
9196           use DEBUG category for showing which path events go, use LOG
9197           category for buffers.
9198
9199 2004-05-10  David Schleef  <ds@schleef.org>
9200
9201         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9202
9203 2004-05-10  David Schleef  <ds@schleef.org>
9204
9205         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9206         symbols, because otherwise we don't know what they are.  Thanks,
9207         the GStreamer team.
9208         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9209
9210 2004-05-10  David Schleef  <ds@schleef.org>
9211
9212         (from Steve Lhomme)
9213         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9214         are deleted.  Fix.
9215         * win32/Makefile.inspect:
9216         * win32/Makefile.launch:
9217         * win32/Makefile.register:
9218
9219 2004-05-10  David Schleef  <ds@schleef.org>
9220
9221         * gst/gstinfo.h: Add missing inline function.
9222         * gst/gsttrace.c: add include
9223         * gst/parse/grammar.y: remove unused code
9224         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9225         more portable.
9226         * tools/gst-register.c: wrap unistd.h
9227         
9228         More additions/fixes from Steve for the MSVC build.
9229         * win32/GStreamer.vcproj:
9230         * win32/Makefile:
9231         * win32/Makefile.inspect:
9232         * win32/Makefile.launch:
9233         * win32/Makefile.register:
9234         * win32/README.txt:
9235         * win32/gst-inspect.vcproj:
9236         * win32/gst-launch.vcproj:
9237         * win32/gst-register.vcproj:
9238         * win32/gstbytestream.def:
9239         * win32/gstbytestream.vcproj:
9240         * win32/gstconfig.h:
9241         * win32/gstelements.def:
9242         * win32/gstelements.vcproj:
9243         * win32/gstenumtypes.c:
9244         * win32/gstenumtypes.h:
9245         * win32/gstoptimalscheduler.def:
9246         * win32/gstoptimalscheduler.vcproj:
9247         * win32/gstreamer.def:
9248         * win32/gstspider.def:
9249         * win32/gstspider.vcproj:
9250         * win32/gstversion.h:
9251         * win32/msvc71.sln:
9252
9253 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9254
9255         * gst/gstelement.c: (gst_element_class_init),
9256         (gst_element_no_more_pads):
9257         * gst/gstelement.h:
9258           add gst_element_no_more_pads and the "no-more-pads" signal
9259
9260 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9261
9262         * gst/gstregistry.c: (gst_registry_add_plugin):
9263           refuse to add plugins when a plugin with same name is already
9264           registered. Fixes a bunch of "How to remove plugins?" issues.
9265           May lead to other problems though, let's test
9266
9267 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9268
9269         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9270         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9271         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9272
9273 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9274
9275         * tests/Makefile.am: fix am16 issue
9276
9277 2004-05-09  Benjamin Otte  <otte@gnome.org>
9278
9279         * libs/gst/bytestream/Makefile.am:
9280           we should indeed add .c files to makefiles or they won't be built
9281           (d'oh)
9282
9283 2004-05-08  Benjamin Otte  <otte@gnome.org>
9284
9285         * gst/gstpad.c: (gst_pad_proxy_fixate):
9286           really reduce the set of caps
9287
9288 2004-05-08  Benjamin Otte  <otte@gnome.org>
9289
9290         * tests/Makefile.am:
9291         * tests/spidey_bench.c: (handoff), (main):
9292           add benchmark to test how long spider needs to create a pipeline
9293
9294 2004-05-08  Benjamin Otte  <otte@gnome.org>
9295
9296         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9297           mark links as unengaged when unnegotiating instead of deactivating.
9298           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9299
9300 2004-05-08  Benjamin Otte  <otte@gnome.org>
9301
9302         * docs/manual/helloworld.xml:
9303           s/audiosink/osssink (patch by Patrick Guimond)
9304
9305 2004-05-07  David Schleef  <ds@schleef.org>
9306
9307         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9308         since it contains important stuff.
9309
9310 2004-05-07  David Schleef  <ds@schleef.org>
9311
9312         * testsuite/caps/caps.c: (test3), (main): A check for appending
9313         ANY caps.
9314
9315 2004-05-07  David Schleef  <ds@schleef.org>
9316
9317         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9318         which may contain commas.  Fixes detection of -Wa,-mregnames
9319
9320 2004-05-06  David Schleef  <ds@schleef.org>
9321
9322         Changes to handle compilers that don't have variadic macro
9323         support.  In particular, glib headers define some inlines
9324         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9325         builds.
9326         * gst/Makefile.am:
9327         * gst/cothreads.c:
9328         * gst/elements/gstfdsink.c:
9329         * gst/elements/gstfdsrc.c:
9330         * gst/elements/gstfilesink.c:
9331         * gst/elements/gstfilesrc.c:
9332         * gst/gst_private.h:
9333         * gst/gstatomic.c:
9334         * gst/gstcaps.c: (gst_caps_append):
9335         * gst/gstcpu.c: (gst_cpuid_i386):
9336         * gst/gstelement.c:
9337         * gst/gsterror.c:
9338         * gst/gstfilter.c:
9339         * gst/gstinfo.h:
9340         * gst/gstprobe.c:
9341         * gst/gstquery.c:
9342         * gst/gstregistry.c:
9343         * gst/gststructure.c:
9344         * gst/gsttaginterface.c:
9345         * gst/gsttrace.c: (gst_trace_new):
9346         * gst/gsttrashstack.c:
9347         * gst/gsturi.c:
9348         * gst/gstvalue.c:
9349         * gst/parse/grammar.y:
9350         * gst/parse/parse.l:
9351         * tools/gst-inspect.c: (main):
9352         * tools/gst-launch.c: (main):
9353         * tools/gst-xmlinspect.c: (PUT_STRING):
9354
9355 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9356
9357         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9358         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9359         * gst/elements/gstfilesrc.h:
9360           send NEW_MEDIA events correctly
9361         * gst/elements/gsttypefindelement.c: (start_typefinding),
9362         (gst_type_find_element_handle_event):
9363           restart typefinding when we get a NEW_MEDIA event
9364         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9365         (gst_bin_dispose):
9366           don't die when someone removes elements in callbacks
9367         * gst/gstelement.c: (gst_element_change_state):
9368           improve debugging
9369         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9370           we need a NEW_MEDIA event to engage a link
9371         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9372           don't g_print debugging stuff
9373         * testsuite/caps/simplify.c: (check_caps):
9374
9375 2004-05-04  Benjamin Otte  <otte@gnome.org>
9376
9377         * gst/parse/grammar.y:
9378           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9379
9380 2004-05-04  Benjamin Otte  <otte@gnome.org>
9381
9382         * testsuite/caps/renegotiate.c: (main):
9383           improve output in error case
9384
9385 2004-05-04  Benjamin Otte  <otte@gnome.org>
9386
9387         * gst/parse/grammar.y:
9388           fix assert to not trigger when there's no error argument
9389         * gst/parse/parse.l:
9390           fix definition of caps to allow more than two structures
9391         * testsuite/caps/Makefile.am:
9392         * testsuite/caps/renegotiate.c: (main):
9393           it's sinesrc and works in that case
9394
9395 2004-05-04  Wim Taymans  <wim@fluendo.com>
9396
9397         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9398         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9399         when removing an element from a group, we always need to
9400         decrement the link count that this group had with other 
9401         groups through the element.
9402         added an extra assert to catch inconsistencies when decrementing
9403         the link count.
9404
9405 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9406
9407         * configure.ac:
9408         * docs/gst/Makefile.am:
9409         * docs/gst/gstreamer-sections.txt:
9410         * docs/gst/tmpl/gstcompat.sgml:
9411         * examples/appreader/Makefile.am:
9412         * examples/cutter/Makefile.am:
9413         * examples/events/Makefile.am:
9414         * examples/helloworld/Makefile.am:
9415         * examples/helloworld2/Makefile.am:
9416         * examples/launch/Makefile.am:
9417         * examples/manual/Makefile.am:
9418         * examples/mixer/Makefile.am:
9419         * examples/pingpong/Makefile.am:
9420         * examples/plugins/Makefile.am:
9421         * examples/queue/Makefile.am:
9422         * examples/queue2/Makefile.am:
9423         * examples/queue3/Makefile.am:
9424         * examples/queue4/Makefile.am:
9425         * examples/retag/Makefile.am:
9426         * examples/thread/Makefile.am:
9427         * examples/typefind/Makefile.am:
9428         * examples/xml/Makefile.am:
9429         * gst/Makefile.am:
9430         * gst/autoplug/Makefile.am:
9431         * gst/elements/Makefile.am:
9432         * gst/gstcompat.h:
9433         * gst/indexers/Makefile.am:
9434         * gst/parse/Makefile.am:
9435         * gst/registries/Makefile.am:
9436         * gst/schedulers/Makefile.am:
9437         * libs/gst/bytestream/Makefile.am:
9438         * libs/gst/control/Makefile.am:
9439         * libs/gst/getbits/Makefile.am:
9440         * po/af.po:
9441         * po/az.po:
9442         * po/en_GB.po:
9443         * po/fr.po:
9444         * po/nl.po:
9445         * po/sr.po:
9446         * po/sv.po:
9447         * po/tr.po:
9448         * po/uk.po:
9449         * tests/Makefile.am:
9450         * tests/bufspeed/Makefile.am:
9451         * tests/instantiate/Makefile.am:
9452         * tests/memchunk/Makefile.am:
9453         * tests/muxing/Makefile.am:
9454         * tests/negotiation/Makefile.am:
9455         * tests/probes/Makefile.am:
9456         * tests/sched/Makefile.am:
9457         * tests/seeking/Makefile.am:
9458         * tests/threadstate/Makefile.am:
9459         * testsuite/caps/Makefile.am:
9460         * testsuite/cleanup/Makefile.am:
9461         * testsuite/dlopen/Makefile.am:
9462         * testsuite/dynparams/Makefile.am:
9463         * testsuite/plugin/Makefile.am:
9464         * testsuite/states/Makefile.am:
9465         * tools/Makefile.am:
9466           reorganize compile/link flags to be consistent
9467           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9468
9469 2004-05-04  David Schleef  <ds@schleef.org>
9470
9471         The "once more, with feeling" check-in.
9472         * testsuite/caps/Makefile.am: dist caps_strings
9473         * testsuite/caps/renegotiate.c: (main): This test triggers a
9474           segfault in the core.  Marking as failing.
9475
9476 2004-05-03  David Schleef  <ds@schleef.org>
9477
9478         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9479           by the build bots.
9480         * testsuite/caps/renegotiate.c: (main): Same.
9481
9482 2004-05-03  David Schleef  <ds@schleef.org>
9483
9484         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9485
9486 2004-05-03  David Schleef  <ds@schleef.org>
9487
9488         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9489           variable to find our source file.
9490
9491 2004-05-03  David Schleef  <ds@schleef.org>
9492
9493         * configure.ac:  Link plugins with libgstreamer and dependent
9494           libraries
9495         * testsuite/caps/Makefile.am:
9496         * testsuite/caps/caps_strings:
9497         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9498           through a file of caps strings and test each one
9499
9500 2004-05-04  Benjamin Otte  <otte@gnome.org>
9501
9502         * libs/gst/bytestream/Makefile.am:
9503         * libs/gst/bytestream/adapter.c: 
9504         * libs/gst/bytestream/adapter.h:
9505           add GstAdapter, similar to bytestream, but doesn't require ugly event
9506           handling or uglier loopbased elements
9507
9508 2004-05-03  David Schleef  <ds@schleef.org>
9509
9510         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9511         * testsuite/caps/erathostenes.c:
9512         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9513
9514 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9515
9516         * docs/pwg/pwg.xml:
9517           remove hardcoded stylesheet path (duh)
9518         * docs/random/release:
9519         * docs/gst/gstreamer-sections.txt:
9520         * gst/Makefile.am:
9521         * gst/gst.h:
9522         * gst/gst_private.h:
9523         * gst/gstcaps.c:
9524         * gst/gstevent.c:
9525         * gst/gstformat.c:
9526         * gst/gstinfo.c:
9527         * gst/gstinfo.h:
9528         * gst/gstinterface.c:
9529         * gst/gstmemchunk.c:
9530         * gst/gstprobe.c:
9531         * gst/gstquery.c:
9532         * gst/gstregistry.c:
9533         * gst/gstregistrypool.c:
9534         * gst/gststructure.c:
9535         * gst/gsttaginterface.c:
9536         * gst/gstthread.c:
9537         * gst/gsttrace.c:
9538         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9539         * gst/gsturi.c:
9540         * gst/gstvalue.c:
9541           deprecate gst_info; remove gstlog.h
9542    
9543
9544 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9545
9546         * Makefile.am:
9547         * po/en_GB.po:
9548         * po/sv.po:
9549         * po/uk.po:
9550           updated translations
9551
9552 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9553
9554         * gst/gstbin.c: (gst_bin_dispose):
9555           better debugging
9556
9557 2004-05-03  Johan Dahlin  <johan@gnome.org>
9558
9559         * gst/schedulers/gstoptimalscheduler.c
9560         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9561         really is a GstElement. Avoids critical when running gst-launch -v
9562         and a oggdemux/decoding pipeline.
9563
9564 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9565
9566         * docs/gst/tmpl/gstpipeline.sgml :
9567         * docs/manual/elements-api.xml :
9568                 doc fix by Patrick Guimond (Protector) from devel ML
9569                 reviewed by ronald
9570
9571 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9572
9573         * docs/gst/Makefile.am :
9574         * docs/libs/Makefile.am :
9575                 apply a patch from Arwed v. Merkatz so that gtk-doc
9576                 generated docs install (same for .devhelp file)
9577                 (fixes part 1 of #138836)
9578
9579 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9580
9581         * docs/faq/dependencies.xml: typo
9582         * docs/faq/getting.xml :
9583             - fix download URL for new gstreamer site
9584             - hide sf.net download page as latest version aren't there
9585             - fix apt URLs
9586             - fill "get via CVS" paragraph (link to dev page on the site)
9587         * docs/faq/general.xml:
9588             hide status tables as they no more exists
9589             change case on plugins license file to reflect reality
9590         * docs/faq/troubleshooting.xml:
9591             remove the wiki question/answer as there is no more wiki
9592
9593 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9594
9595         * gst/gsterror.h:
9596           include the headers needed for declarations used in this header
9597
9598 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9599
9600         * docs/random/uraeus/gstreamer_and_midi.txt :
9601           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9602           (fixes #132288)
9603
9604 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9605
9606         reviewed by Benjamin Otte  <otte@gnome.org>
9607
9608         * gst/schedulers/gthread-cothreads.h:
9609           free allocated data for main cothread, too when destroying context
9610           (fixes #141417)
9611
9612 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9613
9614         * docs/manual/goals.xml : remove duplicated paragraph at end 
9615         of doc page (fixes #141448)
9616
9617 2004-04-29  David Schleef  <ds@schleef.org>
9618
9619         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9620         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9621
9622 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9623
9624         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9625           fix property
9626         * gst/gstcaps.c:
9627           fix doc string
9628         * po/POTFILES.in:
9629           rename typefind source file
9630
9631 2004-04-28  David Schleef  <ds@schleef.org>
9632
9633         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9634         * win32/GStreamer.vcproj:
9635         * win32/Makefile:
9636         * win32/config.h:
9637         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9638         (_trewinddir), (_ttelldir), (_tseekdir):
9639         * win32/dirent.h:
9640         * win32/gst-inspect.vcproj:
9641         * win32/gst-launch.vcproj:
9642         * win32/gst-register.vcproj:
9643         * win32/gstbytestream.vcproj:
9644         * win32/gstelements.vcproj:
9645         * win32/gstoptimalscheduler.vcproj:
9646         * win32/gstspider.vcproj:
9647         * win32/gtchar.h:
9648         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9649         * win32/mman.h:
9650         * win32/mman.inl:
9651         * win32/msvc71.sln:
9652
9653 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9654
9655         * gst/gst.c: (init_post):
9656         * gst/gstinfo.c:
9657           remove useless _gst_progname stuff
9658         * tools/gst-inspect.c: (print_field), (print_caps):
9659           improve caps output
9660
9661 2004-04-28  David Schleef  <ds@schleef.org>
9662
9663         Disable parsing of a lot of files that aren't part of the
9664         exported API.  Move corresponding template files to old/,
9665         waiting for removal when they don't contain anything
9666         interesting.
9667         * docs/gst/Makefile.am:
9668         * docs/gst/gstreamer-sections.txt:
9669         * docs/gst/tmpl/cothreads.sgml:
9670         * docs/gst/tmpl/cothreads_compat.sgml:
9671         * docs/gst/tmpl/gettext.sgml:
9672         * docs/gst/tmpl/gobject2gtk.sgml:
9673         * docs/gst/tmpl/grammar.tab.sgml:
9674         * docs/gst/tmpl/gst-i18n-app.sgml:
9675         * docs/gst/tmpl/gst-i18n-lib.sgml:
9676         * docs/gst/tmpl/gst_private.sgml:
9677         * docs/gst/tmpl/gstaggregator.sgml:
9678         * docs/gst/tmpl/gstarch.sgml:
9679         * docs/gst/tmpl/gstatomic_impl.sgml:
9680         * docs/gst/tmpl/gstbufferstore.sgml:
9681         * docs/gst/tmpl/gstdata_private.sgml:
9682         * docs/gst/tmpl/gstdisksink.sgml:
9683         * docs/gst/tmpl/gstdisksrc.sgml:
9684         * docs/gst/tmpl/gstelementfactory.sgml:
9685         * docs/gst/tmpl/gstextratypes.sgml:
9686         * docs/gst/tmpl/gstfakesink.sgml:
9687         * docs/gst/tmpl/gstfakesrc.sgml:
9688         * docs/gst/tmpl/gstfdsink.sgml:
9689         * docs/gst/tmpl/gstfdsrc.sgml:
9690         * docs/gst/tmpl/gstfilesink.sgml:
9691         * docs/gst/tmpl/gstfilesrc.sgml:
9692         * docs/gst/tmpl/gsthttpsrc.sgml:
9693         * docs/gst/tmpl/gstidentity.sgml:
9694         * docs/gst/tmpl/gstindexfactory.sgml:
9695         * docs/gst/tmpl/gstmarshal.sgml:
9696         * docs/gst/tmpl/gstmd5sink.sgml:
9697         * docs/gst/tmpl/gstmultidisksrc.sgml:
9698         * docs/gst/tmpl/gstmultifilesrc.sgml:
9699         * docs/gst/tmpl/gstpadtemplate.sgml:
9700         * docs/gst/tmpl/gstpipefilter.sgml:
9701         * docs/gst/tmpl/gstschedulerfactory.sgml:
9702         * docs/gst/tmpl/gstsearchfuncs.sgml:
9703         * docs/gst/tmpl/gstshaper.sgml:
9704         * docs/gst/tmpl/gstspider.sgml:
9705         * docs/gst/tmpl/gstspideridentity.sgml:
9706         * docs/gst/tmpl/gststatistics.sgml:
9707         * docs/gst/tmpl/gsttee.sgml:
9708         * docs/gst/tmpl/gsttimecache.sgml:
9709         * docs/gst/tmpl/gsttypefind.sgml:
9710         * docs/gst/tmpl/gsttypefindfactory.sgml:
9711         * docs/gst/tmpl/gstxmlregistry.sgml:
9712         * docs/gst/tmpl/gthread-cothreads.sgml:
9713         * docs/gst/tmpl/old/cothreads.sgml:
9714         * docs/gst/tmpl/old/cothreads_compat.sgml:
9715         * docs/gst/tmpl/old/gettext.sgml:
9716         * docs/gst/tmpl/old/gobject2gtk.sgml:
9717         * docs/gst/tmpl/old/grammar.tab.sgml:
9718         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9719         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9720         * docs/gst/tmpl/old/gst_private.sgml:
9721         * docs/gst/tmpl/old/gstaggregator.sgml:
9722         * docs/gst/tmpl/old/gstarch.sgml:
9723         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9724         * docs/gst/tmpl/old/gstbufferstore.sgml:
9725         * docs/gst/tmpl/old/gstdata_private.sgml:
9726         * docs/gst/tmpl/old/gstdisksink.sgml:
9727         * docs/gst/tmpl/old/gstdisksrc.sgml:
9728         * docs/gst/tmpl/old/gstelementfactory.sgml:
9729         * docs/gst/tmpl/old/gstextratypes.sgml:
9730         * docs/gst/tmpl/old/gstfakesink.sgml:
9731         * docs/gst/tmpl/old/gstfakesrc.sgml:
9732         * docs/gst/tmpl/old/gstfdsink.sgml:
9733         * docs/gst/tmpl/old/gstfdsrc.sgml:
9734         * docs/gst/tmpl/old/gstfilesink.sgml:
9735         * docs/gst/tmpl/old/gstfilesrc.sgml:
9736         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9737         * docs/gst/tmpl/old/gstidentity.sgml:
9738         * docs/gst/tmpl/old/gstindexfactory.sgml:
9739         * docs/gst/tmpl/old/gstmarshal.sgml:
9740         * docs/gst/tmpl/old/gstmd5sink.sgml:
9741         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9742         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9743         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9744         * docs/gst/tmpl/old/gstpipefilter.sgml:
9745         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9746         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9747         * docs/gst/tmpl/old/gstshaper.sgml:
9748         * docs/gst/tmpl/old/gstspider.sgml:
9749         * docs/gst/tmpl/old/gstspideridentity.sgml:
9750         * docs/gst/tmpl/old/gststatistics.sgml:
9751         * docs/gst/tmpl/old/gsttee.sgml:
9752         * docs/gst/tmpl/old/gsttimecache.sgml:
9753         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9754         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9755         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9756         * docs/gst/tmpl/old/types.sgml:
9757         * docs/gst/tmpl/types.sgml:
9758
9759         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9760         gtkdoc-scan doesn't like files with the same name in different
9761         directories.
9762         * gst/elements/Makefile.am:
9763         * gst/elements/gstelements.c:
9764         * gst/elements/gsttypefind.c: 
9765         * gst/elements/gsttypefind.h:
9766         * gst/elements/gsttypefindelement.c:
9767         * gst/elements/gsttypefindelement.h:
9768
9769 2004-04-28  David Schleef  <ds@schleef.org>
9770
9771         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9772         patch (bug #141317):
9773         * gst/gst-i18n-lib.h: Allow disabling gettext.
9774         * gst/gstatomic_impl.h: disable warning when it's dumb.
9775         * gst/gstclock.c: fix include
9776         * gst/gstcompat.h: fix variadic macro
9777         * gst/gstinfo.c: fix include
9778         * gst/gstmacros.h: add defines for inlines on MSVC
9779         * gst/gstplugin.c: fix includes
9780         * gst/gstregistry.c: fix includes
9781         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9782         * gst/gstsystemclock.c: fix include
9783         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9784         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9785         * gst/registries/gstxmlregistry.c:
9786         (gst_xml_registry_parse_element_factory): fix use of non-portable
9787         functions
9788         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9789         * libs/gst/control/dparammanager.h: same
9790
9791 2004-04-28  David Schleef  <ds@schleef.org>
9792
9793         Move a bunch of unused files to old/ with names that are
9794         not case-insensitive-unique.  These files still contain some
9795         useful information that needs to be merged into gstbin.sgml,
9796         etc., so they shouldn't be deleted yet.
9797         * docs/gst/tmpl/GstBin.sgml:
9798         * docs/gst/tmpl/GstBuffer.sgml:
9799         * docs/gst/tmpl/GstCaps.sgml:
9800         * docs/gst/tmpl/GstClock.sgml:
9801         * docs/gst/tmpl/GstCompat.sgml:
9802         * docs/gst/tmpl/GstData.sgml:
9803         * docs/gst/tmpl/GstElement.sgml:
9804         * docs/gst/tmpl/GstEvent.sgml:
9805         * docs/gst/tmpl/GstIndex.sgml:
9806         * docs/gst/tmpl/GstStructure.sgml:
9807         * docs/gst/tmpl/GstTag.sgml:
9808         * docs/gst/tmpl/old/GstBin.sgml:
9809         * docs/gst/tmpl/old/GstBuffer.sgml:
9810         * docs/gst/tmpl/old/GstCaps.sgml:
9811         * docs/gst/tmpl/old/GstClock.sgml:
9812         * docs/gst/tmpl/old/GstCompat.sgml:
9813         * docs/gst/tmpl/old/GstData.sgml:
9814         * docs/gst/tmpl/old/GstElement.sgml:
9815         * docs/gst/tmpl/old/GstEvent.sgml:
9816         * docs/gst/tmpl/old/GstIndex.sgml:
9817         * docs/gst/tmpl/old/GstStructure.sgml:
9818         * docs/gst/tmpl/old/GstTag.sgml:
9819
9820 2004-04-28  David Schleef  <ds@schleef.org>
9821
9822         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9823         (gst_caps_append), (gst_caps_append_structure),
9824         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9825         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9826         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9827         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9828         (gst_caps_intersect), (gst_caps_normalize),
9829         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9830         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9831         * gst/gstcaps.h: use GST_IS_CAPS().
9832
9833 2004-04-26  David Schleef  <ds@schleef.org>
9834
9835         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9836         assembly.  gcc doesn't handle it correctly. (bug #141083)
9837         * gst/gsttrashstack.h: same
9838
9839 2004-04-25  Benjamin Otte  <otte@gnome.org>
9840
9841         * gst/gstelement.c: (gst_element_change_state):
9842           fix assertion to do an int comparison
9843
9844 2004-04-25  Benjamin Otte  <otte@gnome.org>
9845
9846         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9847           better debugging output on error
9848
9849 2004-04-25  Benjamin Otte  <otte@gnome.org>
9850
9851         * gst/gstcaps.c: (gst_caps_subtract):
9852           fix memleak
9853
9854 2004-04-23  Benjamin Otte  <otte@gnome.org>
9855
9856         * gst/gstvalue.c: (gst_value_compare_buffer),
9857         (_gst_value_initialize):
9858           add comparison function for buffers
9859
9860 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9861
9862         * docs/pwg/pwg.xml:
9863           Just found out that this so-called "ima-wav" format is really
9864           just "dvi adpcm" (according to the MS WAV documentation). So
9865           renaming it. We didn't use it yet anyway.
9866
9867 2004-04-23  Benjamin Otte  <otte@gnome.org>
9868
9869         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9870           call gst_caps_is_subset
9871
9872 2004-04-23  Benjamin Otte  <otte@gnome.org>
9873
9874         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9875         (gst_caps_is_subset):
9876           add documentation
9877
9878 2004-04-23  Benjamin Otte  <otte@gnome.org>
9879           
9880         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9881         (gst_caps_structure_subtract), (gst_caps_subtract),
9882         (gst_caps_structure_figure_out_union),
9883         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9884           fix simplifying and subtracting not working correctly with optional
9885           properties
9886           solve assorted problems that make it now simplify ebven more
9887         * docs/gst/tmpl/gstcaps.sgml:
9888         * gst/gstcaps.h:
9889           make gst_caps_do_simplify return a bool to indicate if it simplified
9890         * testsuite/caps/simplify.c: (main):
9891           add more checks. The tests is quite a bit useless right now because
9892           the core is heavily simplifying itself.
9893         * testsuite/caps/caps.h:
9894           fix caps to contain all optional properties
9895
9896 2004-04-22  Benjamin Otte  <otte@gnome.org>
9897
9898         * docs/gst/tmpl/gstcaps.sgml:
9899         * docs/gst/tmpl/gstfilesrc.sgml:
9900         * docs/gst/tmpl/gststructure.sgml:
9901         * docs/gst/tmpl/gstvalue.sgml:
9902           update for recent API changes
9903         * gst/gstcaps.c: (gst_caps_do_simplify):
9904           fix to stop trying with a freed structure
9905         * gst/gstpad.c: (gst_pad_link_fixate):
9906           simplify caps
9907         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9908           remove C++ comment
9909         * gst/gstpad.h:
9910           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9911         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9912         (gst_structure_to_string):
9913           keep the correct type when using lists of ranges
9914         * gst/gstvalue.c: (gst_value_list_prepend_value),
9915         (gst_value_list_append_value):
9916           copy the value before adding to the list (d'oh)
9917         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9918         (gst_value_subtract_int_range_int_range):
9919           handle overflows correctly
9920         * gst/gstvalue.c: (gst_value_subtract_from_list):
9921           fix memleak
9922         * testsuite/caps/caps.h:
9923           add a caps that caused segfaults
9924
9925 2004-04-22  Benjamin Otte  <otte@gnome.org>
9926
9927         * testsuite/refcounting/pad.c: (main):
9928           fix test
9929
9930 2004-04-22  Benjamin Otte  <otte@gnome.org>
9931
9932         * gst/gstcaps.c: (gst_caps_subtract):
9933           allow subtracting ANY and EMPTY from ANY caps
9934
9935 2004-04-22  Benjamin Otte  <otte@gnome.org>
9936
9937         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9938         (gst_caps_union):
9939           only simplify in functions that create new caps. Simplifying in
9940           gst_caps_append breaks tests.
9941
9942 2004-04-22  Benjamin Otte  <otte@gnome.org>
9943
9944         * gst/gstcaps.c: (gst_caps_structure_simplify):
9945           unset GValue after use
9946         * gst/gstcaps.c: (gst_caps_append), 
9947         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9948           use gst_caps_simplify (reduces registry size by 30%)
9949         * gst/gstpad.c: (gst_pad_template_new):
9950           don't allow NULL caps
9951
9952 2004-04-22  Benjamin Otte  <otte@gnome.org>
9953
9954         * docs/gst/gstreamer-sections.txt:
9955           add gst_caps_do_simplify
9956         * gst/gstcaps.c:
9957           add documentation for gst_caps_do_simplify
9958         * gst/gstvalue.h:
9959           fix typo in gst_value_register_subtract_func declaration for gst-doc
9960
9961 2004-04-22  Benjamin Otte  <otte@gnome.org>
9962
9963         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9964           fix bug when converting from empty string.
9965         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9966         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9967           use gst_caps_new_empty to allocate a new caps. Only that function
9968           allocates memory for caps now.
9969         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9970         (gst_caps_remove_structure):
9971           add ability to remove one structure (but not to header yet)
9972         * gst/gstcaps.c: (gst_caps_compare_structures),
9973         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9974         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9975         * gst/gstcaps.h:
9976           add gst_caps_do_simplify that tries to simplify a caps in place.
9977           Deprecate old gst_caps_simplify function.
9978         * testsuite/caps/caps.h:
9979           add caps.h containing a common set of caps to test against.
9980         * testsuite/caps/sets.c: (check_caps), (main):
9981           use it.
9982         * testsuite/caps/.cvsignore:
9983         * testsuite/caps/Makefile.am:
9984         * testsuite/caps/simplify.c: (check_caps), (main):
9985           add test to check correctness and efficency of caps simplification.
9986
9987 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9988
9989         reviewed by Benjamin Otte  <otte@gnome.org>
9990
9991         * gst/gstparse.c: (_gst_parse_escape):
9992           Free the GString used in _gst_parse_escape()
9993
9994 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9995
9996         * gst/gstpad.c: (gst_pad_link_negotiate):
9997           refuse to link if the link is not possible
9998         * configure.ac:
9999         * testsuite/Makefile.am:
10000         * testsuite/negotiation/.cvsignore:
10001         * testsuite/negotiation/Makefile.am:
10002         * testsuite/negotiation/pad_link.c: (main):
10003           add test that checks the above behaviour
10004
10005 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10006
10007         * docs/gst/gstreamer-sections.txt:
10008           add newly added API
10009
10010 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10011
10012         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10013         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
10014         (gst_filesrc_open_file), (gst_filesrc_close_file),
10015         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
10016         * gst/elements/gstfilesrc.h:
10017           add support for non-regular files (#140734)
10018
10019 2004-04-21  Benjamin Otte  <otte@gnome.org>
10020
10021         * gst/gstpad.c: (gst_pad_link_fixate):
10022           add sophisticated error checking code to see if fixation functions
10023           did their fixation right
10024
10025 2004-04-21  Benjamin Otte  <otte@gnome.org>
10026
10027         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
10028           check for ANY caps before appending/unioning
10029         * gst/gstcaps.c: (gst_caps_is_subset),
10030         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
10031         (gst_caps_structure_subtract), (gst_caps_subtract):
10032         * gst/gstcaps.h:
10033           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
10034           the API. deprecate gst_caps_is_equal_fixed
10035         * gst/gstpad.c: (gst_pad_try_set_caps):
10036         * gst/gstqueue.c: (gst_queue_link):
10037           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
10038         * gst/gststructure.c: (gst_structure_get_name_id):
10039         * gst/gststructure.h:
10040           add function gst_structure_get_name_id
10041         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
10042         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
10043         (gst_value_subtract_int_range_int_range),
10044         (gst_value_subtract_double_double_range),
10045         (gst_value_subtract_double_range_double),
10046         (gst_value_subtract_double_range_double_range),
10047         (gst_value_subtract_from_list), (gst_value_subtract_list),
10048         (gst_value_can_intersect), (gst_value_subtract),
10049         (gst_value_can_subtract), (gst_value_register_subtract_func),
10050         (_gst_value_initialize):
10051         * gst/gstvalue.h:
10052           add support for subtracting values from each other. Note that
10053           subtracting means subtracting as in set theory. Required for caps
10054           stuff above.
10055         * testsuite/caps/.cvsignore:
10056         * testsuite/caps/Makefile.am:
10057         * testsuite/caps/erathostenes.c: (erathostenes), (main):
10058         * testsuite/caps/sets.c: (check_caps), (main):
10059         * testsuite/caps/subtract.c: (check_caps), (main):
10060           add tests for subtraction and equality code.
10061
10062 2004-04-20  David Schleef  <ds@schleef.org>
10063
10064         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
10065         * gst/indexers/Makefile.am:
10066         * gst/schedulers/Makefile.am:
10067         * libs/gst/bytestream/Makefile.am:
10068         * libs/gst/control/Makefile.am:
10069         * libs/gst/getbits/Makefile.am:
10070
10071 2004-04-20  David Schleef  <ds@schleef.org>
10072
10073         * common/as-libtool.mak: Fine-tune DLL building.
10074         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10075         (like gst-plugins)
10076         * examples/plugins/Makefile.am: remove plugindir
10077         * gst/autoplug/Makefile.am: DLL building fixes
10078         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10079         Windows.
10080         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10081         * gst/indexers/Makefile.am: DLL building fixes
10082         * gst/schedulers/Makefile.am: DLL building fixes.
10083         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10084         * libs/gst/control/Makefile.am: same
10085         * libs/gst/getbits/Makefile.am: same
10086         * testsuite/Makefile.am: New dlopen directory
10087         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10088         when dlopened.
10089         * testsuite/dlopen/dlopen_gst.c: (main): same
10090         * testsuite/dlopen/loadgst.c: (do_test): same
10091
10092 2004-04-20  David Schleef  <ds@schleef.org>
10093
10094         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10095         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10096
10097 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10098
10099         * gst/gstelement.c: (gst_element_wait),
10100         (gst_element_set_time_delay), (gst_element_change_state):
10101           Use GST_TIME_*
10102
10103 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10104
10105         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10106         (gst_spider_identity_plug):
10107           improve debugging messages
10108         * gst/gstbin.c: (gst_bin_remove_func):
10109           make sure the state_change function is only called with simple state
10110           transitions
10111
10112 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10113
10114         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10115         (gst_fakesink_set_property), (gst_fakesink_chain):
10116         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10117         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10118         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10119         * gst/elements/gstidentity.c: (gst_identity_chain),
10120         (gst_identity_set_property):
10121         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10122         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10123           add warnings to _set_property for unknown arguments
10124           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10125
10126 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10127
10128         * Makefile.am:
10129         * docs/manuals.mak:
10130           add .po file download snippet
10131           fix a bug in the doc makefile
10132
10133 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10134
10135         * Makefile.am:
10136         * po/LINGUAS:
10137         * po/en_GB.po:
10138           Added en_GB translation (Gareth Owen)
10139
10140 2004-04-20  Johan Dahlin  <johan@gnome.org>
10141
10142         * gst/gstpad.c (_invent_event): Clean up
10143
10144 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10145
10146         * testsuite/caps/filtercaps.c: (main):
10147           fix test to test things correctly (caps are complicated)
10148
10149 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10150
10151         * testsuite/caps/Makefile.am:
10152         * testsuite/caps/filtercaps.c: (main):
10153           add test (that doesn't work right now, but should)
10154
10155 2004-04-19  David Schleef  <ds@schleef.org>
10156
10157         * configure.ac: Add test for allowing unaligned access.  Add define
10158         to put in gstconfig.h.
10159         * docs/gst/gstreamer-sections.txt: New symbols
10160         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10161         * docs/gst/tmpl/gstfilesrc.sgml:
10162         * docs/gst/tmpl/gstparse.sgml:
10163         * docs/gst/tmpl/gsttypes.sgml:
10164         * docs/gst/tmpl/gstutils.sgml:
10165         * docs/gst/tmpl/gstvalue.sgml:
10166         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10167         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10168         on most !i386/!powerpc architectures.  From Daniel Gazard
10169         <daniel.gazard@free.fr>.  (bug #140156)
10170         * po/af.po: Check in changes made by gettext.
10171         * po/az.po:
10172         * po/fr.po:
10173         * po/nl.po:
10174         * po/sr.po:
10175         * po/sv.po:
10176
10177 2004-04-20  Benjamin Otte  <otte@gnome.org>
10178
10179         * gst/schedulers/entryscheduler.c: 
10180         (gst_entry_scheduler_yield):
10181           refuse to yield when decoupled elements insist on doing that.
10182           At least it's better than crashing
10183
10184 2004-04-19  David Schleef  <ds@schleef.org>
10185
10186         * docs/libs/Makefile.am: Change sinclude to include
10187         * docs/gst/Makefile.am: same
10188         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10189
10190 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10191
10192         * po/LINGUAS:
10193         * po/uk.po:
10194           Added Ukrainian translation (Maxim V. Dziumanenko)
10195
10196 2004-04-19  Johan Dahlin  <johan@gnome.org>
10197
10198         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10199         checking here, do it before calling the function.
10200         Clean up, use for loops instead of while loops while iterating
10201         over lists.
10202
10203         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10204         in debug message.
10205         (gst_spider_create_and_plug): Improve debug message.
10206         General: Replace while loops which iterates over GLists with for
10207         loops. Which are much cleaner, improves readability, especially
10208         for gst_spider_identity_plug
10209
10210         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10211         fixes bug 140477
10212
10213 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10214
10215         * po/LINGUAS:
10216         * po/tr.po:
10217           Added Turkish translation (Baris Cicek)
10218
10219 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10220
10221         * docs/faq/troubleshooting.xml:
10222           Mention gst-register in the FAQ (fixes 139045).
10223
10224 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10225
10226         * docs/gst/gstreamer-sections.txt:
10227
10228 2004-04-17  Benjamin Otte  <otte@gnome.org>
10229
10230         * gst/gstelement.c: (gst_element_dispose):
10231           simplify
10232         * gst/gstpad.c: (gst_pad_call_chain_function):
10233           don't create loads of events due to bad macro usage
10234
10235 2004-04-16  David Schleef  <ds@schleef.org>
10236
10237         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10238         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10239         * gst/gstvalue.c: (gst_value_serialize_buffer),
10240         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10241         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10242         to indicate types that are fixed wrt caps or not.  Switching to
10243         this function fixes (bug #140298).
10244         * gst/gstvalue.h:
10245
10246 2004-04-16  David Schleef  <ds@schleef.org>
10247
10248         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10249         for GST_UNALIGNED_ACESS, since we essentially know which archs
10250         are ok.
10251
10252 2004-04-17  Benjamin Otte  <otte@gnome.org>
10253
10254         * docs/gst/Makefile.am:
10255           ignore gst/parse directory when building docs (fixes #140205)
10256
10257 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10258
10259         * testsuite/refcounting/mem.c: (vmsize):
10260           do error checking
10261
10262 2004-04-16  Johan Dahlin  <johan@gnome.org>
10263
10264         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10265         and gst_pad_call_get_function.
10266
10267 2004-04-15  David Schleef  <ds@schleef.org>
10268
10269         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10270         checks if we can access unaligned memory.
10271         * configure.ac: Use it.
10272
10273 2004-04-16  Benjamin Otte  <otte@gnome.org>
10274
10275         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10276         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10277         * gst/elements/gstfilesrc.h:
10278           s/seek_happened/need_discont/ and require discont before sending any
10279           data
10280
10281 2004-04-15  David Schleef  <ds@schleef.org>
10282
10283         * gst/gstvalue.c: (gst_value_serialize_buffer),
10284         (gst_value_deserialize_buffer), (_gst_value_initialize):
10285         Register these types as fundamental types. (bug #140015)
10286
10287 2004-04-16  Benjamin Otte  <otte@gnome.org>
10288
10289         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10290         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10291         (gst_pad_pull):
10292           implement enforcing discont events before buffers are passed. This
10293           allows state changes of only some elements and later correctly going
10294           on where they left off (or in short: you can now set audio sinks to
10295           NULL to release the device when the pipeline is paused)
10296         * gst/gstpad.c: (gst_pad_call_chain_function),
10297         (gst_pad_call_get_function):
10298         * gst/gstpad.h:
10299           add gst_pad_call_chain_function and gst_pad_call_get_function for
10300           scheduler interaction. They are required because of the changes
10301           above.
10302         * gst/schedulers/entryscheduler.c: (get_buffer),
10303         (gst_entry_scheduler_chain_wrapper),
10304         (gst_entry_scheduler_get_wrapper),
10305         (gst_entry_scheduler_state_transition),
10306         (gst_entry_scheduler_pad_link):
10307         * gst/schedulers/gstbasicscheduler.c:
10308         (gst_basic_scheduler_chain_wrapper),
10309         (gst_basic_scheduler_src_wrapper),
10310         (gst_basic_scheduler_chainhandler_proxy),
10311         (gst_basic_scheduler_gethandler_proxy),
10312         (gst_basic_scheduler_cothreaded_chain),
10313         (gst_basic_scheduler_chain_elements):
10314         * gst/schedulers/gstoptimalscheduler.c:
10315         (get_group_schedule_function), (pad_clear_queued),
10316         (gst_opt_scheduler_pad_link):
10317           use the new functions instead of calling get/chain-functions
10318           directly.
10319
10320 2004-04-15  David Schleef  <ds@schleef.org>
10321
10322         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10323         * docs/gst/tmpl/gstinfo.sgml: same
10324         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10325         gtk-doc put here.
10326         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10327         * examples/queue/queue.c: (main):  We iterate pipelines, not
10328         bins.  (bug #139996)
10329
10330 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10331
10332         * docs/pwg/advanced-types.xml:
10333           Add MS RLE support. Also document Qt RLE although I have no sample
10334           files for that yet. And document an extra property for ADPCM.
10335
10336 2004-04-15  David Schleef  <ds@schleef.org>
10337
10338         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10339         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10340         Windows.
10341
10342 2004-04-15  David Schleef  <ds@schleef.org>
10343
10344         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10345         symbol names to not conflict with new gstinfo.h symbols.
10346         * gst/gstinfo.h: Add inline functions for all those crazy
10347         compilers that don't know how to handle variadic macros (MSVC).
10348
10349 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10350
10351         * configure.ac: bump nano to 1
10352
10353 === release 0.8.1 ===
10354
10355 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10356
10357         * NEWS:
10358         * RELEASE:
10359         * configure.ac:
10360           releasing 0.8.1, "Snow Brigade"
10361
10362 2004-04-14  David Schleef  <ds@schleef.org>
10363
10364         * testsuite/Makefile.am: define tests_ignore
10365         * testsuite/Rules: Added new tests_ignore, which get compiled,
10366         but not run (generally because they're inconsistent or have
10367         heisenbugs).  Now we can ensure all the .c files compile in
10368         testsuite/.
10369         * testsuite/bins/Makefile.am: define tests_ignore
10370         * testsuite/bytestream/Makefile.am:
10371         * testsuite/caps/Makefile.am:
10372         * testsuite/clock/Makefile.am:
10373         * testsuite/debug/Makefile.am:
10374         * testsuite/debug/global.c: (gst_debug_log_one),
10375         (gst_debug_log_two): Fix compilation problem.
10376         * testsuite/dynparams/Makefile.am:
10377         * testsuite/elements/Makefile.am:
10378         * testsuite/ghostpads/Makefile.am:
10379         * testsuite/indexers/Makefile.am:
10380         * testsuite/parse/Makefile.am:
10381         * testsuite/plugin/Makefile.am:
10382         * testsuite/refcounting/Makefile.am:
10383         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10384         results, because it's not calculated correctly.
10385         * testsuite/refcounting/pad.c: (main): same
10386         * testsuite/states/Makefile.am:
10387         * testsuite/tags/Makefile.am:
10388         * testsuite/threads/Makefile.am:
10389
10390 2004-04-14  David Schleef  <ds@schleef.org>
10391
10392         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10393         generating bad code around the cpu detection asm code.
10394
10395 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10396
10397         * tools/gst-inspect.c: (print_element_info):
10398           print numeric version of rank as well, since we added some - 1
10399           rank values to elements
10400
10401 2004-04-13  David Schleef  <ds@schleef.org>
10402
10403         * configure.ac:  Disable various code when compiling for MinGW.
10404         * gst/elements/Makefile.am:
10405         * gst/elements/gstelements.c:
10406         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10407         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10408         * gst/registries/gstxmlregistry.c: (make_dir):
10409
10410 2004-04-13  David Schleef  <ds@schleef.org>
10411
10412         * gst/Makefile.am:
10413         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10414         assembly.
10415         * gst/gstcpuid_i386.s: remove
10416
10417 2004-04-13  David Schleef  <ds@schleef.org>
10418
10419         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10420         seems to think it needs to be done.
10421         * docs/gst/tmpl/gstfakesink.sgml:
10422         * docs/gst/tmpl/gstfakesrc.sgml:
10423         * docs/gst/tmpl/gstfdsink.sgml:
10424         * docs/gst/tmpl/gstfdsrc.sgml:
10425         * docs/gst/tmpl/gstfilesink.sgml:
10426         * docs/gst/tmpl/gstfilesrc.sgml:
10427         * docs/gst/tmpl/gstidentity.sgml:
10428         * docs/gst/tmpl/gstmd5sink.sgml:
10429         * docs/gst/tmpl/gstmultifilesrc.sgml:
10430         * docs/gst/tmpl/gstpipefilter.sgml:
10431         * docs/gst/tmpl/gstshaper.sgml:
10432         * docs/gst/tmpl/gstspider.sgml:
10433         * docs/gst/tmpl/gstspideridentity.sgml:
10434         * docs/gst/tmpl/gststatistics.sgml:
10435         * docs/gst/tmpl/gsttee.sgml:
10436         * docs/gst/tmpl/gsttypefind.sgml:
10437         * docs/gst/tmpl/gstutils.sgml:
10438
10439 2004-04-13  David Schleef  <ds@schleef.org>
10440
10441         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10442         and to build DLLs on Windows.
10443         * gst/Makefile.am:
10444         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10445         (gst_filesrc_open_file):
10446         * gst/schedulers/Makefile.am:
10447
10448 2004-04-13  David Schleef  <ds@schleef.org>
10449
10450         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10451         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10452         fixating lists.
10453
10454 2004-04-12  David Schleef  <ds@schleef.org>
10455
10456         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10457         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10458         to using it.
10459         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10460         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10461         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10462         * gst/gststructure.c: (gst_structure_set_valist),
10463         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10464         support for buffers.
10465         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10466         intended to be const.
10467         * gst/gsttag.h: same
10468         * gst/gstvalue.c: (gst_value_serialize_buffer),
10469         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10470         to (de)serialize buffers.
10471         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10472         * testsuite/caps/string-conversions.c: (main):
10473         * testsuite/caps/value_serialize.c: add new test
10474
10475 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10476
10477         * docs/pwg/advanced-types.xml:
10478           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10479
10480 2004-04-11  Benjamin Otte  <otte@gnome.org>
10481
10482         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10483           rename categories to basic_*
10484         * gst/schedulers/gstbasicscheduler.c: 
10485         (gst_basic_scheduler_chain_wrapper),
10486         (gst_basic_scheduler_chainhandler_proxy),
10487         (gst_basic_scheduler_gethandler_proxy),
10488         (gst_basic_scheduler_eventhandler_proxy):
10489           debugging category fixes - put common stuff in log category
10490         * gst/schedulers/gstbasicscheduler.c: 
10491         (gst_basic_scheduler_chain_elements):
10492           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10493           active and linking two active chains
10494
10495 2004-04-10  Benjamin Otte  <otte@gnome.org>
10496
10497         * docs/pwg/intro-preface.xml:
10498           fix dead links and remove reference to Wiki
10499
10500 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10501
10502         * gst/schedulers/gstbasicscheduler.c:
10503           make sure we can switch back to the main function if we're still in
10504           the main function (supposed to fix #139617)
10505         * gst/schedulers/gthread-cothreads.h:
10506           don't throw an error when switching to the same cothread
10507
10508 2004-04-09  Benjamin Otte  <otte@gnome.org>
10509
10510         * gst/gstbin.c: (gst_bin_get_type):
10511         * gst/gstclock.c: (gst_clock_get_type):
10512         * gst/gstindex.c: (gst_index_get_type):
10513         * gst/gstobject.c: (gst_object_get_type),
10514         (gst_signal_object_get_type):
10515         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10516         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10517         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10518         * gst/gstqueue.c: (gst_queue_get_type):
10519         * gst/gstregistry.c: (gst_registry_get_type):
10520         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10521         * gst/gstthread.c: (gst_thread_get_type):
10522           don't use memchunks for these objects, use malloc instead
10523
10524 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10525
10526         * docs/gst/.cvsignore:
10527         * docs/gst/Makefile.am:
10528         * docs/gst/gstreamer-sections.txt:
10529         * docs/gst/tmpl/gstaggregator.sgml:
10530         * docs/gst/tmpl/gstbuffer.sgml:
10531         * docs/gst/tmpl/gstclock.sgml:
10532         * docs/gst/tmpl/gstelement.sgml:
10533         * docs/gst/tmpl/gstfakesink.sgml:
10534         * docs/gst/tmpl/gstfakesrc.sgml:
10535         * docs/gst/tmpl/gstfdsink.sgml:
10536         * docs/gst/tmpl/gstfdsrc.sgml:
10537         * docs/gst/tmpl/gstfilesink.sgml:
10538         * docs/gst/tmpl/gstfilesrc.sgml:
10539         * docs/gst/tmpl/gstidentity.sgml:
10540         * docs/gst/tmpl/gstindex.sgml:
10541         * docs/gst/tmpl/gstinfo.sgml:
10542         * docs/gst/tmpl/gstmd5sink.sgml:
10543         * docs/gst/tmpl/gstmultifilesrc.sgml:
10544         * docs/gst/tmpl/gstpad.sgml:
10545         * docs/gst/tmpl/gstpipefilter.sgml:
10546         * docs/gst/tmpl/gstpipeline.sgml:
10547         * docs/gst/tmpl/gstpluginfeature.sgml:
10548         * docs/gst/tmpl/gstqueue.sgml:
10549         * docs/gst/tmpl/gstregistry.sgml:
10550         * docs/gst/tmpl/gstscheduler.sgml:
10551         * docs/gst/tmpl/gstshaper.sgml:
10552         * docs/gst/tmpl/gstspider.sgml:
10553         * docs/gst/tmpl/gstspideridentity.sgml:
10554         * docs/gst/tmpl/gststatistics.sgml:
10555         * docs/gst/tmpl/gstsystemclock.sgml:
10556         * docs/gst/tmpl/gsttee.sgml:
10557         * docs/gst/tmpl/gstthread.sgml:
10558         * docs/gst/tmpl/gsttypefind.sgml:
10559         * docs/gst/tmpl/gstutils.sgml:
10560           further doc build fixes
10561
10562 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10563
10564         * docs/gst/Makefile.am:
10565           make docs exit on scanning problems
10566           fix nonsrcdir build issues
10567         * docs/gst/gstreamer-sections.txt:
10568           adding stuff from -unused
10569         * gst/gstqueue.h:
10570           create GstQueueSize
10571         * gst/schedulers/cothreads_compat.h:
10572           fix cothread warnings
10573
10574 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10575
10576         * docs/gst/gstreamer-sections.txt:
10577           remove defines deprecated by Benjamin
10578
10579 2004-04-07  Benjamin Otte  <otte@gnome.org>
10580
10581         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10582           when the buffer is complete, don't check if other buffers are needed
10583         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10584           check that the offset is >0 so we don't try to read before the
10585           beginning of the file
10586         * gst/gstpad.c: (gst_pad_set_pad_template):
10587           sink the template, so we don't end up with 130k pad templates
10588
10589 2004-04-06  Benjamin Otte  <otte@gnome.org>
10590
10591         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10592           don't ref the element, adding already reffed it. And we didn't unref
10593           it later anyway... (huge memleak when you used many spider elements)
10594         * gst/gstelement.c: (gst_element_base_class_finalize):
10595         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10596         (gst_element_register):
10597         * gst/gsturi.c: (gst_element_make_from_uri):
10598           use gst_object_(un)ref instead of g_object(un)ref
10599
10600 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10601
10602         * gst/gstbuffer.h:
10603           remove macro that wouldn't work anymore because struct member has
10604           been removed.
10605         * gst/schedulers/entryscheduler.c: (schedule_forward):
10606           fix segfault for unconnected pads
10607         
10608 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10609
10610         reviewed by David Schleef <ds@schleef.org>
10611
10612         * gst/gstinfo.h:
10613           *_FORMAT modifiers should require putting a % in front of them for
10614           consistency reasons.
10615
10616 2004-04-05  Colin Walters  <walters@redhat.com>
10617
10618         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10619         space.
10620
10621 2004-04-05  Benjamin Otte  <otte@gnome.org>
10622
10623         * configure.ac:
10624         * gst/Makefile.am:
10625         * gst/gst_private.h:
10626         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10627           add support for detecting if GStreamer runs inside valgrind.
10628           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10629           print a big message in valgrind that GStreamer has detected it's
10630           running inside and might now use different code.
10631         * gst/gstmemchunk.c: (populate), (free_area),
10632         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10633         (gst_mem_chunk_free):
10634           flag memchunks for valgrind, so it can detect leaking of chunks.
10635           This allows detecting leaks of GstBuffer and GstEvent correctly
10636           inside valgrind.
10637
10638 2004-04-05  David Schleef  <ds@schleef.org>
10639
10640         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10641           jensgr@gmx.net (Jens Granseuer)
10642
10643 2004-04-05  David Schleef  <ds@schleef.org>
10644
10645         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10646         (gst_buffer_default_free), (gst_buffer_default_copy),
10647         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10648         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10649         structures in one place.
10650
10651 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10652
10653         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10654           (GST_TIME_FORMAT, GST_TIME_ARGS)
10655
10656 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10657
10658         * testsuite/elements/Makefile.am:
10659           disable test until it stops breaking make distcheck
10660
10661 2004-04-05  Johan Dahlin  <johan@gnome.org>
10662
10663         * po/sv.po: Updated translation
10664
10665 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10666
10667         * gst/gstplugin.c: (gst_plugin_load_file):
10668           fix segfault for when original plugin was loaded statically
10669
10670 2004-04-05  Benjamin Otte  <otte@gnome.org>
10671
10672         * testsuite/debug/category.c: (main):
10673         * testsuite/debug/commandline.c: (main):
10674         * testsuite/debug/output.c: (main):
10675           fix tests to work again with debugging enabled
10676
10677 2004-04-05  Benjamin Otte  <otte@gnome.org>
10678
10679         * gst/schedulers/gstbasicscheduler.c:
10680         (gst_basic_scheduler_pad_link):
10681           fix to work with recent scheduling changes
10682
10683 2004-04-05  Benjamin Otte  <otte@gnome.org>
10684
10685         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10686         prepareChangeLog doesn't work when cvs indents):
10687           don't throw an error when no element can be scheduled, there's too
10688           many weird reasons why it doesn't work. Return STOPPED instead.
10689           decoupled elemts' schedulability doesn't depend on bufpens.
10690
10691 2004-04-04  Benjamin Otte  <otte@gnome.org>
10692
10693         * gst/schedulers/gstbasicscheduler.c:
10694         (gst_basic_scheduler_pad_select):
10695           fix uninitialized variable warnings
10696
10697 2004-04-04  Benjamin Otte  <otte@gnome.org>
10698
10699         * gst/gstpad.c: (gst_pad_collect_valist):
10700           fix uninitialized variable warning
10701         * gst/schedulers/entryscheduler.c: (schedule_forward):
10702           fix shadowed variable
10703
10704 2004-04-04  Benjamin Otte  <otte@gnome.org>
10705
10706         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10707         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10708         (gst_pad_select):
10709         * gst/gstpad.h:
10710         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10711         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10712         * gst/gstscheduler.h:
10713           implement gst_pad_collect as replacement for gst_pad_select.
10714           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10715           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10716           new pad_select, lock and unlock calls.
10717         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10718         * gst/cothreads.h:
10719         * gst/schedulers/cothreads_compat.h:
10720         * gst/schedulers/gthread-cothreads.h:
10721           remove unused cothread_lock and cothread_unlock calls
10722         * gst/schedulers/entryscheduler.c:
10723         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10724         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10725         (gst_entry_scheduler_pad_select):
10726           update to new API
10727         * gst/schedulers/gstbasicscheduler.c:
10728         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10729         (gst_basic_scheduler_pad_select):
10730           remove useless lock and unlock calls, update pad_select to new API
10731           (untested)
10732         * gst/schedulers/gstoptimalscheduler.c:
10733         (gst_opt_scheduler_class_init):
10734           remove useless select, lock and unlock function calls
10735         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10736           use gst_pad_collect instead of gst_pad_select
10737
10738 2004-04-04  Benjamin Otte  <otte@gnome.org>
10739
10740         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10741         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10742         (schedule_next_element), (print_entry):
10743           add can_schedule_pad to handle element states.
10744           add schedule_forward to select the correct entry to schedule next
10745
10746 2004-04-03  Benjamin Otte  <otte@gnome.org>
10747
10748         * gst/schedulers/entryscheduler.c: 
10749           remove unused variable, fix error inside Rb, fix compile warning in
10750           unreachable code
10751
10752 2004-04-03  Benjamin Otte  <otte@gnome.org>
10753
10754         * gst/schedulers/entryscheduler.c:
10755           completely revamp the inner workings, so it's a lot easier to
10756           understand and extend
10757
10758 2004-04-03  Andy Wingo  <wingo@pobox.com>
10759
10760         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10761         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10762         This allows better introspection of pipeline topology.
10763         (add_to_chain): Don't do trickery to put loop elements first;
10764         rather, queue a chain sort by marking the chain as dirty.
10765         (remove_from_chain): Mark the chain dirty.
10766         (sort_chain): New function. Sorts the group list so that terminal
10767         sinks are first. This means elements on the sink side will be
10768         preferentially sscheduled before elements on the src side of the
10769         pipeline.
10770         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10771         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10772         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10773         (group_inc_link): Change argument and variable names to match the
10774         new link structure member names (src and sink).
10775         (group_dec_link): Add some description
10776
10777 2004-04-03  Benjamin Otte  <otte@gnome.org>
10778
10779         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10780         * gst/gstinfo.h:
10781         * testsuite/debug/category.c: (main):
10782         * testsuite/debug/commandline.c: (main):
10783         * testsuite/debug/output.c: (main):
10784         * testsuite/debug/printf_extension.c: (main):
10785           fix to successfully build and test with --disable-gst-debug
10786           configure switch (fixes #138705)
10787
10788 2004-04-03  Benjamin Otte  <otte@gnome.org>
10789
10790         * docs/pwg/building-boiler.xml:
10791           add cvs login line and s/anonymous/anoncvs/
10792
10793 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10794
10795         reviewed by Benjamin Otte  <otte@gnome.org>
10796
10797         * gst/gststructure.c: (gst_structure_free):
10798           memleak fix: free fields array (partial fix for #134839)
10799
10800 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10801
10802         * docs/random/ds/0.9-suggested-changes:
10803           Add a note to change handoff use in fakesrc to be usable in
10804           a more generic way (fakesrc should be renamed to appsrc or so).
10805         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10806           Change signal type to scope, so we can fill the buffer in the
10807           handoff handler (that's the whole use of this signal...).
10808
10809 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10810
10811         * docs/pwg/other-ntoone.xml:
10812           Document muxers and n-to-1 elements.
10813
10814 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10815
10816         * gst/registries/gstxmlregistry.c
10817         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10818         determine if a file is a G_MODULE. The old one discards paths
10819         containing "so" somewhere in the middle. My home directory is
10820         called "soto". Go figure...
10821
10822 2004-03-31  David Schleef  <ds@schleef.org>
10823
10824         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10825         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10826         * gst/gstbuffer.h:
10827
10828 2004-03-31  David Schleef  <ds@schleef.org>
10829
10830         * gst/gstvalue.c: (gst_value_union_int_int_range),
10831         (gst_value_union_int_range_int_range), (gst_value_can_union),
10832         (gst_value_union), (_gst_value_initialize):  Add some union
10833         implementations.  We didn't have any previously.
10834         * testsuite/caps/Makefile.am:
10835         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10836         (gst_audioscale_getcaps), (test_caps), (main): A little test
10837         that is the same as the caps manipulation in audioscale.
10838
10839 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10840
10841         * docs/faq/general.xml:
10842           add entry about "does gst support format X?"
10843
10844 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10845
10846         * gst/gstthread.c:
10847           fix docs
10848         * gst/gstutils.h:
10849           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10850
10851 2004-03-30  Benjamin Otte  <otte@gnome.org>
10852
10853         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10854           set the offset of the buffer to the requested offset
10855         * gst/elements/gsttypefind.c: (stop_typefinding):
10856           revert patch 1.18 (which I unfortunately don't know the reason for).
10857           This is needed to allow downstream elements to seek. Otherwise
10858           typefind might overwrite a previous seek by downstream elements.
10859           This lead to errors with id3tag and typefind on some mp3s.
10860         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10861         (gst_entry_scheduler_iterate):
10862           be more verbose when debugging
10863
10864 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10865
10866         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10867           make sure we don't get NULL strings
10868
10869 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10870
10871         * gst/gstcaps.c:
10872         * gst/gstelement.c:
10873         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10874         * gst/gstindex.c: (gst_index_resolver_get_type),
10875         (gst_index_get_type), (gst_index_factory_get_type):
10876         * gst/gstinfo.c:
10877         * gst/gstpad.c:
10878         * gst/gstplugin.c:
10879         * gst/gsturi.c: (gst_uri_handler_get_type):
10880         * gst/gstvalue.c:
10881           first batch of documentation fixes
10882
10883 2004-03-29  David Schleef  <ds@schleef.org>
10884
10885         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10886         * docs/gst/gstreamer-docs.sgml:  More hacking
10887         * docs/gst/gstreamer-sections.txt:
10888         * docs/gst/tmpl/cothreads_compat.sgml:
10889         * docs/gst/tmpl/gstcaps.sgml:
10890         * docs/gst/tmpl/gstclock.sgml:
10891         * docs/gst/tmpl/gstelement.sgml:
10892         * docs/gst/tmpl/gstevent.sgml:
10893         * docs/gst/tmpl/gstpad.sgml:
10894         * docs/gst/tmpl/gstutils.sgml:
10895         * docs/gst/tmpl/gstxml.sgml:
10896         * docs/gst/tmpl/gthread-cothreads.sgml:
10897         * docs/random/ds/0.9-suggested-changes:
10898         * gst/elements/gstfakesink.h: doc fixes
10899         * gst/elements/gstfakesrc.h: doc fixes
10900         * gst/gstcaps.c: doc fixes
10901         * gst/gstcaps.h: doc fixes
10902         * gst/gstelement.c: doc fixes
10903         * gst/gstelement.h: doc fixes
10904         * gst/gstindex.c: doc fixes
10905         * gst/gstinfo.c: doc fixes
10906         * gst/gstpad.c: doc fixes
10907         * gst/gstpad.h: doc fixes
10908         * gst/gstplugin.c: doc fixes
10909         * gst/gsttypefind.h: doc fixes
10910         * gst/gsturi.c: doc fixes
10911         * gst/gstvalue.c: doc fixes
10912
10913 2004-03-29  Colin Walters  <walters@redhat.com>
10914
10915         * gst/registries/gstxmlregistry.c (get_time)
10916         (plugin_times_older_than_recurse):
10917         Use the result of stat to determine whether a path is a file,
10918         so we don't attempt to opendir() files.
10919
10920 2004-03-29  Benjamin Otte  <otte@gnome.org>
10921
10922         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10923           print caps in debugging output when setting caps failed
10924         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10925         (schedule_next_element), (get_buffer), (run_chainhandler),
10926         (element_may_start), (gst_entry_scheduler_chain_handler),
10927         (gst_entry_scheduler_get_handler),
10928         (gst_entry_scheduler_state_transition),
10929         (gst_entry_scheduler_pad_link):
10930           make this scheduler a testcase for mandatory
10931           discont-before-first-buffer which is needed if we want to allow apps
10932           to release the sound device.
10933           add SCHED_ASSERT macro to print scheduler state before an assertion
10934           triggers.
10935
10936 2004-03-29  Benjamin Otte  <otte@gnome.org>
10937
10938         * COPYING:
10939           replace by LGPL (former COPYING.LIB). The core is completely
10940           licensed LGPL.
10941         * COPYING.LIB:
10942           remove
10943
10944 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10945
10946         * po/af.po:
10947         * po/sv.po:
10948           updated Afrikaans and Swedish
10949
10950 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10951
10952         * po/LINGUAS:
10953         * po/az.po:
10954           adding Azerbaijani (Mətin Əmirov)
10955
10956 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10957
10958         * gst/gstelement.h: 
10959         * gst/gstelement.c (gst_element_set_time_delay): New function for
10960         setting element time taking into account a hardware buffering
10961         delay.
10962         (gst_element_set_time): Now just an invocation of
10963         gst_element_set_time_delay.
10964         * gst/gstclock.h: 
10965         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10966         allowing to set event times in the future.
10967         (gst_clock_get_event_time): Now just an invocation of
10968         gst_clock_get_event_time_delay.
10969
10970 2004-03-28  Benjamin Otte  <otte@gnome.org>
10971
10972         * gst/gstbin.c: (gst_bin_set_element_sched),
10973         (gst_bin_unset_element_sched):
10974           don't add decoupled elements to schedulers - otherwise it's
10975           impossible to control if a link to a decoupled element was already
10976           removed from a scheduler or not.
10977         * gst/schedulers/cothreads_compat.h:
10978         * gst/schedulers/gthread-cothreads.h:
10979           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10980           is no "unused" warning.
10981         * gst/schedulers/Makefile.am:
10982         * gst/schedulers/entryscheduler.c:
10983           add new scheduler, based on ideas from talking to David and Martin.
10984           It's supposed to be small and correct. Currently it's also slow (but
10985           it's not noticable)
10986         * examples/retag/retag.c: (main):
10987         * testsuite/bytestream/test1.c: (main):
10988           fix missing NULLs at end of variadic functions
10989         * testsuite/elements/.cvsignore:
10990           update
10991
10992 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
10993
10994         * gst/gstevent.h:
10995         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
10996
10997 2004-03-25  David Schleef  <ds@schleef.org>
10998
10999         * docs/gst/gstreamer-sections.txt:  More doc hacking.
11000         * docs/gst/tmpl/gstaggregator.sgml:
11001         * docs/gst/tmpl/gstautoplugfactory.sgml:
11002         * docs/gst/tmpl/gstbin.sgml:
11003         * docs/gst/tmpl/gstbuffer.sgml:
11004         * docs/gst/tmpl/gstbufferstore.sgml:
11005         * docs/gst/tmpl/gstfakesink.sgml:
11006         * docs/gst/tmpl/gstfakesrc.sgml:
11007         * docs/gst/tmpl/gstmd5sink.sgml:
11008         * docs/gst/tmpl/gstreamer-unused.sgml:
11009         * docs/gst/tmpl/gstsearchfuncs.sgml:
11010         * docs/gst/tmpl/gstshaper.sgml:
11011         * docs/gst/tmpl/gstspider.sgml:
11012         * docs/gst/tmpl/gsttee.sgml:
11013         * docs/gst/tmpl/gstutils.sgml:
11014         * docs/gst/tmpl/gstvalue.sgml:
11015         * docs/gst/tmpl/gstxml.sgml:
11016         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
11017         and we don't support it.
11018         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
11019         (gst_use_threads), (gst_has_threads): same
11020         * gst/gstthreaddummy.c: same
11021         * gst/autoplug/gstspider.c: Make gst_spider_details static.
11022         * gst/autoplug/gstspider.h: same
11023         * gst/elements/gstaggregator.h: Remove bogus function from header
11024         * gst/elements/gstfakesink.h: same
11025         * gst/elements/gstfakesrc.h: same
11026         * gst/elements/gstmd5sink.h: same
11027         * gst/elements/gstshaper.h: same
11028         * gst/elements/gsttee.h: same
11029         * gst/gstbin.c: doc fixes
11030         * gst/gstbin.h: Remove unused definition.
11031         * gst/gstbuffer.c: doc fixes
11032         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
11033         * gst/gstfilter.c: doc fixes
11034         * gst/gsttag.c: doc fixes
11035         * gst/gstvalue.c: doc fixes
11036
11037 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11038
11039         * docs/pwg/advanced-types.xml:
11040           Document typefinding.
11041         * docs/pwg/other-oneton.xml:
11042           Document one-to-n elements, demuxers and parsers.
11043
11044 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
11045
11046         reviewed by: David Schleef  <ds@schleef.org>
11047
11048         * configure.ac: Check bison version (bug #127838)
11049
11050 2004-03-25  David Schleef  <ds@schleef.org>
11051
11052         * docs/gst/gstreamer-docs.sgml: More fine tuning.
11053         * docs/gst/gstreamer-sections.txt:
11054         * docs/gst/tmpl/gstautoplug.sgml:
11055         * docs/gst/tmpl/gststaticautoplug.sgml:
11056         * docs/gst/tmpl/gststaticautoplugrender.sgml:
11057         * docs/gst/tmpl/gstutils.sgml:
11058         * docs/gst/tmpl/gstxml.sgml:
11059
11060 2004-03-24  David Schleef  <ds@schleef.org>
11061
11062         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
11063         manual being such complete crap, that I decided to do major
11064         hacking of it.  This checkin replaces any fine tuning that
11065         may have been done previously, with the benefit of actually
11066         being complete for much of the API that was changed since
11067         0.6.  Further fine tuning will occur shortly.  (bug #134721)
11068         * docs/gst/gstreamer-sections.txt:
11069         * docs/gst/tmpl/GstBin.sgml:
11070         * docs/gst/tmpl/GstBuffer.sgml:
11071         * docs/gst/tmpl/GstCaps.sgml:
11072         * docs/gst/tmpl/GstClock.sgml:
11073         * docs/gst/tmpl/GstCompat.sgml:
11074         * docs/gst/tmpl/GstData.sgml:
11075         * docs/gst/tmpl/GstElement.sgml:
11076         * docs/gst/tmpl/GstEvent.sgml:
11077         * docs/gst/tmpl/GstIndex.sgml:
11078         * docs/gst/tmpl/GstStructure.sgml:
11079         * docs/gst/tmpl/GstTag.sgml:
11080         * docs/gst/tmpl/cothreads.sgml:
11081         * docs/gst/tmpl/cothreads_compat.sgml:
11082         * docs/gst/tmpl/gettext.sgml:
11083         * docs/gst/tmpl/grammar.tab.sgml:
11084         * docs/gst/tmpl/gst-i18n-app.sgml:
11085         * docs/gst/tmpl/gst-i18n-lib.sgml:
11086         * docs/gst/tmpl/gst.sgml:
11087         * docs/gst/tmpl/gst_private.sgml:
11088         * docs/gst/tmpl/gstaggregator.sgml:
11089         * docs/gst/tmpl/gstarch.sgml:
11090         * docs/gst/tmpl/gstatomic.sgml:
11091         * docs/gst/tmpl/gstatomic_impl.sgml:
11092         * docs/gst/tmpl/gstbin.sgml:
11093         * docs/gst/tmpl/gstbuffer.sgml:
11094         * docs/gst/tmpl/gstbufferstore.sgml:
11095         * docs/gst/tmpl/gstcaps.sgml:
11096         * docs/gst/tmpl/gstclock.sgml:
11097         * docs/gst/tmpl/gstcompat.sgml:
11098         * docs/gst/tmpl/gstconfig.sgml:
11099         * docs/gst/tmpl/gstcpu.sgml:
11100         * docs/gst/tmpl/gstdata.sgml:
11101         * docs/gst/tmpl/gstdata_private.sgml:
11102         * docs/gst/tmpl/gstelement.sgml:
11103         * docs/gst/tmpl/gstenumtypes.sgml:
11104         * docs/gst/tmpl/gsterror.sgml:
11105         * docs/gst/tmpl/gstevent.sgml:
11106         * docs/gst/tmpl/gstfakesink.sgml:
11107         * docs/gst/tmpl/gstfakesrc.sgml:
11108         * docs/gst/tmpl/gstfilesink.sgml:
11109         * docs/gst/tmpl/gstfilter.sgml:
11110         * docs/gst/tmpl/gstindex.sgml:
11111         * docs/gst/tmpl/gstinfo.sgml:
11112         * docs/gst/tmpl/gstinterface.sgml:
11113         * docs/gst/tmpl/gstlog.sgml:
11114         * docs/gst/tmpl/gstmacros.sgml:
11115         * docs/gst/tmpl/gstmarshal.sgml:
11116         * docs/gst/tmpl/gstmd5sink.sgml:
11117         * docs/gst/tmpl/gstmultifilesrc.sgml:
11118         * docs/gst/tmpl/gstobject.sgml:
11119         * docs/gst/tmpl/gstpad.sgml:
11120         * docs/gst/tmpl/gstparse.sgml:
11121         * docs/gst/tmpl/gstpipeline.sgml:
11122         * docs/gst/tmpl/gstplugin.sgml:
11123         * docs/gst/tmpl/gstpluginfeature.sgml:
11124         * docs/gst/tmpl/gstqueue.sgml:
11125         * docs/gst/tmpl/gstreamer-unused.sgml:
11126         * docs/gst/tmpl/gstregistry.sgml:
11127         * docs/gst/tmpl/gstregistrypool.sgml:
11128         * docs/gst/tmpl/gstscheduler.sgml:
11129         * docs/gst/tmpl/gstsearchfuncs.sgml:
11130         * docs/gst/tmpl/gstshaper.sgml:
11131         * docs/gst/tmpl/gstspider.sgml:
11132         * docs/gst/tmpl/gstspideridentity.sgml:
11133         * docs/gst/tmpl/gststructure.sgml:
11134         * docs/gst/tmpl/gstsystemclock.sgml:
11135         * docs/gst/tmpl/gsttag.sgml:
11136         * docs/gst/tmpl/gsttaginterface.sgml:
11137         * docs/gst/tmpl/gsttee.sgml:
11138         * docs/gst/tmpl/gstthread.sgml:
11139         * docs/gst/tmpl/gsttrace.sgml:
11140         * docs/gst/tmpl/gsttrashstack.sgml:
11141         * docs/gst/tmpl/gsttypefind.sgml:
11142         * docs/gst/tmpl/gsttypes.sgml:
11143         * docs/gst/tmpl/gsturi.sgml:
11144         * docs/gst/tmpl/gsturitype.sgml:
11145         * docs/gst/tmpl/gstutils.sgml:
11146         * docs/gst/tmpl/gstvalue.sgml:
11147         * docs/gst/tmpl/gstversion.sgml:
11148         * docs/gst/tmpl/gstxml.sgml:
11149         * docs/gst/tmpl/gstxmlregistry.sgml:
11150         * docs/gst/tmpl/gthread-cothreads.sgml:
11151         * docs/gst/tmpl/types.sgml:
11152
11153 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11154
11155         * docs/pwg/other-sink.xml:
11156         * docs/pwg/other-source.xml:
11157           Documentation on how to write source and sink elements. Other
11158           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11159           manager, autoplugger) are all still pending.
11160
11161 2004-03-25  Benjamin Otte  <otte@gnome.org>
11162
11163         * testsuite/elements/Makefile.am:
11164         * testsuite/elements/gst-compprep-check:
11165           add check to make sure gst-compprep works
11166         * testsuite/elements/gst-inspect-check.in:
11167           improve initialization output
11168         * testsuite/Makefile.am:
11169         * testsuite/gst-inspect-check:
11170           remove old file
11171
11172 2004-03-24  David Schleef  <ds@schleef.org>
11173
11174         * testsuite/elements/Makefile.am:
11175         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11176         to the testsuite.
11177
11178 2004-03-24  Benjamin Otte  <otte@gnome.org>
11179
11180         * libs/gst/control/dparam.c: (gst_dparam_attach),
11181         (gst_dparam_detach):
11182         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11183           fix lvalue casts for real
11184
11185 2004-03-24  Benjamin Otte  <otte@gnome.org>
11186
11187         * gst/schedulers/gstbasicscheduler.c:
11188         (gst_basic_scheduler_src_wrapper):
11189         * gst/schedulers/gstoptimalscheduler.c:
11190         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11191         (pad_clear_queued), (gst_opt_scheduler_add_element),
11192         (gst_opt_scheduler_remove_element):
11193           fix GStreamer to not have issues with lvalue casts anymore (fixes
11194           #136841)
11195
11196 2004-03-24  Benjamin Otte  <otte@gnome.org>
11197
11198         * gst/gstelement.c:
11199           add documentation about a gobject quirk where the object hasn't the
11200           correct class pointer set on initialization
11201         * gst/schedulers/gstbasicscheduler.c:
11202         (gst_basic_scheduler_src_wrapper):
11203           make sure to not run into an infinite loop
11204
11205 2004-03-22  Benjamin Otte  <otte@gnome.org>
11206
11207         * gst/gstutils.c: (gst_util_dump_mem):
11208         * gst/gstutils.h:
11209           first argument of gst_util_dump_mem should be const
11210
11211 2004-03-22  Johan Dahlin  <johan@gnome.org>
11212
11213         * gst/gstvalue.h: Clean up a little bit.
11214
11215 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11216
11217         reviewed by Benjamin Otte  <otte@gnome.org>
11218
11219         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11220         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11221         (gst_aggregator_class_init), (gst_aggregator_init):
11222         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11223         (gst_filesrc_dispose), (gst_filesrc_set_location):
11224         * gst/elements/gstidentity.c: (gst_identity_finalize),
11225         (gst_identity_class_init), (gst_identity_chain):
11226         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11227         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11228         (gst_statistics_class_init):
11229         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11230         (gst_tee_get_property):
11231           clean up used memory in this elements correctly on teardown (closes
11232           #137279)
11233
11234 2004-03-20  Colin Walters  <walters@redhat.com>
11235
11236         * gst/registries/gstxmlregistry.c:
11237         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11238         registry saving atomic.
11239
11240 2004-03-20  Colin Walters  <walters@redhat.com>
11241
11242         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11243         Just use
11244         access() instead of actually creating and deleting files.
11245
11246 2004-03-18  David Schleef  <ds@schleef.org>
11247
11248         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11249         (bug #137625)
11250
11251 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11252
11253         * po/sv.po: updated translation (Christian Rose)
11254
11255 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11256
11257         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11258         (gst_filesink_get_query_types), (_do_init),
11259         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11260           return FALSE silently
11261         * po/af.po: updated translation (Petri Jooste)
11262
11263 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11264
11265         * Makefile.am:
11266         * configure.ac:
11267           dist common properly
11268         * po/af.po:
11269         * po/fr.po:
11270         * po/nl.po:
11271         * po/sr.po:
11272         * po/sv.po:
11273           refreshing translations
11274
11275 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11276
11277         * po/LINGUAS:
11278         * po/sv.po:
11279         * po/af.po:
11280           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11281
11282 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11283
11284         * Makefile.am: use common/release.mak
11285
11286 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11287
11288         * docs/faq/gst-uninstalled:
11289           adding gst-monkeysaudio to the list of possible plugin dirs
11290
11291 2004-03-16  David Schleef  <ds@schleef.org>
11292
11293         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11294         (gst_init_check_with_popt_table):  Fix some gettext strings to
11295         make them easier to translate.  Required making the strings
11296         non-const.
11297
11298 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11299
11300         * configure.ac: bump nano to 1
11301
11302 === release 0.8.0 ===
11303
11304 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11305
11306         * configure.ac: release 0.8.0, "Executive Slacks"
11307
11308 2004-03-16  Johan Dahlin  <johan@gnome.org>
11309
11310         * gst/schedulers/gstoptimalscheduler.c
11311         (gst_opt_scheduler_pad_unlink): Remove double ;,
11312         spotted by Scott Wheeler
11313
11314 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11315
11316         * configure.ac: bump libtool version
11317
11318 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11319
11320         * gst/gstcaps.h:
11321         * gst/gststructure.h:
11322           add reserved padding
11323
11324 2004-03-15  Benjamin Otte  <otte@gnome.org>
11325
11326         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11327           set the first parameter for select call correctly.
11328           (fixes #137230)
11329
11330 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11331
11332         * *.c,*.h: don't mix tabs and spaces
11333
11334 2004-03-15  Johan Dahlin  <johan@gnome.org>
11335
11336         * gst/schedulers/gstoptimalscheduler.c
11337         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11338         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11339
11340         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11341         
11342 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11343
11344         * testsuite/Rules:
11345           fix gst-register rules
11346
11347 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11348
11349         * testsuite/Rules:
11350           use versioned gst-register
11351
11352 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11353
11354         * docs/libs/gstreamer-libs-sections.txt:
11355           remove </SUBSECTION>
11356         * gst/gstplugin.c:
11357         * gst/gstregistry.c: (gst_registry_add_plugin):
11358         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11359         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11360           add debugging and fix some comment blocks
11361
11362 2004-03-15  Johan Dahlin  <johan@gnome.org>
11363
11364         * *.h: Revert indent changes.
11365         
11366 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11367
11368         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11369           g_error_free the g_error
11370         * tools/gst-feedback-m.m:
11371           check for other versions of gstreamer
11372         * tools/gst-indent:
11373           use sh, not bash
11374
11375 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11376
11377         * tools/gst-register.c: do not spill paths when registries are not
11378           writable, until we fix the "user running gst-register" case.
11379
11380 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11381
11382         * *.c, *.h: commit of gst-indent run on core
11383
11384 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11385
11386         * tools/gst-indent:
11387         * tools/Makefile.am:
11388           add our indentation style as a script
11389
11390 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11391
11392         * po/sr.po:
11393         * po/LINGUAS:
11394           added Serbian translation
11395
11396 2004-03-13  Benjamin Otte  <otte@gnome.org>
11397
11398         * gst/gstelement.c:
11399           add documentation note about gst_element_found_tags_for_pad not
11400           being usable in getfunctions. (see #137042)
11401
11402 2004-03-12  David Schleef  <ds@schleef.org>
11403
11404         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11405         change API right now!  Readd gst_caps_is_simple() macro.
11406         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11407         uninitialized variable.  I'd bet this caused crashes.
11408         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11409
11410 2004-03-12  Johan Dahlin  <johan@gnome.org>
11411
11412         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11413         * gst/gstcaps.h: Clean up
11414
11415         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11416         _gst_caps_initalize()
11417
11418         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11419         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11420
11421         * gst/gststructure.c (gst_structure_get_type): Ditto
11422
11423         * gst/gststructure.h: Ditto
11424         
11425 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11426
11427         * gst/gstqueue.c: (gst_queue_init):
11428           Reset default max. values in queues. Reason is simply to avoid
11429           braindead use. If you want wider values, use the properties. The
11430           default is supposed to always work. Wider values would make this
11431           beast a memory hog by default (250 full-PAL RGB32 video frames?
11432           That's 440 MB! No thank you).
11433
11434 2004-03-10  David Schleef  <ds@schleef.org>
11435
11436         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11437         were found.  (bug #136793)
11438
11439 2004-03-10  Johan Dahlin  <johan@gnome.org>
11440
11441         * gst/schedulers/gstoptimalscheduler.c
11442         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11443         links to elements within the same group, so we can finally remove
11444         that annoying warning. Refactor the code a little bit
11445         (group_dec_links_for_element): Split out
11446
11447 2004-03-09  David Schleef  <ds@schleef.org>
11448
11449         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11450         (bug #134863)
11451
11452 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11453
11454         * configure.ac: first bug fix due to major/minor bump
11455
11456 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11457
11458         * configure.ac: bump nano to 1
11459
11460 === release 0.7.6 ===
11461
11462 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11463
11464         * NEWS:
11465         * RELEASE:
11466         * configure.ac:
11467           releasing 0.7.6, "Almost"
11468         * po/fr.po:
11469         * po/nl.po:
11470         * tools/Makefile.am:
11471         * tools/gst-feedback-m.m:
11472           unversioned source
11473
11474 2004-03-09  Johan Dahlin  <johan@gnome.org>
11475
11476         Reviewed by: Thomas Vander Stichele
11477
11478         * gst/gstelement.c (gst_element_class_init): register second
11479         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11480         language bindings can (de)marshall correctly.
11481
11482         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11483
11484         * gst/gsterror.c (gst_g_error_get_type): New function
11485
11486         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11487         with VOID:OBJECT,OBJECT,STRING 
11488
11489 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11490
11491         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11492         Free a leaked g_timer on early returns.
11493
11494 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11495
11496         * docs/pwg/advanced-types.xml:
11497           Add cinepak description.
11498
11499 2004-03-07  David Schleef  <ds@schleef.org>
11500
11501         * docs/random/mimetypes:  Added cinepak description
11502
11503 2004-03-07  Andy Wingo  <wingo@pobox.com>
11504
11505         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11506
11507         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11508         there are no links to other groups when a group is destroyed.
11509         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11510         removed from a group, make sure the link count to elements linked
11511         to other pads is appropriately decremented. This really fixes
11512         #135672.
11513
11514         The 1.60->1.61 patch has been reapplied in light of this fix.
11515
11516         * gst/gstelement.c (gst_element_dispose): Really protect against
11517         multiple invocations this time.
11518
11519 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11520
11521         * docs/gst/gstreamer-sections.txt:
11522         * docs/gst/tmpl/gsttag.sgml:
11523           remove some deprecated functions, document some existing ones
11524         * gst/gsttag.c: (gst_tag_get_flag):
11525         * gst/gsttag.h:
11526           add accessor function
11527
11528 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11529
11530         * docs/gst/gstreamer-sections.txt:
11531         * docs/gst/tmpl/gsttag.sgml:
11532         * docs/gst/tmpl/gstxml.sgml:
11533         * gst/gsttag.c: (gst_tag_get_flag):
11534         * gst/gsttag.h:
11535
11536 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11537
11538         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11539         leak
11540
11541 2004-03-05  David Schleef  <ds@schleef.org>
11542
11543         * REQUIREMENTS: Add bison and flex.
11544         * configure.ac: Fix comment about bison.
11545         * docs/random/ds/0.9-suggested-changes: yer ma
11546         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11547
11548 2004-03-05  Benjamin Otte  <otte@gnome.org>
11549
11550         * gst/gstelement.c: (gst_element_error_full):
11551           revert recent recursive state changing commit - messing with other
11552           elements' states is evil and should be done by apps only.
11553
11554 2004-03-05  Benjamin Otte  <otte@gnome.org>
11555
11556         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11557           check for empty intersection instead of NULL caps
11558         (gst_element_get_compatible_pad_filtered):
11559           remove old workaround that is only a bug nowadays
11560
11561 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11562
11563         * gst/gstelement.c: (gst_element_error_full):
11564           make elements try to recursively change state to PAUSED on all
11565           parents after an error to suppress ensuing warnings
11566         * gst/parse/grammar.y:
11567           make it check if it was able to sync the state, and throw an error
11568           if not, so stuff like
11569           oggdemux ! vorbisdec ! osssink gets caught
11570
11571 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11572
11573         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11574           it contains lib64; use AS_AC_EXPAND to handle it properly
11575
11576 2004-03-05  David Schleef  <ds@schleef.org>
11577
11578         * gst/gstcpuid_i386.s:  Remove unused code
11579         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11580         (gst_getbits_newbuf): Remove MMX code
11581         * libs/gst/getbits/getbits.h: Remove MMX code
11582
11583 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11584
11585         * debian/.cvsignore:
11586         * debian/README.Debian:
11587         * debian/changelog:
11588         * debian/control:
11589         * debian/control.in:
11590         * debian/copyright:
11591         * debian/gstreamer-core-libs-dev.files:
11592         * debian/gstreamer-core-libs.files:
11593         * debian/gstreamer-core.files:
11594         * debian/gstreamer-core.postinst:
11595         * debian/gstreamer-core.postrm:
11596         * debian/gstreamer-doc.files:
11597         * debian/gstreamer-doc.links:
11598         * debian/gstreamer-doc.lintian:
11599         * debian/gstreamer-runtime.files:
11600         * debian/gstreamer-runtime.manpages:
11601         * debian/gstreamer-runtime.postinst:
11602         * debian/gstreamer-runtime.postrm:
11603         * debian/gstreamer-tools.files:
11604         * debian/gstreamer-tools.manpages:
11605         * debian/libgstreamer-dev.files:
11606         * debian/libgstreamer0.4.1.files:
11607         * debian/libgstreamerVERSION.files:
11608         * debian/rules:
11609         Debian package info not maintained here.
11610
11611 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11612
11613         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11614         * gst/gstbin.c: (gst_bin_class_init):
11615         * gst/gstelement.c: (gst_element_class_init):
11616         * gst/gstindex.c: (gst_index_class_init):
11617         * gst/gstobject.c: (gst_object_class_init),
11618         (gst_signal_object_class_init):
11619         * gst/gstpad.c: (gst_pad_template_class_init):
11620         * gst/gstregistry.c: (gst_registry_class_init):
11621         * gst/gsturi.c: (gst_uri_handler_base_init):
11622         * gst/gstxml.c: (gst_xml_class_init):
11623         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11624         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11625           make all signal names use dashes instead of underscore
11626
11627 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11628
11629         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11630
11631 2004-03-03  Benjamin Otte  <otte@gnome.org>
11632
11633         * gst/schedulers/gstoptimalscheduler.c:
11634           revert last commit by Andy Wingo. It causes segfaults on unreffing
11635           in Rhythmbox. (see bug #135672)
11636
11637 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11638
11639         * po/fr.po: fix typo
11640
11641 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11642
11643         * tools/gst-inspect.c: (main): 
11644         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11645
11646 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11647
11648         * configure.ac:
11649           get GLIB_ONLY and POPT flags for the nonversioned binaries
11650         * tools/Makefile.am:
11651           use them
11652
11653 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11654
11655         * gst/gst.c: (init_post):
11656           change so that GST_REGISTRY now is where the global registry gets
11657           saved, since that is where plugins now get attached to first, and
11658           spilled over to the user registry.  Note that in the case of using
11659           GST_REGISTRY env var, we don't want to affect any real registries
11660           beyond the one given by this var, and thus we don't set a user
11661           registry to spill to.  So make sure GST_REGISTRY is writable.
11662
11663 2004-03-01  David Schleef  <ds@schleef.org>
11664
11665         * AUTHORS:  Added some names.  Add yourself if you're missing.
11666
11667 2004-03-01  David Schleef  <ds@schleef.org>
11668
11669         * MAINTAINERS: Add
11670
11671 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11672
11673         * configure.ac:
11674           remove whitespace
11675         * docs/gst/tmpl/gstbuffer.sgml:
11676         * docs/gst/tmpl/gstdata.sgml:
11677         * docs/gst/tmpl/gstreamer-unused.sgml:
11678         * docs/gst/tmpl/gstxml.sgml:
11679           doc update
11680         * docs/manuals.mak:
11681           add a FIXME
11682         * docs/pwg/intro-preface.xml:
11683         * docs/pwg/pwg.xml:
11684           remove GNOME
11685         * gst/gst.c: (init_post):
11686           try GST_PLUGIN_PATH paths for the _global_registry first
11687         * gst/gstelement.h:
11688           add the error message as well, otherwise (null) debug info doesn't
11689           make much sense
11690         * tools/gst-register.c: (main):
11691           spill paths to next registry if this registry is not writable
11692         * po/fr.po:
11693         * po/nl.po:
11694           translation updates
11695
11696 2004-03-01  Johan Dahlin  <johan@gnome.org>
11697
11698         * gst/gstbuffer.c (_gst_buffer_initialize): 
11699         * gst/gstdata.c (gst_data_get_type): 
11700         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11701         instead of ref, since some applications that uses GBoxed
11702         routines depends on a function that actually returns a copy.
11703
11704 2004-02-27  Benjamin Otte  <otte@gnome.org>
11705
11706         * gst/gstbuffer.h:
11707           remove gst_buffer_free, use gst_data_unref
11708         * gst/gstdata.c: (gst_data_get_type):
11709           use refcounting in GstData GBoxed registration
11710         * gst/gstdata.h:
11711           remove gst_data_free, use gst_data_unref
11712
11713 2004-02-27  Johan Dahlin  <johan@gnome.org>
11714
11715         * gst/gstdata.c (gst_data_get_type): New function, register
11716         GstData as a GBoxed type.
11717
11718         * gst/gstdata.h (GST_TYPE_DATA): New macro
11719
11720 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11721
11722         * Makefile.am:
11723         * gstreamer.spec.in:
11724           put back RELEASE
11725         * gst/Makefile.am:
11726           clean up non-disting of built files
11727         * testsuite/debug/commandline.c:
11728           test fix for option rename
11729
11730 2004-02-26  David Schleef  <ds@schleef.org>
11731
11732         * configure.ac:  We don't really need glib-2.3.  Also remove
11733         some unneeded checks for library functions.
11734         * gst/Makefile.am:  Instead, we need to not dist files created
11735         by glib-genmarshal.
11736
11737 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11738
11739         * configure.ac:
11740           bump glib required version to 2.3.0 for g_value_takes_boxed
11741
11742  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11743
11744         * common/m4/gst-docs.m4
11745         change flavour text from enable to disable as enable is our default
11746         closes bug Bug 135304
11747
11748 === release 0.7.5 ===
11749  
11750  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11751  
11752         * NEWS:
11753           instate NEWS file
11754         * Makefile.am:
11755         * gstreamer.spec.in:
11756         * RELEASE:
11757           put back release
11758         * configure.ac:
11759         * docs/random/release:
11760           more updates
11761
11762 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11763
11764         * gst/gsttag.c: (_gst_tag_initialize):
11765         * po/fr.po:
11766         * po/nl.po:
11767           remove hyphen from codec tags
11768
11769 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11770
11771         * gst/parse/Makefile.am:
11772           fix dependency so that a make from a clean build works the first
11773           time
11774
11775 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11776
11777         * docs/random/release:
11778           update release strategy
11779         * po/fr.po:
11780           auto-update po file
11781         * po/nl.po:
11782           update dutch translation
11783
11784 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11785
11786         * docs/manual/debugging.xml:
11787         fix manual for new debugging system
11788
11789 2004-02-25  Andy Wingo  <wingo@pobox.com>
11790
11791         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11792         gst_pad_link_prepare. Please email the list with specific reasons
11793         for reverting.
11794
11795 2004-02-24  Andy Wingo  <wingo@pobox.com>
11796
11797         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11798         invocations.
11799
11800         * gst/schedulers/gstoptimalscheduler.c:
11801         I added a mess of prototypes at the top of the file by way of
11802         documentation. Some of the operations on chains and groups were
11803         re-organized.
11804
11805         (create_group): Added a type argument so if the group is enabled,
11806         the setup_group_scheduler knows what to do.
11807         (group_elements): Added a type argument here, too, to be passed on
11808         to create_group.
11809         (group_element_set_enabled): If an unlinked PLAYING element is
11810         added to a bin, we have to create a new group to hold the element,
11811         and this function will be called before the group is added to the
11812         chain. Thus we have a valid case for group->chain==NULL. Instead
11813         of calling chain_group_set_enabled, just set the flag on the group
11814         (the chain's status will be set when the group is added to it).
11815         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11816         Setup the group scheduler when the group is enabled, not
11817         specifically when an element goes PAUSED->PLAYING. This means
11818         PLAYING elements can be added, linked, and scheduled into a
11819         PLAYING pipeline, as was intended.
11820         (add_to_group): Don't ref the group twice. I don't know when this
11821         double-ref got in here. Removing it has the potential to cause
11822         segfaults if other parts of the scheduler are buggy. If you find
11823         that the scheduler is segfaulting for you, put in an extra ref
11824         here and see if that hacks over the underlying issue. Of course,
11825         then find out what code is unreffing a group it doesn't own...
11826         (create_group): Make the extra refcount floating, and remove it
11827         after adding the element. This means that...
11828         (unref_group): Destroy when the refcount reaches 0, not 1, like
11829         every other refcounted object in the known universe.
11830         (remove_from_group): When a group becomes empty, set it to be not
11831         active, and remove it from its chain. Don't unref it again,
11832         there's no floating reference any more.
11833         (destroy_group): We have to remove the group from the chain in
11834         remove_from_group (rather than here) to break refcounting cycles
11835         (the chain always has a ref on the group). So assert that
11836         group->chain==NULL.
11837         (ref_group_by_count): Removed, it was commented out anyway.
11838         (merge_chains): Use the remove_from_chain and add_to_chain
11839         primitives to do the reparenting, instead of rolling our own
11840         implementation.
11841         (add_to_chain): The first non-disabled group in the chain's group
11842         list will be the entry point for the chain. Because buffers can
11843         accumulate in loop elements' peer bufpens, we preferentially
11844         schedule loop groups before get groups to avoid unnecessary
11845         execution of get-based groups when the bufpens are already full.
11846         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11847         (get_group_schedule_function): Ditto.
11848         (loop_group_schedule_function): Ditto.
11849         (gst_opt_scheduler_loop_wrapper): Ditto.
11850         (gst_opt_scheduler_iterate): Ditto.
11851
11852         I understand the opt scheduler now, yippee!
11853
11854         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11855         (gst_pad_get_name, gst_pad_set_chain_function) 
11856         (gst_pad_set_get_function, gst_pad_set_event_function) 
11857         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11858         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11859         (gst_pad_set_query_function, gst_pad_get_query_types) 
11860         (gst_pad_get_query_types_default) 
11861         (gst_pad_set_internal_link_function) 
11862         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11863         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11864         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11865         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11866         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11867         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11868         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11869         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11870         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11871         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11872         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11873         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11874         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11875         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11876         argument checks, and some doc fixes.
11877
11878         (gst_pad_custom_new_from_template): Um, does anyone
11879         use these functions? Actually make a custom pad instead of a
11880         normal one.
11881         (gst_pad_try_set_caps): Transpose some checks.
11882         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11883         the pad is in negotiation.
11884         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11885         
11886         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11887
11888         * gst/gstelement.h: 
11889         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11890         on the list.
11891
11892 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11893
11894         * gst/gstbin.c: (gst_bin_add):
11895           add error for not being able to add elements
11896
11897 2004-02-22  Julien MOUTTE <julien@moutte.net>
11898
11899         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11900         audio-codec and video-codec.
11901
11902 2004-02-22  Benjamin Otte  <otte@gnome.org>
11903
11904         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11905
11906         * autogen.sh:
11907           replace test -e with test -x for mkinstalldirs to be more portable.
11908           (fixes #134816)
11909
11910 2004-02-22  Benjamin Otte  <otte@gnome.org>
11911
11912         * gst/gstpad.c:
11913           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11914           too noisy
11915         * gst/gsttag.c: (_gst_tag_initialize):
11916         * gst/gsttag.h:
11917           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11918         * libs/gst/control/dparam.c: (gst_dparam_attach):
11919         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11920           check that types for attached dparams match
11921
11922 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11923
11924         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11925         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11926         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11927           fix errors
11928
11929 2004-02-20  Andy Wingo  <wingo@pobox.com>
11930
11931         * gst/gstbin.c:
11932         * gst/gstbuffer.c:
11933         * gst/gstplugin.c:
11934         * gst/registries/gstxmlregistry.c: 
11935         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11936
11937         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11938         (gst_element_add_pad): DEBUG->INFO, some fixes.
11939         (gst_element_get_compatible_pad_template): Just see if the
11940         templates' caps intersect, not if one is a strict subset of the
11941         other. This conforms more to what gst_pad_link_intersect() does.
11942         (gst_element_class_add_pad_template): Don't memcpy the pad
11943         template, just ref it.
11944         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11945
11946         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11947         (gst_pad_link_filtered): Debug changes.
11948         (gst_pad_link_prepare): New function, consolidated from
11949         can_link_filtered and link_filtered.
11950
11951         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11952         look more like that of the functions in gstelement.c
11953
11954         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11955         object, and return the empty string if object is NULL.
11956
11957         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11958         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11959         LOG, not DEBUG. We still get flex info on debug.
11960
11961         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11962         debug string more verbose.
11963         (plugin_times_older_than): DEBUG->LOG.
11964
11965 2004-02-20  Julien MOUTTE <julien@moutte.net>
11966
11967         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11968         will emit found_tag for each stream they demux with the codec.
11969
11970 2004-02-20  Benjamin Otte  <otte@gnome.org>
11971
11972         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11973           copy navigation event correctly. Check freeing tag lists. 
11974         * gst/gstthread.c: (gst_thread_change_state):
11975           don't abort() on state changing mess - it might happen because of
11976           bugs.
11977         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11978           use boxed functions
11979         * gst/gstvalue.h:
11980           fix GST_VALUE_HOLDS_CAPS
11981
11982 2004-02-19  David Schleef  <ds@schleef.org>
11983
11984         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11985         and use it for GST_FUNCTION.  (bug #134750)
11986
11987 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11988
11989         * po/fr.po:
11990         * po/nl.po:
11991           updating translations
11992
11993 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11994
11995         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
11996
11997 2004-02-18  kost@imn.htwk-leipzig.de
11998
11999         reviewed by: David Schleef  <ds@schleef.org>
12000
12001         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
12002         for libgstcontrol.
12003
12004 2004-02-18  David Schleef  <ds@schleef.org>
12005
12006         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12007         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12008         (gst_dpsmooth_new): Additional fixes to get double dparams working.
12009         * tools/gst-inspect.c: (print_element_info): Support dumping of
12010         double dparam information.
12011
12012 2004-02-17  David Schleef  <ds@schleef.org>
12013
12014         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12015         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
12016         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
12017         Use GST_TYPE_CAPS in signal prototype.
12018         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
12019         Convert GST_TYPE_CAPS to boxed.
12020         * gst/gstelement.c: (gst_element_class_init):
12021         Use GST_TYPE_TAG_LIST in signal prototype.
12022         * gst/gstindex.c: (gst_index_class_init):
12023         * gst/gstindex.h:
12024         Add GST_TYPE_INDEX_ENTRY type.
12025         * gst/gstmarshal.list:
12026         Add necessary marshal types.
12027         * gst/gstpad.c: (gst_real_pad_class_init),
12028         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12029         (gst_pad_recover_caps_error):
12030         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
12031         * gst/gststructure.c: (_gst_structure_initialize),
12032         (gst_structure_copy), (_gst_structure_copy_conditional):
12033         * gst/gststructure.h:
12034         Convert GST_TYPE_STRUCTURE to boxed.
12035         * gst/gsttag.c: (gst_tag_list_get_type):
12036         * gst/gsttag.h:
12037         Add GST_TYPE_TAG_LIST type.
12038
12039 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12040
12041         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
12042         to what we agreed with david.
12043         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
12044
12045 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12046
12047         * po/nl.po: update translation
12048
12049 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12050
12051         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
12052           throw an error if spider is trying to play a mime type there is
12053           no decoder for
12054         * po/POTFILES.in:
12055           add gst/autoplug/gstspider.c for translation
12056
12057 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12058
12059         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
12060         silently when the pad is negotiating.
12061
12062 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12063
12064         * docs/faq/Makefile.am:
12065           add script to run gstreamer uninstalled 
12066         * docs/faq/faq.xml:
12067         * docs/faq/developing.xml:
12068         * docs/faq/gst-uninstalled:
12069           extract script to run gstreamer uninstalled
12070         * docs/manuals.mak:
12071           add EXTRA_SOURCES variable for Makefile.am's to set to
12072           use additional SOURCE files for the doc build
12073
12074 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12075
12076         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12077
12078 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12079
12080         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12081         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12082         an error was thrown by osssink. Basically a state change failure for
12083         an element in a different scheduling group was considered as
12084         successful, which means that caps nego was going on and weird stuff
12085         happened. Like I wrote in the comment there, if someone wants to
12086         revert that please drop me a mail explaining why because I really see
12087         no point in keeping that broken behaviour there.
12088         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12089         be empty, we then return NULL which will trigger a nice error when 
12090         pulling from the pad.
12091
12092 2004-02-13  David Schleef  <ds@schleef.org>
12093
12094         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12095         (gst_dparam_get_property), (gst_dparam_set_property),
12096         (gst_dparam_do_update_default):
12097         * libs/gst/control/dparam.h:
12098         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12099         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12100         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12101         (gst_dpsmooth_do_update_double):
12102         * libs/gst/control/dparam_smooth.h:
12103         * libs/gst/control/dparammanager.c:
12104         (gst_dpman_inline_direct_update):
12105         Add support for double dparams.
12106
12107 2004-02-13  David Schleef  <ds@schleef.org>
12108
12109         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12110         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12111
12112 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12113
12114         reviewed by: David Schleef  <ds@schleef.org>
12115
12116         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12117         (gst_fdsrc_init), (gst_fdsrc_set_property),
12118         (gst_fdsrc_get_property), (gst_fdsrc_get):
12119         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12120         and sends an EOS event if file descriptor reading times out.
12121
12122 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12123
12124         * configure.ac:
12125           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12126
12127 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12128
12129         * configure.ac: pass required libxml version as argument
12130         (bug reported by Christophe Fergeau)
12131
12132 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12133   
12134         * docs/gst/gstreamer-docs.sgml:
12135         * docs/gst/tmpl/gstxml.sgml:
12136         * docs/libs/gstreamer-libs-docs.sgml:
12137           version API docs
12138
12139 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12140
12141         * gst/gstinfo.c:
12142         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12143         (gst_registry_pool_feature_filter):
12144         * gst/gstthread.c: (gst_thread_class_init):
12145         * gst/gstvalue.c:
12146           add includes exposed by building without libxml
12147         * gst/indexers/Makefile.am:
12148           do not build fileindex when LOADSAVE disabled; we should have
12149           a better libxml check later since fileindex depends on xml, not
12150           LOADSAVE or REGISTRY
12151         * libs/gst/control/Makefile.am:
12152           link with m
12153         * tools/Makefile.am:
12154           fix wrong source code for gst-xmlinspect
12155
12156 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12157
12158         * configure.ac:
12159           fix gcov help output
12160           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12161         * docs/random/release:
12162           some updated releasing notes
12163         * gstreamer.spec.in:
12164           more updates
12165
12166 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12167
12168         * docs/faq/faq.xml:
12169         * docs/manual/manual.xml:
12170         * docs/pwg/pwg.xml:
12171         * docs/pwg/titlepage.xml:
12172           put version in documentation
12173
12174 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12175
12176         * tools/Makefile.am: fix man page installation
12177
12178 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12179
12180         * configure.ac:
12181           don't check for libxml when load/save and registry disabled (#105844)
12182         * gstreamer.spec.in:
12183           sync with fedora candidate spec
12184
12185 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12186
12187         * po/fr.po:
12188         * po/nl.po:
12189           replace multidisksrc with multifilesrc
12190
12191 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12192
12193         * po/POTFILES.in:
12194           update to multidisksrc => multifilesrc file renaming (#134145)
12195
12196 2004-02-11  David Schleef  <ds@schleef.org>
12197
12198         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12199         * docs/gst/tmpl/gstpadtemplate.sgml: same
12200         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12201         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12202         fixing dance.
12203         * gst/gstutils.c: Remove disabled code that uses GstProps.
12204         * gst/registries/gstxmlregistry.h: same
12205         * docs/random/ds/0.9-suggested-changes: random notes
12206
12207 2004-02-11  kost@imn.htwk-leipzig.de
12208
12209         reviewed by: David Schleef  <ds@schleef.org>
12210
12211         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12212         initialisation of clock (bug #134128)
12213
12214 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12215
12216         * configure.ac:
12217         * gst/elements/Makefile.am:
12218         * gst/elements/gstelements.c:
12219         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12220         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12221         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12222         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12223         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12224         * gst/elements/gstmultifilesrc.h:
12225           rename multidisksrc to multifilesrc (part of #122200)
12226
12227 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12228
12229         * docs/manuals.mak:
12230           fix automake complaints
12231         * gst-element-check.m4:
12232           fix unquotedness
12233
12234 2004-02-11  David Schleef  <ds@schleef.org>
12235
12236         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12237         * gst/gstatomic_impl.h: Disable sparc implementation.
12238
12239 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12240
12241         * gst-element-check.m4:
12242           fix underquoted macros as reported by automake 1.8.x (#133800)
12243         * configure.ac:
12244           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12245           by autopoint (fixes #132996)
12246
12247 2004-02-10  Andy Wingo  <wingo@pobox.com>
12248
12249         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12250         way to do inheritance.
12251         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12252         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12253         Routine docs.
12254         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12255         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12256         doc.
12257         (gst_pad_unlink, gst_pad_is_linked): Docs.
12258         (gst_pad_renegotiate): A brief description of capsnego.
12259         (gst_pad_try_set_caps): Document.
12260         (gst_pad_try_set_caps_nonfixed): Document.
12261         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12262         (gst_pad_set_parent): Deprecated (although not out of the API).
12263         (gst_pad_get_parent): Deprecated, although many plugins use this.
12264         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12265         are private and will go away in 0.9.
12266         (gst_pad_perform_negotiate): Doc.
12267         (gst_pad_link_unnegotiate): I think this is meant to be static.
12268         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12269         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12270         (gst_pad_get_peer): Doc updates.
12271         (gst_pad_caps_change_notify): Doc.
12272         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12273         (gst_ghost_pad_new): Doc fixes.
12274
12275         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12276         (gst_object_check_uniqueness): 
12277
12278         * gst/gstelement.c (gst_element_add_pad) 
12279         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12280         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12281         (gst_element_get_static_pad, gst_element_get_pad_list) 
12282         (gst_element_class_get_pad_template_list) 
12283         (gst_element_class_get_pad_template): Work on the docs.
12284         (gst_element_get_pad_template_list): Uses the class method.
12285         (gst_element_get_compatible_pad_template): Docs, and consolidate
12286         some test conditions. 
12287         (gst_element_get_pad_from_template): New static function.
12288         (gst_element_request_compatible_pad): Docs, and work with
12289         non-request compatible templates. 
12290         (gst_element_get_compatible_pad_filtered): Docs and remove
12291         redundant checks.
12292         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12293         (gst_element_link_filtered, gst_element_link_many) 
12294         (gst_element_link, gst_element_link_pads) 
12295         (gst_element_unlink_many): Docs.
12296
12297 2004-02-05  Andy Wingo  <wingo@pobox.com>
12298
12299         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12300         s/pointer/boxed/.
12301
12302         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12303
12304         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12305         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12306         with the type=GST_TYPE_CAPS. This allows language bindings to know
12307         what kind of data they're dealing with.
12308
12309         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12310         to NULL when g_value_init is called. GstCaps, which rolls its own
12311         type implementation, now does the same instead of allocating empty
12312         caps.
12313         (_gst_caps_initialize, _gst_caps_collect_value,
12314         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12315         table methods. This allows G_VALUE_COLLECT to work.
12316
12317 2004-02-05  Andy Wingo  <wingo@pobox.com>
12318
12319         * configure.ac:
12320         * testsuite/Makefile.am (SUBDIRS): 
12321         * testsuite/ghostpads/Makefile.am: 
12322         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12323
12324         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12325         These two routines are the only ones that set
12326         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12327         pad template. They should be made static, depending on ABI needs.
12328         (gst_real_pad_dispose): Handle the case of ghost pads without a
12329         parent. Assert after dealing with ghost pads that the ghost pad
12330         list is empty.
12331         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12332         set after creation.
12333         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12334         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12335         functions. set_property will call add_ghost_pad/remove_ghost_pad
12336         as appropriate.
12337         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12338
12339         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12340         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12341         (gst_element_remove_pad): Handle ghost pads as well.
12342         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12343         depending on API-stability needs).
12344
12345 2004-02-05  Andy Wingo  <wingo@pobox.com>
12346
12347         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12348         of course they're const
12349
12350 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12351
12352         * tools/Makefile.am:
12353         * tools/gst-feedback:
12354         * tools/gst-feedback-0.7:
12355           make gst-feedback versioned too for consistency
12356
12357 2004-02-11  David Schleef  <ds@schleef.org>
12358
12359         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12360         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12361
12362 2004-02-10  Julien MOUTTE <julien@moutte.net>
12363
12364         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12365         the structure does not contain a valid tag list. Adding a safety check
12366         to remove a noisy warning in that case.
12367
12368 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12369
12370         * gst/gst.c: fix name to be in line with others
12371
12372 2004-02-09  Julien MOUTTE <julien@moutte.net>
12373
12374         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12375         not shout that loud when len is 0. Just return 0 silently.
12376
12377 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12378
12379         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12380         because data_unref has one and I prefer the debug to be symetric.
12381         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12382         were refed when added to the queue and unrefed only once when the queue
12383         was flushed. Now the flush handler unref the buffers two times : first
12384         unref for the ref added when pushing in the queue's tail and second
12385         unref to destroy the flushed buffer.
12386
12387 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12388
12389         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12390
12391 2004-02-06  David Schleef  <ds@schleef.org>
12392
12393         * docs/random/ds/0.9-suggested-changes: Random ramblings
12394         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12395         to int before printing.
12396         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12397         * gst/parse/parse.l: same.  See bug #129600
12398
12399 2004-02-06  David Schleef  <ds@schleef.org>
12400
12401         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12402         (gst_index_add_entry), (gst_index_add_associationv),
12403         (gst_index_add_association): Add gst_index_add_associationv()
12404         and clean up gst_index_add_association(). #127133
12405
12406 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12407
12408         * autogen.sh: check out common with right tag if CVS/Tag exists
12409
12410 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12411
12412         * testsuite/ghostpads/ghostpads.c: (main):
12413           fix testsuite from segfaulting
12414
12415 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12416
12417         * Makefile.am: add release target
12418         * configure.ac: bump nano to 1
12419         * docs/random/release:
12420
12421 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12422
12423         * gst/gstcaps.h:
12424         * gst/gstelement.c: (gst_element_base_class_init),
12425         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12426         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12427         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12428         (gst_real_pad_dispose):
12429         * gst/gststructure.c: (gst_structure_free),
12430         (gst_structure_from_string):
12431           put reverted patch back in
12432         * gst/gstelement.c: (gst_element_remove_pad):
12433           free explicit caps if they're set
12434         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12435           copy the structure when fixating
12436
12437 2004-02-05  David Schleef  <ds@schleef.org>
12438
12439         * gst/gstmarshal.list:
12440         * gst/gstpad.c: (gst_real_pad_class_init),
12441         (_gst_real_pad_fixate_accumulator):
12442         Revert POINTER->BOXED change in signal marshaller.
12443
12444 === release 0.7.4 ===
12445                                                                                 
12446 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12447                                                                                 
12448         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12449         * configure.ac: changed for release
12450
12451 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12452
12453         * gstreamer.spec.in:
12454           bump required version of gtk-doc
12455
12456 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12457
12458         * gst/gstcaps.h:
12459         * gst/gstelement.c: (gst_element_base_class_init),
12460         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12461         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12462         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12463         (gst_real_pad_dispose):
12464         * gst/gststructure.c: (gst_structure_free),
12465         (gst_structure_from_string):
12466           revert patch that breaks applications, reapply after release
12467           to get this fixed properly
12468
12469 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12470
12471         * gst/gsttag.c: (_gst_tag_initialize):
12472         * gst/gsttag.h:
12473           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12474
12475 2004-02-04  David Schleef  <ds@schleef.org>
12476
12477         Fix some memleaks:
12478         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12479         (gst_spider_plug_from_srcpad):
12480         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12481
12482 2004-02-04  David Schleef  <ds@schleef.org>
12483
12484         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12485         a GstRealPad before accessing its structure members.
12486
12487 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12488
12489         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12490         (gst_clock_get_speed):
12491         * gst/gstclock.h:
12492           reset padding, remove unused fields
12493
12494 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12495
12496         * gst/autoplug/gstspideridentity.c:
12497         (gst_spider_identity_sink_loop_type_finding):
12498           use get_allowed_caps, not get_caps (fixes #132519)
12499         * gst/elements/gsttypefind.c: (stop_typefinding):
12500           use correct order when sending buffers and seeking
12501
12502 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12503
12504         * configure.ac:
12505         * gst/gstelement.h:
12506         * gst/gstpad.h:
12507         * gst/gstqueue.h:
12508           upgrade libtool CURRENT, reset padding
12509
12510 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12511
12512         * configure.ac:
12513           bump to prerelease
12514           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12515
12516 2004-02-04  David Schleef  <ds@schleef.org>
12517
12518         * docs/random/ds/0.9-suggested-changes: random notes
12519         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12520         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12521         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12522         expansion.
12523         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12524         (gst_filesink_get_query_types): same
12525         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12526         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12527         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12528         to use new GST_PTR_FORMAT.
12529         * gst/gstelement.h: deprecate function factory macros
12530         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12531         These are our last variadic macros that can't be replaced with
12532         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12533         attempting to deprecate gst_element_clock_wait().
12534         * gst/gstevent.h: same
12535         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12536         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12537         * gst/gstpad.h: deprecate function factory macros similar to above.
12538
12539 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12540
12541         * configure.ac:
12542         * tools/Makefile.am:
12543         * tools/gst-run.c: (popt_callback), (hash_print_key),
12544         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12545         (get_candidates), (main):
12546           add new source file to generate non-versioned wrapper binaries
12547           for our tools.
12548
12549 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12550
12551         * gst/gstevent.c: (_gst_event_free):
12552           actually break; inside the switch statement
12553         * gst/parse/grammar.y:
12554           fix memleak where GValues weren't unset
12555
12556 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12557
12558         * gst/gststructure.c: (gst_structure_from_string):
12559           fix huge memleak
12560         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12561         (new_entry), (gst_type_find_element_chain):
12562         * gst/gstelement.c: (gst_element_base_class_init),
12563         (gst_element_class_set_details):
12564         * gst/gstpad.c: (gst_pad_can_link_filtered):
12565           fix smaller memleaks
12566         * gst/gstpad.c: (gst_real_pad_dispose):
12567           check that explicit caps are gone
12568         * gst/gststructure.c: (gst_structure_free):
12569           actually free the structure
12570         * gst/gstelement.c: (gst_element_clear_pad_caps):
12571           unset explicit caps
12572
12573 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12574
12575         * tools/Makefile.am:
12576           use AM_CFLAGS since all the CFLAGS are the same
12577           use AM_LDFAGS
12578
12579 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12580
12581         * docs/manual/gnome.xml:
12582           expand example a little
12583         * gst/gst.c: (gst_init_with_popt_table),
12584         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12585           make sure popt option displays are done with right textdomain
12586           use GstPoptOption type
12587         * gst/gst.h:
12588           create GstPoptOption type
12589
12590 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12591
12592         * gst/gsterror.c: (_gst_stream_errors_init):
12593         * gst/gsterror.h:
12594           adding error type for no codec
12595         * po/POTFILES.in:
12596           add gst-inspect
12597         * po/nl.po:
12598           update dutch translation
12599         * tools/gst-inspect.c: (print_element_list), (main):
12600           do proper internationalization
12601         * tools/gst-launch.c: (idle_func):
12602           remove commented out function call
12603
12604 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12605
12606         * docs/README:
12607           add some error fixing notes
12608         * docs/gst/gstreamer-sections.txt:
12609           remove double entries
12610         * docs/gst/tmpl/gstbin.sgml:
12611         * docs/gst/tmpl/gstclock.sgml:
12612           remove override
12613         * docs/gst/tmpl/gstelement.sgml:
12614         * docs/gst/tmpl/gstindex.sgml:
12615         * docs/gst/tmpl/gstobject.sgml:
12616         * docs/gst/tmpl/gstpadtemplate.sgml:
12617         * docs/gst/tmpl/gstreamer-unused.sgml:
12618         * docs/gst/tmpl/gsttag.sgml:
12619         * docs/gst/tmpl/gstthread.sgml:
12620         * docs/gst/tmpl/gstxml.sgml:
12621         * gst/gsttag.h:
12622           sync header prototypes with c decls
12623         * gst/gsttaginterface.c:
12624           fix doc headers
12625
12626 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12627
12628         * gst/parse/Makefile.am:
12629         * gst/gstobject.h:
12630           get rid of gstmarshal.h dependency. It's not needed.
12631         * gst/gst.h:
12632         * gst/elements/gstfakesink.c:
12633         * gst/elements/gstfakesrc.c:
12634         * gst/elements/gstidentity.c:
12635         * gst/gstbin.c:
12636         * gst/gstelement.c:
12637         * gst/gstindex.c:
12638         * gst/gstobject.c:
12639         * gst/gstpad.c:
12640         * gst/gstthread.c:
12641         * gst/gstxml.c:
12642         * libs/gst/control/dparam.c:
12643         * libs/gst/control/dparammanager.c:
12644           include gstmarshal.h.
12645         Fixes #132045
12646
12647 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12648
12649         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12650         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12651         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12652         * gst/elements/gstfilesrc.h:
12653           don't ref the filesrc when creating mmaped buffers. Don't keep a
12654           list of not-yet-destroyed buffers.
12655         * gst/gstbuffer.h:
12656           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12657
12658 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12659
12660         * gst/gst.c: (init_pre):
12661           remove textdomain
12662
12663 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12664
12665         * docs/pwg/advanced-events.xml:
12666         * docs/pwg/advanced-scheduling.xml:
12667         * docs/pwg/intro-basics.xml:
12668         * docs/pwg/other-manager.xml:
12669         * docs/pwg/other-nton.xml:
12670         * docs/pwg/other-ntoone.xml:
12671         * docs/pwg/other-oneton.xml:
12672         * docs/pwg/pwg.xml:
12673           All sort of documentation... Forgot what. Point is that I want this
12674           in before I leave. The 'other-*' will be the last section and will
12675           explain issues specific to these type of elements.
12676
12677 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12678
12679         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12680         (gst_filesrc_get_read):
12681           set all the values on buffers that we can
12682
12683 2004-02-02  David Schleef  <ds@schleef.org>
12684
12685         Change usage of isblah() to g_ascii_isblah() to be more locale
12686         independent.  (#133076)
12687         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12688         * gst/gstutils.c:
12689         * gst/parse/parse.l:
12690
12691 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12692
12693         reviewed by: David Schleef  <ds@schleef.org>
12694
12695         Fix memory leaks:
12696         * gst/gstcaps.c: (gst_caps_to_string):
12697         * gst/registries/gstxmlregistry.c:
12698         (gst_xml_registry_add_path_list_func),
12699         (gst_xml_registry_parse_padtemplate):
12700
12701 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12702
12703         * gst/gstelement.c: (gst_element_default_error):
12704           suffix error messages with period
12705
12706 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12707
12708         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12709         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12710         * gst/gsterror.c: (gst_error_get_message):
12711           Suffix with dots
12712         * po/fr.po:
12713         * po/nl.po:
12714           Update translation files
12715
12716 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12717
12718         * gst/autoplug/gstspideridentity.c:
12719         (gst_spider_identity_sink_loop_type_finding):
12720         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12721         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12722         (gst_filesink_close_file), (gst_filesink_handle_event),
12723         (gst_filesink_chain):
12724         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12725         (gst_filesrc_get_read), (gst_filesrc_open_file):
12726         * gst/elements/gstidentity.c: (gst_identity_chain):
12727         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12728         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12729         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12730         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12731         * gst/gsterror.c: (_gst_core_errors_init),
12732         (_gst_library_errors_init), (_gst_resource_errors_init),
12733         (_gst_stream_errors_init), (gst_error_get_message):
12734         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12735         (gst_pad_recover_caps_error), (gst_pad_pull):
12736         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12737         * gst/schedulers/gstbasicscheduler.c:
12738         (gst_basic_scheduler_chainhandler_proxy),
12739         (gst_basic_scheduler_gethandler_proxy),
12740         (gst_basic_scheduler_cothreaded_chain):
12741           Suffix error messages with period.
12742           Use (NULL) instead of NULL
12743
12744 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12745
12746         * docs/gst/tmpl/gstelement.sgml:
12747         * docs/gst/tmpl/gstxml.sgml:
12748         * gst/gstelement.c: (gst_element_error_full):
12749           add element path to error
12750
12751 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12752
12753         * docs/random/mimetypes:
12754           update raw int/float info
12755         * gst/gsttag.c: (_gst_tag_initialize):
12756         * gst/gsttag.h:
12757           add GST_TAG_ENCODER
12758
12759 2004-01-30  David Schleef  <ds@schleef.org>
12760
12761         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12762           missing (#132991)
12763
12764 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12765
12766         reviewed by Benjamin Otte 
12767           parts of the patch submitted in bug #113913
12768
12769         * configure.ac:
12770           use AC_C_INLINE. Use = instead of == with test
12771         * examples/plugins/example.c:
12772         * gst/autoplug/gstspideridentity.c:
12773         * gst/elements/gstfdsrc.c:
12774         * gst/elements/gstfilesrc.c:
12775         * gst/elements/gstidentity.c:
12776         * gst/elements/gstmultidisksrc.c:
12777         * gst/elements/gststatistics.c:
12778         * gst/gstelement.c:
12779         * gst/gstobject.c:
12780         * gst/gstpad.c:
12781         * gst/gstpipeline.c:
12782         * gst/gstthread.c:
12783           don't end enums with a comma
12784         * gst/gstindex.c: (gst_index_compare_func):
12785           do explicit casting to gint
12786         * gst/gsttrace.c: (gst_trace_text_flush):
12787           #define strsize as a macro
12788
12789 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12790
12791         * docs/README:
12792         * docs/gst/gstreamer-docs.sgml:
12793         * docs/gst/gstreamer-sections.txt:
12794         * docs/gst/tmpl/gstelement.sgml:
12795         * docs/gst/tmpl/gsterror.sgml:
12796         * docs/gst/tmpl/gstinterface.sgml:
12797         * docs/gst/tmpl/gstreamer-unused.sgml:
12798         * docs/gst/tmpl/gststructure.sgml:
12799         * docs/gst/tmpl/gsttag.sgml:
12800         * docs/gst/tmpl/gsttaginterface.sgml:
12801         * docs/gst/tmpl/gstvalue.sgml:
12802         make sure all API ends up in the built docs
12803         * gst/gstinterface.c:
12804         * gst/gststructure.c: (gst_structure_id_set_value),
12805         (gst_structure_set_value), (gst_structure_id_get_value):
12806         * gst/gststructure.h:
12807         * gst/gstvalue.h:
12808         sync .h with .c declarations
12809
12810 2004-01-30  Julien Moutte  <julien@moutte.net>
12811
12812         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12813         Ronald will fix riffread.
12814
12815 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12816
12817         * docs/pwg/advanced-interfaces.xml:
12818           Added tuner interface docs.
12819
12820 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12821
12822         * docs/random/mimetypes:
12823           correct Theora information
12824         * gst/gstelement.h:
12825           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12826
12827 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12828
12829         * gst/gstelement.c: (gst_element_error_full):
12830         * gst/gstelement.h:
12831           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12832
12833 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12834
12835         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12836         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12837         again and even before DISCONT.
12838         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12839         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12840         bytestream so that it's not stopping to fill the bytestream if events
12841         different than EOS or DISCONT are received. Instead it process them so
12842         that they go downstream.
12843
12844 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12845
12846         * docs/gst/tmpl/gstelement.sgml:
12847         * docs/gst/tmpl/gstreamer-unused.sgml:
12848         * docs/gst/tmpl/gstxml.sgml:
12849         * gst/autoplug/gstspideridentity.c:
12850         (gst_spider_identity_sink_loop_type_finding):
12851         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12852         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12853         (gst_filesink_close_file), (gst_filesink_handle_event),
12854         (gst_filesink_chain):
12855         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12856         (gst_filesrc_get_read), (gst_filesrc_open_file):
12857         * gst/elements/gstidentity.c: (gst_identity_chain):
12858         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12859         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12860         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12861         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12862         * gst/gstelement.h:
12863         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12864         (gst_pad_recover_caps_error), (gst_pad_pull):
12865         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12866         * gst/schedulers/gstbasicscheduler.c:
12867         (gst_basic_scheduler_chainhandler_proxy),
12868         (gst_basic_scheduler_gethandler_proxy),
12869         (gst_basic_scheduler_cothreaded_chain):
12870           gst_element_error -> GST_ELEMENT_ERROR
12871
12872 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12873
12874         * docs/Makefile.am:
12875         * docs/gst/tmpl/gstelement.sgml:
12876         * docs/gst/tmpl/gstxml.sgml:
12877         * docs/manuals.mak:
12878         * docs/pwg/advanced-request.xml:
12879         * docs/pwg/advanced-scheduling.xml:
12880         * docs/pwg/advanced-tagging.xml:
12881           fix non-validating docbook using CDATA
12882           make sure make check-local gets run first to check if it validates
12883
12884 2004-01-29  Julien MOUTTE <julien@moutte.net>
12885
12886         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12887         handling (up and downstream).
12888         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12889         my_filter thing.
12890
12891 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12892
12893         * docs/pwg/advanced-tagging.xml:
12894           Add docs about tag writing.
12895
12896 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12897
12898         * docs/pwg/advanced-tagging.xml:
12899           Add a part about tag reading and application signalling... Tag
12900           writing still needs to be documented.
12901         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12902           We can set file locations in READY, too.
12903
12904 2004-01-29  Julien MOUTTE <julien@moutte.net>
12905
12906         * docs/random/ds/element-checklist: Adding some notes about src
12907         events.
12908
12909 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12910
12911         * docs/random/mimetypes:
12912           Update docs to point to correct elements for various mimetypes, and
12913           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12914           <stephane.loeuillet@tiscali.fr>.
12915
12916 2004-01-28  David Schleef  <ds@schleef.org>
12917
12918         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12919
12920 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12921
12922         * docs/random/mimetypes:
12923           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12924           undefined"
12925         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12926           make it only work in NULL.
12927         * gst/gstcaps.c:
12928           don't posion NULL caps
12929         * gst/gstelement.c: (gst_element_set_time):
12930           add debugging statement
12931         * gst/gstelement.c: (gst_element_emit_found_tag),
12932         (gst_element_found_tag_func), (gst_element_found_tags):
12933         * gst/gstelement.h:
12934           These functions take const taglists
12935         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12936           fix memleak
12937         * gst/gstpad.c: (gst_pad_event_default):
12938           make more effort on handling discont and clocks, g_warn if everything
12939           fails
12940         * gst/gststructure.c: (gst_structure_remove_fields),
12941         (gst_structure_remove_fields_valist):
12942         * gst/gststructure.h:
12943           add gst_structure_remove_fields(_valist)
12944         * gst/gsttag.c:
12945           fix doc glitch
12946
12947 2004-01-28  David Schleef  <ds@schleef.org>
12948
12949         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12950         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12951         Fix memory leakage of gst_caps_to_string().
12952
12953         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12954         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12955         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12956         (gst_spider_identity_sink_loop_type_finding):
12957         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12958         (find_suggest):
12959         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12960         (gst_pad_set_explicit_caps):
12961         * gst/parse/grammar.y:
12962
12963 2004-01-28  David Schleef  <ds@schleef.org>
12964
12965         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12966         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12967         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12968         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12969         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12970         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12971         (gst_debug_log_default), (_gst_info_printf_extension),
12972         (_gst_info_printf_extension_arginfo):  Add printf extension.
12973         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12974         * gst/gststructure.c: (gst_structure_to_string),
12975         (_gst_structure_parse_value): Use gst_value_deserialize() and
12976         remove old code.
12977         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12978         (gst_value_deserialize_boolean), (gst_strtoi),
12979         (gst_value_deserialize_int), (gst_value_deserialize_double),
12980         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12981         a bunch of deserialize functions and gst_value_deserialize.
12982         * gst/gstvalue.h: er, _de_serialize, not unserialize
12983         * testsuite/caps/string-conversions.c: (main): We don't currently
12984         handle (float) in caps, so convert these to (double).
12985         * testsuite/debug/Makefile.am: Add new test for the printf extension
12986         * testsuite/debug/printf_extension.c: (main): same
12987
12988 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12989
12990         * docs/random/company/time:
12991           Add some docs about clocking and time
12992
12993 2004-01-28  Julien MOUTTE <julien@moutte.net>
12994
12995         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
12996
12997 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
12998
12999         * docs/pwg/advanced-clock.xml:
13000         * docs/pwg/advanced-dparams.xml:
13001         * docs/pwg/advanced-events.xml:
13002         * docs/pwg/advanced-interfaces.xml:
13003         * docs/pwg/advanced-midi.xml:
13004         * docs/pwg/advanced-request.xml:
13005         * docs/pwg/advanced-scheduling.xml:
13006         * docs/pwg/advanced-tagging.xml:
13007         * docs/pwg/advanced-types.xml:
13008         * docs/pwg/appendix-checklist.xml:
13009         * docs/pwg/building-boiler.xml:
13010         * docs/pwg/building-chainfn.xml:
13011         * docs/pwg/building-filterfactory.xml:
13012         * docs/pwg/building-pads.xml:
13013         * docs/pwg/building-props.xml:
13014         * docs/pwg/building-signals.xml:
13015         * docs/pwg/building-state.xml:
13016         * docs/pwg/building-testapp.xml:
13017         * docs/pwg/intro-basics.xml:
13018         * docs/pwg/intro-preface.xml:
13019         * docs/pwg/other-autoplugger.xml:
13020         * docs/pwg/other-sink.xml:
13021         * docs/pwg/other-source.xml:
13022         * docs/pwg/titlepage.xml:
13023           fix up id's
13024
13025 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13026
13027         * docs/95NonPath:
13028         * docs/HACKING:
13029         * docs/README:
13030         * docs/building-the-docs-on-debian:
13031           collect relevant bits of doc info
13032
13033 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13034
13035         * docs/pwg/advanced_tagging.xml:
13036           Half-assed commit so Thomas can re-arrange document IDs here to be
13037           consistent, too.
13038
13039 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13040
13041         * docs/manual/autoplugging.xml:
13042         * docs/manual/bins-api.xml:
13043         * docs/manual/bins.xml:
13044         * docs/manual/buffers-api.xml:
13045         * docs/manual/buffers.xml:
13046         * docs/manual/clocks.xml:
13047         * docs/manual/components.xml:
13048         * docs/manual/cothreads.xml:
13049         * docs/manual/debugging.xml:
13050         * docs/manual/dparams-app.xml:
13051         * docs/manual/dynamic.xml:
13052         * docs/manual/elements-api.xml:
13053         * docs/manual/elements.xml:
13054         * docs/manual/factories.xml:
13055         * docs/manual/gnome.xml:
13056         * docs/manual/goals.xml:
13057         * docs/manual/helloworld.xml:
13058         * docs/manual/helloworld2.xml:
13059         * docs/manual/init-api.xml:
13060         * docs/manual/intro.xml:
13061         * docs/manual/links-api.xml:
13062         * docs/manual/links.xml:
13063         * docs/manual/manual.xml:
13064         * docs/manual/motivation.xml:
13065         * docs/manual/pads-api.xml:
13066         * docs/manual/pads.xml:
13067         * docs/manual/plugins-api.xml:
13068         * docs/manual/plugins.xml:
13069         * docs/manual/programs.xml:
13070         * docs/manual/queues.xml:
13071         * docs/manual/quotes.xml:
13072         * docs/manual/schedulers.xml:
13073         * docs/manual/states-api.xml:
13074         * docs/manual/states.xml:
13075         * docs/manual/threads.xml:
13076         * docs/manual/typedetection.xml:
13077         * docs/manual/xml.xml:
13078           use chapter, part, section or misc as id starts for all bits
13079
13080 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13081
13082         * docs/gst/gstreamer-sections.txt:
13083           Fix up TITLE of the sections
13084
13085 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13086
13087         * docs/pwg/advanced_interfaces.xml:
13088           Add documentation on propertyprobing.
13089         * docs/pwg/advanced_events.xml:
13090         * docs/pwg/advanced_tagging.xml:
13091         * docs/pwg/building_boiler.xml:
13092         * docs/pwg/building_filterfactory.xml:
13093         * docs/pwg/pwg.xml:
13094           Move filterfactory and tagging into their own chapter, add a chapter
13095           on events. all these are empty placeholders that will be filled in
13096           some day.
13097
13098 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13099
13100         * docs/pwg/advanced_interfaces.xml:
13101           Docs for mixer interface. Also a check for website uploading.
13102
13103 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13104
13105         * docs/HACKING:
13106         * docs/Makefile.am:
13107         * docs/faq/Makefile.am:
13108         * docs/gst/Makefile.am:
13109         * docs/gst/tmpl/gstelement.sgml:
13110         * docs/gst/tmpl/gstplugin.sgml:
13111         * docs/gst/tmpl/gstreamer-unused.sgml:
13112         * docs/libs/Makefile.am:
13113         * docs/manual/Makefile.am:
13114         * docs/manuals.mak:
13115         * docs/pwg/Makefile.am:
13116         * docs/upload.mak:
13117           Separate out upload target and make it similar for
13118           both docbook and gtk-doc docs
13119
13120 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13121
13122         * docs/manuals.mak:
13123           Fix upload target to work with freedesktop
13124
13125 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13126
13127         * docs/pwg/advanced_types.xml:
13128           Add notes on creating your own types.
13129         * docs/pwg/building_boiler.xml:
13130         * docs/pwg/building_pads.xml:
13131         * docs/pwg/building_state.xml:
13132           Add some stuff about how to retrieve values from structures, how
13133           that relates to types and change layout slightly again to be almost
13134           perfect.
13135
13136 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13137
13138         * docs/pwg/advanced_dparams.xml:
13139         * docs/pwg/advanced_scheduling.xml:
13140           Change index layout slightly.
13141
13142 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13143
13144         * docs/pwg/advanced_clock.xml:
13145         * docs/pwg/advanced_interfaces.xml:
13146         * docs/pwg/advanced_midi.xml:
13147           General placeholders for now.
13148         * docs/pwg/advanced_request.xml:
13149           Explanation about sometimes and request pads.
13150         * docs/pwg/advanced_scheduling.xml:
13151           Concept of bytestream, loopfunctions and schedulers.
13152         * docs/pwg/building_boiler.xml:
13153           Add something about plugin-init.
13154
13155 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13156
13157         * docs/pwg/building_pads.xml:
13158           Fix broken docbook
13159
13160 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13161
13162         * docs/pwg/advanced_interfaces.xml:
13163         * docs/pwg/pwg.xml:
13164           Add as a placeholder for future filling-in.
13165         * docs/pwg/basics_autoplugging.xml:
13166         * docs/pwg/basics_buffers.xml:
13167         * docs/pwg/basics_elements.xml:
13168         * docs/pwg/basics_events.xml:
13169         * docs/pwg/basics_plugins.xml:
13170         * docs/pwg/basics_types.xml:
13171           Remove, because unused (this is all in intro_basics.xml).
13172         * docs/pwg/building_signals.xml:
13173           Short intro to signals + reference to GObject docs - we really
13174           shouldn't go into these sort of things to deply because we don't
13175           use them that extensively anyway.
13176         * docs/pwg/building_state.xml:
13177           Explanation of states. Benjamin, please check.
13178         * docs/pwg/building_testapp.xml:
13179           Put everything in one page - putting only a few lines of content
13180           per page doesn't really make sense.
13181
13182           Time to get into the advanced topics. ;).
13183
13184 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13185
13186         * docs/pwg/advanced_types.xml:
13187           Finish documenting the current state of mimetypes.
13188         * docs/pwg/building_boiler.xml:
13189         * docs/pwg/building_chainfn.xml:
13190         * docs/pwg/building_pads.xml:
13191         * docs/pwg/building_props.xml:
13192         * docs/pwg/building_testapp.xml:
13193           Start documenting the "how to build a simple audio filter" part
13194           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13195           states and (maybe?) a short introduction to capsnego in the chapter
13196           on pads (building_pads.xml). Capsnego should probably be explained
13197           fully in advanced_capsnego.xml or so.
13198
13199 2004-01-26  David Schleef  <ds@schleef.org>
13200
13201         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13202         * gst/gstpad.h: Add new function to allow element to (somewhat)
13203         specify non-fixed caps on a pad.
13204         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13205         that I added a few weeks ago.
13206
13207 2004-01-26  David Schleef  <ds@schleef.org>
13208
13209         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13210           making try_set_caps() work with non-fixed caps.
13211
13212 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13213
13214         * docs/pwg/advanced_types.xml:
13215         * docs/pwg/intro_basics.xml:
13216         * docs/pwg/intro_preface.xml:
13217         * docs/pwg/pwg.xml:
13218         * docs/pwg/titlepage.xml:
13219           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13220           in here (docs/random/mimetypes), and will from there on work on both
13221           updating outdated parts and adding missing parts.
13222           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13223
13224 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13225
13226         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13227           policy is set
13228
13229 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13230
13231         * gst/gstelement.h:
13232           remove gst_element_factory_get_version. It doesn't exist anymore.
13233         * gst/gstplugin.c:
13234         * gst/gstplugin.h:
13235           remove gst_plugin_set_name and change gst_plugin_get_longname to
13236           gst_plugin_get_description to match code.
13237         * gst/gsterror.h:
13238           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13239         * gst/gstpad.c: (gst_pad_try_set_caps):
13240           make it work with nonfixed caps.
13241           Note that even in the nonfixed case the link function of the pad
13242           that tries to set caps isn't called.
13243
13244 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13245
13246         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13247           fix bug where buffer was not assembled correctly
13248         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13249           silence by default
13250         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13251           only seek if there's no more buffers that could work without seeking
13252
13253 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13254
13255         * gst/gsttag.c: (_gst_tag_initialize):
13256         * gst/gsttag.h:
13257           Add application tag (for encoding/muxing app).
13258
13259 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13260
13261         * autogen.sh:
13262           make autopoint force, and libtoolize not copy
13263         * common/m4/as-docbook.m4:
13264           added docbook xml catalog setup check
13265         * common/m4/gst-doc.m4:
13266           use docbook check
13267
13268 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13269
13270         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13271         * gst/gsttag.h:
13272           add GstTagFlag
13273
13274 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13275
13276         * docs/gst/gstreamer-sections.txt:
13277         * docs/gst/tmpl/gst.sgml:
13278         * docs/gst/tmpl/gstbuffer.sgml:
13279         * docs/gst/tmpl/gstclock.sgml:
13280         * docs/gst/tmpl/gstelement.sgml:
13281         * docs/gst/tmpl/gstreamer-unused.sgml:
13282         * docs/gst/tmpl/gstxml.sgml:
13283           sync latest API changes to docs
13284
13285 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13286
13287         * gst/gstpluginfeature.c:
13288           fix doc snippet
13289         * tools/gst-inspect.c: (print_element_list):
13290           fix output of typefind
13291           add GPL header
13292         * tools/gst-launch.c:
13293           add GPL header
13294
13295 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13296
13297         * gst/elements/Makefile.am:
13298         * gst/elements/gstelements.c:
13299         * gst/elements/gsttypefindelement.c:
13300         * gst/elements/gsttypefindelement.h:
13301         * po/POTFILES.in:
13302         * po/fr.po:
13303         * po/nl.po:
13304           renamed gsttypefindelement to gsttypefind, conserving CVS history
13305
13306 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13307
13308         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13309         * gst/gsttag.h:
13310           add some tags used in ogg as well
13311           fix _ in replaygain tags
13312
13313 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13314
13315         * gst/gsterror.h:
13316           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13317
13318 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13319
13320         * gst/gstelement.c: (gst_element_error_full):
13321         * gst/gstelement.h:
13322           change _extended to _full
13323
13324 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13325
13326         reviewed by: <delete if not using a buddy>
13327
13328         * docs/gst/tmpl/gst.sgml:
13329         * docs/gst/tmpl/gstbuffer.sgml:
13330         * docs/gst/tmpl/gstclock.sgml:
13331         * docs/gst/tmpl/gstelement.sgml:
13332         * docs/gst/tmpl/gstreamer-unused.sgml:
13333         * docs/gst/tmpl/gstxml.sgml:
13334         * gst/gstelement.c: (gst_element_error_full):
13335         * gst/gstelement.h:
13336
13337 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13338
13339         * gst/gstelement.h: fix _gst_element_error_printf prototype
13340
13341 2004-01-20  David Schleef  <ds@schleef.org>
13342
13343         * gst/gststructure.c: (gst_structure_to_string):
13344         Convert function to use gst_value_serialize().
13345         * gst/gstvalue.c: (gst_value_serialize_list),
13346         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13347         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13348         (gst_value_serialize_int), (gst_value_serialize_double),
13349         (gst_string_wrap), (gst_value_serialize_string),
13350         (gst_value_serialize), (gst_value_deserialize):
13351         * gst/gstvalue.h:
13352         Add implementations for serialize.
13353
13354 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13355
13356         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13357         we want to keep that one in the future or change xvidenc.c to use 
13358         another error.
13359
13360 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13361
13362         * gst/gstelement.c: (_gst_element_error_printf):
13363         * gst/gstelement.h:
13364           privatise function
13365
13366 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13367
13368         * docs/random/error:
13369           doc explaining error system
13370         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13371           cleanup
13372
13373 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13374
13375         * gst/gst-i18n-app.h:
13376         * gst/gst-i18n-lib.h:
13377           remove inclusion of config.h
13378         * po/POTFILES.in:
13379         * po/nl.po:
13380           add gst/gstelement.c
13381
13382 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13383
13384         * po/nl.po: updated Dutch translation
13385
13386 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13387
13388         * gst/gsterror.c: (_gst_core_errors_init),
13389         (_gst_library_errors_init), (_gst_resource_errors_init),
13390         (_gst_stream_errors_init):
13391         remove ending punctuation dots
13392
13393 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13394
13395         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13396         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13397         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13398         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13399         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13400         use GST_ERROR_SYSTEM
13401
13402 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13403
13404         * gst/gstelement.c: (gst_element_error_printf),
13405         (gst_element_error_extended):
13406         * gst/gstelement.h:
13407           add a helper printf function so we can have NULL values passed.
13408
13409 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13410
13411         * gst/gstelement.h:
13412           add G_STMT macros to gst_element_error, which isn't strictly
13413           necessary but people tell me to anyway.
13414
13415 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13416
13417         * gst/Makefile.am:
13418         * gst/autoplug/gstspideridentity.c:
13419         (gst_spider_identity_sink_loop_type_finding):
13420         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13421         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13422         (gst_filesink_close_file), (gst_filesink_handle_event),
13423         (gst_filesink_chain):
13424         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13425         (gst_filesrc_map_region), (gst_filesrc_get_read),
13426         (gst_filesrc_open_file):
13427         * gst/elements/gstidentity.c: (gst_identity_chain):
13428         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13429         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13430         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13431         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13432         * gst/gst.h:
13433         * gst/gst_private.h:
13434         * gst/gstelement.c: (gst_element_class_init),
13435         (gst_element_default_error), (gst_element_error_func),
13436         (gst_element_error_extended):
13437         * gst/gstelement.h:
13438         * gst/gsterror.c: (_gst_core_errors_init),
13439         (_gst_library_errors_init), (_gst_resource_errors_init),
13440         (_gst_stream_errors_init), (gst_error_get_message):
13441         * gst/gsterror.h:
13442         * gst/gstinfo.c: (_gst_debug_init):
13443         * gst/gstmarshal.list:
13444         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13445         (gst_pad_recover_caps_error), (gst_pad_pull):
13446         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13447         * gst/schedulers/gstbasicscheduler.c:
13448         (gst_basic_scheduler_chainhandler_proxy),
13449         (gst_basic_scheduler_gethandler_proxy),
13450         (gst_basic_scheduler_cothreaded_chain):
13451         * po/POTFILES.in:
13452         * po/fr.po:
13453         * po/nl.po:
13454           change error signal
13455           add error categories
13456
13457 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13458
13459         * gst/gsttag.c: (_gst_tag_initialize):
13460         * gst/gsttag.h:
13461         Add replaygain tag
13462
13463 2004-01-18  Colin Walters  <walters@verbum.org>
13464
13465         * examples/retag/retag.c: Call gst_init before processing
13466         program args.  Add g_assert to _link_many call.
13467
13468 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13469
13470         * gst/gstpad.c: (gst_pad_alloc_buffer):
13471           Return a newly allocated buffer when the pad has no peer.
13472
13473 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13474
13475         * gst/gstclock.c: (gst_clock_get_time):
13476           make it compile with gcc 2.95 again.
13477           Patch by Scott Wheeler
13478
13479 2004-01-15  David Schleef  <ds@schleef.org>
13480
13481         * gst/gstcaps.h:
13482         Added gst_caps_is_simple() macro.
13483         * testsuite/caps/caps.c: (test1):
13484         * testsuite/caps/intersect2.c: (main):
13485         * testsuite/caps/intersection.c: (main):
13486         Fixes to make 'make check' work again after removing
13487         gst_caps_is_chained().
13488
13489 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13490
13491         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13492         and additions to the MIDI document.
13493
13494 2004-01-15  David Schleef  <ds@schleef.org>
13495
13496         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13497         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13498         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13499
13500 2004-01-15  David Schleef  <ds@schleef.org>
13501
13502         * gst/gstqueue.c:
13503         * gst/gstqueue.h:
13504         Fix the spelling of "treshold" and make min_threshold actually
13505         affect the queue.
13506
13507 2004-01-15  David Schleef  <ds@schleef.org>
13508
13509         * gst/gstcaps.c:
13510         Add lots of documentation.
13511         * gst/gstcaps.h:
13512         Deprecate a few functions.
13513         * gst/gstpad.c:
13514         Removed use of deprecated functions.
13515
13516 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13517
13518         * gst/gstpad.c: (gst_pad_is_linked):
13519         * gst/gstpad.h:
13520           implement gst_pad_is_linked
13521         * gst/gstelement.h:
13522           reserve space for initiate_state_change
13523
13524 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13525
13526         * gst/autoplug/gstspideridentity.c:
13527         (gst_spider_identity_sink_loop_type_finding):
13528           break infinite loop by just returning instead of looping
13529         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13530           set event time difference correctly. Set it to 1 second instead
13531           of 100ms to be more tolerant
13532         * gst/gstelement.c: (gst_element_set_time):
13533           add debugging output
13534
13535 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13536
13537         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13538           query if buffers are inside the pool, ignore events
13539
13540 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13541
13542         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13543         (gst_clock_set_speed), (gst_clock_set_active),
13544         (gst_clock_is_active), (gst_clock_reset),
13545         (gst_clock_handle_discont):
13546         * gst/gstclock.h:
13547           deprecate old interface and disable functions that aren't in use
13548           anymore.
13549         * gst/gstelement.h:
13550         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13551         (gst_element_set_time), (gst_element_adjust_time):
13552           add concept of "element time" and functions to get/set this time.
13553         * gst/gstelement.c: (gst_element_change_state):
13554           update element time correctly.
13555         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13556           This is a debug message, not a g_critical.
13557         * gst/gstpad.c: (gst_pad_event_default):
13558           handle discontinuous events right with element time.
13559         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13560           update to clocking fixes.
13561           set clocks on elements in READY=>PAUSED. The old behaviour caused
13562           a wrong element time on the first element that started playing.
13563         * gst/schedulers/gstbasicscheduler.c:
13564         (gst_basic_scheduler_class_init):
13565         * gst/schedulers/gstoptimalscheduler.c:
13566         (gst_opt_scheduler_class_init):
13567           remove code that just implements the default behaviour.
13568         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13569           update to use new clocking functions
13570         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13571         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13572           update to test new element time.
13573         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13574           use _get_allowed_caps instead of _get_caps. This catches filtered
13575           caps correctly.
13576         * testsuite/debug/commandline.c:
13577           update for new GST_DEBUG syntax.
13578         * testsuite/threads/Makefile.am:
13579           disable a test that only works sometimes.
13580
13581 2004-01-13  Julien MOUTTE <julien@moutte.net>
13582
13583         * po/LINGUAS: Adding fr.
13584         * po/fr.po: Adding french translation.
13585
13586 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13587
13588         * gst/parse/grammar.y:
13589         * po/POTFILES.in:
13590         * po/nl.po:
13591         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13592           translate parsing error messages
13593
13594 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13595
13596         * po/POTFILES.in: adding gst-launch
13597         * po/nl.po: updated translation, all 99 strings translated
13598         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13599         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13600           fix strings for translation
13601
13602 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13603
13604         * gst/gst.c:
13605           - capitalize beginnings of popt options
13606           - fix strings for translation
13607           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13608
13609 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13610
13611         * po/README: add some notes on how to update translations
13612
13613 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13614
13615         * ABOUT-NLS: removed, is autogenerated from autopoint
13616         * autogen.sh: add autopoint stuff
13617         * configure.ac: fix up gettext stuff
13618         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13619         * gst/elements/gsttypefindelement.c: add header include
13620         * gst/gettext.h: add header, copy from system-installed header
13621         * gst/gst-i18n-app.h: to be included by each app having translations
13622         * gst/gst-i18n-lib.h: to be included by each lib having translations
13623         * gst/gst.c: (init_pre): fix up gettext calls
13624         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13625         * po/LINGUAS: the new way to specify translations present
13626         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13627         * po/Makevars: the variables filled in for GStreamer
13628         * po/POTFILES.in: added new files with translations
13629         * po/de.po: has new strings
13630         * po/nl.po: readded, has new strings
13631
13632 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13633
13634         * gst/gsttag.c: fix some strings marked for translation
13635
13636 2004-01-13  Iain <iain@prettypeople.org>
13637
13638         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13639         group when we add an element to it, cos we unref it when we remove one
13640
13641 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13642
13643         * testsuite/debug/commandline.c: (debug_not_reached):
13644         * testsuite/debug/output.c: (check_message):
13645           fix testsuite
13646
13647 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13648
13649         * examples/cutter/.cvsignore:
13650         * examples/helloworld/.cvsignore:
13651         * examples/launch/.cvsignore:
13652         * examples/manual/.cvsignore:
13653         * examples/mixer/.cvsignore:
13654         * examples/pingpong/.cvsignore:
13655         * examples/plugins/.cvsignore:
13656         * examples/queue/.cvsignore:
13657         * examples/queue2/.cvsignore:
13658         * examples/queue3/.cvsignore:
13659         * examples/queue4/.cvsignore:
13660         * examples/retag/.cvsignore:
13661         * examples/thread/.cvsignore:
13662         * examples/typefind/.cvsignore:
13663         * examples/xml/.cvsignore:
13664         * gst/.cvsignore:
13665         * gst/autoplug/.cvsignore:
13666         * gst/elements/.cvsignore:
13667         * gst/indexers/.cvsignore:
13668         * gst/parse/.cvsignore:
13669         * gst/registries/.cvsignore:
13670         * gst/schedulers/.cvsignore:
13671         * libs/gst/bytestream/.cvsignore:
13672         * libs/gst/control/.cvsignore:
13673         * libs/gst/getbits/.cvsignore:
13674         * tests/.cvsignore:
13675         * tests/bufspeed/.cvsignore:
13676         * tests/instantiate/.cvsignore:
13677         * tests/memchunk/.cvsignore:
13678         * tests/muxing/.cvsignore:
13679         * tests/sched/.cvsignore:
13680         * tests/seeking/.cvsignore:
13681         * tests/threadstate/.cvsignore:
13682         * testsuite/.cvsignore:
13683         * testsuite/caps/.cvsignore:
13684         * testsuite/cleanup/.cvsignore:
13685         * testsuite/dynparams/.cvsignore:
13686         * testsuite/plugin/.cvsignore:
13687         * tools/.cvsignore:
13688           update - this is huge, because it includes *.bb, *.bbg and *.da files
13689           which are generated for gcov.
13690
13691 2004-01-11  David Schleef  <ds@schleef.org>
13692
13693         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13694         a function to parse integers in ways that strto[u]l() does not.
13695
13696 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13697
13698         * tools/gst-inspect.c: (print_caps):
13699           improve output of caps a bit
13700
13701 2004-01-11  David Schleef  <ds@schleef.org>
13702
13703         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13704         inherit correct flags (READONLY and DONTKEEP).
13705
13706 2004-01-11  David Schleef  <ds@schleef.org>
13707
13708         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13709         (gst_filesrc_map_region):
13710         * gst/gstbuffer.c: (_gst_buffer_initialize),
13711         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13712         (gst_buffer_new), (gst_buffer_create_sub),
13713         (gst_buffer_is_span_fast), (gst_buffer_span):
13714         * gst/gstbuffer.h:
13715         Change GstBuffer private structure element names. (all files)
13716         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13717         (gst_queue_link):
13718         * gst/gstqueue.h:
13719         Implement getcaps/pad_link functions that handle the case where
13720         there are data in the queue.
13721
13722 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13723
13724         * gst/elements/gstbufferstore.c:
13725           initialize debugging structure correctly
13726         * gst/elements/gsttee.c: (gst_tee_set_property):
13727           g_object_notify when property was changed
13728         * gst/elements/gsttypefindelement.c:
13729         (gst_type_find_element_change_state):
13730           clear caps correctly
13731
13732 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13733
13734         * gst/gstqueue.c: (gst_queue_init):
13735           Use better defaults for when a queue should block. This
13736           gets rid of jerky playback for quite a few files.
13737           It takes more memory.
13738
13739 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13740
13741         (gst_xml_registry_parse_padtemplate):
13742           make critical message slightly more useful
13743
13744 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13745
13746         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13747         (gst_debug_message_get), (gst_debug_log_default):
13748         * gst/gstinfo.h:
13749           Change gst_debug_log(_valist) to take a const format string.
13750           Change prototype of log function and functions using those to 
13751           take a GstDebugMessage instead of a string that requires using
13752           gst_debug_message_get.
13753
13754 2004-01-08  David Schleef  <ds@schleef.org>
13755
13756         * Makefile.am:
13757         * configure.ac:
13758         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13759         and -ftest-coverage, which allows gcov to show information about
13760         testsuite coverage.
13761
13762 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13763
13764         * gst/gstutils.h:
13765           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13766           GST_PARENT_CALL_WITH_DEFAULT
13767         * gst/elements/gstaggregator.c: 
13768         * gst/elements/gstbufferstore.c: 
13769         * gst/elements/gstfakesink.c: 
13770         * gst/elements/gstfakesrc.c: 
13771         * gst/elements/gstfdsink.c: 
13772         * gst/elements/gstfdsrc.c: 
13773         * gst/elements/gstfilesink.c: 
13774         * gst/elements/gstfilesrc.c: 
13775         * gst/elements/gstidentity.c: 
13776         * gst/elements/gstmd5sink.c: 
13777         * gst/elements/gstmultidisksrc.c:
13778         * gst/elements/gstpipefilter.c: 
13779         * gst/elements/gstshaper.c:
13780         * gst/elements/gststatistics.c:
13781         * gst/elements/gsttee.c:
13782         * gst/elements/gsttypefindelement.c:
13783           use them.
13784
13785 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13786
13787         * docs/gst/gstreamer-docs.sgml: remove props
13788         * docs/gst/gstreamer-sections.txt: remove props
13789         * docs/gst/tmpl/gst.sgml:
13790         * docs/gst/tmpl/gstbin.sgml:
13791         * docs/gst/tmpl/gstbuffer.sgml:
13792         * docs/gst/tmpl/gstcaps.sgml:
13793         * docs/gst/tmpl/gstclock.sgml:
13794         * docs/gst/tmpl/gstelement.sgml:
13795         * docs/gst/tmpl/gstindex.sgml:
13796         * docs/gst/tmpl/gstobject.sgml:
13797         * docs/gst/tmpl/gstpad.sgml:
13798         * docs/gst/tmpl/gstpadtemplate.sgml:
13799         * docs/gst/tmpl/gstreamer-unused.sgml:
13800         * docs/gst/tmpl/gstthread.sgml:
13801         * docs/gst/tmpl/gstxml.sgml:
13802           sync with code reorganization
13803
13804 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13805
13806         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13807         Make the 'Could not find compatible pad' message more informative.
13808
13809 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13810                                                                                 
13811         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13812           Fix for if we pass NULL as property to location.
13813         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13814         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13815           Fix for instantiate-test (see below).
13816         * gst/gststructure.c: (_gst_structure_parse_value):
13817           Fix compile error on gcc-2.96.
13818         * configure.ac:
13819         * tests/Makefile.am:
13820         * tests/instantiate/Makefile.am:
13821         * tests/instantiate/create.c: (create_all_elements), (main):
13822           Add a test that instantiates all elements. This makes it easy to
13823           track dead code for old API/design (like setting event functions
13824           on sink pads and so on).
13825
13826 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13827
13828         * gst/gstcaps.c: (gst_caps_append_structure):
13829           Move the poisoning to allow a NULL structure
13830         * gst/gstevent.c: (_gst_event_free):
13831           When freeing a navigation event, free the structure
13832           also
13833
13834 2004-01-04  David Schleef  <ds@schleef.org>
13835
13836         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13837         Remove usage of gst_pad_proxy_fixate.
13838         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13839         (gst_caps_split_one), (gst_caps_replace):
13840         Add poisoning code.
13841         * gst/gstmarshal.list:
13842         Add pointer__pointer for fixate signal
13843         * gst/gstpad.c: (gst_real_pad_class_init),
13844         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13845         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13846         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13847         Add poisoning code. Add fixate signal on RealPad. Change
13848         set_explicit_caps() to take const GstCaps, like try_set_caps().
13849         * gst/gstpad.h:
13850         * testsuite/caps/Makefile.am:
13851         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13852
13853 2004-01-03  David Schleef  <ds@schleef.org>
13854
13855         * gst/elements/gsttypefindelement.c:
13856         (gst_type_find_element_have_type), (gst_type_find_element_init):
13857         Use gst_pad_use_explicit_caps for src pad.
13858         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13859         before using it.
13860
13861 2004-01-03  David Schleef  <ds@schleef.org>
13862
13863         * gst/gstelement.c: (gst_element_link_pads_filtered),
13864         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13865         that linking was successful.
13866         * gst/gstpad.c: (gst_pad_link_free),
13867         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13868         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13869         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13870         GstPadLinkReturn correctly between functions, and don't fail
13871         when DELAYED is used (DELAYED is very important).  Better
13872         cleanup on unlinking and unnegotiation.  Should fix some spider
13873         bugs.
13874
13875 2004-01-02  David Schleef  <ds@schleef.org>
13876
13877         * gst/gstelement.c: (gst_element_class_init),
13878         (gst_element_base_class_init): ->padtemplates should be cleared
13879         in base_init, since we need to have a fresh list for every
13880         class.  (Alternately, we chould copy the list and share the
13881         actual pad templates (not the list), but that would require
13882         changing every plugin to move pad template registration from
13883         base_init to class_init.)
13884
13885 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13886
13887         * gst/gstelement.c: (gst_element_class_add_pad_template):
13888           Refuse registering a pad template if another pad template
13889           with the same name already exists (#114715).
13890
13891 2004-01-02  David Schleef  <ds@schleef.org>
13892
13893         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13894         (gst_caps_is_equal_fixed): Add new function.
13895         * gst/gstcaps.h: ditto.
13896         * gst/gstpad.c: (gst_real_pad_class_init),
13897         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13898         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13899         check new caps against existing caps -- if they're the same, return
13900         OK without renegotiating.  caps-nego-failed signal fixed so that
13901         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13902         to save an extra caps copy.  Don't complete negotiation if a pad
13903         link function returns DELAYED.
13904
13905 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13906
13907         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13908           Fix wrong g_return_if_fail
13909
13910 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13911
13912         * gst/gstbin.c: (gst_bin_class_init):
13913         Change the marshalling of element_added/element_removed
13914         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13915         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13916
13917 2004-01-01  David Schleef  <ds@schleef.org>
13918
13919         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13920         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13921         (gst_pad_use_explicit_caps):
13922         * gst/gstpad.h:
13923         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13924         to use an internal getcaps and link fuction so that negotiation
13925         always results in the explicitly set caps.
13926         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13927         are particularly useful for decoders.
13928
13929 2003-12-31  David Schleef  <ds@schleef.org>
13930
13931         * gst/elements/gstidentity.c: (gst_identity_class_init),
13932         (gst_identity_init), (gst_identity_chain),
13933         (gst_identity_set_property), (gst_identity_get_property):
13934         * gst/elements/gstidentity.h:
13935         * gst/gstqueue.c: (gst_queue_init):
13936           Negotiation fixes.
13937
13938 2003-12-31  David Schleef  <ds@schleef.org>
13939
13940         * gst/gstcaps.c: (gst_caps_intersect),
13941         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13942           Implement gst_caps_normalize().
13943         * testsuite/caps/normalisation.c: (main):
13944           Add an additional test
13945
13946 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13947
13948         * gst/gstqueue.c: (gst_queue_init):
13949           use gst_pad_proxy_getcaps()
13950
13951 2003-12-31  David Schleef  <ds@schleef.org>
13952
13953         * gst/elements/gstshaper.c: (gst_shaper_link):
13954         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13955         * gst/gstqueue.c: (gst_queue_link):
13956           Negotiation fixes.
13957
13958 2003-12-31  David Schleef  <ds@schleef.org>
13959
13960         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13961         * gst/gstpad.h: Add functions that are useful as default pad
13962         link and fixate functions for elements.
13963
13964 2003-12-30  David Schleef  <ds@schleef.org>
13965
13966         * gst/gstpad.c: (gst_pad_link_try):
13967           Fix segfault when attempting to return to old caps
13968
13969 2003-12-29  David Schleef  <ds@schleef.org>
13970
13971         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13972         (gst_caps_structure_simplify), (gst_caps_simplify):
13973         * gst/gstcaps.h:
13974           Add simplify function
13975         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13976         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13977         * gst/gstpad.h:
13978           Copy over srcnotify, sinknotify when calling old pad_link
13979           functions.  Add new is_negotiated() function.
13980         * gst/gststructure.c: (gst_structure_copy):
13981           Fix an incredibly stupid bug that should have been noticed
13982           weeks ago.  _copy() returned the argument, not the new copy.
13983
13984 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13985
13986         * gst/gstcaps.c: (gst_caps_append):
13987           add sanity checks
13988         * gst/gstcaps.h: (gst_caps_debug):
13989           remove, it doesn't exist anymore.
13990         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
13991         (gst_element_threadsafe_properties_post_run):
13992           make debugging messages not clutter up THREAD debug category
13993         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
13994         (gst_element_change_state):
13995           update to new caps API
13996         * gst/gstinterface.c: (gst_implements_interface_cast):
13997           don't put vital code in g_return_if_fail
13998         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
13999         (gst_pad_link_filtered):
14000           add pst_pad_try_link and use it.
14001         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
14002           implement correctly, deprecate first one.
14003         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
14004           add and implement.
14005         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
14006           implement.
14007         (gst_pad_get_negotiated_caps):
14008           add and implement. Make GST_PAD_CAPS call this function.
14009         (gst_pad_get_caps):
14010           remove unneeded check..
14011         (gst_pad_recover_caps_error):
14012           disable, always return FALSE.
14013         (gst_real_pad_dispose):
14014           don't free caps and appfilter anymore, they're unused.
14015         * gst/gstpad.h:
14016           Reflect changes mentioned above.
14017         * gst/gstsystemclock.c: (gst_system_clock_wait):
14018           Make 'clock is way behind' a debugging message.
14019         * gst/gstthread.c: (gst_thread_change_state):
14020           Fix debugging message
14021
14022 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
14023
14024         * gst/gstinfo.h:
14025           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
14026         * docs/gst/tmpl/gstreamer-unused.sgml:
14027           removed all traces of cvs conflicts
14028
14029 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14030
14031         * configure.ac:
14032         * gst/schedulers/cothreads_compat.h:
14033         * libs/Makefile.am:
14034           remove last instances of wingo cothread usage
14035
14036 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14037
14038         * gst/gstplugin.c:
14039         * gst/gstversion.h.in:
14040         * gst/parse/grammar.y:
14041           change comment block from /** to /* when not gtk-doc comments
14042
14043 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14044
14045         * gst/gst.c: whitespace and doc style fixes
14046
14047 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14048
14049         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
14050
14051 2003-12-24  Colin Walters  <walters@verbum.org>
14052
14053         * gst/elements/gsttypefindelement.c:
14054           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
14055           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
14056           Don't double-free caps.
14057
14058 2003-12-23  David Schleef  <ds@schleef.org>
14059
14060         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
14061           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
14062           Many little fixes and additions of debug statements to
14063           get rhythmbox working.
14064
14065 2003-12-23  Colin Walters  <walters@verbum.org>
14066
14067         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
14068         Use GST_PAD_LINK_SUCCESSFUL.
14069
14070 2003-12-23  David Schleef  <ds@schleef.org>
14071
14072         * gst/elements/gstaggregator.c:
14073         * gst/elements/gsttee.c:
14074           Use gst_pad_proxy_getcaps().
14075         * gst/gstpad.c:
14076         * gst/gstpad.h:
14077           Add gst_pad_proxy_getcaps(), which filter elements can use
14078           as a generic getcaps implementation.
14079           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14080           was advertised.
14081
14082 2003-12-23  David Schleef  <ds@schleef.org>
14083
14084         * gst/gstpad.c:
14085           Rearrange/rewrite much of the pad negotiation code, since it
14086           resembled pasta.  This actually changes the way some
14087           negotiation works, since the previous code was inconsistent
14088           depending on how it was invoked.  Add (internal) structure
14089           GstPadLink, which is used to hold some information (more in
14090           the future) about the link between two pads.  Fixes a number
14091           of bugs, including random lossage of filter caps when the
14092           initial negotiation is delayed.  A few functions are still
14093           unimplemented.
14094         * gst/gstpad.h:
14095           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14096           these when testing GstPadLinkReturn values instead of comparing
14097           directly.
14098
14099 2003-12-23  David Schleef  <ds@schleef.org>
14100
14101         * gst/gstvalue.c: 
14102         * gst/gstvalue.h:
14103           Rearrange lots of code.  Change registration of compare function
14104           into registration of compare/serialize/deserialize functions.
14105           Doesn't include implementation of gst_value_[de]serialize(),
14106           but that should be easy.
14107
14108 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14109
14110         * docs/gst/gstreamer-sections.txt:
14111         * docs/gst/tmpl/gstprops.sgml: removed
14112         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14113           David removed props and caps code, so let's remove their docs as well.
14114           Removed all no longer existing symbols from gstreamer-sections.txt
14115           
14116 2003-12-22  Colin Walters  <walters@verbum.org>
14117
14118         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14119           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14120           of tags directly.
14121
14122 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14123
14124         * gst/elements/gstelements.c:
14125           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14126         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14127           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14128           gst_caps (peer).
14129
14130 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14131
14132         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14133         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14134         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14135         (gst_spider_identity_sink_loop_type_finding):
14136         * gst/autoplug/gstspideridentity.h:
14137           Fix autoplugging in spider element, so it works with new caps.
14138           This was mainly caused by identifying empty caps incorrectly.
14139
14140 2003-12-22  David Schleef  <ds@schleef.org>
14141
14142         * gststructure.c, gstvalue.c, gstvalue.h: Add
14143           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14144           using g_value_copy()
14145
14146 2003-12-21  David Schleef  <ds@schleef.org>
14147
14148         * many, many files: Merge CAPS branch.  This includes:
14149           - implemention of GstValue and several GstValue types
14150           - implemention of GstStructure
14151           - entire rewrite of GstCaps
14152           - removal of GstProps
14153           - many changes to GstPad to compensate for new caps paradigm
14154           - removal of GstBufferpool
14155         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14156         gstvalue.h, gst/gstcaps[2]*.[ch]:
14157           - rename gstcaps2.[ch] to gstcaps.[ch]
14158
14159 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14160
14161         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14162         (gst_queue_chain), (gst_queue_handle_src_event):
14163           implement timeout for sending events. Workaround for if the
14164           pipeline on this queue is not passing any data.
14165
14166 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14167                                                                                 
14168         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14169         * moved CVS to freedesktop.org