check/Makefile.am: set GST_TOOLS_DIR
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
2
3         * check/Makefile.am:
4           set GST_TOOLS_DIR
5         * gst/check/gstcheck.c: (gst_check_message_error):
6         * gst/check/gstcheck.h:
7           add a fail_unless_equals_int
8           add fail_unless for error messages
9
10 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11
12         * check/Makefile.am:
13         * check/gst.supp:
14         * common/Makefile.am:
15         * common/check.mak:
16         * common/gst.supp:
17           factor out some of the common stuff so we can use it
18
19 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
20
21         * check/Makefile.am:
22         * check/gst/gstiterator.c: (GST_START_TEST):
23         * check/gst/gstsystemclock.c: (GST_START_TEST),
24         (gst_systemclock_suite):
25         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
26         * gst/gstclock.c:
27           valgrind more tests
28
29 2005-08-20  Thomas Vander Stichele  <thomas at apestaart dot org>
30
31         * check/elements/.cvsignore:
32         * check/elements/gstfakesrc.c:
33           rename to name of element
34         * check/elements/identity.c: (chain_func), (event_func),
35         (setup_identity), (cleanup_identity), (GST_START_TEST),
36         (identity_suite), (main):
37           add a test for identity
38         * check/Makefile.am:
39         * pkgconfig/Makefile.am:
40         * pkgconfig/gstreamer-check.pc.in:
41         * pkgconfig/gstreamer-check-uninstalled.pc.in:
42         * gst/check:
43         * gst/Makefile.am:
44         * configure.ac:
45           move the check stuff to a library that gets installed
46         * check/gst-libs/controller.c: (GST_START_TEST):
47         * check/gst-libs/gdp.c:
48         * check/gst/gst.c: (GST_START_TEST):
49         * check/gst/gstbin.c:
50         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
51         * check/gst/gstbus.c:
52         * check/gst/gstcaps.c: (GST_START_TEST):
53         * check/gst/gstelement.c:
54         * check/gst/gstghostpad.c:
55         * check/gst/gstiterator.c:
56         * check/gst/gstmessage.c:
57         * check/gst/gstminiobject.c: (thread_ref), (GST_START_TEST):
58         * check/gst/gstobject.c:
59         * check/gst/gstpad.c: (GST_START_TEST):
60         * check/gst/gststructure.c: (GST_START_TEST):
61         * check/gst/gstsystemclock.c: (GST_START_TEST),
62         (gst_systemclock_suite):
63         * check/gst/gsttag.c: (gst_tag_suite):
64         * check/gst/gstvalue.c:
65         * check/pipelines/cleanup.c:
66         * check/pipelines/simple_launch_lines.c:
67         * check/states/sinks.c:
68           change include statement
69
70         * docs/gst/gstreamer-sections.txt:
71         * docs/gst/tmpl/gstpad.sgml:
72           document more pad stuff
73         * gst/gstminiobject.c: (gst_mini_object_ref),
74         (gst_mini_object_unref):
75           debug refcounting
76
77 2005-08-19  Stefan Kost  <ensonic@users.sf.net>
78
79         * docs/gst/tmpl/gst.sgml:
80         * gst/gst.c:
81           eliminate another tmpl file, fix spelling in the long-description
82
83 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
84
85         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
86         (test_event), (timediff), (gstevents_suite):
87           Should fix build on 64-bit arch's
88
89 2005-08-18  Andy Wingo  <wingo@pobox.com>
90
91         Make sure that when a pipeline goes to PLAYING, that data has
92         actually hit the sink.
93
94         * check/states/sinks.c (test_sink): A sink that doesn't get any
95         data shouldn't return SUCCESS for going to either PLAYING or
96         PAUSED. Test also the return values on the way back down.
97
98         * gst/gstelement.c (gst_element_set_state): When changing the
99         state of an element currently changing state asynchronously, go to
100         lost-state after commiting the pending state. Makes future calls
101         to get_state continue to return ASYNC.
102
103         * gst/base/gstbasesink.c (gst_base_sink_change_state): Return
104         ASYNC when going to PLAYING if we still don't have preroll, as can
105         happen with live sources.
106
107 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
108
109         * docs/pwg/advanced-types.xml:
110           Hack long paragraph into 2 chunks as a workaround for buggy
111           jadetex version in sid and breezy that loops infinitely and
112           eats all RAM.
113
114 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
115
116         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
117         (test_event), (timediff), (gstevents_suite):
118           Provide more error margin in clock measurements to allow for 
119           g_get_current_time inaccuracies.
120
121 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
122
123         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
124         (test_event), (timediff), (gstevents_suite):
125            Fix error message output so I might be able to tell why the
126            test works here but fails on the build farm.
127
128 2005-08-18  Jan Schmidt  <thaytan@mad.scientist.com>
129
130         * check/Makefile.am:
131         * check/gst/gstevents.c: (GST_START_TEST), (event_probe),
132         (test_event), (timediff), (gstevents_suite), (main):
133           I wrote a test!
134
135         * docs/design/part-seeking.txt:
136           Spelling correction
137
138         * docs/gst/tmpl/gstevent.sgml:
139         * docs/gst/tmpl/gstfakesrc.sgml:
140           Docs updates.
141
142         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
143           Treat a buffer-without-newsegment the same as a receiving 
144           a newsegment not in time format, and disable syncing to the clock
145           with a warning.
146
147         * gst/gstbus.c: (gst_bus_set_sync_handler):
148           Assert if anyone tries to replace the existing sync_handler for bus, 
149           as only the owner should be setting it.
150
151         * gst/gstevent.h:
152           Have a fixed set of custom event enums with events identified by
153           their structure name (as in 0.8), rather than a free-for-all
154           allowing collisions between enum values from different plugins.
155
156         * gst/gstpad.c: (gst_pad_class_init):
157           Docs change.
158           
159         * gst/gstqueue.c: (gst_queue_handle_sink_event):
160           Handle out-of-band downstream events from the sending thread.
161
162 2005-08-17  Andy Wingo  <wingo@pobox.com>
163
164         * gst/gstpipeline.c (gst_pipeline_change_state): Interpret
165         play-timeout==0 to mean no timeout at all. In that case, don't
166         bother with a get_state or a warning, just return directly, even
167         if it's ASYNC.
168
169         * gst/base/gstbasetransform.c: Debug changes.
170
171         * gst/gstutils.h:
172         * gst/gstutils.c (gst_bin_watch_for_state_change): Add function to
173         ensure bins post state change messages. A bit of a hack but I can't
174         think of a way to avoid it.
175
176         * check/gst/gstbin.c (test_watch_for_state_change): Added test.
177
178 2005-08-16  Andy Wingo  <wingo@pobox.com>
179
180         * gst/base/gstadapter.h:
181         * gst/base/gstadapter.c (gst_adapter_take): New function, like
182         peek() but you own the data. Not terribly efficient atm.
183
184 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
185
186         * gst/gstutils.c: (gst_element_found_tags_for_pad), (push_and_ref),
187         (gst_element_found_tags):
188         * gst/gstutils.h:
189           Add two utility functions for tag handling.
190
191 2005-08-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
192
193         * docs/manual/advanced-dataaccess.xml:
194         * docs/manual/basics-helloworld.xml:
195           Fix docs to use _bin_add() before _link(), which fixes the examples
196           with recent core versions (reported by Madhan Raj M
197           <raj_madan@rediffmail.com>, #313199).
198
199 2005-08-16  Wim Taymans  <wim@fluendo.com>
200
201         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
202         Added subtract checks.
203
204         * docs/design/part-events.txt:
205         Some more docs about newsegment
206
207         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
208         Fix FIXME
209
210         * gst/gstcaps.c: (gst_caps_to_string):
211         Add comments, cleanups.
212         
213         * gst/gstelement.c: (gst_element_save_thyself):
214         cleanups
215         
216         * gst/gstvalue.c: (gst_value_collect_int_range),
217         (gst_string_unwrap), (gst_value_union_int_int_range),
218         (gst_value_union_int_range_int_range),
219         (gst_value_intersect_int_int_range),
220         (gst_value_intersect_int_range_int_range),
221         (gst_value_intersect_double_double_range),
222         (gst_value_intersect_double_range_double_range),
223         (gst_value_intersect_list), (gst_value_subtract_int_int_range),
224         (gst_value_subtract_int_range_int),
225         (gst_value_subtract_double_range_double),
226         (gst_value_subtract_double_range_double_range),
227         (gst_value_subtract_from_list), (gst_value_subtract_list),
228         (gst_value_can_compare), (gst_value_compare_fraction):
229         Cleanups, add comments, remove unneeded asserts.
230
231 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
232
233         * tools/gst-launch.c: (event_loop):
234           don't convert NULL structures to strings
235
236 2005-08-15  Stefan Kost  <ensonic@users.sf.net>
237
238         * docs/gst/gstreamer-sections.txt:
239           made some defines private
240         * docs/gst/tmpl/gstconfig.sgml:
241         * docs/gst/tmpl/gstqueue.sgml:
242         * docs/gst/tmpl/gsttaglist.sgml:
243         * docs/gst/tmpl/gsttypes.sgml:
244         * docs/gst/tmpl/gstutils.sgml:
245         * docs/pwg/appendix-porting.xml:
246         * gst/base/gstbasesink.h:
247         * gst/base/gstbasesrc.c:
248         * gst/base/gstbasesrc.h:
249         * gst/elements/gstfakesink.c: (gst_fake_sink_class_init):
250         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init):
251         * gst/gstelement.c: (gst_element_class_init):
252         * gst/gstpad.c: (gst_pad_class_init):
253         * gst/gstqueue.c: (gst_queue_class_init):
254         * gst/gstxml.c: (gst_xml_class_init):
255           documented all undocumented signal inline
256         * libs/gst/controller/gst-controller.h:
257           added padding
258
259 2005-08-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
260
261         * docs/pwg/appendix-porting.xml:
262           Document _set_link_function -> _set_setcaps_function.
263
264 2005-08-15  Thomas Vander Stichele  <thomas at apestaart dot org>
265
266         * check/Makefile.am:
267           add a .check target for running the check
268         * check/gst-libs/controller.c: (GST_START_TEST):
269           cosmetic fixups
270         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
271           complete checks for gstbuffer; would be nice if I could get the
272           gcov stuff to work so I can see if I actually completed gstbuffer.c
273         * check/gstcheck.h:
274           add ASSERT_BUFFER_REFCOUNT
275
276 2005-08-13  Tim-Philipp Müller  <tim at centricular dot net>
277
278         * docs/gst/gstreamer-sections.txt:
279         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
280         * gst/gsttag.h:
281           Add GST_TAG_LANGUAGE_CODE as we have in 0.8, and don't
282           spew out a warning if a tag that is already registered
283           is re-registered, unless it is re-registered with a 
284           different type (#308438).
285
286 2005-08-12  Tim-Philipp Müller  <tim at centricular dot net>
287
288         * docs/pwg/appendix-porting.xml:
289         * docs/pwg/building-state.xml:
290           Add some paragraphs about state changes in 0.9 to the PWG
291           and the porting guide, in particular about the new meaning
292           of GST_STATE_PAUSED and how to write state change functions
293           with concurrent access by multiple threads in mind.
294
295 2005-08-11  Stefan Kost  <ensonic@users.sf.net>
296
297         * docs/gst/gstreamer-docs.sgml:
298         * docs/libs/gstreamer-libs-docs.sgml:
299           added deprecation and since indexes
300         * libs/gst/controller/gst-controller.c:
301         * libs/gst/controller/gst-helper.c:
302           added since tags
303
304
305 2005-08-11  Wim Taymans  <wim@fluendo.com>
306
307         * gst/gstghostpad.c: (gst_proxy_pad_set_target_unlocked),
308         (gst_proxy_pad_set_target), (gst_proxy_pad_get_target),
309         (gst_proxy_pad_dispose), (gst_ghost_pad_do_activate_push),
310         (gst_ghost_pad_do_link), (gst_ghost_pad_set_internal),
311         (gst_ghost_pad_new_notarget), (gst_ghost_pad_get_target),
312         (gst_ghost_pad_set_target):
313         Actually implement (re)setting the target on a ghostpad
314         as described in the docs.
315
316 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
317
318         * gst/gst.c: (gst_init_check_with_popt_table), (init_pre):
319           Check whether GST_DEBUG_NO_COLOR environment variable is
320           set and disable coloured debug output if that is the case.
321
322 2005-08-10  Tim-Philipp Müller  <tim at centricular dot net>
323
324         * gst/base/gsttypefindhelper.c: (helper_find_peek),
325         (gst_type_find_helper):
326           The memory returned by gst_type_find_peek() needs to
327           stay valid until the end of a typefind function, and
328           typefind functions may keep results from different 
329           offsets around, so we can't just unref the buffer from
330           the previous _peek(), but have to save all buffers 
331           returned by _peek() until typefinding is done and only
332           free them then.
333
334 2005-08-09  Tim-Philipp Müller  <tim at centricular dot net>
335
336         * docs/gst/gstreamer-sections.txt:
337         * gst/gstutils.h:
338           New macros: GST_ROUND_UP_2() through GST_ROUND_UP_64().
339
340 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
341
342         * gst/base/gstbasetransform.c: (gst_base_transform_buffer_alloc):
343           Fix a pretty good memleak.
344
345 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
346
347         * gst/gstiterator.h:
348           Fix wrong include and 'make distcheck'.
349
350 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
351
352         * gst/gstbin.c: (bin_bus_handler):
353           Use gst_element_post_message() instead.
354
355 2005-08-08  Tim-Philipp Müller  <tim at centricular dot net>
356
357         * gst/base/gstadapter.h:
358         * gst/base/gstbasesink.h:
359         * gst/base/gstbasesrc.h:
360         * gst/base/gstbasetransform.h:
361         * gst/base/gstcollectpads.h:
362         * gst/base/gstpushsrc.h:
363         * gst/gstiterator.h:
364           Add padding to our base elements' class and instance structs and
365           to GstIterator (you will need to rebuild all plugins and apps!)
366
367 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
368
369         * gst/gstbin.c: (bin_bus_handler):
370           Make default message forwarding from child->bus to bin->bus
371           threadsafe and make it not emit warnings if the parent has no bus.
372
373 2005-08-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
374
375         * gst/gstelement.c: (activate_pads):
376           On paused->ready, set pad->caps to NULL, as is the documented
377           behaviour in this state change. Fixes playback of series of
378           media files when visualization is enabled in Totem.
379
380 2005-08-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
381
382         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
383           Allow NULL as filter-caps (which means "any").
384
385 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
386
387         * docs/libs/gstreamer-libs-sections.txt:
388         * libs/gst/controller/gst-controller.c:
389         * libs/gst/controller/gst-controller.h:
390         * libs/gst/controller/gst-helper.c:
391           adding more entries to the docs and fix small doc-bugs
392
393 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
394
395         * docs/gst/gstreamer-docs.sgml:
396         * docs/gst/gstreamer-sections.txt:
397         * docs/gst/gstreamer.types:
398         * docs/gst/tmpl/gstbasesink.sgml:
399         * docs/gst/tmpl/gstbasesrc.sgml:
400         * docs/gst/tmpl/gstbasetransform.sgml:
401         * docs/gst/tmpl/gstfakesrc.sgml:
402         * gst/base/gstcollectpads.c:
403         * gst/base/gstcollectpads.h:
404         * libs/gst/controller/gst-controller.c:
405         * libs/gst/controller/gst-controller.h:
406         * libs/gst/controller/gst-helper.c:
407         * libs/gst/controller/gst-interpolation.c:
408         * libs/gst/controller/lib.c:
409           added long/short desc for controller docs
410           added collectpads base class docs
411           added correct includes to base-class docs
412
413 2005-08-05  Stefan Kost  <ensonic@users.sf.net>
414
415         * check/gst-libs/controller.c: (gst_test_mono_source_get_property),
416         (gst_test_mono_source_set_property),
417         (gst_test_mono_source_class_init), (GST_START_TEST),
418         (gst_controller_suite):
419         * docs/gst/gstreamer-docs.sgml:
420         * docs/gst/gstreamer-sections.txt:
421         * docs/gst/gstreamer.types:
422         * docs/libs/gstreamer-libs-docs.sgml:
423         * docs/libs/gstreamer-libs-sections.txt:
424         * gst/base/gstadapter.c:
425         * libs/gst/controller/gst-controller.c:
426         (gst_controlled_property_new), (gst_controlled_property_free),
427         (gst_controller_new_valist),
428         (gst_controller_remove_properties_valist),
429         (gst_controller_sink_values), (_gst_controller_finalize):
430         * libs/gst/controller/gst-controller.h:
431         * libs/gst/controller/gst-helper.c:
432         (gst_object_control_properties), (gst_object_uncontrol_properties),
433         (gst_object_get_controller), (gst_object_set_controller),
434         (gst_object_sink_values), (gst_object_get_value_arrays),
435         (gst_object_get_value_array):
436           more tests (and fixes) for the controller
437           more docs for the controller
438           integrated companies docs for the adapter 
439
440 2005-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
441
442         * check/elements/gstfakesrc.c: (setup_fakesrc), (cleanup_fakesrc),
443         (GST_START_TEST), (fakesrc_suite):
444           add tests for sizetype
445
446 2005-08-04  Andy Wingo  <wingo@pobox.com>
447
448         * gst/elements/gstcapsfilter.c: Reimplement using basetransform,
449         fixes buffer_alloc proxying among other things.
450
451         * gst/base/gstbasetransform.c:
452         * gst/base/gstbasetransform.h:
453         Revert patch to gstbasetransform from 7-28 removing
454         delay_configure.
455
456         * gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
457         * gst/base/gstbasetransform.c (gst_base_transform_get_size):
458         Semantics changed, should return not the size of the output buffer
459         but the byte size of a buffer with a given caps.
460
461         * gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
462         debug object.
463         (gst_base_transform_configure_caps): Don't set out_size here: (in,
464         out) are not the pad caps until setcaps finishes.
465         (gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
466         not-in-place case as well. Deal with changing from in-place to
467         not-in-place within calling pad_alloc_buffer. Still a bit
468         concerned about the overhead here...
469
470 2005-08-03  Andy Wingo  <wingo@pobox.com>
471
472         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): Not
473         fixating is an error.
474
475 2005-08-04  Edward Hervey  <edward@fluendo.com>
476
477         * gst/base/gstadapter.h: 
478         Added gst_adapter_get_type() to the header
479
480 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
481
482         * check/Makefile.am:
483         * check/gst-libs/controller.c:
484         * libs/gst/controller/gst-controller.c:
485         (gst_controller_new_valist):
486           added check test suite for the controller
487         * gst/base/gstpushsrc.c:
488           fixed a doc typo
489
490 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
491
492         * docs/gst/Makefile.am:
493         * docs/gst/gstreamer-docs.sgml:
494         * docs/gst/gstreamer-sections.txt:
495         * docs/gst/gstreamer.types:
496         * docs/gst/tmpl/gstfakesrc.sgml:
497         * gst/base/README:
498         * gst/base/gstbasesink.c:
499         * gst/base/gstbasesink.h:
500         * gst/base/gstbasesrc.c:
501         * gst/base/gstbasesrc.h:
502         * gst/base/gstbasetransform.c:
503         * gst/base/gstpushsrc.c:
504         * gst/base/gstpushsrc.h:
505           add short/long description docs to base classes
506           add pushsrc to the docs
507           remove consolidated doc fragments
508
509 2005-08-03  Stefan Kost  <ensonic@users.sf.net>
510
511         * configure.ac:
512         * docs/libs/Makefile.am:
513         * docs/libs/gstreamer-libs-docs.sgml:
514         * docs/libs/gstreamer-libs-sections.txt:
515         * docs/libs/gstreamer-libs.types:
516         * examples/Makefile.am:
517         * examples/controller/.cvsignore:
518         * examples/controller/Makefile.am:
519         * examples/controller/audio-example.c: (main):
520         * libs/gst/Makefile.am:
521         * libs/gst/controller/.cvsignore:
522         * libs/gst/controller/Makefile.am:
523         * libs/gst/controller/gst-controller.c:
524         (on_object_controlled_property_changed), (gst_timed_value_compare),
525         (gst_timed_value_find),
526         (gst_controlled_property_set_interpolation_mode),
527         (gst_controlled_property_new), (gst_controlled_property_free),
528         (gst_controller_find_controlled_property),
529         (gst_controller_new_valist), (gst_controller_new),
530         (gst_controller_remove_properties_valist),
531         (gst_controller_remove_properties), (gst_controller_set),
532         (gst_controller_set_from_list), (gst_controller_unset),
533         (gst_controller_get), (gst_controller_get_all),
534         (gst_controller_sink_values), (gst_controller_get_value_arrays),
535         (gst_controller_get_value_array),
536         (gst_controller_set_interpolation_mode),
537         (_gst_controller_finalize), (_gst_controller_init),
538         (_gst_controller_class_init), (gst_controller_get_type):
539         * libs/gst/controller/gst-controller.h:
540         * libs/gst/controller/gst-helper.c: (g_object_control_properties),
541         (g_object_uncontrol_properties), (g_object_get_controller),
542         (g_object_set_controller), (g_object_sink_values),
543         (g_object_get_value_arrays), (g_object_get_value_array):
544         * libs/gst/controller/gst-interpolation.c:
545         (gst_controlled_property_find_timed_value_node),
546         (interpolate_none_get), (interpolate_trigger_get),
547         (interpolate_trigger_get_value_array):
548         * libs/gst/controller/lib.c: (gst_controller_init):
549         * pkgconfig/Makefile.am:
550         * pkgconfig/gstreamer-control-uninstalled.pc.in:
551         * pkgconfig/gstreamer-control.pc.in:
552         * testsuite/Makefile.am:
553         * testsuite/controller/.cvsignore:
554         * testsuite/controller/Makefile.am:
555         * testsuite/controller/interpolator.c: (main):
556           added controller code
557           removed dparam pc files
558
559 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
560         * gst/base/gstcollectpads.c: (gst_collectpads_finalize),
561         (gst_collectpads_stop):
562           Broadcast the condition when shutting down, to make sure we wake all
563           threads up. Shut down pads on finalize, for safety.
564
565 2005-08-01  Jan Schmidt  <thaytan@mad.scientist.com>
566         * gst/base/gstbasetransform.c: (gst_base_transform_init),
567         (gst_base_transform_handle_buffer),
568         (gst_base_transform_change_state):
569           Handle PAUSED->READY->PAUSED transition after negotiation
570           occurred already.
571         * gst/gstmessage.c: (gst_message_init):
572           Extra piece of debug for new messages.
573
574 2005-08-01  Stefan Kost  <ensonic@users.sf.net>
575
576         * configure.ac:
577         * docs/gst/tmpl/gstbasesrc.sgml:
578         * docs/gst/tmpl/gstelement.sgml:
579         * docs/gst/tmpl/gstevent.sgml:
580         * docs/gst/tmpl/gstfakesrc.sgml:
581         * docs/gst/tmpl/gstformat.sgml:
582         * docs/gst/tmpl/gstghostpad.sgml:
583         * docs/gst/tmpl/gstpad.sgml:
584         * docs/gst/tmpl/gstquery.sgml:
585         * docs/gst/tmpl/gststructure.sgml:
586         * docs/gst/tmpl/gsttaglist.sgml:
587         * docs/gst/tmpl/gstvalue.sgml:
588         * docs/libs/gstreamer-libs-docs.sgml:
589         * docs/libs/gstreamer-libs-sections.txt:
590         * docs/libs/gstreamer-libs.types:
591         * libs/gst/Makefile.am:
592         * libs/gst/control/.cvsignore:
593         * libs/gst/control/Makefile.am:
594         * libs/gst/control/control.c:
595         * libs/gst/control/control.h:
596         * libs/gst/control/dparam.c:
597         * libs/gst/control/dparam.h:
598         * libs/gst/control/dparam_smooth.c:
599         * libs/gst/control/dparam_smooth.h:
600         * libs/gst/control/dparamcommon.h:
601         * libs/gst/control/dparammanager.c:
602         * libs/gst/control/dparammanager.h:
603         * libs/gst/control/dplinearinterp.c:
604         * libs/gst/control/dplinearinterp.h:
605         * libs/gst/control/unitconvert.c:
606         * libs/gst/control/unitconvert.h:
607         * testsuite/Makefile.am:
608         * testsuite/dynparams/.cvsignore:
609         * testsuite/dynparams/Makefile.am:
610         * testsuite/dynparams/dparamstest.c:
611         * tools/Makefile.am:
612         * tools/gst-inspect.c: (print_element_info), (main):
613         * tools/gst-xmlinspect.c: (print_element_info), (main):
614           deactivate and remove dparams (libgstcontrol)
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), (gst_type_find_element_init),
620         (stop_typefinding), (gst_type_find_element_handle_event),
621         (gst_type_find_element_chain), (gst_type_find_element_getrange):
622         * gst/elements/gsttypefindelement.h:
623           Set caps on all outgoing buffers, not just the first one.
624
625 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
626
627         * gst/elements/gsttypefindelement.c:
628         (gst_type_find_element_have_type),
629         (gst_type_find_element_check_set_buffer_caps),
630         (gst_type_find_element_init), (stop_typefinding),
631         (gst_type_find_element_handle_event),
632         (gst_type_find_element_chain), (gst_type_find_element_getrange):
633         * gst/elements/gsttypefindelement.h:
634           Set caps on first outgoing buffer when we've found the type.
635
636 2005-08-01  Tim-Philipp Müller  <tim at centricular dot net>
637
638         * docs/gst/gstreamer-docs.sgml:
639         * docs/gst/gstreamer-sections.txt:
640         * docs/gst/tmpl/gstscheduler.sgml:
641         * docs/gst/tmpl/gstschedulerfactory.sgml:
642           Remove some old cruft from docs.
643
644 2005-07-31  Tim-Philipp Müller  <tim at centricular dot net>
645
646         * gst/gstpad.h:
647           Fix inline docs for GstPadLinkReturn.
648           
649         * gst/gststructure.c: (gst_structure_has_name):
650         * gst/gststructure.h:
651         * docs/gst/gstreamer-sections.txt:
652           New API: gst_structure_has_name().
653
654 2005-07-30  Tim-Philipp Müller  <tim at centricular dot net>
655
656         * configure.ac:
657           Use AC_SYS_LARGEFILE, which will set _FILE_OFFSET_BITS=64
658           and _LARGEFILE_SOURCE in config.h as required. Do not 
659           export those flags in our .pc files any longer (#142209).
660
661           Remove unused GST_DISABLE_OMEGA_COTHREADS stuff.
662
663         * gst/elements/gstfilesink.c: (gst_file_sink_class_init),
664         (gst_file_sink_do_seek), (gst_file_sink_event),
665         (gst_file_sink_get_current_offset), (gst_file_sink_render):
666           Redo seek/tell calls with large file support in mind; add some
667           debugging messages; add log message that tells us when large
668           file support is unavailable or not enabled for some reason.
669
670         * gst/elements/gstfilesrc.c: (gst_file_src_class_init):
671           Add log message that tells us when large file support 
672           is unavailable or not enabled for some reason.
673
674 2005-07-29  Wim Taymans  <wim@fluendo.com>
675
676         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
677         Added test for removing an element with ghostpad from a bin.
678         Fixed test as current implementation does the right thing.
679
680         * gst/gstghostpad.c: (gst_proxy_pad_class_init),
681         (gst_proxy_pad_do_query_type), (gst_proxy_pad_do_event),
682         (gst_proxy_pad_do_query), (gst_proxy_pad_do_internal_link),
683         (gst_proxy_pad_do_bufferalloc), (gst_proxy_pad_do_activate),
684         (gst_proxy_pad_do_activatepull), (gst_proxy_pad_do_activatepush),
685         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange),
686         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_getcaps),
687         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
688         (gst_proxy_pad_do_setcaps), (gst_proxy_pad_set_target),
689         (gst_proxy_pad_get_target), (gst_proxy_pad_init),
690         (gst_proxy_pad_dispose), (gst_proxy_pad_finalize),
691         (gst_ghost_pad_class_init), (gst_ghost_pad_do_activate_push),
692         (gst_ghost_pad_do_link), (gst_ghost_pad_do_unlink),
693         (gst_ghost_pad_set_internal), (gst_ghost_pad_dispose),
694         (gst_ghost_pad_new_notarget), (gst_ghost_pad_new),
695         (gst_ghost_pad_get_target), (gst_ghost_pad_set_target):
696         * gst/gstghostpad.h:
697         Clean up ghostpads, remove properties for internal stuff.
698         Make threadsafe.
699         Fix refcounting.
700         Prepare for switching targets, not all use cases work yet.
701
702 2005-07-29  Wim Taymans  <wim@fluendo.com>
703
704         * docs/design/part-gstghostpad.txt:
705         Small update.
706
707         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
708         (gst_bin_remove_func):
709         Unlinking pads while holding the bin LOCK is not a good
710         idea.
711
712         * gst/gstpad.c: (gst_pad_class_init),
713         (gst_pad_link_check_hierarchy), (gst_pad_get_caps_unlocked),
714         (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event):
715         No prob setting template after creating the pad.
716
717 2005-07-29  Jan Schmidt  <thaytan@mad.scientist.com>
718
719         * gst/gstbus.c: (gst_bus_set_flushing), (gst_bus_pop),
720         (gst_bus_peek), (gst_bus_source_dispatch),
721         (gst_bus_add_watch_full), (poll_handler), (poll_timeout),
722         (poll_destroy), (poll_destroy_timeout), (gst_bus_poll):
723           gst_bus_poll may be called from other threads. Handle
724           this nicely by not making poll_data disappear off the
725           stack once gst_bus_poll returns.
726           gst_bus_peek now increments the refcount on the returned
727           message.
728
729 2005-07-29  Wim Taymans  <wim@fluendo.com>
730
731         * docs/design/part-gstghostpad.txt:
732         Overview of current GhostPad datastructures and use
733         cases for changing the target.
734
735 2005-07-28  Wim Taymans  <wim@fluendo.com>
736
737         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
738         Added checks for hierarchy consistency whan adding linked
739         elements to bins.
740
741         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
742         Added check to test element scheduling without bin/pipeline.
743
744         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
745         First add elements to bin, then link.
746         
747         * gst/gstbin.c: (unlink_pads), (gst_bin_add_func),
748         (gst_bin_remove_func):
749         Unlink pads from elements added/removed from bin to maintain
750         hierarchy consistency.
751
752 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
753
754         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps),
755         (gst_base_transform_handle_buffer):
756         * gst/base/gstbasetransform.h:
757           Remove broken delay_configure (fixes renegotiation of software
758           scaling pipelines); remove some leftover printf()s.
759
760 2005-07-28  Wim Taymans  <wim@fluendo.com>
761
762         * check/gst/gstghostpad.c: (GST_START_TEST), (gst_ghost_pad_suite):
763         Added some more tests for wrong hierarchy
764
765         * docs/design/part-overview.txt:
766         Some updates.
767
768         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_dispose):
769         Cleanups.
770
771         * gst/gstelement.c: (gst_element_remove_pad), (gst_element_seek),
772         (gst_element_dispose):
773         Some more cleanups.
774
775         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
776         (gst_pad_link_check_hierarchy), (gst_pad_link_prepare),
777         (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
778         (gst_pad_set_caps), (gst_pad_send_event):
779         Check for correct hierarchy when linking pads. Moving to
780         strict requirement for ghostpads when linking elements in
781         different bins.
782
783         * gst/gstpad.h:
784         Clean ups. Added WRONG_HIERARCHY return value.
785
786 2005-07-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
787
788         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
789           Better debug if no transform is possible.
790
791 2005-07-27  Wim Taymans  <wim@fluendo.com>
792
793         * docs/random/wtay/network-transp:
794         Some old doc I had.
795
796 2005-07-27  Wim Taymans  <wim@fluendo.com>
797
798         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
799         (gst_dp_event_from_packet):
800         Fix serialization of seek events.
801
802 2005-07-27  Wim Taymans  <wim@fluendo.com>
803
804         * check/gst-libs/gdp.c: (GST_START_TEST):
805         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
806         Fix compilation and fix event serialization.
807
808 2005-07-27  Wim Taymans  <wim@fluendo.com>
809
810         * CHANGES-0.9:
811         * docs/design/part-TODO.txt:
812         * docs/design/part-events.txt:
813         Some docs updates
814
815         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
816         (gst_base_sink_event), (gst_base_sink_do_sync),
817         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
818         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
819         (gst_base_src_do_seek), (gst_base_src_event_handler),
820         (gst_base_src_loop):
821         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
822         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
823         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
824         (gst_base_transform_event), (gst_base_transform_handle_buffer),
825         (gst_base_transform_set_passthrough),
826         (gst_base_transform_is_passthrough):
827         * gst/elements/gstfakesink.c: (gst_fake_sink_event):
828         * gst/elements/gstfilesink.c: (gst_file_sink_event):
829         Event updates.
830
831         * gst/gstbuffer.h:
832         Use faster casts.
833
834         * gst/gstelement.c: (gst_element_seek):
835         * gst/gstelement.h:
836         Update gst_element_seek.
837
838         * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy),
839         (gst_event_new), (gst_event_new_custom), (gst_event_get_structure),
840         (gst_event_new_flush_start), (gst_event_new_flush_stop),
841         (gst_event_new_eos), (gst_event_new_newsegment),
842         (gst_event_parse_newsegment), (gst_event_new_tag),
843         (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos),
844         (gst_event_parse_qos), (gst_event_new_seek),
845         (gst_event_parse_seek), (gst_event_new_navigation):
846         * gst/gstevent.h:
847         Make GstEvent use GstStructure. Add parsing code, make sure the
848         API is sufficiently generic.
849         Mark possible directions of events and serialization.
850
851         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize),
852         (_gst_message_copy), (gst_message_new_segment_start),
853         (gst_message_new_segment_done), (gst_message_new_custom),
854         (gst_message_parse_segment_start),
855         (gst_message_parse_segment_done):
856         Small cleanups.
857
858         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
859         (gst_pad_set_caps), (gst_pad_send_event):
860         Update for new events. 
861         Catch events sent in wrong directions.
862
863         * gst/gstqueue.c: (gst_queue_link_src),
864         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
865         (gst_queue_handle_src_query):
866         Event updates.
867
868         * gst/gsttag.c:
869         * gst/gsttag.h:
870         Remove event code from this file.
871
872         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
873         (gst_dp_event_from_packet):
874         Event updates.
875
876 2005-07-27  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
877
878         * gst/base/gstbasetransform.c: (gst_base_transform_getcaps),
879         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
880         (gst_base_transform_get_size), (gst_base_transform_handle_buffer):
881           Make debugging actually useful.
882
883 2005-07-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
884
885         * gst/gstpad.c: (fixate_value), (gst_pad_default_fixate),
886         (gst_pad_fixate_caps):
887           Implement default fixation once again, so that gst_pad_fixate()
888           actually does anything at all. This probably needs to be some
889           sort of a last resort, and use profile-based fixation first, but
890           since that doesn't exist yet, this is the best we have. Fixes
891           visualization in Totem.
892
893 2005-07-22  Wim Taymans  <wim@fluendo.com>
894
895         * docs/design/part-events.txt:
896         Small update.
897
898         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
899         (gst_base_sink_do_sync), (gst_base_sink_activate_push),
900         (gst_base_sink_activate_pull):
901         Some more comments.
902
903         * gst/elements/gstfakesrc.c: (gst_fake_src_class_init),
904         (gst_fake_src_create):
905         Fix handoff marshall.
906
907         * gst/elements/gstidentity.c: (gst_identity_class_init),
908         (gst_identity_transform_ip):
909         We're a real inplace element.
910
911         * gst/gstbus.c: (gst_bus_post):
912         Added some comments.
913
914         * tests/lat.c: (fakesrc), (fakesink), (simple), (queue), (main):
915         * tests/muxing/case1.c: (main):
916         * tests/sched/dynamic-pipeline.c: (main):
917         * tests/sched/interrupt1.c: (main):
918         * tests/sched/interrupt2.c: (main):
919         * tests/sched/interrupt3.c: (main):
920         * tests/sched/runxml.c: (main):
921         * tests/sched/sched-stress.c: (main):
922         * tests/seeking/seeking1.c: (event_received), (main):
923         * tests/threadstate/threadstate2.c: (bus_handler), (timeout_func),
924         (main):
925         * tests/threadstate/threadstate3.c: (main):
926         * tests/threadstate/threadstate4.c: (main):
927         * tests/threadstate/threadstate5.c: (main):
928         Fix the tests.
929
930 2005-07-21  Wim Taymans  <wim@fluendo.com>
931
932         * docs/design/part-seeking.txt:
933         Some small additions.
934
935         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
936         (gst_base_sink_get_times), (gst_base_sink_do_sync),
937         (gst_base_sink_activate_push), (gst_base_sink_activate_pull):
938         * gst/base/gstbasesink.h:
939         discont values are gint64, handle the math correctly.
940
941         * gst/base/gstbasesrc.c: (gst_base_src_loop):
942         Make the basesrc report error if the source pad is not linked.
943
944         * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_chain),
945         (gst_queue_loop), (gst_queue_handle_src_query),
946         (gst_queue_src_activate_push):
947         Make queue collect data even if the srcpad is not linked.
948         Start pushing out data as soon as it is linked.
949
950         * gst/gstutils.c: (gst_element_unlink), (gst_flow_get_name):
951         * gst/gstutils.h:
952         Added gst_flow_get_name() to ease error reporting.
953
954 2005-07-20  Wim Taymans  <wim@fluendo.com>
955
956         * gst/gstmessage.c: (gst_message_new_segment_start),
957         (gst_message_new_segment_done), (gst_message_parse_segment_start),
958         (gst_message_parse_segment_done):
959         * gst/gstmessage.h:
960         Added a bunch of messages for advanced seeking.
961
962         * gst/parse/grammar.y:
963         * libs/gst/control/dparammanager.c: (gst_dpman_set_parent),
964         (gst_dpman_state_changed):
965         Fix some new-pad -> pad-added signals
966
967 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
968
969         * docs/manual/appendix-porting.xml:
970         * docs/pwg/appendix-porting.xml:
971           Document new-pad/state-change signal renames and the FixedList
972           type rename.
973
974 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
975
976         * docs/manual/advanced-autoplugging.xml:
977         * docs/manual/basics-helloworld.xml:
978         * docs/manual/basics-pads.xml:
979         * docs/random/ds/0.9-suggested-changes:
980         * gst/gstelement.c: (gst_element_class_init), (gst_element_seek):
981         * gst/gstelement.h:
982         * gst/gstevent.h:
983         * gst/gstformat.h:
984         * gst/gstquery.h:
985         * gst/gststructure.c: (gst_structure_value_get_generic_type),
986         (gst_structure_parse_array), (gst_structure_parse_value):
987         * gst/gstvalue.c: (gst_type_is_fixed),
988         (gst_value_list_prepend_value), (gst_value_list_append_value),
989         (gst_value_list_get_size), (gst_value_list_get_value),
990         (gst_value_transform_array_string), (gst_value_serialize_array),
991         (gst_value_deserialize_array), (gst_value_intersect_array),
992         (gst_value_is_fixed), (_gst_value_initialize):
993         * gst/gstvalue.h:
994           GstElement::new-pad -> pad-added, GstElement::state-change ->
995           state-changed, GstValueFixedList -> GstValueArray, add format and
996           flags as their own arguments in gst_element_seek() (should improve
997           "bindeability"), remove function generators since they don't work
998           under a whole bunch of compilers (they were deprecated already
999           anyway).
1000
1001 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1002
1003         * gst/gstinfo.c: (_gst_debug_nameof_funcptr),
1004         (_gst_debug_register_funcptr):
1005         * gst/gstinfo.h:
1006           Fix illegal cast on some platforms (#309253).
1007
1008 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1009
1010         * gst/gstmessage.c: (gst_message_new_custom):
1011         * gst/gstmessage.h:
1012           Add _new_custom, make _new_application a macro to _new_custom.
1013
1014 2005-07-20  Wim Taymans  <wim@fluendo.com>
1015
1016         * gst/base/gstbasesrc.c: (gst_base_src_init),
1017         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start):
1018         * gst/base/gstbasesrc.h:
1019         Add a gboolean to decide when to push out a discont.
1020
1021         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1022         (gst_queue_loop), (gst_queue_handle_src_query),
1023         (gst_queue_sink_activate_push), (gst_queue_src_activate_push),
1024         (gst_queue_set_property), (gst_queue_get_property):
1025         Some cleanups.
1026
1027         * tests/threadstate/threadstate1.c: (main):
1028         Make a thread test compile and run... very silly..
1029
1030
1031 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1032
1033         * docs/manual/appendix-porting.xml:
1034           Mention removal of libgstgconf-0.9.la and existence of gconf
1035           elements.
1036
1037 2005-07-20  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1038
1039         * docs/pwg/advanced-clock.xml:
1040         * docs/pwg/appendix-porting.xml:
1041         * docs/pwg/intro-preface.xml:
1042         * docs/pwg/other-base.xml:
1043         * docs/pwg/other-manager.xml:
1044         * docs/pwg/other-nton.xml:
1045         * docs/pwg/other-ntoone.xml:
1046         * docs/pwg/other-oneton.xml:
1047         * docs/pwg/pwg.xml:
1048           Document base classes, update sections of n-to-1 and 1-to-n (muxer,
1049           demuxer), remove n-to-n (was never written), fix some code examples
1050           and links and update the porting section to include all this.
1051
1052 2005-07-19  Wim Taymans  <wim@fluendo.com>
1053
1054         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_sink_event),
1055         (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_event),
1056         (gst_queue_handle_src_query), (gst_queue_sink_activate_push),
1057         (gst_queue_src_activate_push), (gst_queue_change_state),
1058         (gst_queue_get_property):
1059         * gst/gstqueue.h:
1060         Propagate GstFlowReturn more intelligently upstream and output
1061         an ERROR/EOS when streaming stopped due to fatal error.
1062
1063 2005-07-19  Wim Taymans  <wim@fluendo.com>
1064
1065         * tools/gst-launch.c: (check_intr), (event_loop), (main):
1066         Don't block forever for the state change to complete, the
1067         pipeline already did with a sensible timeout.
1068
1069 2005-07-19  Wim Taymans  <wim@fluendo.com>
1070
1071         * gst/base/gstbasesrc.c: (gst_base_src_get_range):
1072         Make sure we never call the create function is we
1073         got deactivated.
1074
1075 2005-07-19  Andy Wingo  <wingo@pobox.com>
1076
1077         * gst/parse/parse.l: Attempt to solve bug #172815.
1078
1079 2005-07-19  Wim Taymans  <wim@fluendo.com>
1080
1081         * docs/design/part-clocks.txt:
1082         * docs/design/part-events.txt:
1083         * gst/base/gstbasesrc.c: (gst_base_src_do_seek):
1084         Small docs updates.
1085         Only update the seeking values when we are not
1086         busy streaming.
1087
1088 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1089
1090         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1091           Oops, ignore the result of gst_pad_push_event here.
1092
1093 2005-07-19  Jan Schmidt  <thaytan@mad.scientist.com>
1094
1095         * gst/base/gstbasesrc.c: (gst_base_src_loop),
1096         (gst_base_src_activate_push):
1097           Send discont event from the loop function, as pads
1098           aren't activated yet in the activate_push handler.
1099
1100         * gst/gstbin.c: (bin_bus_handler):
1101           Don't leak element name.
1102
1103 2005-07-18  Andy Wingo  <wingo@pobox.com>
1104
1105         * configure.ac: Use AS_LIBTOOL_TAGS.
1106
1107 2005-07-18  Wim Taymans  <wim@fluendo.com>
1108
1109         * docs/gst/gstreamer.types:
1110         Remove deleted types.
1111
1112 2005-07-18  Wim Taymans  <wim@fluendo.com>
1113
1114         * check/elements/gstfakesrc.c: (GST_START_TEST):
1115         * configure.ac:
1116         * gst/Makefile.am:
1117         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
1118         (init_popt_callback):
1119         * gst/gst.h:
1120         * gst/gst_private.h:
1121         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_add_func),
1122         (gst_bin_remove_func), (gst_bin_get_state), (gst_bin_change_state):
1123         * gst/gstbin.h:
1124         * gst/gstbus.h:
1125         * gst/gstconfig.h.in:
1126         * gst/gstelement.c: (gst_element_class_init),
1127         (gst_element_set_base_time), (gst_element_get_base_time),
1128         (iterator_fold_with_resync), (gst_element_change_state),
1129         (gst_element_dispose), (gst_element_get_bus):
1130         * gst/gstelement.h:
1131         * gst/gstelementfactory.h:
1132         * gst/gsterror.c: (_gst_core_errors_init):
1133         * gst/gsterror.h:
1134         * gst/gstevent.h:
1135         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1136         * gst/gstindex.c:
1137         * gst/gstinfo.c: (_gst_debug_init):
1138         * gst/gstmessage.c: (_gst_message_copy):
1139         * gst/gstmessage.h:
1140         * gst/gstminiobject.h:
1141         * gst/gstobject.c:
1142         * gst/gstobject.h:
1143         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1144         (gst_pad_set_caps), (gst_pad_start_task), (gst_pad_stop_task):
1145         * gst/gstpad.h:
1146         * gst/gstparse.h:
1147         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1148         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1149         (gst_pipeline_get_last_stream_time):
1150         * gst/gstpipeline.h:
1151         * gst/gstpluginfeature.h:
1152         * gst/gstquery.h:
1153         * gst/gstscheduler.c:
1154         * gst/gstscheduler.h:
1155         * gst/gststructure.h:
1156         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1157         (gst_task_finalize), (gst_task_func), (gst_task_create),
1158         (gst_task_set_lock), (gst_task_get_state), (gst_task_start),
1159         (gst_task_stop), (gst_task_pause):
1160         * gst/gsttask.h:
1161         * gst/gsttypefind.h:
1162         * gst/gsttypes.h:
1163         * gst/registries/gstlibxmlregistry.c: (load_feature),
1164         (gst_xml_registry_load), (gst_xml_registry_save_feature):
1165         * gst/registries/gstxmlregistry.c:
1166         (gst_xml_registry_start_element), (gst_xml_registry_save_feature):
1167         * gst/schedulers/threadscheduler.c:
1168         * libs/gst/control/dparammanager.h:
1169         * tools/gst-inspect.c: (print_element_list),
1170         (print_plugin_features), (print_element_features):
1171         * tools/gst-xmlinspect.c: (print_element_list),
1172         (print_plugin_info), (main):
1173         Removed plugable schedulers.
1174         Removed Scheduler/Manager from elements.
1175         Removed gsttypes.h, rearranged includes.
1176         Removed dependency pad<->element, element<>pipeline, and
1177         various others,  fix includes.
1178         implement gst_pad_get_parent() with gst_object_get_parent()
1179         Make GstTask sefcontained.
1180         Fix _get_state() on GstBin, it did not return ASYNC with a 0
1181         timeout.
1182         Fix endless loop in iterator_fold_with_resync.
1183
1184
1185 2005-07-18  Wim Taymans  <wim@fluendo.com>
1186
1187         * gst/Makefile.am:
1188         * gst/gstarch.h:
1189         Remove old file.
1190
1191 2005-07-18  Wim Taymans  <wim@fluendo.com>
1192
1193         * gst/Makefile.am:
1194         No more cothreads.h
1195
1196 2005-07-18  Wim Taymans  <wim@fluendo.com>
1197
1198         * gst/cothreads.c:
1199         * gst/cothreads.h:
1200         Let's remove these.
1201
1202 2005-07-18  Wim Taymans  <wim@fluendo.com>
1203
1204         * docs/design/part-dynamic.txt:
1205         * docs/design/part-events.txt:
1206         * docs/design/part-seeking.txt:
1207         Some more docs in the works.
1208
1209         * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps),
1210         (gst_base_transform_getcaps), (gst_base_transform_configure_caps),
1211         (gst_base_transform_setcaps), (gst_base_transform_get_size),
1212         (gst_base_transform_buffer_alloc), (gst_base_transform_event),
1213         (gst_base_transform_handle_buffer),
1214         (gst_base_transform_sink_activate_push),
1215         (gst_base_transform_src_activate_pull),
1216         (gst_base_transform_set_passthrough),
1217         (gst_base_transform_is_passthrough):
1218         Refcounting fixes.
1219
1220         * gst/gstbus.c: (gst_bus_source_dispatch), (gst_bus_poll):
1221         Cleanups.
1222
1223         * gst/gstevent.c: (gst_event_finalize):
1224         Set SRC to NULL.
1225
1226         * gst/gstutils.c: (gst_element_unlink),
1227         (gst_pad_get_parent_element), (gst_pad_proxy_getcaps),
1228         (gst_pad_proxy_setcaps):
1229         * gst/gstutils.h:
1230         Add _get_parent_element() to get a pads parent as an element.
1231
1232 2005-07-18  Wim Taymans  <wim@fluendo.com>
1233
1234         * check/gst/gstbin.c: (GST_START_TEST):
1235         Remove bogus test.
1236
1237 2005-07-18  Wim Taymans  <wim@fluendo.com>
1238
1239         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1240         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1241         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
1242         (gst_base_sink_event), (gst_base_sink_do_sync),
1243         (gst_base_sink_chain), (gst_base_sink_loop),
1244         (gst_base_sink_deactivate), (gst_base_sink_activate_push),
1245         (gst_base_sink_activate_pull), (gst_base_sink_change_state):
1246         Refcounting fixes.
1247         Fix logic for returning ASYNC when not prerolled.
1248
1249 2005-07-18  Wim Taymans  <wim@fluendo.com>
1250
1251         * gst/gstqueue.c: (gst_queue_handle_sink_event):
1252         Fix nasty refcount bug.
1253
1254 2005-07-16 Philippe Khalaf <burger@speedy.org>
1255         * gst/elements/gstfdsrc.c:
1256         * gst/elements/gstfdsrc.h:
1257         * gst/elements/gstelements.c:
1258         * gst/elements/Makefile.am:
1259         Ported fdsrc to 0.9.
1260
1261 2005-07-16  Wim Taymans  <wim@fluendo.com>
1262
1263         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1264         (gst_base_sink_do_sync):
1265         Fix compile error.
1266
1267 2005-07-16  Wim Taymans  <wim@fluendo.com>
1268
1269         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
1270         (gst_base_sink_event), (gst_base_sink_get_times),
1271         (gst_base_sink_do_sync), (gst_base_sink_change_state):
1272         * gst/base/gstbasesink.h:
1273         Store and use discont values when syncing buffers as described
1274         in design docs.
1275         
1276         * gst/base/gstbasesrc.c: (gst_base_src_send_discont),
1277         (gst_base_src_do_seek), (gst_base_src_loop), (gst_base_src_start),
1278         (gst_base_src_activate_push):
1279         Push discont event when starting.
1280
1281         * gst/elements/gstidentity.c: (gst_identity_transform):
1282         Small cleanups.
1283
1284         * gst/gstbin.c: (gst_bin_change_state):
1285         Small cleanups in base_time  distribution.
1286
1287         * gst/gstelement.c: (gst_element_set_base_time),
1288         (gst_element_get_base_time), (gst_element_change_state):
1289         * gst/gstelement.h:
1290         Added methods for the base_time of the element.
1291         Some MT fixes.
1292
1293         * gst/gstpipeline.c: (gst_pipeline_send_event),
1294         (gst_pipeline_change_state), (gst_pipeline_set_new_stream_time),
1295         (gst_pipeline_get_last_stream_time):
1296         * gst/gstpipeline.h:
1297         MT fixes.
1298         Handle seeking as described in design doc, remove stream_time
1299         hack.
1300         Cleanups clock and stream_time selection code. Added accessors
1301         for the stream_time.
1302         
1303
1304 2005-07-16  Andy Wingo  <wingo@pobox.com>
1305
1306         * gst/gsterror.c (_gst_core_errors_init): Use the magic word
1307         (#305291).
1308
1309 2005-07-16  Wim Taymans  <wim@fluendo.com>
1310
1311         * check/gst/gstbin.c: (GST_START_TEST):
1312         Make elements silent as the deep_notify refs the
1313         parent, which might make the test fail.
1314
1315         * gst/gstghostpad.c: (gst_ghost_pad_do_activate_push):
1316         Don't hold the lock for too long.
1317
1318 2005-07-16  Tim-Philipp Müller  <tim at centricular dot net>
1319
1320         * gst/base/gstbasesrc.c: (gst_base_src_default_negotiate):
1321           Don't unref the caps we passed to gst_caps_make_writable() after
1322           passing them. gst_caps_make_writable() will do that for us.
1323
1324 2005-07-15  Andy Wingo  <wingo@pobox.com>
1325
1326         * gst/gstcaps.h (gst_caps_is_simple): Removed deprecated macro
1327         (#157311).
1328
1329         * gst/elements/gstidentity.c (marshal_VOID__MINIOBJECT): Write our
1330         own marshalling function for the handoff signal. Properly type the
1331         buffer as a buffer. Fixes some warnings. Should do a more general
1332         solution.
1333         (gst_identity_class_init): Plug into the right marshaller.
1334
1335 2005-07-15  Wim Taymans  <wim@fluendo.com>
1336
1337         * docs/design/part-TODO.txt:
1338         * docs/design/part-clocks.txt:
1339         * docs/design/part-element-sink.txt:
1340         * docs/design/part-events.txt:
1341         * docs/design/part-gstpipeline.txt:
1342         Updated docs, mostly DISCONT related.
1343
1344 2005-07-15  Tim-Philipp Müller  <tim at centricular dot net>
1345
1346         * docs/pwg/building-pads.xml:
1347           s/GST_PAD_LINK_REFUSED/FALSE/ in gst_my_filter_setcaps()
1348
1349 2005-07-15  Andy Wingo  <wingo@pobox.com>
1350
1351         * tools/gst-typefind.c: Update, add copyright block.
1352
1353         * gst/base/gstbasesrc.c (gst_base_src_default_negotiate):
1354         Normalize and truncate caps before fixation.
1355
1356         * gst/gstcaps.h:
1357         * gst/gstcaps.c (gst_caps_truncate): New function, destructively
1358         discards all but the first structure from its argument.
1359
1360 2005-07-15  Wim Taymans  <wim@fluendo.com>
1361
1362         * gst/base/gstbasetransform.c: (gst_base_transform_init),
1363         (gst_base_transform_transform_caps), (gst_base_transform_getcaps),
1364         (gst_base_transform_configure_caps), (gst_base_transform_setcaps),
1365         (gst_base_transform_get_size), (gst_base_transform_buffer_alloc),
1366         (gst_base_transform_handle_buffer), (gst_base_transform_getrange),
1367         (gst_base_transform_chain), (gst_base_transform_change_state),
1368         (gst_base_transform_set_passthrough),
1369         (gst_base_transform_is_passthrough):
1370         * gst/base/gstbasetransform.h:
1371         Make passthrough work using the bufferpools.
1372         Changed API a bit, subclasses have to write into a buffer
1373         provided by the base class.
1374         More debug info in nego functions.
1375         
1376         * gst/elements/gstidentity.c: (gst_identity_init),
1377         (gst_identity_transform):
1378         Port to new base class.
1379
1380 2005-07-15  Wim Taymans  <wim@fluendo.com>
1381
1382         * gst/gstmessage.c: (gst_message_new_state_changed):
1383         * tools/gst-launch.c: (event_loop), (main):
1384         Totally dump messages in -launch with the -m option.
1385         Fix message name for State messages,
1386
1387 2005-07-14  Wim Taymans  <wim@fluendo.com>
1388
1389         * gst/base/gstbasesrc.c: (gst_base_src_loop):
1390         Post error messages on errors.
1391
1392 2005-07-14  Wim Taymans  <wim@fluendo.com>
1393
1394         * gst/gstcaps.c: (gst_caps_do_simplify):
1395         Remove debug info.
1396
1397         * gst/gsterror.h:
1398         Define error for stream stopped.
1399
1400         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
1401         (gst_proxy_pad_do_chain), (gst_proxy_pad_do_getrange):
1402         Do proper return values.
1403
1404         * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps),
1405         (gst_pad_set_caps), (gst_pad_chain), (gst_pad_push),
1406         (gst_pad_get_range):
1407         Better return values.
1408
1409         * gst/gstpad.h:
1410         Reorganise return values, add macro to check for fatal errors.
1411
1412         * gst/gstqueue.c: (gst_queue_chain):
1413         Return proper GstFlowReturn values,
1414
1415 2005-07-14  Thomas Vander Stichele  <thomas at apestaart dot org>
1416
1417         * docs/gst/gstreamer-sections.txt:
1418         * docs/gst/gstreamer.types:
1419         * docs/gst/tmpl/gst.sgml:
1420         * docs/gst/tmpl/gstbasesink.sgml:
1421         * docs/gst/tmpl/gstbasesrc.sgml:
1422         * docs/gst/tmpl/gstbasetransform.sgml:
1423         * docs/gst/tmpl/gstbin.sgml:
1424         * docs/gst/tmpl/gstbuffer.sgml:
1425         * docs/gst/tmpl/gstcaps.sgml:
1426         * docs/gst/tmpl/gstclock.sgml:
1427         * docs/gst/tmpl/gstcompat.sgml:
1428         * docs/gst/tmpl/gstconfig.sgml:
1429         * docs/gst/tmpl/gstelement.sgml:
1430         * docs/gst/tmpl/gstelementdetails.sgml:
1431         * docs/gst/tmpl/gstelementfactory.sgml:
1432         * docs/gst/tmpl/gstenumtypes.sgml:
1433         * docs/gst/tmpl/gsterror.sgml:
1434         * docs/gst/tmpl/gstevent.sgml:
1435         * docs/gst/tmpl/gstfakesink.sgml:
1436         * docs/gst/tmpl/gstfakesrc.sgml:
1437         * docs/gst/tmpl/gstfilesink.sgml:
1438         * docs/gst/tmpl/gstfilesrc.sgml:
1439         * docs/gst/tmpl/gstfilter.sgml:
1440         * docs/gst/tmpl/gstformat.sgml:
1441         * docs/gst/tmpl/gstghostpad.sgml:
1442         * docs/gst/tmpl/gstimplementsinterface.sgml:
1443         * docs/gst/tmpl/gstindex.sgml:
1444         * docs/gst/tmpl/gstindexfactory.sgml:
1445         * docs/gst/tmpl/gstinfo.sgml:
1446         * docs/gst/tmpl/gstiterator.sgml:
1447         * docs/gst/tmpl/gstmacros.sgml:
1448         * docs/gst/tmpl/gstmemchunk.sgml:
1449         * docs/gst/tmpl/gstminiobject.sgml:
1450         * docs/gst/tmpl/gstobject.sgml:
1451         * docs/gst/tmpl/gstpad.sgml:
1452         * docs/gst/tmpl/gstpadtemplate.sgml:
1453         * docs/gst/tmpl/gstparse.sgml:
1454         * docs/gst/tmpl/gstpipeline.sgml:
1455         * docs/gst/tmpl/gstplugin.sgml:
1456         * docs/gst/tmpl/gstpluginfeature.sgml:
1457         * docs/gst/tmpl/gstquery.sgml:
1458         * docs/gst/tmpl/gstqueue.sgml:
1459         * docs/gst/tmpl/gstregistry.sgml:
1460         * docs/gst/tmpl/gstregistrypool.sgml:
1461         * docs/gst/tmpl/gstscheduler.sgml:
1462         * docs/gst/tmpl/gstschedulerfactory.sgml:
1463         * docs/gst/tmpl/gststructure.sgml:
1464         * docs/gst/tmpl/gstsystemclock.sgml:
1465         * docs/gst/tmpl/gsttaglist.sgml:
1466         * docs/gst/tmpl/gsttagsetter.sgml:
1467         * docs/gst/tmpl/gsttrace.sgml:
1468         * docs/gst/tmpl/gsttrashstack.sgml:
1469         * docs/gst/tmpl/gsttypefind.sgml:
1470         * docs/gst/tmpl/gsttypefindfactory.sgml:
1471         * docs/gst/tmpl/gsttypes.sgml:
1472         * docs/gst/tmpl/gsturihandler.sgml:
1473         * docs/gst/tmpl/gsturitype.sgml:
1474         * docs/gst/tmpl/gstutils.sgml:
1475         * docs/gst/tmpl/gstvalue.sgml:
1476         * docs/gst/tmpl/gstversion.sgml:
1477         * docs/gst/tmpl/gstxml.sgml:
1478         * docs/libs/tmpl/gstcontrol.sgml:
1479         * docs/libs/tmpl/gstdataprotocol.sgml:
1480         * docs/libs/tmpl/gstdparam.sgml:
1481         * docs/libs/tmpl/gstdplinint.sgml:
1482         * docs/libs/tmpl/gstdpman.sgml:
1483         * docs/libs/tmpl/gstdpsmooth.sgml:
1484         * docs/libs/tmpl/gstgetbits.sgml:
1485         * docs/libs/tmpl/gstunitconvert.sgml:
1486         * gst/base/gstpushsrc.c: (gst_push_src_get_type),
1487         (gst_push_src_base_init), (gst_push_src_class_init),
1488         (gst_push_src_init), (gst_push_src_create):
1489         * gst/base/gstpushsrc.h:
1490         * gst/elements/gstelements.c:
1491         * gst/elements/gstfakesink.c: (gst_fake_sink_state_error_get_type),
1492         (gst_fake_sink_base_init), (gst_fake_sink_class_init),
1493         (gst_fake_sink_init), (gst_fake_sink_set_property),
1494         (gst_fake_sink_get_property), (gst_fake_sink_get_times),
1495         (gst_fake_sink_event), (gst_fake_sink_preroll),
1496         (gst_fake_sink_render), (gst_fake_sink_change_state):
1497         * gst/elements/gstfakesink.h:
1498         * gst/elements/gstfakesrc.c: (gst_fake_src_data_get_type),
1499         (gst_fake_src_sizetype_get_type), (gst_fake_src_filltype_get_type),
1500         (gst_fake_src_base_init), (gst_fake_src_class_init),
1501         (gst_fake_src_init), (gst_fake_src_event_handler),
1502         (gst_fake_src_alloc_parent), (gst_fake_src_set_property),
1503         (gst_fake_src_get_property), (gst_fake_src_prepare_buffer),
1504         (gst_fake_src_alloc_buffer), (gst_fake_src_get_size),
1505         (gst_fake_src_create_buffer), (gst_fake_src_create),
1506         (gst_fake_src_start), (gst_fake_src_stop):
1507         * gst/elements/gstfakesrc.h:
1508         * gst/elements/gstfilesink.c: (_do_init),
1509         (gst_file_sink_base_init), (gst_file_sink_class_init),
1510         (gst_file_sink_init), (gst_file_sink_dispose),
1511         (gst_file_sink_set_location), (gst_file_sink_set_property),
1512         (gst_file_sink_get_property), (gst_file_sink_open_file),
1513         (gst_file_sink_close_file), (gst_file_sink_query),
1514         (gst_file_sink_event), (gst_file_sink_render),
1515         (gst_file_sink_change_state), (gst_file_sink_uri_get_type),
1516         (gst_file_sink_uri_get_protocols), (gst_file_sink_uri_get_uri),
1517         (gst_file_sink_uri_set_uri), (gst_file_sink_uri_handler_init):
1518         * gst/elements/gstfilesink.h:
1519         * gst/elements/gstfilesrc.c: (_do_init), (gst_file_src_base_init),
1520         (gst_file_src_class_init), (gst_file_src_init),
1521         (gst_file_src_finalize), (gst_file_src_set_location),
1522         (gst_file_src_set_property), (gst_file_src_get_property),
1523         (gst_file_src_map_region), (gst_file_src_map_small_region),
1524         (gst_file_src_create_mmap), (gst_file_src_create_read),
1525         (gst_file_src_create), (gst_file_src_is_seekable),
1526         (gst_file_src_get_size), (gst_file_src_start), (gst_file_src_stop),
1527         (gst_file_src_uri_get_type), (gst_file_src_uri_get_protocols),
1528         (gst_file_src_uri_get_uri), (gst_file_src_uri_set_uri),
1529         (gst_file_src_uri_handler_init):
1530         * gst/elements/gstfilesrc.h:
1531           more autistic cleanliness in functions/names/defines
1532
1533 2005-07-13  Andy Wingo  <wingo@pobox.com>
1534
1535         * gst/base/gstbasesrc.c (gst_base_src_start): Post an error if the
1536         source couldn't negotiate.
1537
1538         * gst/parse/grammar.y: Revert 1.54->1.55, so we now do filtered
1539         connections again.
1540
1541         * gst/gstutils.h:
1542         * gst/gstutils.c (gst_element_link_pads_filtered): New old
1543         function. I am channeling Hades. Put your boots on suckers!!!
1544
1545 2005-07-13  Thomas Vander Stichele  <thomas at apestaart dot org>
1546
1547         * testsuite/caps/Makefile.am:
1548         * testsuite/caps/value_compare.c:
1549         * testsuite/caps/value_intersect.c:
1550         * check/gst/gstvalue.c: (GST_START_TEST), (gst_value_suite):
1551           move two testsuite apps over to the check dir
1552
1553 2005-07-12  Wim Taymans  <wim@fluendo.com>
1554
1555         * gst/base/gstbasetransform.c: (gst_base_transform_setcaps):
1556         Added more debug info in the negotiate process.
1557
1558         * gst/gstmessage.h:
1559         Prepare for segment playback.
1560
1561         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps):
1562         Better debugging.
1563
1564         * gst/gstutils.c:
1565         Some more docs.
1566
1567         * tools/gst-launch.c: (main):
1568         NULL pipeline on errors.
1569
1570 2005-07-12  Andy Wingo  <wingo@pobox.com>
1571
1572         * gst/gstbuffer.c (_gst_buffer_copy): Copy the buffer whether or
1573         not it comes from a malloc region. Make sure our copy gets freed.
1574
1575 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1576
1577         * check/gst/gstelement.c: (GST_START_TEST), (gst_element_suite):
1578         * check/gst/gstmessage.c: (GST_START_TEST):
1579         * check/gst/gststructure.c: (GST_START_TEST),
1580         (gst_structure_suite), (main):
1581           more testing
1582         * gst/gstelement.c: (gst_element_message_full):
1583           clean up GError and debug string now that they get copied
1584         * gst/gstmessage.c: (gst_message_new_error),
1585         (gst_message_new_warning), (gst_message_parse_error),
1586         (gst_message_parse_warning):
1587           use GST_TYPE_G_ERROR for structure_new, and take copies of
1588           arguments, so that we don't mess up refcounting
1589
1590 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1591
1592         * check/Makefile.am:
1593           add per-test valgrind targets
1594         * check/gst-libs/gdp.c: (GST_START_TEST),
1595         (gst_data_protocol_suite), (main):
1596           clean up
1597
1598 2005-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
1599
1600         * check/Makefile.am:
1601           instate more valgrindable tests
1602         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1603         (GST_START_TEST), (fakesrc_suite):
1604         * check/gst/gstpad.c: (GST_START_TEST):
1605         * check/gst/gststructure.c: (GST_START_TEST):
1606           fix test leaks
1607         * docs/gst/tmpl/gstminiobject.sgml:
1608         * gst/gstpad.c: (gst_pad_finalize):
1609           fix the static mutex leak
1610
1611 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1612
1613         * check/Makefile.am:
1614           add two more tests for valgrinding
1615         * check/gst/gstvalue.c: (GST_START_TEST):
1616           test refcount of deserialized buffer, found a leak
1617         * docs/gst/gstreamer-docs.sgml:
1618         * docs/gst/gstreamer-sections.txt:
1619         * docs/gst/gstreamer.types:
1620         * docs/gst/tmpl/gstminiobject.sgml:
1621           add miniobject to docs
1622         * gst/gstminiobject.c:
1623           add some docs
1624         * gst/gstvalue.c: (gst_value_deserialize_buffer),
1625         (gst_string_unwrap):
1626           fix a hard-to-find invalid write for one of the tests
1627           fix a leak for deserialized buffers
1628
1629 2005-07-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1630
1631         * docs/pwg/advanced-events.xml:
1632         * docs/pwg/advanced-request.xml:
1633         * docs/pwg/advanced-scheduling.xml:
1634         * docs/pwg/appendix-porting.xml:
1635         * docs/pwg/building-boiler.xml:
1636         * docs/pwg/intro-preface.xml:
1637         * docs/pwg/other-ntoone.xml:
1638           Rewrite scheduling-chapter for scheduling model in 0.9. Add lots
1639           of example code and explanation for pad activation, loop() and
1640           getrange() functions and a bit more. Remove old comments pointing
1641           to loop-functions.
1642         * examples/pwg/Makefile.am:
1643           Add loop/getrange examples.
1644
1645 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1646
1647         * configure.ac:
1648           check for valgrind binary + some fixes
1649         * check/gst.supp:
1650           valgrind suppressions for the tests
1651         * check/Makefile.am:
1652           add a valgrind: target that valgrinds the unit tests
1653         * check/gst/gst.c: (GST_START_TEST), (gst_suite):
1654         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST):
1655         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1656         * check/gst/gstghostpad.c:
1657           added some cleanup
1658         * check/gst/gstdata.c:
1659           removed
1660         * check/gst/gstminiobject.c: (GST_START_TEST), (thread_ref),
1661         (thread_unref), (gst_mini_object_suite), (main):
1662           added
1663         * gst/gst.c: (gst_deinit):
1664         * gst/gst.h:
1665           add a method to clean up.
1666         * gst/gstsystemclock.c: (gst_system_clock_dispose),
1667         (gst_system_clock_obtain):
1668           allow for disposing the system clock.
1669         * tools/gst-launch.c: (main):
1670           deinit
1671
1672 2005-07-11  Thomas Vander Stichele  <thomas at apestaart dot org>
1673
1674         * docs/gst/tmpl/gstbasesrc.sgml:
1675         * docs/gst/tmpl/gstfakesrc.sgml:
1676         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1677         (gst_base_src_init), (gst_base_src_set_property),
1678         (gst_base_src_get_property), (gst_base_src_get_range),
1679         (gst_base_src_start):
1680         * gst/base/gstbasesrc.h:
1681           add num-buffers property
1682         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1683         (gst_fakesrc_init), (gst_fakesrc_set_property),
1684         (gst_fakesrc_get_property), (gst_fakesrc_create),
1685         (gst_fakesrc_start):
1686           remove num-buffers property
1687
1688 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1689
1690         * docs/gst/gstreamer-sections.txt:
1691         * docs/gst/tmpl/gstbasesink.sgml:
1692         * docs/gst/tmpl/gstbasesrc.sgml:
1693         * gst/base/gstbasesink.c: (gst_base_sink_pad_getcaps),
1694         (gst_base_sink_pad_setcaps), (gst_base_sink_pad_buffer_alloc),
1695         (gst_base_sink_finalize), (gst_base_sink_set_clock),
1696         (gst_base_sink_set_property), (gst_base_sink_get_property),
1697         (gst_base_sink_handle_object), (gst_base_sink_event),
1698         (gst_base_sink_do_sync), (gst_base_sink_handle_event),
1699         (gst_base_sink_handle_buffer), (gst_base_sink_chain),
1700         (gst_base_sink_loop), (gst_base_sink_deactivate),
1701         (gst_base_sink_activate_push), (gst_base_sink_activate_pull),
1702         (gst_base_sink_change_state):
1703         * gst/base/gstbasesink.h:
1704         * gst/base/gstbasesrc.h:
1705         * gst/elements/gstfakesink.c: (gst_fakesink_get_times):
1706         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1707         (gst_filesink_init):
1708           more macro splitting
1709
1710 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1711
1712         * gst/gstelement.c: (gst_element_get_bus):
1713           add debug
1714         * tools/gst-launch.c: (check_intr), (event_loop):
1715           fix bus leaks
1716
1717 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1718
1719         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked):
1720           fix a caps leak
1721
1722 2005-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
1723
1724         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1725         (gst_base_src_finalize):
1726           add finalize method and clean up properly
1727         * gst/gstpipeline.c: (gst_pipeline_dispose):
1728           add debug
1729
1730 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1731
1732         * check/gst/gstbin.c: (pop_messages), (GST_START_TEST),
1733         (gst_bin_suite):
1734           add more things to check
1735         * gst/gstbin.c: (gst_bin_change_state), (bin_bus_handler):
1736         * gst/gstelement.c:
1737           more debug
1738
1739 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1740
1741         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1742         (GST_START_TEST), (fakesrc_suite):
1743         * check/gst-libs/gdp.c: (GST_START_TEST):
1744         * check/gst/gst.c: (GST_START_TEST):
1745         * check/gst/gstbin.c: (GST_START_TEST), (gst_bin_suite):
1746         * check/gst/gstbuffer.c: (GST_START_TEST), (gst_test_suite):
1747         * check/gst/gstbus.c: (GST_START_TEST):
1748         * check/gst/gstcaps.c: (GST_START_TEST):
1749         * check/gst/gstdata.c: (GST_START_TEST):
1750         * check/gst/gstelement.c: (GST_START_TEST):
1751         * check/gst/gstghostpad.c: (GST_START_TEST):
1752         * check/gst/gstiterator.c: (GST_START_TEST):
1753         * check/gst/gstmessage.c: (GST_START_TEST):
1754         * check/gst/gstobject.c: (GST_START_TEST):
1755         * check/gst/gstpad.c: (GST_START_TEST):
1756         * check/gst/gststructure.c: (GST_START_TEST):
1757         * check/gst/gstsystemclock.c: (GST_START_TEST),
1758         (gst_systemclock_suite):
1759         * check/gst/gsttag.c: (GST_START_TEST), (gst_tag_suite):
1760         * check/gst/gstvalue.c: (GST_START_TEST):
1761         * check/pipelines/cleanup.c: (GST_START_TEST):
1762         * check/pipelines/simple_launch_lines.c: (GST_START_TEST):
1763         * check/states/sinks.c: (GST_START_TEST):
1764         * check/gstcheck.c: (gst_check_init):
1765         * check/gstcheck.h:
1766           add debugging category
1767           use GST_START_TEST now, so we add a debug line
1768
1769 2005-07-09  Thomas Vander Stichele  <thomas at apestaart dot org>
1770
1771         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite):
1772           add test for state change message on a bin
1773         * check/gst/gstelement.c: (START_TEST), (gst_element_suite):
1774           add another test
1775         * gst/gstbin.c: (gst_bin_init):
1776         * gst/gstbus.c: (gst_bus_init), (gst_bus_post):
1777         * gst/gstelement.c: (gst_element_post_message),
1778         (gst_element_set_state):
1779         * gst/gstelementfactory.c: (gst_element_factory_create):
1780         * gst/gstmessage.c: (gst_message_new):
1781         * gst/gstscheduler.c:
1782           various debugging additions and cleanups
1783
1784 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1785
1786         * check/Makefile.am:
1787         * check/gst/gstelement.c: (START_TEST), (gst_element_suite),
1788         (main):
1789           adding tests for elements
1790         * gst/gstelement.c: (gst_element_dispose):
1791
1792 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1793
1794         * gst/registries/gstlibxmlregistry.c: (load_feature):
1795           plug more leaks.  A simple gst_init() now is leakfree, yay.
1796
1797 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1798
1799         * gst/registries/gstlibxmlregistry.c: (read_string), (load_paths),
1800         (gst_xml_registry_load):
1801           plug another memleak
1802
1803 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1804
1805         * configure.ac:
1806           use GST_SET_ERROR_CFLAGS
1807         * docs/faq/cvs.xml:
1808           change to ERROR_CFLAGS
1809
1810 2005-07-08  Thomas Vander Stichele  <thomas at apestaart dot org>
1811
1812         * configure.ac:
1813           make GST_ERROR_CFLAGS overridable and re-enable Werror
1814         * docs/faq/cvs.xml:
1815           add a note about error CFLAGS
1816         * docs/gst/tmpl/gstfakesrc.sgml:
1817         * gst/elements/gstfakesrc.c:
1818           comment out some unused code
1819         * gst/gst.c: (split_and_iterate):
1820         * gst/registries/gstlibxmlregistry.c: (load_pad_template),
1821         (load_feature):
1822           plug some memleaks
1823
1824 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1825
1826         * common/Makefile.am:
1827         * common/gtk-doc.mak:
1828         * docs/gst/Makefile.am:
1829           factor out gtk-doc.mak
1830
1831 2005-07-07  Wim Taymans  <wim@fluendo.com>
1832
1833         * gst/schedulers/threadscheduler.c: (gst_thread_scheduler_func),
1834         (gst_thread_scheduler_dispose):
1835         Unlock the STREAM_LOCK completely.
1836
1837 2005-07-07  Thomas Vander Stichele  <thomas at apestaart dot org>
1838
1839         * check/Makefile.am:
1840         * check/elements/.cvsignore:
1841         * check/elements/gstfakesrc.c: (chain_func), (event_func),
1842         (START_TEST), (fakesrc_suite), (main):
1843         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1844         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1845         (gst_fakesrc_create), (gst_fakesrc_start):
1846         * gst/elements/gstfakesrc.h:
1847           adding a first element test
1848
1849 2005-07-07  Andy Wingo  <wingo@pobox.com>
1850
1851         * gst/gstbus.c (gst_bus_have_pending): Remove intensely irritating
1852         debug message.
1853
1854 2005-07-07  Wim Taymans  <wim@fluendo.com>
1855
1856         * gst/gstquery.c:
1857         * gst/gstquery.h:
1858         Remove old types
1859
1860 2005-07-07  Wim Taymans  <wim@fluendo.com>
1861
1862         * gst/base/gstbasesrc.c: (gst_base_src_get_range),
1863         (gst_base_src_default_negotiate), (gst_base_src_negotiate):
1864         Allow subclasses to implement their own negotiation.
1865
1866 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1867
1868         * docs/design/part-gstbin.txt:
1869         * docs/design/part-gstpipeline.txt:
1870           Update design notes to reflect the movement of
1871           responsibility for bus handling from GstPipeline to
1872           GstBin
1873
1874 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1875
1876         * configure.ac:
1877           Remove unnecessary queue2/3/4 examples.
1878
1879 2005-07-07  Jan Schmidt  <thaytan@mad.scientist.com>
1880
1881         * examples/Makefile.am:
1882         * examples/helloworld/helloworld.c: (event_loop), (main):
1883         * examples/queue/queue.c: (event_loop), (main):
1884         * examples/queue2/queue2.c: (main):
1885           Update a couple of the examples to work again.
1886
1887         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1888         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_event):
1889          Spelling corrections and extra debug.
1890         
1891         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_init), (is_eos),
1892         (gst_bin_add_func), (bin_element_is_sink), (gst_bin_get_state),
1893         (gst_bin_change_state), (gst_bin_dispose), (bin_bus_handler):
1894         * gst/gstbin.h:
1895         * gst/gstpipeline.c: (gst_pipeline_init), (gst_pipeline_dispose),
1896         (gst_pipeline_change_state):
1897         * gst/gstpipeline.h:
1898           Move the bus handler for children to the GstBin, and create a
1899           separate bus for receiving messages from children to the one the
1900           bus sends 'upwards' on.
1901
1902 2005-07-06  Wim Taymans  <wim@fluendo.com>
1903
1904         * gst/base/README:
1905         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
1906         (gst_base_sink_handle_object), (gst_base_sink_loop),
1907         (gst_base_sink_change_state):
1908         * gst/base/gstbasesink.h:
1909         * gst/base/gstbasesrc.c: (gst_base_src_class_init),
1910         (gst_base_src_init), (gst_base_src_setcaps),
1911         (gst_base_src_getcaps), (gst_base_src_loop),
1912         (gst_base_src_default_negotiate), (gst_base_src_negotiate),
1913         (gst_base_src_start), (gst_base_src_change_state):
1914         * gst/base/gstbasesrc.h:
1915         Make basesrc negotiate.
1916         Handle the case where preroll fails in basesink.
1917         Update README.
1918
1919 2005-07-06  Wim Taymans  <wim@fluendo.com>
1920
1921         * gst/gstpad.c: (gst_pad_fixate_caps), (gst_pad_accept_caps):
1922         Implement the fixate function.
1923         Clean up acceptcaps.
1924
1925 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1926
1927         * docs/pwg/building-filterfactory.xml:
1928         * docs/pwg/pwg.xml:
1929           Remove never-written filter-factory chapter; I'll add the various
1930           base classes to part 4 ("other element types") later on.
1931
1932 2005-07-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1933
1934         * docs/pwg/advanced-negotiation.xml:
1935         * docs/pwg/building-boiler.xml:
1936         * docs/pwg/building-pads.xml:
1937         * docs/pwg/pwg.xml:
1938         * examples/pwg/Makefile.am:
1939           Add a chapter on caps negotiation, simplify the original code
1940           samples a bit w.r.t. caps negotiation, add link to the advanced
1941           section. Add a bunch of examples showing different use cases of
1942           different types of caps negotiation. Upstream renegotiation isn't
1943           fully documented yet since nobody knows how that works.
1944
1945 2005-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
1946
1947         * check/gst/gstpad.c:
1948         * check/gstcheck.c:
1949         * gst/gstpad.c: (gst_pad_get_internal_links_default):
1950           if pad has no parent, return NULL as list of internal links
1951
1952 2005-07-05  Andy Wingo  <wingo@pobox.com>
1953
1954         * gst/elements/gstfilesrc.c:
1955         * gst/elements/gstfakesrc.c: 
1956         * gst/base/gstpushsrc.c:
1957         * gst/base/gstbasesrc.h: 
1958         * gst/base/gstbasesrc.c: s/BASESRC/BASE_SRC/g.
1959         
1960 2005-07-05  Stefan Kost  <ensonic@users.sf.net>
1961
1962         * Makefile.am:
1963           better report generation target (lcov needs a patch)
1964
1965 2005-07-05  Andy Wingo  <wingo@pobox.com>
1966
1967         * gst/elements, testsuite: Null if we got it...
1968
1969 2005-07-05  Wim Taymans  <wim@fluendo.com>
1970
1971         * configure.ac:
1972         * libs/gst/dataprotocol/Makefile.am:
1973         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet):
1974         * libs/gst/dataprotocol/dataprotocol.h:
1975         * pkgconfig/Makefile.am:
1976         * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in:
1977         * pkgconfig/gstreamer-dataprotocol.pc.in:
1978         Ported dataprotol to 0.9. 
1979         Added pkgconfig files.
1980
1981 2005-07-05  Andy Wingo  <wingo@pobox.com>
1982
1983         * gst/base/gstbasetransform.c (gst_base_transform_setcaps):
1984         Default to returning TRUE for the case when tranform_caps returns
1985         a fixed caps, like for identity or volume.
1986
1987         * check/gst/gstbus.c (pound_bus_with_messages): 
1988         * check/gst/gstmessage.c (START_TEST): 
1989         * check/pipelines/simple_launch_lines.c (got_handoff): Application
1990         message API change.
1991
1992         * gst/base/gstbasetransform.c (gst_base_transform_setcaps): More
1993         logic weaks here: always run transform_caps, trying passthrough
1994         operation only if the original caps intersects with the transform.
1995
1996         * gst/gstpad.c (gst_pad_link_check_compatible_unlocked): Debug
1997         source and sink caps.
1998
1999         * gst/base/gstbasetransform.c (gst_base_transform_getcaps):
2000         Intersect the peer caps with the pad template before going into
2001         transform_caps.
2002         (gst_base_transform_transform_caps): More debugging.
2003
2004         * gst/gstmessage.h (gst_message_new_application): Take a GstObject
2005         src argument.
2006
2007 2005-07-04  Edward Hervey  <edward@fluendo.com>
2008
2009         * gst/gstutils.c:
2010         * gst/gstutils.h:
2011         (gst_pad_add_*_probe): now returns the signal id for better wrapping
2012         in bindings.
2013
2014 2005-07-04  Andy Wingo  <wingo@pobox.com>
2015
2016         * check/gst/gstpad.c: Only set explicit caps on pads.
2017
2018 2005-07-01  Andy Wingo  <wingo@pobox.com>
2019
2020         * tests/network-clock.scm: Commentary update.
2021
2022         * gst/elements/gstidentity.c (PROP_DUPLICATE): Gone daddy gone.
2023         Didn't really make sense, not implementable with basetransform,
2024         etc.
2025         (gst_identity_transform): Unref inbuf via make_writable. Feeble
2026         attempt at implementing the sync property, needs an unlock method.
2027
2028         * gst/base/gstbasetransform.c (gst_base_transform_transform_caps):
2029         New func, by default returns the same caps (the identity
2030         transformation).
2031         (gst_base_transform_getcaps): Uses transform_caps to return
2032         something sensible.
2033         (gst_base_transform_setcaps): Complicated logic to get caps on
2034         both pads, even if they are different, and to call set_caps once
2035         for every time both pads get their caps set.
2036         (gst_base_transform_handle_buffer): Give the ref to the transform
2037         function. Allows in-place modification of the buffer.
2038
2039         * gst/base/gstbasetransform.h (transform_caps): New class method.
2040         Given caps on one side, what can I do on the other.
2041         (set_caps): Take two caps, one for each side of the element.
2042
2043         * gst/gstpad.h:
2044         * gst/gstpad.c (gst_pad_fixate_caps): Change prototype to modify
2045         caps in place. This is safe because we can check the mutability of
2046         the caps, and a good idea because fixate functions are just called
2047         as a matter of last resort. (Not actually implemented.)
2048         (gst_pad_set_caps): If the caps we're setting is actually the same
2049         as the existing pad caps, just update the pointer without calling
2050         setcaps. Assert that caps is either NULL or fixed, as per the
2051         docs.
2052
2053         * gst/gstghostpad.c: Update for fixate changes.
2054
2055 2005-07-02  Andy Wingo  <wingo@pobox.com>
2056
2057         * gst/gstcaps.c:
2058         * gst/gstcaps.h (gst_static_caps_get): Not const return, having
2059         two refcounts makes it immutable, which is enough. Doc more.
2060
2061 2005-07-02  Jan Schmidt  <thaytan@mad.scientist.com>
2062
2063         * gst/gstpad.c: (gst_pad_emit_have_data_signal):
2064           Put the mini_object into GValue as a mini_object,
2065           not a gpointer, since that's how we declared
2066           the signal.
2067
2068 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2069
2070         * examples/pwg/Makefile.am:
2071           Fix buildbot again.
2072
2073 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2074
2075         * docs/pwg/building-testapp.xml:
2076           Add extra check.
2077         * examples/pwg/Makefile.am:
2078           Fix buildbot.
2079
2080 2005-07-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2081
2082         * configure.ac:
2083         * examples/Makefile.am:
2084         * examples/pwg/Makefile.am:
2085         * examples/pwg/extract.pl:
2086           Enable building the PWG examples.
2087         * docs/pwg/advanced-interfaces.xml:
2088           Add URI interface stub.
2089         * docs/pwg/advanced-types.xml:
2090         * docs/pwg/other-autoplugger.xml:
2091         * docs/pwg/appendix-porting.xml:
2092         * docs/pwg/pwg.xml:
2093           Add porting guide (mostly stubs), remove autoplugging (see ADM).
2094         * docs/pwg/building-boiler.xml:
2095         * docs/pwg/building-chainfn.xml:
2096         * docs/pwg/building-pads.xml:
2097         * docs/pwg/building-props.xml:
2098         * docs/pwg/building-state.xml:
2099         * docs/pwg/building-testapp.xml:
2100           Update the building-*.xml parts for 0.9 changes. All examples
2101           code blocks compile in examples/pwg/*.
2102
2103 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2104
2105         * docs/manual/advanced-autoplugging.xml:
2106         * docs/manual/appendix-checklist.xml:
2107         * docs/manual/appendix-integration.xml:
2108         * docs/manual/highlevel-components.xml:
2109           Fix playbin/decodebin examples, update docs a bit, mention bus
2110           instead of signals in various places, mention kmplayer and
2111           kaffeine since they have a working GStreamer backend in the KDE
2112           section.
2113
2114 2005-06-30  Wim Taymans  <wim@fluendo.com>
2115
2116         * CHANGES-0.9:
2117         * docs/design/draft-ghostpads.txt:
2118         * docs/design/draft-push-pull.txt:
2119         * docs/design/draft-query.txt:
2120         * docs/design/part-TODO.txt:
2121         * docs/design/part-query.txt:
2122         Added CHANGES-0.9 doc, updated status of other docs.
2123         
2124         * gst/gstquery.h:
2125         Remove "hmm" macro
2126
2127 2005-06-30  Wim Taymans  <wim@fluendo.com>
2128
2129         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
2130         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
2131         (gst_base_sink_change_state):
2132         * gst/base/gstbasesink.h:
2133         Some tweaks, only EOS and a buffer complete a preroll.
2134
2135 2005-06-30  Andy Wingo  <wingo@pobox.com>
2136
2137         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
2138         activate_push down to the internal pad as well.
2139
2140 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
2141
2142         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2143
2144         * gst/gsttaginterface.c:
2145           Some documentation fixes (#307394 and #307397).
2146
2147 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2148
2149         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2150
2151         * gst/gstvalue.c: (gst_value_intersect_list):
2152           Fix memleak (#309125).
2153
2154 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2155
2156         * docs/manual/advanced-dataaccess.xml:
2157           Fix fakesrc example to compile; doesn't work, bug somewhere...?
2158         * docs/manual/basics-pads.xml:
2159           Add reference for filtered caps to above chapter.
2160
2161 2005-06-30  Wim Taymans  <wim@fluendo.com>
2162
2163         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
2164         (gst_bin_change_state):
2165         Probes are gone.
2166         Lame attempt at making the state change function a bit
2167         more readable.
2168
2169 2005-06-30  Wim Taymans  <wim@fluendo.com>
2170
2171         * docs/design/part-clocks.txt:
2172         * docs/design/part-element-sink.txt:
2173         * docs/design/part-events.txt:
2174         * docs/design/part-preroll.txt:
2175         * docs/design/part-states.txt:
2176         Some more tweeks and additions to the docs.
2177
2178 2005-06-30  Wim Taymans  <wim@fluendo.com>
2179
2180         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2181         (default_have_data), (gst_pad_class_init), (gst_pad_init),
2182         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2183         (gst_pad_check_pull_range), (gst_pad_get_range),
2184         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
2185         * gst/gstpad.h:
2186         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
2187         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2188         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2189         (gst_pad_remove_buffer_probe):
2190         Removed atomic operations, use existing LOCK.
2191         Move exception handling out of main code path.
2192
2193 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2194
2195         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2196         (silly_return_true_function), (gst_pad_class_init),
2197         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
2198         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
2199         (gst_pad_send_event):
2200           Fix accumulator, add default value by using _emitv() instead
2201           of _emit() for signal emission.
2202
2203 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2204
2205         * docs/manual/advanced-dataaccess.xml:
2206         * examples/manual/Makefile.am:
2207           Add probe example.
2208         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
2209           Make work (??).
2210
2211 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
2212
2213         * gst/elements/gstfilesink.c: (gst_filesink_render):
2214           Simplify code so that we don't have to handle short
2215           writes and return GST_FLOW_ERROR if an error occured.
2216
2217 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2218
2219         * docs/gst/gstreamer-docs.sgml:
2220           Remove probes more.
2221
2222 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2223
2224         * docs/gst/gstreamer-sections.txt:
2225         * docs/gst/tmpl/gstpad.sgml:
2226         * docs/gst/tmpl/gstprobe.sgml:
2227         * gst/Makefile.am:
2228         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
2229         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
2230         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
2231         (gst_pad_push_event), (gst_pad_send_event):
2232         * gst/gstpad.h:
2233         * gst/gstutils.c: (gst_pad_add_data_probe),
2234         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
2235         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
2236         (gst_pad_remove_buffer_probe):
2237         * gst/gstutils.h:
2238           Remove old probes, add new g-signal-based probes and some utility
2239           functions.
2240
2241 2005-06-29  Edward Hervey  <edward@fluendo.com>
2242
2243         * gst/gstelementfactory.c:
2244         * gst/gstutils.h:
2245         * gst/gstutils.c:
2246         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
2247         the definition to the header file.
2248
2249 2005-06-29  Andy Wingo  <wingo@pobox.com>
2250
2251         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
2252         plugins from the source directory.
2253
2254 2005-06-29  Wim Taymans  <wim@fluendo.com>
2255
2256         * docs/gst/tmpl/gstbuffer.sgml:
2257         * docs/gst/tmpl/gstclock.sgml:
2258         Some fixings for blantently wrong text.
2259
2260 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2261
2262         * check/Makefile.am:
2263         * gst/gst.c: (add_path_func), (init_pre):
2264         * gst/gstregistry.c: (gst_registry_add_path):
2265           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
2266           only scan the GST_PLUGIN_PATH locations, and not add
2267           system locations
2268
2269 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
2270
2271         * docs/gst/gstreamer-sections.txt:
2272         * docs/gst/tmpl/gstbasesrc.sgml:
2273         * gst/gstelement.c:
2274         * gst/gstelement.h:
2275         * gst/gstevent.c:
2276         * gst/gstutils.c:
2277           doc fixes
2278
2279 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2280
2281         * docs/manual/advanced-autoplugging.xml:
2282           Fix autoplugging example.
2283
2284 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2285
2286         * docs/manual/advanced-autoplugging.xml:
2287         * docs/manual/mime-world.fig:
2288           Try to get autoplugging working, fix type detection. Fix text
2289           in hello-world image.
2290
2291 2005-06-29  Wim Taymans  <wim@fluendo.com>
2292
2293         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
2294         (gst_base_sink_change_state):
2295         Small debug line.
2296
2297         * gst/gstclock.h:
2298         map SIGNAL and BROADCAST to the right function.
2299
2300         * gst/gstobject.h:
2301         Remove redundant braces.
2302
2303         * gst/gstpad.c: (gst_pad_set_caps):
2304         Don't call setcaps function when reseting caps to NULL.
2305
2306         * gst/gstsystemclock.c: (gst_system_clock_dispose),
2307         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
2308         (gst_system_clock_id_unschedule):
2309         Use BROADCAST as this is what we do.
2310
2311 2005-06-29  Wim Taymans  <wim@fluendo.com>
2312
2313         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
2314         We are actually prerolling before commiting the state
2315         change. 
2316
2317 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2318
2319         * docs/manual/advanced-clocks.xml:
2320         * docs/manual/advanced-interfaces.xml:
2321         * docs/manual/advanced-metadata.xml:
2322         * docs/manual/advanced-position.xml:
2323         * docs/manual/advanced-schedulers.xml:
2324         * docs/manual/advanced-threads.xml:
2325         * docs/manual/appendix-porting.xml:
2326         * docs/manual/basics-bins.xml:
2327         * docs/manual/basics-bus.xml:
2328         * docs/manual/basics-elements.xml:
2329         * docs/manual/basics-helloworld.xml:
2330         * docs/manual/basics-pads.xml:
2331         * docs/manual/highlevel-components.xml:
2332         * docs/manual/manual.xml:
2333         * docs/manual/thread.fig:
2334           Update (until threads/scheduling) Application Development Manual;
2335           remove GstThread, add GstBus, add simple porting checklist, add
2336           documentation for tag writing, clocks, make all examples until this
2337           part compile and run.
2338         * examples/manual/Makefile.am:
2339           Update from changes to Application Development Manual; add bus
2340           example, remove thread example.
2341
2342 2005-06-28  Wim Taymans  <wim@fluendo.com>
2343
2344         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
2345         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
2346         (gst_bus_source_dispatch):
2347         Add debugging messages.
2348         Make internal methods static.
2349         Handle the case where the bus is flushed in the handler.
2350         
2351         * gst/gstelement.c: (gst_element_get_bus):
2352         Fix refcount in _get_bus();
2353
2354         * gst/gstpipeline.c: (gst_pipeline_change_state),
2355         (gst_pipeline_get_clock_func):
2356         Clock refcounting fixes.
2357         Handle the case where preroll timed out more gracefully.
2358         
2359         * gst/gstsystemclock.c: (gst_system_clock_dispose):
2360         Clean up the internal thread in dispose. This is needed
2361         for subclasses that actually get disposed.
2362         
2363         * gst/schedulers/threadscheduler.c:
2364         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2365         (gst_thread_scheduler_dispose):
2366         Free thread pool in dispose.
2367
2368 2005-06-28  Andy Wingo  <wingo@pobox.com>
2369
2370         * tests/network-clock-utils.scm (debug, print-event): New utils.
2371
2372         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
2373         (*packet-loss*): Unified loss probability.
2374         (network-time): Report out-of-band events.
2375
2376         * tests/plot-data: Add support for out-of-band events. Hack it
2377         into this script instead of passing it down the pipe; should fix
2378         this later.
2379
2380 2005-06-28  Wim Taymans  <wim@fluendo.com>
2381
2382         * docs/gst/gstreamer.types:
2383         * docs/gst/tmpl/gstbasesrc.sgml:
2384         * docs/gst/tmpl/gstpad.sgml:
2385         Docs fixes.
2386
2387 2005-06-28  Wim Taymans  <wim@fluendo.com>
2388
2389         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2390         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
2391         (gst_proxy_pad_do_fixatecaps):
2392         Correctly proxy the check_pull_range function.
2393
2394 2005-06-28  Andy Wingo  <wingo@pobox.com>
2395
2396         * tests/network-clock.scm: Removed need for slib.
2397         
2398 2005-06-28  Wim Taymans  <wim@fluendo.com>
2399
2400         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
2401         (gst_basesink_preroll_queue_flush):
2402         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
2403         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
2404         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2405         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
2406         (gst_proxy_pad_set_property):
2407         * gst/gstpad.c:
2408         * gst/gstpad.h:
2409         * gst/gstqueue.c: (gst_queue_init):
2410         The deprecated pad loop function is removed now.
2411
2412 2005-06-28  Andy Wingo  <wingo@pobox.com>
2413
2414         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
2415         New parameters, simulate network packet loss.
2416
2417         * tests/network-clock-utils.scm: Initialize the RNG.
2418
2419 2005-06-28  Wim Taymans  <wim@fluendo.com>
2420
2421         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
2422         (gst_basesink_event), (gst_basesink_deactivate):
2423         Flushing the preroll queue always needs to unlock the waiters.
2424
2425 2005-06-28  Edward Hervey  <edward@fluendo.com>
2426
2427         * gst/gstpipeline.c: (gst_pipeline_send_event): 
2428         Wheen a seek was successful on a pipeline, set the stream_time to the
2429         seek offset in order to have a synchronized stream_time.
2430
2431 2005-06-28  Wim Taymans  <wim@fluendo.com>
2432
2433         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
2434         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
2435         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
2436         (gst_proxy_pad_do_fixatecaps):
2437         Call wrapper function instead of just calling the function
2438         pointers. This takes care of any locking and whatmore.
2439
2440 2005-06-28  Wim Taymans  <wim@fluendo.com>
2441
2442         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
2443         (gst_pad_pull_range):
2444         * gst/gstpad.h:
2445         CONNECTED -> LINKED.
2446
2447 2005-06-28  Andy Wingo  <wingo@pobox.com>
2448
2449         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
2450         source-munging commit!!!
2451
2452         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
2453         (gst_object_sink): Take gpointer arguments, not GstObject --
2454         avoids casts. Like GLib.
2455
2456         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
2457         activate.
2458
2459 2005-06-27  Andy Wingo  <wingo@pobox.com>
2460
2461         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
2462         remaining buffer.
2463
2464         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
2465         returns a sorted copy of the trace list.
2466         (gst_alloc_trace_print_live): New API, only prints traces with
2467         live objects. Sort the list.
2468         (gst_alloc_trace_print_all): Sort the list.
2469         (gst_alloc_trace_print): Align columns.
2470
2471         * gst/elements/gstttypefindelement.c:
2472         * gst/elements/gsttee.c:
2473         * gst/base/gstbasesrc.c:
2474         * gst/base/gstbasesink.c:
2475         * gst/base/gstbasetransform.c:
2476         * gst/gstqueue.c: Adapt for pad activation changes.
2477
2478         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
2479         sched.
2480         (gst_pipeline_dispose): Drop ref on sched.
2481
2482         * gst/gstpad.c (gst_pad_init): Set the default activate func.
2483         (gst_pad_activate_default): Push mode by default.
2484         (pre_activate_switch, post_activate_switch): New stubs, things to
2485         do before and after switching activation modes on pads.
2486         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
2487         the pad's activate function to choose which mode to activate.
2488         Shortcut on deactivation and call the right function directly.
2489         (gst_pad_activate_pull): New API, (de)activates a pad in pull
2490         mode.
2491         (gst_pad_activate_push): New API, same for push mode.
2492         (gst_pad_set_activate_function) 
2493         (gst_pad_set_activatepull_function) 
2494         (gst_pad_set_activatepush_function): Setters for new API.
2495
2496         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
2497         Trace all miniobjects.
2498         (gst_mini_object_make_writable): Unref the arg if we copy, like
2499         gst_caps_make_writable.
2500
2501         * gst/gstmessage.c (_gst_message_initialize): No trace init.
2502
2503         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
2504         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
2505         Adapt for new pad API.
2506
2507         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
2508
2509         * gst/gstelement.h:
2510         * gst/gstelement.c (gst_element_iterate_src_pads) 
2511         (gst_element_iterate_sink_pads): New API functions.
2512         
2513         * gst/gstelement.c (iterator_fold_with_resync): New utility,
2514         should fold into gstiterator.c in some form.
2515         (gst_element_pads_activate): Simplified via use of fold and
2516         delegation of decisions to gstpad->activate.
2517
2518         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
2519         help in debugging.
2520
2521         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
2522         class once in init, like gstmessage. Didn't run into this issue
2523         but it seems correct. Don't initialize a trace, gstminiobject does
2524         that.
2525
2526         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
2527         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
2528         to the bus.
2529         (assert_live_count): New util function, uses alloc traces to check
2530         cleanup.
2531
2532         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
2533         To be modified when unlink drops the internal pad.
2534
2535 2005-06-27  Wim Taymans  <wim@fluendo.com>
2536
2537         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
2538         (gst_bin_change_state):
2539         Cleanup the get_state() function a little, make sure it
2540         iterates the same set of elements.
2541         Added stub iterate_state_order().
2542
2543 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
2544
2545         * docs/gst/gstreamer-docs.sgml:
2546         * docs/gst/gstreamer-sections.txt:
2547         * docs/gst/gstreamer.types:
2548         * docs/gst/tmpl/gstbasesink.sgml:
2549         * docs/gst/tmpl/gstbasesrc.sgml:
2550         * docs/gst/tmpl/gstbasetransform.sgml:
2551         * docs/gst/tmpl/gstelement.sgml:
2552         * docs/gst/tmpl/gstiterator.sgml:
2553         * gst/base/gstbasesrc.c:
2554         * gst/base/gstbasesrc.h:
2555         * gst/base/gstbasetransform.h:
2556         * gst/gstelement.c:
2557         * gst/gstiterator.h:
2558           adding basetransform and iterator docs
2559
2560 2005-06-27  Andy Wingo  <wingo@pobox.com>
2561
2562         * docs/design/part-activation.txt: Notes on how activation should
2563         work -- not quite implemented yet.
2564
2565 2005-06-25  Wim Taymans  <wim@fluendo.com>
2566
2567         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
2568         At least get the chain function correct, needs more
2569         fixing.
2570
2571 2005-06-25  Wim Taymans  <wim@fluendo.com>
2572
2573         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2574         (gst_basesink_handle_object), (gst_basesink_event),
2575         (gst_basesink_do_sync), (gst_basesink_handle_event),
2576         (gst_basesink_change_state):
2577         * gst/gsttask.h:
2578         Right, two problems here: ghostpads don't take locks and
2579         glib _rec_mutex_lock_full() with depth==0 still locks.
2580         Catch illegal locking and g_warn them.
2581
2582 2005-06-25  Wim Taymans  <wim@fluendo.com>
2583
2584         * check/states/sinks.c: (START_TEST), (gst_object_suite):
2585         Have to check for completion now...
2586
2587 2005-06-25  Wim Taymans  <wim@fluendo.com>
2588
2589         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
2590         (gst_basesink_handle_object), (gst_basesink_event),
2591         (gst_basesink_do_sync), (gst_basesink_handle_event),
2592         (gst_basesink_change_state):
2593         * gst/gstpad.h:
2594         Unlock STREAM_LOCK whatever the recursion was.
2595
2596 2005-06-25  Wim Taymans  <wim@fluendo.com>
2597
2598         * gst/base/gstbasesink.c: (gst_basesink_set_property),
2599         (gst_basesink_preroll_queue_empty),
2600         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
2601         (gst_basesink_event), (gst_basesink_do_sync),
2602         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
2603         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
2604         (gst_basesink_change_state):
2605         Reworked the base sink, handle event and buffer serialisation
2606         correctly and removed possible deadlock.
2607         Handle EOS correctly.
2608
2609 2005-06-25  Wim Taymans  <wim@fluendo.com>
2610
2611         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
2612         (gst_pipeline_change_state):
2613         * tools/gst-launch.c: (check_intr), (event_loop), (main):
2614         Allow elements to post EOS in the state change function.
2615         Fix up -launch, make it exit the poll loop when the
2616         pipeline actually changed state.
2617         Fix up warning parsing in -launch.
2618
2619 2005-06-25  Wim Taymans  <wim@fluendo.com>
2620
2621         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
2622         (gst_tee_sink_activate):
2623         Core takes STREAM_LOCK for us now.
2624
2625 2005-06-25  Wim Taymans  <wim@fluendo.com>
2626
2627         * gst/gstelement.c: (gst_element_get_state_func),
2628         (gst_element_set_state):
2629         * gst/gstelement.h:
2630         * gst/gstmessage.c: (gst_message_parse_error),
2631         (gst_message_parse_warning):
2632         Keep track of current target state while performing a state
2633         change so that subclasses can do something interesting.
2634         Fix parsing of warning/error messages when GError is NULL.
2635
2636 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2637
2638         * docs/gst/Makefile.am:
2639         * docs/gst/gstreamer-docs.sgml:
2640         * docs/gst/gstreamer-sections.txt:
2641         * docs/gst/gstreamer.types:
2642         * docs/gst/tmpl/gstbasesink.sgml:
2643         * docs/gst/tmpl/gstbasesrc.sgml:
2644         * docs/gst/tmpl/gstbin.sgml:
2645         * docs/gst/tmpl/gstcompat.sgml:
2646         * docs/gst/tmpl/gstfakesink.sgml:
2647         * docs/gst/tmpl/gstfakesrc.sgml:
2648         * docs/gst/tmpl/gstfilesink.sgml:
2649         * docs/gst/tmpl/gstfilesrc.sgml:
2650         * docs/gst/tmpl/gstindex.sgml:
2651         * docs/manual/appendix-quotes.xml:
2652         * gst/base/gstbasesrc.h:
2653         * gst/elements/gstfakesrc.h:
2654         * gst/gstmessage.h:
2655           start pulling in base classes and elements in our docs
2656
2657 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
2658
2659         * docs/gst/Makefile.am:
2660         * docs/libs/Makefile.am:
2661           fixed make distcheck with gtk-doc 1.3
2662
2663 2005-06-23  Wim Taymans  <wim@fluendo.com>
2664
2665         * gst/gstelement.c: (gst_element_get_state_func),
2666         (gst_element_set_state), (gst_element_change_state):
2667         When the state did not change, also report NO_PREROLL
2668         when it matters.
2669
2670 2005-06-23  Wim Taymans  <wim@fluendo.com>
2671
2672         * gst/gstpad.c: (gst_pad_event_default):
2673         * gst/gstqueue.c: (gst_queue_loop):
2674         No unsafe task pausing please.
2675
2676 2005-06-23  Wim Taymans  <wim@fluendo.com>
2677
2678         * gst/schedulers/threadscheduler.c:
2679         (gst_thread_scheduler_task_start),
2680         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
2681         Ref the task before pushing it on the threadpool. This
2682         makes sure that we have a ref when the threadfunction is
2683         actually called.
2684
2685 2005-06-23  Andy Wingo  <wingo@pobox.com>
2686
2687         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
2688         offset is greater than the file's size.
2689
2690         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
2691         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
2692         * gst/gstobject.c (gst_object_class_init): Make the class lock
2693         recursive. Wim won't let me drop deep_notify. Decodebin works
2694         again, whoopdy doo.
2695
2696         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
2697         internal pad, and hacks accordingly. Doesn't do it on the target
2698         pad because we change its caps. Probably catches all cases of
2699         interest tho.
2700         (gst_ghost_pad_set_property): Connect to notify::caps as
2701         appropritate.
2702
2703         * tests/network-clock.scm (plot-simulation): Pipe data to the
2704         elite python skript.
2705
2706         * tests/network-clock-utils.scm (define-parameter): New macro,
2707         defines a parameter that can be set via the command line.
2708         (set-parameter!, parse-parameter-arguments): Command line args
2709         parser.
2710
2711         * tests/plot-data: Simple matplotlib-based plotter, takes input on
2712         stdin.
2713
2714 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
2715
2716         * gst/elements/gsttypefindelement.c:
2717         (gst_type_find_element_handle_event):
2718           Don't restart typefinding on a discont.
2719         * gst/gstelement.c: (gst_element_set_state):
2720           Debug spelling fix.
2721         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
2722           Allow changing mode of an active pad.
2723           Debug output fixes.
2724         * gst/registries/gstlibxmlregistry.c: (load_feature):
2725           Don't cast a static pad template to a normal pad template.
2726
2727 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2728
2729         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2730         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2731           remove gst_strtoll completely, since it didn't actually do
2732           anything more than what g_ascii_strtoull already does.
2733           check for range errors when deserializing
2734           do a cast for the unsigned cases; but further fixing needs
2735           a decision on what the interpretation of "(int)" and
2736           deserialization should be for values that fall outside the
2737           type's boundaries (ie, refuse, or interpret as casting)
2738
2739 2005-06-23  Wim Taymans  <wim@fluendo.com>
2740
2741         * check/Makefile.am:
2742         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
2743         * docs/design/part-live-source.txt:
2744         * docs/design/part-states.txt:
2745         * gst/base/gstbasesrc.c: (gst_basesrc_init),
2746         (gst_basesrc_set_live), (gst_basesrc_is_live),
2747         (gst_basesrc_get_range), (gst_basesrc_activate),
2748         (gst_basesrc_change_state):
2749         * gst/base/gstbasesrc.h:
2750         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2751         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
2752         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
2753         * gst/gstelement.c: (gst_element_get_state_func),
2754         (gst_element_set_state):
2755         * gst/gstelement.h:
2756         * gst/gsttypes.h:
2757         * tools/gst-launch.c: (event_loop), (main):
2758         Added support for live sources and other elements that
2759         cannot do preroll.
2760         Updated design docs, added live-source design doc.
2761         Implemented live source functionality in basesrc
2762         Fix error condition in _bin_get_state()
2763         Implement live source handling in -launch.
2764         Added check for live sources.
2765         Fixed case in GstBin where elements were changed state
2766         multiple times.
2767
2768
2769 2005-06-23  Andy Wingo  <wingo@pobox.com>
2770
2771         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
2772         borken refcounting.
2773
2774         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
2775         gst_caps_replace takes care of this for us.
2776
2777         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
2778         gst_pad_set_caps on the target, not just its setcaps() function.
2779
2780         * tests/network-clock.scm: 
2781         * tests/network-clock-utils.scm: A network clock simulator.
2782         Something of an algorithmic testbed before doing something in C.
2783
2784 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2785
2786         * check/Makefile.am:
2787         * check/gst/capslist.h:
2788           copy over from 0.8, and add two with bitmasks specified with
2789           (int) 0xFF...
2790         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2791           add test to parse everything from capslist.h
2792         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
2793         (main):
2794           add test for structure deserialization
2795         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2796           add tests for deserialization of strings to int types
2797         * gst/gststructure.c: (gst_structure_nth_field_name):
2798         * gst/gststructure.h:
2799           add a way to get the name of a field referenced by index
2800         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
2801           instead of checking if the resulting long long lies between
2802           min and max, we check if the long long would fit into
2803           a number of bytes for the final type.
2804           This fixes cases where a string represents 2^32 - 1, which
2805           when cast to int would be the (valid) -1, but is bigger than
2806           G_MAXINT
2807
2808 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2809
2810         * gst/parse/grammar.y:
2811           add a log line for type deserialization
2812
2813 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2814
2815         * check/gst/gstvalue.c: (START_TEST):
2816         * gst/gstvalue.c: (gst_value_deserialize):
2817           return long long, not int, so gint64 deserialization actually
2818           works.  Is there any flag that makes the compiler check this ?
2819           Fixes #308559
2820
2821 2005-06-22  Wim Taymans  <wim@fluendo.com>
2822
2823         * gst/gstbuffer.h:
2824         Added convenience macros for setting buffers in GValue.
2825
2826 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2827
2828         * check/gst/.cvsignore:
2829         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
2830           add a test deserializing int64, and comment part out because
2831           it fails, yay !
2832
2833 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2834
2835         * check/Makefile.am:
2836         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
2837         * testsuite/Makefile.am:
2838         * testsuite/caps/Makefile.am:
2839         * testsuite/caps/value_serialize.c:
2840         * testsuite/test_gst_init.c:
2841           move a value_serialize test over
2842
2843 2005-06-20  Wim Taymans  <wim@fluendo.com>
2844
2845         * gst/gstpad.c:
2846         Small doc updates.
2847         
2848         * gst/gstvalue.c: (gst_value_compare_buffer),
2849         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
2850         (gst_value_compare_flags), (gst_value_serialize_flags),
2851         (gst_value_deserialize_flags), (_gst_value_initialize):
2852         Fix serialisation of buffers, they are not boxed types anymore
2853
2854 2005-06-20  Wim Taymans  <wim@fluendo.com>
2855
2856         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
2857         Testcase to show error in buffer-on-caps serialisation.
2858
2859 2005-06-20  Andy Wingo  <wingo@pobox.com>
2860
2861         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
2862         will be adding to later.
2863
2864         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
2865         if its socks fill with rocks.
2866         (gst_system_clock_obtain): Set the name on object construction.
2867         Avoid double-checked locking.
2868
2869 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2870
2871         * gst/gsturi.c: (gst_element_make_from_uri):
2872           Fix potential endless loop.
2873
2874 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2875
2876         * check/Makefile.am:
2877           add gsttag
2878         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
2879         (main):
2880           move over from testsuite dir and clean up
2881         * configure.ac:
2882         * gst/gsttag.c:
2883         * testsuite/Makefile.am:
2884         * testsuite/tags/.cvsignore:
2885         * testsuite/tags/Makefile.am:
2886         * testsuite/tags/merge.c:
2887           remove testsuite/tags
2888
2889 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2890
2891         * docs/gst/gstreamer-sections.txt:
2892         * docs/gst/tmpl/gstenumtypes.sgml:
2893         * win32/gstenumtypes.c:
2894           clean up documentation build a little
2895
2896 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2897
2898         * check/gstcheck.h:
2899           add macros for checking refcounts on objects and caps
2900         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
2901           add some more unit tests
2902         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
2903         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
2904           fix leaked refcounts (I hope :)) so unittest works
2905         * gst/gstpad.h:
2906           whitespace removal
2907
2908 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
2909
2910         * configure.ac: back to HEAD
2911
2912 === release 0.9.1 ===
2913
2914 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
2915
2916         * NEWS:
2917         * RELEASE:
2918           updated
2919
2920 2005-06-17  Andy Wingo  <wingo@pobox.com>
2921
2922         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
2923         assert; it's always possible that the pad gets deactivated in
2924         between the checks in gstpad.c and the implementation. Rely on
2925         finish_preroll() to return a FLUSHING or similar instead of on the
2926         assert.
2927         
2928         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
2929         clock and post an EOS message if we come out of finish_preroll in
2930         the playing state.
2931
2932 2005-06-16  David Schleef  <ds@schleef.org>
2933
2934         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
2935         (gst_capsfilter_set_property): Allow NULL as possible value
2936         for filter_caps property, indicating GST_CAPS_ANY.
2937
2938 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2939
2940         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
2941           fix debug output
2942         * gst/schedulers/Makefile.am:
2943           use libgst prefix
2944         * gstreamer.spec.in:
2945           fix spec for it
2946
2947 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
2948
2949         * gstreamer.spec.in:
2950           clean up
2951
2952 2005-06-08  Andy Wingo  <wingo@pobox.com>
2953
2954         * gst/gstutils.c: RPAD fixes all around.
2955         (gst_element_link_pads): Refcounting fixes.
2956
2957         * tools/gst-inspect.c:
2958         * tools/gst-xmlinspect.c:
2959         * parse/grammar.y:
2960         * gst/base/gsttypefindhelper.c:
2961         * gst/base/gstbasesink.c:
2962         * gst/gstqueue.c: RPAD fixes.
2963
2964         * gst/gstghostpad.h:
2965         * gst/gstghostpad.c: New ghost pad implementation as full proxy
2966         pads. The tricky thing is they provide both source and sink
2967         interfaces, since they proxy the internal pad for the external
2968         pad, and vice versa. Implement with lower-level ProxyPad objects,
2969         with the interior proxy pad as a child of the exterior ghost pad.
2970         Should write a doc on this.
2971         
2972         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
2973         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
2974         gst_object API.
2975         
2976         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
2977         pads are real pads. No ghost pads in this file. Not documenting
2978         the myriad s/RPAD/PAD/ and REALIZE fixes.
2979         (gst_pad_class_init): Add properties for "direction" and
2980         "template". Both are construct-only, so they can't change during
2981         the life of the pad. Fixes properly deriving from GstPad.
2982         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
2983         derived objects, just set properties when creating the objects via
2984         g_object_new.
2985         (gst_pad_get_parent): Implement as a function, return NULL if the
2986         parent is not an element.
2987         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
2988         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
2989         
2990         * gst/gstobject.c (gst_object_class_init): Make name a construct
2991         property. Don't set it in the object init.
2992
2993         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
2994         with UNKNOWN direction.
2995         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
2996         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
2997         (gst_element_remove_pad): Remove ghost-pad special cases.
2998         (gst_element_pads_activate): Remove rpad cruft.
2999
3000         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
3001         catch the pad's-parent-not-an-element case.
3002
3003         * gst/gst.h: Include gstghostpad.h.
3004
3005         * gst/gst.c (init_post): No more real, ghost pads.
3006
3007         * gst/Makefile.am: Add gstghostpad.[ch].
3008
3009         * check/Makefile.am:
3010         * check/gst/gstbin.c:
3011         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
3012         into a bin creates ghost pads, and that the refcounts are right.
3013         Partly moved from gstbin.c.
3014
3015 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3016
3017         * check/gst-libs/.cvsignore:
3018         * check/gst/.cvsignore:
3019         * check/pipelines/.cvsignore:
3020           ignore more
3021         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
3022         (START_TEST), (cleanup_suite), (main):
3023           add some tests related to cleanup after running pipelines
3024
3025 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3026
3027         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
3028           add a testsuite for GstBuffer
3029
3030 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3031
3032         * gst/gstminiobject.h:
3033           add defines for accessing the refcount
3034
3035 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
3036
3037         * Makefile.am: added support for html unit test coverage reports
3038
3039 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
3040
3041         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
3042           Free existing caps if the capsfilter changes. Add a FIXME about
3043           setting those caps on the pads.
3044
3045         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
3046           Before adding a ghost pad to a parent bin, check that there isn't
3047           already one for the element on the bin. Prevents infinite recursion
3048           when using decodebin in parse pipelines. Andy says he'll rewrite the
3049           way this works anyway, so ignore the hack.
3050
3051 2005-06-02  Andy Wingo  <wingo@pobox.com>
3052
3053         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
3054         file size, pass it on to the type find helper.
3055
3056         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
3057         segment_start and segment_end properly according to the seek
3058         method. Segment_end is still a bit flaky because offset can be
3059         negative for CUR and END cases, but it takes -1 as an "unset"
3060         value.
3061
3062 2005-06-02  Wim Taymans  <wim@fluendo.com>
3063
3064         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
3065         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
3066         (gst_basesink_activate):
3067         * gst/base/gstbasesink.h:
3068         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3069         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3070         (gst_pad_query), (gst_pad_start_task):
3071         * gst/gstpad.h:
3072         * gst/gstqueue.c: (gst_queue_bufferalloc),
3073         (gst_queue_handle_sink_event), (gst_queue_chain):
3074         Bufferalloc: return GstFlowReturn to more accuratly report
3075         why allocation failed.
3076
3077 2005-06-02  Wim Taymans  <wim@fluendo.com>
3078
3079         * gst/gstpipeline.c: (gst_pipeline_send_event):
3080         Take snapshot of state without blocking.
3081
3082 2005-06-02  Wim Taymans  <wim@fluendo.com>
3083
3084         * docs/design/part-TODO.txt:
3085         * docs/design/part-caps.txt:
3086         * docs/design/part-clocks.txt:
3087         * docs/design/part-negotiation.txt:
3088         * docs/design/part-preroll.txt:
3089         Small doc updates 
3090
3091 2005-05-30  Wim Taymans  <wim@fluendo.com>
3092
3093         * gst/elements/gstidentity.c: (gst_identity_event),
3094         (gst_identity_transform), (gst_identity_get_property):
3095         Protect last_message property as it is accessed from
3096         multiple threads.
3097
3098 2005-05-30  Wim Taymans  <wim@fluendo.com>
3099
3100         * gst/gstelement.c: (gst_element_init),
3101         (gst_element_pads_activate), (gst_element_change_state):
3102         Slicker pad activation code.
3103
3104 2005-05-30  Wim Taymans  <wim@fluendo.com>
3105
3106         * gst/Makefile.am:
3107         * gst/gstelement.h:
3108         * gst/gstelementfactory.h:
3109         * gst/gsttypes.h:
3110         Move elementfactory methods to separate .h file.
3111
3112 2005-05-30  Wim Taymans  <wim@fluendo.com>
3113
3114         * docs/design/part-overview.txt:
3115         * gst/gstsystemclock.h:
3116         Small typo fixes, doc updates.
3117
3118 2005-05-30  Wim Taymans  <wim@fluendo.com>
3119
3120         * gst/gst.c: (gst_init_get_popt_table), (init_post),
3121         (init_popt_callback):
3122         Remove cpu-opt flag.
3123
3124 2005-05-30  Wim Taymans  <wim@fluendo.com>
3125
3126         * gst/gstbuffer.c: (gst_subbuffer_finalize),
3127         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
3128         * gst/gstbuffer.h:
3129         Avoid typechecking in places where not needed.
3130         Added accessor for malloc_data.
3131
3132 2005-05-30  Wim Taymans  <wim@fluendo.com>
3133
3134         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
3135         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
3136         (gst_pad_configure_sink), (gst_pad_configure_src),
3137         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
3138         (gst_pad_start_task):
3139         Propagate errors from _set_caps() in configure_src/sink
3140         functions instead of returning TRUE.
3141         FLUSH events can travel up and downstream
3142
3143
3144 2005-05-30  Wim Taymans  <wim@fluendo.com>
3145
3146         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3147         (gst_basesink_activate):
3148         Handle EOS in preroll.
3149
3150 2005-05-30  Wim Taymans  <wim@fluendo.com>
3151
3152         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3153         (gst_queue_loop), (gst_queue_handle_src_event):
3154         Remove old pieces of code
3155         Flushing the queue in an upstream event is a very bad idea.
3156
3157 2005-05-26  Andy Wingo  <wingo@pobox.com>
3158
3159         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
3160         gst_value_set_mini_object so as to add a ref on the object (which
3161         will be removed when the value is unset).
3162
3163         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
3164         arg type in ::handoff.
3165
3166         * gst/gstelement.c (gst_element_change_state): Also deactivate
3167         pads in READY->NULL, just in case the element didn't make it to
3168         PAUSED. Wingo tested, Wim approved.
3169
3170 2005-05-26  Wim Taymans  <wim@fluendo.com>
3171
3172         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3173         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
3174         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
3175         A flushing pad cannot be used to alloc_buffer from.
3176
3177 2005-05-26  Wim Taymans  <wim@fluendo.com>
3178
3179         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
3180         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
3181         (gst_bus_source_dispatch), (gst_bus_source_finalize),
3182         (gst_bus_create_watch), (gst_bus_add_watch_full):
3183         * gst/gstbus.h:
3184         Implement a real GSource and use g_main_context_wakeup() to
3185         signal new messages instead of the socketpair.
3186
3187 2005-05-25  Wim Taymans  <wim@fluendo.com>
3188
3189         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
3190         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
3191         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3192         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3193         (gst_pad_send_event), (gst_pad_start_task):
3194         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
3195         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
3196         (gst_queue_sink_activate), (gst_queue_src_activate),
3197         (gst_queue_change_state):
3198         * gst/gstqueue.h:
3199         Fix state changes for non sinks. We now change sinks, then elements
3200         with unconnected srcpads, then the rest.
3201         More efficient queue unlocking in flush and state changes.
3202         Set the pad activate mode even if it does not have an activate
3203         function.
3204
3205 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3206
3207         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
3208           Don't go in pull mode for non-seekable sources.
3209         * gst/elements/gsttypefindelement.h:
3210         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3211         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
3212         (free_entry), (stop_typefinding),
3213         (gst_type_find_element_handle_event), (find_peek),
3214         (gst_type_find_element_chain), (do_pull_typefind),
3215         (gst_type_find_element_change_state):
3216           Allow typefinding (w/o seeking) in push-mode, simplified version
3217           of what was in 0.8.
3218         * gst/gstutils.c: (gst_buffer_join):
3219         * gst/gstutils.h:
3220           gst_buffer_join() from 0.8.
3221
3222 2005-05-25  Wim Taymans  <wim@fluendo.com>
3223
3224         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
3225         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
3226         (gst_pad_send_event), (gst_pad_start_task):
3227         Disable attempt at mode switching until it is figured out.
3228
3229 2005-05-25  Wim Taymans  <wim@fluendo.com>
3230
3231         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
3232         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
3233         (gst_basesink_finish_preroll), (gst_basesink_chain),
3234         (gst_basesink_loop), (gst_basesink_activate),
3235         (gst_basesink_change_state):
3236         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
3237         (gst_basesrc_get_range), (gst_basesrc_loop),
3238         (gst_basesrc_activate):
3239         * gst/elements/gsttee.c: (gst_tee_sink_activate):
3240         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3241         (gst_real_pad_init), (gst_real_pad_set_property),
3242         (gst_real_pad_get_property), (gst_pad_set_active),
3243         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
3244         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
3245         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
3246         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
3247         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3248         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
3249         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
3250         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
3251         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
3252         (gst_pad_stop_task):
3253         * gst/gstpad.h:
3254         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
3255         (gst_queue_loop), (gst_queue_src_activate):
3256         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
3257         (gst_task_get_state):
3258         * gst/gsttask.h:
3259         * gst/schedulers/threadscheduler.c:
3260         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
3261         Implement gst_pad_pause/start/stop_task(), take STREAM lock
3262         in task function.
3263         Remove ACTIVE pad flag, use FLUSHING everywhere
3264         Added _pad_chain(), _pad_get_range() to call chain/getrange 
3265         functions.
3266         Add locks around IS_FLUSHING when reading.
3267         Take STREAM lock in chain(), get_range() functions so plugins
3268         don't need to take it anymore.
3269         
3270
3271
3272 2005-05-25  Wim Taymans  <wim@fluendo.com>
3273
3274         * tools/gst-launch.c: (event_loop):
3275         Unref message after using its contents instead of
3276         before.
3277
3278 2005-05-24  Wim Taymans  <wim@fluendo.com>
3279
3280         * docs/design/draft-ghostpads.txt:
3281         * docs/design/draft-push-pull.txt:
3282         * docs/design/draft-query.txt:
3283         * docs/design/part-overview.txt:
3284         Docs updates, added general overview doc.
3285
3286 2005-05-21  David Schleef  <ds@schleef.org>
3287
3288         * docs/gst/tmpl/old/GstBin.sgml:
3289         * docs/gst/tmpl/old/GstBuffer.sgml:
3290         * docs/gst/tmpl/old/GstCaps.sgml:
3291         * docs/gst/tmpl/old/GstClock.sgml:
3292         * docs/gst/tmpl/old/GstCompat.sgml:
3293         * docs/gst/tmpl/old/GstData.sgml:
3294         * docs/gst/tmpl/old/GstElement.sgml:
3295         * docs/gst/tmpl/old/GstEvent.sgml:
3296         * docs/gst/tmpl/old/GstIndex.sgml:
3297         * docs/gst/tmpl/old/GstStructure.sgml:
3298         * docs/gst/tmpl/old/GstTag.sgml:
3299         * docs/gst/tmpl/old/cothreads.sgml:
3300         * docs/gst/tmpl/old/cothreads_compat.sgml:
3301         * docs/gst/tmpl/old/gettext.sgml:
3302         * docs/gst/tmpl/old/gobject2gtk.sgml:
3303         * docs/gst/tmpl/old/grammar.tab.sgml:
3304         * docs/gst/tmpl/old/gst-i18n-app.sgml:
3305         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
3306         * docs/gst/tmpl/old/gst_private.sgml:
3307         * docs/gst/tmpl/old/gstaggregator.sgml:
3308         * docs/gst/tmpl/old/gstarch.sgml:
3309         * docs/gst/tmpl/old/gstatomic_impl.sgml:
3310         * docs/gst/tmpl/old/gstbufferstore.sgml:
3311         * docs/gst/tmpl/old/gstdata_private.sgml:
3312         * docs/gst/tmpl/old/gstdisksink.sgml:
3313         * docs/gst/tmpl/old/gstdisksrc.sgml:
3314         * docs/gst/tmpl/old/gstelementfactory.sgml:
3315         * docs/gst/tmpl/old/gstextratypes.sgml:
3316         * docs/gst/tmpl/old/gstfakesink.sgml:
3317         * docs/gst/tmpl/old/gstfakesrc.sgml:
3318         * docs/gst/tmpl/old/gstfdsink.sgml:
3319         * docs/gst/tmpl/old/gstfdsrc.sgml:
3320         * docs/gst/tmpl/old/gstfilesink.sgml:
3321         * docs/gst/tmpl/old/gstfilesrc.sgml:
3322         * docs/gst/tmpl/old/gsthttpsrc.sgml:
3323         * docs/gst/tmpl/old/gstidentity.sgml:
3324         * docs/gst/tmpl/old/gstindexfactory.sgml:
3325         * docs/gst/tmpl/old/gstmarshal.sgml:
3326         * docs/gst/tmpl/old/gstmd5sink.sgml:
3327         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
3328         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
3329         * docs/gst/tmpl/old/gstpadtemplate.sgml:
3330         * docs/gst/tmpl/old/gstpipefilter.sgml:
3331         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
3332         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
3333         * docs/gst/tmpl/old/gstshaper.sgml:
3334         * docs/gst/tmpl/old/gstspider.sgml:
3335         * docs/gst/tmpl/old/gstspideridentity.sgml:
3336         * docs/gst/tmpl/old/gststatistics.sgml:
3337         * docs/gst/tmpl/old/gsttee.sgml:
3338         * docs/gst/tmpl/old/gsttimecache.sgml:
3339         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
3340         * docs/gst/tmpl/old/gstxmlregistry.sgml:
3341         * docs/gst/tmpl/old/gthread-cothreads.sgml:
3342         * docs/gst/tmpl/old/types.sgml:
3343           I didn't intend to add these or check them in.
3344
3345 2005-05-19  David Schleef  <ds@schleef.org>
3346
3347         * configure.ac: Use -no-common everywhere.  In a sane world, it
3348           would be the default in libtool, because without it, you can't
3349           build DLLs on Windows.
3350         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
3351         * docs/gst/gstreamer-sections.txt:
3352         * docs/gst/tmpl/gstcpu.sgml:
3353         * docs/gst/tmpl/gstdata.sgml:
3354         * docs/gst/tmpl/gstthread.sgml:
3355
3356 2005-05-19  David Schleef  <ds@schleef.org>
3357
3358         * gst/gstminiobject.c: (gst_value_set_mini_object),
3359         (gst_value_take_mini_object), (gst_value_get_mini_object):
3360         * gst/gstminiobject.h: Add GValue set/get functions.
3361
3362 2005-05-19  Wim Taymans  <wim@fluendo.com>
3363
3364         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
3365         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
3366         (gst_subbuffer_init), (gst_buffer_is_span_fast):
3367         * gst/gstbuffer.h:
3368         * gst/gstbus.c: (gst_bus_post):
3369         * gst/gstelement.c: (gst_element_get_random_pad):
3370         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
3371         Make subbufer unref the parent in finalize.
3372         some more debugging info.
3373
3374
3375 2005-05-19  Wim Taymans  <wim@fluendo.com>
3376
3377         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3378         (gst_basesink_init), (gst_basesink_finalize),
3379         (gst_basesink_activate), (gst_basesink_change_state):
3380         Don't free preroll queue too early.
3381
3382 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3383
3384         * gst/Makefile.am:
3385         * gst/ROADMAP:
3386           Hi, I'm outdated. Please shoot me.
3387
3388 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3389
3390         * gst/gstpipeline.c: (gst_pipeline_send_event):
3391           Do not access variables after they have been deleted.
3392
3393 2005-05-19  Wim Taymans  <wim@fluendo.com>
3394
3395         * tools/gst-inspect.c: (print_plugin_features):
3396         A plugin feature does unfortunatly not use the
3397         object name yet...
3398
3399 2005-05-18  Wim Taymans  <wim@fluendo.com>
3400
3401         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
3402         Port _span() functions to new subbuffers.
3403
3404 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3405
3406         * gst/gstbin.c: (gst_bin_add_func):
3407           Fix clock settery in bins when adding kids after the clock has
3408           been selected.
3409
3410 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3411
3412         * gst/elements/gstidentity.c: (gst_identity_class_init):
3413           Workaround until signals support GstMiniObject.
3414
3415 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
3416
3417         * gst/gstbuffer.c:
3418         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
3419
3420 2005-05-18  Wim Taymans  <wim@fluendo.com>
3421
3422         * gst/base/Makefile.am:
3423         * gst/base/gstadapter.c: (gst_adapter_base_init),
3424         (gst_adapter_class_init), (gst_adapter_init),
3425         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
3426         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
3427         (gst_adapter_flush), (gst_adapter_available),
3428         (gst_adapter_available_fast):
3429         * gst/base/gstadapter.h:
3430         Ported and added adapter to the base classes.
3431
3432 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
3433
3434         * gst/gst.c:
3435         * gst/gstmessage.c:
3436           Make sure the class is reffed/unreffed once before threads can be
3437           used.  Fixes #304551.
3438
3439 2005-05-17  Wim Taymans  <wim@fluendo.com>
3440
3441         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
3442         (gst_basesink_chain_unlocked), (gst_basesink_activate):
3443         * gst/gstminiobject.c: (gst_mini_object_get_type),
3444         (gst_mini_object_free):
3445         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
3446         (gst_pad_push), (gst_pad_push_event):
3447         * gst/gstqueue.c: (gst_queue_change_state):
3448         Don't queue buffers in basesink when we are flushing.
3449         Unref buffer when flushing in basesink.
3450         Flush queue when going to READY
3451         Unref buffer when _push() returns an error.
3452         Don't free MiniObject instance when refcount is incremented
3453         in _finalize() so that we can recover objects.
3454
3455 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
3456
3457         * docs/manual/advanced-schedulers.xml:
3458         * docs/manual/appendix-checklist.xml:
3459         * docs/pwg/advanced-clock.xml:
3460         * docs/pwg/advanced-interfaces.xml:
3461         * docs/pwg/advanced-request.xml:
3462         * docs/pwg/advanced-types.xml:
3463         * docs/pwg/intro-preface.xml:
3464         * examples/plugins/example.c: (gst_example_get_type),
3465         (gst_example_class_init), (gst_example_chain),
3466         (gst_example_set_property), (gst_example_get_property),
3467         (gst_example_change_state), (plugin_init):
3468         * examples/plugins/example.h:
3469           small doc fixes
3470
3471 2005-05-17  Wim Taymans  <wim@fluendo.com>
3472
3473         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
3474         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
3475         * gst/gstqueue.c: (gst_queue_change_state):
3476         Clear queue when going to READY.
3477         Remove IN_SETCAPS flag too.
3478
3479 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
3480
3481         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
3482           Remove implicit cast from gboolean to GstElementStateReturn;
3483           make sure we still return failure in paused => ready case if
3484           the parent class fails to change state and our own stop 
3485           vfunc succeeds.
3486
3487 2005-05-17  Wim Taymans  <wim@fluendo.com>
3488
3489         * tools/gst-launch.c: (event_loop):
3490         Message was unreffed too soon.
3491
3492 2005-05-16  Andy Wingo  <wingo@pobox.com>
3493
3494         * gst/gstbin.c (sink_iterator_filter): Err... um...
3495
3496         * check/gst/gstbin.c (test_ghost_pads): New test for the
3497         ghosting-if-elements-not-in-same-bin behavior.
3498
3499 2005-05-16  David Schleef  <ds@schleef.org>
3500
3501         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
3502         accessing refcount directly.
3503
3504 2005-05-15  David Schleef  <ds@schleef.org>
3505
3506         * check/Makefile.am: remove GstData checks
3507         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
3508         * gst/Makefile.am: add miniobject, remove data
3509         * gst/gst.h: add miniobject, remove data
3510         * gst/gstdata.c: remove
3511         * gst/gstdata.h: remove
3512         * gst/gstdata_private.h: remove
3513         * gst/gsttypes.h: remove GstEvent and GstMessage
3514         * gst/gstelement.c: (gst_element_post_message): fix for API changes
3515         * gst/gstmarshal.list: change BOXED -> OBJECT
3516
3517         Implement GstMiniObject.
3518         * gst/gstminiobject.c:
3519         * gst/gstminiobject.h:
3520
3521         Modify to be subclasses of GstMiniObject.
3522         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
3523         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
3524         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
3525         (gst_subbuffer_get_type), (gst_subbuffer_init),
3526         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
3527         (gst_buffer_span):
3528         * gst/gstbuffer.h:
3529         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
3530         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
3531         (_gst_event_copy), (gst_event_new):
3532         * gst/gstevent.h:
3533         * gst/gstmessage.c: (_gst_message_initialize),
3534         (gst_message_get_type), (gst_message_class_init),
3535         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
3536         (gst_message_new), (gst_message_new_error),
3537         (gst_message_new_warning), (gst_message_new_tag),
3538         (gst_message_new_state_changed), (gst_message_new_application):
3539         * gst/gstmessage.h:
3540         * gst/gstprobe.c: (gst_probe_perform),
3541         (gst_probe_dispatcher_dispatch):
3542         * gst/gstprobe.h:
3543         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
3544         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
3545         (_gst_query_copy), (gst_query_new):
3546
3547         Update elements for GstData -> GstMiniObject changes
3548         * gst/gstquery.h:
3549         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
3550         (gst_queue_chain), (gst_queue_loop):
3551         * gst/elements/gstbufferstore.c:
3552         (gst_buffer_store_add_buffer_func),
3553         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
3554         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3555         (gst_fakesink_render):
3556         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
3557         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
3558         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
3559         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
3560         (gst_filesrc_create_read):
3561         * gst/elements/gstidentity.c: (gst_identity_class_init):
3562         * gst/elements/gsttypefindelement.c:
3563         (gst_type_find_element_src_event), (free_entry_buffers),
3564         (gst_type_find_element_handle_event):
3565         * libs/gst/dataprotocol/dataprotocol.c:
3566         (gst_dp_header_from_buffer):
3567         * libs/gst/dataprotocol/dataprotocol.h:
3568         * libs/gst/dataprotocol/dp-private.h:
3569
3570 2005-05-15  David Schleef  <ds@schleef.org>
3571
3572         * gst/elements/gstelements.c: Don't include headers that were
3573         just removed.
3574
3575 2005-05-15  David Schleef  <ds@schleef.org>
3576
3577         * gst/elements/Makefile.am: Remove some elements that don't
3578         need to be in the core (or even exist at all).
3579         * gst/elements/gstaggregator.c:
3580         * gst/elements/gstaggregator.h:
3581         * gst/elements/gstmd5sink.c:
3582         * gst/elements/gstmd5sink.h:
3583         * gst/elements/gstmultifilesrc.c:
3584         * gst/elements/gstmultifilesrc.h:
3585         * gst/elements/gstpipefilter.c:
3586         * gst/elements/gstpipefilter.h:
3587         * gst/elements/gstshaper.c:
3588         * gst/elements/gstshaper.h:
3589         * gst/elements/gststatistics.c:
3590         * gst/elements/gststatistics.h:
3591         * po/POTFILES.in: Remove above files.
3592
3593 2005-05-14  Andy Wingo  <wingo@pobox.com>
3594
3595         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
3596         so as to get the refs right.
3597         (sink_iterator_filter): New function, wraps bin_element_is_sink,
3598         unreffing objects that don't pass the filter.
3599
3600         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
3601         gst_element_set_bus.
3602         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
3603         normal cases, this will destroy the bus.
3604
3605         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
3606         object.
3607
3608         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
3609         has no sinks.
3610
3611 2005-05-13  Andy Wingo  <wingo@pobox.com>
3612
3613         * gst/gstutils.c (gst_element_link_pads): Instead of calling
3614         gst_pad_link, call pad_link_maybe_ghosting,
3615         (pad_link_maybe_ghosting): Links pads, making sure that the
3616         elements being linked are in the same bin.
3617         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
3618         Helpers for pad_link_maybe_ghosting.
3619
3620 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3621
3622         * configure.ac:
3623           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
3624
3625 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
3626
3627         * docs/design/part-element-source.txt:
3628           Mention GstPushSrc
3629
3630 2005-05-12  Wim Taymans  <wim@fluendo.com>
3631
3632         * gst/base/gstbasesink.c: (gst_basesink_init),
3633         (gst_basesink_activate):
3634         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
3635         (gst_basesrc_is_seekable):
3636         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3637         (bin_element_is_sink), (gst_bin_change_state):
3638         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3639         * gst/gstelement.h:
3640         Identify sinks by their flag to avoid overly complicated
3641         checks (fow now).
3642         Do state changes even for elements not reachable from the
3643         sinks.
3644         BaseSink is a sink now :)
3645         Some more debugging info in the basesrc.
3646
3647
3648 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3649
3650         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
3651           Implement _query on a bin, similar to _send_event.
3652
3653 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
3654
3655         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
3656           Discont event offset format should be GST_FORMAT_BYTES,
3657           not GST_FORMAT_TIME.
3658
3659 2005-05-12  Wim Taymans  <wim@fluendo.com>
3660
3661         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
3662         Same fix as Ronald's but without the signal. 
3663
3664 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3665
3666         * gst/gstutils.c: (gst_element_query_position):
3667           No, an element is not a pad.
3668
3669 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3670
3671         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
3672         (gst_bin_get_state):
3673           If a child is removed from a bin while we remove the child from
3674           the bin and while we're retrieving its state, signal this to the
3675           get_state function so we abort the wait (instead of waiting for
3676           a timeout) and can immediately re-iterate over all other elements.
3677
3678 2005-05-12  Wim Taymans  <wim@fluendo.com>
3679
3680         * gst/base/Makefile.am:
3681         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
3682         (gst_basesrc_start):
3683         * gst/base/gstbasesrc.h:
3684         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
3685         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
3686         (gst_pushsrc_init), (gst_pushsrc_create):
3687         * gst/base/gstpushsrc.h:
3688         Added is_seekable to BaseSrc
3689         Added simple PushSrc.
3690
3691 2005-05-11  Wim Taymans  <wim@fluendo.com>
3692
3693         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
3694         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3695         (gst_element_link_pads), (gst_element_query_position),
3696         (gst_element_query_convert), (intersect_caps_func),
3697         (gst_pad_query_position), (gst_pad_query_convert):
3698         Fix refcounting in utils function.
3699         No point in trying to activate a pad when it's added, it could
3700         be added from the state change function and then we deadlock, the
3701         element has to decide what to do.
3702
3703 2005-05-10  Andy Wingo  <wingo@pobox.com>
3704
3705         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
3706         *all* the arguments.
3707
3708         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
3709         stream lock if it's a FLUSH_DONE; normal flushes don't get the
3710         lock (according to the docs -- if this is wrong change the docs).
3711
3712         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
3713         flush messages in the NULL state.
3714
3715         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
3716         message immediately and return.
3717         (gst_bus_set_flushing): New function. If a bus is flushing, it
3718         flushes out any queued messages and immediately unrefs new
3719         messages. This is so when an element goes to NULL, all of the
3720         unhandled messages coming from it can be freed, and their
3721         references to the element dropped. In other words: message source
3722         ref considered harmful :P
3723
3724         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
3725         we're finished with it.
3726
3727         * gst/gstmessage.c (gst_message_new_state_changed): 
3728
3729 2005-05-10  Wim Taymans  <wim@fluendo.com>
3730
3731         * gst/gstvalue.c: (gst_value_compare_flags),
3732         (gst_value_serialize_flags), (gst_value_deserialize_flags),
3733         (_gst_value_initialize):
3734         Added flags serialize/deserialize/compare code.
3735
3736 2005-05-09  Andy Wingo  <wingo@pobox.com>
3737
3738         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
3739         Intersect the peer's caps with our caps.
3740
3741 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3742
3743         * gst/base/gsttypefindhelper.c: (helper_find_peek):
3744         * gst/elements/gsttypefindelement.c: (find_peek):
3745           Handle negative offsets better. Fixes decodebin.
3746
3747 2005-05-09  Wim Taymans  <wim@fluendo.com>
3748
3749         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
3750         (gst_base_transform_event):
3751         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
3752         Implement accept_caps.
3753         Fix silly lock/unlock mismatch in base class.
3754
3755 2005-05-09  Wim Taymans  <wim@fluendo.com>
3756
3757         * docs/design/draft-push-pull.txt:
3758         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
3759         * gst/elements/gstfilesink.c: (gst_filesink_init),
3760         (gst_filesink_query):
3761         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3762         (gst_type_find_handle_src_query), (find_element_get_length):
3763         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
3764         * gst/gstelement.h:
3765         * gst/gstmessage.c:
3766         * gst/gstmessage.h:
3767         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
3768         (gst_real_pad_get_caps_unlocked),
3769         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
3770         (gst_pad_event_default_dispatch), (gst_pad_event_default),
3771         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
3772         (gst_real_pad_dispose), (gst_real_pad_finalize),
3773         (gst_pad_load_and_link), (gst_pad_save_thyself),
3774         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
3775         (gst_pad_check_pull_range), (gst_pad_pull_range),
3776         (gst_pad_template_get_type), (gst_pad_template_class_init),
3777         (gst_pad_template_init), (gst_pad_template_dispose),
3778         (name_is_valid), (gst_static_pad_template_get),
3779         (gst_pad_template_new), (gst_static_pad_template_get_caps),
3780         (gst_pad_template_get_caps), (gst_pad_set_element_private),
3781         (gst_pad_get_element_private), (gst_pad_start_task),
3782         (gst_pad_pause_task), (gst_pad_stop_task),
3783         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
3784         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
3785         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
3786         (gst_ghost_pad_new):
3787         * gst/gstpad.h:
3788         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
3789         (gst_query_new_position), (gst_query_set_position),
3790         (gst_query_parse_position), (gst_query_new_convert),
3791         (gst_query_set_convert), (gst_query_parse_convert):
3792         * gst/gstquery.h:
3793         * gst/gstqueryutils.c:
3794         * gst/gstqueryutils.h:
3795         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3796         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3797         (gst_queue_handle_src_query):
3798         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3799         (gst_element_query_position), (gst_element_query_convert),
3800         (intersect_caps_func), (gst_pad_query_position),
3801         (gst_pad_query_convert):
3802         * gst/gstutils.h:
3803         * tools/gst-inspect.c: (print_pad_info):
3804         * tools/gst-xmlinspect.c: (print_element_info):
3805         Remove old query functions. Ported old code.
3806         Added position/convert helper functions to gstutils.
3807         Reordered gstpad.c code, grouping relevant things.
3808         Remove gst_message_new(), always need to speficy a specific
3809         message.
3810
3811
3812 2005-05-09  Andy Wingo  <wingo@pobox.com>
3813
3814         * gst/gstiterator.h: Add some includes.
3815
3816         * gst/gstqueryutils.h: Include more headers.
3817
3818         * gst/gstpad.h:
3819         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
3820         some uses of gst_pad_query.
3821
3822         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
3823         NULL out parameters.
3824         (gst_query_new_position): New proc, allocates a new position
3825         query.
3826
3827         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
3828         gstqueryutils.c to the build.
3829
3830         * gst/gststructure.c (gst_structure_set_valist): Implement with
3831         the generic G_VALUE_COLLECT.
3832         
3833 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
3834
3835         * gst/Makefile.am: (gst_headers):
3836         Added gstqueryutils.h to the list of headers to install, that was
3837         a 'nachty' move wingo :)
3838
3839 2005-05-06  Andy Wingo  <wingo@pobox.com>
3840
3841         * gst/gstquery.h
3842         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
3843         GstData, init a memchunk.
3844         (standard_definitions): Add a few query types, deprecate a few.
3845         (gst_query_get_type): New proc.
3846         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
3847         implementation.
3848         (gst_query_new_application, gst_query_get_structure): New public
3849         procs.
3850
3851         * docs/design/draft-query.txt: Removed LINKS from the query types,
3852         because all the rest can be dispatched to other pads -- seemed
3853         ugly to have a query that couldn't be dispatched. internal_links
3854         is fine as a pad method.
3855
3856         * gst/gstpad.h: Add query2 as a pad method, add the new functions
3857         in gstpad.c, but maintain binary compatibility for the moment.
3858         Will fix before 0.9 is out.
3859
3860         * gst/gstqueryutils.c: 
3861         * gst/gstqueryutils.h: New files, implement 3 methods for each
3862         query type: parse_query, parse_response, and set. Probably need an
3863         allocator as well.
3864
3865         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
3866
3867         * gst/elements/gstfilesink.c (gst_filesink_query2):
3868         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
3869         query_types, and formats methods.
3870
3871         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
3872         (gst_pad_set_query2_function): New functions.
3873         (gst_real_pad_init): Set query2_default as the default query2
3874         function. Basically just dispatches to internally linked pads.
3875
3876         Needs review!
3877         
3878         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
3879         without using the atomic operations. Only one thread can possibly
3880         be accessing the data at this point. Changed so as to avoid
3881         gst_atomic operations.
3882
3883 2005-05-06  Wim Taymans  <wim@fluendo.com>
3884
3885         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
3886         Also set caps if we use the fallback buffer alloc.
3887
3888 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
3889
3890         * docs/gst/Makefile.am:
3891         * docs/gst/gstreamer-docs.sgml:
3892         * docs/gst/gstreamer-sections.txt:
3893         * docs/gst/tmpl/gstatomic.sgml:
3894         * docs/gst/tmpl/gstmemchunk.sgml:
3895         * testsuite/elements/struct_i386.h:
3896         * win32/GStreamer.vcproj:
3897         * win32/Makefile:
3898           Purge GstAtomic stuff from docs and win32 makefiles as well
3899
3900 2005-05-06  Wim Taymans  <wim@fluendo.com>
3901
3902         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
3903         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
3904         * gst/gstpad.c: (gst_pad_peer_get_caps):
3905         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3906         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
3907         (gst_queue_src_activate), (gst_queue_change_state):
3908         * gst/gstqueue.h:
3909         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3910         (intersect_caps_func):
3911         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
3912         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
3913         Some fixes for the peer_get_caps() change.
3914
3915 2005-05-06  Wim Taymans  <wim@fluendo.com>
3916
3917         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
3918         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
3919         (gst_basesink_activate):
3920         Actually do something with error codes returned from the push
3921         functions.
3922
3923 2005-05-06  Wim Taymans  <wim@fluendo.com>
3924
3925         * docs/design/part-element-sink.txt:
3926         * docs/design/part-element-source.txt:
3927         * gst/base/gstbasesink.c: (gst_basesink_class_init),
3928         (gst_basesink_event), (gst_basesink_activate):
3929         * gst/base/gstbasesink.h:
3930         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
3931         (gst_basesrc_activate):
3932         * gst/base/gstbasesrc.h:
3933         * gst/gstelement.c: (gst_element_pads_activate):
3934         Some more documentation.
3935         Fixed scheduling decision in _pads_activate().
3936
3937 2005-05-05  Andy Wingo  <wingo@pobox.com>
3938
3939         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
3940         the test suite.
3941
3942 2005-05-05  Wim Taymans  <wim@fluendo.com>
3943
3944         * gst/base/Makefile.am:
3945         * gst/base/gstbasesink.h:
3946         * gst/base/gstbasesrc.c: (gst_basesrc_init),
3947         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
3948         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
3949         (gst_collectpads_class_init), (gst_collectpads_init),
3950         (gst_collectpads_finalize), (gst_collectpads_new),
3951         (gst_collectpads_set_function), (gst_collectpads_add_pad),
3952         (find_pad), (gst_collectpads_remove_pad),
3953         (gst_collectpads_is_active), (gst_collectpads_collect),
3954         (gst_collectpads_collect_range), (gst_collectpads_start),
3955         (gst_collectpads_stop), (gst_collectpads_peek),
3956         (gst_collectpads_pop), (gst_collectpads_available),
3957         (gst_collectpads_read), (gst_collectpads_flush),
3958         (gst_collectpads_chain):
3959         * gst/base/gstcollectpads.h:
3960         * gst/elements/Makefile.am:
3961         * gst/elements/gstelements.c:
3962         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
3963         (gst_fakesink_get_times), (gst_fakesink_event),
3964         (gst_fakesink_preroll), (gst_fakesink_render):
3965         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
3966         (gst_filesink_init), (gst_filesink_set_location),
3967         (gst_filesink_open_file), (gst_filesink_close_file),
3968         (gst_filesink_pad_query), (gst_filesink_event),
3969         (gst_filesink_render), (gst_filesink_change_state):
3970         * gst/elements/gstfilesink.h:
3971         Added object to help in making collect pad based elements.
3972         Ported filesink.
3973         Make event function in sink baseclass return gboolean.
3974
3975 2005-05-05  Wim Taymans  <wim@fluendo.com>
3976
3977         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
3978         (gst_bin_get_by_name):
3979         * gst/gstbuffer.h:
3980         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
3981         (gst_clock_finalize):
3982         * gst/gstdata.c: (gst_data_replace):
3983         * gst/gstdata.h:
3984         * gst/gstelement.c: (gst_element_request_pad),
3985         (gst_element_pads_activate):
3986         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
3987         (gst_object_unref):
3988         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
3989         (gst_pad_set_checkgetrange_function),
3990         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
3991         (gst_pad_check_pull_range), (gst_pad_pull_range),
3992         (gst_static_pad_template_get_caps), (gst_pad_start_task),
3993         (gst_pad_pause_task), (gst_pad_stop_task):
3994         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3995         (gst_element_request_pad), (gst_pad_proxy_getcaps):
3996         Fix name lookup in GstBin.
3997         Added _data_replace() function and _buffer_replace()
3998         Use finalize method to clean up clock.
3999         Fix refcounting on request pads.
4000         Fix pad schedule mode error.
4001         Some more object refcounting debug info,
4002
4003
4004 2005-05-04  Andy Wingo <wingo@pobox.com>
4005
4006         * check/Makefile.am:
4007         * docs/gst/tmpl/gstatomic.sgml:
4008         * docs/gst/tmpl/gstplugin.sgml:
4009         * gst/base/gstbasesink.c: (gst_basesink_activate):
4010         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
4011         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
4012         (gst_basesrc_query), (gst_basesrc_set_property),
4013         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
4014         (gst_basesrc_activate):
4015         * gst/base/gstbasesrc.h:
4016         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
4017         (gst_base_transform_src_activate):
4018         * gst/elements/gstelements.c:
4019         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4020         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
4021         * gst/elements/gsttee.c: (gst_tee_sink_activate):
4022         * gst/elements/gsttypefindelement.c: (find_element_get_length),
4023         (gst_type_find_element_checkgetrange),
4024         (gst_type_find_element_activate):
4025         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
4026         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
4027         (gst_caps_load_thyself):
4028         * gst/gstelement.c: (gst_element_pads_activate),
4029         (gst_element_save_thyself), (gst_element_restore_thyself):
4030         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
4031         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
4032         * gst/gstpad.h:
4033         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
4034         (gst_xml_parse_file), (gst_xml_parse_memory),
4035         (gst_xml_get_element), (gst_xml_make_element):
4036         * gst/indexers/gstfileindex.c: (gst_file_index_load),
4037         (_file_index_id_save_xml), (gst_file_index_commit):
4038         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
4039         (read_enum), (load_pad_template), (load_feature), (load_plugin),
4040         (load_paths):
4041         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
4042         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
4043         * tools/gst-complete.c: (main):
4044         * tools/gst-compprep.c: (main):
4045         * tools/gst-inspect.c: (print_element_properties_info):
4046         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
4047         * tools/gst-xmlinspect.c: (print_element_properties):
4048         GCC 4 fixen.
4049         
4050 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4051
4052         * gst/gstplugin.c: (gst_plugin_check_module),
4053         (gst_plugin_check_file), (gst_plugin_load_file):
4054             apply patch from #172526 to make register work on MacOSX
4055
4056 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4057
4058         * docs/gst/tmpl/gstconfig.sgml:
4059         * gst/gstconfig.h.in:
4060           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
4061         * testsuite/debug/printf_extension.c: (main):
4062           Do not use GST_PTR_FORMAT on pointers to types with
4063           sizeof < sizeof(gpointer).  Fixes test on 64-bit
4064         * testsuite/elements/property.h:
4065           use correct printf format
4066
4067 2005-05-02  Wim Taymans  <wim@fluendo.com>
4068
4069         * docs/design/draft-push-pull.txt:
4070         * docs/design/draft-query.txt:
4071         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
4072         (gst_basesrc_start):
4073         Added draft for new query API.
4074         Added draft for better selecting scheduling methods.
4075         Make basesrc ignore length if the subclass does not support
4076         it.
4077
4078 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4079
4080         * gst/Makefile.am:
4081           possible fixes for automake-1.5 - _LIBADD is reserved
4082
4083 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
4084
4085         * docs/faq/Makefile.am:
4086         * docs/manual/Makefile.am:
4087         * docs/manuals.mak:
4088         * docs/pwg/Makefile.am:
4089         * gst/Makefile.am:
4090           possible fixes for automake-1.5
4091
4092 2005-04-28  Wim Taymans  <wim@fluendo.com>
4093
4094         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4095         (gst_basesink_pad_getcaps), (gst_basesink_init),
4096         (gst_basesink_do_sync):
4097         * gst/gstclock.c: (gst_clock_entry_new):
4098         * gst/gstevent.c: (gst_event_discont_get_value):
4099         * gst/gstpipeline.c: (pipeline_bus_handler),
4100         (gst_pipeline_change_state):
4101         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
4102         Better debugging of clocking info.
4103         Allow NULL values when getting discont values.
4104
4105 2005-04-27  Wim Taymans  <wim@fluendo.com>
4106
4107         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
4108         * check/gst/gstpad.c: (gst_pad_suite):
4109         Increase timeout for checks.
4110
4111 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
4112
4113         * check/Makefile.am:
4114           fix the broken rule for cleanup.  Apparently this rule is
4115           only needed on FC2, so maybe this warrants further autotool
4116           inspection.
4117
4118 2005-04-26  Wim Taymans  <wim@fluendo.com>
4119
4120         * gst/gsttrashstack.h:
4121         Ooohh. a nasty one! After having a failed pop() from the stack,
4122         it's possible that the stack is empty. In that case, don't
4123         follow the NULL pointer.
4124
4125 2005-04-25  Wim Taymans  <wim@fluendo.com>
4126
4127         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4128         (gst_pad_set_checkgetrange_function),
4129         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
4130         (gst_pad_check_pull_range), (gst_pad_pull_range),
4131         (gst_static_pad_template_get_caps), (gst_pad_start_task),
4132         (gst_pad_pause_task), (gst_pad_stop_task):
4133         * gst/gstplugin.c: (gst_plugin_load):
4134         * gst/gstplugin.h:
4135         Remove gst_library_load as it does more harm than good with
4136         the new g_module flags.
4137         Revert bogus caps template check in pad linking, pad caps
4138         are important when linking not the template, which is more
4139         general than the current caps.
4140
4141 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4142
4143         * gst/autoplug/.cvsignore:
4144         * gst/autoplug/Makefile.am:
4145         * gst/autoplug/gstsearchfuncs.c:
4146         * gst/autoplug/gstsearchfuncs.h:
4147         * gst/autoplug/gstspider.c:
4148         * gst/autoplug/gstspider.h:
4149         * gst/autoplug/gstspideridentity.c:
4150         * gst/autoplug/gstspideridentity.h:
4151         * gst/autoplug/spidertest.c:
4152           Die, spider, die.
4153
4154 2005-04-25  Wim Taymans  <wim@fluendo.com>
4155
4156         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4157         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4158         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
4159         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
4160         * gst/gstpad.h:
4161         Added stubs for unimplemented functions. 
4162
4163 2005-04-24  David Schleef  <ds@schleef.org>
4164
4165         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
4166         please fix.
4167
4168 2005-04-24  David Schleef  <ds@schleef.org>
4169
4170         Convert everything from GstAtomicInt to g_atomic_int_*, and
4171         remove gstatomic.
4172         * gst/Makefile.am:
4173         * gst/gstatomic.c:
4174         * gst/gstatomic.h:
4175         * gst/gstatomic_impl.h:
4176         * gst/gstbuffer.c:
4177         * gst/gstcaps.c:
4178         * gst/gstcaps.h:
4179         * gst/gstclock.c:
4180         * gst/gstclock.h:
4181         * gst/gstdata.c:
4182         * gst/gstdata.h:
4183         * gst/gstdata_private.h:
4184         * gst/gstevent.c:
4185         * gst/gstinfo.c:
4186         * gst/gstinfo.h:
4187         * gst/gstmessage.c:
4188         * gst/gstobject.c:
4189         * gst/gstobject.h:
4190         * gst/gststructure.c:
4191         * gst/gststructure.h:
4192         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
4193         * gst/gstutils.h:
4194
4195 2005-04-24  David Schleef  <ds@schleef.org>
4196
4197         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
4198         make the regressions tests work.  Remove some code that is no
4199         longer true.
4200         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
4201         Disable warning for pads without templates.
4202
4203 2005-04-24  David Schleef  <ds@schleef.org>
4204
4205         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
4206         functions that handle filtered links.
4207         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
4208         removed functions.
4209         * gst/gstutils.c: Fix/remove utility functions that handle
4210         filtered caps.
4211         * gst/gstutils.h:
4212         * gst/gstvalue.c: Add serialization/deserialization of caps
4213         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
4214         requires fixing so that the filter caps notation creates
4215         a capsfilter element and sets the filter_caps property.  I
4216         think everyone probably wants to keep the shorthand notation.
4217         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
4218         * docs/gst/tmpl/gstpad.sgml:
4219
4220         * gst/elements/gstelements.c: Register capsfilter element.
4221         * gst/Makefile.am: fix spacing
4222         * docs/random/ds/0.9-suggested-changes: random
4223
4224 2005-04-23  David Schleef  <ds@schleef.org>
4225
4226         * gst/elements/Makefile.am:
4227         * gst/elements/gstcapsfilter.c: New element that acts like an
4228         identity, but filters caps.  Will eventually replace filtered
4229         caps in pad linking.
4230         * gst/gstutils.c: (gst_element_create_all_pads): New function
4231         to create all the ALWAYS pads that are registered with an
4232         element class.  This functionality should eventually be
4233         merged in with GstElement initialization.
4234         * gst/gstutils.h:
4235         * testsuite/trigger/README: part of trigger test code that should
4236         have been checked in a long time ago.
4237
4238 2005-04-23  David Schleef  <ds@schleef.org>
4239
4240         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
4241         needed with new versions of libtool (nobody will confirm this),
4242         and hard to carry around.
4243         * gst/autoplug/Makefile.am:
4244         * gst/base/Makefile.am:
4245         * gst/elements/Makefile.am:
4246         * gst/indexers/Makefile.am:
4247         * gst/schedulers/Makefile.am:
4248         * libs/gst/bytestream/Makefile.am:
4249         * libs/gst/control/Makefile.am:
4250         * libs/gst/dataprotocol/Makefile.am:
4251         * libs/gst/getbits/Makefile.am:
4252
4253 2005-04-21  Wim Taymans  <wim@fluendo.com>
4254
4255         * docs/design/draft-push-pull.txt:
4256         * docs/design/part-MT-refcounting.txt:
4257         * docs/design/part-TODO.txt:
4258         * docs/design/part-caps.txt:
4259         * docs/design/part-events.txt:
4260         * docs/design/part-gstbus.txt:
4261         * docs/design/part-gstpipeline.txt:
4262         * docs/design/part-messages.txt:
4263         * docs/design/part-push-pull.txt:
4264         * docs/design/part-query.txt:
4265         Some more docs.
4266
4267 2005-04-21  Wim Taymans  <wim@fluendo.com>
4268
4269         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
4270         (gst_message_new), (gst_message_new_error),
4271         (gst_message_new_warning), (gst_message_new_tag),
4272         (gst_message_new_state_changed), (gst_message_new_application),
4273         (gst_message_get_structure):
4274         * gst/gstmessage.h:
4275         * gst/gststructure.c: (gst_structure_set_parent_refcount),
4276         (gst_structure_copy_conditional):
4277         Use parent refcount in GstMessage to ensure GstStructure
4278         consistency.
4279         Cleaned up headers a bit.
4280         
4281
4282 2005-04-20  Wim Taymans  <wim@fluendo.com>
4283
4284         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4285         (gst_basesink_pad_getcaps), (gst_basesink_init),
4286         (gst_basesink_chain_unlocked):
4287         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
4288         (gst_type_find_helper):
4289         * gst/elements/gsttypefindelement.c:
4290         (gst_type_find_element_have_type), (gst_type_find_element_init),
4291         (stop_typefinding), (gst_type_find_element_handle_event),
4292         (find_suggest), (gst_type_find_element_chain),
4293         (gst_type_find_element_checkgetrange),
4294         (gst_type_find_element_getrange), (do_typefind),
4295         (gst_type_find_element_activate):
4296         * gst/gstbuffer.c: (_gst_buffer_sub_free),
4297         (gst_buffer_default_free), (gst_buffer_default_copy),
4298         (gst_buffer_set_caps):
4299         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
4300         (gst_caps_replace):
4301         * gst/gstmessage.c: (gst_message_new),
4302         (gst_message_new_state_changed):
4303         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4304         (gst_pad_set_checkgetrange_function),
4305         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
4306         (gst_pad_set_caps), (gst_pad_check_pull_range),
4307         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
4308         * gst/gstpad.h:
4309         * gst/gsttypefind.c: (gst_type_find_register):
4310         Make gst_caps_replace() work like other _replace() functions.
4311         Use _caps_replace() where possible.
4312         Make sure _message_new() initialises its field.
4313         Add gst_static_pad_template_get_caps()
4314
4315
4316 2005-04-18  Andy Wingo  <wingo@pobox.com>
4317
4318         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
4319         on the peer, not the pad. I think that was a typo. Pass an extra
4320         arg to see if random access is possible. Activate the pads as
4321         PULL_RANGE if possible.
4322
4323         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
4324
4325         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
4326         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
4327         to PROP_....
4328
4329 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4330
4331         * docs/faq/using.xml:
4332           Add note on gstreamer-properties (#154996).
4333
4334 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4335
4336         * docs/random/bbb/optional-properties:
4337           Some analysis on optional properties.
4338
4339 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4340
4341         * docs/gst/tmpl/gstelementfactory.sgml:
4342         * gst/gstelement.h:
4343         * gst/gstelementfactory.c: (gst_element_factory_init),
4344         (gst_element_factory_cleanup), (gst_element_register),
4345         (__gst_element_factory_add_static_pad_template),
4346         (gst_element_factory_get_static_pad_templates),
4347         (gst_element_factory_can_src_caps),
4348         (gst_element_factory_can_sink_caps):
4349         * gst/registries/Makefile.am:
4350         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
4351         (gst_xml_registry_class_init), (gst_xml_registry_init),
4352         (gst_xml_registry_new), (gst_xml_registry_set_property),
4353         (gst_xml_registry_get_property), (get_time), (make_dir),
4354         (gst_xml_registry_get_perms_func),
4355         (plugin_times_older_than_recurse), (plugin_times_older_than),
4356         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
4357         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
4358         (add_to_char_array), (read_string), (read_uint), (read_enum),
4359         (load_pad_template), (load_feature), (load_plugin), (load_paths),
4360         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
4361         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
4362         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
4363         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
4364         (gst_xml_registry_rebuild):
4365         * gst/registries/gstlibxmlregistry.h:
4366         * tools/gst-compprep.c: (main):
4367         * tools/gst-inspect.c: (print_pad_templates_info):
4368         * tools/gst-xmlinspect.c: (print_element_info):
4369           Use libxml2 for registry parsing, use staticpadtemplates in
4370           elementfactories. Makes gst_init() +/- 10x faster.
4371
4372 2005-04-12  Wim Taymans  <wim@fluendo.com>
4373
4374         * gst/base/Makefile.am:
4375         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4376         (gst_basesink_pad_getcaps), (gst_basesink_init),
4377         (gst_basesink_event), (gst_basesink_change_state):
4378         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4379         (gst_basesrc_init), (gst_basesrc_query),
4380         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4381         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4382         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4383         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4384         (gst_basesrc_stop), (gst_basesrc_activate),
4385         (gst_basesrc_change_state):
4386         * gst/base/gsttypefindhelper.c: (helper_find_peek),
4387         (helper_find_suggest), (gst_type_find_helper):
4388         * gst/base/gsttypefindhelper.h:
4389         * gst/elements/Makefile.am:
4390         * gst/elements/gstelements.c:
4391         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
4392         (gst_fakesink_get_times), (gst_fakesink_event),
4393         (gst_fakesink_preroll), (gst_fakesink_render):
4394         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4395         (gst_fakesrc_init), (gst_fakesrc_event_handler),
4396         (gst_fakesrc_get_property), (gst_fakesrc_create),
4397         (gst_fakesrc_start), (gst_fakesrc_stop):
4398         * gst/elements/gstfakesrc.h:
4399         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
4400         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4401         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4402         (gst_filesrc_create_read), (gst_filesrc_create),
4403         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
4404         (gst_filesrc_start):
4405         * gst/elements/gsttypefindelement.c:
4406         (gst_type_find_element_have_type), (gst_type_find_element_init),
4407         (start_typefinding), (stop_typefinding), (push_buffer_store),
4408         (gst_type_find_element_handle_event),
4409         (gst_type_find_element_chain),
4410         (gst_type_find_element_checkgetrange),
4411         (gst_type_find_element_getrange), (do_typefind),
4412         (gst_type_find_element_activate),
4413         (gst_type_find_element_change_state):
4414         * gst/elements/gsttypefindelement.h:
4415         * gst/gstpipeline.c: (pipeline_bus_handler):
4416         Added typefind helper.
4417         Small preroll fix in the base sink.
4418         Disable typefind code in basesrc.
4419         Crude port of typefindelement.
4420         Fakesrc cleanups.
4421
4422
4423 2005-04-11  Wim Taymans  <wim@fluendo.com>
4424
4425         * check/gst/gstbus.c: (gstbus_suite):
4426         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
4427         * check/gstcheck.h:
4428           Fix up the timeout so that the test does not fail.
4429
4430 2005-04-06  Wim Taymans  <wim@fluendo.com>
4431
4432         * gst/base/README:
4433         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4434         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
4435         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
4436         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
4437         (gst_basesrc_check_get_range), (gst_basesrc_loop),
4438         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
4439         (gst_basesrc_stop), (gst_basesrc_activate),
4440         (gst_basesrc_change_state), (basesrc_find_peek),
4441         (basesrc_find_suggest), (gst_basesrc_type_find):
4442         * gst/base/gstbasesrc.h:
4443         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4444         (gst_filesrc_class_init), (gst_filesrc_init),
4445         (gst_filesrc_finalize), (gst_filesrc_set_location),
4446         (gst_filesrc_set_property), (gst_filesrc_get_property),
4447         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
4448         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
4449         (gst_filesrc_create_read), (gst_filesrc_create),
4450         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
4451         * gst/elements/gstfilesrc.h:
4452         * gst/gstelement.c: (gst_element_get_state_func),
4453         (gst_element_lost_state), (gst_element_pads_activate):
4454         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4455         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
4456         (gst_pad_pull_range):
4457         * gst/gstpad.h:
4458         More work on the generic source base class, implement seeking,
4459         query.
4460         Make filesrc extend the base source class.
4461         Added gst_pad_set_checkgetrange_function to GstPad.
4462
4463 2005-04-06  Andy Wingo  <wingo@pobox.com>
4464
4465         * pkgconfig/gstreamer-base.pc.in:
4466         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
4467
4468         * pkgconfig/Makefile.am:
4469         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
4470
4471 2005-04-04  Wim Taymans  <wim@fluendo.com>
4472
4473         * gst/base/Makefile.am:
4474         * gst/base/README:
4475         * gst/base/gstbasesink.c: (gst_basesink_base_init),
4476         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4477         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4478         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
4479         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
4480         (gst_basesrc_base_init), (gst_basesrc_class_init),
4481         (gst_basesrc_init), (gst_basesrc_get_formats),
4482         (gst_basesrc_get_query_types), (gst_basesrc_query),
4483         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
4484         (gst_basesrc_set_property), (gst_basesrc_get_property),
4485         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
4486         (gst_basesrc_loop), (gst_basesrc_activate),
4487         (gst_basesrc_change_state):
4488         * gst/base/gstbasesrc.h:
4489         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4490         (gst_fakesrc_class_init), (gst_fakesrc_init),
4491         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
4492         (gst_fakesrc_get_property), (gst_fakesrc_create):
4493         * gst/elements/gstfakesrc.h:
4494         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
4495         (gst_filesrc_open_file), (gst_filesrc_loop),
4496         (gst_filesrc_activate), (filesrc_find_peek),
4497         (gst_filesrc_type_find):
4498         Made base source class, make fakesrc extend it.
4499         Add comments to basesink class.
4500         Some filesrc cleanup.
4501
4502 2005-03-31  David Schleef  <ds@schleef.org>
4503
4504         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
4505         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
4506         expected to link against libgstreamer.
4507         * gst/base/Makefile.am: link against libgstreamer
4508         * gst/elements/Makefile.am: same
4509
4510 2005-03-31  Andy Wingo  <wingo@pobox.com>
4511
4512         * tests/instantiate/Makefile.am:
4513         * tests/instantiate/caps.c: Add test to test speed of caps copy
4514         and free.
4515
4516         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
4517         GMemChunk to be fair.
4518
4519         * gst/gsttrashstack.h: Remove warning about using the fallback
4520         trash stack implementation, it's still faster than malloc.
4521
4522 2005-03-30  Andy Wingo  <wingo@pobox.com>
4523
4524         * tests/complexity.c: Add a copyright.
4525
4526 2005-03-31  Wim Taymans  <wim@fluendo.com>
4527
4528         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
4529         (gst_base_transform_class_init), (gst_base_transform_init),
4530         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
4531         (gst_base_transform_get_property),
4532         (gst_base_transform_sink_activate),
4533         (gst_base_transform_src_activate),
4534         (gst_base_transform_change_state):
4535         * gst/base/gstbasetransform.h:
4536         * gst/elements/gstidentity.c: (gst_identity_class_init),
4537         (gst_identity_event), (gst_identity_check_perfect),
4538         (gst_identity_transform), (gst_identity_start),
4539         (gst_identity_stop):
4540         Added start/stop methods to transform base class so subclasses 
4541         don't need to deal with state changes even.
4542
4543 2005-03-31  Wim Taymans  <wim@fluendo.com>
4544
4545         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
4546         (gst_event_new_discontinuous), (gst_event_discont_get_value):
4547         * gst/gstevent.h:
4548         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4549         (gst_pad_pull_range):
4550         Added rate to the discont event to prepare for variable speed
4551         and reverse playback.
4552
4553 2005-03-29  David Schleef  <ds@schleef.org>
4554
4555         * configure.ac:
4556         * testsuite/trigger/Makefile.am:
4557         * testsuite/trigger/trigger.c: A little example program to show
4558         how trigger-based elements can work.
4559
4560 2005-03-29  Wim Taymans  <wim@fluendo.com>
4561
4562         * gst/base/Makefile.am:
4563         * gst/base/README:
4564         * gst/base/gstbasesink.c: (gst_basesink_get_type),
4565         (gst_basesink_base_init), (gst_basesink_class_init),
4566         (gst_basesink_pad_getcaps), (gst_basesink_init),
4567         (gst_basesink_activate), (gst_basesink_change_state):
4568         * gst/base/gstbasesink.h:
4569         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
4570         (gst_base_transform_base_init), (gst_base_transform_finalize),
4571         (gst_base_transform_class_init), (gst_base_transform_init),
4572         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
4573         (gst_base_transform_event), (gst_base_transform_getrange),
4574         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
4575         (gst_base_transform_set_property),
4576         (gst_base_transform_get_property),
4577         (gst_base_transform_sink_activate),
4578         (gst_base_transform_src_activate),
4579         (gst_base_transform_change_state):
4580         * gst/base/gstbasetransform.h:
4581         * gst/elements/gstidentity.c: (gst_identity_finalize),
4582         (gst_identity_class_init), (gst_identity_init),
4583         (gst_identity_event), (gst_identity_check_perfect),
4584         (gst_identity_transform), (gst_identity_set_property),
4585         (gst_identity_get_property), (gst_identity_change_state):
4586         * gst/elements/gstidentity.h:
4587         * gst/gstelement.c: (gst_element_get_state_func),
4588         (gst_element_lost_state), (gst_element_pads_activate):
4589         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
4590         (gst_pad_check_pull_range), (gst_pad_pull_range):
4591         * gst/gstpad.h:
4592         Simplify pad activation.
4593         Added function to check if pull_range can be performed.
4594         Error out when pulling inactive or flushing pads.
4595         Removed const from refcounted types as it does not make sense.
4596         Simplify pad templates in basesink
4597         Added base class for simple 1-to-1 transforms.
4598         Make identity subclass the base transform.
4599
4600 2005-03-29  Andy Wingo  <wingo@pobox.com>
4601
4602         * docs/libs/gstreamer-libs-overrides.txt: 
4603         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
4604         really don't understand what's going on, but like whatever. I want
4605         green buildbot!
4606
4607         * docs/gst/Makefile.am:
4608         * docs/libs/Makefile.am: Dist the overrides files.
4609
4610         * check/Makefile.am (clean-local): Remove .libs directories.
4611
4612         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
4613         elements to EXTRA_DIST, so po/ files are happy.
4614
4615         * po/POTFILES.in: Er, remove it here.
4616
4617         * po/POTFILES: Remove gstspider.c.
4618
4619         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
4620
4621         * docs/libs/gstreamer-libs-docs.sgml: 
4622         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
4623         bytestream.
4624
4625         * tests/complexity.c (main): Set the length of the preroll queue
4626         on the sinks to prevent a lockup.
4627
4628         * libs/gst/dataprotocol/Makefile.am: 
4629         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
4630         the same as the one in check/gst-libs/gdp.c.
4631
4632         * po/, docs/gst/: Commit automatic changes to docs and po files.
4633
4634         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
4635         the versioned libgstbase.
4636
4637         * check/Makefile.am: Depend on an unversioned gst-register, seems
4638         to make autoconf happier.
4639
4640         * gst/base/Makefile.am: Make libgstbase a versioned lib.
4641
4642 2005-03-28  Wim Taymans  <wim@fluendo.com>
4643
4644         * configure.ac:
4645         * docs/design/part-gstelement.txt:
4646         * docs/design/part-negotiation.txt:
4647         * docs/design/part-preroll.txt:
4648         * docs/design/part-scheduling.txt:
4649         * docs/design/part-states.txt:
4650         * gst/Makefile.am:
4651         * gst/base/Makefile.am:
4652         * gst/base/README:
4653         * gst/base/gstbasesink.c: (gst_basesink_get_template),
4654         (gst_basesink_base_init), (gst_basesink_class_init),
4655         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
4656         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
4657         (gst_basesink_set_pad_functions),
4658         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
4659         (gst_basesink_set_property), (gst_basesink_get_property),
4660         (gst_base_sink_get_template), (gst_base_sink_get_caps),
4661         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
4662         (gst_basesink_preroll_queue_push),
4663         (gst_basesink_preroll_queue_empty),
4664         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
4665         (gst_basesink_event), (gst_basesink_get_times),
4666         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
4667         (gst_basesink_chain_unlocked), (gst_basesink_chain),
4668         (gst_basesink_loop), (gst_basesink_activate),
4669         (gst_basesink_change_state):
4670         * gst/base/gstbasesink.h:
4671         * gst/elements/Makefile.am:
4672         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4673         (gst_fakesink_class_init), (gst_fakesink_init),
4674         (gst_fakesink_set_property), (gst_fakesink_get_property),
4675         (gst_fakesink_get_times), (gst_fakesink_event),
4676         (gst_fakesink_preroll), (gst_fakesink_render),
4677         (gst_fakesink_change_state):
4678         * gst/elements/gstfakesink.h:
4679         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4680         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
4681         * gst/gstelement.c: (gst_element_add_pad),
4682         (gst_element_get_state_func), (gst_element_abort_state),
4683         (gst_element_commit_state), (gst_element_lost_state),
4684         (gst_element_set_state), (gst_element_pads_activate):
4685         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
4686         * gst/gstpipeline.c: (gst_pipeline_send_event),
4687         (gst_pipeline_change_state):
4688         Added state change code.
4689         Added/updated docs.
4690         Added sink base class, make fakesink extend the base class.
4691         Small cleanups in GstPipeline.
4692
4693 2005-03-26  David Schleef  <ds@schleef.org>
4694
4695         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
4696         is broken and should be implemented in a different library.
4697         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
4698         * gst/gst.h: remove gstcpu.h
4699         * gst/gstcpu.c: remove
4700         * gst/gstcpu.h: remove
4701         * gst/Makefile.am.future: Remove this file.  It's ancient.
4702
4703 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4704
4705         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
4706         (gst_bin_send_event):
4707           Add default event/set_manager handlers. The set_manager handler
4708           takes care that the manager is distributed over kids that were
4709           already in the bin before the manager was set. The event handler
4710           is a utility virtual function that sends the event over all sinks,
4711           so that gst_element_send_event (bin, event); has the expected
4712           behaviour.
4713         * gst/gstpad.c: (gst_pad_event_default):
4714           Re-install default event handling for discontinuities, so that
4715           seeking works without requiring hacks in applications or extra
4716           code in sinks.
4717         * gst/gstpipeline.c: (gst_pipeline_class_init),
4718         (gst_pipeline_send_event):
4719           Half hack, half utility: set a pipeline to PAUSED for seek events,
4720           since that is the only way we can guarantee a/v sync. Means that
4721           you can do gst_element_seek (pipeline, method, pos); on a pipeline
4722           and it "just works".
4723
4724 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4725
4726         * gst/gstpipeline.c: (gst_pipeline_use_clock):
4727           Lock/unlock mismatch.
4728
4729 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4730
4731         * docs/faq/gst-uninstalled:
4732           add gst-plugins-base
4733         * docs/gst/Makefile.am:
4734           don't error out until docs are fixed
4735         * docs/gst/gstreamer.types:
4736           remove thread
4737
4738 2005-03-22  Wim Taymans  <wim@fluendo.com>
4739
4740         * check/Makefile.am:
4741         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
4742         * gst/gststructure.c: (gst_structure_set_valist),
4743         (gst_structure_copy_conditional):
4744         Activated more tests.
4745         Added message test.
4746         Added G_TYPE_POINTER to GstStructure.
4747         
4748
4749 2005-03-22  Wim Taymans  <wim@fluendo.com>
4750
4751         * docs/design/part-TODO.txt:
4752         * docs/design/part-events.txt:
4753         * docs/design/part-gstbin.txt:
4754         * docs/design/part-gstbus.txt:
4755         * docs/design/part-gstpipeline.txt:
4756         * docs/design/part-messages.txt:
4757         * gst/gstbus.c:
4758         * gst/gstmessage.c:
4759         Docs updates
4760
4761 2005-03-21  Wim Taymans  <wim@fluendo.com>
4762
4763         * gst/gstbus.c: (gst_bus_post):
4764         Fix copy-and-paste error.
4765
4766 2005-03-21  Wim Taymans  <wim@fluendo.com>
4767
4768         * check/Makefile.am:
4769         * gst/Makefile.am:
4770         * gst/elements/Makefile.am:
4771         * gst/elements/gstelements.c:
4772         * gst/elements/gstfakesink.c: (gst_fakesink_init),
4773         (gst_fakesink_event), (gst_fakesink_chain):
4774         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4775         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
4776         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
4777         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
4778         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4779         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
4780         (gst_fakesrc_loop), (gst_fakesrc_activate),
4781         (gst_fakesrc_change_state):
4782         * gst/elements/gstfakesrc.h:
4783         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
4784         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
4785         (gst_filesrc_open_file), (gst_filesrc_loop),
4786         (gst_filesrc_activate), (gst_filesrc_change_state),
4787         (filesrc_find_peek), (filesrc_find_suggest),
4788         (gst_filesrc_type_find):
4789         * gst/elements/gstidentity.c: (gst_identity_finalize),
4790         (gst_identity_class_init), (gst_identity_init),
4791         (gst_identity_proxy_getcaps), (identity_queue_push),
4792         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
4793         (gst_identity_getrange), (gst_identity_chain),
4794         (gst_identity_sink_loop), (gst_identity_src_loop),
4795         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
4796         (gst_identity_set_property), (gst_identity_get_property),
4797         (gst_identity_change_state):
4798         * gst/elements/gstidentity.h:
4799         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
4800         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
4801         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
4802         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
4803         (gst_tee_sink_activate):
4804         * gst/elements/gsttee.h:
4805         * gst/gst.c: (gst_register_core_elements), (init_post):
4806         * gst/gst.h:
4807         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
4808         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
4809         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
4810         (gst_bin_change_state):
4811         * gst/gstbin.h:
4812         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
4813         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
4814         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
4815         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
4816         (gst_bus_set_sync_handler), (gst_bus_create_watch),
4817         (bus_watch_callback), (bus_watch_destroy),
4818         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
4819         (poll_timeout), (gst_bus_poll):
4820         * gst/gstbus.h:
4821         * gst/gstcaps.h:
4822         * gst/gstdata.h:
4823         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
4824         (gst_element_post_message), (gst_element_message_full),
4825         (gst_element_get_state_func), (gst_element_get_state),
4826         (gst_element_abort_state), (gst_element_commit_state),
4827         (gst_element_lost_state), (gst_element_set_state),
4828         (gst_element_pads_activate), (gst_element_change_state),
4829         (gst_element_dispose), (gst_element_set_manager_func),
4830         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
4831         (gst_element_set_manager), (gst_element_get_manager),
4832         (gst_element_set_bus), (gst_element_get_bus),
4833         (gst_element_set_scheduler), (gst_element_get_scheduler):
4834         * gst/gstelement.h:
4835         * gst/gstevent.c: (gst_event_new_segment_seek),
4836         (gst_event_new_flush):
4837         * gst/gstevent.h:
4838         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
4839         (_gst_message_free), (gst_message_get_type), (gst_message_new),
4840         (gst_message_new_eos), (gst_message_new_error),
4841         (gst_message_new_warning), (gst_message_new_tag),
4842         (gst_message_new_state_changed), (gst_message_new_application),
4843         (gst_message_get_structure), (gst_message_parse_tag),
4844         (gst_message_parse_state_changed), (gst_message_parse_error),
4845         (gst_message_parse_warning):
4846         * gst/gstmessage.h:
4847         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
4848         (gst_real_pad_set_property), (gst_pad_set_active),
4849         (gst_pad_is_active), (gst_pad_set_blocked_async),
4850         (gst_pad_set_blocked), (gst_pad_is_blocked),
4851         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
4852         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
4853         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
4854         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
4855         (gst_pad_link_filtered), (gst_pad_relink_filtered),
4856         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
4857         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
4858         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
4859         (gst_pad_set_caps), (gst_pad_configure_sink),
4860         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
4861         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
4862         (gst_real_pad_dispose), (gst_real_pad_finalize),
4863         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
4864         (gst_pad_event_default_dispatch), (gst_pad_event_default),
4865         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
4866         * gst/gstpad.h:
4867         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
4868         (pipeline_bus_handler), (gst_pipeline_change_state),
4869         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
4870         * gst/gstpipeline.h:
4871         * gst/gstprobe.h:
4872         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
4873         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
4874         (gst_queue_link_src), (gst_queue_bufferalloc),
4875         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
4876         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
4877         (gst_queue_loop), (gst_queue_handle_src_event),
4878         (gst_queue_handle_src_query), (gst_queue_src_activate),
4879         (gst_queue_change_state):
4880         * gst/gstqueue.h:
4881         * gst/gstscheduler.c: (gst_scheduler_init),
4882         (gst_scheduler_dispose), (gst_scheduler_create_task),
4883         (gst_scheduler_factory_create):
4884         * gst/gstscheduler.h:
4885         * gst/gststructure.c: (gst_structure_get_type),
4886         (gst_structure_copy_conditional):
4887         * gst/gststructure.h:
4888         * gst/gsttaginterface.h:
4889         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
4890         (gst_task_init), (gst_task_dispose), (gst_task_create),
4891         (gst_task_get_state), (gst_task_start), (gst_task_stop),
4892         (gst_task_pause):
4893         * gst/gsttask.h:
4894         * gst/gstthread.c:
4895         * gst/gstthread.h:
4896         * gst/gsttypes.h:
4897         * gst/schedulers/Makefile.am:
4898         * gst/schedulers/cothreads_compat.h:
4899         * gst/schedulers/entryscheduler.c:
4900         * gst/schedulers/faircothreads.c:
4901         * gst/schedulers/faircothreads.h:
4902         * gst/schedulers/fairscheduler.c:
4903         * gst/schedulers/gstbasicscheduler.c:
4904         * gst/schedulers/gstoptimalscheduler.c:
4905         * gst/schedulers/gthread-cothreads.h:
4906         * gst/schedulers/threadscheduler.c:
4907         (gst_thread_scheduler_task_get_type),
4908         (gst_thread_scheduler_task_class_init),
4909         (gst_thread_scheduler_task_init),
4910         (gst_thread_scheduler_task_start),
4911         (gst_thread_scheduler_task_stop),
4912         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
4913         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
4914         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
4915         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
4916         (plugin_init):
4917         * libs/gst/Makefile.am:
4918         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
4919         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
4920         (gst_file_pad_parent_set):
4921         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
4922         (gst_dp_event_from_packet):
4923         * tests/complexity.c: (main):
4924         * tests/mass_elements.c: (main):
4925         * testsuite/states/locked.c: (message_received), (main):
4926         * testsuite/states/parent.c: (main):
4927         * tools/gst-inspect.c: (print_element_flag_info),
4928         (print_implementation_info), (print_pad_info):
4929         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
4930         (main):
4931         * tools/gst-md5sum.c: (event_loop), (main):
4932         * tools/gst-typefind.c: (main):
4933         * tools/gst-xmlinspect.c: (print_element_info):
4934         Next big merge.
4935         Added GstBus for mainloop integration.
4936         Added GstMessage for sending notifications on the bus.
4937         Added GstTask as an abstraction for pipeline entry points.
4938         Removed GstThread.
4939         Removed Schedulers.
4940         Simplified GstQueue for multithreaded core.
4941         Made _link threadsafe, removed old capsnego.
4942         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
4943         Added pad blocking functions.
4944         Reworked scheduling functions in GstPad to prepare for
4945         scheduling updates soon.
4946         Moved events out of data stream.
4947         Simplified GstEvent types.
4948         Added return values to push/pull.
4949         Removed clocking from GstElement.
4950         Added prototypes for state change function for next merge.
4951         Removed iterate from bins and state change management.
4952         Fixed some elements, disabled others for now.
4953         Fixed -inspect and -launch.
4954         Added check for GstBus.
4955
4956 2005-03-10  Wim Taymans  <wim@fluendo.com>
4957
4958         * docs/design/part-MT-refcounting.txt:
4959         * docs/design/part-clocks.txt:
4960         * docs/design/part-gstelement.txt:
4961         * docs/design/part-gstobject.txt:
4962         * docs/design/part-standards.txt:
4963         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
4964         (gst_bin_remove_func), (gst_bin_remove):
4965         * gst/gstbin.h:
4966         * gst/gstbuffer.c:
4967         * gst/gstcaps.h:
4968         * testsuite/clock/clock1.c: (main):
4969         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
4970         (main):
4971         * testsuite/dlopen/loadgst.c: (do_test):
4972         * testsuite/refcounting/bin.c: (add_remove_test1),
4973         (add_remove_test2), (main):
4974         * testsuite/refcounting/element.c: (main):
4975         * testsuite/refcounting/element_pad.c: (main):
4976         * testsuite/refcounting/pad.c: (main):
4977         * tools/gst-launch.c: (sigint_handler_sighandler):
4978         * tools/gst-typefind.c: (main):
4979         Doc updates.
4980         Added doc about clock.
4981         removed gst_bin_iterate_recurse_up(), marked methods
4982         for removal.
4983         Fix more testsuites.
4984
4985 2005-03-09  Wim Taymans  <wim@fluendo.com>
4986
4987         * gst/gstpad.c: (gst_pad_get_direction),
4988         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
4989         (gst_pad_collect_valist):
4990         * testsuite/bins/interface.c: (main):
4991         * testsuite/caps/audioscale.c: (test_caps):
4992         * testsuite/caps/caps.c: (test1), (test2), (test3):
4993         * testsuite/caps/deserialize.c: (main):
4994         * testsuite/caps/enumcaps.c: (main):
4995         * testsuite/caps/filtercaps.c: (main):
4996         * testsuite/caps/intersect2.c: (main):
4997         * testsuite/caps/random.c: (main):
4998         * testsuite/caps/renegotiate.c: (my_fixate), (main):
4999         * testsuite/caps/sets.c: (check_caps):
5000         * testsuite/caps/simplify.c: (check_caps), (main):
5001         * testsuite/caps/subtract.c: (check_caps):
5002         Fix _pad_get_direction wrt ghostpads.
5003         Fix caps testsuite.
5004
5005 2005-03-09  Wim Taymans  <wim@fluendo.com>
5006
5007         * check/Makefile.am:
5008         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
5009         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
5010         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
5011         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
5012         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
5013         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
5014         (gst_bin_remove), (gst_bin_iterate_recurse_up),
5015         (bin_element_is_sink), (gst_bin_iterate_sinks),
5016         (gst_bin_iterate_all_by_interface):
5017         * gst/gstbin.h:
5018         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
5019         (gst_element_change_state), (gst_element_dispose),
5020         (gst_element_finalize), (gst_element_set_loop_function):
5021         * gst/gstelement.h:
5022         * gst/gstiterator.c: (find_custom_fold_func):
5023         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5024         (gst_pad_collectv), (gst_pad_collect_valist),
5025         (gst_pad_template_new):
5026         * gst/gstpipeline.c: (gst_pipeline_class_init),
5027         (gst_pipeline_dispose), (gst_pipeline_set_property),
5028         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
5029         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
5030         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
5031         * gst/gstutils.h:
5032         * gst/schedulers/entryscheduler.c:
5033         * gst/schedulers/gstbasicscheduler.c:
5034         (gst_basic_scheduler_cothreaded_chain),
5035         (gst_basic_scheduler_chain_add_element):
5036         * testsuite/bins/interface.c: (main):
5037         Added GstBin test.
5038         Added GstSystemClock test.
5039         Implemented clock distribution code in GstBin.
5040         Implemented iterate sinks method for future use.
5041         Rearranged gstelement.h
5042         Fix GstIterator comparison bug.
5043         Moved some code to GstPipeline, mostly clocking related.
5044
5045 2005-03-09  Wim Taymans  <wim@fluendo.com>
5046
5047         * configure.ac:
5048         * gst/gst_private.h:
5049         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5050         (gst_bin_remove_func), (gst_bin_remove),
5051         (gst_bin_get_by_name_recurse_up):
5052         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
5053         (gst_clock_id_compare_func), (gst_clock_id_wait),
5054         (gst_clock_id_wait_async), (gst_clock_init),
5055         (gst_clock_adjust_unlocked), (gst_clock_get_time):
5056         * gst/gstelement.h:
5057         * gst/gstinfo.c: (_gst_debug_init):
5058         * gst/gstobject.h:
5059         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
5060         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
5061         * gst/gstpad.h:
5062         Bump version number, we're now 0.9.0
5063         Add future debugging category.
5064         Fix NULL _unref() in _get_by_name_recurse_up
5065         Rearrange gstpad.h.
5066         Update some docs.
5067
5068 2005-03-08  Wim Taymans  <wim@fluendo.com>
5069
5070         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
5071         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
5072         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
5073         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
5074         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
5075         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
5076         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
5077         * gst/elements/gstidentity.c: (gst_identity_class_init):
5078         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
5079         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
5080         * gst/elements/gstshaper.c: (gst_shaper_class_init):
5081         * gst/elements/gststatistics.c: (gst_statistics_class_init):
5082         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
5083         (gst_tee_link):
5084         * gst/gstelement.c: (gst_element_class_init),
5085         (gst_element_base_class_init), (gst_element_init),
5086         (gst_element_get_random_pad), (gst_element_wait_state_change),
5087         (gst_element_change_state), (gst_element_dispose),
5088         (gst_element_finalize), (gst_element_set_loop_function):
5089         * gst/gstelement.h:
5090         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
5091         * gst/gstthread.c: (gst_thread_class_init),
5092         (gst_thread_release_children_locks), (gst_thread_change_state):
5093         * gst/schedulers/gstbasicscheduler.c:
5094         (gst_basic_scheduler_loopfunc_wrapper),
5095         (gst_basic_scheduler_chain_wrapper),
5096         (gst_basic_scheduler_src_wrapper),
5097         (gst_basic_scheduler_remove_element):
5098         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5099         Remove threadsafe properties. Fix elements because GObject
5100         complains when installing a property before declaring a
5101         set/get_property handler.
5102         Rearrange gstelement.h file, use STATE macros for state locks.
5103         Free mutexes in the finalize method instead of dispose.
5104
5105 2005-03-08  Wim Taymans  <wim@fluendo.com>
5106
5107         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
5108         * gst/gstthread.c: (gst_thread_release_children_locks):
5109         Added parentage check.
5110         Fix build og GstThread again.
5111
5112 2005-03-08  Wim Taymans  <wim@fluendo.com>
5113
5114         * docs/design/part-MT-refcounting.txt:
5115         * docs/design/part-conventions.txt:
5116         * docs/design/part-gstobject.txt:
5117         * docs/design/part-relations.txt:
5118         * docs/design/part-standards.txt:
5119         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
5120         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
5121         (gst_bin_get_by_name), (gst_bin_get_by_interface),
5122         (gst_bin_iterate_all_by_interface):
5123         * gst/gstbuffer.h:
5124         * gst/gstclock.h:
5125         * gst/gstelement.c: (gst_element_class_init),
5126         (gst_element_change_state), (gst_element_set_loop_function):
5127         * gst/gstelement.h:
5128         * gst/gstiterator.c:
5129         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
5130         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
5131         (gst_object_dispatch_properties_changed), (gst_object_set_name),
5132         (gst_object_set_parent), (gst_object_unparent),
5133         (gst_object_check_uniqueness):
5134         * gst/gstobject.h:
5135         Docs updates, clean up some headers.
5136
5137 2005-03-07  Wim Taymans  <wim@fluendo.com>
5138
5139         * check/.cvsignore:
5140         * check/Makefile.am:
5141         * check/gst-libs/.cvsignore:
5142         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
5143         * check/gst/.cvsignore:
5144         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
5145         (START_TEST), (gstbus_suite), (main):
5146         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
5147         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
5148         (gst_data_suite), (main):
5149         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
5150         (add_fold_func), (gstiterator_suite), (main):
5151         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
5152         (thread_name_object), (thread_name_object_default),
5153         (gst_object_name_compare), (gst_object_suite), (main):
5154         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
5155         (gst_pad_suite), (main):
5156         * check/gstcheck.c: (gst_check_log_message_func),
5157         (gst_check_log_critical_func), (gst_check_init):
5158         * check/gstcheck.h:
5159         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
5160         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
5161         Added checks.
5162
5163 2005-03-07  Wim Taymans  <wim@fluendo.com>
5164
5165         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
5166         (gst_list_iterator_next), (gst_list_iterator_resync),
5167         (gst_list_iterator_free), (gst_iterator_new_list),
5168         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
5169         (gst_iterator_free), (gst_iterator_push), (filter_next),
5170         (filter_resync), (filter_uninit), (filter_free),
5171         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
5172         (gst_iterator_foreach), (find_custom_fold_func),
5173         (gst_iterator_find_custom):
5174         * gst/gstiterator.h:
5175         Added missing files.
5176
5177 2005-03-07  Wim Taymans  <wim@fluendo.com>
5178
5179         * Makefile.am:
5180         * configure.ac:
5181         * docs/design/part-MT-refcounting.txt:
5182         * docs/design/part-conventions.txt:
5183         * docs/design/part-gstobject.txt:
5184         * docs/design/part-relations.txt:
5185         * examples/mixer/mixer.c: (main):
5186         * examples/thread/thread.c: (eos), (main):
5187         * gst/Makefile.am:
5188         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
5189         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
5190         (gst_spider_plug_from_srcpad):
5191         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
5192         (gst_spider_identity_change_state),
5193         (gst_spider_identity_sink_loop_type_finding):
5194         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
5195         * gst/elements/gstidentity.c: (gst_identity_init):
5196         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
5197         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
5198         * gst/elements/gsttypefindelement.c: (free_entry):
5199         * gst/gst.c:
5200         * gst/gst.h:
5201         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
5202         (gst_bin_set_clock_func), (gst_bin_auto_clock),
5203         (gst_bin_set_index), (gst_bin_set_element_sched),
5204         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
5205         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
5206         (gst_bin_iterate_elements), (iterate_child_recurse),
5207         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
5208         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
5209         (compare_interface), (gst_bin_get_by_interface),
5210         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
5211         * gst/gstbin.h:
5212         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
5213         (gst_buffer_default_free), (gst_buffer_default_copy),
5214         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
5215         (gst_buffer_create_sub):
5216         * gst/gstbuffer.h:
5217         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
5218         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
5219         (gst_caps_unref), (gst_static_caps_get),
5220         (gst_caps_remove_and_get_structure), (gst_caps_append),
5221         (gst_caps_append_structure), (gst_caps_remove_structure),
5222         (gst_caps_copy_nth), (gst_caps_set_simple),
5223         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
5224         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
5225         (gst_caps_structure_intersect_field), (gst_caps_intersect),
5226         (gst_caps_structure_subtract_field), (gst_caps_subtract),
5227         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
5228         (gst_caps_structure_figure_out_union),
5229         (gst_caps_switch_structures), (gst_caps_do_simplify),
5230         (gst_caps_replace), (gst_caps_from_string),
5231         (gst_caps_copy_conditional):
5232         * gst/gstcaps.h:
5233         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
5234         (_gst_clock_id_free), (gst_clock_id_unref),
5235         (gst_clock_id_compare_func), (gst_clock_id_wait),
5236         (gst_clock_id_wait_async), (gst_clock_class_init),
5237         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
5238         (gst_clock_get_time), (gst_clock_set_time_adjust),
5239         (gst_clock_set_property), (gst_clock_get_property):
5240         * gst/gstclock.h:
5241         * gst/gstcompat.h:
5242         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
5243         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
5244         * gst/gstdata.h:
5245         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
5246         (gst_element_requires_clock), (gst_element_provides_clock),
5247         (gst_element_set_clock), (gst_element_clock_wait),
5248         (gst_element_wait), (gst_element_set_time_delay),
5249         (gst_element_is_indexable), (gst_element_add_pad),
5250         (gst_element_add_ghost_pad), (gst_element_remove_pad),
5251         (pad_compare_name), (gst_element_get_static_pad),
5252         (gst_element_request_pad), (gst_element_get_request_pad),
5253         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
5254         (gst_element_class_get_pad_template_list),
5255         (gst_element_class_get_pad_template), (gst_element_error_func),
5256         (gst_element_get_random_pad), (gst_element_get_event_masks),
5257         (gst_element_send_event), (gst_element_seek),
5258         (gst_element_get_query_types), (gst_element_query),
5259         (gst_element_get_formats), (gst_element_convert),
5260         (gst_element_is_locked_state), (gst_element_set_locked_state),
5261         (gst_element_sync_state_with_parent), (gst_element_change_state),
5262         (gst_element_finalize), (gst_element_yield),
5263         (gst_element_interrupt), (gst_element_set_scheduler),
5264         (gst_element_get_scheduler), (gst_element_set_loop_function):
5265         * gst/gstelement.h:
5266         * gst/gstevent.h:
5267         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
5268         (gst_format_get_by_nick), (gst_format_get_details),
5269         (gst_format_iterate_definitions):
5270         * gst/gstformat.h:
5271         * gst/gstindex.c: (gst_index_gtype_resolver):
5272         * gst/gstinfo.c:
5273         * gst/gstinfo.h:
5274         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
5275         (gst_mem_chunk_free):
5276         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
5277         (gst_object_ref), (gst_object_unref), (gst_object_sink),
5278         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
5279         (gst_object_dispatch_properties_changed),
5280         (gst_object_set_name_default), (gst_object_set_name),
5281         (gst_object_get_name), (gst_object_set_name_prefix),
5282         (gst_object_get_name_prefix), (gst_object_set_parent),
5283         (gst_object_get_parent), (gst_object_unparent),
5284         (gst_object_check_uniqueness), (gst_object_save_thyself),
5285         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
5286         (gst_object_set_property), (gst_object_get_property),
5287         (gst_object_get_path_string):
5288         * gst/gstobject.h:
5289         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
5290         (gst_real_pad_init), (gst_real_pad_get_property),
5291         (gst_pad_custom_new), (gst_pad_get_direction),
5292         (gst_pad_set_active), (gst_pad_is_active),
5293         (gst_pad_set_event_function), (gst_pad_is_linked),
5294         (gst_pad_link_free), (gst_pad_link_intersect),
5295         (gst_pad_link_fixate), (gst_pad_set_caps),
5296         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
5297         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
5298         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
5299         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
5300         (gst_pad_get_caps), (gst_pad_peer_get_caps),
5301         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
5302         (gst_pad_realize), (gst_pad_get_allowed_caps),
5303         (gst_real_pad_dispose), (gst_real_pad_finalize),
5304         (gst_pad_collectv), (gst_pad_collect_valist),
5305         (gst_pad_template_dispose), (gst_pad_template_new),
5306         (gst_pad_get_internal_links):
5307         * gst/gstpad.h:
5308         * gst/gstpipeline.c: (gst_pipeline_dispose),
5309         (gst_pipeline_change_state):
5310         * gst/gstpipeline.h:
5311         * gst/gstplugin.c:
5312         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
5313         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
5314         * gst/gstpluginfeature.h:
5315         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5316         * gst/gstquery.c: (_gst_query_type_initialize),
5317         (gst_query_type_register), (gst_query_type_get_by_nick),
5318         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
5319         * gst/gstquery.h:
5320         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
5321         * gst/gstscheduler.c: (gst_scheduler_add_element),
5322         (gst_scheduler_factory_create):
5323         * gst/gststructure.c: (gst_structure_set_parent_refcount),
5324         (gst_structure_free), (gst_structure_set_name),
5325         (gst_structure_id_set_value), (gst_structure_set_value),
5326         (gst_structure_set_valist), (gst_structure_remove_field),
5327         (gst_structure_remove_fields),
5328         (gst_structure_remove_fields_valist),
5329         (gst_structure_remove_all_fields), (gst_structure_foreach),
5330         (gst_structure_map_in_place),
5331         (gst_caps_structure_fixate_field_nearest_int),
5332         (gst_caps_structure_fixate_field_nearest_double):
5333         * gst/gststructure.h:
5334         * gst/gstsystemclock.c: (gst_system_clock_class_init),
5335         (gst_system_clock_init), (gst_system_clock_dispose),
5336         (gst_system_clock_async_thread),
5337         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
5338         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
5339         * gst/gstsystemclock.h:
5340         * gst/gsttag.c: (gst_tag_list_add_value_internal),
5341         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
5342         * gst/gsttaginterface.c:
5343         * gst/gstthread.c: (gst_thread_dispose),
5344         (gst_thread_release_children_locks), (gst_thread_change_state),
5345         (gst_thread_main_loop):
5346         * gst/gsttrashstack.h:
5347         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
5348         * gst/gsttypes.h:
5349         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
5350         (gst_element_request_pad), (gst_element_get_pad_from_template),
5351         (gst_element_request_compatible_pad),
5352         (gst_element_get_compatible_pad_filtered),
5353         (gst_element_get_compatible_pad), (gst_element_state_get_name),
5354         (gst_element_link_pads_filtered), (gst_element_link_filtered),
5355         (gst_element_link_many), (gst_element_link),
5356         (gst_element_link_pads), (gst_element_unlink_pads),
5357         (gst_element_unlink_many), (gst_element_unlink),
5358         (gst_pad_can_link_filtered), (gst_pad_can_link),
5359         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
5360         (gst_object_default_error), (gst_bin_add_many),
5361         (gst_bin_remove_many), (gst_element_populate_std_props),
5362         (gst_element_class_install_std_props), (gst_buffer_merge),
5363         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
5364         (link_fold_func), (gst_pad_proxy_setcaps):
5365         * gst/gstutils.h:
5366         * gst/gstvalue.c: (gst_value_deserialize_string):
5367         * gst/parse/grammar.y:
5368         * gst/schedulers/gstbasicscheduler.c:
5369         (gst_basic_scheduler_cothreaded_chain),
5370         (gst_basic_scheduler_chain_recursive_add),
5371         (gst_basic_scheduler_pad_link):
5372         * gst/schedulers/gstoptimalscheduler.c:
5373         (get_group_schedule_function),
5374         (gst_opt_scheduler_state_transition),
5375         (gst_opt_scheduler_add_element), (element_get_reachables_func):
5376         * libs/gst/bytestream/bytestream.c:
5377         * libs/gst/dataprotocol/dataprotocol.c:
5378         (gst_dp_header_from_buffer):
5379         * po/nb.po:
5380         * po/ru.po:
5381         * tests/threadstate/threadstate2.c: (eos):
5382         * tools/gst-compprep.c: (main):
5383         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
5384         (print_pad_info), (print_children_info):
5385         * tools/gst-launch.c: (idle_func), (main):
5386         * tools/gst-md5sum.c: (idle_func), (main):
5387         * tools/gst-xmlinspect.c: (print_element_info):
5388         First THREADED backport attempt, focusing on adding locks and
5389         making sure the API is threadsafe. Needs more work. More docs
5390         follow this week.
5391
5392 2005-02-24  Andy Wingo  <wingo@pobox.com>
5393
5394         * tests/bench-complexity.scm:
5395         * tests/complexity.gnuplot: New files, good for running complexity
5396         benchmarks.
5397
5398         * tests/Makefile.am:
5399         * tests/complexity.c: New test, sets up N elements, at each level
5400         teeing into M streams per element. Eeeenteresting.
5401
5402         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
5403         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
5404         running bench-mass_elements.scm.
5405
5406         * tests/bench-mass_elements.scm: New script, runs mass_elements
5407         for various numbers of identities, outputting the results to a
5408         file. Requires guile 1.6. Just for testing.
5409
5410 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
5411
5412         * gst/schedulers/fairscheduler.c:
5413           compile with debug disabled
5414
5415 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5416
5417         * configure.ac:
5418           hunting season on 0.9 is now OPEN
5419
5420 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
5421
5422         * docs/libs/tmpl/gstcontrol.sgml:
5423         * docs/libs/tmpl/gstdparam.sgml:
5424         * docs/libs/tmpl/gstdplinint.sgml:
5425         * docs/libs/tmpl/gstdpman.sgml:
5426         * docs/libs/tmpl/gstdpsmooth.sgml:
5427         * docs/libs/tmpl/gstunitconvert.sgml:
5428           more docs for the state of dparams
5429
5430 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5431
5432         * gst/gstelementfactory.c: (gst_element_factory_create):
5433         * gst/gstobject.c: (gst_object_init),
5434         (gst_object_set_name_default), (gst_object_set_name):
5435           name objects by default, not in gst_element_factory_create. Allows
5436           using elements created with g_object_new. (fixes #167283)
5437
5438 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5439
5440         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
5441           make the time that debugging functions print relative to when
5442           gst_init was called
5443
5444 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
5445
5446         * gst/gsttaginterface.c:
5447           Fix inline docs: tag setter vararg functions are NULL-terminated,
5448           GST_TAG_INVALID doesn't exist any more.
5449
5450 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5451
5452         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
5453         Allocate the 1 byte more memory that was forgotten!!!!!
5454         fixes memory corruption on 64bit platforms
5455
5456 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
5457
5458         * docs/pwg/building-pads.xml:
5459         * docs/pwg/intro-basics.xml:
5460           fixed a few typos, relabeled introductionary list of types
5461         * docs/random/ensonic/dparams.txt:
5462           more notes abut dparam changes
5463         * libs/gst/control/dparam.c: (gst_dparam_attach):
5464         * libs/gst/control/dparammanager.c:
5465         * libs/gst/control/dparammanager.h:
5466           - many comments and notes on dparam implementation
5467           - new dparams are were not initialized to the default value
5468             from param spec
5469
5470 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
5471
5472         submitted by: Peter Astakhov
5473
5474         * po/LINGUAS:
5475         * po/ru.po:
5476           adding Russian translation
5477
5478 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5479
5480         * configure.ac:
5481         * docs/gst/Makefile.am:
5482         * docs/libs/Makefile.am:
5483           make sure popt is added to gtk-doc flags.  Fixes #147782.
5484
5485 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
5486
5487         * docs/faq/using.xml:
5488           Fix typo in FAQ (artssink => artsdsink)
5489
5490 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5491
5492         * tools/gst-launch.1.in:
5493           Fix typo (#166699).
5494
5495 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
5496
5497         * docs/faq/using.xml:
5498           Add -v argument to fakesrc/fakesink gst-launch line,
5499           so that the promised output will actually show up.
5500
5501 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5502
5503         * gst/gstthread.c: (gst_thread_change_state):
5504           Implement state-change error handling (#166073).
5505
5506 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5507
5508         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5509           Release interrupt after handling (#166250).
5510
5511 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5512
5513         * configure.ac:
5514           back to HEAD
5515
5516 === release 0.8.9 ===
5517
5518 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5519
5520         * NEWS:
5521         * RELEASE:
5522         * configure.ac:
5523           releasing 0.8.9, "Like Eating Glass"
5524
5525 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
5526
5527         submitted by: Clytie Siddall
5528
5529         * po/vi.po: Added Vietnamese translation
5530
5531 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
5532
5533         patch by: Tim Philipp-Müller
5534
5535         * configure.ac:
5536         * gst/gstpad.c:
5537           unref data when probe function returns FALSE.  Fixes #166362
5538
5539 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5540
5541         * gst/gst.c: (gst_init_get_popt_table):
5542           Fix typo (#166269).
5543
5544 2005-02-04  Andy Wingo  <wingo@pobox.com>
5545
5546         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
5547         the debugging on whether the caps are compatible.
5548
5549 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5550
5551         * docs/manual/basics-elements.xml:
5552           Fix two typos.
5553
5554 2005-02-02  Wim Taymans  <wim@fluendo.com>
5555
5556         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
5557         (schedule_chain), (get_invalid_call), (chain_invalid_call),
5558         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
5559         Remove some FIXMEs after analysing and commenting why they
5560         are not issues.
5561
5562 2005-02-02  Wim Taymans  <wim@fluendo.com>
5563
5564         * gst/schedulers/gstoptimalscheduler.c:
5565         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
5566         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
5567         (get_invalid_call), (chain_invalid_call),
5568         (get_group_schedule_function), (loop_group_schedule_function),
5569         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5570         (gst_opt_scheduler_state_transition),
5571         (gst_opt_scheduler_add_element),
5572         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
5573         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
5574         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
5575         (gst_opt_scheduler_show):
5576         Added lock to protect scheduler data structures.
5577
5578 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5579
5580         * testsuite/threads/threadi.c: (cb_data):
5581           Fix buglet in test.
5582
5583 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5584
5585         * testsuite/threads/Makefile.am:
5586         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
5587           On Wim's request, split the test in three separately-compiled
5588           tests that each test a very specific bug. Two of them still fail,
5589           will create bugs for those. threadi.c indicates why they fail.
5590
5591 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5592
5593         * gst/schedulers/gstoptimalscheduler.c:
5594         (get_group_schedule_function):
5595           Try to work with the threading mess that queue_link is.
5596
5597 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5598
5599         * gst/gstbin.c: (gst_bin_remove_func):
5600           Explicitely make an element release locks in a group when being
5601           remove from a bin.
5602         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
5603           If there's no scheduler, always return immediately (similar to
5604           gst_element_interrupt).
5605
5606 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5607
5608         * gst/gstbin.c: (gst_bin_child_state_change_func):
5609           Remove a piece of code that could never be reached.
5610         * docs/gst/gstreamer-sections.txt:
5611         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
5612         (gst_pad_call_get_function):
5613         * gst/gstpad.h:
5614         * testsuite/pad/Makefile.am:
5615           Fix #150546, enable tests.
5616
5617 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5618
5619         * docs/pwg/advanced-types.xml:
5620           Fix description for buffer-frames=0.
5621         * docs/gst/tmpl/gstbin.sgml:
5622         * gst/gstbin.c: (gst_bin_child_state_change_func),
5623         (gst_bin_change_state), (gst_bin_change_state_norecurse):
5624         * gst/gstbin.h:
5625         * testsuite/threads/Makefile.am:
5626         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
5627         (cb_state), (cb_play), (main):
5628           Fix non-recursive state changes to *really* change the state
5629           of the object, and not just call parent_class->state_change.
5630           Fix a lot of lockups caused by this. Fixes #132775. Add test
5631           for the problem. Also enable test to show #142588 (fixed).
5632         * gst/gstthread.c: (gst_thread_change_state),
5633         (gst_thread_child_state_change):
5634           Don't exit the thread if we go to NULL and are inside thread
5635           context. Instead, return control to the main thread context
5636           and exit from there.
5637         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
5638           Don't unset virtual functions, since those may still be used.
5639           That's not necessarily correct, but suffices for now.
5640         * configure.ac:
5641         * testsuite/Makefile.am:
5642         * testsuite/pad/Makefile.am:
5643         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
5644         (gst_test_sink_base_init), (gst_test_sink_chain),
5645         (gst_test_sink_init), (main):
5646         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
5647         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
5648         (main):
5649         * testsuite/pad/link.c: (gst_test_element_class_init),
5650         (gst_test_element_base_init), (gst_test_src_get),
5651         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
5652         (gst_test_filter_loop), (gst_test_filter_init),
5653         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
5654         (cb_error), (main):
5655           Add tests to show #150546. Pass, but should fail (currently
5656           disabled from the testsuite).
5657         * gst/gstscheduler.c: (gst_scheduler_dispose):
5658           Dereference child schedulers on dispose (#94464).
5659         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
5660           Fix typo.
5661         * testsuite/threads/thread.c: (main):
5662           Add more debug.
5663
5664 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5665
5666         * gst/gstpad.c: (gst_pad_push):
5667           Oops, revert previous commit, broke testsuite...
5668
5669 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5670
5671         * gst/gstpad.c: (gst_pad_push):
5672           Add check that the pad on which the push is performed is not a
5673           get-based pad (#150546).
5674
5675 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5676
5677         * gst/elements/gsttypefindelement.c:
5678         (gst_type_find_element_handle_event):
5679           Fix buffer pushing if stream EOSes during typefinding.
5680
5681 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
5682
5683         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5684
5685         * gst/gstvalue.c: (gst_string_wrap):
5686           Allow NULL-strings as argument (#165365).
5687
5688 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
5689
5690         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5691
5692         * gst/schedulers/faircothreads.c:
5693         (gst_fair_scheduler_cothread_queue_show):
5694           Fix build without debug enabled.
5695
5696 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
5697
5698         * docs/gst/gstreamer-sections.txt:
5699         * docs/libs/gstreamer-libs-docs.sgml:
5700         * docs/libs/gstreamer-libs-sections.txt:
5701         * docs/libs/tmpl/gstcontrol.sgml:
5702         * docs/libs/tmpl/gstdparam.sgml:
5703         * docs/libs/tmpl/gstdplinint.sgml:
5704         * docs/libs/tmpl/gstdpman.sgml:
5705         * docs/libs/tmpl/gstdpsmooth.sgml:
5706         * docs/libs/tmpl/gstputbits.sgml:
5707         * docs/libs/tmpl/gstunitconvert.sgml:
5708         * libs/gst/control/dparam.c:
5709         * libs/gst/control/dparam.h:
5710         * libs/gst/control/dparammanager.c:
5711         (gst_dpman_add_required_dparam_callback),
5712         (gst_dpman_add_required_dparam_direct),
5713         (gst_dpman_add_required_dparam_array),
5714         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
5715         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
5716         (gst_dpman_get_manager)
5717           restructured DParam docs
5718
5719 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
5720
5721         * gst-element-check.m4:
5722           Only check for gst-inspect if we haven't already
5723           found it in previous element check runs
5724
5725 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
5726
5727         * docs/gst/Makefile.am:
5728         * docs/libs/Makefile.am:
5729           fixed install rules to treat style.css as optional
5730
5731 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
5732
5733         * docs/gst/Makefile.am:
5734         * docs/libs/Makefile.am:
5735           install style.css along with docs
5736         * docs/gst/tmpl/gstbin.sgml:
5737         * docs/gst/tmpl/gstclock.sgml:
5738         * docs/gst/tmpl/gstdata.sgml:
5739         * docs/gst/tmpl/gstelement.sgml:
5740         * gst/gstbin.h:
5741         * gst/gstelement.c: (gst_element_class_init):
5742         * gst/gstelement.h:
5743           fixing incomplete docs
5744
5745 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
5746
5747         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
5748           Don't unref seek event twice when fflush() fails
5749           
5750 2005-01-22  David Schleef  <ds@schleef.org>
5751
5752         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
5753
5754 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
5755
5756         * docs/gst/Makefile.am:
5757         * docs/libs/Makefile.am:
5758           added params for deprecation guards
5759         * gst/gst.c:
5760         * gst/gst.h:
5761         * gst/gsterror.c: (_gst_resource_errors_init),
5762         (_gst_stream_errors_init):
5763         * gst/gsterror.h:
5764           documented some more enums
5765
5766 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
5767         * gst/autoplug/gstspideridentity.c:
5768         Cosmetic fix - spider_find_peek should be static
5769         * gst/parse/parse.l:
5770         Applying fix for #164261
5771
5772 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
5773
5774         * docs/gst/gstreamer-sections.txt:
5775         * docs/gst/tmpl/gstplugin.sgml:
5776         * docs/libs/gstreamer-libs-sections.txt:
5777         * docs/libs/tmpl/gstcontrol.sgml:
5778         * gst/gstbuffer.h:
5779         * gst/gsttag.h:
5780         * gst/gstvalue.c:
5781           added docs for the TAG defines
5782
5783 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5784
5785         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
5786           Only unref entry if there is an entry.
5787
5788 2005-01-17  Wim Taymans  <wim@fluendo.com>
5789
5790         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
5791         (remove_from_group), (schedule_group), (normalize_group),
5792         (gst_opt_scheduler_iterate):
5793         Also ref/unref decoupled elements before iterating the
5794         group since they are not added to the list of elements.
5795
5796 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5797
5798         * docs/manual/highlevel-components.xml:
5799           Add subtitle/streamselection as new features to playbin.
5800
5801 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5802
5803         * docs/manual/manual.xml:
5804           Re-enable dataaccess docs (oops).
5805
5806 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5807
5808         * docs/pwg/advanced-types.xml:
5809         * docs/random/mimetypes:
5810           Add documentation on libsndfile types (#163309), by Steve Baker
5811           <steve@stevebaker.org>.
5812         * gst/gstelement.c: (gst_element_release_request_pad):
5813           If an element has no explicit function, just remove the pad.
5814
5815 2005-01-17  Luca Ognibene  <luogni@tin.it>
5816
5817         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5818
5819         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
5820           Fix memleak (#163801).
5821
5822 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5823
5824         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
5825           I think this is actually more correct...
5826
5827 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5828
5829         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5830           Another workaround for memory access while destroyed in callback.
5831           Please, someone with refcount knowledge, have a look at this.
5832
5833 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5834
5835         * docs/faq/faq.xml:
5836         * docs/faq/legal.xml:
5837           move the legal Q&A here
5838
5839 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5840
5841         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
5842         (gst_tee_request_new_pad):
5843           Fix negotiation.
5844
5845 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5846
5847         * docs/random/omega/caps2:
5848         * testsuite/caps/caps_strings:
5849           replace framerate aproximations by their real value
5850           (24000/1001, 30000/1001, 60000/1001)
5851           Partially fixes bug #164049
5852
5853 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5854
5855         * docs/gst/Makefile.am:
5856           don't fail on the stupid GstPoptOption
5857
5858 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5859
5860         * gst/gstpad.h:
5861         * gst/gstprobe.c:
5862           allow probes to work on ghost pads by realizing the pad
5863           probe debugging
5864
5865 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5866
5867         * docs/gst/gstreamer-sections.txt:
5868         * docs/gst/tmpl/gstpad.sgml:
5869         * gst/gstpad.c: (gst_pad_set_active_recursive):
5870         * gst/gstpad.h:
5871           Add gst_pad_set_active_recursive().
5872
5873 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5874
5875         * docs/random/release:
5876           updates
5877         * gst/gst_private.h:
5878         * gst/gstinfo.c:
5879         * gst/gstobject.c:
5880           move deep_notify logging to a new category
5881         * gst/gstprobe.c:
5882         * gst/gstprobe.h:
5883           add stuff so bindings can wrap probes
5884
5885 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5886
5887         * gst/gstplugin.c: (gst_plugin_load):
5888           Fix plugin loading if plugin/lib was already loaded. Fixes
5889           #163383
5890
5891 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
5892
5893         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5894
5895         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
5896           Protect plugin loading by a mutex so it's threadsafe. Fixes
5897           #163234.
5898
5899 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5900
5901         * gst/gstevent.c: (_gst_event_copy):
5902           Reference source object when copying events, since it'll be
5903           dereferenced on event dereferencing as well.
5904
5905 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5906
5907         * docs/gst/gstreamer-sections.txt:
5908         * docs/gst/tmpl/gstevent.sgml:
5909         * gst/gstevent.c: (gst_event_new_filler_stamped),
5910         (gst_event_filler_get_duration):
5911         * gst/gstevent.h:
5912           Add two new functions for filler events (which are used to
5913           synchronize streams if one of them is not having any data
5914           for a while) without interrupting the actual data-stream.
5915           Basically a no-op.
5916         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
5917         (gst_queue_link_sink), (gst_queue_link_src),
5918         (gst_queue_change_state):
5919           Allow for renegotiation while filled. Required for stream
5920           switching while playing.
5921
5922 2005-01-08  Benjamin Otte  <otte@gnome.org>
5923
5924         * gst/gstelement.c: (gst_element_link_many):
5925           fix up g_return_if_fail's
5926         * po/LINGUAS:
5927         * po/de.po:
5928           add German translation, that was somehow not included
5929
5930 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
5931
5932         * docs/random/mimetypes:
5933           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
5934           do not add them to riff-lib as they are not common
5935
5936 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5937
5938         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
5939           Check for existence of probe after performing the probe before
5940           re-accessing it to prevent segfaults caused by removal of the
5941           probe in the callback.
5942
5943 2005-01-05  David Schleef  <ds@schleef.org>
5944
5945         * testsuite/registry/Makefile.am:
5946         * testsuite/registry/gst-print-formats.c:
5947         (print_pad_templates_info), (print_element_list),
5948         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
5949         (g_list_uniqify), (get_pad_templates_info),
5950         (get_element_mime_list), (print_mime_list), (main): A little
5951         program that looks through the registry to find elements of
5952         a given type.  Not particularly interesting as a test, except
5953         that there's no other test covering the same area.
5954
5955 2005-01-05  David Schleef  <ds@schleef.org>
5956
5957         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
5958         (fault_handler_sigaction), (fault_spin),
5959         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
5960         in signal.h-type signal handlers by not calling forbidden functions,
5961         including gst_element_set_state().
5962
5963 2005-01-05  David Schleef  <ds@schleef.org>
5964
5965         * gst/gstvalue.h: Mark _gst_reserved[] as private
5966
5967 2005-01-05  David Schleef  <ds@schleef.org>
5968
5969         * gst/gstvalue.c: Fix doc build problem.
5970
5971 2005-01-05  David Schleef  <ds@schleef.org>
5972
5973         * gst/gstvalue.c: Add some documentation
5974
5975 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
5976
5977         * docs/README:
5978           another shell oneliner for empty return value docs
5979         * gst/gstcaps.c:
5980         * gst/gstvalue.c:
5981         * libs/gst/control/dparam.c:
5982           more doc fixes (parameters and return values)
5983
5984 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
5985
5986         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
5987
5988         * gst/gstregistry.h:
5989         * gst/registries/gstxmlregistry.c:
5990           Fix macro's for Mingw (fixes #162276).
5991
5992 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
5993
5994         * docs/README:
5995           quick shell oneliner to find undocumented members
5996         * docs/gst/tmpl/gstplugin.sgml:
5997         * docs/gst/tmpl/gstscheduler.sgml:
5998         * docs/gst/tmpl/gstthread.sgml:
5999           more enumtypes cleanup
6000         * gst/gsterror.h:
6001           activated documentation comments, now someone needs to document
6002           the enums :(
6003
6004 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6005
6006         * docs/manual/manual.xml:
6007           Add dataaccess part (doh!).
6008
6009 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6010
6011         * docs/manual/advanced-autoplugging.xml:
6012           Fix typo (intiate -> initiate).
6013
6014 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6015
6016         * docs/random/bbb/streamselection:
6017           Add some notes on how to handle multi-subtitle/-audio streams.
6018
6019 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
6020
6021         * docs/gst/gstreamer-docs.sgml:
6022         * docs/gst/gstreamer-sections.txt:
6023         * docs/gst/tmpl/gstenumtypes.sgml:
6024         * docs/gst/tmpl/gsterror.sgml:
6025         * docs/gst/tmpl/gstevent.sgml:
6026         * docs/gst/tmpl/gstpad.sgml:
6027         * docs/gst/tmpl/gstpadtemplate.sgml:
6028         * docs/gst/tmpl/gstthread.sgml:
6029           removed gstenumtypes section from docs and put all the enums into
6030           their sections
6031
6032 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6033
6034         * gst/gstplugin.c:
6035           document gst_library_load a bit more (riff special case + return
6036           value if already loaded)
6037         * testsuite/bytestream/filepadsink.c:
6038           plugin name is 'gstbytestream', not 'bytestream'
6039
6040 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6041
6042         * docs/random/bbb/subtitles:
6043           Add some first mind rumblings on proper subtitle support.
6044
6045 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6046
6047         * po/ca.po:
6048         * po/sv.po:
6049           updated translations
6050
6051 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6052
6053         * docs/manual/advanced-dataaccess.xml:
6054           Add section on how to use fakesrc/fakesink/identity in your
6055           application, plus section on how to embed plugins. Also mention
6056           probes.
6057         * docs/manual/appendix-checklist.xml:
6058         * docs/manual/appendix-debugging.xml:
6059         * docs/manual/appendix-gnome.xml:
6060         * docs/manual/appendix-integration.xml:
6061           Debug -> checklist, GNOME -> integration, add sections on Linux,
6062           KDE integration and add other things useful for application
6063           development.
6064         * docs/manual/manual.xml:
6065           Remove some fixmes, update some file pointers.
6066         * docs/pwg/appendix-checklist.xml:
6067           Fix typo.
6068         * docs/pwg/building-boiler.xml:
6069           Remove ugly header and add commented fixme.
6070         * docs/pwg/pwg.xml:
6071           Add fixme.
6072         * examples/manual/Makefile.am:
6073           Add example for added docs.
6074
6075 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6076
6077         * configure.ac:
6078           back to HEAD
6079
6080 === release 0.8.8 ===
6081
6082 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
6083
6084         * NEWS:
6085         * RELEASE:
6086         * configure.ac:
6087           Releasing 0.8.8, "I'll Take Care Of You"
6088
6089 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6090
6091         * configure.ac:
6092           second prerelease
6093
6094 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6095
6096         patch by: Wim Taymans
6097
6098         * gst/gstbin.c:
6099           Fix for #159852 - make iterate emission threadsafe
6100
6101 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6102
6103         * docs/faq/cvs.xml:
6104           notes about new fdo account request
6105
6106 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
6107
6108         * docs/gst/gstreamer-docs.sgml:
6109         * docs/gst/tmpl/gstenumtypes.sgml:
6110         * docs/gst/tmpl/gstplugin.sgml:
6111         * docs/libs/gstreamer-libs-docs.sgml:
6112           Added missing short docs. Added ids for navigation.
6113
6114 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6115
6116         * docs/manual/advanced-autoplugging.xml:
6117         * docs/manual/advanced-schedulers.xml:
6118         * docs/manual/advanced-threads.xml:
6119           Rewrites. Remove cothreads, go a bit into opt specifically,
6120           document threads and their gotchas, and do some technical stuff
6121           on autoplugging plus add some working examples. Fixes #157395.
6122         * examples/manual/Makefile.am:
6123           Add typefind/autoplugger example (one that actually works).
6124           Remove queue example since it's a duplicate of the thread one.
6125
6126 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6127
6128         * gst/gstvalue.c: (gst_value_deserialize_string):
6129           use deprecated g_value_set_string_take_ownership to keep compatible
6130           with glib 2.2
6131
6132 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6133
6134         * gst/gstvalue.c: (gst_value_deserialize_string):
6135           revert last patch, only dom a g_utf8_validate now before accepting
6136           the string - caps parsing strips " from strings so we can't rely on
6137           them
6138         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6139           disable a test that tested the above and comment it
6140
6141 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
6142
6143         Patch reviewed by David Schleef  <ds@schleef.org>
6144
6145         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
6146         bug #153882)
6147         * win32/gstenumtypes.h: same
6148
6149 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6150
6151         * gst/gstpad.c: (gst_pad_query):
6152           Do query on realized pad, similar to how convert/send_event handle
6153           this. Also makes sense, since this pad belongs to the function to
6154           which this query will be sent. Fixes #158163.
6155
6156 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
6157
6158         * docs/manual/appendix-programs.xml: fix pipeline to actually work
6159
6160 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6161
6162         * docs/faq/general.xml: fix pipeline to actually work
6163
6164 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6165
6166         * gst/gstvalue.c: (gst_value_deserialize_string):
6167           check that a simple string that gets deserialized does not contain
6168           invalid characters
6169         * testsuite/caps/value_serialize.c: (test_string_deserialization):
6170           remove a test that tested a wring behaviour
6171
6172 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
6173
6174         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6175
6176         * docs/manual/intro-motivation.xml:
6177           Fix typos.
6178
6179 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
6180
6181         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6182
6183         * docs/gst/tmpl/gstprobe.sgml:
6184           Fix documentation of probe callback - it is supposed to return
6185           FALSE, not TRUE, to remove data from the stream (#159087).
6186
6187 2004-12-16  Daniel Gazard  <dany42@free.fr>
6188
6189         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6190
6191         * gst/gstelementfactory.c: (gst_element_factory_create):
6192           Fix compile failure if compiling without libxml2 support (#149936).
6193
6194 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6195
6196         * docs/manual/advanced-autoplugging.xml:
6197         * docs/manual/highlevel-components.xml:
6198           Move spider from autoplugging to components. Autoplugging is for
6199           internals, not for solutions. ;-).
6200
6201 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6202
6203         * docs/random/ds/0.9-suggested-changes:
6204           Make note on device/location/uri property names.
6205
6206 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6207
6208         * docs/manual/advanced-autoplugging.xml:
6209         * docs/manual/advanced-clocks.xml:
6210         * docs/manual/advanced-interfaces.xml:
6211         * docs/manual/advanced-metadata.xml:
6212         * docs/manual/advanced-position.xml:
6213         * docs/manual/advanced-schedulers.xml:
6214         * docs/manual/advanced-threads.xml:
6215         * docs/manual/appendix-gnome.xml:
6216         * docs/manual/appendix-programs.xml:
6217         * docs/manual/appendix-quotes.xml:
6218         * docs/manual/autoplugging.xml:
6219         * docs/manual/basics-bins.xml:
6220         * docs/manual/basics-data.xml:
6221         * docs/manual/basics-elements.xml:
6222         * docs/manual/basics-helloworld.xml:
6223         * docs/manual/basics-init.xml:
6224         * docs/manual/basics-pads.xml:
6225         * docs/manual/basics-plugins.xml:
6226         * docs/manual/bins-api.xml:
6227         * docs/manual/bins.xml:
6228         * docs/manual/buffers-api.xml:
6229         * docs/manual/buffers.xml:
6230         * docs/manual/clocks.xml:
6231         * docs/manual/components.xml:
6232         * docs/manual/cothreads.xml:
6233         * docs/manual/debugging.xml:
6234         * docs/manual/dparams-app.xml:
6235         * docs/manual/dynamic.xml:
6236         * docs/manual/elements-api.xml:
6237         * docs/manual/elements.xml:
6238         * docs/manual/factories.xml:
6239         * docs/manual/gnome.xml:
6240         * docs/manual/goals.xml:
6241         * docs/manual/helloworld.xml:
6242         * docs/manual/helloworld2.xml:
6243         * docs/manual/highlevel-components.xml:
6244         * docs/manual/highlevel-xml.xml:
6245         * docs/manual/init-api.xml:
6246         * docs/manual/intro-basics.xml:
6247         * docs/manual/intro-motivation.xml:
6248         * docs/manual/intro-preface.xml:
6249         * docs/manual/intro.xml:
6250         * docs/manual/links-api.xml:
6251         * docs/manual/links.xml:
6252         * docs/manual/manual.xml:
6253         * docs/manual/motivation.xml:
6254         * docs/manual/pads-api.xml:
6255         * docs/manual/pads.xml:
6256         * docs/manual/plugins-api.xml:
6257         * docs/manual/plugins.xml:
6258         * docs/manual/programs.xml:
6259         * docs/manual/queues.xml:
6260         * docs/manual/quotes.xml:
6261         * docs/manual/schedulers.xml:
6262         * docs/manual/states-api.xml:
6263         * docs/manual/states.xml:
6264         * docs/manual/threads.xml:
6265         * docs/manual/typedetection.xml:
6266         * docs/manual/win32.xml:
6267         * docs/manual/xml.xml:
6268           Try 2. This time, include a short preface as a "general
6269           introduction", also add code blocks around all code samples
6270           so they get compiled. We still need a way to tell readers
6271           the filename of the code sample. In some cases, don't show
6272           all code in the documentation, but do include it in the generated
6273           code. This allows for focussing on specific bits in the docs,
6274           while still having a full test application available.
6275         * examples/manual/Makefile.am:
6276           Fix up examples for new ADM. Add several of the new examples that
6277           were either added or were missing from the build system.
6278         * examples/manual/extract.pl:
6279           Allow nameless blocks.
6280
6281 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6282
6283         * docs/manual/elements-api.xml:
6284         * docs/manual/helloworld.xml:
6285         * examples/manual/extract.pl:
6286           fix last example.  Add example of adding code blocks that are not
6287           shown in docbook output.
6288
6289 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
6290
6291         * docs/manual/dynamic.xml:
6292         * docs/manual/elements-api.xml:
6293         * docs/manual/gnome.xml:
6294         * docs/manual/helloworld2.xml:
6295         * docs/manual/init-api.xml:
6296         * docs/manual/queues.xml:
6297         * docs/manual/threads.xml:
6298         * docs/manual/xml.xml:
6299         * examples/manual/extract.pl:
6300           Make it possible to extract example code from separate blocks.
6301           Should make Ronald happy.
6302
6303 2004-12-15  Wim Taymans  <wim@fluendo.com>
6304
6305         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6306         (remove_from_group), (group_elements_set_visited),
6307         (normalize_group), (gst_opt_scheduler_iterate):
6308         Fix bug where a flag was not updated on a decoupled entry point 
6309         because we were just checking the group element list and decoupled
6310         elements are not in that list..
6311
6312 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6313
6314         * docs/manual/advanced-autoplugging.xml:
6315         * docs/manual/advanced-clocks.xml:
6316         * docs/manual/advanced-dparams.xml:
6317         * docs/manual/advanced-interfaces.xml:
6318         * docs/manual/advanced-metadata.xml:
6319         * docs/manual/advanced-position.xml:
6320         * docs/manual/advanced-schedulers.xml:
6321         * docs/manual/advanced-threads.xml:
6322         * docs/manual/appendix-debugging.xml:
6323         * docs/manual/appendix-gnome.xml:
6324         * docs/manual/appendix-programs.xml:
6325         * docs/manual/appendix-quotes.xml:
6326         * docs/manual/appendix-win32.xml:
6327         * docs/manual/autoplugging.xml:
6328         * docs/manual/basics-bins.xml:
6329         * docs/manual/basics-data.xml:
6330         * docs/manual/basics-elements.xml:
6331         * docs/manual/basics-helloworld.xml:
6332         * docs/manual/basics-init.xml:
6333         * docs/manual/basics-pads.xml:
6334         * docs/manual/basics-plugins.xml:
6335         * docs/manual/bins-api.xml:
6336         * docs/manual/bins.xml:
6337         * docs/manual/buffers-api.xml:
6338         * docs/manual/buffers.xml:
6339         * docs/manual/clocks.xml:
6340         * docs/manual/components.xml:
6341         * docs/manual/cothreads.xml:
6342         * docs/manual/debugging.xml:
6343         * docs/manual/dparams-app.xml:
6344         * docs/manual/dynamic.xml:
6345         * docs/manual/elements-api.xml:
6346         * docs/manual/elements.xml:
6347         * docs/manual/factories.xml:
6348         * docs/manual/gnome.xml:
6349         * docs/manual/goals.xml:
6350         * docs/manual/helloworld.xml:
6351         * docs/manual/helloworld2.xml:
6352         * docs/manual/highlevel-components.xml:
6353         * docs/manual/highlevel-xml.xml:
6354         * docs/manual/init-api.xml:
6355         * docs/manual/intro-motivation.xml:
6356         * docs/manual/intro-preface.xml:
6357         * docs/manual/intro.xml:
6358         * docs/manual/links-api.xml:
6359         * docs/manual/links.xml:
6360         * docs/manual/manual.xml:
6361         * docs/manual/motivation.xml:
6362         * docs/manual/pads-api.xml:
6363         * docs/manual/pads.xml:
6364         * docs/manual/plugins-api.xml:
6365         * docs/manual/plugins.xml:
6366         * docs/manual/programs.xml:
6367         * docs/manual/queues.xml:
6368         * docs/manual/quotes.xml:
6369         * docs/manual/schedulers.xml:
6370         * docs/manual/states-api.xml:
6371         * docs/manual/states.xml:
6372         * docs/manual/threads.xml:
6373         * docs/manual/typedetection.xml:
6374         * docs/manual/win32.xml:
6375         * docs/manual/xml.xml:
6376           First try at rewriting the ADM. Needs lotsamore work, but some
6377           parts might already be somewhat useful.
6378         * docs/pwg/advanced-interfaces.xml:
6379           Remove properties interface, it never actually existed (except for
6380           on my HD...).
6381
6382 2004-12-13  David Schleef  <ds@schleef.org>
6383
6384         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
6385         be NULL (bug #160220).
6386
6387 2004-12-13  David Schleef  <ds@schleef.org>
6388
6389         * configure.ac: remove all mmx stuff, because it's not used.
6390         * docs/random/ds/0.9-suggested-changes: additional notes
6391         * include/Makefile.am: we don't use these anymore
6392         * include/mmx.h: remove
6393         * include/sse.h: remove
6394
6395 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6396
6397         * docs/random/mimetypes:
6398           Add FOURCC code for h264 codec (VSSH)
6399           Add alternate FOURCC codes for h263 related codecs
6400
6401 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
6402
6403         * docs/manual/programs.xml:
6404           Added more gst-launch examples.
6405
6406 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6407
6408         * gst/gstqueue.c: (gst_queue_handle_src_query):
6409           Check for availability again.
6410
6411 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6412
6413         * gst/gstcaps.c: (gst_caps_compare_structures):
6414           Simple caps go first. This has the nice side-effect of fixing an
6415           obscure warning.
6416
6417 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6418
6419         * gst/gstversion.h.in:
6420           Protect header.
6421
6422 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6423
6424         * gst/schedulers/gstoptimalscheduler.c:
6425         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
6426         (gst_opt_scheduler_get_wrapper):
6427           When we're recursing into a chain run, only run the directly
6428           related group, not all queued ones. This will fix a possible
6429           deadlock in chains with more than two groups.
6430
6431 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6432
6433         * autogen.sh:
6434           remove patch if autopoint fails
6435
6436 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6437
6438         * docs/gst/gstreamer-sections.txt:
6439           Document Thomas' addition, fix build, make Luis the sheriff happy.
6440
6441 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
6442
6443         * gst/gstplugin.c:
6444         * gst/gstplugin.h:
6445           add accessor for version field
6446
6447 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6448
6449         submitted by: Luca Ferretti <elle.uca@infinito.it>
6450
6451         * po/LINGUAS:
6452         * po/it.po:
6453           New tranlation added: Italian
6454
6455 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6456
6457         * gst/gstpad.c: (gst_pad_is_negotiated),
6458         (gst_pad_get_negotiated_caps):
6459           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
6460           it doesn't actually check the contents), so be sure to hand it
6461           a RealPad else we'll crash.
6462
6463 2004-12-03  Wim Taymans  <wim@fluendo.com>
6464
6465         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
6466         (gst_queue_link), (gst_queue_handle_src_query):
6467         Reverted to 1.110 until this makes the testsuite and various
6468         apps work.
6469
6470 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
6471
6472         * docs/upload.mak: fix included CVS conflict strings
6473
6474 2004-12-01  William Jon McCann  <mccann@jhu.edu>
6475
6476         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6477
6478         * gst/gstelement.c: (gst_element_error_full):
6479           Use g_error_new_literal because error text may have
6480           percentage signs in it. Fixes #160019.
6481
6482 2004-12-01  Benjamin Otte  <otte@gnome.org>
6483
6484         * gst/elements/gstbufferstore.c:
6485         (gst_buffer_store_add_buffer_func):
6486           don't try to make subbuffers bigger than they can be. (fixes
6487           #159970)
6488
6489 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6490
6491         * docs/gst/gstreamer-sections.txt:
6492         * docs/gst/tmpl/gstvalue.sgml:
6493           Add new function to docs to fix build.
6494
6495 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6496
6497         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
6498         * gst/gstpad.c: (_gst_pad_default_fixate_value),
6499         (_gst_pad_default_fixate_foreach):
6500         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
6501         * gst/gstvalue.h:
6502           Deprecate _type_is_fixed, use _value_is_fixed instead, since
6503           in some cases (arrays), the fixedness depends on the content.
6504         * gst/gstqueue.c: (gst_queue_handle_src_query):
6505           Check for availability before doing something.
6506
6507 2004-11-29  Wim Taymans  <wim@fluendo.com>
6508
6509         * testsuite/threads/Makefile.am:
6510         * testsuite/threads/signals.c: (gst_test_get_type),
6511         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
6512         (gst_test_set_property), (gst_test_get_property),
6513         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
6514         (gst_test_do_prop), (run_thread), (main):
6515         Added a bunch of testcases that show threadsafety bugs in glib.
6516
6517 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
6518
6519         * docs/manual/programs.xml:
6520           Added a first batch of gst-launch examples, as provided by Ronald
6521           and others from the devel-mlist
6522
6523 2004-11-28  Benjamin Otte  <otte@gnome.org>
6524
6525         * gst/gstelement.c: (gst_element_negotiate_pads):
6526           simplify
6527         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
6528         (gst_value_serialize_string), (gst_value_deserialize_string):
6529           add unwrapping of previously wrapped strings. Fix bug in wrapping
6530           while at it.
6531         * testsuite/caps/value_serialize.c: (test1),
6532         (test_string_serialization), (test_string_deserialization), (main):
6533           add tests for string (de)serialization
6534
6535 2004-11-26  Wim Taymans  <wim@fluendo.com>
6536
6537         * testsuite/threads/159566.c: (object_deep_notify), (main):
6538         * testsuite/threads/Makefile.am:
6539         Added testsuite to show bug #159566
6540
6541 2004-11-25  Wim Taymans  <wim@fluendo.com>
6542
6543         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
6544         (gst_thread_child_state_change), (gst_thread_main_loop):
6545         Ref the thread object in the GThread mainloop. Break out of the
6546         thread mainloop if it holds the last ref. This properly exits
6547         the threads when disposing the thread from its own context. It
6548         also avoids possible deadlocks in the dispose function.
6549
6550 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
6551
6552         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
6553         it is necessary to wait.
6554
6555 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6556
6557         * docs/pwg/building-boiler.xml:
6558           Make description somewhat clearer.
6559
6560 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6561
6562         * docs/upload.mak:
6563           Apparently docs changed location on FDO's server.
6564
6565 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6566
6567         * docs/pwg/appendix-checklist.xml:
6568           Add some random notes on things to check when writing an element.
6569           This list can be extended as people see fit.
6570
6571 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
6572
6573         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
6574         (gst_queue_link_src): Allow for renegotiating the caps of the sink
6575         pad. The queue will now wait until it is empty and forward the new
6576         caps to the source.
6577         * gst/gstbin.c (gst_bin_set_element_sched)
6578         (gst_bin_unset_element_sched): Make sure that all elements and
6579         links are registered and unregistered with the scheduler exactly
6580         once. This elaborates on a fix by Benjamin Otte, but
6581         guarantees that decoupled elements are also registered.
6582
6583 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6584
6585         * docs/manual/quotes.xml:
6586           add a quote
6587         * configure.ac:
6588         * gst/gst.c:
6589         * gst/gstinfo.c:
6590           add LIBDIR and move init message higher up so it's at the start
6591
6592 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
6593
6594         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
6595         * gstreamer.spec.in: add fair
6596
6597 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6598
6599         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6600         * gst/elements/gstidentity.c: (gst_identity_class_init):
6601           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
6602           <teuf@gnome.org> (#157263).
6603         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
6604         (gst_type_find_handle_src_query):
6605           Subtract size of internally stored data from position queries.
6606
6607 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
6608
6609         * gst/schedulers/fairscheduler.c:
6610         * gst/schedulers/faircothreads.c:
6611         * gst/schedulers/faircothreads.h:
6612         New cothread based scheduler: Fair scheduler.
6613         * gst/schedulers/gthread-cothreads.h: 
6614         Add the standard #if around the whole file.
6615         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
6616         compilation of the functions defined in this file. This is
6617         necessary to be able to use this file as a normal header.
6618         * gst/schedulers/Makefile.am: Add compiling support for fair
6619         scheduler.
6620         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
6621         scheduler cothreads layer from documentation generation.
6622
6623 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6624
6625         * gst/autoplug/gstspideridentity.c:
6626         (gst_spider_identity_sink_loop_type_finding):
6627           Don't crash if that function is not implemented.
6628
6629 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6630
6631         * docs/pwg/advanced-types.xml:
6632           Another typo.
6633
6634 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6635
6636         * docs/pwg/intro-preface.xml:
6637           Hm, ok, so the brackets weren't really useful...
6638         * docs/pwg/other-ntoone.xml:
6639           Fix embarassing typo.
6640
6641 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6642
6643         * docs/pwg/intro-preface.xml:
6644           Rewrite preface.
6645
6646 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6647
6648         * docs/pwg/advanced-scheduling.xml:
6649         * docs/pwg/advanced-tagging.xml:
6650         * docs/pwg/advanced-types.xml:
6651         * docs/pwg/building-boiler.xml:
6652         * docs/pwg/building-chainfn.xml:
6653         * docs/pwg/building-signals.xml:
6654         * docs/pwg/building-state.xml:
6655         * docs/pwg/building-testapp.xml:
6656         * docs/pwg/intro-basics.xml:
6657         * docs/pwg/other-manager.xml:
6658         * docs/pwg/other-source.xml:
6659           Typo fixes.
6660         * docs/pwg/other-manager.xml:
6661           Add some first content. No example code yet.
6662         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6663           Remove double newlines.
6664
6665 2004-11-04  Wim Taymans  <wim@fluendo.com>
6666
6667         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6668         (remove_from_group), (normalize_group), (group_migrate_connected),
6669         (gst_opt_scheduler_iterate):
6670         * testsuite/schedulers/.cvsignore:
6671         * testsuite/schedulers/Makefile.am:
6672         * testsuite/schedulers/queue_link.c: (main):
6673         Added testcase for scheduler segfault.
6674         Fix scheduler segfault when removing a decoupled
6675         entry point as the last element from a group.
6676
6677 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6678
6679         * gst/gstmarshal.list: add missing marshaller, fixes build
6680
6681 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6682
6683         * docs/random/signal: added notes about using BOXED for GstBuffer
6684         signal marshallers, not POINTER
6685
6686 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6687
6688         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
6689         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
6690         POINTER=>BOXED changes to marshal GstBuffers
6691
6692 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
6693
6694         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
6695         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
6696
6697 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
6698
6699         * docs/gst/gstreamer-sections.txt:
6700         * docs/gst/tmpl/gstcaps.sgml:
6701         * docs/gst/tmpl/gsterror.sgml:
6702         * docs/gst/tmpl/gstinfo.sgml:
6703         * docs/gst/tmpl/gstmacros.sgml:
6704         * docs/gst/tmpl/gstutils.sgml:
6705         * docs/random/ensonic/interfaces.txt:
6706         * gst/gstinfo.h:
6707           added some more docs, removed two obsolete defines
6708
6709 2004-11-02  Kjartan Maraas <as at gnome.org>
6710
6711         reviewed by: Wim Taymans, Ronald Bultje.
6712
6713         * gst/cothreads.c: (cothread_create):
6714         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
6715         (gst_bin_child_state_change_func):
6716         * gst/gstbuffer.c: (gst_buffer_span):
6717         * gst/gstelement.c: (gst_element_get_index),
6718         (gst_element_get_event_masks), (gst_element_get_query_types),
6719         (gst_element_get_formats):
6720         * gst/gsterror.c: (_gst_core_errors_init),
6721         (_gst_library_errors_init), (_gst_resource_errors_init),
6722         (_gst_stream_errors_init):
6723         * gst/gstobject.c: (gst_object_default_deep_notify):
6724         * gst/gstpad.c: (gst_pad_get_event_masks),
6725         (gst_pad_get_internal_links_default):
6726         * gst/gstplugin.c: (gst_plugin_register_func),
6727         (gst_plugin_get_module):
6728         * gst/gststructure.c: (gst_structure_get_string),
6729         (gst_structure_get_abbrs), (gst_structure_from_abbr),
6730         (gst_structure_to_abbr):
6731         * gst/gstutils.c: (gst_print_element_args):
6732         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6733         (setup_group_scheduler), (gst_opt_scheduler_iterate):
6734         Aplied part of patch #157127: Cleanup of issues reported by 
6735         sparse.
6736         Also do not try to use cothreads when there is no cothread
6737         context yet.
6738
6739 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
6740
6741         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
6742         (gst_opt_scheduler_iterate):
6743         Applied patch #154061. Running a pipeline in which an element 
6744         calls GST_ELEMENT_ERROR in the chain function, the opt 
6745         scheduler doesn't unref the chain so it never gets freed.
6746
6747 2004-11-02  Wim Taymans  <wim@fluendo.com>
6748
6749         * gst/gststructure.c: (gst_structure_get_abbrs),
6750         (gst_structure_from_abbr), (gst_structure_to_abbr):
6751         Remove that ugly if-then thing in the code that converts
6752         between strings and types.
6753
6754 2004-11-02  Wim Taymans  <wim@fluendo.com>
6755
6756         * gst/gstscheduler.c: (gst_scheduler_add_element),
6757         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
6758         Aplied clock distribution patch, this should fix bug
6759         #148787.
6760
6761 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
6762
6763         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
6764
6765         * po/LINGUAS:
6766         * po/nb.po:
6767           Added Norwegian Bokmaal translation
6768
6769 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6770
6771         * tools/gst-inspect.c: (print_signal_info):
6772           print signal arguments as pointers if they are
6773
6774 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
6775
6776         * docs/pwg/building-boiler.xml:
6777           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
6778
6779 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6780
6781         * gst/parse/parse.l:
6782         * testsuite/parse/parse1.c: (main):
6783         Since parse can do 'element name=a:b' make 'a:b.' work as
6784         well. 
6785         Added testcase to verify fix.
6786
6787 2004-10-19  Wim Taymans  <wim at fluendo dot com>
6788
6789         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
6790         Use the realpad when printing the direction.
6791         Add extra \n when printing extensions of typefind factories.
6792
6793 2004-10-13  David Schleef  <ds@schleef.org>
6794
6795         * examples/manual/Makefile.am: $< isn't portable in Makefile
6796         rules.
6797
6798 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
6799
6800         * docs/gst/tmpl/gstobject.sgml:
6801         * docs/gst/tmpl/gstplugin.sgml:
6802         * docs/gst/tmpl/gstpluginfeature.sgml:
6803         * docs/gst/tmpl/gstregistry.sgml:
6804         * docs/gst/tmpl/gstversion.sgml:
6805         * gst/gstbin.c:
6806           more api documentation
6807         * gst/gstplugin.c: (gst_plugin_register_func),
6808         (gst_plugin_check_file), (gst_plugin_load_file):
6809           better error signaling and logging
6810
6811 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6812
6813         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
6814           Subtract current queue contents from position queries.
6815
6816 2004-10-11  Johan Dahlin  <johan@gnome.org>
6817
6818         * gst/gsturi.c (gst_uri_get_location): unescape string
6819         (gst_uri_construct): escape string.
6820
6821 2004-10-11  Benjamin Otte  <otte@gnome.org>
6822
6823         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
6824         (gst_pad_try_set_caps_nonfixed):
6825           allow renegotiation of unconnected pads (as inside spider). Simply
6826           return OK if unconnected - mimic try_set_caps there.
6827
6828 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6829
6830         * gst/gstbin.c: (gst_bin_sync_children_state):
6831           Add missing break.
6832
6833 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6834
6835         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
6836         Set element to EOS before sending EOS event
6837
6838 2004-10-08  Wim Taymans  <wim at fluendo dot com>
6839
6840         * gst/elements/gsttypefindelement.c:
6841         (gst_type_find_element_handle_event):
6842         Handle EOS events when doing the transition from
6843         typefind to data passing. This should fix the
6844         infinite loops in short files.
6845
6846 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6847
6848         * gst/gstthread.c: (gst_thread_change_state),
6849         (gst_thread_child_state_change):
6850         Make sure no iteration happens while performing
6851         the state change as it could mess up the internal
6852         consistency of the thread state.
6853
6854 2004-10-07  Wim Taymans  <wim at fluendo dot com>
6855
6856         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
6857         (gst_thread_change_state), (gst_thread_child_state_change):
6858         Do not try to grab the iterate lock in the state change method
6859         when we are in the same thread as the iterate or else we
6860         could deadlock. Some other cleanups.
6861
6862 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6863
6864         * configure.ac:
6865           bump nano to cvs
6866
6867 === release 0.8.7 ===
6868
6869 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6870
6871         * configure.ac:
6872         * NEWS:
6873         * RELEASE:
6874         * configure.ac:
6875           releasing 0.8.7, "A Cruise"
6876
6877 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
6878
6879         * docs/random/mimetypes:
6880         Add an entry for Sony ATRAC3 audio format with mime-type
6881         used by rmdemux et riff-read
6882
6883 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6884
6885         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6886         Push the buffer store instead of clearing it in case that
6887         the stream is not seekable.
6888
6889 2004-10-06  Wim Taymans  <wim at fluendo dot com>
6890
6891         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
6892         (gst_thread_main_loop):
6893         Lock the iteration and the state change so that automatic
6894         negotiation and fixation does not happen at the same time
6895         as the in stream negotiation.
6896
6897 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6898
6899         * configure.ac:
6900           bump nano to cvs
6901
6902 === release 0.8.6 ===
6903
6904 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6905
6906         * configure.ac:
6907         * NEWS:
6908         * RELEASE:
6909         * configure.ac:
6910           releasing 0.8.6, "Narc"
6911
6912 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6913
6914         * configure.ac:
6915           prerel bump
6916
6917 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6918
6919         patch by: Steve Lhomme
6920
6921         * gst/elements/gstfakesrc.c:
6922         * gst/elements/gstidentity.c:
6923         * gst/gstthread.c:
6924           Fix for #153881
6925
6926 2004-10-01  Wim Taymans  <wim at fluendo dot com>
6927
6928         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
6929         Fix threadsafety of the crc checking function.
6930
6931 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6932
6933         patch by: Ronald Bultje
6934
6935         * gst/elements/gsttypefindelement.c: (stop_typefinding),
6936         (gst_type_find_element_handle_event),
6937         (gst_type_find_element_chain):
6938         * gst/elements/gsttypefindelement.h:
6939          #153657.
6940          Filter out discont event from seekable sources when typefind
6941          asks them to seek.  Fixes typefind with demuxers for
6942          avi, asf and matroska.
6943
6944 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6945
6946         * docs/gst/gstreamer-sections.txt:
6947         * gst/gstcaps.c:
6948         * gst/gstcaps.h:
6949         * gst/gstpad.c:
6950           Revert preferred caps: (#147789)
6951
6952 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
6953
6954         * win32/dirent.c:
6955           fix a memory leak
6956
6957 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6958
6959         * configure.ac:
6960           bump for prerelease
6961
6962 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6963
6964         * docs/Makefile.am:
6965         * docs/manual/elements-api.xml:
6966           restructure so that common stuff is shown first
6967         * docs/manual/init-api.xml:
6968           convert to examples
6969         * docs/manual/manual.xml:
6970         * docs/manuals.mak:
6971         * docs/url.entities:
6972           link to API on the website, possibly override later in build
6973         * examples/manual/.cvsignore:
6974           ignore more
6975         * examples/manual/Makefile.am:
6976           add more examples
6977         * examples/manual/extract.pl:
6978           error out on failure
6979
6980 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
6981
6982         * docs/gst/tmpl/gstthread.sgml:
6983         * docs/manual/init-api.xml:
6984         * examples/manual/Makefile.am:
6985           convert two code bits to examples
6986
6987 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
6988
6989         * gst/gstelement.c: (gst_element_change_state):
6990           Well, actually, I was about to remove this insane assert when
6991           I noticed Wim already did that. A warning is nice so we can
6992           fix actual ugs (using --g-fatal-warnings and backtraces), so
6993           I added that instead.
6994
6995 2004-09-06  Wim Taymans  <wim@fluendo.com>
6996
6997         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
6998         (gst_element_threadsafe_properties_post_run),
6999         (gst_element_set_state), (gst_element_change_state):
7000         Added extra refcounting around various places. 
7001
7002 2004-09-06  Wim Taymans  <wim@fluendo.com>
7003
7004         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7005         Fix debug info.
7006
7007 2004-09-06  Wim Taymans  <wim@fluendo.com>
7008
7009         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
7010         (remove_from_group):
7011         Some more debug info.
7012
7013 2004-09-03  Wim Taymans  <wim@fluendo.com>
7014
7015         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
7016         (gst_fakesrc_init), (gst_fakesrc_set_clock),
7017         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
7018         (gst_fakesrc_get), (gst_fakesrc_change_state):
7019         * gst/elements/gstfakesrc.h:
7020         * gst/elements/gstidentity.c: (gst_identity_class_init),
7021         (gst_identity_init), (gst_identity_chain),
7022         (gst_identity_set_property), (gst_identity_get_property),
7023         (gst_identity_change_state):
7024         * gst/elements/gstidentity.h:
7025         Added datarate properties to limit the datarate.
7026
7027 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7028
7029         * gst/autoplug/gstspider.c: (plugin_init):
7030           don't set a rank. We don't want to autoplug by inserting spiders.
7031
7032 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7033
7034         * gst/autoplug/gstspider.c: (gst_spider_class_init),
7035         (gst_spider_identity_plug):
7036           add a template for spider's sink
7037         * gst/gst.c: (gst_register_core_elements):
7038           queue's rank should be NULL, we don't want spider to add it.
7039
7040 2004-08-18  David Schleef  <ds@schleef.org>
7041
7042         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
7043         * docs/libs/Makefile.am: same
7044         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
7045         * docs/random/ds/0.9-planning: random additions
7046         * docs/random/ds/0.9-suggested-changes: same
7047         * gst/gstxml.h: remove vestigal GstXMLNs definition
7048
7049         Preferred caps: (#147789)
7050         * docs/gst/gstreamer-sections.txt: Add symbols
7051         * docs/gst/tmpl/gstcaps.sgml: Add symbols
7052         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7053         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
7054         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
7055         (gst_caps_get_preferred), (gst_caps_set_preferred),
7056         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
7057         (gst_caps_use_preferred): Handle caps preferences
7058         * gst/gstcaps.h: Add caps preferences
7059         * gst/gstpad.c: (gst_pad_link_get_preferred),
7060         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
7061         (gst_pad_renegotiate), (gst_pad_guess_preferred),
7062         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
7063         negotiation.
7064
7065 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7066
7067         * gst/autoplug/gstspideridentity.c:
7068         (gst_spider_identity_request_new_pad):
7069         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
7070         (gst_aggregator_init):
7071         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
7072         (gst_fakesink_init):
7073         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
7074         (gst_fakesrc_init):
7075         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
7076         (gst_fdsink_init):
7077         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
7078         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
7079         (gst_filesink_init):
7080         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
7081         (gst_filesrc_init):
7082         * gst/elements/gstidentity.c: (gst_identity_base_init),
7083         (gst_identity_init):
7084         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
7085         (gst_multifilesrc_init):
7086         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
7087         (gst_pipefilter_init):
7088         * gst/elements/gststatistics.c: (gst_statistics_base_init),
7089         (gst_statistics_init):
7090         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
7091         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
7092           s/gst_pad_new/&_from_template/
7093           register pad templates in the base_init function
7094           add static pad template definitions
7095
7096 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7097
7098         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
7099         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
7100         * testsuite/refcounting/pad.c: (main):
7101         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
7102           s/gst_pad_new/&_from_template/
7103           prepare deprecation of gst_pad_new
7104
7105 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7106
7107         patch by: Luca Ognibene <skaboy81@virgilio.it>
7108
7109         * gst/gstcaps.c:
7110         * gst/gstelement.c:
7111         * gst/gstpad.c:
7112         * gst/gstxml.c:
7113           fix memleaks.  Fixes #150001
7114
7115 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7116
7117         * docs/random/ds/0.9-suggested-changes:
7118           add notes - mostly about pad templates
7119
7120 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
7121
7122         * win32/GStreamer.vcproj:
7123           temporary locale files are .gmo not .mo
7124
7125 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7126
7127         * configure.ac: bump nano to cvs
7128
7129 === release 0.8.5 ===
7130
7131 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7132
7133         * configure.ac:
7134           releasing 0.8.5, "Stuttgart"
7135         * NEWS:
7136         * RELEASE:
7137         * configure.ac:
7138         * docs/random/release:
7139           updates for release
7140
7141 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7142
7143         patch by: Wim Taymans (wim@fluendo.com)
7144
7145         * gst/gstbuffer.c:
7146         * gst/gstindex.h:
7147         * libs/gst/dataprotocol/dataprotocol.c:
7148           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
7149
7150 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7151
7152         * Makefile.am:
7153         * win32/MANIFEST:
7154           add win32 dir to the build.  Fixes #149981.
7155
7156 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7157
7158         * configure.ac:
7159           bump libtool versioning
7160         * gst/gststructure.c:
7161           mark function as static
7162         * po/af.po:
7163         * po/az.po:
7164         * po/ca.po:
7165         * po/cs.po:
7166         * po/en_GB.po:
7167         * po/fr.po:
7168         * po/nl.po:
7169         * po/sq.po:
7170         * po/sr.po:
7171         * po/sv.po:
7172         * po/tr.po:
7173         * po/uk.po:
7174           translations update
7175         * win32/README.txt:
7176           trademark protection
7177
7178 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7179
7180         * configure.ac:
7181           fix GST_ORIGIN
7182           set GST_PACKAGE to source, and distinguish between release and other
7183         * tools/gst-inspect.c:
7184           print out plugin an element factory is part of so we see this info
7185
7186 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
7187
7188         * docs/gst/gstreamer-sections.txt:
7189         * docs/gst/tmpl/gstbuffer.sgml:
7190         * docs/gst/tmpl/gstschedulerfactory.sgml:
7191           reorder docs a little, make GstBuffer's more sensible.
7192         * gst/gstbuffer.h:
7193           API: added GST_BUFFER_FLAG_DELTA_UNIT
7194         * gst/gstscheduler.c:
7195           comment API addition
7196
7197 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7198
7199         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7200           work with non-regular files that can be mmapped (like /dev/zero)
7201         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
7202           get rid of typefinds that require a seek when we can't seek instead
7203           of trying them over and over again
7204         * tools/gst-launch.c: (idle_func), (error_cb), (main):
7205           return non-zero failure value when the pipeline was interrupted or
7206           an error occurred
7207
7208 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7209
7210         * win32/config.h:
7211         * win32/GStreamer.vcproj:
7212           compile and install the locales
7213
7214 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7215
7216         * gst/gstvalue.c:
7217           fix a possible memory leak under Windows
7218
7219 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
7220
7221         * win32/GStreamer.vcproj:
7222           fix a memory leak that occured under Windows
7223         * win32/gstreamer.def:
7224           add gst_scheduler_register
7225
7226 2004-08-11  Benjamin Otte  <otte@gnome.org>
7227
7228         * docs/gst/gstreamer-sections.txt:
7229         * gst/gstscheduler.c: (gst_scheduler_register):
7230         * gst/gstscheduler.h:
7231           API:
7232           add gst_scheduler_register shortcut similar to gst_element_register
7233         * gst/schedulers/entryscheduler.c: (plugin_init):
7234         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7235         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
7236           use it
7237
7238 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
7239
7240         * gst/gstvalue.h:
7241           fix a memory leak that occured under Windows
7242
7243 2004-08-10  Colin Walters  <walters@redhat.com>
7244
7245         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
7246         Don't use O_EXCL to open temporary registry.  It will prevent
7247         registry creation if a temporary one already exists, which
7248         is unnecessary.
7249
7250 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7251
7252         * docs/gst/gstreamer-sections.txt:
7253         * docs/gst/tmpl/gstvalue.sgml:
7254           remove some valuable stuff from the documentation due to the use of GST_EXPORT
7255
7256 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7257
7258         * win32/gstbytestream.vcproj:
7259         * win32/gstelements.vcproj:
7260         * win32/gstgetbits.vcproj:
7261         * win32/gst-inspect.vcproj:
7262         * win32/gst-launch.vcproj:
7263         * win32/gstoptimalscheduler.vcproj:
7264         * win32/GStreamer.vcproj:
7265         * win32/gst-register.vcproj:
7266         * win32/gstspider.vcproj:
7267           update the include and lib dirs to fit standard libraries as
7268           described in the Win32 manual
7269
7270 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7271
7272         * win32/config.h:
7273         * win32/gstversion.h:
7274           enable NLS again, push the version number for the coming 0.8.5 release
7275
7276 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
7277
7278         * gst/gstvalue.h:
7279           export gst_type_XXX for windows DLLs
7280
7281 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7282
7283         * docs/faq/gst-uninstalled:
7284           fix PKG_CONFIG_PATH and PYTHONPATH
7285         * gst/schedulers/Makefile.am:
7286           cleanup
7287         * libs/gst/bytestream/bytestream.c:
7288           remove newline
7289         * po/LINGUAS:
7290         * po/sq.po:
7291           adding Albanian translation (Laurent Dhima)
7292         * po/cs.po:
7293           updated
7294
7295 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7296
7297         * po/ca.po:
7298         * po/sv.po:
7299           updated translations
7300
7301 2004-08-04  Benjamin Otte  <otte@gnome.org>
7302
7303         * tests/mass_elements.c: (main):
7304           allow specifying src and sink element explicitly, so I can test
7305           videotestsrc instead of fakesrc
7306
7307 2004-08-04  Benjamin Otte  <otte@gnome.org>
7308
7309         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
7310         (gst_structure_id_empty_new), (gst_structure_empty_new),
7311         (gst_structure_copy):
7312           add gst_structure_id_empty_new_with_size to allow preallocating
7313           value array sizes. Use this in gst_structure_copy to get rid of
7314           reallocs.
7315           don't do quark=>string=>quark when copying structures
7316
7317 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
7318
7319         * docs/manual/win32.xml:
7320         * win32/README.txt:
7321           update documentation with the clean version of dependencies
7322
7323 2004-08-03  Benjamin Otte  <otte@gnome.org>
7324
7325         * gst/schedulers/entryscheduler.c:
7326         (gst_entry_scheduler_remove_element):
7327           fix for GST_DISABLE_DEBUG
7328         * tools/gst-launch.c: (print_tag):
7329           fixes for G_DISABLE_ASSERT
7330
7331 2004-08-03  Benjamin Otte  <otte@gnome.org>
7332
7333         * gst/gst.c: (gst_register_core_elements):
7334           fix for G_DISABLE_ASSERT
7335         * gst/gstinfo.c: (__gst_in_valgrind):
7336           add for GST_DISABLE_DEBUG
7337
7338 2004-08-03  Benjamin Otte  <otte@gnome.org>
7339
7340         * gst/parse/parse.l:
7341           fix for G_DISABLE_ASSERT
7342
7343 2004-08-03  Wim Taymans  <wim@fluendo.com>
7344
7345         * gst/gstbin.c: (gst_bin_get_type),
7346         (gst_bin_child_state_change_func):
7347         * gst/gstthread.c: (gst_thread_change_state):
7348         Backported some debug logging from a reverted patch
7349         Don't try to destroy the thread twice. Added some more
7350         debugging in GstThread. Unlock and signal even if we
7351         are in the thread context.
7352
7353 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7354
7355         * po/uk.po:
7356           updated translation
7357
7358 2004-07-30  David Schleef  <ds@schleef.org>
7359
7360         * gst/gstatomic_impl.h: Enable atomic code for x86_64
7361
7362 2004-07-29  David Schleef  <ds@schleef.org>
7363
7364         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
7365         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
7366
7367 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7368
7369         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7370         (gst_bin_add_func), (gst_bin_remove_func),
7371         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
7372         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
7373         (gst_bin_change_state_norecurse), (gst_bin_dispose),
7374         (gst_bin_sync_children_state):
7375         * gst/gstbin.h:
7376         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
7377         (gst_thread_change_state):
7378         * testsuite/states/Makefile.am:
7379           revert state change patches as agreed so we can rework them
7380           gradually
7381
7382 2004-07-29  Benjamin Otte  <otte@gnome.org>
7383
7384         * libs/gst/control/Makefile.am:
7385           link to libgstreamer (fixes Debian bug 262019, see
7386           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
7387
7388 2004-07-29  Wim Taymans  <wim@fluendo.com>
7389
7390         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7391         (check_from_fraction_convert), (transform_test), (main):
7392         Make the test less pedantic about float roundoff errors.
7393
7394 2004-07-29  Benjamin Otte  <otte@gnome.org>
7395
7396         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
7397         (gst_filesrc_srcpad_event):
7398           make seek events to before start/after end of file not fail, but
7399           seek to start/end instead
7400         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
7401           add more output
7402
7403 2004-07-29  Benjamin Otte  <otte@gnome.org>
7404
7405         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7406           check that caps are fixed
7407         * gst/gstpad.c: (gst_pad_template_new):
7408           don't try to simplify caps, costs too much time on gst_init
7409         * gst/gstplugin.c: (gst_plugin_add_feature):
7410           G_ERROR if features are added twice
7411         * gst/gsttypefind.c: (gst_type_find_register):
7412         * gst/gstelementfactory.c: (gst_element_register):
7413           don't add features twice
7414         * docs/random/ds/0.9-suggested-changes:
7415           add note about possible gst_init optimization
7416
7417 2004-07-28  David Schleef  <ds@schleef.org>
7418
7419         * testsuite/elements/Makefile.am:
7420         * testsuite/elements/struct_i386.h:
7421         * testsuite/elements/struct_size.c: (main):  A little test
7422         to keep distcheck from working if someone changes a structure
7423         size accidentally.
7424
7425 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7426
7427         * docs/libs/Makefile.am:
7428         * docs/libs/gstreamer-libs-docs.sgml:
7429         * docs/libs/gstreamer-libs-sections.txt:
7430         * docs/libs/tmpl/gstbytestream.sgml:
7431         * docs/libs/tmpl/gstcontrol.sgml:
7432         * docs/libs/tmpl/gstdataprotocol.sgml:
7433         * docs/libs/tmpl/gstgetbits.sgml:
7434         * libs/gst/bytestream/Makefile.am:
7435         * libs/gst/bytestream/bytestream.c:
7436         * libs/gst/bytestream/bytestream.h:
7437         * libs/gst/control/Makefile.am:
7438         * libs/gst/dataprotocol/Makefile.am:
7439         * libs/gst/getbits/Makefile.am:
7440         * libs/gst/getbits/getbits.h:
7441           various doc and style fixes, adding bytestream to libs docs.
7442
7443 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7444
7445         * docs/gst/gstreamer-docs.sgml:
7446         * docs/libs/Makefile.am:
7447         * docs/libs/gstreamer-libs-docs.sgml:
7448         * docs/libs/gstreamer-libs-sections.txt:
7449         * libs/gst/control/dparam.c:
7450           more doc fixes.  gst-libs docs now build the same way as gst.
7451
7452 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7453
7454         * configure.ac:
7455         * testsuite/Makefile.am:
7456         * testsuite/bins/Makefile.am:
7457         * testsuite/caps/Makefile.am:
7458         * testsuite/cleanup/Makefile.am:
7459         * testsuite/clock/Makefile.am:
7460         * testsuite/debug/Makefile.am:
7461         * testsuite/dlopen/Makefile.am:
7462         * testsuite/dynparams/Makefile.am:
7463         * testsuite/elements/.cvsignore:
7464         * testsuite/elements/Makefile.am:
7465         * testsuite/enumcaps/Makefile.am:
7466         * testsuite/enumcaps/enumcaps.c:
7467         * testsuite/ghostpads/Makefile.am:
7468         * testsuite/indexers/Makefile.am:
7469         * testsuite/negotiation/Makefile.am:
7470         * testsuite/parse/Makefile.am:
7471         * testsuite/plugin/Makefile.am:
7472         * testsuite/refcounting/Makefile.am:
7473         * testsuite/schedulers/.cvsignore:
7474         * testsuite/states/Makefile.am:
7475         * testsuite/tags/Makefile.am:
7476         * testsuite/threads/Makefile.am:
7477           fold enumcaps into caps dir
7478           clean up Makefile.am's for testsuite
7479
7480 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
7481
7482         * docs/gst/Makefile.am:
7483         * docs/libs/Makefile.am:
7484           clean up docs build.  Fixes needless rebuilding of template files.
7485
7486 2004-07-28  Wim Taymans  <wim@fluendo.com>
7487
7488         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
7489         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
7490         Make sure that a bin state change tries to keep the children
7491         in sync. 
7492         Added debug logging to the thread.
7493
7494 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7495
7496         * win32/GStreamer.vcproj:
7497         * win32/gstreamer.def:
7498           more exports for the plugins
7499
7500 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
7501
7502         * win32/gstgetbits.vcproj:
7503         * win32/gstgetbits.def:
7504         * win32/msvc71.sln:
7505           add support for the getbits plugin
7506
7507 2004-07-27  Wim Taymans  <wim@fluendo.com>
7508
7509         * gst/gstvalue.c: (gst_value_transform_double_fraction),
7510         (gst_value_transform_fraction_double), (_gst_value_initialize):
7511         * testsuite/caps/Makefile.am:
7512         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
7513         (check_from_fraction_convert), (transform_test), (main):
7514         Added transform functions between double and fraction.
7515         Added testcase to verify transforms
7516
7517 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7518
7519         * win32/GStreamer.vcproj:
7520           rename GStreamer-0.8.lib to libgstreamer.lib
7521
7522 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7523
7524         * win32/gstelements.vcproj:
7525         * win32/gstoptimalscheduler.vcproj:
7526           fixes for the Release build
7527
7528 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7529
7530         * win32/config.h:
7531           update the version number
7532
7533 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7534
7535         * win32/GStreamer.vcproj:
7536           add gstinterface to the build
7537
7538 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
7539
7540         * win32/gstreamer.def:
7541           add many definitions needed by plugins,
7542           GST_CAT_DEFAULT only available in the Debug build ?
7543
7544 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
7545
7546         * gst/gstelement.c: (gst_element_set_eos_recursive):
7547           various whitespace fixes.
7548           doc fix, fixes #148497
7549
7550 2004-07-25  Benjamin Otte  <otte@gnome.org>
7551
7552         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
7553           don't delay links on the sink elements, it causes unnegotiated
7554           links.
7555         * gst/elements/gsttypefindelement.c:
7556         (gst_type_find_element_base_init):
7557           add our padtemplates, we indeed do have some.
7558         * gst/elements/gsttypefindelement.c:
7559         (gst_type_find_element_handle_event),
7560         (gst_type_find_element_chain):
7561           don't push data when typefinding failed.
7562         * gst/gstpad.c: (gst_pad_link_fixate):
7563           check that no fixate function returns empty caps.
7564         * gst/gstpad.c: (gst_pad_push):
7565           check that the link is negotiated before data gets pushed.
7566         * tools/gst-register.c: (main):
7567           don't assert (fixes #148283)
7568
7569 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7570
7571         * docs/gst/gstreamer-sections.txt:
7572         * docs/gst/tmpl/gstconfig.sgml:
7573           add GST_PLUGIN_EXPORT definition
7574
7575 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7576
7577         * gst/gstplugin.h:
7578         * gst/gstconfig.h.in:
7579         * win32/gstconfig.h:
7580         * win32/gstelements.def:
7581         * win32/gstelements.vcproj:
7582         * win32/gstoptimalscheduler.def:
7583         * win32/gstoptimalscheduler.vcproj:
7584         * win32/gstspider.def:
7585         * win32/gstspider.vcproj:
7586           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
7587
7588 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
7589
7590         * docs/gst/gstreamer-sections.txt:
7591           remove GST_CAT_DEFAULT because the type has changed
7592
7593 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7594
7595         * win32/gstbytestream.vcproj:
7596         * win32/gstelements.vcproj:
7597         * win32/gst-inspect.vcproj:
7598         * win32/gst-launch.vcproj:
7599         * win32/gstoptimalscheduler.vcproj:
7600         * win32/GStreamer.vcproj:
7601         * win32/gst-register.vcproj:
7602         * win32/gstspider.vcproj:
7603         * win32/msvc71.sln:
7604           Copy the files where needed after building, The testsuite will be
7605           built separately
7606
7607 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
7608
7609         * win32/config.h:
7610         * win32/README.txt:
7611         * docs/manual/win32.xml:
7612         Fixed the plugin and GStreamer location
7613
7614 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7615
7616         * win32/gstreamer.def:
7617         More exports for the plugins
7618
7619 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7620
7621         * gst/gstinfo.h:
7622         Marc was right, we need to export literally GST_CAT_DEFAULT
7623
7624 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7625
7626         * win32/config.h:
7627         NLS crashes in gettext, disabled until this is solved
7628
7629 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7630
7631         * win32/gst-inspect.vcproj:
7632         * win32/gst-launch.vcproj:
7633         Should use NLS when available
7634
7635 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7636
7637         * gst/registries/gstxmlregistry.c:
7638         removing the file doesn't seem to be a good idea on Linux
7639
7640 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
7641
7642         * gst/registries/gstxmlregistry.c:
7643         Remove the registry before renaming the tempfile (needed for Windows)
7644
7645 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7646
7647         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
7648         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
7649         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
7650         * gst/elements/gstmultifilesrc.h:
7651         Added newmedia property so it generates newmedia events between each
7652         file when property is set, as well as fixed eos handling
7653
7654 2004-07-22  David Schleef  <ds@schleef.org>
7655
7656         * gst/gststructure.c: (gst_structure_id_empty_new),
7657         (gst_structure_empty_new):  Set type field correctly.
7658         * gst/gststructure.h: Check type field correctly.
7659         * testsuite/caps/Makefile.am:
7660         * testsuite/caps/structure.c: (test1), (main): Add a very small
7661         test for structures.
7662
7663 2004-07-22  David Schleef  <ds@schleef.org>
7664
7665         * docs/random/ds/0.9-suggested-changes: more comments
7666         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
7667
7668 2004-07-22  Benjamin Otte  <otte@gnome.org>
7669
7670         * gst/gstelementfactory.c: (gst_element_register):
7671           set the factory in the class struct, so gst_element_get_factory
7672           actually works
7673         * gst/parse/grammar.y:
7674           set element to playing when it gets unlocked as we can't rely on the
7675           bin state - all elements in the bin state might still be locked in
7676           NULL)
7677
7678 2004-07-22  Benjamin Otte  <otte@gnome.org>
7679
7680         * gst/gstelement.c: (gst_element_set_state_func):
7681           make this a static function
7682
7683 2004-07-22  Wim Taymans  <wim@fluendo.com>
7684
7685         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7686         (gst_opt_scheduler_pad_link):
7687         fix 147894-2 and the group_link problem.
7688
7689 2004-07-22  Wim Taymans  <wim@fluendo.com>
7690
7691         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7692         (handoff_identity), (main):
7693         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7694         (handoff_identity), (main):
7695         * testsuite/schedulers/Makefile.am:
7696         * testsuite/schedulers/group_link.c: (main):
7697         Show bug in scheduler when linking chain and loop based element 
7698         where the chain based element was not yet in a group.
7699
7700 2004-07-21  Benjamin Otte  <otte@gnome.org>
7701
7702         * gst/.cvsignore:
7703         * gst/autoplug/.cvsignore:
7704         * gst/elements/.cvsignore:
7705         * gst/indexers/.cvsignore:
7706         * libs/gst/bytestream/.cvsignore:
7707         * libs/gst/control/.cvsignore:
7708         * libs/gst/getbits/.cvsignore:
7709         * testsuite/states/.cvsignore:
7710         * testsuite/threads/.cvsignore:
7711           keep this up to date, since I seem to be the only one who cares
7712           about not missing files on commits (editor's note: no you don't,
7713           but feel free to change them at the time you add stuff instead
7714           of later on)
7715
7716 2004-07-21  Benjamin Otte  <otte@gnome.org>
7717
7718         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
7719         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
7720         (gst_bin_child_state_change_func), (set_kid_state_func),
7721         (gst_bin_set_state), (gst_bin_change_state_norecurse):
7722           make state changes work correctly and reentrant (so removing
7723           elements from bins during state changes of bins doesn't cause
7724           segfaults or even wrong states)
7725           add debugging category and debugging output to print children states
7726         * gst/gstbin.c: (gst_bin_dispose): 
7727           add some assertion checks
7728         * gst/gstbin.h:
7729         * gst/gstbin.c: (gst_bin_sync_children_state):
7730           deprecate this function - it just does gst_bin_set_state (bin,
7731           GST_STATE (bin)) 
7732         * testsuite/threads/queue.c: (main):
7733           don't use gst_bin_sync_children_state anymore
7734         * testsuite/states/Makefile.am:
7735         * testsuite/states/bin.c:
7736           test that the state changes of bins work as expected
7737         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
7738           some adjustments to change states correctly, too
7739         * gst/gstthread.c: (gst_thread_change_state):
7740           don't enable/disable "threadsafe" properties, they're unused and
7741           cause random segfaults
7742         * testsuite/threads/Makefile.am:
7743           the queue check randomly passes now, ignore it
7744
7745 2004-07-21  Benjamin Otte  <otte@gnome.org>
7746
7747         * gst/gstpad.c:
7748           check if data is NULL before outputting debug info. (fixes #145100)
7749
7750 2004-07-21  Benjamin Otte  <otte@gnome.org>
7751
7752         * gst/schedulers/entryscheduler.c:
7753         (gst_entry_scheduler_loop_wrapper),
7754         (gst_entry_scheduler_chain_wrapper),
7755         (gst_entry_scheduler_get_wrapper):
7756           reset the state when the cothread starts, so we don't get assertion
7757           failures on restarting of cothreads
7758
7759 2004-07-20  Benjamin Otte  <otte@gnome.org>
7760
7761         * gst/gstelement.c: (gst_element_link_pads_filtered):
7762           use correct sinkpad, if only sinkpad is specified, but not srcpad
7763           (fixes #147889)
7764         * gst/gstelement.c: (gst_element_set_state_func),
7765         (gst_element_change_state): ref/unref the element, signal handlers
7766         could get rid of the element otherwise
7767
7768 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7769
7770         * docs/random/ds/0.9-suggested-changes:
7771           Make note about renaming fixed-list to array.
7772         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
7773         (_gst_value_initialize):
7774           Add array intersections.
7775         * testsuite/caps/intersect2.c: (main):
7776           Add test for array intersections.
7777
7778 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7779
7780         * configure.ac: back to cvs
7781
7782 === release 0.8.4 ===
7783
7784 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7785
7786         * configure.ac:
7787           releasing 0.8.4, "Paella"
7788           bump libtool versioning
7789
7790 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7791
7792         * po/LINGUAS:
7793         * po/ca.po:
7794           adding Catalan translation (Jordi Mallach)
7795
7796 2004-07-20  Wim Taymans  <wim@fluendo.com>
7797
7798         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
7799         (handoff_identity), (main):
7800         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7801         (handoff_identity), (main):
7802         * testsuite/schedulers/Makefile.am:
7803         Added failing testcase for variant of #147894
7804
7805 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7806
7807         patch by: David Moore
7808
7809         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7810         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
7811         (group_migrate_connected):
7812         * testsuite/schedulers/Makefile.am:
7813           fix for #142813 (Deadlock in optimal scheduler)
7814
7815 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7816
7817         patch by: Wim Taymans
7818
7819         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
7820         (gst_opt_scheduler_schedule_run_queue),
7821         (gst_opt_scheduler_get_wrapper), (get_group),
7822         (group_migrate_connected):
7823         * testsuite/schedulers/Makefile.am:
7824           fix for #147819 (Add some checks in the opt scheduler)
7825
7826 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7827
7828         patch by: Benjamin Otte
7829
7830         * gst/gstelementfactory.c: (__gst_element_details_set):
7831           fix for #147929: running gst-register in non-utf8 locale can cause
7832           invalid registry
7833
7834 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7835
7836         patch by: Wim Taymans
7837
7838         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
7839         (group_has_element), (element_get_reachables_func),
7840         (group_migrate_connected):
7841           fix for #147894 (opt scheduler decoupled elements mismanagement)
7842         * testsuite/schedulers/Makefile.am:
7843           testsuite app now passes
7844
7845 2004-07-19  Wim Taymans  <wim@fluendo.com>
7846
7847         * testsuite/schedulers/147819.c: (handoff_identity1),
7848         (handoff_identity2), (main):
7849         * testsuite/schedulers/Makefile.am:
7850         Added testcase for bug 147819
7851
7852 2004-07-19  Wim Taymans  <wim@fluendo.com>
7853
7854         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
7855         (handoff_identity), (main):
7856         * testsuite/schedulers/Makefile.am:
7857         Added testcase for bug 147894
7858
7859 2004-07-16  Wim Taymans  <wim@fluendo.com>
7860
7861         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
7862         * testsuite/schedulers/142183.c: (handoff_identity), (main):
7863         * testsuite/schedulers/Makefile.am:
7864         Added testsuite for bug 142183 in its two incarnations. Refcount
7865         is not increased for scheduled elements and threadsafe properties
7866         mutexes are not properly unlocked.
7867
7868 2004-07-16  Wim Taymans  <wim@fluendo.com>
7869
7870         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
7871         (create_chain), (destroy_chain), (create_group), (destroy_group),
7872         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
7873         (group_dec_link), (gst_opt_scheduler_pad_link),
7874         (group_inc_links_for_element), (group_migrate_connected):
7875         Call group_inc_link with the proper src->sink ordering -- 
7876         break this, and we break sort_chain. patch from wingo for bug
7877         147713.
7878         Partially revert patch 1.89. When adding a loop based element to 
7879         the scheduler, the links to other groups are automatically followed
7880         and incremented. This should not happen because the bin will call
7881         pad_link explicitly for those connection, resulting in them counted 
7882         twice. Results in assertion failure on pipeline cleanup.
7883
7884 2004-07-16  Wim Taymans  <wim@fluendo.com>
7885
7886         * testsuite/schedulers/143777-2.c: (main):
7887         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
7888         (main):
7889         * testsuite/schedulers/Makefile.am:
7890         Added cleanup code to testcase 143777-2.
7891         Added testcase to show bug 147713, does not really show the
7892         deadlock as I can't figure out how to trigger it, but it does
7893         demonstrate bad ordering in the scheduler.
7894
7895 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7896
7897         * gst/gstvalue.c: (gst_value_deserialize_fraction):
7898           change strndup to g_strndup.  Fixes #147707
7899
7900 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7901
7902         * po/af.po:
7903         * po/az.po:
7904         * po/cs.po:
7905         * po/en_GB.po:
7906         * po/fr.po:
7907         * po/nl.po:
7908         * po/sr.po:
7909         * po/sv.po:
7910         * po/tr.po:
7911         * po/uk.po:
7912           updated translations
7913
7914 2004-07-16  Benjamin Otte  <otte@gnome.org>
7915
7916         * gst/gstvalue.c: (gst_greatest_common_divisor):
7917           use ints and return ints, fractions only use ints, too, so this
7918           avoids accidently casting multiplications to unsigned
7919         (gst_value_lcopy_fraction): it's ints, not uint32
7920         (gst_value_set_fraction): disallow minint, multiplying and negation
7921           are broken with it
7922         (gst_value_fraction_multiply): fix to make large numbers work and get
7923         rid of the assumption that the multiplication of two ints fits an
7924         int64 - dunno if that's true for all systems
7925         * testsuite/caps/Makefile.am:
7926         * testsuite/caps/fraction-multiply-and-zero.c:
7927         (check_multiplication), (check_equal), (zero_test), (main):
7928           add tests for all the stuff above
7929         * testsuite/caps/value_compare.c: (test1):
7930           fix comment
7931         * tests/.cvsignore:
7932         * testsuite/caps/.cvsignore:
7933         * testsuite/debug/.cvsignore:
7934         * testsuite/dlopen/.cvsignore:
7935         * testsuite/states/.cvsignore:
7936           get up to date
7937
7938 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7939
7940         * docs/manual/bins-api.xml:
7941         * docs/manual/factories.xml:
7942         * docs/manual/helloworld.xml:
7943         * docs/manual/links-api.xml: 
7944           fixes for out of date info, incorrect info and grammar
7945
7946 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7947
7948         * docs/manual/pads.xml:
7949         * docs/manual/pads-api.xml: grammar fix
7950
7951 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7952
7953         * docs/manual/pads-api.xml: typo + grammar fix
7954
7955 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7956
7957         * docs/gst/gstreamer-sections.txt:
7958           add new symbols
7959         * docs/gst/tmpl/gstelement.sgml:
7960         * docs/gst/tmpl/gstpad.sgml:
7961         * docs/gst/tmpl/gsttypes.sgml:
7962         * docs/gst/tmpl/gstvalue.sgml:
7963           update docs
7964         * gst/gststructure.c: (gst_structure_set_valist),
7965         (gst_structure_from_abbr), (gst_structure_to_abbr):
7966         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
7967         (gst_greatest_common_divisor), (gst_value_init_fraction),
7968         (gst_value_copy_fraction), (gst_value_collect_fraction),
7969         (gst_value_lcopy_fraction), (gst_value_set_fraction),
7970         (gst_value_get_fraction_numerator),
7971         (gst_value_get_fraction_denominator),
7972         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
7973         (gst_value_deserialize_fraction),
7974         (gst_value_transform_fraction_string),
7975         (gst_value_transform_string_fraction),
7976         (gst_value_compare_fraction), (_gst_value_initialize):
7977         * gst/gstvalue.h:
7978           adding GstFraction GValue type, get/set, and multiply
7979         * testsuite/caps/Makefile.am:
7980         * testsuite/caps/fraction.c: (test), (main):
7981         * testsuite/caps/string-conversions.c: (main):
7982         * testsuite/caps/value_compare.c: (test1), (main):
7983           add regression tests for GstFraction
7984
7985 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7986         
7987         * docs/manual/init-api.xml: Grammar fix
7988
7989 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
7990
7991         * docs/manual/states.xml: Fix inconsistent information
7992
7993 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7994
7995         * gst/gstelement.c: (gst_element_set_state):
7996         * gst/gstpad.c: (gst_pad_try_set_caps):
7997         * gst/gststructure.c:
7998         * gst/gstthread.c: (gst_thread_child_state_change):
7999         * gst/gstvalue.c: (gst_value_compare_double):
8000         * gst/gstvalue.h:
8001         * testsuite/parse/parse1.c: (main):
8002           debugging additions and style cleanups
8003
8004 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8005
8006         * docs/manual/states.xml: Grammar fix
8007
8008 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8009
8010         * docs/manual/pads.xml: Grammar fix
8011
8012 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8013
8014         * docs/manual/elements.xml: Fixed image reference
8015
8016 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8017
8018         * docs/manual/goals.xml: Grammar fix
8019
8020 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8021
8022         * docs/manual/motivation.xml:
8023         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
8024
8025 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8026
8027         * docs/manual/motivation.xml: Fix spelling
8028
8029 2004-07-15  Benjamin Otte  <otte@gnome.org>
8030
8031         * gst/gstelement.h: 
8032           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
8033           strings.
8034         * gst/gstelement.c (gst_element_class_init):
8035           GError's are boxed, not objects
8036         * gst/gstmarshal.list:
8037           update list for the fixed error signal
8038
8039 2004-07-14  Andy Wingo  <wingo@pobox.com>
8040
8041         * gst/gsttag.c: Add a tag merge func for pointers. The header was
8042         there all along, but the function wasn't. (guile-gstreamer's build
8043         system uses the address of the function -- I wasn't actually
8044         trying to use this.)
8045
8046 2004-07-14  Andy Wingo  <wingo@pobox.com>
8047
8048         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
8049         as gst_pad_proxy_pad_link) just link to every other pad when they
8050         are called. In the case where the graph has cycles, this will mean
8051         that a call to try_set_caps will recurse. Allow this recursion
8052         and return OK, while we wait for the first try_set_caps to give a
8053         proper return value.
8054         (gst_pad_link_call_link_functions): Since this function is the
8055         only one to set the NEGOTIATING flag on a pad, if the flag is set
8056         it means that the link functions have indirectly recursed. If this
8057         happens, error out to avoid infinite recursion and an eventual
8058         SEGV.
8059         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
8060         (gst_pad_proxy_getcaps): Intersect the result with the template
8061         caps to ensure that the return value is valid.
8062
8063 2004-07-14  Andy Wingo  <wingo@pobox.com>
8064
8065         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
8066         one refcount, the calling function is the owner of the buffer.
8067
8068 2004-07-14  Wim Taymans  <wim@fluendo.com>
8069
8070         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8071         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8072         Fix stupid warning when an element is to be migrated but
8073         is already migrated.
8074
8075 2004-07-14  Wim Taymans  <wim@fluendo.com>
8076
8077         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
8078         (gst_opt_scheduler_pad_link), (group_migrate_connected):
8079         Make sure that a single non-loop-based element does not 
8080         end up in a group. This fixes the testsuite again.
8081
8082 2004-07-14  Wim Taymans  <wim@fluendo.com>
8083
8084         * gst/schedulers/gstoptimalscheduler.c: (create_group),
8085         (add_to_group), (merge_groups), (schedule_group),
8086         (gst_opt_scheduler_get_wrapper), (group_elements),
8087         (group_dec_link), (gst_opt_scheduler_pad_link),
8088         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
8089         (gst_opt_scheduler_iterate):
8090         move isolated groups to a new chain.
8091         Emit a warning instead of segfaulting in some error cases.
8092         Fix a bug where the link count between groups was not calculated 
8093         correctly. Fixes #144510.
8094
8095 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
8096         * gst/elements/gstfilesrc.c:
8097           Binary files support under Windows now OK
8098       
8099 2004-07-13  Benjamin Otte  <otte@gnome.org>
8100
8101           compatibility fixes for Solaris 8/gcc 2.95
8102         * configure.ac:
8103           include libintl libs in LDFLAGS
8104         * gstvalue.c (gst_value_deserialize_buffer):
8105           cast isxdigit stuff to int to silence compiler warning
8106
8107 2004-07-12  Benjamin Otte  <otte@gnome.org>
8108
8109         * gst/gsttypes.h:
8110           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
8111           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
8112           just causes support madness
8113         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8114           make it work without this
8115         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
8116         (gst_file_index_commit):
8117           glib IO channels don't want binary mode
8118         * testsuite/bytestream/filepadsink.c: (main):
8119         * testsuite/bytestream/test1.c: (read_param_file):
8120           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
8121
8122 2004-07-12  Benjamin Otte  <otte@gnome.org>
8123
8124         * gst/gstelement.c: (gst_element_class_init),
8125         (gst_element_set_state), (gst_element_set_state_func):
8126           virutalize gst_element_set_state, use set_state member in class
8127           struct that was already added in 0.7 for this.
8128         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
8129         (gst_bin_change_state):
8130           make gst_bin_foreach works similar to other foreach functions, plug
8131           memleaks in it. Make functions using it work with the new approach.
8132           Document gst_bin_foreach, so it can be exported if we want to
8133         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
8134           use virtualized set_state to make set_state on bins set the state of
8135           all its children.
8136
8137 2004-07-12  Benjamin Otte  <otte@gnome.org>
8138
8139         * configure.ac:
8140           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
8141           http://bugs.gentoo.org/show_bug.cgi?id=53967)
8142         * gst/gstpad.c: (gst_pad_alloc_buffer):
8143           allow buffer_alloc functions to return NULL and allocate a normal
8144           buffer in that case
8145
8146 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8147         * gst/elements/gstfilesink.c:
8148         * gst/elements/gstfilesrc.c:
8149         * gst/indexers/gstfileindex.c:
8150         * gst/gsttypes.h:
8151         * testsuite/bytestream/filepadsink.c:
8152         * testsuite/bytestream/test1.c:
8153           Handle binary files under Windows
8154
8155 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8156         * docs/manual/win32.xml:
8157         * win32/config.h:
8158         * win32/gst-register.vcproj:
8159         * win32/gstreamer.def:
8160           Update to another gettext public build
8161
8162 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
8163         * gst/gstplugin.c:
8164           Fix an impossible C syntax
8165         * win32/config.h:
8166           Disable i18n under Windows for the moment
8167         * win32/gst-register.vcproj:
8168           Use this configuration
8169
8170 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
8171         * docs/manual/quotes.xml:
8172           Keep the quotes file alive
8173         * docs/random/ds/0.9-suggested-changes:
8174           Add the suggestion of including a 'rowstride' as part of video
8175           format caps
8176
8177 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8178
8179         * gst/gstelement.c: (gst_element_set_state),
8180         (gst_element_change_state):
8181           d'oh.  Set PENDING state correctly before forcing bin to change.
8182         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8183         (gst_structure_parse_fixed_list):
8184         * gst/schedulers/gstoptimalscheduler.c:
8185         (gst_opt_scheduler_state_transition):
8186         * testsuite/states/parent.c: (main):
8187           remove comment now that it's fixed.
8188
8189 2004-07-11  Benjamin Otte  <otte@gnome.org>
8190
8191         * gst/gstclock.h:
8192           GST_SECOND shouldn't cause a conversion to unsigned.
8193         * testsuite/clock/.cvsignore:
8194         * testsuite/clock/Makefile.am:
8195         * testsuite/clock/signedness.c: (main):
8196           make sure it never will again
8197
8198 2004-07-11  Andy Wingo  <wingo@pobox.com>
8199
8200         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
8201         whose state is higher than the bin state, raise the bin state to
8202         ensure that bin state := highest child state.
8203         
8204 2004-07-11  Andy Wingo  <wingo@pobox.com>
8205
8206         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
8207         procedure on the children of a bin. Assumes that the procedure can
8208         change the set of children.
8209         (set_kid_state_func): New static function.
8210         (gst_bin_change_state): Use gst_bin_foreach to call
8211         set_kid_state_func. Fixes a bug: if a child had a state-change
8212         handler that removes it from the bin, there would be a segfault.
8213         Hopefully it should also work in the case where the state-change
8214         handler on one child adds or removes other children. In any case,
8215         fixes should go to gst_bin_foreach.
8216
8217 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
8218
8219         * gst/gstelement.c: (gst_element_set_state):
8220           compatibility fix for latest plugins release.  Change loop back
8221           to while {}
8222
8223 2004-07-09  Wim Taymans  <wim@fluendo.com>
8224
8225         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
8226         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
8227         (gst_thread_main_loop):
8228         Since remove is virtual in GstBin we must not assume the 
8229         elements GList to have anothing useful.
8230         Add some more logging to GstThread and be a bit more paranoid
8231         when resetting the scheduler.
8232         Set the state of the bin to NULL before removing the children.
8233
8234 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8235
8236         * testsuite/threads/Makefile.am:
8237         * testsuite/threads/threadg.c:
8238           added test to check if problem when removing all elements from a
8239           GstThread before setting GstThread state to NULL
8240
8241 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8242
8243         * docs/gst/tmpl/gstelement.sgml:
8244         * docs/gst/tmpl/gsttypes.sgml:
8245         * gst/gstbin.c: (gst_bin_change_state):
8246         * gst/gstelement.c: (gst_element_set_state),
8247         (gst_element_change_state):
8248           rework so that for bins we try to set the state on all children
8249           as well even if the bin is in the correct state already.
8250           change while to do so at least one iteration is done.
8251           For regular elements, we fall back to the previous behaviour for
8252           now since we first need a new plugins release.
8253         * testsuite/states/parent.c: (main):
8254           test for this case
8255           Fixes #123774
8256
8257 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8258
8259         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
8260         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
8261         (gst_queue_release_locks), (gst_queue_change_state),
8262         (gst_queue_set_property):
8263           add proper lock debugging.  Change dispose to finalize, since
8264           we're freeing mutexes and other stuff which should happen only once.
8265
8266 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8267
8268         * docs/gst/tmpl/gstelement.sgml:
8269         * docs/gst/tmpl/gstplugin.sgml:
8270         * docs/gst/tmpl/gsttypes.sgml:
8271         * docs/pwg/building-state.xml:
8272         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
8273         * gst/gstelement.c: (gst_element_change_state):
8274         * gst/gstthread.c: (gst_thread_change_state):
8275           catch wrong state changes in element base class.
8276
8277 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8278
8279         * gst/gstinfo.h:
8280           clean up layout a little.
8281
8282 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8283
8284         * configure.ac:
8285         * testsuite/Makefile.am:
8286         * testsuite/states/Makefile.am:
8287         * testsuite/states/parent.c: (main):
8288           re-enable states testsuite dir.  Add test for state changes and
8289           parent behaviour
8290
8291 2004-07-09  Wim Taymans  <wim@fluendo.com>
8292
8293         * gst/schedulers/gstoptimalscheduler.c:
8294         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
8295         (element_get_reachables_func), (element_get_reachables),
8296         (debug_element), (rechain_group), (group_migrate_connected),
8297         (gst_opt_scheduler_pad_unlink):
8298         Do not try to migrate decoupled elements to a new group since
8299         they are not added to groups.
8300
8301 2004-07-08  Benjamin Otte  <otte@gnome.org>
8302
8303         * gst/gstelement.c: (gst_element_error_func):
8304           make reentrant (= allow removing elements in error handler)
8305
8306 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8307
8308         * gst/gstpad.c: (gst_pad_event_default_dispatch),
8309         (gst_pad_send_event), (gst_pad_call_chain_function):
8310           events sent to elements below PAUSED cannot be handled, so
8311           don't try to
8312
8313 2004-07-08  Wim Taymans  <wim@fluendo.com>
8314
8315         * gst/schedulers/gstoptimalscheduler.c:
8316         (chain_recursively_migrate_group), (create_group),
8317         (schedule_group), (gst_opt_scheduler_pad_link),
8318         (group_elements_set_visited), (element_get_reachables_func),
8319         (element_get_reachables), (group_can_reach_group), (debug_element),
8320         (rechain_group), (group_migrate_connected),
8321         (gst_opt_scheduler_pad_unlink):
8322         * testsuite/schedulers/Makefile.am:
8323         Implemented group splitting and rechaining.
8324         Fixes 143777 and 143777-2 in the testsuite.
8325
8326 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8327
8328         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8329           extra debugging
8330         * gst/gstevent.h:
8331         * gst/gstinfo.c: (gst_debug_log_default):
8332           print time nicely.  add thread pointer until someone figures out
8333           a completely portable way of getting at thread id's.
8334         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
8335         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
8336         (gst_pad_call_chain_function):
8337           extra debugging
8338         * gst/schedulers/gstoptimalscheduler.c:
8339         (get_group_schedule_function), (loop_group_schedule_function),
8340         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8341         (pad_clear_queued), (gst_opt_scheduler_iterate):
8342           rename BUFPEN and friends to DATAPEN since that's what they are.
8343
8344 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8345
8346         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
8347         * gst/gstbuffer.h:
8348         * gst/gstpad.c:
8349           cleanups and debugging
8350
8351 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8352
8353         * configure.ac:
8354         * gst/gstvalue.c: (gst_value_compare_enum),
8355         (gst_value_serialize_enum), (gst_value_deserialize_enum),
8356         (gst_value_can_compare), (gst_value_compare):
8357         * testsuite/Makefile.am:
8358         * testsuite/enumcaps/Makefile.am:
8359         * testsuite/enumcaps/enumcaps.c:
8360           Fix enum serialization, deserialization, comparison in caps, add
8361           a test to ensure that this continues working in the future.
8362
8363 2004-07-06  David Schleef  <ds@schleef.org>
8364
8365         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8366         Fix memleak.
8367
8368 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8369
8370         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
8371         * gst/gstplugin.h:
8372         * gst/registries/gstxmlregistry.c:
8373         (plugin_times_older_than_recurse), (plugin_times_older_than),
8374         (gst_xml_registry_parse_padtemplate):
8375           only rebuild registry when actual plugins have a newer time than
8376           the registry.  Fixes #145520
8377
8378 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8379
8380         * docs/manual/manual.xml:
8381         * docs/manual/win32.xml:
8382           add chapter on win32 building.  fixes #142422
8383
8384 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8385
8386         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
8387
8388         * gst/autoplug/gstspider.c: (gst_spider_init),
8389         (gst_spider_dispose):
8390           fix spider memleaks.  fixes #137863
8391
8392 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8393
8394         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
8395
8396         * gst/schedulers/gstoptimalscheduler.c:
8397         (gst_opt_scheduler_pad_unlink):
8398           fix SIGBUS error, fixes #145338
8399
8400 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8401
8402         * gst/gstobject.c: (gst_object_replace):
8403         * gst/gstscheduler.c: (gst_scheduler_get_clock):
8404         * gst/gstsystemclock.c: (gst_system_clock_obtain):
8405           clean up clock lifecycle.  Fixes #109831
8406
8407 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8408
8409         * po/LINGUAS:
8410         * po/cs.po:
8411           added Czech translation (Miloslav Trmac)
8412
8413 2004-07-04  David Schleef  <ds@schleef.org>
8414
8415         * tools/Makefile.am:
8416         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
8417
8418 2004-07-04  David Schleef  <ds@schleef.org>
8419
8420         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
8421
8422 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8423
8424         * gst/gstbin.c: (gst_bin_restore_thyself):
8425           chain to parent restore so the bins get restored correctly
8426           in the editor
8427
8428 2004-07-03  David Schleef  <ds@schleef.org>
8429
8430         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
8431         Actually do something in these functions, like before the big
8432         caps change.  (bug #145137)
8433
8434 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8435
8436         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
8437         (gst_element_get_compatible_pad_filtered):
8438         * gst/gstthread.c: (gst_thread_main_loop):
8439           more debugging
8440
8441 2004-07-02  David Schleef  <ds@schleef.org>
8442
8443         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
8444         * gst/gstobject.h:
8445         * gst/gstparse.h:
8446         * gst/gsttrace.h:
8447         * gst/gstxml.h:
8448
8449 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8450
8451         * gst/gstpad.c: (gst_pad_check_schedulers),
8452         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8453         (gst_pad_link_prepare):
8454           revert until testsuite is fixed
8455
8456 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8457
8458         * testsuite/Makefile.am:
8459         * testsuite/caps/filtercaps.c: (main):
8460         * testsuite/clock/clock1.c: (main):
8461         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
8462           fix some more tests
8463
8464 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8465
8466         * testsuite/cleanup/cleanup1.c: (create_pipeline):
8467         * testsuite/cleanup/cleanup2.c: (create_pipeline):
8468         * testsuite/cleanup/cleanup4.c: (main):
8469           fix testsuite
8470
8471 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8472
8473         * libs/gst/control/control.c:
8474         * libs/gst/control/dparam.c:
8475         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
8476         * libs/gst/control/dparammanager.c:
8477         * libs/gst/control/dparammanager.h:
8478         * testsuite/dynparams/Makefile.am:
8479         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
8480         (gst_dptest_change_state), (gst_dptest_chain), (main):
8481           fix testcase for dparams
8482           add debugging category
8483
8484 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8485
8486         * testsuite/Rules:
8487           change path
8488
8489 2004-07-02  Benjamin Otte  <otte@gnome.org>
8490
8491         * tests/.cvsignore:
8492         * tests/Makefile.am:
8493         * tests/mass_elements.c: (gst_get_current_time), (main):
8494           add simple benchmark to test various speeds of fakesrc ! identity !
8495           identity ! ... ! fakesink.
8496           Usage: mass_elements [num_identities] [num_buffers]
8497           If not specified they default to 1000.
8498
8499 2004-07-02  Benjamin Otte  <otte@gnome.org>
8500
8501         * gst/gstpad.c: (gst_pad_check_schedulers),
8502         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
8503         (gst_pad_link_prepare):
8504           check that pads that get linked belong to the same manager. The old
8505           code allowed linking elements before putting them into bins, so it
8506           worked to link them and then put them in different threads, which
8507           lead to weird behaviour.
8508           Since this effectively disallows linking elements before putting
8509           them in a bin, some applications might not work after this and error
8510           out. If these applications are too critical, we might need to revert
8511           that patch. Please test this before the next release...
8512
8513 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8514
8515         * gst/gstpad.c: (gst_pad_get_caps):
8516           throw an error if the getcaps function does not return a subset of
8517           the template caps.
8518         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
8519           make disconts without position info an error in debugging
8520         * tests/spidey_bench.c: (handoff), (main):
8521           don't count first try when averaging
8522
8523 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8524
8525         * gst/gstplugin.c: (gst_plugin_load_file):
8526           figure out problem with dynamic test
8527
8528 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8529
8530         * docs/gst/Makefile.am:
8531           fix docs build
8532
8533 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8534
8535         * po/POTFILES.in:
8536         * po/af.po:
8537         * po/az.po:
8538         * po/en_GB.po:
8539         * po/fr.po:
8540         * po/nl.po:
8541         * po/sr.po:
8542         * po/sv.po:
8543         * po/tr.po:
8544         * po/uk.po:
8545         * tools/gst-register.c: (plugin_added_func), (main):
8546           i18n-ize -register, fix plural
8547
8548 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8549
8550         * gst/elements/gstidentity.c: (gst_identity_class_init),
8551         (gst_identity_init), (gst_identity_chain),
8552         (gst_identity_set_property), (gst_identity_get_property):
8553         * gst/elements/gstidentity.h:
8554           check for perfect stream
8555
8556 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8557
8558         * gst/elements/gstidentity.c: (gst_identity_chain):
8559           print offset_end
8560
8561 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8562
8563         * docs/gst/Makefile.am:
8564         * docs/gst/gstreamer-docs.sgml:
8565           doc fixes
8566
8567 2004-06-24  David Schleef  <ds@schleef.org>
8568
8569         * autogen.sh:  Remove call to env, since the buildbot isn't
8570         broken anymore.
8571
8572 2004-06-24  Wim Taymans  <wim@fluendo.com>
8573
8574         * gst/elements/Makefile.am:
8575         * gst/elements/gstelements.c:
8576         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
8577         (gst_multifdsink_class_init), (gst_multifdsink_init),
8578         (gst_multifdsink_add), (gst_multifdsink_remove),
8579         (gst_multifdsink_clear), (gst_multifdsink_chain),
8580         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
8581         * gst/elements/gstmultifdsink.h:
8582         Added an element that writes to multiple filedescriptors at once.
8583
8584 2004-06-24  Benjamin Otte  <otte@gnome.org>
8585
8586         * gst/parse/grammar.y:
8587           don't try to link elements before they have been added to bins
8588
8589 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8590
8591         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
8592         (gst_file_pad_get_length):
8593         * libs/gst/bytestream/filepad.h:
8594           add 2 new functions
8595
8596 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
8597
8598         * docs/gst/gstreamer-sections.txt:
8599         remove from docs, the define that Benjamin removed from gstelement.h
8600
8601 2004-06-22  Benjamin Otte  <otte@gnome.org>
8602
8603         * gst/gstelement.h:
8604           remove define that referenced a nonexisting GstElement struct member
8605
8606 2004-06-20  Benjamin Otte  <otte@gnome.org>
8607
8608         * gst/gstdata.c: (gst_data_is_writable):
8609           whoops, return values were wrong, so writable data was marked as
8610           non-writable and vice versa. (fixes #143953, spotted by Francis
8611           Labonte)
8612           Shows how rarely we need to copy data ;)
8613
8614 2004-06-20  Benjamin Otte  <otte@gnome.org>
8615
8616         * testsuite/schedulers/.cvsignore:
8617         * testsuite/schedulers/Makefile.am:
8618         * testsuite/schedulers/143777-2.c: (main):
8619           add test for opt breakage in bug #143777
8620
8621 2004-06-20  Benjamin Otte  <otte@gnome.org>
8622
8623         * gst/gstpad.c: (gst_pad_call_chain_function):
8624           check for if we were unlinked while inside the chainfunction (fixes
8625           entrygthread having issues with #143777)
8626         * testsuite/schedulers/143777.c: (main):
8627         * testsuite/schedulers/Makefile.am:
8628           add a test for that fix
8629
8630 2004-06-20  Benjamin Otte  <otte@gnome.org>
8631
8632         * gst/gstvalue.c: (gst_value_set_int_range):
8633           test that start is smaller then end
8634         * libs/gst/bytestream/Makefile.am:
8635         * libs/gst/bytestream/filepad.c: 
8636         * libs/gst/bytestream/filepad.h:
8637           add GstFilePad - a pad that behaves like a FILE*
8638         * testsuite/bytestream/.cvsignore:
8639         * testsuite/bytestream/Makefile.am:
8640         * testsuite/bytestream/filepadsink.c: 
8641           test for the GstFilePad
8642
8643 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8644
8645         * gst/elements/gstidentity.c: (gst_identity_class_init),
8646         (gst_identity_init), (gst_identity_set_clock),
8647         (gst_identity_chain), (gst_identity_set_property),
8648         (gst_identity_get_property):
8649         * gst/elements/gstidentity.h:
8650         * gst/gstclock.c: (gst_clock_id_wait):
8651           add a "sync" property to sync to the clock
8652
8653 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8654
8655         * gst/gstelementfactory.c: (gst_element_factory_create):
8656           make the freakin "elementfactory bla has no type" message more
8657           useful. So we actually can do something when someone shows up
8658           complaining about it.
8659
8660 2004-06-15  Johan Dahlin  <johan@gnome.org>
8661
8662         * tools/gst-inspect.c (main): Fallback to plugin if no element is
8663         found. This matches the old behavior better. Thanks to Thomas for
8664         pointing out.
8665
8666 2004-06-14  David Schleef  <ds@schleef.org>
8667
8668         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
8669         -fomit-frame-pointer.  Appears to generate correct code in
8670         other cases as well.
8671
8672 2004-06-14  Johan Dahlin  <johan@gnome.org>
8673
8674         * tools/gst-inspect.c (main): Add two new command line options: -a
8675         to print all elements and -n to print the name on each line. Also
8676         fix some error reporting.
8677         (main): Simplify, remove -n and always print names if -a is specified
8678
8679 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
8680
8681         * win32/gstconfig.h:
8682         * win32/GSTreamer.vcproj:
8683         * win32/Makefile:
8684         * gst/gstconfig.h.in:
8685         * gst/gst.h:
8686         * gst/gstbin.h:
8687         * gst/gstelement.h:
8688         * gst/gstevent.h:
8689         * gst/gstobject.h:
8690         * gst/gstpad.h:
8691         * docs/gst/gstreamer-sections.txt:
8692         * docs/gst/tmpl/gstconfig.sgml:
8693           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
8694
8695 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8696         * docs/gst/gstreamer-sections.txt:
8697         * docs/gst/tmpl/gstconfig.sgml:
8698         Add the GSTREAMER_EXPORT macro to the docs
8699
8700 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
8701
8702         * tools/gst-compprep.c: (handle_xmlerror), (main):
8703         Add a check for the version that introduced SetStructuredError to fix
8704         the build on FC1
8705
8706 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8707
8708         * win32/msvc71.sln:
8709         * win32/testsuite/:
8710           prepare to compile the testsuite with MSVC
8711
8712 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8713
8714         * docs/manual/win32.xml:
8715           attempt to transform the Win32 README into an XML doc
8716
8717 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8718
8719         * gst/gst.c:
8720         * gst/gstbin.*:
8721         * gst/config.h.in:
8722         * gst/gstelement.*:
8723         * gst/gstevent.h:
8724         * gst/gstobject.*:
8725         * gst/gstpad.h:
8726         * tools/gst-register.c:
8727         * win32/gstreamer.def:
8728           extern symbols are now exported for the Windows DLL
8729
8730 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8731
8732         * gst/gstinfo.h:
8733           fix a problem to enable/disable DEBUG under MSVC
8734
8735 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8736
8737         * win32/:
8738           enable more debug code in DEBUG build
8739
8740 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
8741
8742         * win32/config.h:
8743         * gst/gst-i18n-app.h:
8744           enable NLS under Windows
8745
8746 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
8747         * tools/gst-compprep.c: (handle_xmlerror), (main):
8748           Make an error that baffled me a bit clearer
8749
8750 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
8751
8752         * gst/gstqueue.c:
8753           don't use g_queue_get_length () because it's 2.4, use ->length
8754
8755 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
8756
8757         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
8758
8759         * tools/gst-inspect.c: (print_signal_info):
8760           don't free random data twice. (fixes #144185)
8761
8762 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
8763
8764         * gst/gstqueue.c:
8765         * gst/gstqueue.h:
8766           fix removing from the wrong queue on event timeout
8767           fix disposing of the event queue by casting correctly
8768           add mutexes for handling the event queue
8769           someone was sleeping when fixing queue last time around :)
8770
8771 2004-06-10  Johan Dahlin  <johan@gnome.org>
8772
8773         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
8774         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
8775
8776 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8777
8778         * docs/random/gdp:
8779         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
8780         * libs/gst/dataprotocol/dataprotocol.c:
8781         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
8782         (gst_dp_buffer_from_header):
8783         * libs/gst/dataprotocol/dataprotocol.h:
8784         * libs/gst/dataprotocol/dp-private.h:
8785           rev version to 0.1, add buffer flags and copy them
8786
8787 2004-06-09  Johan Dahlin  <johan@gnome.org>
8788
8789         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
8790         the flags from the buffer we're copying.
8791
8792 2004-06-09  Wim Taymans  <wim@fluendo.com>
8793
8794         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
8795         * gst/elements/gstidentity.c: (gst_identity_init),
8796         (gst_identity_chain):
8797         Print more buffer info in fakesink.
8798         Make identity output similar to fakesink.
8799
8800 2004-06-07  Daniel Gazard  <dany42@free.fr>
8801
8802         reviewed by Benjamin Otte  <otte@gnome.org>
8803
8804         * configure.ac:
8805           fix cross compiling not working. (fixes #143741)
8806
8807 2004-06-07  Benjamin Otte  <otte@gnome.org>
8808
8809         * gst/gstelement.c: (gst_element_set_time_delay):
8810           add failure check
8811         * gst/gstinfo.h:
8812           put brackets around macro arguments of GST_TIME_ARGS, add note to
8813           move it to correct header in 0.9
8814
8815 2004-06-07  Benjamin Otte  <otte@gnome.org>
8816
8817         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
8818         (gst_file_index_load), (_file_index_id_save_entries),
8819         (gst_file_index_commit), (gst_file_index_add_association),
8820         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
8821         (gst_file_index_plugin_init):
8822           make debugging use a default category
8823
8824 2004-06-06  David Moore  <dcm@acm.org>
8825
8826         reviewed by Benjamin Otte  <otte@gnome.org>
8827
8828         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
8829         (gst_fdsrc_change_state):
8830           reset offset counter when going READY => PAUSED. (fixes #142903)
8831
8832 2004-06-06  ed@catmur.co.uk
8833
8834         reviewed by Benjamin Otte  <otte@gnome.org>
8835
8836         * gst/registries/gstxmlregistry.c:
8837         (gst_xml_registry_rebuild_recurse):
8838           don't rely on g_dir_open to figure out if a file is a directory, use
8839           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
8840           directories. (fixes #142850)
8841
8842 2004-06-06  Benjamin Otte  <otte@gnome.org>
8843
8844         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
8845           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
8846         * libs/gst/bytestream/adapter.c:
8847         * libs/gst/bytestream/adapter.h:
8848           fix copyright in header and typo in debugging category name
8849
8850 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8851
8852         * configure.ac:
8853           bump nano to cvs
8854
8855 === release 0.8.3 ===
8856
8857 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8858
8859         * configure.ac:
8860           update libtool versioning
8861           do a new release
8862         * docs/gst/tmpl/gstelement.sgml:
8863         * docs/gst/tmpl/gsttypes.sgml:
8864         * gst/gstinfo.c: (_gst_debug_init):
8865           put back GST_CAT_DATAFLOW to fix API breakage
8866
8867 2004-06-04  David Schleef  <ds@schleef.org>
8868
8869         * autogen.sh: Add a temporary 'env' to test buildbot problems.
8870
8871 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
8872
8873         * configure.ac:
8874           bump nano to cvs
8875
8876 === release 0.8.2 ===
8877
8878 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8879
8880         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
8881           check GST_DEBUG environment variable which is parsed the same way
8882           as --gst-debug=
8883
8884 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
8885
8886         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
8887                             gstmd5sink.c gstshaper.c gsttee.c
8888                             gsttypefindelement.c
8889         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
8890
8891           - removing trailing commas at end of enums
8892             it is correct C99 code but C90 compilers would complain
8893             (AIX, Forte, ...)
8894             ('should' fix #143290, at least partially)
8895
8896 2004-05-27  Wim Taymans  <wim@fluendo.com>
8897
8898         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
8899         (chain_group_set_enabled), (create_group), (add_to_group),
8900         (merge_groups), (setup_group_scheduler), (group_elements),
8901         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
8902         Don't try to follow the pad connections with other groups
8903         when a loop based element is added to the scheduler because
8904         the bin will inform the scheduler about the pad links a little
8905         later.
8906
8907 2004-05-27  Wim Taymans  <wim@fluendo.com>
8908
8909         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8910         (remove_from_chain), (chain_group_set_enabled),
8911         (setup_group_scheduler), (group_element_set_enabled),
8912         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
8913         (gst_opt_scheduler_show):
8914         Elements without a group can do a state change as well, just wait
8915         with the setup of the scheduling function when it is added to a
8916         chain.
8917
8918 2004-05-27  Wim Taymans  <wim@fluendo.com>
8919
8920         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
8921         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
8922         (merge_groups), (setup_group_scheduler),
8923         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
8924         (gst_opt_scheduler_show):
8925         Fixes to maintain internal consistency of the scheduler data
8926         structures. 
8927          - adding an enabled group to a chain should increment the
8928            number of enabled elements in that chain.
8929          - removing an enabled group from a chain could disable the
8930            chain.
8931          - removing a disabled group from a chain could enable the
8932            chain.
8933          - add g_assert when internal inconsistency is detected.
8934          - adding an element to a group could increase the number of
8935            links this group has with other groups.
8936          - merging two groups also merges the chains.
8937          - also show group links in the _show method.
8938            
8939
8940 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8941
8942         * gst/gstcaps.c: (gst_caps_structure_simplify):
8943           don't print error messages when there is no error
8944         * gst/gstvalue.c: (gst_value_compare_int_range):
8945           compare the second value, too
8946         * testsuite/caps/Makefile.am:
8947         * testsuite/caps/random.c: (assert_on_error), (main):
8948           add tests to make sure the two things above are checked for
8949
8950 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8951
8952         * configure.ac:
8953         * libs/gst/dataprotocol/Makefile.am:
8954         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
8955         * libs/gst/dataprotocol/dataprotocol.h:
8956           wrap header in GST_ENABLE_NEW.  make code use it
8957
8958 2004-05-23  Johan Dahlin  <johan@gnome.org>
8959
8960         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
8961         so verbose and print GstElement signal names all the time.
8962
8963 2004-05-22  David Schleef  <ds@schleef.org>
8964
8965         * gst/registries/gstxmlregistry.c:
8966         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
8967         (bug #142957)
8968
8969 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8970
8971         * configure.ac:
8972           scrub cflags for glib2 so gcc doesn't complain when glib is in
8973           /usr/local
8974
8975 2004-05-21  Johan Dahlin  <johan@gnome.org>
8976
8977         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
8978         __GNUC__, patch from Brian Cameron, fixes bug #142804
8979
8980 2004-05-20  David Schleef  <ds@schleef.org>
8981
8982         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
8983         comparison code.  (bug #142819)
8984
8985 2004-05-20  Wim Taymans  <wim@fluendo.com>
8986
8987         * gst/gstbuffer.c: (gst_buffer_default_copy):
8988         * gst/gstbuffer.h:
8989         Added Comment to a flag.
8990         copy relevant flags in _buffer_copy.
8991
8992 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8993
8994         reviewed by: Wim Taymans <wim at fluendo dot com>
8995
8996         * gst/gstbuffer.h:
8997           add GST_BUFFER_IN_CAPS buffer flag
8998         * gst/gststructure.c: (gst_structure_value_get_generic_type),
8999         (gst_structure_parse_any_list), (gst_structure_parse_list),
9000         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
9001         * gst/gstvalue.c: (gst_value_serialize_any_list),
9002         (gst_value_transform_any_list_string),
9003         (gst_value_list_prepend_value), (gst_value_list_append_value),
9004         (gst_value_list_get_size), (gst_value_list_get_value),
9005         (gst_value_transform_list_string),
9006         (gst_value_transform_fixed_list_string),
9007         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
9008         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
9009         (_gst_value_initialize):
9010         * gst/gstvalue.h:
9011           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
9012           < , > as a format.
9013         * testsuite/caps/string-conversions.c: (main):
9014           add regression tests for < >
9015
9016 2004-05-20  Johan Dahlin  <johan@gnome.org>
9017
9018         * docs/gst/Makefile.am (all-local): Re-add
9019
9020 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9021
9022         * docs/gst/Makefile.am:
9023         * docs/gst/gstreamer-docs.sgml:
9024         * docs/libs/Makefile.am:
9025         * docs/libs/gstreamer-libs-docs.sgml:
9026           fix distcheck issues
9027
9028 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9029
9030         * libs/gst/dataprotocol/Makefile.am:
9031           add to autotest
9032
9033 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9034
9035         * libs/gst/dataprotocol/Makefile.am:
9036         * libs/gst/dataprotocol/dataprotocol.c:
9037         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9038         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
9039         * libs/gst/dataprotocol/dp-private.h:
9040           use GST macros to read/write fixed length ints
9041           add some more asserts
9042
9043 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9044
9045         * docs/libs/gstreamer-libs-docs.sgml:
9046         * docs/libs/gstreamer-libs-sections.txt:
9047           remove idct and putbits
9048         * configure.ac:
9049         * docs/libs/tmpl/gstdataprotocol.sgml:
9050         * libs/gst/Makefile.am:
9051         * libs/gst/dataprotocol/Makefile.am:
9052         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
9053         (buffer_test), (caps_test), (event_test), (main):
9054         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
9055         (gst_dp_dump_byte_array), (gst_dp_init),
9056         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
9057         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
9058         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
9059         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
9060         (gst_dp_validate_header), (gst_dp_validate_payload),
9061         (gst_dp_validate_packet), (plugin_init):
9062         * libs/gst/dataprotocol/dataprotocol.h:
9063         * libs/gst/dataprotocol/dp-private.h:
9064           add dataprotocol
9065
9066 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9067
9068         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
9069           fix int variable deserialization and add a helper so we can actually
9070           debug this.
9071
9072 2004-05-18  David Schleef  <ds@schleef.org>
9073
9074         * testsuite/debug/commandline.c: (main): Call ./commandline, not
9075           argv[0].  Calling yourself is probably not the best way to
9076           construct a test like this, btw.
9077
9078 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9079
9080         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
9081           don't claim to be more intelligent than a scheduler when the
9082           scheduler claims the pipeline is stopped
9083         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
9084         (safe_cothread_destroy),
9085         (gst_entry_scheduler_remove_all_cothreads),
9086         (gst_entry_scheduler_reset), (_remove_cothread),
9087         (gst_entry_scheduler_state_transition):
9088           hold off cothread destruction if we're not in main cothread
9089         * configure.ac:
9090         * testsuite/Makefile.am:
9091           add new test dir
9092         * testsuite/schedulers/.cvsignore:
9093         * testsuite/schedulers/Makefile.am:
9094           add tests
9095         * testsuite/schedulers/relink.c: (cb_handoff), (main):
9096           check relinking and adding/removing elements from a running pipeline
9097         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
9098           check unlinking in a running pipeline
9099         * testsuite/schedulers/unref.c: (cb_handoff), (main):
9100           check unreffing a running pipeline
9101         * testsuite/schedulers/useless_iteration.c: (main):
9102           check iterating a pipeline that contains running threads works
9103
9104 2004-05-18  David Schleef  <ds@schleef.org>
9105
9106         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
9107           is false.
9108
9109 2004-05-18  Wim Taymans  <wim@fluendo.com>
9110
9111         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9112         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
9113         Fixed an error introduced with patch for 1.63. When setting
9114         a get based element as the entry point in a group, make sure
9115         to mark the group as GET based.
9116
9117 2004-05-18  Wim Taymans  <wim@fluendo.com>
9118
9119         * gst/schedulers/gstoptimalscheduler.c: (create_group),
9120         (setup_group_scheduler), (loop_group_schedule_function),
9121         (gst_opt_scheduler_pad_link):
9122         Added some more debug info and fixed a bug where the group
9123         type was set to LOOP but it was in fact unknown.
9124
9125 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9126
9127         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
9128           make resetting scheduler work twice in a row
9129
9130 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9131
9132         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
9133         (CREATE_USERIALIZATION), (_gst_value_initialize),
9134         (gst_value_compare_float), (gst_value_serialize_float),
9135         (gst_value_deserialize_float), (gst_value_compare_enum),
9136         (gst_value_serialize_enum), (gst_value_deserialize_enum):
9137           add serialization and comparison functions for long, int64, enum and
9138           float values
9139         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
9140           use best serialization function in type hierarchy instead of only a
9141           matching one. This is required for enums to work.
9142         * gst/parse/grammar.y:
9143           use gst_caps_deserialize
9144         * testsuite/parse/Makefile.am:
9145           parse1 now works
9146         * testsuite/parse/parse1.c: (main):
9147           remove aggregator check, aggregator is broken, this test works now
9148           but fails because of bug #138012
9149         * testsuite/parse/parse2.c: (main):
9150           s/xvideosink/xvimagesink - this test looks a lot like we should
9151           disable it
9152
9153 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9154
9155         * gst/gstelement.c: (gst_element_class_init):
9156           whoops, store the signal id correctly
9157         * gst/schedulers/gstbasicscheduler.c:
9158         (gst_basic_scheduler_chain_wrapper):
9159           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
9160           chain function isn't linked
9161
9162 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
9163         * configure.ac:
9164         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
9165         support until we decide where the flags should be used
9166         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
9167         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
9168         * gst/gstpad.c: (gst_pad_link_call_link_functions):
9169         Output refused caps in the debug info
9170
9171 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9172
9173         * gst/elements/gstidentity.c: (gst_identity_chain):
9174           add duration debug
9175         * gst/gstinfo.c: (gst_debug_log_default):
9176           add timestamp
9177
9178 2004-05-13  Benjamin Otte  <otte@gnome.org>
9179
9180         * gst/gstpipeline.c: (gst_pipeline_dispose),
9181         (gst_pipeline_change_state):
9182           call gst_scheduler_reset on dispose (fixes #141416)
9183
9184 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9185
9186         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9187           compute mapsize correctly
9188         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
9189           use correct datatypes when calling a varargs function
9190         * gst/elements/gsttypefindelement.c: (stop_typefinding):
9191           push a DISCONT event as first thing
9192         * gst/gst_private.h:
9193         * gst/gstinfo.c: (_gst_debug_init):
9194           remove GST_DATAFLOW debugging category
9195         * gst/gstbin.c: (gst_bin_iterate):
9196           use GST_SCHEDULING category
9197         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
9198         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
9199         (gst_pad_call_get_function):
9200           add GST_DATAFLOW to easily track flow of buffers or events.
9201         * gst/gstqueue.c: (gst_queue_get_type),
9202         (gst_queue_handle_pending_events), (gst_queue_chain),
9203         (gst_queue_get), (gst_queue_handle_src_event):
9204           use own static debugging category GST_DATAFLOW for dataflow,
9205           use DEBUG category for showing which path events go, use LOG
9206           category for buffers.
9207
9208 2004-05-10  David Schleef  <ds@schleef.org>
9209
9210         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
9211
9212 2004-05-10  David Schleef  <ds@schleef.org>
9213
9214         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
9215         symbols, because otherwise we don't know what they are.  Thanks,
9216         the GStreamer team.
9217         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
9218
9219 2004-05-10  David Schleef  <ds@schleef.org>
9220
9221         (from Steve Lhomme)
9222         * win32/Makefile: When using make clean the MS Visual Studio makefiles
9223         are deleted.  Fix.
9224         * win32/Makefile.inspect:
9225         * win32/Makefile.launch:
9226         * win32/Makefile.register:
9227
9228 2004-05-10  David Schleef  <ds@schleef.org>
9229
9230         * gst/gstinfo.h: Add missing inline function.
9231         * gst/gsttrace.c: add include
9232         * gst/parse/grammar.y: remove unused code
9233         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
9234         more portable.
9235         * tools/gst-register.c: wrap unistd.h
9236         
9237         More additions/fixes from Steve for the MSVC build.
9238         * win32/GStreamer.vcproj:
9239         * win32/Makefile:
9240         * win32/Makefile.inspect:
9241         * win32/Makefile.launch:
9242         * win32/Makefile.register:
9243         * win32/README.txt:
9244         * win32/gst-inspect.vcproj:
9245         * win32/gst-launch.vcproj:
9246         * win32/gst-register.vcproj:
9247         * win32/gstbytestream.def:
9248         * win32/gstbytestream.vcproj:
9249         * win32/gstconfig.h:
9250         * win32/gstelements.def:
9251         * win32/gstelements.vcproj:
9252         * win32/gstenumtypes.c:
9253         * win32/gstenumtypes.h:
9254         * win32/gstoptimalscheduler.def:
9255         * win32/gstoptimalscheduler.vcproj:
9256         * win32/gstreamer.def:
9257         * win32/gstspider.def:
9258         * win32/gstspider.vcproj:
9259         * win32/gstversion.h:
9260         * win32/msvc71.sln:
9261
9262 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9263
9264         * gst/gstelement.c: (gst_element_class_init),
9265         (gst_element_no_more_pads):
9266         * gst/gstelement.h:
9267           add gst_element_no_more_pads and the "no-more-pads" signal
9268
9269 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9270
9271         * gst/gstregistry.c: (gst_registry_add_plugin):
9272           refuse to add plugins when a plugin with same name is already
9273           registered. Fixes a bunch of "How to remove plugins?" issues.
9274           May lead to other problems though, let's test
9275
9276 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9277
9278         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
9279         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
9280         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
9281
9282 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9283
9284         * tests/Makefile.am: fix am16 issue
9285
9286 2004-05-09  Benjamin Otte  <otte@gnome.org>
9287
9288         * libs/gst/bytestream/Makefile.am:
9289           we should indeed add .c files to makefiles or they won't be built
9290           (d'oh)
9291
9292 2004-05-08  Benjamin Otte  <otte@gnome.org>
9293
9294         * gst/gstpad.c: (gst_pad_proxy_fixate):
9295           really reduce the set of caps
9296
9297 2004-05-08  Benjamin Otte  <otte@gnome.org>
9298
9299         * tests/Makefile.am:
9300         * tests/spidey_bench.c: (handoff), (main):
9301           add benchmark to test how long spider needs to create a pipeline
9302
9303 2004-05-08  Benjamin Otte  <otte@gnome.org>
9304
9305         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
9306           mark links as unengaged when unnegotiating instead of deactivating.
9307           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
9308
9309 2004-05-08  Benjamin Otte  <otte@gnome.org>
9310
9311         * docs/manual/helloworld.xml:
9312           s/audiosink/osssink (patch by Patrick Guimond)
9313
9314 2004-05-07  David Schleef  <ds@schleef.org>
9315
9316         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
9317         since it contains important stuff.
9318
9319 2004-05-07  David Schleef  <ds@schleef.org>
9320
9321         * testsuite/caps/caps.c: (test3), (main): A check for appending
9322         ANY caps.
9323
9324 2004-05-07  David Schleef  <ds@schleef.org>
9325
9326         * common/m4/as-compiler-flag.m4: Properly quote arguments,
9327         which may contain commas.  Fixes detection of -Wa,-mregnames
9328
9329 2004-05-06  David Schleef  <ds@schleef.org>
9330
9331         Changes to handle compilers that don't have variadic macro
9332         support.  In particular, glib headers define some inlines
9333         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
9334         builds.
9335         * gst/Makefile.am:
9336         * gst/cothreads.c:
9337         * gst/elements/gstfdsink.c:
9338         * gst/elements/gstfdsrc.c:
9339         * gst/elements/gstfilesink.c:
9340         * gst/elements/gstfilesrc.c:
9341         * gst/gst_private.h:
9342         * gst/gstatomic.c:
9343         * gst/gstcaps.c: (gst_caps_append):
9344         * gst/gstcpu.c: (gst_cpuid_i386):
9345         * gst/gstelement.c:
9346         * gst/gsterror.c:
9347         * gst/gstfilter.c:
9348         * gst/gstinfo.h:
9349         * gst/gstprobe.c:
9350         * gst/gstquery.c:
9351         * gst/gstregistry.c:
9352         * gst/gststructure.c:
9353         * gst/gsttaginterface.c:
9354         * gst/gsttrace.c: (gst_trace_new):
9355         * gst/gsttrashstack.c:
9356         * gst/gsturi.c:
9357         * gst/gstvalue.c:
9358         * gst/parse/grammar.y:
9359         * gst/parse/parse.l:
9360         * tools/gst-inspect.c: (main):
9361         * tools/gst-launch.c: (main):
9362         * tools/gst-xmlinspect.c: (PUT_STRING):
9363
9364 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9365
9366         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9367         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
9368         * gst/elements/gstfilesrc.h:
9369           send NEW_MEDIA events correctly
9370         * gst/elements/gsttypefindelement.c: (start_typefinding),
9371         (gst_type_find_element_handle_event):
9372           restart typefinding when we get a NEW_MEDIA event
9373         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
9374         (gst_bin_dispose):
9375           don't die when someone removes elements in callbacks
9376         * gst/gstelement.c: (gst_element_change_state):
9377           improve debugging
9378         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
9379           we need a NEW_MEDIA event to engage a link
9380         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
9381           don't g_print debugging stuff
9382         * testsuite/caps/simplify.c: (check_caps):
9383
9384 2004-05-04  Benjamin Otte  <otte@gnome.org>
9385
9386         * gst/parse/grammar.y:
9387           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
9388
9389 2004-05-04  Benjamin Otte  <otte@gnome.org>
9390
9391         * testsuite/caps/renegotiate.c: (main):
9392           improve output in error case
9393
9394 2004-05-04  Benjamin Otte  <otte@gnome.org>
9395
9396         * gst/parse/grammar.y:
9397           fix assert to not trigger when there's no error argument
9398         * gst/parse/parse.l:
9399           fix definition of caps to allow more than two structures
9400         * testsuite/caps/Makefile.am:
9401         * testsuite/caps/renegotiate.c: (main):
9402           it's sinesrc and works in that case
9403
9404 2004-05-04  Wim Taymans  <wim@fluendo.com>
9405
9406         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
9407         (group_dec_link), (gst_opt_scheduler_pad_unlink):
9408         when removing an element from a group, we always need to
9409         decrement the link count that this group had with other 
9410         groups through the element.
9411         added an extra assert to catch inconsistencies when decrementing
9412         the link count.
9413
9414 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9415
9416         * configure.ac:
9417         * docs/gst/Makefile.am:
9418         * docs/gst/gstreamer-sections.txt:
9419         * docs/gst/tmpl/gstcompat.sgml:
9420         * examples/appreader/Makefile.am:
9421         * examples/cutter/Makefile.am:
9422         * examples/events/Makefile.am:
9423         * examples/helloworld/Makefile.am:
9424         * examples/helloworld2/Makefile.am:
9425         * examples/launch/Makefile.am:
9426         * examples/manual/Makefile.am:
9427         * examples/mixer/Makefile.am:
9428         * examples/pingpong/Makefile.am:
9429         * examples/plugins/Makefile.am:
9430         * examples/queue/Makefile.am:
9431         * examples/queue2/Makefile.am:
9432         * examples/queue3/Makefile.am:
9433         * examples/queue4/Makefile.am:
9434         * examples/retag/Makefile.am:
9435         * examples/thread/Makefile.am:
9436         * examples/typefind/Makefile.am:
9437         * examples/xml/Makefile.am:
9438         * gst/Makefile.am:
9439         * gst/autoplug/Makefile.am:
9440         * gst/elements/Makefile.am:
9441         * gst/gstcompat.h:
9442         * gst/indexers/Makefile.am:
9443         * gst/parse/Makefile.am:
9444         * gst/registries/Makefile.am:
9445         * gst/schedulers/Makefile.am:
9446         * libs/gst/bytestream/Makefile.am:
9447         * libs/gst/control/Makefile.am:
9448         * libs/gst/getbits/Makefile.am:
9449         * po/af.po:
9450         * po/az.po:
9451         * po/en_GB.po:
9452         * po/fr.po:
9453         * po/nl.po:
9454         * po/sr.po:
9455         * po/sv.po:
9456         * po/tr.po:
9457         * po/uk.po:
9458         * tests/Makefile.am:
9459         * tests/bufspeed/Makefile.am:
9460         * tests/instantiate/Makefile.am:
9461         * tests/memchunk/Makefile.am:
9462         * tests/muxing/Makefile.am:
9463         * tests/negotiation/Makefile.am:
9464         * tests/probes/Makefile.am:
9465         * tests/sched/Makefile.am:
9466         * tests/seeking/Makefile.am:
9467         * tests/threadstate/Makefile.am:
9468         * testsuite/caps/Makefile.am:
9469         * testsuite/cleanup/Makefile.am:
9470         * testsuite/dlopen/Makefile.am:
9471         * testsuite/dynparams/Makefile.am:
9472         * testsuite/plugin/Makefile.am:
9473         * testsuite/states/Makefile.am:
9474         * tools/Makefile.am:
9475           reorganize compile/link flags to be consistent
9476           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
9477
9478 2004-05-04  David Schleef  <ds@schleef.org>
9479
9480         The "once more, with feeling" check-in.
9481         * testsuite/caps/Makefile.am: dist caps_strings
9482         * testsuite/caps/renegotiate.c: (main): This test triggers a
9483           segfault in the core.  Marking as failing.
9484
9485 2004-05-03  David Schleef  <ds@schleef.org>
9486
9487         * testsuite/caps/deserialize.c: (main): Fix problems noticed
9488           by the build bots.
9489         * testsuite/caps/renegotiate.c: (main): Same.
9490
9491 2004-05-03  David Schleef  <ds@schleef.org>
9492
9493         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
9494
9495 2004-05-03  David Schleef  <ds@schleef.org>
9496
9497         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
9498           variable to find our source file.
9499
9500 2004-05-03  David Schleef  <ds@schleef.org>
9501
9502         * configure.ac:  Link plugins with libgstreamer and dependent
9503           libraries
9504         * testsuite/caps/Makefile.am:
9505         * testsuite/caps/caps_strings:
9506         * testsuite/caps/deserialize.c: (main): Add a little test to slog
9507           through a file of caps strings and test each one
9508
9509 2004-05-04  Benjamin Otte  <otte@gnome.org>
9510
9511         * libs/gst/bytestream/Makefile.am:
9512         * libs/gst/bytestream/adapter.c: 
9513         * libs/gst/bytestream/adapter.h:
9514           add GstAdapter, similar to bytestream, but doesn't require ugly event
9515           handling or uglier loopbased elements
9516
9517 2004-05-03  David Schleef  <ds@schleef.org>
9518
9519         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
9520         * testsuite/caps/erathostenes.c:
9521         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
9522
9523 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9524
9525         * docs/pwg/pwg.xml:
9526           remove hardcoded stylesheet path (duh)
9527         * docs/random/release:
9528         * docs/gst/gstreamer-sections.txt:
9529         * gst/Makefile.am:
9530         * gst/gst.h:
9531         * gst/gst_private.h:
9532         * gst/gstcaps.c:
9533         * gst/gstevent.c:
9534         * gst/gstformat.c:
9535         * gst/gstinfo.c:
9536         * gst/gstinfo.h:
9537         * gst/gstinterface.c:
9538         * gst/gstmemchunk.c:
9539         * gst/gstprobe.c:
9540         * gst/gstquery.c:
9541         * gst/gstregistry.c:
9542         * gst/gstregistrypool.c:
9543         * gst/gststructure.c:
9544         * gst/gsttaginterface.c:
9545         * gst/gstthread.c:
9546         * gst/gsttrace.c:
9547         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
9548         * gst/gsturi.c:
9549         * gst/gstvalue.c:
9550           deprecate gst_info; remove gstlog.h
9551    
9552
9553 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9554
9555         * Makefile.am:
9556         * po/en_GB.po:
9557         * po/sv.po:
9558         * po/uk.po:
9559           updated translations
9560
9561 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9562
9563         * gst/gstbin.c: (gst_bin_dispose):
9564           better debugging
9565
9566 2004-05-03  Johan Dahlin  <johan@gnome.org>
9567
9568         * gst/schedulers/gstoptimalscheduler.c
9569         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
9570         really is a GstElement. Avoids critical when running gst-launch -v
9571         and a oggdemux/decoding pipeline.
9572
9573 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9574
9575         * docs/gst/tmpl/gstpipeline.sgml :
9576         * docs/manual/elements-api.xml :
9577                 doc fix by Patrick Guimond (Protector) from devel ML
9578                 reviewed by ronald
9579
9580 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9581
9582         * docs/gst/Makefile.am :
9583         * docs/libs/Makefile.am :
9584                 apply a patch from Arwed v. Merkatz so that gtk-doc
9585                 generated docs install (same for .devhelp file)
9586                 (fixes part 1 of #138836)
9587
9588 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9589
9590         * docs/faq/dependencies.xml: typo
9591         * docs/faq/getting.xml :
9592             - fix download URL for new gstreamer site
9593             - hide sf.net download page as latest version aren't there
9594             - fix apt URLs
9595             - fill "get via CVS" paragraph (link to dev page on the site)
9596         * docs/faq/general.xml:
9597             hide status tables as they no more exists
9598             change case on plugins license file to reflect reality
9599         * docs/faq/troubleshooting.xml:
9600             remove the wiki question/answer as there is no more wiki
9601
9602 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9603
9604         * gst/gsterror.h:
9605           include the headers needed for declarations used in this header
9606
9607 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9608
9609         * docs/random/uraeus/gstreamer_and_midi.txt :
9610           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
9611           (fixes #132288)
9612
9613 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
9614
9615         reviewed by Benjamin Otte  <otte@gnome.org>
9616
9617         * gst/schedulers/gthread-cothreads.h:
9618           free allocated data for main cothread, too when destroying context
9619           (fixes #141417)
9620
9621 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
9622
9623         * docs/manual/goals.xml : remove duplicated paragraph at end 
9624         of doc page (fixes #141448)
9625
9626 2004-04-29  David Schleef  <ds@schleef.org>
9627
9628         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
9629         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
9630
9631 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9632
9633         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
9634           fix property
9635         * gst/gstcaps.c:
9636           fix doc string
9637         * po/POTFILES.in:
9638           rename typefind source file
9639
9640 2004-04-28  David Schleef  <ds@schleef.org>
9641
9642         Several new files from Steve Lhomme's MSVC patch (bug #141317):
9643         * win32/GStreamer.vcproj:
9644         * win32/Makefile:
9645         * win32/config.h:
9646         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
9647         (_trewinddir), (_ttelldir), (_tseekdir):
9648         * win32/dirent.h:
9649         * win32/gst-inspect.vcproj:
9650         * win32/gst-launch.vcproj:
9651         * win32/gst-register.vcproj:
9652         * win32/gstbytestream.vcproj:
9653         * win32/gstelements.vcproj:
9654         * win32/gstoptimalscheduler.vcproj:
9655         * win32/gstspider.vcproj:
9656         * win32/gtchar.h:
9657         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
9658         * win32/mman.h:
9659         * win32/mman.inl:
9660         * win32/msvc71.sln:
9661
9662 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9663
9664         * gst/gst.c: (init_post):
9665         * gst/gstinfo.c:
9666           remove useless _gst_progname stuff
9667         * tools/gst-inspect.c: (print_field), (print_caps):
9668           improve caps output
9669
9670 2004-04-28  David Schleef  <ds@schleef.org>
9671
9672         Disable parsing of a lot of files that aren't part of the
9673         exported API.  Move corresponding template files to old/,
9674         waiting for removal when they don't contain anything
9675         interesting.
9676         * docs/gst/Makefile.am:
9677         * docs/gst/gstreamer-sections.txt:
9678         * docs/gst/tmpl/cothreads.sgml:
9679         * docs/gst/tmpl/cothreads_compat.sgml:
9680         * docs/gst/tmpl/gettext.sgml:
9681         * docs/gst/tmpl/gobject2gtk.sgml:
9682         * docs/gst/tmpl/grammar.tab.sgml:
9683         * docs/gst/tmpl/gst-i18n-app.sgml:
9684         * docs/gst/tmpl/gst-i18n-lib.sgml:
9685         * docs/gst/tmpl/gst_private.sgml:
9686         * docs/gst/tmpl/gstaggregator.sgml:
9687         * docs/gst/tmpl/gstarch.sgml:
9688         * docs/gst/tmpl/gstatomic_impl.sgml:
9689         * docs/gst/tmpl/gstbufferstore.sgml:
9690         * docs/gst/tmpl/gstdata_private.sgml:
9691         * docs/gst/tmpl/gstdisksink.sgml:
9692         * docs/gst/tmpl/gstdisksrc.sgml:
9693         * docs/gst/tmpl/gstelementfactory.sgml:
9694         * docs/gst/tmpl/gstextratypes.sgml:
9695         * docs/gst/tmpl/gstfakesink.sgml:
9696         * docs/gst/tmpl/gstfakesrc.sgml:
9697         * docs/gst/tmpl/gstfdsink.sgml:
9698         * docs/gst/tmpl/gstfdsrc.sgml:
9699         * docs/gst/tmpl/gstfilesink.sgml:
9700         * docs/gst/tmpl/gstfilesrc.sgml:
9701         * docs/gst/tmpl/gsthttpsrc.sgml:
9702         * docs/gst/tmpl/gstidentity.sgml:
9703         * docs/gst/tmpl/gstindexfactory.sgml:
9704         * docs/gst/tmpl/gstmarshal.sgml:
9705         * docs/gst/tmpl/gstmd5sink.sgml:
9706         * docs/gst/tmpl/gstmultidisksrc.sgml:
9707         * docs/gst/tmpl/gstmultifilesrc.sgml:
9708         * docs/gst/tmpl/gstpadtemplate.sgml:
9709         * docs/gst/tmpl/gstpipefilter.sgml:
9710         * docs/gst/tmpl/gstschedulerfactory.sgml:
9711         * docs/gst/tmpl/gstsearchfuncs.sgml:
9712         * docs/gst/tmpl/gstshaper.sgml:
9713         * docs/gst/tmpl/gstspider.sgml:
9714         * docs/gst/tmpl/gstspideridentity.sgml:
9715         * docs/gst/tmpl/gststatistics.sgml:
9716         * docs/gst/tmpl/gsttee.sgml:
9717         * docs/gst/tmpl/gsttimecache.sgml:
9718         * docs/gst/tmpl/gsttypefind.sgml:
9719         * docs/gst/tmpl/gsttypefindfactory.sgml:
9720         * docs/gst/tmpl/gstxmlregistry.sgml:
9721         * docs/gst/tmpl/gthread-cothreads.sgml:
9722         * docs/gst/tmpl/old/cothreads.sgml:
9723         * docs/gst/tmpl/old/cothreads_compat.sgml:
9724         * docs/gst/tmpl/old/gettext.sgml:
9725         * docs/gst/tmpl/old/gobject2gtk.sgml:
9726         * docs/gst/tmpl/old/grammar.tab.sgml:
9727         * docs/gst/tmpl/old/gst-i18n-app.sgml:
9728         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
9729         * docs/gst/tmpl/old/gst_private.sgml:
9730         * docs/gst/tmpl/old/gstaggregator.sgml:
9731         * docs/gst/tmpl/old/gstarch.sgml:
9732         * docs/gst/tmpl/old/gstatomic_impl.sgml:
9733         * docs/gst/tmpl/old/gstbufferstore.sgml:
9734         * docs/gst/tmpl/old/gstdata_private.sgml:
9735         * docs/gst/tmpl/old/gstdisksink.sgml:
9736         * docs/gst/tmpl/old/gstdisksrc.sgml:
9737         * docs/gst/tmpl/old/gstelementfactory.sgml:
9738         * docs/gst/tmpl/old/gstextratypes.sgml:
9739         * docs/gst/tmpl/old/gstfakesink.sgml:
9740         * docs/gst/tmpl/old/gstfakesrc.sgml:
9741         * docs/gst/tmpl/old/gstfdsink.sgml:
9742         * docs/gst/tmpl/old/gstfdsrc.sgml:
9743         * docs/gst/tmpl/old/gstfilesink.sgml:
9744         * docs/gst/tmpl/old/gstfilesrc.sgml:
9745         * docs/gst/tmpl/old/gsthttpsrc.sgml:
9746         * docs/gst/tmpl/old/gstidentity.sgml:
9747         * docs/gst/tmpl/old/gstindexfactory.sgml:
9748         * docs/gst/tmpl/old/gstmarshal.sgml:
9749         * docs/gst/tmpl/old/gstmd5sink.sgml:
9750         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
9751         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
9752         * docs/gst/tmpl/old/gstpadtemplate.sgml:
9753         * docs/gst/tmpl/old/gstpipefilter.sgml:
9754         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
9755         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
9756         * docs/gst/tmpl/old/gstshaper.sgml:
9757         * docs/gst/tmpl/old/gstspider.sgml:
9758         * docs/gst/tmpl/old/gstspideridentity.sgml:
9759         * docs/gst/tmpl/old/gststatistics.sgml:
9760         * docs/gst/tmpl/old/gsttee.sgml:
9761         * docs/gst/tmpl/old/gsttimecache.sgml:
9762         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
9763         * docs/gst/tmpl/old/gstxmlregistry.sgml:
9764         * docs/gst/tmpl/old/gthread-cothreads.sgml:
9765         * docs/gst/tmpl/old/types.sgml:
9766         * docs/gst/tmpl/types.sgml:
9767
9768         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
9769         gtkdoc-scan doesn't like files with the same name in different
9770         directories.
9771         * gst/elements/Makefile.am:
9772         * gst/elements/gstelements.c:
9773         * gst/elements/gsttypefind.c: 
9774         * gst/elements/gsttypefind.h:
9775         * gst/elements/gsttypefindelement.c:
9776         * gst/elements/gsttypefindelement.h:
9777
9778 2004-04-28  David Schleef  <ds@schleef.org>
9779
9780         A bunch of portability fixes, derived from Steve Lhomme's MSVC
9781         patch (bug #141317):
9782         * gst/gst-i18n-lib.h: Allow disabling gettext.
9783         * gst/gstatomic_impl.h: disable warning when it's dumb.
9784         * gst/gstclock.c: fix include
9785         * gst/gstcompat.h: fix variadic macro
9786         * gst/gstinfo.c: fix include
9787         * gst/gstmacros.h: add defines for inlines on MSVC
9788         * gst/gstplugin.c: fix includes
9789         * gst/gstregistry.c: fix includes
9790         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
9791         * gst/gstsystemclock.c: fix include
9792         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
9793         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
9794         * gst/registries/gstxmlregistry.c:
9795         (gst_xml_registry_parse_element_factory): fix use of non-portable
9796         functions
9797         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
9798         * libs/gst/control/dparammanager.h: same
9799
9800 2004-04-28  David Schleef  <ds@schleef.org>
9801
9802         Move a bunch of unused files to old/ with names that are
9803         not case-insensitive-unique.  These files still contain some
9804         useful information that needs to be merged into gstbin.sgml,
9805         etc., so they shouldn't be deleted yet.
9806         * docs/gst/tmpl/GstBin.sgml:
9807         * docs/gst/tmpl/GstBuffer.sgml:
9808         * docs/gst/tmpl/GstCaps.sgml:
9809         * docs/gst/tmpl/GstClock.sgml:
9810         * docs/gst/tmpl/GstCompat.sgml:
9811         * docs/gst/tmpl/GstData.sgml:
9812         * docs/gst/tmpl/GstElement.sgml:
9813         * docs/gst/tmpl/GstEvent.sgml:
9814         * docs/gst/tmpl/GstIndex.sgml:
9815         * docs/gst/tmpl/GstStructure.sgml:
9816         * docs/gst/tmpl/GstTag.sgml:
9817         * docs/gst/tmpl/old/GstBin.sgml:
9818         * docs/gst/tmpl/old/GstBuffer.sgml:
9819         * docs/gst/tmpl/old/GstCaps.sgml:
9820         * docs/gst/tmpl/old/GstClock.sgml:
9821         * docs/gst/tmpl/old/GstCompat.sgml:
9822         * docs/gst/tmpl/old/GstData.sgml:
9823         * docs/gst/tmpl/old/GstElement.sgml:
9824         * docs/gst/tmpl/old/GstEvent.sgml:
9825         * docs/gst/tmpl/old/GstIndex.sgml:
9826         * docs/gst/tmpl/old/GstStructure.sgml:
9827         * docs/gst/tmpl/old/GstTag.sgml:
9828
9829 2004-04-28  David Schleef  <ds@schleef.org>
9830
9831         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
9832         (gst_caps_append), (gst_caps_append_structure),
9833         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
9834         (gst_caps_set_simple), (gst_caps_set_simple_valist),
9835         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
9836         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
9837         (gst_caps_intersect), (gst_caps_normalize),
9838         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
9839         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
9840         * gst/gstcaps.h: use GST_IS_CAPS().
9841
9842 2004-04-26  David Schleef  <ds@schleef.org>
9843
9844         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
9845         assembly.  gcc doesn't handle it correctly. (bug #141083)
9846         * gst/gsttrashstack.h: same
9847
9848 2004-04-25  Benjamin Otte  <otte@gnome.org>
9849
9850         * gst/gstelement.c: (gst_element_change_state):
9851           fix assertion to do an int comparison
9852
9853 2004-04-25  Benjamin Otte  <otte@gnome.org>
9854
9855         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9856           better debugging output on error
9857
9858 2004-04-25  Benjamin Otte  <otte@gnome.org>
9859
9860         * gst/gstcaps.c: (gst_caps_subtract):
9861           fix memleak
9862
9863 2004-04-23  Benjamin Otte  <otte@gnome.org>
9864
9865         * gst/gstvalue.c: (gst_value_compare_buffer),
9866         (_gst_value_initialize):
9867           add comparison function for buffers
9868
9869 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9870
9871         * docs/pwg/pwg.xml:
9872           Just found out that this so-called "ima-wav" format is really
9873           just "dvi adpcm" (according to the MS WAV documentation). So
9874           renaming it. We didn't use it yet anyway.
9875
9876 2004-04-23  Benjamin Otte  <otte@gnome.org>
9877
9878         * gst/gstcaps.c: (gst_caps_is_always_compatible):
9879           call gst_caps_is_subset
9880
9881 2004-04-23  Benjamin Otte  <otte@gnome.org>
9882
9883         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
9884         (gst_caps_is_subset):
9885           add documentation
9886
9887 2004-04-23  Benjamin Otte  <otte@gnome.org>
9888           
9889         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
9890         (gst_caps_structure_subtract), (gst_caps_subtract),
9891         (gst_caps_structure_figure_out_union),
9892         (gst_caps_structure_simplify), (gst_caps_do_simplify):
9893           fix simplifying and subtracting not working correctly with optional
9894           properties
9895           solve assorted problems that make it now simplify ebven more
9896         * docs/gst/tmpl/gstcaps.sgml:
9897         * gst/gstcaps.h:
9898           make gst_caps_do_simplify return a bool to indicate if it simplified
9899         * testsuite/caps/simplify.c: (main):
9900           add more checks. The tests is quite a bit useless right now because
9901           the core is heavily simplifying itself.
9902         * testsuite/caps/caps.h:
9903           fix caps to contain all optional properties
9904
9905 2004-04-22  Benjamin Otte  <otte@gnome.org>
9906
9907         * docs/gst/tmpl/gstcaps.sgml:
9908         * docs/gst/tmpl/gstfilesrc.sgml:
9909         * docs/gst/tmpl/gststructure.sgml:
9910         * docs/gst/tmpl/gstvalue.sgml:
9911           update for recent API changes
9912         * gst/gstcaps.c: (gst_caps_do_simplify):
9913           fix to stop trying with a freed structure
9914         * gst/gstpad.c: (gst_pad_link_fixate):
9915           simplify caps
9916         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
9917           remove C++ comment
9918         * gst/gstpad.h:
9919           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
9920         * gst/gststructure.c: (gst_structure_value_get_generic_type),
9921         (gst_structure_to_string):
9922           keep the correct type when using lists of ranges
9923         * gst/gstvalue.c: (gst_value_list_prepend_value),
9924         (gst_value_list_append_value):
9925           copy the value before adding to the list (d'oh)
9926         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
9927         (gst_value_subtract_int_range_int_range):
9928           handle overflows correctly
9929         * gst/gstvalue.c: (gst_value_subtract_from_list):
9930           fix memleak
9931         * testsuite/caps/caps.h:
9932           add a caps that caused segfaults
9933
9934 2004-04-22  Benjamin Otte  <otte@gnome.org>
9935
9936         * testsuite/refcounting/pad.c: (main):
9937           fix test
9938
9939 2004-04-22  Benjamin Otte  <otte@gnome.org>
9940
9941         * gst/gstcaps.c: (gst_caps_subtract):
9942           allow subtracting ANY and EMPTY from ANY caps
9943
9944 2004-04-22  Benjamin Otte  <otte@gnome.org>
9945
9946         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
9947         (gst_caps_union):
9948           only simplify in functions that create new caps. Simplifying in
9949           gst_caps_append breaks tests.
9950
9951 2004-04-22  Benjamin Otte  <otte@gnome.org>
9952
9953         * gst/gstcaps.c: (gst_caps_structure_simplify):
9954           unset GValue after use
9955         * gst/gstcaps.c: (gst_caps_append), 
9956         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
9957           use gst_caps_simplify (reduces registry size by 30%)
9958         * gst/gstpad.c: (gst_pad_template_new):
9959           don't allow NULL caps
9960
9961 2004-04-22  Benjamin Otte  <otte@gnome.org>
9962
9963         * docs/gst/gstreamer-sections.txt:
9964           add gst_caps_do_simplify
9965         * gst/gstcaps.c:
9966           add documentation for gst_caps_do_simplify
9967         * gst/gstvalue.h:
9968           fix typo in gst_value_register_subtract_func declaration for gst-doc
9969
9970 2004-04-22  Benjamin Otte  <otte@gnome.org>
9971
9972         * gst/gstcaps.c: (gst_caps_from_string_inplace):
9973           fix bug when converting from empty string.
9974         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
9975         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
9976           use gst_caps_new_empty to allocate a new caps. Only that function
9977           allocates memory for caps now.
9978         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
9979         (gst_caps_remove_structure):
9980           add ability to remove one structure (but not to header yet)
9981         * gst/gstcaps.c: (gst_caps_compare_structures),
9982         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
9983         (gst_caps_structure_simplify), (gst_caps_do_simplify),
9984         * gst/gstcaps.h:
9985           add gst_caps_do_simplify that tries to simplify a caps in place.
9986           Deprecate old gst_caps_simplify function.
9987         * testsuite/caps/caps.h:
9988           add caps.h containing a common set of caps to test against.
9989         * testsuite/caps/sets.c: (check_caps), (main):
9990           use it.
9991         * testsuite/caps/.cvsignore:
9992         * testsuite/caps/Makefile.am:
9993         * testsuite/caps/simplify.c: (check_caps), (main):
9994           add test to check correctness and efficency of caps simplification.
9995
9996 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
9997
9998         reviewed by Benjamin Otte  <otte@gnome.org>
9999
10000         * gst/gstparse.c: (_gst_parse_escape):
10001           Free the GString used in _gst_parse_escape()
10002
10003 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10004
10005         * gst/gstpad.c: (gst_pad_link_negotiate):
10006           refuse to link if the link is not possible
10007         * configure.ac:
10008         * testsuite/Makefile.am:
10009         * testsuite/negotiation/.cvsignore:
10010         * testsuite/negotiation/Makefile.am:
10011         * testsuite/negotiation/pad_link.c: (main):
10012           add test that checks the above behaviour
10013
10014 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10015
10016         * docs/gst/gstreamer-sections.txt:
10017           add newly added API
10018
10019 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
10020
10021         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10022         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
10023         (gst_filesrc_open_file), (gst_filesrc_close_file),
10024         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
10025         * gst/elements/gstfilesrc.h:
10026           add support for non-regular files (#140734)
10027
10028 2004-04-21  Benjamin Otte  <otte@gnome.org>
10029
10030         * gst/gstpad.c: (gst_pad_link_fixate):
10031           add sophisticated error checking code to see if fixation functions
10032           did their fixation right
10033
10034 2004-04-21  Benjamin Otte  <otte@gnome.org>
10035
10036         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
10037           check for ANY caps before appending/unioning
10038         * gst/gstcaps.c: (gst_caps_is_subset),
10039         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
10040         (gst_caps_structure_subtract), (gst_caps_subtract):
10041         * gst/gstcaps.h:
10042           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
10043           the API. deprecate gst_caps_is_equal_fixed
10044         * gst/gstpad.c: (gst_pad_try_set_caps):
10045         * gst/gstqueue.c: (gst_queue_link):
10046           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
10047         * gst/gststructure.c: (gst_structure_get_name_id):
10048         * gst/gststructure.h:
10049           add function gst_structure_get_name_id
10050         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
10051         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
10052         (gst_value_subtract_int_range_int_range),
10053         (gst_value_subtract_double_double_range),
10054         (gst_value_subtract_double_range_double),
10055         (gst_value_subtract_double_range_double_range),
10056         (gst_value_subtract_from_list), (gst_value_subtract_list),
10057         (gst_value_can_intersect), (gst_value_subtract),
10058         (gst_value_can_subtract), (gst_value_register_subtract_func),
10059         (_gst_value_initialize):
10060         * gst/gstvalue.h:
10061           add support for subtracting values from each other. Note that
10062           subtracting means subtracting as in set theory. Required for caps
10063           stuff above.
10064         * testsuite/caps/.cvsignore:
10065         * testsuite/caps/Makefile.am:
10066         * testsuite/caps/erathostenes.c: (erathostenes), (main):
10067         * testsuite/caps/sets.c: (check_caps), (main):
10068         * testsuite/caps/subtract.c: (check_caps), (main):
10069           add tests for subtraction and equality code.
10070
10071 2004-04-20  David Schleef  <ds@schleef.org>
10072
10073         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
10074         * gst/indexers/Makefile.am:
10075         * gst/schedulers/Makefile.am:
10076         * libs/gst/bytestream/Makefile.am:
10077         * libs/gst/control/Makefile.am:
10078         * libs/gst/getbits/Makefile.am:
10079
10080 2004-04-20  David Schleef  <ds@schleef.org>
10081
10082         * common/as-libtool.mak: Fine-tune DLL building.
10083         * configure.ac: Link plugins against libgstreamer.  Define plugindir
10084         (like gst-plugins)
10085         * examples/plugins/Makefile.am: remove plugindir
10086         * gst/autoplug/Makefile.am: DLL building fixes
10087         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
10088         Windows.
10089         * gst/elements/gstelements.c: Conditionally disable pipefilter.
10090         * gst/indexers/Makefile.am: DLL building fixes
10091         * gst/schedulers/Makefile.am: DLL building fixes.
10092         * libs/gst/bytestream/Makefile.am: DLL building fixes.
10093         * libs/gst/control/Makefile.am: same
10094         * libs/gst/getbits/Makefile.am: same
10095         * testsuite/Makefile.am: New dlopen directory
10096         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
10097         when dlopened.
10098         * testsuite/dlopen/dlopen_gst.c: (main): same
10099         * testsuite/dlopen/loadgst.c: (do_test): same
10100
10101 2004-04-20  David Schleef  <ds@schleef.org>
10102
10103         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
10104         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
10105
10106 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10107
10108         * gst/gstelement.c: (gst_element_wait),
10109         (gst_element_set_time_delay), (gst_element_change_state):
10110           Use GST_TIME_*
10111
10112 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10113
10114         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
10115         (gst_spider_identity_plug):
10116           improve debugging messages
10117         * gst/gstbin.c: (gst_bin_remove_func):
10118           make sure the state_change function is only called with simple state
10119           transitions
10120
10121 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10122
10123         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
10124         (gst_fakesink_set_property), (gst_fakesink_chain):
10125         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
10126         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
10127         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
10128         * gst/elements/gstidentity.c: (gst_identity_chain),
10129         (gst_identity_set_property):
10130         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
10131         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
10132           add warnings to _set_property for unknown arguments
10133           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
10134
10135 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10136
10137         * Makefile.am:
10138         * docs/manuals.mak:
10139           add .po file download snippet
10140           fix a bug in the doc makefile
10141
10142 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10143
10144         * Makefile.am:
10145         * po/LINGUAS:
10146         * po/en_GB.po:
10147           Added en_GB translation (Gareth Owen)
10148
10149 2004-04-20  Johan Dahlin  <johan@gnome.org>
10150
10151         * gst/gstpad.c (_invent_event): Clean up
10152
10153 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10154
10155         * testsuite/caps/filtercaps.c: (main):
10156           fix test to test things correctly (caps are complicated)
10157
10158 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10159
10160         * testsuite/caps/Makefile.am:
10161         * testsuite/caps/filtercaps.c: (main):
10162           add test (that doesn't work right now, but should)
10163
10164 2004-04-19  David Schleef  <ds@schleef.org>
10165
10166         * configure.ac: Add test for allowing unaligned access.  Add define
10167         to put in gstconfig.h.
10168         * docs/gst/gstreamer-sections.txt: New symbols
10169         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
10170         * docs/gst/tmpl/gstfilesrc.sgml:
10171         * docs/gst/tmpl/gstparse.sgml:
10172         * docs/gst/tmpl/gsttypes.sgml:
10173         * docs/gst/tmpl/gstutils.sgml:
10174         * docs/gst/tmpl/gstvalue.sgml:
10175         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
10176         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
10177         on most !i386/!powerpc architectures.  From Daniel Gazard
10178         <daniel.gazard@free.fr>.  (bug #140156)
10179         * po/af.po: Check in changes made by gettext.
10180         * po/az.po:
10181         * po/fr.po:
10182         * po/nl.po:
10183         * po/sr.po:
10184         * po/sv.po:
10185
10186 2004-04-20  Benjamin Otte  <otte@gnome.org>
10187
10188         * gst/schedulers/entryscheduler.c: 
10189         (gst_entry_scheduler_yield):
10190           refuse to yield when decoupled elements insist on doing that.
10191           At least it's better than crashing
10192
10193 2004-04-19  David Schleef  <ds@schleef.org>
10194
10195         * docs/libs/Makefile.am: Change sinclude to include
10196         * docs/gst/Makefile.am: same
10197         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
10198
10199 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10200
10201         * po/LINGUAS:
10202         * po/uk.po:
10203           Added Ukrainian translation (Maxim V. Dziumanenko)
10204
10205 2004-04-19  Johan Dahlin  <johan@gnome.org>
10206
10207         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
10208         checking here, do it before calling the function.
10209         Clean up, use for loops instead of while loops while iterating
10210         over lists.
10211
10212         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
10213         in debug message.
10214         (gst_spider_create_and_plug): Improve debug message.
10215         General: Replace while loops which iterates over GLists with for
10216         loops. Which are much cleaner, improves readability, especially
10217         for gst_spider_identity_plug
10218
10219         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
10220         fixes bug 140477
10221
10222 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10223
10224         * po/LINGUAS:
10225         * po/tr.po:
10226           Added Turkish translation (Baris Cicek)
10227
10228 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10229
10230         * docs/faq/troubleshooting.xml:
10231           Mention gst-register in the FAQ (fixes 139045).
10232
10233 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
10234
10235         * docs/gst/gstreamer-sections.txt:
10236
10237 2004-04-17  Benjamin Otte  <otte@gnome.org>
10238
10239         * gst/gstelement.c: (gst_element_dispose):
10240           simplify
10241         * gst/gstpad.c: (gst_pad_call_chain_function):
10242           don't create loads of events due to bad macro usage
10243
10244 2004-04-16  David Schleef  <ds@schleef.org>
10245
10246         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
10247         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
10248         * gst/gstvalue.c: (gst_value_serialize_buffer),
10249         (gst_value_deserialize_buffer), (gst_type_is_fixed),
10250         (_gst_value_initialize): Create a new function gst_type_is_fixed()
10251         to indicate types that are fixed wrt caps or not.  Switching to
10252         this function fixes (bug #140298).
10253         * gst/gstvalue.h:
10254
10255 2004-04-16  David Schleef  <ds@schleef.org>
10256
10257         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
10258         for GST_UNALIGNED_ACESS, since we essentially know which archs
10259         are ok.
10260
10261 2004-04-17  Benjamin Otte  <otte@gnome.org>
10262
10263         * docs/gst/Makefile.am:
10264           ignore gst/parse directory when building docs (fixes #140205)
10265
10266 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
10267
10268         * testsuite/refcounting/mem.c: (vmsize):
10269           do error checking
10270
10271 2004-04-16  Johan Dahlin  <johan@gnome.org>
10272
10273         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
10274         and gst_pad_call_get_function.
10275
10276 2004-04-15  David Schleef  <ds@schleef.org>
10277
10278         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
10279         checks if we can access unaligned memory.
10280         * configure.ac: Use it.
10281
10282 2004-04-16  Benjamin Otte  <otte@gnome.org>
10283
10284         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
10285         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
10286         * gst/elements/gstfilesrc.h:
10287           s/seek_happened/need_discont/ and require discont before sending any
10288           data
10289
10290 2004-04-15  David Schleef  <ds@schleef.org>
10291
10292         * gst/gstvalue.c: (gst_value_serialize_buffer),
10293         (gst_value_deserialize_buffer), (_gst_value_initialize):
10294         Register these types as fundamental types. (bug #140015)
10295
10296 2004-04-16  Benjamin Otte  <otte@gnome.org>
10297
10298         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
10299         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
10300         (gst_pad_pull):
10301           implement enforcing discont events before buffers are passed. This
10302           allows state changes of only some elements and later correctly going
10303           on where they left off (or in short: you can now set audio sinks to
10304           NULL to release the device when the pipeline is paused)
10305         * gst/gstpad.c: (gst_pad_call_chain_function),
10306         (gst_pad_call_get_function):
10307         * gst/gstpad.h:
10308           add gst_pad_call_chain_function and gst_pad_call_get_function for
10309           scheduler interaction. They are required because of the changes
10310           above.
10311         * gst/schedulers/entryscheduler.c: (get_buffer),
10312         (gst_entry_scheduler_chain_wrapper),
10313         (gst_entry_scheduler_get_wrapper),
10314         (gst_entry_scheduler_state_transition),
10315         (gst_entry_scheduler_pad_link):
10316         * gst/schedulers/gstbasicscheduler.c:
10317         (gst_basic_scheduler_chain_wrapper),
10318         (gst_basic_scheduler_src_wrapper),
10319         (gst_basic_scheduler_chainhandler_proxy),
10320         (gst_basic_scheduler_gethandler_proxy),
10321         (gst_basic_scheduler_cothreaded_chain),
10322         (gst_basic_scheduler_chain_elements):
10323         * gst/schedulers/gstoptimalscheduler.c:
10324         (get_group_schedule_function), (pad_clear_queued),
10325         (gst_opt_scheduler_pad_link):
10326           use the new functions instead of calling get/chain-functions
10327           directly.
10328
10329 2004-04-15  David Schleef  <ds@schleef.org>
10330
10331         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
10332         * docs/gst/tmpl/gstinfo.sgml: same
10333         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
10334         gtk-doc put here.
10335         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
10336         * examples/queue/queue.c: (main):  We iterate pipelines, not
10337         bins.  (bug #139996)
10338
10339 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10340
10341         * docs/pwg/advanced-types.xml:
10342           Add MS RLE support. Also document Qt RLE although I have no sample
10343           files for that yet. And document an extra property for ADPCM.
10344
10345 2004-04-15  David Schleef  <ds@schleef.org>
10346
10347         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
10348         (_gst_plugin_fault_handler_setup):  Disable more stuff on
10349         Windows.
10350
10351 2004-04-15  David Schleef  <ds@schleef.org>
10352
10353         * gst/gstinfo.c: (_gst_debug_init): Change some internal
10354         symbol names to not conflict with new gstinfo.h symbols.
10355         * gst/gstinfo.h: Add inline functions for all those crazy
10356         compilers that don't know how to handle variadic macros (MSVC).
10357
10358 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10359
10360         * configure.ac: bump nano to 1
10361
10362 === release 0.8.1 ===
10363
10364 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
10365
10366         * NEWS:
10367         * RELEASE:
10368         * configure.ac:
10369           releasing 0.8.1, "Snow Brigade"
10370
10371 2004-04-14  David Schleef  <ds@schleef.org>
10372
10373         * testsuite/Makefile.am: define tests_ignore
10374         * testsuite/Rules: Added new tests_ignore, which get compiled,
10375         but not run (generally because they're inconsistent or have
10376         heisenbugs).  Now we can ensure all the .c files compile in
10377         testsuite/.
10378         * testsuite/bins/Makefile.am: define tests_ignore
10379         * testsuite/bytestream/Makefile.am:
10380         * testsuite/caps/Makefile.am:
10381         * testsuite/clock/Makefile.am:
10382         * testsuite/debug/Makefile.am:
10383         * testsuite/debug/global.c: (gst_debug_log_one),
10384         (gst_debug_log_two): Fix compilation problem.
10385         * testsuite/dynparams/Makefile.am:
10386         * testsuite/elements/Makefile.am:
10387         * testsuite/ghostpads/Makefile.am:
10388         * testsuite/indexers/Makefile.am:
10389         * testsuite/parse/Makefile.am:
10390         * testsuite/plugin/Makefile.am:
10391         * testsuite/refcounting/Makefile.am:
10392         * testsuite/refcounting/element_pad.c: (main): Don't return leak
10393         results, because it's not calculated correctly.
10394         * testsuite/refcounting/pad.c: (main): same
10395         * testsuite/states/Makefile.am:
10396         * testsuite/tags/Makefile.am:
10397         * testsuite/threads/Makefile.am:
10398
10399 2004-04-14  David Schleef  <ds@schleef.org>
10400
10401         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
10402         generating bad code around the cpu detection asm code.
10403
10404 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
10405
10406         * tools/gst-inspect.c: (print_element_info):
10407           print numeric version of rank as well, since we added some - 1
10408           rank values to elements
10409
10410 2004-04-13  David Schleef  <ds@schleef.org>
10411
10412         * configure.ac:  Disable various code when compiling for MinGW.
10413         * gst/elements/Makefile.am:
10414         * gst/elements/gstelements.c:
10415         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
10416         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
10417         * gst/registries/gstxmlregistry.c: (make_dir):
10418
10419 2004-04-13  David Schleef  <ds@schleef.org>
10420
10421         * gst/Makefile.am:
10422         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
10423         assembly.
10424         * gst/gstcpuid_i386.s: remove
10425
10426 2004-04-13  David Schleef  <ds@schleef.org>
10427
10428         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
10429         seems to think it needs to be done.
10430         * docs/gst/tmpl/gstfakesink.sgml:
10431         * docs/gst/tmpl/gstfakesrc.sgml:
10432         * docs/gst/tmpl/gstfdsink.sgml:
10433         * docs/gst/tmpl/gstfdsrc.sgml:
10434         * docs/gst/tmpl/gstfilesink.sgml:
10435         * docs/gst/tmpl/gstfilesrc.sgml:
10436         * docs/gst/tmpl/gstidentity.sgml:
10437         * docs/gst/tmpl/gstmd5sink.sgml:
10438         * docs/gst/tmpl/gstmultifilesrc.sgml:
10439         * docs/gst/tmpl/gstpipefilter.sgml:
10440         * docs/gst/tmpl/gstshaper.sgml:
10441         * docs/gst/tmpl/gstspider.sgml:
10442         * docs/gst/tmpl/gstspideridentity.sgml:
10443         * docs/gst/tmpl/gststatistics.sgml:
10444         * docs/gst/tmpl/gsttee.sgml:
10445         * docs/gst/tmpl/gsttypefind.sgml:
10446         * docs/gst/tmpl/gstutils.sgml:
10447
10448 2004-04-13  David Schleef  <ds@schleef.org>
10449
10450         * configure.ac: Changes to remove POSIXisms (mmap in this case)
10451         and to build DLLs on Windows.
10452         * gst/Makefile.am:
10453         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10454         (gst_filesrc_open_file):
10455         * gst/schedulers/Makefile.am:
10456
10457 2004-04-13  David Schleef  <ds@schleef.org>
10458
10459         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
10460         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
10461         fixating lists.
10462
10463 2004-04-12  David Schleef  <ds@schleef.org>
10464
10465         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
10466         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
10467         to using it.
10468         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
10469         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
10470         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
10471         * gst/gststructure.c: (gst_structure_set_valist),
10472         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
10473         support for buffers.
10474         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
10475         intended to be const.
10476         * gst/gsttag.h: same
10477         * gst/gstvalue.c: (gst_value_serialize_buffer),
10478         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
10479         to (de)serialize buffers.
10480         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
10481         * testsuite/caps/string-conversions.c: (main):
10482         * testsuite/caps/value_serialize.c: add new test
10483
10484 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10485
10486         * docs/pwg/advanced-types.xml:
10487           Document MS video 1 (video/x-msvideocodec) mimetype/format.
10488
10489 2004-04-11  Benjamin Otte  <otte@gnome.org>
10490
10491         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
10492           rename categories to basic_*
10493         * gst/schedulers/gstbasicscheduler.c: 
10494         (gst_basic_scheduler_chain_wrapper),
10495         (gst_basic_scheduler_chainhandler_proxy),
10496         (gst_basic_scheduler_gethandler_proxy),
10497         (gst_basic_scheduler_eventhandler_proxy):
10498           debugging category fixes - put common stuff in log category
10499         * gst/schedulers/gstbasicscheduler.c: 
10500         (gst_basic_scheduler_chain_elements):
10501           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
10502           active and linking two active chains
10503
10504 2004-04-10  Benjamin Otte  <otte@gnome.org>
10505
10506         * docs/pwg/intro-preface.xml:
10507           fix dead links and remove reference to Wiki
10508
10509 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10510
10511         * gst/schedulers/gstbasicscheduler.c:
10512           make sure we can switch back to the main function if we're still in
10513           the main function (supposed to fix #139617)
10514         * gst/schedulers/gthread-cothreads.h:
10515           don't throw an error when switching to the same cothread
10516
10517 2004-04-09  Benjamin Otte  <otte@gnome.org>
10518
10519         * gst/gstbin.c: (gst_bin_get_type):
10520         * gst/gstclock.c: (gst_clock_get_type):
10521         * gst/gstindex.c: (gst_index_get_type):
10522         * gst/gstobject.c: (gst_object_get_type),
10523         (gst_signal_object_get_type):
10524         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
10525         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
10526         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
10527         * gst/gstqueue.c: (gst_queue_get_type):
10528         * gst/gstregistry.c: (gst_registry_get_type):
10529         * gst/gstsystemclock.c: (gst_system_clock_get_type):
10530         * gst/gstthread.c: (gst_thread_get_type):
10531           don't use memchunks for these objects, use malloc instead
10532
10533 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10534
10535         * docs/gst/.cvsignore:
10536         * docs/gst/Makefile.am:
10537         * docs/gst/gstreamer-sections.txt:
10538         * docs/gst/tmpl/gstaggregator.sgml:
10539         * docs/gst/tmpl/gstbuffer.sgml:
10540         * docs/gst/tmpl/gstclock.sgml:
10541         * docs/gst/tmpl/gstelement.sgml:
10542         * docs/gst/tmpl/gstfakesink.sgml:
10543         * docs/gst/tmpl/gstfakesrc.sgml:
10544         * docs/gst/tmpl/gstfdsink.sgml:
10545         * docs/gst/tmpl/gstfdsrc.sgml:
10546         * docs/gst/tmpl/gstfilesink.sgml:
10547         * docs/gst/tmpl/gstfilesrc.sgml:
10548         * docs/gst/tmpl/gstidentity.sgml:
10549         * docs/gst/tmpl/gstindex.sgml:
10550         * docs/gst/tmpl/gstinfo.sgml:
10551         * docs/gst/tmpl/gstmd5sink.sgml:
10552         * docs/gst/tmpl/gstmultifilesrc.sgml:
10553         * docs/gst/tmpl/gstpad.sgml:
10554         * docs/gst/tmpl/gstpipefilter.sgml:
10555         * docs/gst/tmpl/gstpipeline.sgml:
10556         * docs/gst/tmpl/gstpluginfeature.sgml:
10557         * docs/gst/tmpl/gstqueue.sgml:
10558         * docs/gst/tmpl/gstregistry.sgml:
10559         * docs/gst/tmpl/gstscheduler.sgml:
10560         * docs/gst/tmpl/gstshaper.sgml:
10561         * docs/gst/tmpl/gstspider.sgml:
10562         * docs/gst/tmpl/gstspideridentity.sgml:
10563         * docs/gst/tmpl/gststatistics.sgml:
10564         * docs/gst/tmpl/gstsystemclock.sgml:
10565         * docs/gst/tmpl/gsttee.sgml:
10566         * docs/gst/tmpl/gstthread.sgml:
10567         * docs/gst/tmpl/gsttypefind.sgml:
10568         * docs/gst/tmpl/gstutils.sgml:
10569           further doc build fixes
10570
10571 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10572
10573         * docs/gst/Makefile.am:
10574           make docs exit on scanning problems
10575           fix nonsrcdir build issues
10576         * docs/gst/gstreamer-sections.txt:
10577           adding stuff from -unused
10578         * gst/gstqueue.h:
10579           create GstQueueSize
10580         * gst/schedulers/cothreads_compat.h:
10581           fix cothread warnings
10582
10583 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10584
10585         * docs/gst/gstreamer-sections.txt:
10586           remove defines deprecated by Benjamin
10587
10588 2004-04-07  Benjamin Otte  <otte@gnome.org>
10589
10590         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10591           when the buffer is complete, don't check if other buffers are needed
10592         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
10593           check that the offset is >0 so we don't try to read before the
10594           beginning of the file
10595         * gst/gstpad.c: (gst_pad_set_pad_template):
10596           sink the template, so we don't end up with 130k pad templates
10597
10598 2004-04-06  Benjamin Otte  <otte@gnome.org>
10599
10600         * gst/autoplug/gstspider.c: (gst_spider_link_add):
10601           don't ref the element, adding already reffed it. And we didn't unref
10602           it later anyway... (huge memleak when you used many spider elements)
10603         * gst/gstelement.c: (gst_element_base_class_finalize):
10604         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
10605         (gst_element_register):
10606         * gst/gsturi.c: (gst_element_make_from_uri):
10607           use gst_object_(un)ref instead of g_object(un)ref
10608
10609 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10610
10611         * gst/gstbuffer.h:
10612           remove macro that wouldn't work anymore because struct member has
10613           been removed.
10614         * gst/schedulers/entryscheduler.c: (schedule_forward):
10615           fix segfault for unconnected pads
10616         
10617 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10618
10619         reviewed by David Schleef <ds@schleef.org>
10620
10621         * gst/gstinfo.h:
10622           *_FORMAT modifiers should require putting a % in front of them for
10623           consistency reasons.
10624
10625 2004-04-05  Colin Walters  <walters@redhat.com>
10626
10627         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
10628         space.
10629
10630 2004-04-05  Benjamin Otte  <otte@gnome.org>
10631
10632         * configure.ac:
10633         * gst/Makefile.am:
10634         * gst/gst_private.h:
10635         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
10636           add support for detecting if GStreamer runs inside valgrind.
10637           requires valgrind (d'oh) and --enable-debug for correct cdetection.
10638           print a big message in valgrind that GStreamer has detected it's
10639           running inside and might now use different code.
10640         * gst/gstmemchunk.c: (populate), (free_area),
10641         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
10642         (gst_mem_chunk_free):
10643           flag memchunks for valgrind, so it can detect leaking of chunks.
10644           This allows detecting leaks of GstBuffer and GstEvent correctly
10645           inside valgrind.
10646
10647 2004-04-05  David Schleef  <ds@schleef.org>
10648
10649         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
10650           jensgr@gmx.net (Jens Granseuer)
10651
10652 2004-04-05  David Schleef  <ds@schleef.org>
10653
10654         * gst/gstbuffer.c: (_gst_buffer_sub_free),
10655         (gst_buffer_default_free), (gst_buffer_default_copy),
10656         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
10657         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
10658         structures in one place.
10659
10660 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10661
10662         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
10663           (GST_TIME_FORMAT, GST_TIME_ARGS)
10664
10665 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10666
10667         * testsuite/elements/Makefile.am:
10668           disable test until it stops breaking make distcheck
10669
10670 2004-04-05  Johan Dahlin  <johan@gnome.org>
10671
10672         * po/sv.po: Updated translation
10673
10674 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10675
10676         * gst/gstplugin.c: (gst_plugin_load_file):
10677           fix segfault for when original plugin was loaded statically
10678
10679 2004-04-05  Benjamin Otte  <otte@gnome.org>
10680
10681         * testsuite/debug/category.c: (main):
10682         * testsuite/debug/commandline.c: (main):
10683         * testsuite/debug/output.c: (main):
10684           fix tests to work again with debugging enabled
10685
10686 2004-04-05  Benjamin Otte  <otte@gnome.org>
10687
10688         * gst/schedulers/gstbasicscheduler.c:
10689         (gst_basic_scheduler_pad_link):
10690           fix to work with recent scheduling changes
10691
10692 2004-04-05  Benjamin Otte  <otte@gnome.org>
10693
10694         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
10695         prepareChangeLog doesn't work when cvs indents):
10696           don't throw an error when no element can be scheduled, there's too
10697           many weird reasons why it doesn't work. Return STOPPED instead.
10698           decoupled elemts' schedulability doesn't depend on bufpens.
10699
10700 2004-04-04  Benjamin Otte  <otte@gnome.org>
10701
10702         * gst/schedulers/gstbasicscheduler.c:
10703         (gst_basic_scheduler_pad_select):
10704           fix uninitialized variable warnings
10705
10706 2004-04-04  Benjamin Otte  <otte@gnome.org>
10707
10708         * gst/gstpad.c: (gst_pad_collect_valist):
10709           fix uninitialized variable warning
10710         * gst/schedulers/entryscheduler.c: (schedule_forward):
10711           fix shadowed variable
10712
10713 2004-04-04  Benjamin Otte  <otte@gnome.org>
10714
10715         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
10716         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
10717         (gst_pad_select):
10718         * gst/gstpad.h:
10719         * gst/gstscheduler.c: (gst_scheduler_pad_select),
10720         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
10721         * gst/gstscheduler.h:
10722           implement gst_pad_collect as replacement for gst_pad_select.
10723           deprecate gst_pad_select and gst_scheduler_(un)lock_element
10724           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
10725           new pad_select, lock and unlock calls.
10726         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
10727         * gst/cothreads.h:
10728         * gst/schedulers/cothreads_compat.h:
10729         * gst/schedulers/gthread-cothreads.h:
10730           remove unused cothread_lock and cothread_unlock calls
10731         * gst/schedulers/entryscheduler.c:
10732         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
10733         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
10734         (gst_entry_scheduler_pad_select):
10735           update to new API
10736         * gst/schedulers/gstbasicscheduler.c:
10737         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
10738         (gst_basic_scheduler_pad_select):
10739           remove useless lock and unlock calls, update pad_select to new API
10740           (untested)
10741         * gst/schedulers/gstoptimalscheduler.c:
10742         (gst_opt_scheduler_class_init):
10743           remove useless select, lock and unlock function calls
10744         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
10745           use gst_pad_collect instead of gst_pad_select
10746
10747 2004-04-04  Benjamin Otte  <otte@gnome.org>
10748
10749         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
10750         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
10751         (schedule_next_element), (print_entry):
10752           add can_schedule_pad to handle element states.
10753           add schedule_forward to select the correct entry to schedule next
10754
10755 2004-04-03  Benjamin Otte  <otte@gnome.org>
10756
10757         * gst/schedulers/entryscheduler.c: 
10758           remove unused variable, fix error inside Rb, fix compile warning in
10759           unreachable code
10760
10761 2004-04-03  Benjamin Otte  <otte@gnome.org>
10762
10763         * gst/schedulers/entryscheduler.c:
10764           completely revamp the inner workings, so it's a lot easier to
10765           understand and extend
10766
10767 2004-04-03  Andy Wingo  <wingo@pobox.com>
10768
10769         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
10770         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
10771         This allows better introspection of pipeline topology.
10772         (add_to_chain): Don't do trickery to put loop elements first;
10773         rather, queue a chain sort by marking the chain as dirty.
10774         (remove_from_chain): Mark the chain dirty.
10775         (sort_chain): New function. Sorts the group list so that terminal
10776         sinks are first. This means elements on the sink side will be
10777         preferentially sscheduled before elements on the src side of the
10778         pipeline.
10779         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
10780         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
10781         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
10782         (group_inc_link): Change argument and variable names to match the
10783         new link structure member names (src and sink).
10784         (group_dec_link): Add some description
10785
10786 2004-04-03  Benjamin Otte  <otte@gnome.org>
10787
10788         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
10789         * gst/gstinfo.h:
10790         * testsuite/debug/category.c: (main):
10791         * testsuite/debug/commandline.c: (main):
10792         * testsuite/debug/output.c: (main):
10793         * testsuite/debug/printf_extension.c: (main):
10794           fix to successfully build and test with --disable-gst-debug
10795           configure switch (fixes #138705)
10796
10797 2004-04-03  Benjamin Otte  <otte@gnome.org>
10798
10799         * docs/pwg/building-boiler.xml:
10800           add cvs login line and s/anonymous/anoncvs/
10801
10802 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
10803
10804         reviewed by Benjamin Otte  <otte@gnome.org>
10805
10806         * gst/gststructure.c: (gst_structure_free):
10807           memleak fix: free fields array (partial fix for #134839)
10808
10809 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10810
10811         * docs/random/ds/0.9-suggested-changes:
10812           Add a note to change handoff use in fakesrc to be usable in
10813           a more generic way (fakesrc should be renamed to appsrc or so).
10814         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
10815           Change signal type to scope, so we can fill the buffer in the
10816           handoff handler (that's the whole use of this signal...).
10817
10818 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10819
10820         * docs/pwg/other-ntoone.xml:
10821           Document muxers and n-to-1 elements.
10822
10823 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
10824
10825         * gst/registries/gstxmlregistry.c
10826         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
10827         determine if a file is a G_MODULE. The old one discards paths
10828         containing "so" somewhere in the middle. My home directory is
10829         called "soto". Go figure...
10830
10831 2004-03-31  David Schleef  <ds@schleef.org>
10832
10833         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
10834         to eventually deprecate gst_buffer_merge().  (bug: #136408)
10835         * gst/gstbuffer.h:
10836
10837 2004-03-31  David Schleef  <ds@schleef.org>
10838
10839         * gst/gstvalue.c: (gst_value_union_int_int_range),
10840         (gst_value_union_int_range_int_range), (gst_value_can_union),
10841         (gst_value_union), (_gst_value_initialize):  Add some union
10842         implementations.  We didn't have any previously.
10843         * testsuite/caps/Makefile.am:
10844         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
10845         (gst_audioscale_getcaps), (test_caps), (main): A little test
10846         that is the same as the caps manipulation in audioscale.
10847
10848 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10849
10850         * docs/faq/general.xml:
10851           add entry about "does gst support format X?"
10852
10853 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10854
10855         * gst/gstthread.c:
10856           fix docs
10857         * gst/gstutils.h:
10858           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
10859
10860 2004-03-30  Benjamin Otte  <otte@gnome.org>
10861
10862         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10863           set the offset of the buffer to the requested offset
10864         * gst/elements/gsttypefind.c: (stop_typefinding):
10865           revert patch 1.18 (which I unfortunately don't know the reason for).
10866           This is needed to allow downstream elements to seek. Otherwise
10867           typefind might overwrite a previous seek by downstream elements.
10868           This lead to errors with id3tag and typefind on some mp3s.
10869         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10870         (gst_entry_scheduler_iterate):
10871           be more verbose when debugging
10872
10873 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10874
10875         * gst/gstcaps.c: (gst_caps_from_string_inplace):
10876           make sure we don't get NULL strings
10877
10878 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10879
10880         * gst/gstcaps.c:
10881         * gst/gstelement.c:
10882         * gst/gstelementfactory.c: (gst_element_factory_get_type):
10883         * gst/gstindex.c: (gst_index_resolver_get_type),
10884         (gst_index_get_type), (gst_index_factory_get_type):
10885         * gst/gstinfo.c:
10886         * gst/gstpad.c:
10887         * gst/gstplugin.c:
10888         * gst/gsturi.c: (gst_uri_handler_get_type):
10889         * gst/gstvalue.c:
10890           first batch of documentation fixes
10891
10892 2004-03-29  David Schleef  <ds@schleef.org>
10893
10894         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
10895         * docs/gst/gstreamer-docs.sgml:  More hacking
10896         * docs/gst/gstreamer-sections.txt:
10897         * docs/gst/tmpl/cothreads_compat.sgml:
10898         * docs/gst/tmpl/gstcaps.sgml:
10899         * docs/gst/tmpl/gstclock.sgml:
10900         * docs/gst/tmpl/gstelement.sgml:
10901         * docs/gst/tmpl/gstevent.sgml:
10902         * docs/gst/tmpl/gstpad.sgml:
10903         * docs/gst/tmpl/gstutils.sgml:
10904         * docs/gst/tmpl/gstxml.sgml:
10905         * docs/gst/tmpl/gthread-cothreads.sgml:
10906         * docs/random/ds/0.9-suggested-changes:
10907         * gst/elements/gstfakesink.h: doc fixes
10908         * gst/elements/gstfakesrc.h: doc fixes
10909         * gst/gstcaps.c: doc fixes
10910         * gst/gstcaps.h: doc fixes
10911         * gst/gstelement.c: doc fixes
10912         * gst/gstelement.h: doc fixes
10913         * gst/gstindex.c: doc fixes
10914         * gst/gstinfo.c: doc fixes
10915         * gst/gstpad.c: doc fixes
10916         * gst/gstpad.h: doc fixes
10917         * gst/gstplugin.c: doc fixes
10918         * gst/gsttypefind.h: doc fixes
10919         * gst/gsturi.c: doc fixes
10920         * gst/gstvalue.c: doc fixes
10921
10922 2004-03-29  Colin Walters  <walters@redhat.com>
10923
10924         * gst/registries/gstxmlregistry.c (get_time)
10925         (plugin_times_older_than_recurse):
10926         Use the result of stat to determine whether a path is a file,
10927         so we don't attempt to opendir() files.
10928
10929 2004-03-29  Benjamin Otte  <otte@gnome.org>
10930
10931         * gst/gstpad.c: (gst_pad_set_explicit_caps):
10932           print caps in debugging output when setting caps failed
10933         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
10934         (schedule_next_element), (get_buffer), (run_chainhandler),
10935         (element_may_start), (gst_entry_scheduler_chain_handler),
10936         (gst_entry_scheduler_get_handler),
10937         (gst_entry_scheduler_state_transition),
10938         (gst_entry_scheduler_pad_link):
10939           make this scheduler a testcase for mandatory
10940           discont-before-first-buffer which is needed if we want to allow apps
10941           to release the sound device.
10942           add SCHED_ASSERT macro to print scheduler state before an assertion
10943           triggers.
10944
10945 2004-03-29  Benjamin Otte  <otte@gnome.org>
10946
10947         * COPYING:
10948           replace by LGPL (former COPYING.LIB). The core is completely
10949           licensed LGPL.
10950         * COPYING.LIB:
10951           remove
10952
10953 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10954
10955         * po/af.po:
10956         * po/sv.po:
10957           updated Afrikaans and Swedish
10958
10959 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10960
10961         * po/LINGUAS:
10962         * po/az.po:
10963           adding Azerbaijani (Mətin Əmirov)
10964
10965 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
10966
10967         * gst/gstelement.h: 
10968         * gst/gstelement.c (gst_element_set_time_delay): New function for
10969         setting element time taking into account a hardware buffering
10970         delay.
10971         (gst_element_set_time): Now just an invocation of
10972         gst_element_set_time_delay.
10973         * gst/gstclock.h: 
10974         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
10975         allowing to set event times in the future.
10976         (gst_clock_get_event_time): Now just an invocation of
10977         gst_clock_get_event_time_delay.
10978
10979 2004-03-28  Benjamin Otte  <otte@gnome.org>
10980
10981         * gst/gstbin.c: (gst_bin_set_element_sched),
10982         (gst_bin_unset_element_sched):
10983           don't add decoupled elements to schedulers - otherwise it's
10984           impossible to control if a link to a decoupled element was already
10985           removed from a scheduler or not.
10986         * gst/schedulers/cothreads_compat.h:
10987         * gst/schedulers/gthread-cothreads.h:
10988           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
10989           is no "unused" warning.
10990         * gst/schedulers/Makefile.am:
10991         * gst/schedulers/entryscheduler.c:
10992           add new scheduler, based on ideas from talking to David and Martin.
10993           It's supposed to be small and correct. Currently it's also slow (but
10994           it's not noticable)
10995         * examples/retag/retag.c: (main):
10996         * testsuite/bytestream/test1.c: (main):
10997           fix missing NULLs at end of variadic functions
10998         * testsuite/elements/.cvsignore:
10999           update
11000
11001 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
11002
11003         * gst/gstevent.h:
11004         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
11005
11006 2004-03-25  David Schleef  <ds@schleef.org>
11007
11008         * docs/gst/gstreamer-sections.txt:  More doc hacking.
11009         * docs/gst/tmpl/gstaggregator.sgml:
11010         * docs/gst/tmpl/gstautoplugfactory.sgml:
11011         * docs/gst/tmpl/gstbin.sgml:
11012         * docs/gst/tmpl/gstbuffer.sgml:
11013         * docs/gst/tmpl/gstbufferstore.sgml:
11014         * docs/gst/tmpl/gstfakesink.sgml:
11015         * docs/gst/tmpl/gstfakesrc.sgml:
11016         * docs/gst/tmpl/gstmd5sink.sgml:
11017         * docs/gst/tmpl/gstreamer-unused.sgml:
11018         * docs/gst/tmpl/gstsearchfuncs.sgml:
11019         * docs/gst/tmpl/gstshaper.sgml:
11020         * docs/gst/tmpl/gstspider.sgml:
11021         * docs/gst/tmpl/gsttee.sgml:
11022         * docs/gst/tmpl/gstutils.sgml:
11023         * docs/gst/tmpl/gstvalue.sgml:
11024         * docs/gst/tmpl/gstxml.sgml:
11025         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
11026         and we don't support it.
11027         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
11028         (gst_use_threads), (gst_has_threads): same
11029         * gst/gstthreaddummy.c: same
11030         * gst/autoplug/gstspider.c: Make gst_spider_details static.
11031         * gst/autoplug/gstspider.h: same
11032         * gst/elements/gstaggregator.h: Remove bogus function from header
11033         * gst/elements/gstfakesink.h: same
11034         * gst/elements/gstfakesrc.h: same
11035         * gst/elements/gstmd5sink.h: same
11036         * gst/elements/gstshaper.h: same
11037         * gst/elements/gsttee.h: same
11038         * gst/gstbin.c: doc fixes
11039         * gst/gstbin.h: Remove unused definition.
11040         * gst/gstbuffer.c: doc fixes
11041         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
11042         * gst/gstfilter.c: doc fixes
11043         * gst/gsttag.c: doc fixes
11044         * gst/gstvalue.c: doc fixes
11045
11046 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11047
11048         * docs/pwg/advanced-types.xml:
11049           Document typefinding.
11050         * docs/pwg/other-oneton.xml:
11051           Document one-to-n elements, demuxers and parsers.
11052
11053 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
11054
11055         reviewed by: David Schleef  <ds@schleef.org>
11056
11057         * configure.ac: Check bison version (bug #127838)
11058
11059 2004-03-25  David Schleef  <ds@schleef.org>
11060
11061         * docs/gst/gstreamer-docs.sgml: More fine tuning.
11062         * docs/gst/gstreamer-sections.txt:
11063         * docs/gst/tmpl/gstautoplug.sgml:
11064         * docs/gst/tmpl/gststaticautoplug.sgml:
11065         * docs/gst/tmpl/gststaticautoplugrender.sgml:
11066         * docs/gst/tmpl/gstutils.sgml:
11067         * docs/gst/tmpl/gstxml.sgml:
11068
11069 2004-03-24  David Schleef  <ds@schleef.org>
11070
11071         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
11072         manual being such complete crap, that I decided to do major
11073         hacking of it.  This checkin replaces any fine tuning that
11074         may have been done previously, with the benefit of actually
11075         being complete for much of the API that was changed since
11076         0.6.  Further fine tuning will occur shortly.  (bug #134721)
11077         * docs/gst/gstreamer-sections.txt:
11078         * docs/gst/tmpl/GstBin.sgml:
11079         * docs/gst/tmpl/GstBuffer.sgml:
11080         * docs/gst/tmpl/GstCaps.sgml:
11081         * docs/gst/tmpl/GstClock.sgml:
11082         * docs/gst/tmpl/GstCompat.sgml:
11083         * docs/gst/tmpl/GstData.sgml:
11084         * docs/gst/tmpl/GstElement.sgml:
11085         * docs/gst/tmpl/GstEvent.sgml:
11086         * docs/gst/tmpl/GstIndex.sgml:
11087         * docs/gst/tmpl/GstStructure.sgml:
11088         * docs/gst/tmpl/GstTag.sgml:
11089         * docs/gst/tmpl/cothreads.sgml:
11090         * docs/gst/tmpl/cothreads_compat.sgml:
11091         * docs/gst/tmpl/gettext.sgml:
11092         * docs/gst/tmpl/grammar.tab.sgml:
11093         * docs/gst/tmpl/gst-i18n-app.sgml:
11094         * docs/gst/tmpl/gst-i18n-lib.sgml:
11095         * docs/gst/tmpl/gst.sgml:
11096         * docs/gst/tmpl/gst_private.sgml:
11097         * docs/gst/tmpl/gstaggregator.sgml:
11098         * docs/gst/tmpl/gstarch.sgml:
11099         * docs/gst/tmpl/gstatomic.sgml:
11100         * docs/gst/tmpl/gstatomic_impl.sgml:
11101         * docs/gst/tmpl/gstbin.sgml:
11102         * docs/gst/tmpl/gstbuffer.sgml:
11103         * docs/gst/tmpl/gstbufferstore.sgml:
11104         * docs/gst/tmpl/gstcaps.sgml:
11105         * docs/gst/tmpl/gstclock.sgml:
11106         * docs/gst/tmpl/gstcompat.sgml:
11107         * docs/gst/tmpl/gstconfig.sgml:
11108         * docs/gst/tmpl/gstcpu.sgml:
11109         * docs/gst/tmpl/gstdata.sgml:
11110         * docs/gst/tmpl/gstdata_private.sgml:
11111         * docs/gst/tmpl/gstelement.sgml:
11112         * docs/gst/tmpl/gstenumtypes.sgml:
11113         * docs/gst/tmpl/gsterror.sgml:
11114         * docs/gst/tmpl/gstevent.sgml:
11115         * docs/gst/tmpl/gstfakesink.sgml:
11116         * docs/gst/tmpl/gstfakesrc.sgml:
11117         * docs/gst/tmpl/gstfilesink.sgml:
11118         * docs/gst/tmpl/gstfilter.sgml:
11119         * docs/gst/tmpl/gstindex.sgml:
11120         * docs/gst/tmpl/gstinfo.sgml:
11121         * docs/gst/tmpl/gstinterface.sgml:
11122         * docs/gst/tmpl/gstlog.sgml:
11123         * docs/gst/tmpl/gstmacros.sgml:
11124         * docs/gst/tmpl/gstmarshal.sgml:
11125         * docs/gst/tmpl/gstmd5sink.sgml:
11126         * docs/gst/tmpl/gstmultifilesrc.sgml:
11127         * docs/gst/tmpl/gstobject.sgml:
11128         * docs/gst/tmpl/gstpad.sgml:
11129         * docs/gst/tmpl/gstparse.sgml:
11130         * docs/gst/tmpl/gstpipeline.sgml:
11131         * docs/gst/tmpl/gstplugin.sgml:
11132         * docs/gst/tmpl/gstpluginfeature.sgml:
11133         * docs/gst/tmpl/gstqueue.sgml:
11134         * docs/gst/tmpl/gstreamer-unused.sgml:
11135         * docs/gst/tmpl/gstregistry.sgml:
11136         * docs/gst/tmpl/gstregistrypool.sgml:
11137         * docs/gst/tmpl/gstscheduler.sgml:
11138         * docs/gst/tmpl/gstsearchfuncs.sgml:
11139         * docs/gst/tmpl/gstshaper.sgml:
11140         * docs/gst/tmpl/gstspider.sgml:
11141         * docs/gst/tmpl/gstspideridentity.sgml:
11142         * docs/gst/tmpl/gststructure.sgml:
11143         * docs/gst/tmpl/gstsystemclock.sgml:
11144         * docs/gst/tmpl/gsttag.sgml:
11145         * docs/gst/tmpl/gsttaginterface.sgml:
11146         * docs/gst/tmpl/gsttee.sgml:
11147         * docs/gst/tmpl/gstthread.sgml:
11148         * docs/gst/tmpl/gsttrace.sgml:
11149         * docs/gst/tmpl/gsttrashstack.sgml:
11150         * docs/gst/tmpl/gsttypefind.sgml:
11151         * docs/gst/tmpl/gsttypes.sgml:
11152         * docs/gst/tmpl/gsturi.sgml:
11153         * docs/gst/tmpl/gsturitype.sgml:
11154         * docs/gst/tmpl/gstutils.sgml:
11155         * docs/gst/tmpl/gstvalue.sgml:
11156         * docs/gst/tmpl/gstversion.sgml:
11157         * docs/gst/tmpl/gstxml.sgml:
11158         * docs/gst/tmpl/gstxmlregistry.sgml:
11159         * docs/gst/tmpl/gthread-cothreads.sgml:
11160         * docs/gst/tmpl/types.sgml:
11161
11162 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11163
11164         * docs/pwg/other-sink.xml:
11165         * docs/pwg/other-source.xml:
11166           Documentation on how to write source and sink elements. Other
11167           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
11168           manager, autoplugger) are all still pending.
11169
11170 2004-03-25  Benjamin Otte  <otte@gnome.org>
11171
11172         * testsuite/elements/Makefile.am:
11173         * testsuite/elements/gst-compprep-check:
11174           add check to make sure gst-compprep works
11175         * testsuite/elements/gst-inspect-check.in:
11176           improve initialization output
11177         * testsuite/Makefile.am:
11178         * testsuite/gst-inspect-check:
11179           remove old file
11180
11181 2004-03-24  David Schleef  <ds@schleef.org>
11182
11183         * testsuite/elements/Makefile.am:
11184         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
11185         to the testsuite.
11186
11187 2004-03-24  Benjamin Otte  <otte@gnome.org>
11188
11189         * libs/gst/control/dparam.c: (gst_dparam_attach),
11190         (gst_dparam_detach):
11191         * libs/gst/control/dparammanager.c: (gst_dpman_init):
11192           fix lvalue casts for real
11193
11194 2004-03-24  Benjamin Otte  <otte@gnome.org>
11195
11196         * gst/schedulers/gstbasicscheduler.c:
11197         (gst_basic_scheduler_src_wrapper):
11198         * gst/schedulers/gstoptimalscheduler.c:
11199         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
11200         (pad_clear_queued), (gst_opt_scheduler_add_element),
11201         (gst_opt_scheduler_remove_element):
11202           fix GStreamer to not have issues with lvalue casts anymore (fixes
11203           #136841)
11204
11205 2004-03-24  Benjamin Otte  <otte@gnome.org>
11206
11207         * gst/gstelement.c:
11208           add documentation about a gobject quirk where the object hasn't the
11209           correct class pointer set on initialization
11210         * gst/schedulers/gstbasicscheduler.c:
11211         (gst_basic_scheduler_src_wrapper):
11212           make sure to not run into an infinite loop
11213
11214 2004-03-22  Benjamin Otte  <otte@gnome.org>
11215
11216         * gst/gstutils.c: (gst_util_dump_mem):
11217         * gst/gstutils.h:
11218           first argument of gst_util_dump_mem should be const
11219
11220 2004-03-22  Johan Dahlin  <johan@gnome.org>
11221
11222         * gst/gstvalue.h: Clean up a little bit.
11223
11224 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
11225
11226         reviewed by Benjamin Otte  <otte@gnome.org>
11227
11228         * gst/autoplug/gstspider.c: (gst_spider_dispose):
11229         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
11230         (gst_aggregator_class_init), (gst_aggregator_init):
11231         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
11232         (gst_filesrc_dispose), (gst_filesrc_set_location):
11233         * gst/elements/gstidentity.c: (gst_identity_finalize),
11234         (gst_identity_class_init), (gst_identity_chain):
11235         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11236         * gst/elements/gststatistics.c: (gst_statistics_finalize),
11237         (gst_statistics_class_init):
11238         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
11239         (gst_tee_get_property):
11240           clean up used memory in this elements correctly on teardown (closes
11241           #137279)
11242
11243 2004-03-20  Colin Walters  <walters@redhat.com>
11244
11245         * gst/registries/gstxmlregistry.c:
11246         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
11247         registry saving atomic.
11248
11249 2004-03-20  Colin Walters  <walters@redhat.com>
11250
11251         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
11252         Just use
11253         access() instead of actually creating and deleting files.
11254
11255 2004-03-18  David Schleef  <ds@schleef.org>
11256
11257         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
11258         (bug #137625)
11259
11260 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11261
11262         * po/sv.po: updated translation (Christian Rose)
11263
11264 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11265
11266         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
11267         (gst_filesink_get_query_types), (_do_init),
11268         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
11269           return FALSE silently
11270         * po/af.po: updated translation (Petri Jooste)
11271
11272 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11273
11274         * Makefile.am:
11275         * configure.ac:
11276           dist common properly
11277         * po/af.po:
11278         * po/fr.po:
11279         * po/nl.po:
11280         * po/sr.po:
11281         * po/sv.po:
11282           refreshing translations
11283
11284 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11285
11286         * po/LINGUAS:
11287         * po/sv.po:
11288         * po/af.po:
11289           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
11290
11291 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11292
11293         * Makefile.am: use common/release.mak
11294
11295 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
11296
11297         * docs/faq/gst-uninstalled:
11298           adding gst-monkeysaudio to the list of possible plugin dirs
11299
11300 2004-03-16  David Schleef  <ds@schleef.org>
11301
11302         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
11303         (gst_init_check_with_popt_table):  Fix some gettext strings to
11304         make them easier to translate.  Required making the strings
11305         non-const.
11306
11307 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11308
11309         * configure.ac: bump nano to 1
11310
11311 === release 0.8.0 ===
11312
11313 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11314
11315         * configure.ac: release 0.8.0, "Executive Slacks"
11316
11317 2004-03-16  Johan Dahlin  <johan@gnome.org>
11318
11319         * gst/schedulers/gstoptimalscheduler.c
11320         (gst_opt_scheduler_pad_unlink): Remove double ;,
11321         spotted by Scott Wheeler
11322
11323 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
11324
11325         * configure.ac: bump libtool version
11326
11327 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11328
11329         * gst/gstcaps.h:
11330         * gst/gststructure.h:
11331           add reserved padding
11332
11333 2004-03-15  Benjamin Otte  <otte@gnome.org>
11334
11335         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
11336           set the first parameter for select call correctly.
11337           (fixes #137230)
11338
11339 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11340
11341         * *.c,*.h: don't mix tabs and spaces
11342
11343 2004-03-15  Johan Dahlin  <johan@gnome.org>
11344
11345         * gst/schedulers/gstoptimalscheduler.c
11346         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
11347         crash on MPEG playback. My boolean arithmetic is a bit rusty.
11348
11349         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
11350         
11351 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11352
11353         * testsuite/Rules:
11354           fix gst-register rules
11355
11356 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11357
11358         * testsuite/Rules:
11359           use versioned gst-register
11360
11361 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
11362
11363         * docs/libs/gstreamer-libs-sections.txt:
11364           remove </SUBSECTION>
11365         * gst/gstplugin.c:
11366         * gst/gstregistry.c: (gst_registry_add_plugin):
11367         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
11368         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
11369           add debugging and fix some comment blocks
11370
11371 2004-03-15  Johan Dahlin  <johan@gnome.org>
11372
11373         * *.h: Revert indent changes.
11374         
11375 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11376
11377         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
11378           g_error_free the g_error
11379         * tools/gst-feedback-m.m:
11380           check for other versions of gstreamer
11381         * tools/gst-indent:
11382           use sh, not bash
11383
11384 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
11385
11386         * tools/gst-register.c: do not spill paths when registries are not
11387           writable, until we fix the "user running gst-register" case.
11388
11389 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11390
11391         * *.c, *.h: commit of gst-indent run on core
11392
11393 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11394
11395         * tools/gst-indent:
11396         * tools/Makefile.am:
11397           add our indentation style as a script
11398
11399 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11400
11401         * po/sr.po:
11402         * po/LINGUAS:
11403           added Serbian translation
11404
11405 2004-03-13  Benjamin Otte  <otte@gnome.org>
11406
11407         * gst/gstelement.c:
11408           add documentation note about gst_element_found_tags_for_pad not
11409           being usable in getfunctions. (see #137042)
11410
11411 2004-03-12  David Schleef  <ds@schleef.org>
11412
11413         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
11414         change API right now!  Readd gst_caps_is_simple() macro.
11415         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
11416         uninitialized variable.  I'd bet this caused crashes.
11417         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
11418
11419 2004-03-12  Johan Dahlin  <johan@gnome.org>
11420
11421         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
11422         * gst/gstcaps.h: Clean up
11423
11424         * gst/gst.c (init_post): call gst_caps_get_type() instead of
11425         _gst_caps_initalize()
11426
11427         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
11428         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
11429
11430         * gst/gststructure.c (gst_structure_get_type): Ditto
11431
11432         * gst/gststructure.h: Ditto
11433         
11434 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11435
11436         * gst/gstqueue.c: (gst_queue_init):
11437           Reset default max. values in queues. Reason is simply to avoid
11438           braindead use. If you want wider values, use the properties. The
11439           default is supposed to always work. Wider values would make this
11440           beast a memory hog by default (250 full-PAL RGB32 video frames?
11441           That's 440 MB! No thank you).
11442
11443 2004-03-10  David Schleef  <ds@schleef.org>
11444
11445         * tools/gst-run.c: (main):  Fix crash when no relevant tools
11446         were found.  (bug #136793)
11447
11448 2004-03-10  Johan Dahlin  <johan@gnome.org>
11449
11450         * gst/schedulers/gstoptimalscheduler.c
11451         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
11452         links to elements within the same group, so we can finally remove
11453         that annoying warning. Refactor the code a little bit
11454         (group_dec_links_for_element): Split out
11455
11456 2004-03-09  David Schleef  <ds@schleef.org>
11457
11458         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
11459         (bug #134863)
11460
11461 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11462
11463         * configure.ac: first bug fix due to major/minor bump
11464
11465 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11466
11467         * configure.ac: bump nano to 1
11468
11469 === release 0.7.6 ===
11470
11471 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
11472
11473         * NEWS:
11474         * RELEASE:
11475         * configure.ac:
11476           releasing 0.7.6, "Almost"
11477         * po/fr.po:
11478         * po/nl.po:
11479         * tools/Makefile.am:
11480         * tools/gst-feedback-m.m:
11481           unversioned source
11482
11483 2004-03-09  Johan Dahlin  <johan@gnome.org>
11484
11485         Reviewed by: Thomas Vander Stichele
11486
11487         * gst/gstelement.c (gst_element_class_init): register second
11488         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
11489         language bindings can (de)marshall correctly.
11490
11491         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
11492
11493         * gst/gsterror.c (gst_g_error_get_type): New function
11494
11495         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
11496         with VOID:OBJECT,OBJECT,STRING 
11497
11498 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
11499
11500         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
11501         Free a leaked g_timer on early returns.
11502
11503 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11504
11505         * docs/pwg/advanced-types.xml:
11506           Add cinepak description.
11507
11508 2004-03-07  David Schleef  <ds@schleef.org>
11509
11510         * docs/random/mimetypes:  Added cinepak description
11511
11512 2004-03-07  Andy Wingo  <wingo@pobox.com>
11513
11514         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
11515
11516         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
11517         there are no links to other groups when a group is destroyed.
11518         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
11519         removed from a group, make sure the link count to elements linked
11520         to other pads is appropriately decremented. This really fixes
11521         #135672.
11522
11523         The 1.60->1.61 patch has been reapplied in light of this fix.
11524
11525         * gst/gstelement.c (gst_element_dispose): Really protect against
11526         multiple invocations this time.
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           remove some deprecated functions, document some existing ones
11533         * gst/gsttag.c: (gst_tag_get_flag):
11534         * gst/gsttag.h:
11535           add accessor function
11536
11537 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
11538
11539         * docs/gst/gstreamer-sections.txt:
11540         * docs/gst/tmpl/gsttag.sgml:
11541         * docs/gst/tmpl/gstxml.sgml:
11542         * gst/gsttag.c: (gst_tag_get_flag):
11543         * gst/gsttag.h:
11544
11545 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
11546
11547         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
11548         leak
11549
11550 2004-03-05  David Schleef  <ds@schleef.org>
11551
11552         * REQUIREMENTS: Add bison and flex.
11553         * configure.ac: Fix comment about bison.
11554         * docs/random/ds/0.9-suggested-changes: yer ma
11555         * tools/gst-inspect.c: (print_element_info):  Fix warning.
11556
11557 2004-03-05  Benjamin Otte  <otte@gnome.org>
11558
11559         * gst/gstelement.c: (gst_element_error_full):
11560           revert recent recursive state changing commit - messing with other
11561           elements' states is evil and should be done by apps only.
11562
11563 2004-03-05  Benjamin Otte  <otte@gnome.org>
11564
11565         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
11566           check for empty intersection instead of NULL caps
11567         (gst_element_get_compatible_pad_filtered):
11568           remove old workaround that is only a bug nowadays
11569
11570 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11571
11572         * gst/gstelement.c: (gst_element_error_full):
11573           make elements try to recursively change state to PAUSED on all
11574           parents after an error to suppress ensuing warnings
11575         * gst/parse/grammar.y:
11576           make it check if it was able to sync the state, and throw an error
11577           if not, so stuff like
11578           oggdemux ! vorbisdec ! osssink gets caught
11579
11580 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
11581
11582         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
11583           it contains lib64; use AS_AC_EXPAND to handle it properly
11584
11585 2004-03-05  David Schleef  <ds@schleef.org>
11586
11587         * gst/gstcpuid_i386.s:  Remove unused code
11588         * libs/gst/getbits/getbits.c: (gst_getbits_init),
11589         (gst_getbits_newbuf): Remove MMX code
11590         * libs/gst/getbits/getbits.h: Remove MMX code
11591
11592 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
11593
11594         * debian/.cvsignore:
11595         * debian/README.Debian:
11596         * debian/changelog:
11597         * debian/control:
11598         * debian/control.in:
11599         * debian/copyright:
11600         * debian/gstreamer-core-libs-dev.files:
11601         * debian/gstreamer-core-libs.files:
11602         * debian/gstreamer-core.files:
11603         * debian/gstreamer-core.postinst:
11604         * debian/gstreamer-core.postrm:
11605         * debian/gstreamer-doc.files:
11606         * debian/gstreamer-doc.links:
11607         * debian/gstreamer-doc.lintian:
11608         * debian/gstreamer-runtime.files:
11609         * debian/gstreamer-runtime.manpages:
11610         * debian/gstreamer-runtime.postinst:
11611         * debian/gstreamer-runtime.postrm:
11612         * debian/gstreamer-tools.files:
11613         * debian/gstreamer-tools.manpages:
11614         * debian/libgstreamer-dev.files:
11615         * debian/libgstreamer0.4.1.files:
11616         * debian/libgstreamerVERSION.files:
11617         * debian/rules:
11618         Debian package info not maintained here.
11619
11620 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
11621
11622         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
11623         * gst/gstbin.c: (gst_bin_class_init):
11624         * gst/gstelement.c: (gst_element_class_init):
11625         * gst/gstindex.c: (gst_index_class_init):
11626         * gst/gstobject.c: (gst_object_class_init),
11627         (gst_signal_object_class_init):
11628         * gst/gstpad.c: (gst_pad_template_class_init):
11629         * gst/gstregistry.c: (gst_registry_class_init):
11630         * gst/gsturi.c: (gst_uri_handler_base_init):
11631         * gst/gstxml.c: (gst_xml_class_init):
11632         * libs/gst/control/dparam.c: (gst_dparam_class_init):
11633         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
11634           make all signal names use dashes instead of underscore
11635
11636 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
11637
11638         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
11639
11640 2004-03-03  Benjamin Otte  <otte@gnome.org>
11641
11642         * gst/schedulers/gstoptimalscheduler.c:
11643           revert last commit by Andy Wingo. It causes segfaults on unreffing
11644           in Rhythmbox. (see bug #135672)
11645
11646 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11647
11648         * po/fr.po: fix typo
11649
11650 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
11651
11652         * tools/gst-inspect.c: (main): 
11653         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
11654
11655 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11656
11657         * configure.ac:
11658           get GLIB_ONLY and POPT flags for the nonversioned binaries
11659         * tools/Makefile.am:
11660           use them
11661
11662 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
11663
11664         * gst/gst.c: (init_post):
11665           change so that GST_REGISTRY now is where the global registry gets
11666           saved, since that is where plugins now get attached to first, and
11667           spilled over to the user registry.  Note that in the case of using
11668           GST_REGISTRY env var, we don't want to affect any real registries
11669           beyond the one given by this var, and thus we don't set a user
11670           registry to spill to.  So make sure GST_REGISTRY is writable.
11671
11672 2004-03-01  David Schleef  <ds@schleef.org>
11673
11674         * AUTHORS:  Added some names.  Add yourself if you're missing.
11675
11676 2004-03-01  David Schleef  <ds@schleef.org>
11677
11678         * MAINTAINERS: Add
11679
11680 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
11681
11682         * configure.ac:
11683           remove whitespace
11684         * docs/gst/tmpl/gstbuffer.sgml:
11685         * docs/gst/tmpl/gstdata.sgml:
11686         * docs/gst/tmpl/gstreamer-unused.sgml:
11687         * docs/gst/tmpl/gstxml.sgml:
11688           doc update
11689         * docs/manuals.mak:
11690           add a FIXME
11691         * docs/pwg/intro-preface.xml:
11692         * docs/pwg/pwg.xml:
11693           remove GNOME
11694         * gst/gst.c: (init_post):
11695           try GST_PLUGIN_PATH paths for the _global_registry first
11696         * gst/gstelement.h:
11697           add the error message as well, otherwise (null) debug info doesn't
11698           make much sense
11699         * tools/gst-register.c: (main):
11700           spill paths to next registry if this registry is not writable
11701         * po/fr.po:
11702         * po/nl.po:
11703           translation updates
11704
11705 2004-03-01  Johan Dahlin  <johan@gnome.org>
11706
11707         * gst/gstbuffer.c (_gst_buffer_initialize): 
11708         * gst/gstdata.c (gst_data_get_type): 
11709         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
11710         instead of ref, since some applications that uses GBoxed
11711         routines depends on a function that actually returns a copy.
11712
11713 2004-02-27  Benjamin Otte  <otte@gnome.org>
11714
11715         * gst/gstbuffer.h:
11716           remove gst_buffer_free, use gst_data_unref
11717         * gst/gstdata.c: (gst_data_get_type):
11718           use refcounting in GstData GBoxed registration
11719         * gst/gstdata.h:
11720           remove gst_data_free, use gst_data_unref
11721
11722 2004-02-27  Johan Dahlin  <johan@gnome.org>
11723
11724         * gst/gstdata.c (gst_data_get_type): New function, register
11725         GstData as a GBoxed type.
11726
11727         * gst/gstdata.h (GST_TYPE_DATA): New macro
11728
11729 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
11730
11731         * Makefile.am:
11732         * gstreamer.spec.in:
11733           put back RELEASE
11734         * gst/Makefile.am:
11735           clean up non-disting of built files
11736         * testsuite/debug/commandline.c:
11737           test fix for option rename
11738
11739 2004-02-26  David Schleef  <ds@schleef.org>
11740
11741         * configure.ac:  We don't really need glib-2.3.  Also remove
11742         some unneeded checks for library functions.
11743         * gst/Makefile.am:  Instead, we need to not dist files created
11744         by glib-genmarshal.
11745
11746 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11747
11748         * configure.ac:
11749           bump glib required version to 2.3.0 for g_value_takes_boxed
11750
11751  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
11752
11753         * common/m4/gst-docs.m4
11754         change flavour text from enable to disable as enable is our default
11755         closes bug Bug 135304
11756
11757 === release 0.7.5 ===
11758  
11759  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11760  
11761         * NEWS:
11762           instate NEWS file
11763         * Makefile.am:
11764         * gstreamer.spec.in:
11765         * RELEASE:
11766           put back release
11767         * configure.ac:
11768         * docs/random/release:
11769           more updates
11770
11771 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11772
11773         * gst/gsttag.c: (_gst_tag_initialize):
11774         * po/fr.po:
11775         * po/nl.po:
11776           remove hyphen from codec tags
11777
11778 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11779
11780         * gst/parse/Makefile.am:
11781           fix dependency so that a make from a clean build works the first
11782           time
11783
11784 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11785
11786         * docs/random/release:
11787           update release strategy
11788         * po/fr.po:
11789           auto-update po file
11790         * po/nl.po:
11791           update dutch translation
11792
11793 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11794
11795         * docs/manual/debugging.xml:
11796         fix manual for new debugging system
11797
11798 2004-02-25  Andy Wingo  <wingo@pobox.com>
11799
11800         * gst/gstpad.c (gst_pad_link_prepare): Re-add
11801         gst_pad_link_prepare. Please email the list with specific reasons
11802         for reverting.
11803
11804 2004-02-24  Andy Wingo  <wingo@pobox.com>
11805
11806         * gst/gstelement.c (gst_element_dispose): Protect against multiple
11807         invocations.
11808
11809         * gst/schedulers/gstoptimalscheduler.c:
11810         I added a mess of prototypes at the top of the file by way of
11811         documentation. Some of the operations on chains and groups were
11812         re-organized.
11813
11814         (create_group): Added a type argument so if the group is enabled,
11815         the setup_group_scheduler knows what to do.
11816         (group_elements): Added a type argument here, too, to be passed on
11817         to create_group.
11818         (group_element_set_enabled): If an unlinked PLAYING element is
11819         added to a bin, we have to create a new group to hold the element,
11820         and this function will be called before the group is added to the
11821         chain. Thus we have a valid case for group->chain==NULL. Instead
11822         of calling chain_group_set_enabled, just set the flag on the group
11823         (the chain's status will be set when the group is added to it).
11824         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
11825         Setup the group scheduler when the group is enabled, not
11826         specifically when an element goes PAUSED->PLAYING. This means
11827         PLAYING elements can be added, linked, and scheduled into a
11828         PLAYING pipeline, as was intended.
11829         (add_to_group): Don't ref the group twice. I don't know when this
11830         double-ref got in here. Removing it has the potential to cause
11831         segfaults if other parts of the scheduler are buggy. If you find
11832         that the scheduler is segfaulting for you, put in an extra ref
11833         here and see if that hacks over the underlying issue. Of course,
11834         then find out what code is unreffing a group it doesn't own...
11835         (create_group): Make the extra refcount floating, and remove it
11836         after adding the element. This means that...
11837         (unref_group): Destroy when the refcount reaches 0, not 1, like
11838         every other refcounted object in the known universe.
11839         (remove_from_group): When a group becomes empty, set it to be not
11840         active, and remove it from its chain. Don't unref it again,
11841         there's no floating reference any more.
11842         (destroy_group): We have to remove the group from the chain in
11843         remove_from_group (rather than here) to break refcounting cycles
11844         (the chain always has a ref on the group). So assert that
11845         group->chain==NULL.
11846         (ref_group_by_count): Removed, it was commented out anyway.
11847         (merge_chains): Use the remove_from_chain and add_to_chain
11848         primitives to do the reparenting, instead of rolling our own
11849         implementation.
11850         (add_to_chain): The first non-disabled group in the chain's group
11851         list will be the entry point for the chain. Because buffers can
11852         accumulate in loop elements' peer bufpens, we preferentially
11853         schedule loop groups before get groups to avoid unnecessary
11854         execution of get-based groups when the bufpens are already full.
11855         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
11856         (get_group_schedule_function): Ditto.
11857         (loop_group_schedule_function): Ditto.
11858         (gst_opt_scheduler_loop_wrapper): Ditto.
11859         (gst_opt_scheduler_iterate): Ditto.
11860
11861         I understand the opt scheduler now, yippee!
11862
11863         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
11864         (gst_pad_get_name, gst_pad_set_chain_function) 
11865         (gst_pad_set_get_function, gst_pad_set_event_function) 
11866         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
11867         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
11868         (gst_pad_set_query_function, gst_pad_get_query_types) 
11869         (gst_pad_get_query_types_default) 
11870         (gst_pad_set_internal_link_function) 
11871         (gst_pad_set_formats_function, gst_pad_set_link_function) 
11872         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
11873         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
11874         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
11875         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
11876         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
11877         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
11878         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
11879         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
11880         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
11881         (gst_pad_event_default_dispatch, gst_pad_event_default) 
11882         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
11883         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
11884         (gst_pad_get_formats_default, gst_pad_get_formats): Better
11885         argument checks, and some doc fixes.
11886
11887         (gst_pad_custom_new_from_template): Um, does anyone
11888         use these functions? Actually make a custom pad instead of a
11889         normal one.
11890         (gst_pad_try_set_caps): Transpose some checks.
11891         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
11892         the pad is in negotiation.
11893         (gst_pad_try_relink_filtered): Use pad_link_prepare.
11894         
11895         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
11896
11897         * gst/gstelement.h: 
11898         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
11899         on the list.
11900
11901 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11902
11903         * gst/gstbin.c: (gst_bin_add):
11904           add error for not being able to add elements
11905
11906 2004-02-22  Julien MOUTTE <julien@moutte.net>
11907
11908         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
11909         audio-codec and video-codec.
11910
11911 2004-02-22  Benjamin Otte  <otte@gnome.org>
11912
11913         reported by: Padraig O'Briain <padraig.obriain@sun.com>
11914
11915         * autogen.sh:
11916           replace test -e with test -x for mkinstalldirs to be more portable.
11917           (fixes #134816)
11918
11919 2004-02-22  Benjamin Otte  <otte@gnome.org>
11920
11921         * gst/gstpad.c:
11922           revert last patch from Andy, it makes gst_pad_can_link_filtered much
11923           too noisy
11924         * gst/gsttag.c: (_gst_tag_initialize):
11925         * gst/gsttag.h:
11926           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
11927         * libs/gst/control/dparam.c: (gst_dparam_attach):
11928         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
11929           check that types for attached dparams match
11930
11931 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11932
11933         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11934         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11935         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
11936           fix errors
11937
11938 2004-02-20  Andy Wingo  <wingo@pobox.com>
11939
11940         * gst/gstbin.c:
11941         * gst/gstbuffer.c:
11942         * gst/gstplugin.c:
11943         * gst/registries/gstxmlregistry.c: 
11944         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
11945
11946         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
11947         (gst_element_add_pad): DEBUG->INFO, some fixes.
11948         (gst_element_get_compatible_pad_template): Just see if the
11949         templates' caps intersect, not if one is a strict subset of the
11950         other. This conforms more to what gst_pad_link_intersect() does.
11951         (gst_element_class_add_pad_template): Don't memcpy the pad
11952         template, just ref it.
11953         (gst_element_get_compatible_pad_filtered): Clean up debug messages
11954
11955         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
11956         (gst_pad_link_filtered): Debug changes.
11957         (gst_pad_link_prepare): New function, consolidated from
11958         can_link_filtered and link_filtered.
11959
11960         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
11961         look more like that of the functions in gstelement.c
11962
11963         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
11964         object, and return the empty string if object is NULL.
11965
11966         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
11967         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
11968         LOG, not DEBUG. We still get flex info on debug.
11969
11970         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
11971         debug string more verbose.
11972         (plugin_times_older_than): DEBUG->LOG.
11973
11974 2004-02-20  Julien MOUTTE <julien@moutte.net>
11975
11976         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
11977         will emit found_tag for each stream they demux with the codec.
11978
11979 2004-02-20  Benjamin Otte  <otte@gnome.org>
11980
11981         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
11982           copy navigation event correctly. Check freeing tag lists. 
11983         * gst/gstthread.c: (gst_thread_change_state):
11984           don't abort() on state changing mess - it might happen because of
11985           bugs.
11986         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
11987           use boxed functions
11988         * gst/gstvalue.h:
11989           fix GST_VALUE_HOLDS_CAPS
11990
11991 2004-02-19  David Schleef  <ds@schleef.org>
11992
11993         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
11994         and use it for GST_FUNCTION.  (bug #134750)
11995
11996 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11997
11998         * po/fr.po:
11999         * po/nl.po:
12000           updating translations
12001
12002 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
12003
12004         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
12005
12006 2004-02-18  kost@imn.htwk-leipzig.de
12007
12008         reviewed by: David Schleef  <ds@schleef.org>
12009
12010         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
12011         for libgstcontrol.
12012
12013 2004-02-18  David Schleef  <ds@schleef.org>
12014
12015         * libs/gst/control/dparam.c: (gst_dparam_class_init):
12016         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12017         (gst_dpsmooth_new): Additional fixes to get double dparams working.
12018         * tools/gst-inspect.c: (print_element_info): Support dumping of
12019         double dparam information.
12020
12021 2004-02-17  David Schleef  <ds@schleef.org>
12022
12023         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
12024         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
12025         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
12026         Use GST_TYPE_CAPS in signal prototype.
12027         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
12028         Convert GST_TYPE_CAPS to boxed.
12029         * gst/gstelement.c: (gst_element_class_init):
12030         Use GST_TYPE_TAG_LIST in signal prototype.
12031         * gst/gstindex.c: (gst_index_class_init):
12032         * gst/gstindex.h:
12033         Add GST_TYPE_INDEX_ENTRY type.
12034         * gst/gstmarshal.list:
12035         Add necessary marshal types.
12036         * gst/gstpad.c: (gst_real_pad_class_init),
12037         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
12038         (gst_pad_recover_caps_error):
12039         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
12040         * gst/gststructure.c: (_gst_structure_initialize),
12041         (gst_structure_copy), (_gst_structure_copy_conditional):
12042         * gst/gststructure.h:
12043         Convert GST_TYPE_STRUCTURE to boxed.
12044         * gst/gsttag.c: (gst_tag_list_get_type):
12045         * gst/gsttag.h:
12046         Add GST_TYPE_TAG_LIST type.
12047
12048 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12049
12050         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
12051         to what we agreed with david.
12052         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
12053
12054 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12055
12056         * po/nl.po: update translation
12057
12058 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
12059
12060         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
12061           throw an error if spider is trying to play a mime type there is
12062           no decoder for
12063         * po/POTFILES.in:
12064           add gst/autoplug/gstspider.c for translation
12065
12066 2004-02-17  Julien MOUTTE  <julien@moutte.net>
12067
12068         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
12069         silently when the pad is negotiating.
12070
12071 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12072
12073         * docs/faq/Makefile.am:
12074           add script to run gstreamer uninstalled 
12075         * docs/faq/faq.xml:
12076         * docs/faq/developing.xml:
12077         * docs/faq/gst-uninstalled:
12078           extract script to run gstreamer uninstalled
12079         * docs/manuals.mak:
12080           add EXTRA_SOURCES variable for Makefile.am's to set to
12081           use additional SOURCE files for the doc build
12082
12083 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
12084
12085         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
12086
12087 2004-02-15  Julien MOUTTE  <julien@moutte.net>
12088
12089         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
12090         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
12091         an error was thrown by osssink. Basically a state change failure for
12092         an element in a different scheduling group was considered as
12093         successful, which means that caps nego was going on and weird stuff
12094         happened. Like I wrote in the comment there, if someone wants to
12095         revert that please drop me a mail explaining why because I really see
12096         no point in keeping that broken behaviour there.
12097         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
12098         be empty, we then return NULL which will trigger a nice error when 
12099         pulling from the pad.
12100
12101 2004-02-13  David Schleef  <ds@schleef.org>
12102
12103         * libs/gst/control/dparam.c: (gst_dparam_class_init),
12104         (gst_dparam_get_property), (gst_dparam_set_property),
12105         (gst_dparam_do_update_default):
12106         * libs/gst/control/dparam.h:
12107         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
12108         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
12109         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
12110         (gst_dpsmooth_do_update_double):
12111         * libs/gst/control/dparam_smooth.h:
12112         * libs/gst/control/dparammanager.c:
12113         (gst_dpman_inline_direct_update):
12114         Add support for double dparams.
12115
12116 2004-02-13  David Schleef  <ds@schleef.org>
12117
12118         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
12119         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
12120
12121 2004-02-13  Mattias Wadman  <mattias@sudac.org>
12122
12123         reviewed by: David Schleef  <ds@schleef.org>
12124
12125         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
12126         (gst_fdsrc_init), (gst_fdsrc_set_property),
12127         (gst_fdsrc_get_property), (gst_fdsrc_get):
12128         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
12129         and sends an EOS event if file descriptor reading times out.
12130
12131 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12132
12133         * configure.ac:
12134           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
12135
12136 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
12137
12138         * configure.ac: pass required libxml version as argument
12139         (bug reported by Christophe Fergeau)
12140
12141 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12142   
12143         * docs/gst/gstreamer-docs.sgml:
12144         * docs/gst/tmpl/gstxml.sgml:
12145         * docs/libs/gstreamer-libs-docs.sgml:
12146           version API docs
12147
12148 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12149
12150         * gst/gstinfo.c:
12151         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
12152         (gst_registry_pool_feature_filter):
12153         * gst/gstthread.c: (gst_thread_class_init):
12154         * gst/gstvalue.c:
12155           add includes exposed by building without libxml
12156         * gst/indexers/Makefile.am:
12157           do not build fileindex when LOADSAVE disabled; we should have
12158           a better libxml check later since fileindex depends on xml, not
12159           LOADSAVE or REGISTRY
12160         * libs/gst/control/Makefile.am:
12161           link with m
12162         * tools/Makefile.am:
12163           fix wrong source code for gst-xmlinspect
12164
12165 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12166
12167         * configure.ac:
12168           fix gcov help output
12169           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
12170         * docs/random/release:
12171           some updated releasing notes
12172         * gstreamer.spec.in:
12173           more updates
12174
12175 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12176
12177         * docs/faq/faq.xml:
12178         * docs/manual/manual.xml:
12179         * docs/pwg/pwg.xml:
12180         * docs/pwg/titlepage.xml:
12181           put version in documentation
12182
12183 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12184
12185         * tools/Makefile.am: fix man page installation
12186
12187 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12188
12189         * configure.ac:
12190           don't check for libxml when load/save and registry disabled (#105844)
12191         * gstreamer.spec.in:
12192           sync with fedora candidate spec
12193
12194 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
12195
12196         * po/fr.po:
12197         * po/nl.po:
12198           replace multidisksrc with multifilesrc
12199
12200 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12201
12202         * po/POTFILES.in:
12203           update to multidisksrc => multifilesrc file renaming (#134145)
12204
12205 2004-02-11  David Schleef  <ds@schleef.org>
12206
12207         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
12208         * docs/gst/tmpl/gstpadtemplate.sgml: same
12209         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
12210         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
12211         fixing dance.
12212         * gst/gstutils.c: Remove disabled code that uses GstProps.
12213         * gst/registries/gstxmlregistry.h: same
12214         * docs/random/ds/0.9-suggested-changes: random notes
12215
12216 2004-02-11  kost@imn.htwk-leipzig.de
12217
12218         reviewed by: David Schleef  <ds@schleef.org>
12219
12220         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
12221         initialisation of clock (bug #134128)
12222
12223 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12224
12225         * configure.ac:
12226         * gst/elements/Makefile.am:
12227         * gst/elements/gstelements.c:
12228         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
12229         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
12230         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
12231         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
12232         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
12233         * gst/elements/gstmultifilesrc.h:
12234           rename multidisksrc to multifilesrc (part of #122200)
12235
12236 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12237
12238         * docs/manuals.mak:
12239           fix automake complaints
12240         * gst-element-check.m4:
12241           fix unquotedness
12242
12243 2004-02-11  David Schleef  <ds@schleef.org>
12244
12245         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
12246         * gst/gstatomic_impl.h: Disable sparc implementation.
12247
12248 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12249
12250         * gst-element-check.m4:
12251           fix underquoted macros as reported by automake 1.8.x (#133800)
12252         * configure.ac:
12253           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
12254           by autopoint (fixes #132996)
12255
12256 2004-02-10  Andy Wingo  <wingo@pobox.com>
12257
12258         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
12259         way to do inheritance.
12260         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
12261         (gst_pad_get_query_types, gst_pad_get_query_types_default):
12262         Routine docs.
12263         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
12264         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
12265         doc.
12266         (gst_pad_unlink, gst_pad_is_linked): Docs.
12267         (gst_pad_renegotiate): A brief description of capsnego.
12268         (gst_pad_try_set_caps): Document.
12269         (gst_pad_try_set_caps_nonfixed): Document.
12270         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
12271         (gst_pad_set_parent): Deprecated (although not out of the API).
12272         (gst_pad_get_parent): Deprecated, although many plugins use this.
12273         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
12274         are private and will go away in 0.9.
12275         (gst_pad_perform_negotiate): Doc.
12276         (gst_pad_link_unnegotiate): I think this is meant to be static.
12277         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
12278         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
12279         (gst_pad_get_peer): Doc updates.
12280         (gst_pad_caps_change_notify): Doc.
12281         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
12282         (gst_ghost_pad_new): Doc fixes.
12283
12284         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
12285         (gst_object_check_uniqueness): 
12286
12287         * gst/gstelement.c (gst_element_add_pad) 
12288         (gst_element_add_ghost_pad, gst_element_remove_pad) 
12289         (gst_element_remove_ghost_pad, gst_element_get_pad) 
12290         (gst_element_get_static_pad, gst_element_get_pad_list) 
12291         (gst_element_class_get_pad_template_list) 
12292         (gst_element_class_get_pad_template): Work on the docs.
12293         (gst_element_get_pad_template_list): Uses the class method.
12294         (gst_element_get_compatible_pad_template): Docs, and consolidate
12295         some test conditions. 
12296         (gst_element_get_pad_from_template): New static function.
12297         (gst_element_request_compatible_pad): Docs, and work with
12298         non-request compatible templates. 
12299         (gst_element_get_compatible_pad_filtered): Docs and remove
12300         redundant checks.
12301         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
12302         (gst_element_link_filtered, gst_element_link_many) 
12303         (gst_element_link, gst_element_link_pads) 
12304         (gst_element_unlink_many): Docs.
12305
12306 2004-02-05  Andy Wingo  <wingo@pobox.com>
12307
12308         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
12309         s/pointer/boxed/.
12310
12311         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
12312
12313         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
12314         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
12315         with the type=GST_TYPE_CAPS. This allows language bindings to know
12316         what kind of data they're dealing with.
12317
12318         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
12319         to NULL when g_value_init is called. GstCaps, which rolls its own
12320         type implementation, now does the same instead of allocating empty
12321         caps.
12322         (_gst_caps_initialize, _gst_caps_collect_value,
12323         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
12324         table methods. This allows G_VALUE_COLLECT to work.
12325
12326 2004-02-05  Andy Wingo  <wingo@pobox.com>
12327
12328         * configure.ac:
12329         * testsuite/Makefile.am (SUBDIRS): 
12330         * testsuite/ghostpads/Makefile.am: 
12331         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
12332
12333         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
12334         These two routines are the only ones that set
12335         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
12336         pad template. They should be made static, depending on ABI needs.
12337         (gst_real_pad_dispose): Handle the case of ghost pads without a
12338         parent. Assert after dealing with ghost pads that the ghost pad
12339         list is empty.
12340         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
12341         set after creation.
12342         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
12343         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
12344         functions. set_property will call add_ghost_pad/remove_ghost_pad
12345         as appropriate.
12346         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
12347
12348         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
12349         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
12350         (gst_element_remove_pad): Handle ghost pads as well.
12351         (gst_element_remove_ghost_pad): Deprecated (could be removed,
12352         depending on API-stability needs).
12353
12354 2004-02-05  Andy Wingo  <wingo@pobox.com>
12355
12356         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
12357         of course they're const
12358
12359 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
12360
12361         * tools/Makefile.am:
12362         * tools/gst-feedback:
12363         * tools/gst-feedback-0.7:
12364           make gst-feedback versioned too for consistency
12365
12366 2004-02-11  David Schleef  <ds@schleef.org>
12367
12368         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12369         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
12370
12371 2004-02-10  Julien MOUTTE <julien@moutte.net>
12372
12373         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
12374         the structure does not contain a valid tag list. Adding a safety check
12375         to remove a noisy warning in that case.
12376
12377 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
12378
12379         * gst/gst.c: fix name to be in line with others
12380
12381 2004-02-09  Julien MOUTTE <julien@moutte.net>
12382
12383         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
12384         not shout that loud when len is 0. Just return 0 silently.
12385
12386 2004-02-09  Julien MOUTTE  <julien@moutte.net>
12387
12388         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
12389         because data_unref has one and I prefer the debug to be symetric.
12390         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
12391         were refed when added to the queue and unrefed only once when the queue
12392         was flushed. Now the flush handler unref the buffers two times : first
12393         unref for the ref added when pushing in the queue's tail and second
12394         unref to destroy the flushed buffer.
12395
12396 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
12397
12398         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
12399
12400 2004-02-06  David Schleef  <ds@schleef.org>
12401
12402         * docs/random/ds/0.9-suggested-changes: Random ramblings
12403         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
12404         to int before printing.
12405         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
12406         * gst/parse/parse.l: same.  See bug #129600
12407
12408 2004-02-06  David Schleef  <ds@schleef.org>
12409
12410         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
12411         (gst_index_add_entry), (gst_index_add_associationv),
12412         (gst_index_add_association): Add gst_index_add_associationv()
12413         and clean up gst_index_add_association(). #127133
12414
12415 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12416
12417         * autogen.sh: check out common with right tag if CVS/Tag exists
12418
12419 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12420
12421         * testsuite/ghostpads/ghostpads.c: (main):
12422           fix testsuite from segfaulting
12423
12424 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12425
12426         * Makefile.am: add release target
12427         * configure.ac: bump nano to 1
12428         * docs/random/release:
12429
12430 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12431
12432         * gst/gstcaps.h:
12433         * gst/gstelement.c: (gst_element_base_class_init),
12434         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12435         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12436         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12437         (gst_real_pad_dispose):
12438         * gst/gststructure.c: (gst_structure_free),
12439         (gst_structure_from_string):
12440           put reverted patch back in
12441         * gst/gstelement.c: (gst_element_remove_pad):
12442           free explicit caps if they're set
12443         * gst/gstpad.c: (_gst_pad_default_fixate_func):
12444           copy the structure when fixating
12445
12446 2004-02-05  David Schleef  <ds@schleef.org>
12447
12448         * gst/gstmarshal.list:
12449         * gst/gstpad.c: (gst_real_pad_class_init),
12450         (_gst_real_pad_fixate_accumulator):
12451         Revert POINTER->BOXED change in signal marshaller.
12452
12453 === release 0.7.4 ===
12454                                                                                 
12455 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
12456                                                                                 
12457         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
12458         * configure.ac: changed for release
12459
12460 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
12461
12462         * gstreamer.spec.in:
12463           bump required version of gtk-doc
12464
12465 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
12466
12467         * gst/gstcaps.h:
12468         * gst/gstelement.c: (gst_element_base_class_init),
12469         (gst_element_class_set_details), (gst_element_clear_pad_caps):
12470         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12471         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
12472         (gst_real_pad_dispose):
12473         * gst/gststructure.c: (gst_structure_free),
12474         (gst_structure_from_string):
12475           revert patch that breaks applications, reapply after release
12476           to get this fixed properly
12477
12478 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12479
12480         * gst/gsttag.c: (_gst_tag_initialize):
12481         * gst/gsttag.h:
12482           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
12483
12484 2004-02-04  David Schleef  <ds@schleef.org>
12485
12486         Fix some memleaks:
12487         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
12488         (gst_spider_plug_from_srcpad):
12489         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
12490
12491 2004-02-04  David Schleef  <ds@schleef.org>
12492
12493         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
12494         a GstRealPad before accessing its structure members.
12495
12496 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12497
12498         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
12499         (gst_clock_get_speed):
12500         * gst/gstclock.h:
12501           reset padding, remove unused fields
12502
12503 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12504
12505         * gst/autoplug/gstspideridentity.c:
12506         (gst_spider_identity_sink_loop_type_finding):
12507           use get_allowed_caps, not get_caps (fixes #132519)
12508         * gst/elements/gsttypefind.c: (stop_typefinding):
12509           use correct order when sending buffers and seeking
12510
12511 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12512
12513         * configure.ac:
12514         * gst/gstelement.h:
12515         * gst/gstpad.h:
12516         * gst/gstqueue.h:
12517           upgrade libtool CURRENT, reset padding
12518
12519 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12520
12521         * configure.ac:
12522           bump to prerelease
12523           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
12524
12525 2004-02-04  David Schleef  <ds@schleef.org>
12526
12527         * docs/random/ds/0.9-suggested-changes: random notes
12528         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
12529         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
12530         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
12531         expansion.
12532         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
12533         (gst_filesink_get_query_types): same
12534         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
12535         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
12536         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
12537         to use new GST_PTR_FORMAT.
12538         * gst/gstelement.h: deprecate function factory macros
12539         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
12540         These are our last variadic macros that can't be replaced with
12541         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
12542         attempting to deprecate gst_element_clock_wait().
12543         * gst/gstevent.h: same
12544         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
12545         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
12546         * gst/gstpad.h: deprecate function factory macros similar to above.
12547
12548 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
12549
12550         * configure.ac:
12551         * tools/Makefile.am:
12552         * tools/gst-run.c: (popt_callback), (hash_print_key),
12553         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
12554         (get_candidates), (main):
12555           add new source file to generate non-versioned wrapper binaries
12556           for our tools.
12557
12558 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12559
12560         * gst/gstevent.c: (_gst_event_free):
12561           actually break; inside the switch statement
12562         * gst/parse/grammar.y:
12563           fix memleak where GValues weren't unset
12564
12565 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12566
12567         * gst/gststructure.c: (gst_structure_from_string):
12568           fix huge memleak
12569         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12570         (new_entry), (gst_type_find_element_chain):
12571         * gst/gstelement.c: (gst_element_base_class_init),
12572         (gst_element_class_set_details):
12573         * gst/gstpad.c: (gst_pad_can_link_filtered):
12574           fix smaller memleaks
12575         * gst/gstpad.c: (gst_real_pad_dispose):
12576           check that explicit caps are gone
12577         * gst/gststructure.c: (gst_structure_free):
12578           actually free the structure
12579         * gst/gstelement.c: (gst_element_clear_pad_caps):
12580           unset explicit caps
12581
12582 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12583
12584         * tools/Makefile.am:
12585           use AM_CFLAGS since all the CFLAGS are the same
12586           use AM_LDFAGS
12587
12588 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12589
12590         * docs/manual/gnome.xml:
12591           expand example a little
12592         * gst/gst.c: (gst_init_with_popt_table),
12593         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
12594           make sure popt option displays are done with right textdomain
12595           use GstPoptOption type
12596         * gst/gst.h:
12597           create GstPoptOption type
12598
12599 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12600
12601         * gst/gsterror.c: (_gst_stream_errors_init):
12602         * gst/gsterror.h:
12603           adding error type for no codec
12604         * po/POTFILES.in:
12605           add gst-inspect
12606         * po/nl.po:
12607           update dutch translation
12608         * tools/gst-inspect.c: (print_element_list), (main):
12609           do proper internationalization
12610         * tools/gst-launch.c: (idle_func):
12611           remove commented out function call
12612
12613 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
12614
12615         * docs/README:
12616           add some error fixing notes
12617         * docs/gst/gstreamer-sections.txt:
12618           remove double entries
12619         * docs/gst/tmpl/gstbin.sgml:
12620         * docs/gst/tmpl/gstclock.sgml:
12621           remove override
12622         * docs/gst/tmpl/gstelement.sgml:
12623         * docs/gst/tmpl/gstindex.sgml:
12624         * docs/gst/tmpl/gstobject.sgml:
12625         * docs/gst/tmpl/gstpadtemplate.sgml:
12626         * docs/gst/tmpl/gstreamer-unused.sgml:
12627         * docs/gst/tmpl/gsttag.sgml:
12628         * docs/gst/tmpl/gstthread.sgml:
12629         * docs/gst/tmpl/gstxml.sgml:
12630         * gst/gsttag.h:
12631           sync header prototypes with c decls
12632         * gst/gsttaginterface.c:
12633           fix doc headers
12634
12635 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12636
12637         * gst/parse/Makefile.am:
12638         * gst/gstobject.h:
12639           get rid of gstmarshal.h dependency. It's not needed.
12640         * gst/gst.h:
12641         * gst/elements/gstfakesink.c:
12642         * gst/elements/gstfakesrc.c:
12643         * gst/elements/gstidentity.c:
12644         * gst/gstbin.c:
12645         * gst/gstelement.c:
12646         * gst/gstindex.c:
12647         * gst/gstobject.c:
12648         * gst/gstpad.c:
12649         * gst/gstthread.c:
12650         * gst/gstxml.c:
12651         * libs/gst/control/dparam.c:
12652         * libs/gst/control/dparammanager.c:
12653           include gstmarshal.h.
12654         Fixes #132045
12655
12656 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12657
12658         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
12659         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
12660         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
12661         * gst/elements/gstfilesrc.h:
12662           don't ref the filesrc when creating mmaped buffers. Don't keep a
12663           list of not-yet-destroyed buffers.
12664         * gst/gstbuffer.h:
12665           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
12666
12667 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12668
12669         * gst/gst.c: (init_pre):
12670           remove textdomain
12671
12672 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12673
12674         * docs/pwg/advanced-events.xml:
12675         * docs/pwg/advanced-scheduling.xml:
12676         * docs/pwg/intro-basics.xml:
12677         * docs/pwg/other-manager.xml:
12678         * docs/pwg/other-nton.xml:
12679         * docs/pwg/other-ntoone.xml:
12680         * docs/pwg/other-oneton.xml:
12681         * docs/pwg/pwg.xml:
12682           All sort of documentation... Forgot what. Point is that I want this
12683           in before I leave. The 'other-*' will be the last section and will
12684           explain issues specific to these type of elements.
12685
12686 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12687
12688         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12689         (gst_filesrc_get_read):
12690           set all the values on buffers that we can
12691
12692 2004-02-02  David Schleef  <ds@schleef.org>
12693
12694         Change usage of isblah() to g_ascii_isblah() to be more locale
12695         independent.  (#133076)
12696         * gst/gsturi.c: (gst_uri_protocol_check_internal):
12697         * gst/gstutils.c:
12698         * gst/parse/parse.l:
12699
12700 2004-02-02  Jon Trowbridge  <trow@gnu.org>
12701
12702         reviewed by: David Schleef  <ds@schleef.org>
12703
12704         Fix memory leaks:
12705         * gst/gstcaps.c: (gst_caps_to_string):
12706         * gst/registries/gstxmlregistry.c:
12707         (gst_xml_registry_add_path_list_func),
12708         (gst_xml_registry_parse_padtemplate):
12709
12710 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
12711
12712         * gst/gstelement.c: (gst_element_default_error):
12713           suffix error messages with period
12714
12715 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12716
12717         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
12718         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12719         * gst/gsterror.c: (gst_error_get_message):
12720           Suffix with dots
12721         * po/fr.po:
12722         * po/nl.po:
12723           Update translation files
12724
12725 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12726
12727         * gst/autoplug/gstspideridentity.c:
12728         (gst_spider_identity_sink_loop_type_finding):
12729         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12730         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12731         (gst_filesink_close_file), (gst_filesink_handle_event),
12732         (gst_filesink_chain):
12733         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12734         (gst_filesrc_get_read), (gst_filesrc_open_file):
12735         * gst/elements/gstidentity.c: (gst_identity_chain):
12736         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12737         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12738         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12739         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12740         * gst/gsterror.c: (_gst_core_errors_init),
12741         (_gst_library_errors_init), (_gst_resource_errors_init),
12742         (_gst_stream_errors_init), (gst_error_get_message):
12743         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12744         (gst_pad_recover_caps_error), (gst_pad_pull):
12745         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12746         * gst/schedulers/gstbasicscheduler.c:
12747         (gst_basic_scheduler_chainhandler_proxy),
12748         (gst_basic_scheduler_gethandler_proxy),
12749         (gst_basic_scheduler_cothreaded_chain):
12750           Suffix error messages with period.
12751           Use (NULL) instead of NULL
12752
12753 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
12754
12755         * docs/gst/tmpl/gstelement.sgml:
12756         * docs/gst/tmpl/gstxml.sgml:
12757         * gst/gstelement.c: (gst_element_error_full):
12758           add element path to error
12759
12760 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12761
12762         * docs/random/mimetypes:
12763           update raw int/float info
12764         * gst/gsttag.c: (_gst_tag_initialize):
12765         * gst/gsttag.h:
12766           add GST_TAG_ENCODER
12767
12768 2004-01-30  David Schleef  <ds@schleef.org>
12769
12770         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
12771           missing (#132991)
12772
12773 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
12774
12775         reviewed by Benjamin Otte 
12776           parts of the patch submitted in bug #113913
12777
12778         * configure.ac:
12779           use AC_C_INLINE. Use = instead of == with test
12780         * examples/plugins/example.c:
12781         * gst/autoplug/gstspideridentity.c:
12782         * gst/elements/gstfdsrc.c:
12783         * gst/elements/gstfilesrc.c:
12784         * gst/elements/gstidentity.c:
12785         * gst/elements/gstmultidisksrc.c:
12786         * gst/elements/gststatistics.c:
12787         * gst/gstelement.c:
12788         * gst/gstobject.c:
12789         * gst/gstpad.c:
12790         * gst/gstpipeline.c:
12791         * gst/gstthread.c:
12792           don't end enums with a comma
12793         * gst/gstindex.c: (gst_index_compare_func):
12794           do explicit casting to gint
12795         * gst/gsttrace.c: (gst_trace_text_flush):
12796           #define strsize as a macro
12797
12798 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
12799
12800         * docs/README:
12801         * docs/gst/gstreamer-docs.sgml:
12802         * docs/gst/gstreamer-sections.txt:
12803         * docs/gst/tmpl/gstelement.sgml:
12804         * docs/gst/tmpl/gsterror.sgml:
12805         * docs/gst/tmpl/gstinterface.sgml:
12806         * docs/gst/tmpl/gstreamer-unused.sgml:
12807         * docs/gst/tmpl/gststructure.sgml:
12808         * docs/gst/tmpl/gsttag.sgml:
12809         * docs/gst/tmpl/gsttaginterface.sgml:
12810         * docs/gst/tmpl/gstvalue.sgml:
12811         make sure all API ends up in the built docs
12812         * gst/gstinterface.c:
12813         * gst/gststructure.c: (gst_structure_id_set_value),
12814         (gst_structure_set_value), (gst_structure_id_get_value):
12815         * gst/gststructure.h:
12816         * gst/gstvalue.h:
12817         sync .h with .c declarations
12818
12819 2004-01-30  Julien Moutte  <julien@moutte.net>
12820
12821         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
12822         Ronald will fix riffread.
12823
12824 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12825
12826         * docs/pwg/advanced-interfaces.xml:
12827           Added tuner interface docs.
12828
12829 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12830
12831         * docs/random/mimetypes:
12832           correct Theora information
12833         * gst/gstelement.h:
12834           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
12835
12836 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12837
12838         * gst/gstelement.c: (gst_element_error_full):
12839         * gst/gstelement.h:
12840           GST_ELEMENT_ERROR in enum -> _IN_ERROR
12841
12842 2004-01-29  Julien MOUTTE  <julien@moutte.net>
12843
12844         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
12845         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
12846         again and even before DISCONT.
12847         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
12848         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
12849         bytestream so that it's not stopping to fill the bytestream if events
12850         different than EOS or DISCONT are received. Instead it process them so
12851         that they go downstream.
12852
12853 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12854
12855         * docs/gst/tmpl/gstelement.sgml:
12856         * docs/gst/tmpl/gstreamer-unused.sgml:
12857         * docs/gst/tmpl/gstxml.sgml:
12858         * gst/autoplug/gstspideridentity.c:
12859         (gst_spider_identity_sink_loop_type_finding):
12860         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
12861         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
12862         (gst_filesink_close_file), (gst_filesink_handle_event),
12863         (gst_filesink_chain):
12864         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
12865         (gst_filesrc_get_read), (gst_filesrc_open_file):
12866         * gst/elements/gstidentity.c: (gst_identity_chain):
12867         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
12868         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
12869         (gst_pipefilter_chain), (gst_pipefilter_open_file):
12870         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
12871         * gst/gstelement.h:
12872         * gst/gstpad.c: (gst_pad_set_explicit_caps),
12873         (gst_pad_recover_caps_error), (gst_pad_pull):
12874         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
12875         * gst/schedulers/gstbasicscheduler.c:
12876         (gst_basic_scheduler_chainhandler_proxy),
12877         (gst_basic_scheduler_gethandler_proxy),
12878         (gst_basic_scheduler_cothreaded_chain):
12879           gst_element_error -> GST_ELEMENT_ERROR
12880
12881 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
12882
12883         * docs/Makefile.am:
12884         * docs/gst/tmpl/gstelement.sgml:
12885         * docs/gst/tmpl/gstxml.sgml:
12886         * docs/manuals.mak:
12887         * docs/pwg/advanced-request.xml:
12888         * docs/pwg/advanced-scheduling.xml:
12889         * docs/pwg/advanced-tagging.xml:
12890           fix non-validating docbook using CDATA
12891           make sure make check-local gets run first to check if it validates
12892
12893 2004-01-29  Julien MOUTTE <julien@moutte.net>
12894
12895         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
12896         handling (up and downstream).
12897         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
12898         my_filter thing.
12899
12900 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12901
12902         * docs/pwg/advanced-tagging.xml:
12903           Add docs about tag writing.
12904
12905 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12906
12907         * docs/pwg/advanced-tagging.xml:
12908           Add a part about tag reading and application signalling... Tag
12909           writing still needs to be documented.
12910         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12911           We can set file locations in READY, too.
12912
12913 2004-01-29  Julien MOUTTE <julien@moutte.net>
12914
12915         * docs/random/ds/element-checklist: Adding some notes about src
12916         events.
12917
12918 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12919
12920         * docs/random/mimetypes:
12921           Update docs to point to correct elements for various mimetypes, and
12922           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
12923           <stephane.loeuillet@tiscali.fr>.
12924
12925 2004-01-28  David Schleef  <ds@schleef.org>
12926
12927         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
12928
12929 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12930
12931         * docs/random/mimetypes:
12932           update docs for audio/x-raw-float. Add "buffer-frames=0 means
12933           undefined"
12934         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
12935           make it only work in NULL.
12936         * gst/gstcaps.c:
12937           don't posion NULL caps
12938         * gst/gstelement.c: (gst_element_set_time):
12939           add debugging statement
12940         * gst/gstelement.c: (gst_element_emit_found_tag),
12941         (gst_element_found_tag_func), (gst_element_found_tags):
12942         * gst/gstelement.h:
12943           These functions take const taglists
12944         * gst/gstpad.c: (gst_pad_proxy_getcaps):
12945           fix memleak
12946         * gst/gstpad.c: (gst_pad_event_default):
12947           make more effort on handling discont and clocks, g_warn if everything
12948           fails
12949         * gst/gststructure.c: (gst_structure_remove_fields),
12950         (gst_structure_remove_fields_valist):
12951         * gst/gststructure.h:
12952           add gst_structure_remove_fields(_valist)
12953         * gst/gsttag.c:
12954           fix doc glitch
12955
12956 2004-01-28  David Schleef  <ds@schleef.org>
12957
12958         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
12959         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
12960         Fix memory leakage of gst_caps_to_string().
12961
12962         Use GST_PTR_FORMAT instead of gst_caps_to_string():
12963         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
12964         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
12965         (gst_spider_identity_sink_loop_type_finding):
12966         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
12967         (find_suggest):
12968         * gst/gstpad.c: (gst_pad_try_relink_filtered),
12969         (gst_pad_set_explicit_caps):
12970         * gst/parse/grammar.y:
12971
12972 2004-01-28  David Schleef  <ds@schleef.org>
12973
12974         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
12975         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
12976         * docs/random/ds/0.9-suggested-changes: Notes from Company.
12977         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
12978         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
12979         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
12980         (gst_debug_log_default), (_gst_info_printf_extension),
12981         (_gst_info_printf_extension_arginfo):  Add printf extension.
12982         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
12983         * gst/gststructure.c: (gst_structure_to_string),
12984         (_gst_structure_parse_value): Use gst_value_deserialize() and
12985         remove old code.
12986         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
12987         (gst_value_deserialize_boolean), (gst_strtoi),
12988         (gst_value_deserialize_int), (gst_value_deserialize_double),
12989         (gst_value_deserialize_string), (gst_value_deserialize): Implement
12990         a bunch of deserialize functions and gst_value_deserialize.
12991         * gst/gstvalue.h: er, _de_serialize, not unserialize
12992         * testsuite/caps/string-conversions.c: (main): We don't currently
12993         handle (float) in caps, so convert these to (double).
12994         * testsuite/debug/Makefile.am: Add new test for the printf extension
12995         * testsuite/debug/printf_extension.c: (main): same
12996
12997 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12998
12999         * docs/random/company/time:
13000           Add some docs about clocking and time
13001
13002 2004-01-28  Julien MOUTTE <julien@moutte.net>
13003
13004         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
13005
13006 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13007
13008         * docs/pwg/advanced-clock.xml:
13009         * docs/pwg/advanced-dparams.xml:
13010         * docs/pwg/advanced-events.xml:
13011         * docs/pwg/advanced-interfaces.xml:
13012         * docs/pwg/advanced-midi.xml:
13013         * docs/pwg/advanced-request.xml:
13014         * docs/pwg/advanced-scheduling.xml:
13015         * docs/pwg/advanced-tagging.xml:
13016         * docs/pwg/advanced-types.xml:
13017         * docs/pwg/appendix-checklist.xml:
13018         * docs/pwg/building-boiler.xml:
13019         * docs/pwg/building-chainfn.xml:
13020         * docs/pwg/building-filterfactory.xml:
13021         * docs/pwg/building-pads.xml:
13022         * docs/pwg/building-props.xml:
13023         * docs/pwg/building-signals.xml:
13024         * docs/pwg/building-state.xml:
13025         * docs/pwg/building-testapp.xml:
13026         * docs/pwg/intro-basics.xml:
13027         * docs/pwg/intro-preface.xml:
13028         * docs/pwg/other-autoplugger.xml:
13029         * docs/pwg/other-sink.xml:
13030         * docs/pwg/other-source.xml:
13031         * docs/pwg/titlepage.xml:
13032           fix up id's
13033
13034 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13035
13036         * docs/95NonPath:
13037         * docs/HACKING:
13038         * docs/README:
13039         * docs/building-the-docs-on-debian:
13040           collect relevant bits of doc info
13041
13042 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13043
13044         * docs/pwg/advanced_tagging.xml:
13045           Half-assed commit so Thomas can re-arrange document IDs here to be
13046           consistent, too.
13047
13048 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13049
13050         * docs/manual/autoplugging.xml:
13051         * docs/manual/bins-api.xml:
13052         * docs/manual/bins.xml:
13053         * docs/manual/buffers-api.xml:
13054         * docs/manual/buffers.xml:
13055         * docs/manual/clocks.xml:
13056         * docs/manual/components.xml:
13057         * docs/manual/cothreads.xml:
13058         * docs/manual/debugging.xml:
13059         * docs/manual/dparams-app.xml:
13060         * docs/manual/dynamic.xml:
13061         * docs/manual/elements-api.xml:
13062         * docs/manual/elements.xml:
13063         * docs/manual/factories.xml:
13064         * docs/manual/gnome.xml:
13065         * docs/manual/goals.xml:
13066         * docs/manual/helloworld.xml:
13067         * docs/manual/helloworld2.xml:
13068         * docs/manual/init-api.xml:
13069         * docs/manual/intro.xml:
13070         * docs/manual/links-api.xml:
13071         * docs/manual/links.xml:
13072         * docs/manual/manual.xml:
13073         * docs/manual/motivation.xml:
13074         * docs/manual/pads-api.xml:
13075         * docs/manual/pads.xml:
13076         * docs/manual/plugins-api.xml:
13077         * docs/manual/plugins.xml:
13078         * docs/manual/programs.xml:
13079         * docs/manual/queues.xml:
13080         * docs/manual/quotes.xml:
13081         * docs/manual/schedulers.xml:
13082         * docs/manual/states-api.xml:
13083         * docs/manual/states.xml:
13084         * docs/manual/threads.xml:
13085         * docs/manual/typedetection.xml:
13086         * docs/manual/xml.xml:
13087           use chapter, part, section or misc as id starts for all bits
13088
13089 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13090
13091         * docs/gst/gstreamer-sections.txt:
13092           Fix up TITLE of the sections
13093
13094 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13095
13096         * docs/pwg/advanced_interfaces.xml:
13097           Add documentation on propertyprobing.
13098         * docs/pwg/advanced_events.xml:
13099         * docs/pwg/advanced_tagging.xml:
13100         * docs/pwg/building_boiler.xml:
13101         * docs/pwg/building_filterfactory.xml:
13102         * docs/pwg/pwg.xml:
13103           Move filterfactory and tagging into their own chapter, add a chapter
13104           on events. all these are empty placeholders that will be filled in
13105           some day.
13106
13107 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13108
13109         * docs/pwg/advanced_interfaces.xml:
13110           Docs for mixer interface. Also a check for website uploading.
13111
13112 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13113
13114         * docs/HACKING:
13115         * docs/Makefile.am:
13116         * docs/faq/Makefile.am:
13117         * docs/gst/Makefile.am:
13118         * docs/gst/tmpl/gstelement.sgml:
13119         * docs/gst/tmpl/gstplugin.sgml:
13120         * docs/gst/tmpl/gstreamer-unused.sgml:
13121         * docs/libs/Makefile.am:
13122         * docs/manual/Makefile.am:
13123         * docs/manuals.mak:
13124         * docs/pwg/Makefile.am:
13125         * docs/upload.mak:
13126           Separate out upload target and make it similar for
13127           both docbook and gtk-doc docs
13128
13129 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13130
13131         * docs/manuals.mak:
13132           Fix upload target to work with freedesktop
13133
13134 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13135
13136         * docs/pwg/advanced_types.xml:
13137           Add notes on creating your own types.
13138         * docs/pwg/building_boiler.xml:
13139         * docs/pwg/building_pads.xml:
13140         * docs/pwg/building_state.xml:
13141           Add some stuff about how to retrieve values from structures, how
13142           that relates to types and change layout slightly again to be almost
13143           perfect.
13144
13145 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13146
13147         * docs/pwg/advanced_dparams.xml:
13148         * docs/pwg/advanced_scheduling.xml:
13149           Change index layout slightly.
13150
13151 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13152
13153         * docs/pwg/advanced_clock.xml:
13154         * docs/pwg/advanced_interfaces.xml:
13155         * docs/pwg/advanced_midi.xml:
13156           General placeholders for now.
13157         * docs/pwg/advanced_request.xml:
13158           Explanation about sometimes and request pads.
13159         * docs/pwg/advanced_scheduling.xml:
13160           Concept of bytestream, loopfunctions and schedulers.
13161         * docs/pwg/building_boiler.xml:
13162           Add something about plugin-init.
13163
13164 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
13165
13166         * docs/pwg/building_pads.xml:
13167           Fix broken docbook
13168
13169 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13170
13171         * docs/pwg/advanced_interfaces.xml:
13172         * docs/pwg/pwg.xml:
13173           Add as a placeholder for future filling-in.
13174         * docs/pwg/basics_autoplugging.xml:
13175         * docs/pwg/basics_buffers.xml:
13176         * docs/pwg/basics_elements.xml:
13177         * docs/pwg/basics_events.xml:
13178         * docs/pwg/basics_plugins.xml:
13179         * docs/pwg/basics_types.xml:
13180           Remove, because unused (this is all in intro_basics.xml).
13181         * docs/pwg/building_signals.xml:
13182           Short intro to signals + reference to GObject docs - we really
13183           shouldn't go into these sort of things to deply because we don't
13184           use them that extensively anyway.
13185         * docs/pwg/building_state.xml:
13186           Explanation of states. Benjamin, please check.
13187         * docs/pwg/building_testapp.xml:
13188           Put everything in one page - putting only a few lines of content
13189           per page doesn't really make sense.
13190
13191           Time to get into the advanced topics. ;).
13192
13193 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13194
13195         * docs/pwg/advanced_types.xml:
13196           Finish documenting the current state of mimetypes.
13197         * docs/pwg/building_boiler.xml:
13198         * docs/pwg/building_chainfn.xml:
13199         * docs/pwg/building_pads.xml:
13200         * docs/pwg/building_props.xml:
13201         * docs/pwg/building_testapp.xml:
13202           Start documenting the "how to build a simple audio filter" part
13203           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
13204           states and (maybe?) a short introduction to capsnego in the chapter
13205           on pads (building_pads.xml). Capsnego should probably be explained
13206           fully in advanced_capsnego.xml or so.
13207
13208 2004-01-26  David Schleef  <ds@schleef.org>
13209
13210         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
13211         * gst/gstpad.h: Add new function to allow element to (somewhat)
13212         specify non-fixed caps on a pad.
13213         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
13214         that I added a few weeks ago.
13215
13216 2004-01-26  David Schleef  <ds@schleef.org>
13217
13218         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
13219           making try_set_caps() work with non-fixed caps.
13220
13221 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13222
13223         * docs/pwg/advanced_types.xml:
13224         * docs/pwg/intro_basics.xml:
13225         * docs/pwg/intro_preface.xml:
13226         * docs/pwg/pwg.xml:
13227         * docs/pwg/titlepage.xml:
13228           First try to resurrect the PWG. I'm halfway integrating the mimetypes
13229           in here (docs/random/mimetypes), and will from there on work on both
13230           updating outdated parts and adding missing parts.
13231           That doesn't mean I'll fix it completely, but I'll try at least. ;).
13232
13233 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
13234
13235         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
13236           policy is set
13237
13238 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13239
13240         * gst/gstelement.h:
13241           remove gst_element_factory_get_version. It doesn't exist anymore.
13242         * gst/gstplugin.c:
13243         * gst/gstplugin.h:
13244           remove gst_plugin_set_name and change gst_plugin_get_longname to
13245           gst_plugin_get_description to match code.
13246         * gst/gsterror.h:
13247           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
13248         * gst/gstpad.c: (gst_pad_try_set_caps):
13249           make it work with nonfixed caps.
13250           Note that even in the nonfixed case the link function of the pad
13251           that tries to set caps isn't called.
13252
13253 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13254
13255         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
13256           fix bug where buffer was not assembled correctly
13257         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
13258           silence by default
13259         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
13260           only seek if there's no more buffers that could work without seeking
13261
13262 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13263
13264         * gst/gsttag.c: (_gst_tag_initialize):
13265         * gst/gsttag.h:
13266           Add application tag (for encoding/muxing app).
13267
13268 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
13269
13270         * autogen.sh:
13271           make autopoint force, and libtoolize not copy
13272         * common/m4/as-docbook.m4:
13273           added docbook xml catalog setup check
13274         * common/m4/gst-doc.m4:
13275           use docbook check
13276
13277 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
13278
13279         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
13280         * gst/gsttag.h:
13281           add GstTagFlag
13282
13283 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13284
13285         * docs/gst/gstreamer-sections.txt:
13286         * docs/gst/tmpl/gst.sgml:
13287         * docs/gst/tmpl/gstbuffer.sgml:
13288         * docs/gst/tmpl/gstclock.sgml:
13289         * docs/gst/tmpl/gstelement.sgml:
13290         * docs/gst/tmpl/gstreamer-unused.sgml:
13291         * docs/gst/tmpl/gstxml.sgml:
13292           sync latest API changes to docs
13293
13294 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13295
13296         * gst/gstpluginfeature.c:
13297           fix doc snippet
13298         * tools/gst-inspect.c: (print_element_list):
13299           fix output of typefind
13300           add GPL header
13301         * tools/gst-launch.c:
13302           add GPL header
13303
13304 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13305
13306         * gst/elements/Makefile.am:
13307         * gst/elements/gstelements.c:
13308         * gst/elements/gsttypefindelement.c:
13309         * gst/elements/gsttypefindelement.h:
13310         * po/POTFILES.in:
13311         * po/fr.po:
13312         * po/nl.po:
13313           renamed gsttypefindelement to gsttypefind, conserving CVS history
13314
13315 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13316
13317         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
13318         * gst/gsttag.h:
13319           add some tags used in ogg as well
13320           fix _ in replaygain tags
13321
13322 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13323
13324         * gst/gsterror.h:
13325           fix wrong GST_LIBRARY_ERROR_ENCODE addition
13326
13327 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13328
13329         * gst/gstelement.c: (gst_element_error_full):
13330         * gst/gstelement.h:
13331           change _extended to _full
13332
13333 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13334
13335         reviewed by: <delete if not using a buddy>
13336
13337         * docs/gst/tmpl/gst.sgml:
13338         * docs/gst/tmpl/gstbuffer.sgml:
13339         * docs/gst/tmpl/gstclock.sgml:
13340         * docs/gst/tmpl/gstelement.sgml:
13341         * docs/gst/tmpl/gstreamer-unused.sgml:
13342         * docs/gst/tmpl/gstxml.sgml:
13343         * gst/gstelement.c: (gst_element_error_full):
13344         * gst/gstelement.h:
13345
13346 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
13347
13348         * gst/gstelement.h: fix _gst_element_error_printf prototype
13349
13350 2004-01-20  David Schleef  <ds@schleef.org>
13351
13352         * gst/gststructure.c: (gst_structure_to_string):
13353         Convert function to use gst_value_serialize().
13354         * gst/gstvalue.c: (gst_value_serialize_list),
13355         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
13356         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
13357         (gst_value_serialize_int), (gst_value_serialize_double),
13358         (gst_string_wrap), (gst_value_serialize_string),
13359         (gst_value_serialize), (gst_value_deserialize):
13360         * gst/gstvalue.h:
13361         Add implementations for serialize.
13362
13363 2004-01-20  Julien MOUTTE  <julien@moutte.net>
13364
13365         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
13366         we want to keep that one in the future or change xvidenc.c to use 
13367         another error.
13368
13369 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13370
13371         * gst/gstelement.c: (_gst_element_error_printf):
13372         * gst/gstelement.h:
13373           privatise function
13374
13375 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13376
13377         * docs/random/error:
13378           doc explaining error system
13379         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
13380           cleanup
13381
13382 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13383
13384         * gst/gst-i18n-app.h:
13385         * gst/gst-i18n-lib.h:
13386           remove inclusion of config.h
13387         * po/POTFILES.in:
13388         * po/nl.po:
13389           add gst/gstelement.c
13390
13391 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13392
13393         * po/nl.po: updated Dutch translation
13394
13395 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13396
13397         * gst/gsterror.c: (_gst_core_errors_init),
13398         (_gst_library_errors_init), (_gst_resource_errors_init),
13399         (_gst_stream_errors_init):
13400         remove ending punctuation dots
13401
13402 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13403
13404         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
13405         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
13406         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13407         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13408         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13409         use GST_ERROR_SYSTEM
13410
13411 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13412
13413         * gst/gstelement.c: (gst_element_error_printf),
13414         (gst_element_error_extended):
13415         * gst/gstelement.h:
13416           add a helper printf function so we can have NULL values passed.
13417
13418 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
13419
13420         * gst/gstelement.h:
13421           add G_STMT macros to gst_element_error, which isn't strictly
13422           necessary but people tell me to anyway.
13423
13424 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
13425
13426         * gst/Makefile.am:
13427         * gst/autoplug/gstspideridentity.c:
13428         (gst_spider_identity_sink_loop_type_finding):
13429         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
13430         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
13431         (gst_filesink_close_file), (gst_filesink_handle_event),
13432         (gst_filesink_chain):
13433         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
13434         (gst_filesrc_map_region), (gst_filesrc_get_read),
13435         (gst_filesrc_open_file):
13436         * gst/elements/gstidentity.c: (gst_identity_chain):
13437         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
13438         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
13439         (gst_pipefilter_chain), (gst_pipefilter_open_file):
13440         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
13441         * gst/gst.h:
13442         * gst/gst_private.h:
13443         * gst/gstelement.c: (gst_element_class_init),
13444         (gst_element_default_error), (gst_element_error_func),
13445         (gst_element_error_extended):
13446         * gst/gstelement.h:
13447         * gst/gsterror.c: (_gst_core_errors_init),
13448         (_gst_library_errors_init), (_gst_resource_errors_init),
13449         (_gst_stream_errors_init), (gst_error_get_message):
13450         * gst/gsterror.h:
13451         * gst/gstinfo.c: (_gst_debug_init):
13452         * gst/gstmarshal.list:
13453         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13454         (gst_pad_recover_caps_error), (gst_pad_pull):
13455         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
13456         * gst/schedulers/gstbasicscheduler.c:
13457         (gst_basic_scheduler_chainhandler_proxy),
13458         (gst_basic_scheduler_gethandler_proxy),
13459         (gst_basic_scheduler_cothreaded_chain):
13460         * po/POTFILES.in:
13461         * po/fr.po:
13462         * po/nl.po:
13463           change error signal
13464           add error categories
13465
13466 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
13467
13468         * gst/gsttag.c: (_gst_tag_initialize):
13469         * gst/gsttag.h:
13470         Add replaygain tag
13471
13472 2004-01-18  Colin Walters  <walters@verbum.org>
13473
13474         * examples/retag/retag.c: Call gst_init before processing
13475         program args.  Add g_assert to _link_many call.
13476
13477 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13478
13479         * gst/gstpad.c: (gst_pad_alloc_buffer):
13480           Return a newly allocated buffer when the pad has no peer.
13481
13482 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13483
13484         * gst/gstclock.c: (gst_clock_get_time):
13485           make it compile with gcc 2.95 again.
13486           Patch by Scott Wheeler
13487
13488 2004-01-15  David Schleef  <ds@schleef.org>
13489
13490         * gst/gstcaps.h:
13491         Added gst_caps_is_simple() macro.
13492         * testsuite/caps/caps.c: (test1):
13493         * testsuite/caps/intersect2.c: (main):
13494         * testsuite/caps/intersection.c: (main):
13495         Fixes to make 'make check' work again after removing
13496         gst_caps_is_chained().
13497
13498 2004-01-15  Leif Johnson <leif@ambient.2y.net>
13499
13500         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
13501         and additions to the MIDI document.
13502
13503 2004-01-15  David Schleef  <ds@schleef.org>
13504
13505         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
13506         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
13507         of GST_RPAD_, since we don't know if it's a real or ghost pad.
13508
13509 2004-01-15  David Schleef  <ds@schleef.org>
13510
13511         * gst/gstqueue.c:
13512         * gst/gstqueue.h:
13513         Fix the spelling of "treshold" and make min_threshold actually
13514         affect the queue.
13515
13516 2004-01-15  David Schleef  <ds@schleef.org>
13517
13518         * gst/gstcaps.c:
13519         Add lots of documentation.
13520         * gst/gstcaps.h:
13521         Deprecate a few functions.
13522         * gst/gstpad.c:
13523         Removed use of deprecated functions.
13524
13525 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13526
13527         * gst/gstpad.c: (gst_pad_is_linked):
13528         * gst/gstpad.h:
13529           implement gst_pad_is_linked
13530         * gst/gstelement.h:
13531           reserve space for initiate_state_change
13532
13533 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13534
13535         * gst/autoplug/gstspideridentity.c:
13536         (gst_spider_identity_sink_loop_type_finding):
13537           break infinite loop by just returning instead of looping
13538         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
13539           set event time difference correctly. Set it to 1 second instead
13540           of 100ms to be more tolerant
13541         * gst/gstelement.c: (gst_element_set_time):
13542           add debugging output
13543
13544 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13545
13546         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
13547           query if buffers are inside the pool, ignore events
13548
13549 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13550
13551         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
13552         (gst_clock_set_speed), (gst_clock_set_active),
13553         (gst_clock_is_active), (gst_clock_reset),
13554         (gst_clock_handle_discont):
13555         * gst/gstclock.h:
13556           deprecate old interface and disable functions that aren't in use
13557           anymore.
13558         * gst/gstelement.h:
13559         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
13560         (gst_element_set_time), (gst_element_adjust_time):
13561           add concept of "element time" and functions to get/set this time.
13562         * gst/gstelement.c: (gst_element_change_state):
13563           update element time correctly.
13564         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13565           This is a debug message, not a g_critical.
13566         * gst/gstpad.c: (gst_pad_event_default):
13567           handle discontinuous events right with element time.
13568         * gst/gstscheduler.c: (gst_scheduler_state_transition):
13569           update to clocking fixes.
13570           set clocks on elements in READY=>PAUSED. The old behaviour caused
13571           a wrong element time on the first element that started playing.
13572         * gst/schedulers/gstbasicscheduler.c:
13573         (gst_basic_scheduler_class_init):
13574         * gst/schedulers/gstoptimalscheduler.c:
13575         (gst_opt_scheduler_class_init):
13576           remove code that just implements the default behaviour.
13577         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
13578           update to use new clocking functions
13579         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
13580         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
13581           update to test new element time.
13582         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
13583           use _get_allowed_caps instead of _get_caps. This catches filtered
13584           caps correctly.
13585         * testsuite/debug/commandline.c:
13586           update for new GST_DEBUG syntax.
13587         * testsuite/threads/Makefile.am:
13588           disable a test that only works sometimes.
13589
13590 2004-01-13  Julien MOUTTE <julien@moutte.net>
13591
13592         * po/LINGUAS: Adding fr.
13593         * po/fr.po: Adding french translation.
13594
13595 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13596
13597         * gst/parse/grammar.y:
13598         * po/POTFILES.in:
13599         * po/nl.po:
13600         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
13601           translate parsing error messages
13602
13603 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13604
13605         * po/POTFILES.in: adding gst-launch
13606         * po/nl.po: updated translation, all 99 strings translated
13607         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
13608         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
13609           fix strings for translation
13610
13611 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13612
13613         * gst/gst.c:
13614           - capitalize beginnings of popt options
13615           - fix strings for translation
13616           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
13617
13618 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13619
13620         * po/README: add some notes on how to update translations
13621
13622 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13623
13624         * ABOUT-NLS: removed, is autogenerated from autopoint
13625         * autogen.sh: add autopoint stuff
13626         * configure.ac: fix up gettext stuff
13627         * gst/Makefile.am: add i18n headers to noinst_HEADERS
13628         * gst/elements/gsttypefindelement.c: add header include
13629         * gst/gettext.h: add header, copy from system-installed header
13630         * gst/gst-i18n-app.h: to be included by each app having translations
13631         * gst/gst-i18n-lib.h: to be included by each lib having translations
13632         * gst/gst.c: (init_pre): fix up gettext calls
13633         * gst/gst_private.h: remove i18n stuff, moving to separate headers
13634         * po/LINGUAS: the new way to specify translations present
13635         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
13636         * po/Makevars: the variables filled in for GStreamer
13637         * po/POTFILES.in: added new files with translations
13638         * po/de.po: has new strings
13639         * po/nl.po: readded, has new strings
13640
13641 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
13642
13643         * gst/gsttag.c: fix some strings marked for translation
13644
13645 2004-01-13  Iain <iain@prettypeople.org>
13646
13647         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
13648         group when we add an element to it, cos we unref it when we remove one
13649
13650 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
13651
13652         * testsuite/debug/commandline.c: (debug_not_reached):
13653         * testsuite/debug/output.c: (check_message):
13654           fix testsuite
13655
13656 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13657
13658         * examples/cutter/.cvsignore:
13659         * examples/helloworld/.cvsignore:
13660         * examples/launch/.cvsignore:
13661         * examples/manual/.cvsignore:
13662         * examples/mixer/.cvsignore:
13663         * examples/pingpong/.cvsignore:
13664         * examples/plugins/.cvsignore:
13665         * examples/queue/.cvsignore:
13666         * examples/queue2/.cvsignore:
13667         * examples/queue3/.cvsignore:
13668         * examples/queue4/.cvsignore:
13669         * examples/retag/.cvsignore:
13670         * examples/thread/.cvsignore:
13671         * examples/typefind/.cvsignore:
13672         * examples/xml/.cvsignore:
13673         * gst/.cvsignore:
13674         * gst/autoplug/.cvsignore:
13675         * gst/elements/.cvsignore:
13676         * gst/indexers/.cvsignore:
13677         * gst/parse/.cvsignore:
13678         * gst/registries/.cvsignore:
13679         * gst/schedulers/.cvsignore:
13680         * libs/gst/bytestream/.cvsignore:
13681         * libs/gst/control/.cvsignore:
13682         * libs/gst/getbits/.cvsignore:
13683         * tests/.cvsignore:
13684         * tests/bufspeed/.cvsignore:
13685         * tests/instantiate/.cvsignore:
13686         * tests/memchunk/.cvsignore:
13687         * tests/muxing/.cvsignore:
13688         * tests/sched/.cvsignore:
13689         * tests/seeking/.cvsignore:
13690         * tests/threadstate/.cvsignore:
13691         * testsuite/.cvsignore:
13692         * testsuite/caps/.cvsignore:
13693         * testsuite/cleanup/.cvsignore:
13694         * testsuite/dynparams/.cvsignore:
13695         * testsuite/plugin/.cvsignore:
13696         * tools/.cvsignore:
13697           update - this is huge, because it includes *.bb, *.bbg and *.da files
13698           which are generated for gcov.
13699
13700 2004-01-11  David Schleef  <ds@schleef.org>
13701
13702         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
13703         a function to parse integers in ways that strto[u]l() does not.
13704
13705 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13706
13707         * tools/gst-inspect.c: (print_caps):
13708           improve output of caps a bit
13709
13710 2004-01-11  David Schleef  <ds@schleef.org>
13711
13712         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
13713         inherit correct flags (READONLY and DONTKEEP).
13714
13715 2004-01-11  David Schleef  <ds@schleef.org>
13716
13717         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
13718         (gst_filesrc_map_region):
13719         * gst/gstbuffer.c: (_gst_buffer_initialize),
13720         (_gst_buffer_sub_free), (gst_buffer_default_copy),
13721         (gst_buffer_new), (gst_buffer_create_sub),
13722         (gst_buffer_is_span_fast), (gst_buffer_span):
13723         * gst/gstbuffer.h:
13724         Change GstBuffer private structure element names. (all files)
13725         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
13726         (gst_queue_link):
13727         * gst/gstqueue.h:
13728         Implement getcaps/pad_link functions that handle the case where
13729         there are data in the queue.
13730
13731 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13732
13733         * gst/elements/gstbufferstore.c:
13734           initialize debugging structure correctly
13735         * gst/elements/gsttee.c: (gst_tee_set_property):
13736           g_object_notify when property was changed
13737         * gst/elements/gsttypefindelement.c:
13738         (gst_type_find_element_change_state):
13739           clear caps correctly
13740
13741 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13742
13743         * gst/gstqueue.c: (gst_queue_init):
13744           Use better defaults for when a queue should block. This
13745           gets rid of jerky playback for quite a few files.
13746           It takes more memory.
13747
13748 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
13749
13750         (gst_xml_registry_parse_padtemplate):
13751           make critical message slightly more useful
13752
13753 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13754
13755         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
13756         (gst_debug_message_get), (gst_debug_log_default):
13757         * gst/gstinfo.h:
13758           Change gst_debug_log(_valist) to take a const format string.
13759           Change prototype of log function and functions using those to 
13760           take a GstDebugMessage instead of a string that requires using
13761           gst_debug_message_get.
13762
13763 2004-01-08  David Schleef  <ds@schleef.org>
13764
13765         * Makefile.am:
13766         * configure.ac:
13767         Add option --enable-gcov to build GStreamer with -fprofile-arcs
13768         and -ftest-coverage, which allows gcov to show information about
13769         testsuite coverage.
13770
13771 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13772
13773         * gst/gstutils.h:
13774           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
13775           GST_PARENT_CALL_WITH_DEFAULT
13776         * gst/elements/gstaggregator.c: 
13777         * gst/elements/gstbufferstore.c: 
13778         * gst/elements/gstfakesink.c: 
13779         * gst/elements/gstfakesrc.c: 
13780         * gst/elements/gstfdsink.c: 
13781         * gst/elements/gstfdsrc.c: 
13782         * gst/elements/gstfilesink.c: 
13783         * gst/elements/gstfilesrc.c: 
13784         * gst/elements/gstidentity.c: 
13785         * gst/elements/gstmd5sink.c: 
13786         * gst/elements/gstmultidisksrc.c:
13787         * gst/elements/gstpipefilter.c: 
13788         * gst/elements/gstshaper.c:
13789         * gst/elements/gststatistics.c:
13790         * gst/elements/gsttee.c:
13791         * gst/elements/gsttypefindelement.c:
13792           use them.
13793
13794 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
13795
13796         * docs/gst/gstreamer-docs.sgml: remove props
13797         * docs/gst/gstreamer-sections.txt: remove props
13798         * docs/gst/tmpl/gst.sgml:
13799         * docs/gst/tmpl/gstbin.sgml:
13800         * docs/gst/tmpl/gstbuffer.sgml:
13801         * docs/gst/tmpl/gstcaps.sgml:
13802         * docs/gst/tmpl/gstclock.sgml:
13803         * docs/gst/tmpl/gstelement.sgml:
13804         * docs/gst/tmpl/gstindex.sgml:
13805         * docs/gst/tmpl/gstobject.sgml:
13806         * docs/gst/tmpl/gstpad.sgml:
13807         * docs/gst/tmpl/gstpadtemplate.sgml:
13808         * docs/gst/tmpl/gstreamer-unused.sgml:
13809         * docs/gst/tmpl/gstthread.sgml:
13810         * docs/gst/tmpl/gstxml.sgml:
13811           sync with code reorganization
13812
13813 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
13814
13815         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
13816         Make the 'Could not find compatible pad' message more informative.
13817
13818 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13819                                                                                 
13820         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
13821           Fix for if we pass NULL as property to location.
13822         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
13823         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
13824           Fix for instantiate-test (see below).
13825         * gst/gststructure.c: (_gst_structure_parse_value):
13826           Fix compile error on gcc-2.96.
13827         * configure.ac:
13828         * tests/Makefile.am:
13829         * tests/instantiate/Makefile.am:
13830         * tests/instantiate/create.c: (create_all_elements), (main):
13831           Add a test that instantiates all elements. This makes it easy to
13832           track dead code for old API/design (like setting event functions
13833           on sink pads and so on).
13834
13835 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
13836
13837         * gst/gstcaps.c: (gst_caps_append_structure):
13838           Move the poisoning to allow a NULL structure
13839         * gst/gstevent.c: (_gst_event_free):
13840           When freeing a navigation event, free the structure
13841           also
13842
13843 2004-01-04  David Schleef  <ds@schleef.org>
13844
13845         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13846         Remove usage of gst_pad_proxy_fixate.
13847         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
13848         (gst_caps_split_one), (gst_caps_replace):
13849         Add poisoning code.
13850         * gst/gstmarshal.list:
13851         Add pointer__pointer for fixate signal
13852         * gst/gstpad.c: (gst_real_pad_class_init),
13853         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
13854         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
13855         (gst_pad_set_explicit_caps), (gst_pad_template_new):
13856         Add poisoning code. Add fixate signal on RealPad. Change
13857         set_explicit_caps() to take const GstCaps, like try_set_caps().
13858         * gst/gstpad.h:
13859         * testsuite/caps/Makefile.am:
13860         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
13861
13862 2004-01-03  David Schleef  <ds@schleef.org>
13863
13864         * gst/elements/gsttypefindelement.c:
13865         (gst_type_find_element_have_type), (gst_type_find_element_init):
13866         Use gst_pad_use_explicit_caps for src pad.
13867         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
13868         before using it.
13869
13870 2004-01-03  David Schleef  <ds@schleef.org>
13871
13872         * gst/gstelement.c: (gst_element_link_pads_filtered),
13873         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
13874         that linking was successful.
13875         * gst/gstpad.c: (gst_pad_link_free),
13876         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
13877         (gst_pad_link_try), (gst_pad_link_unnegotiate),
13878         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
13879         GstPadLinkReturn correctly between functions, and don't fail
13880         when DELAYED is used (DELAYED is very important).  Better
13881         cleanup on unlinking and unnegotiation.  Should fix some spider
13882         bugs.
13883
13884 2004-01-02  David Schleef  <ds@schleef.org>
13885
13886         * gst/gstelement.c: (gst_element_class_init),
13887         (gst_element_base_class_init): ->padtemplates should be cleared
13888         in base_init, since we need to have a fresh list for every
13889         class.  (Alternately, we chould copy the list and share the
13890         actual pad templates (not the list), but that would require
13891         changing every plugin to move pad template registration from
13892         base_init to class_init.)
13893
13894 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13895
13896         * gst/gstelement.c: (gst_element_class_add_pad_template):
13897           Refuse registering a pad template if another pad template
13898           with the same name already exists (#114715).
13899
13900 2004-01-02  David Schleef  <ds@schleef.org>
13901
13902         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
13903         (gst_caps_is_equal_fixed): Add new function.
13904         * gst/gstcaps.h: ditto.
13905         * gst/gstpad.c: (gst_real_pad_class_init),
13906         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
13907         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
13908         check new caps against existing caps -- if they're the same, return
13909         OK without renegotiating.  caps-nego-failed signal fixed so that
13910         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
13911         to save an extra caps copy.  Don't complete negotiation if a pad
13912         link function returns DELAYED.
13913
13914 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13915
13916         * gst/gstpad.c: (gst_pad_try_relink_filtered):
13917           Fix wrong g_return_if_fail
13918
13919 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
13920
13921         * gst/gstbin.c: (gst_bin_class_init):
13922         Change the marshalling of element_added/element_removed
13923         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
13924         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
13925
13926 2004-01-01  David Schleef  <ds@schleef.org>
13927
13928         * gst/gstpad.c: (gst_pad_set_explicit_caps),
13929         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
13930         (gst_pad_use_explicit_caps):
13931         * gst/gstpad.h:
13932         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
13933         to use an internal getcaps and link fuction so that negotiation
13934         always results in the explicitly set caps.
13935         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
13936         are particularly useful for decoders.
13937
13938 2003-12-31  David Schleef  <ds@schleef.org>
13939
13940         * gst/elements/gstidentity.c: (gst_identity_class_init),
13941         (gst_identity_init), (gst_identity_chain),
13942         (gst_identity_set_property), (gst_identity_get_property):
13943         * gst/elements/gstidentity.h:
13944         * gst/gstqueue.c: (gst_queue_init):
13945           Negotiation fixes.
13946
13947 2003-12-31  David Schleef  <ds@schleef.org>
13948
13949         * gst/gstcaps.c: (gst_caps_intersect),
13950         (_gst_caps_normalize_foreach), (gst_caps_normalize):
13951           Implement gst_caps_normalize().
13952         * testsuite/caps/normalisation.c: (main):
13953           Add an additional test
13954
13955 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
13956
13957         * gst/gstqueue.c: (gst_queue_init):
13958           use gst_pad_proxy_getcaps()
13959
13960 2003-12-31  David Schleef  <ds@schleef.org>
13961
13962         * gst/elements/gstshaper.c: (gst_shaper_link):
13963         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
13964         * gst/gstqueue.c: (gst_queue_link):
13965           Negotiation fixes.
13966
13967 2003-12-31  David Schleef  <ds@schleef.org>
13968
13969         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
13970         * gst/gstpad.h: Add functions that are useful as default pad
13971         link and fixate functions for elements.
13972
13973 2003-12-30  David Schleef  <ds@schleef.org>
13974
13975         * gst/gstpad.c: (gst_pad_link_try):
13976           Fix segfault when attempting to return to old caps
13977
13978 2003-12-29  David Schleef  <ds@schleef.org>
13979
13980         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
13981         (gst_caps_structure_simplify), (gst_caps_simplify):
13982         * gst/gstcaps.h:
13983           Add simplify function
13984         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
13985         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
13986         * gst/gstpad.h:
13987           Copy over srcnotify, sinknotify when calling old pad_link
13988           functions.  Add new is_negotiated() function.
13989         * gst/gststructure.c: (gst_structure_copy):
13990           Fix an incredibly stupid bug that should have been noticed
13991           weeks ago.  _copy() returned the argument, not the new copy.
13992
13993 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
13994
13995         * gst/gstcaps.c: (gst_caps_append):
13996           add sanity checks
13997         * gst/gstcaps.h: (gst_caps_debug):
13998           remove, it doesn't exist anymore.
13999         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
14000         (gst_element_threadsafe_properties_post_run):
14001           make debugging messages not clutter up THREAD debug category
14002         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
14003         (gst_element_change_state):
14004           update to new caps API
14005         * gst/gstinterface.c: (gst_implements_interface_cast):
14006           don't put vital code in g_return_if_fail
14007         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
14008         (gst_pad_link_filtered):
14009           add pst_pad_try_link and use it.
14010         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
14011           implement correctly, deprecate first one.
14012         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
14013           add and implement.
14014         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
14015           implement.
14016         (gst_pad_get_negotiated_caps):
14017           add and implement. Make GST_PAD_CAPS call this function.
14018         (gst_pad_get_caps):
14019           remove unneeded check..
14020         (gst_pad_recover_caps_error):
14021           disable, always return FALSE.
14022         (gst_real_pad_dispose):
14023           don't free caps and appfilter anymore, they're unused.
14024         * gst/gstpad.h:
14025           Reflect changes mentioned above.
14026         * gst/gstsystemclock.c: (gst_system_clock_wait):
14027           Make 'clock is way behind' a debugging message.
14028         * gst/gstthread.c: (gst_thread_change_state):
14029           Fix debugging message
14030
14031 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
14032
14033         * gst/gstinfo.h:
14034           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
14035         * docs/gst/tmpl/gstreamer-unused.sgml:
14036           removed all traces of cvs conflicts
14037
14038 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14039
14040         * configure.ac:
14041         * gst/schedulers/cothreads_compat.h:
14042         * libs/Makefile.am:
14043           remove last instances of wingo cothread usage
14044
14045 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14046
14047         * gst/gstplugin.c:
14048         * gst/gstversion.h.in:
14049         * gst/parse/grammar.y:
14050           change comment block from /** to /* when not gtk-doc comments
14051
14052 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14053
14054         * gst/gst.c: whitespace and doc style fixes
14055
14056 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
14057
14058         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
14059
14060 2003-12-24  Colin Walters  <walters@verbum.org>
14061
14062         * gst/elements/gsttypefindelement.c:
14063           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
14064           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
14065           Don't double-free caps.
14066
14067 2003-12-23  David Schleef  <ds@schleef.org>
14068
14069         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
14070           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
14071           Many little fixes and additions of debug statements to
14072           get rhythmbox working.
14073
14074 2003-12-23  Colin Walters  <walters@verbum.org>
14075
14076         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
14077         Use GST_PAD_LINK_SUCCESSFUL.
14078
14079 2003-12-23  David Schleef  <ds@schleef.org>
14080
14081         * gst/elements/gstaggregator.c:
14082         * gst/elements/gsttee.c:
14083           Use gst_pad_proxy_getcaps().
14084         * gst/gstpad.c:
14085         * gst/gstpad.h:
14086           Add gst_pad_proxy_getcaps(), which filter elements can use
14087           as a generic getcaps implementation.
14088           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
14089           was advertised.
14090
14091 2003-12-23  David Schleef  <ds@schleef.org>
14092
14093         * gst/gstpad.c:
14094           Rearrange/rewrite much of the pad negotiation code, since it
14095           resembled pasta.  This actually changes the way some
14096           negotiation works, since the previous code was inconsistent
14097           depending on how it was invoked.  Add (internal) structure
14098           GstPadLink, which is used to hold some information (more in
14099           the future) about the link between two pads.  Fixes a number
14100           of bugs, including random lossage of filter caps when the
14101           initial negotiation is delayed.  A few functions are still
14102           unimplemented.
14103         * gst/gstpad.h:
14104           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
14105           these when testing GstPadLinkReturn values instead of comparing
14106           directly.
14107
14108 2003-12-23  David Schleef  <ds@schleef.org>
14109
14110         * gst/gstvalue.c: 
14111         * gst/gstvalue.h:
14112           Rearrange lots of code.  Change registration of compare function
14113           into registration of compare/serialize/deserialize functions.
14114           Doesn't include implementation of gst_value_[de]serialize(),
14115           but that should be easy.
14116
14117 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
14118
14119         * docs/gst/gstreamer-sections.txt:
14120         * docs/gst/tmpl/gstprops.sgml: removed
14121         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
14122           David removed props and caps code, so let's remove their docs as well.
14123           Removed all no longer existing symbols from gstreamer-sections.txt
14124           
14125 2003-12-22  Colin Walters  <walters@verbum.org>
14126
14127         * gst/gsttaginterface.c, gst/gsttaginterface.h,
14128           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
14129           of tags directly.
14130
14131 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14132
14133         * gst/elements/gstelements.c:
14134           Set ranks of elements to NONE, so the autoplugger doesn't use them.
14135         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
14136           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
14137           gst_caps (peer).
14138
14139 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
14140
14141         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
14142         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
14143         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
14144         (gst_spider_identity_sink_loop_type_finding):
14145         * gst/autoplug/gstspideridentity.h:
14146           Fix autoplugging in spider element, so it works with new caps.
14147           This was mainly caused by identifying empty caps incorrectly.
14148
14149 2003-12-22  David Schleef  <ds@schleef.org>
14150
14151         * gststructure.c, gstvalue.c, gstvalue.h: Add
14152           gst_value_init_and_copy() and use it, to avoid silly mistakes in
14153           using g_value_copy()
14154
14155 2003-12-21  David Schleef  <ds@schleef.org>
14156
14157         * many, many files: Merge CAPS branch.  This includes:
14158           - implemention of GstValue and several GstValue types
14159           - implemention of GstStructure
14160           - entire rewrite of GstCaps
14161           - removal of GstProps
14162           - many changes to GstPad to compensate for new caps paradigm
14163           - removal of GstBufferpool
14164         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
14165         gstvalue.h, gst/gstcaps[2]*.[ch]:
14166           - rename gstcaps2.[ch] to gstcaps.[ch]
14167
14168 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
14169
14170         * gst/gstqueue.c: (gst_queue_handle_pending_events),
14171         (gst_queue_chain), (gst_queue_handle_src_event):
14172           implement timeout for sending events. Workaround for if the
14173           pipeline on this queue is not passing any data.
14174
14175 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
14176                                                                                 
14177         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
14178         * moved CVS to freedesktop.org