gst/gsturi.c: Fix potential endless loop.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
2
3         * gst/gsturi.c: (gst_element_make_from_uri):
4           Fix potential endless loop.
5
6 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7
8         * check/Makefile.am:
9           add gsttag
10         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
11         (main):
12           move over from testsuite dir and clean up
13         * configure.ac:
14         * gst/gsttag.c:
15         * testsuite/Makefile.am:
16         * testsuite/tags/.cvsignore:
17         * testsuite/tags/Makefile.am:
18         * testsuite/tags/merge.c:
19           remove testsuite/tags
20
21 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
22
23         * docs/gst/gstreamer-sections.txt:
24         * docs/gst/tmpl/gstenumtypes.sgml:
25         * win32/gstenumtypes.c:
26           clean up documentation build a little
27
28 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
29
30         * check/gstcheck.h:
31           add macros for checking refcounts on objects and caps
32         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
33           add some more unit tests
34         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
35         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
36           fix leaked refcounts (I hope :)) so unittest works
37         * gst/gstpad.h:
38           whitespace removal
39
40 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
41
42         * configure.ac: back to HEAD
43
44 === release 0.9.1 ===
45
46 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
47
48         * NEWS:
49         * RELEASE:
50           updated
51
52 2005-06-17  Andy Wingo  <wingo@pobox.com>
53
54         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
55         assert; it's always possible that the pad gets deactivated in
56         between the checks in gstpad.c and the implementation. Rely on
57         finish_preroll() to return a FLUSHING or similar instead of on the
58         assert.
59         
60         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
61         clock and post an EOS message if we come out of finish_preroll in
62         the playing state.
63
64 2005-06-16  David Schleef  <ds@schleef.org>
65
66         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
67         (gst_capsfilter_set_property): Allow NULL as possible value
68         for filter_caps property, indicating GST_CAPS_ANY.
69
70 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
71
72         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
73           fix debug output
74         * gst/schedulers/Makefile.am:
75           use libgst prefix
76         * gstreamer.spec.in:
77           fix spec for it
78
79 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
80
81         * gstreamer.spec.in:
82           clean up
83
84 2005-06-08  Andy Wingo  <wingo@pobox.com>
85
86         * gst/gstutils.c: RPAD fixes all around.
87         (gst_element_link_pads): Refcounting fixes.
88
89         * tools/gst-inspect.c:
90         * tools/gst-xmlinspect.c:
91         * parse/grammar.y:
92         * gst/base/gsttypefindhelper.c:
93         * gst/base/gstbasesink.c:
94         * gst/gstqueue.c: RPAD fixes.
95
96         * gst/gstghostpad.h:
97         * gst/gstghostpad.c: New ghost pad implementation as full proxy
98         pads. The tricky thing is they provide both source and sink
99         interfaces, since they proxy the internal pad for the external
100         pad, and vice versa. Implement with lower-level ProxyPad objects,
101         with the interior proxy pad as a child of the exterior ghost pad.
102         Should write a doc on this.
103         
104         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
105         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
106         gst_object API.
107         
108         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
109         pads are real pads. No ghost pads in this file. Not documenting
110         the myriad s/RPAD/PAD/ and REALIZE fixes.
111         (gst_pad_class_init): Add properties for "direction" and
112         "template". Both are construct-only, so they can't change during
113         the life of the pad. Fixes properly deriving from GstPad.
114         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
115         derived objects, just set properties when creating the objects via
116         g_object_new.
117         (gst_pad_get_parent): Implement as a function, return NULL if the
118         parent is not an element.
119         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
120         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
121         
122         * gst/gstobject.c (gst_object_class_init): Make name a construct
123         property. Don't set it in the object init.
124
125         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
126         with UNKNOWN direction.
127         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
128         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
129         (gst_element_remove_pad): Remove ghost-pad special cases.
130         (gst_element_pads_activate): Remove rpad cruft.
131
132         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
133         catch the pad's-parent-not-an-element case.
134
135         * gst/gst.h: Include gstghostpad.h.
136
137         * gst/gst.c (init_post): No more real, ghost pads.
138
139         * gst/Makefile.am: Add gstghostpad.[ch].
140
141         * check/Makefile.am:
142         * check/gst/gstbin.c:
143         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
144         into a bin creates ghost pads, and that the refcounts are right.
145         Partly moved from gstbin.c.
146
147 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
148
149         * check/gst-libs/.cvsignore:
150         * check/gst/.cvsignore:
151         * check/pipelines/.cvsignore:
152           ignore more
153         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
154         (START_TEST), (cleanup_suite), (main):
155           add some tests related to cleanup after running pipelines
156
157 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
158
159         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
160           add a testsuite for GstBuffer
161
162 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
163
164         * gst/gstminiobject.h:
165           add defines for accessing the refcount
166
167 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
168
169         * Makefile.am: added support for html unit test coverage reports
170
171 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
172
173         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
174           Free existing caps if the capsfilter changes. Add a FIXME about
175           setting those caps on the pads.
176
177         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
178           Before adding a ghost pad to a parent bin, check that there isn't
179           already one for the element on the bin. Prevents infinite recursion
180           when using decodebin in parse pipelines. Andy says he'll rewrite the
181           way this works anyway, so ignore the hack.
182
183 2005-06-02  Andy Wingo  <wingo@pobox.com>
184
185         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
186         file size, pass it on to the type find helper.
187
188         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
189         segment_start and segment_end properly according to the seek
190         method. Segment_end is still a bit flaky because offset can be
191         negative for CUR and END cases, but it takes -1 as an "unset"
192         value.
193
194 2005-06-02  Wim Taymans  <wim@fluendo.com>
195
196         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
197         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
198         (gst_basesink_activate):
199         * gst/base/gstbasesink.h:
200         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
201         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
202         (gst_pad_query), (gst_pad_start_task):
203         * gst/gstpad.h:
204         * gst/gstqueue.c: (gst_queue_bufferalloc),
205         (gst_queue_handle_sink_event), (gst_queue_chain):
206         Bufferalloc: return GstFlowReturn to more accuratly report
207         why allocation failed.
208
209 2005-06-02  Wim Taymans  <wim@fluendo.com>
210
211         * gst/gstpipeline.c: (gst_pipeline_send_event):
212         Take snapshot of state without blocking.
213
214 2005-06-02  Wim Taymans  <wim@fluendo.com>
215
216         * docs/design/part-TODO.txt:
217         * docs/design/part-caps.txt:
218         * docs/design/part-clocks.txt:
219         * docs/design/part-negotiation.txt:
220         * docs/design/part-preroll.txt:
221         Small doc updates 
222
223 2005-05-30  Wim Taymans  <wim@fluendo.com>
224
225         * gst/elements/gstidentity.c: (gst_identity_event),
226         (gst_identity_transform), (gst_identity_get_property):
227         Protect last_message property as it is accessed from
228         multiple threads.
229
230 2005-05-30  Wim Taymans  <wim@fluendo.com>
231
232         * gst/gstelement.c: (gst_element_init),
233         (gst_element_pads_activate), (gst_element_change_state):
234         Slicker pad activation code.
235
236 2005-05-30  Wim Taymans  <wim@fluendo.com>
237
238         * gst/Makefile.am:
239         * gst/gstelement.h:
240         * gst/gstelementfactory.h:
241         * gst/gsttypes.h:
242         Move elementfactory methods to separate .h file.
243
244 2005-05-30  Wim Taymans  <wim@fluendo.com>
245
246         * docs/design/part-overview.txt:
247         * gst/gstsystemclock.h:
248         Small typo fixes, doc updates.
249
250 2005-05-30  Wim Taymans  <wim@fluendo.com>
251
252         * gst/gst.c: (gst_init_get_popt_table), (init_post),
253         (init_popt_callback):
254         Remove cpu-opt flag.
255
256 2005-05-30  Wim Taymans  <wim@fluendo.com>
257
258         * gst/gstbuffer.c: (gst_subbuffer_finalize),
259         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
260         * gst/gstbuffer.h:
261         Avoid typechecking in places where not needed.
262         Added accessor for malloc_data.
263
264 2005-05-30  Wim Taymans  <wim@fluendo.com>
265
266         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
267         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
268         (gst_pad_configure_sink), (gst_pad_configure_src),
269         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
270         (gst_pad_start_task):
271         Propagate errors from _set_caps() in configure_src/sink
272         functions instead of returning TRUE.
273         FLUSH events can travel up and downstream
274
275
276 2005-05-30  Wim Taymans  <wim@fluendo.com>
277
278         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
279         (gst_basesink_activate):
280         Handle EOS in preroll.
281
282 2005-05-30  Wim Taymans  <wim@fluendo.com>
283
284         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
285         (gst_queue_loop), (gst_queue_handle_src_event):
286         Remove old pieces of code
287         Flushing the queue in an upstream event is a very bad idea.
288
289 2005-05-26  Andy Wingo  <wingo@pobox.com>
290
291         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
292         gst_value_set_mini_object so as to add a ref on the object (which
293         will be removed when the value is unset).
294
295         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
296         arg type in ::handoff.
297
298         * gst/gstelement.c (gst_element_change_state): Also deactivate
299         pads in READY->NULL, just in case the element didn't make it to
300         PAUSED. Wingo tested, Wim approved.
301
302 2005-05-26  Wim Taymans  <wim@fluendo.com>
303
304         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
305         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
306         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
307         A flushing pad cannot be used to alloc_buffer from.
308
309 2005-05-26  Wim Taymans  <wim@fluendo.com>
310
311         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
312         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
313         (gst_bus_source_dispatch), (gst_bus_source_finalize),
314         (gst_bus_create_watch), (gst_bus_add_watch_full):
315         * gst/gstbus.h:
316         Implement a real GSource and use g_main_context_wakeup() to
317         signal new messages instead of the socketpair.
318
319 2005-05-25  Wim Taymans  <wim@fluendo.com>
320
321         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
322         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
323         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
324         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
325         (gst_pad_send_event), (gst_pad_start_task):
326         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
327         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
328         (gst_queue_sink_activate), (gst_queue_src_activate),
329         (gst_queue_change_state):
330         * gst/gstqueue.h:
331         Fix state changes for non sinks. We now change sinks, then elements
332         with unconnected srcpads, then the rest.
333         More efficient queue unlocking in flush and state changes.
334         Set the pad activate mode even if it does not have an activate
335         function.
336
337 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
338
339         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
340           Don't go in pull mode for non-seekable sources.
341         * gst/elements/gsttypefindelement.h:
342         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
343         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
344         (free_entry), (stop_typefinding),
345         (gst_type_find_element_handle_event), (find_peek),
346         (gst_type_find_element_chain), (do_pull_typefind),
347         (gst_type_find_element_change_state):
348           Allow typefinding (w/o seeking) in push-mode, simplified version
349           of what was in 0.8.
350         * gst/gstutils.c: (gst_buffer_join):
351         * gst/gstutils.h:
352           gst_buffer_join() from 0.8.
353
354 2005-05-25  Wim Taymans  <wim@fluendo.com>
355
356         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
357         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
358         (gst_pad_send_event), (gst_pad_start_task):
359         Disable attempt at mode switching until it is figured out.
360
361 2005-05-25  Wim Taymans  <wim@fluendo.com>
362
363         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
364         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
365         (gst_basesink_finish_preroll), (gst_basesink_chain),
366         (gst_basesink_loop), (gst_basesink_activate),
367         (gst_basesink_change_state):
368         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
369         (gst_basesrc_get_range), (gst_basesrc_loop),
370         (gst_basesrc_activate):
371         * gst/elements/gsttee.c: (gst_tee_sink_activate):
372         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
373         (gst_real_pad_init), (gst_real_pad_set_property),
374         (gst_real_pad_get_property), (gst_pad_set_active),
375         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
376         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
377         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
378         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
379         (gst_pad_event_default_dispatch), (gst_pad_event_default),
380         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
381         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
382         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
383         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
384         (gst_pad_stop_task):
385         * gst/gstpad.h:
386         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
387         (gst_queue_loop), (gst_queue_src_activate):
388         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
389         (gst_task_get_state):
390         * gst/gsttask.h:
391         * gst/schedulers/threadscheduler.c:
392         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
393         Implement gst_pad_pause/start/stop_task(), take STREAM lock
394         in task function.
395         Remove ACTIVE pad flag, use FLUSHING everywhere
396         Added _pad_chain(), _pad_get_range() to call chain/getrange 
397         functions.
398         Add locks around IS_FLUSHING when reading.
399         Take STREAM lock in chain(), get_range() functions so plugins
400         don't need to take it anymore.
401         
402
403
404 2005-05-25  Wim Taymans  <wim@fluendo.com>
405
406         * tools/gst-launch.c: (event_loop):
407         Unref message after using its contents instead of
408         before.
409
410 2005-05-24  Wim Taymans  <wim@fluendo.com>
411
412         * docs/design/draft-ghostpads.txt:
413         * docs/design/draft-push-pull.txt:
414         * docs/design/draft-query.txt:
415         * docs/design/part-overview.txt:
416         Docs updates, added general overview doc.
417
418 2005-05-21  David Schleef  <ds@schleef.org>
419
420         * docs/gst/tmpl/old/GstBin.sgml:
421         * docs/gst/tmpl/old/GstBuffer.sgml:
422         * docs/gst/tmpl/old/GstCaps.sgml:
423         * docs/gst/tmpl/old/GstClock.sgml:
424         * docs/gst/tmpl/old/GstCompat.sgml:
425         * docs/gst/tmpl/old/GstData.sgml:
426         * docs/gst/tmpl/old/GstElement.sgml:
427         * docs/gst/tmpl/old/GstEvent.sgml:
428         * docs/gst/tmpl/old/GstIndex.sgml:
429         * docs/gst/tmpl/old/GstStructure.sgml:
430         * docs/gst/tmpl/old/GstTag.sgml:
431         * docs/gst/tmpl/old/cothreads.sgml:
432         * docs/gst/tmpl/old/cothreads_compat.sgml:
433         * docs/gst/tmpl/old/gettext.sgml:
434         * docs/gst/tmpl/old/gobject2gtk.sgml:
435         * docs/gst/tmpl/old/grammar.tab.sgml:
436         * docs/gst/tmpl/old/gst-i18n-app.sgml:
437         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
438         * docs/gst/tmpl/old/gst_private.sgml:
439         * docs/gst/tmpl/old/gstaggregator.sgml:
440         * docs/gst/tmpl/old/gstarch.sgml:
441         * docs/gst/tmpl/old/gstatomic_impl.sgml:
442         * docs/gst/tmpl/old/gstbufferstore.sgml:
443         * docs/gst/tmpl/old/gstdata_private.sgml:
444         * docs/gst/tmpl/old/gstdisksink.sgml:
445         * docs/gst/tmpl/old/gstdisksrc.sgml:
446         * docs/gst/tmpl/old/gstelementfactory.sgml:
447         * docs/gst/tmpl/old/gstextratypes.sgml:
448         * docs/gst/tmpl/old/gstfakesink.sgml:
449         * docs/gst/tmpl/old/gstfakesrc.sgml:
450         * docs/gst/tmpl/old/gstfdsink.sgml:
451         * docs/gst/tmpl/old/gstfdsrc.sgml:
452         * docs/gst/tmpl/old/gstfilesink.sgml:
453         * docs/gst/tmpl/old/gstfilesrc.sgml:
454         * docs/gst/tmpl/old/gsthttpsrc.sgml:
455         * docs/gst/tmpl/old/gstidentity.sgml:
456         * docs/gst/tmpl/old/gstindexfactory.sgml:
457         * docs/gst/tmpl/old/gstmarshal.sgml:
458         * docs/gst/tmpl/old/gstmd5sink.sgml:
459         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
460         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
461         * docs/gst/tmpl/old/gstpadtemplate.sgml:
462         * docs/gst/tmpl/old/gstpipefilter.sgml:
463         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
464         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
465         * docs/gst/tmpl/old/gstshaper.sgml:
466         * docs/gst/tmpl/old/gstspider.sgml:
467         * docs/gst/tmpl/old/gstspideridentity.sgml:
468         * docs/gst/tmpl/old/gststatistics.sgml:
469         * docs/gst/tmpl/old/gsttee.sgml:
470         * docs/gst/tmpl/old/gsttimecache.sgml:
471         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
472         * docs/gst/tmpl/old/gstxmlregistry.sgml:
473         * docs/gst/tmpl/old/gthread-cothreads.sgml:
474         * docs/gst/tmpl/old/types.sgml:
475           I didn't intend to add these or check them in.
476
477 2005-05-19  David Schleef  <ds@schleef.org>
478
479         * configure.ac: Use -no-common everywhere.  In a sane world, it
480           would be the default in libtool, because without it, you can't
481           build DLLs on Windows.
482         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
483         * docs/gst/gstreamer-sections.txt:
484         * docs/gst/tmpl/gstcpu.sgml:
485         * docs/gst/tmpl/gstdata.sgml:
486         * docs/gst/tmpl/gstthread.sgml:
487
488 2005-05-19  David Schleef  <ds@schleef.org>
489
490         * gst/gstminiobject.c: (gst_value_set_mini_object),
491         (gst_value_take_mini_object), (gst_value_get_mini_object):
492         * gst/gstminiobject.h: Add GValue set/get functions.
493
494 2005-05-19  Wim Taymans  <wim@fluendo.com>
495
496         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
497         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
498         (gst_subbuffer_init), (gst_buffer_is_span_fast):
499         * gst/gstbuffer.h:
500         * gst/gstbus.c: (gst_bus_post):
501         * gst/gstelement.c: (gst_element_get_random_pad):
502         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
503         Make subbufer unref the parent in finalize.
504         some more debugging info.
505
506
507 2005-05-19  Wim Taymans  <wim@fluendo.com>
508
509         * gst/base/gstbasesink.c: (gst_basesink_class_init),
510         (gst_basesink_init), (gst_basesink_finalize),
511         (gst_basesink_activate), (gst_basesink_change_state):
512         Don't free preroll queue too early.
513
514 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
515
516         * gst/Makefile.am:
517         * gst/ROADMAP:
518           Hi, I'm outdated. Please shoot me.
519
520 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
521
522         * gst/gstpipeline.c: (gst_pipeline_send_event):
523           Do not access variables after they have been deleted.
524
525 2005-05-19  Wim Taymans  <wim@fluendo.com>
526
527         * tools/gst-inspect.c: (print_plugin_features):
528         A plugin feature does unfortunatly not use the
529         object name yet...
530
531 2005-05-18  Wim Taymans  <wim@fluendo.com>
532
533         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
534         Port _span() functions to new subbuffers.
535
536 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
537
538         * gst/gstbin.c: (gst_bin_add_func):
539           Fix clock settery in bins when adding kids after the clock has
540           been selected.
541
542 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
543
544         * gst/elements/gstidentity.c: (gst_identity_class_init):
545           Workaround until signals support GstMiniObject.
546
547 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
548
549         * gst/gstbuffer.c:
550         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
551
552 2005-05-18  Wim Taymans  <wim@fluendo.com>
553
554         * gst/base/Makefile.am:
555         * gst/base/gstadapter.c: (gst_adapter_base_init),
556         (gst_adapter_class_init), (gst_adapter_init),
557         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
558         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
559         (gst_adapter_flush), (gst_adapter_available),
560         (gst_adapter_available_fast):
561         * gst/base/gstadapter.h:
562         Ported and added adapter to the base classes.
563
564 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
565
566         * gst/gst.c:
567         * gst/gstmessage.c:
568           Make sure the class is reffed/unreffed once before threads can be
569           used.  Fixes #304551.
570
571 2005-05-17  Wim Taymans  <wim@fluendo.com>
572
573         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
574         (gst_basesink_chain_unlocked), (gst_basesink_activate):
575         * gst/gstminiobject.c: (gst_mini_object_get_type),
576         (gst_mini_object_free):
577         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
578         (gst_pad_push), (gst_pad_push_event):
579         * gst/gstqueue.c: (gst_queue_change_state):
580         Don't queue buffers in basesink when we are flushing.
581         Unref buffer when flushing in basesink.
582         Flush queue when going to READY
583         Unref buffer when _push() returns an error.
584         Don't free MiniObject instance when refcount is incremented
585         in _finalize() so that we can recover objects.
586
587 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
588
589         * docs/manual/advanced-schedulers.xml:
590         * docs/manual/appendix-checklist.xml:
591         * docs/pwg/advanced-clock.xml:
592         * docs/pwg/advanced-interfaces.xml:
593         * docs/pwg/advanced-request.xml:
594         * docs/pwg/advanced-types.xml:
595         * docs/pwg/intro-preface.xml:
596         * examples/plugins/example.c: (gst_example_get_type),
597         (gst_example_class_init), (gst_example_chain),
598         (gst_example_set_property), (gst_example_get_property),
599         (gst_example_change_state), (plugin_init):
600         * examples/plugins/example.h:
601           small doc fixes
602
603 2005-05-17  Wim Taymans  <wim@fluendo.com>
604
605         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
606         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
607         * gst/gstqueue.c: (gst_queue_change_state):
608         Clear queue when going to READY.
609         Remove IN_SETCAPS flag too.
610
611 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
612
613         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
614           Remove implicit cast from gboolean to GstElementStateReturn;
615           make sure we still return failure in paused => ready case if
616           the parent class fails to change state and our own stop 
617           vfunc succeeds.
618
619 2005-05-17  Wim Taymans  <wim@fluendo.com>
620
621         * tools/gst-launch.c: (event_loop):
622         Message was unreffed too soon.
623
624 2005-05-16  Andy Wingo  <wingo@pobox.com>
625
626         * gst/gstbin.c (sink_iterator_filter): Err... um...
627
628         * check/gst/gstbin.c (test_ghost_pads): New test for the
629         ghosting-if-elements-not-in-same-bin behavior.
630
631 2005-05-16  David Schleef  <ds@schleef.org>
632
633         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
634         accessing refcount directly.
635
636 2005-05-15  David Schleef  <ds@schleef.org>
637
638         * check/Makefile.am: remove GstData checks
639         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
640         * gst/Makefile.am: add miniobject, remove data
641         * gst/gst.h: add miniobject, remove data
642         * gst/gstdata.c: remove
643         * gst/gstdata.h: remove
644         * gst/gstdata_private.h: remove
645         * gst/gsttypes.h: remove GstEvent and GstMessage
646         * gst/gstelement.c: (gst_element_post_message): fix for API changes
647         * gst/gstmarshal.list: change BOXED -> OBJECT
648
649         Implement GstMiniObject.
650         * gst/gstminiobject.c:
651         * gst/gstminiobject.h:
652
653         Modify to be subclasses of GstMiniObject.
654         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
655         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
656         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
657         (gst_subbuffer_get_type), (gst_subbuffer_init),
658         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
659         (gst_buffer_span):
660         * gst/gstbuffer.h:
661         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
662         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
663         (_gst_event_copy), (gst_event_new):
664         * gst/gstevent.h:
665         * gst/gstmessage.c: (_gst_message_initialize),
666         (gst_message_get_type), (gst_message_class_init),
667         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
668         (gst_message_new), (gst_message_new_error),
669         (gst_message_new_warning), (gst_message_new_tag),
670         (gst_message_new_state_changed), (gst_message_new_application):
671         * gst/gstmessage.h:
672         * gst/gstprobe.c: (gst_probe_perform),
673         (gst_probe_dispatcher_dispatch):
674         * gst/gstprobe.h:
675         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
676         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
677         (_gst_query_copy), (gst_query_new):
678
679         Update elements for GstData -> GstMiniObject changes
680         * gst/gstquery.h:
681         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
682         (gst_queue_chain), (gst_queue_loop):
683         * gst/elements/gstbufferstore.c:
684         (gst_buffer_store_add_buffer_func),
685         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
686         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
687         (gst_fakesink_render):
688         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
689         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
690         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
691         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
692         (gst_filesrc_create_read):
693         * gst/elements/gstidentity.c: (gst_identity_class_init):
694         * gst/elements/gsttypefindelement.c:
695         (gst_type_find_element_src_event), (free_entry_buffers),
696         (gst_type_find_element_handle_event):
697         * libs/gst/dataprotocol/dataprotocol.c:
698         (gst_dp_header_from_buffer):
699         * libs/gst/dataprotocol/dataprotocol.h:
700         * libs/gst/dataprotocol/dp-private.h:
701
702 2005-05-15  David Schleef  <ds@schleef.org>
703
704         * gst/elements/gstelements.c: Don't include headers that were
705         just removed.
706
707 2005-05-15  David Schleef  <ds@schleef.org>
708
709         * gst/elements/Makefile.am: Remove some elements that don't
710         need to be in the core (or even exist at all).
711         * gst/elements/gstaggregator.c:
712         * gst/elements/gstaggregator.h:
713         * gst/elements/gstmd5sink.c:
714         * gst/elements/gstmd5sink.h:
715         * gst/elements/gstmultifilesrc.c:
716         * gst/elements/gstmultifilesrc.h:
717         * gst/elements/gstpipefilter.c:
718         * gst/elements/gstpipefilter.h:
719         * gst/elements/gstshaper.c:
720         * gst/elements/gstshaper.h:
721         * gst/elements/gststatistics.c:
722         * gst/elements/gststatistics.h:
723         * po/POTFILES.in: Remove above files.
724
725 2005-05-14  Andy Wingo  <wingo@pobox.com>
726
727         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
728         so as to get the refs right.
729         (sink_iterator_filter): New function, wraps bin_element_is_sink,
730         unreffing objects that don't pass the filter.
731
732         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
733         gst_element_set_bus.
734         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
735         normal cases, this will destroy the bus.
736
737         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
738         object.
739
740         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
741         has no sinks.
742
743 2005-05-13  Andy Wingo  <wingo@pobox.com>
744
745         * gst/gstutils.c (gst_element_link_pads): Instead of calling
746         gst_pad_link, call pad_link_maybe_ghosting,
747         (pad_link_maybe_ghosting): Links pads, making sure that the
748         elements being linked are in the same bin.
749         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
750         Helpers for pad_link_maybe_ghosting.
751
752 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
753
754         * configure.ac:
755           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
756
757 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
758
759         * docs/design/part-element-source.txt:
760           Mention GstPushSrc
761
762 2005-05-12  Wim Taymans  <wim@fluendo.com>
763
764         * gst/base/gstbasesink.c: (gst_basesink_init),
765         (gst_basesink_activate):
766         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
767         (gst_basesrc_is_seekable):
768         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
769         (bin_element_is_sink), (gst_bin_change_state):
770         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
771         * gst/gstelement.h:
772         Identify sinks by their flag to avoid overly complicated
773         checks (fow now).
774         Do state changes even for elements not reachable from the
775         sinks.
776         BaseSink is a sink now :)
777         Some more debugging info in the basesrc.
778
779
780 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
781
782         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
783           Implement _query on a bin, similar to _send_event.
784
785 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
786
787         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
788           Discont event offset format should be GST_FORMAT_BYTES,
789           not GST_FORMAT_TIME.
790
791 2005-05-12  Wim Taymans  <wim@fluendo.com>
792
793         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
794         Same fix as Ronald's but without the signal. 
795
796 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
797
798         * gst/gstutils.c: (gst_element_query_position):
799           No, an element is not a pad.
800
801 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
802
803         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
804         (gst_bin_get_state):
805           If a child is removed from a bin while we remove the child from
806           the bin and while we're retrieving its state, signal this to the
807           get_state function so we abort the wait (instead of waiting for
808           a timeout) and can immediately re-iterate over all other elements.
809
810 2005-05-12  Wim Taymans  <wim@fluendo.com>
811
812         * gst/base/Makefile.am:
813         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
814         (gst_basesrc_start):
815         * gst/base/gstbasesrc.h:
816         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
817         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
818         (gst_pushsrc_init), (gst_pushsrc_create):
819         * gst/base/gstpushsrc.h:
820         Added is_seekable to BaseSrc
821         Added simple PushSrc.
822
823 2005-05-11  Wim Taymans  <wim@fluendo.com>
824
825         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
826         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
827         (gst_element_link_pads), (gst_element_query_position),
828         (gst_element_query_convert), (intersect_caps_func),
829         (gst_pad_query_position), (gst_pad_query_convert):
830         Fix refcounting in utils function.
831         No point in trying to activate a pad when it's added, it could
832         be added from the state change function and then we deadlock, the
833         element has to decide what to do.
834
835 2005-05-10  Andy Wingo  <wingo@pobox.com>
836
837         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
838         *all* the arguments.
839
840         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
841         stream lock if it's a FLUSH_DONE; normal flushes don't get the
842         lock (according to the docs -- if this is wrong change the docs).
843
844         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
845         flush messages in the NULL state.
846
847         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
848         message immediately and return.
849         (gst_bus_set_flushing): New function. If a bus is flushing, it
850         flushes out any queued messages and immediately unrefs new
851         messages. This is so when an element goes to NULL, all of the
852         unhandled messages coming from it can be freed, and their
853         references to the element dropped. In other words: message source
854         ref considered harmful :P
855
856         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
857         we're finished with it.
858
859         * gst/gstmessage.c (gst_message_new_state_changed): 
860
861 2005-05-10  Wim Taymans  <wim@fluendo.com>
862
863         * gst/gstvalue.c: (gst_value_compare_flags),
864         (gst_value_serialize_flags), (gst_value_deserialize_flags),
865         (_gst_value_initialize):
866         Added flags serialize/deserialize/compare code.
867
868 2005-05-09  Andy Wingo  <wingo@pobox.com>
869
870         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
871         Intersect the peer's caps with our caps.
872
873 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
874
875         * gst/base/gsttypefindhelper.c: (helper_find_peek):
876         * gst/elements/gsttypefindelement.c: (find_peek):
877           Handle negative offsets better. Fixes decodebin.
878
879 2005-05-09  Wim Taymans  <wim@fluendo.com>
880
881         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
882         (gst_base_transform_event):
883         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
884         Implement accept_caps.
885         Fix silly lock/unlock mismatch in base class.
886
887 2005-05-09  Wim Taymans  <wim@fluendo.com>
888
889         * docs/design/draft-push-pull.txt:
890         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
891         * gst/elements/gstfilesink.c: (gst_filesink_init),
892         (gst_filesink_query):
893         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
894         (gst_type_find_handle_src_query), (find_element_get_length):
895         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
896         * gst/gstelement.h:
897         * gst/gstmessage.c:
898         * gst/gstmessage.h:
899         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
900         (gst_real_pad_get_caps_unlocked),
901         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
902         (gst_pad_event_default_dispatch), (gst_pad_event_default),
903         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
904         (gst_real_pad_dispose), (gst_real_pad_finalize),
905         (gst_pad_load_and_link), (gst_pad_save_thyself),
906         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
907         (gst_pad_check_pull_range), (gst_pad_pull_range),
908         (gst_pad_template_get_type), (gst_pad_template_class_init),
909         (gst_pad_template_init), (gst_pad_template_dispose),
910         (name_is_valid), (gst_static_pad_template_get),
911         (gst_pad_template_new), (gst_static_pad_template_get_caps),
912         (gst_pad_template_get_caps), (gst_pad_set_element_private),
913         (gst_pad_get_element_private), (gst_pad_start_task),
914         (gst_pad_pause_task), (gst_pad_stop_task),
915         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
916         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
917         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
918         (gst_ghost_pad_new):
919         * gst/gstpad.h:
920         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
921         (gst_query_new_position), (gst_query_set_position),
922         (gst_query_parse_position), (gst_query_new_convert),
923         (gst_query_set_convert), (gst_query_parse_convert):
924         * gst/gstquery.h:
925         * gst/gstqueryutils.c:
926         * gst/gstqueryutils.h:
927         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
928         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
929         (gst_queue_handle_src_query):
930         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
931         (gst_element_query_position), (gst_element_query_convert),
932         (intersect_caps_func), (gst_pad_query_position),
933         (gst_pad_query_convert):
934         * gst/gstutils.h:
935         * tools/gst-inspect.c: (print_pad_info):
936         * tools/gst-xmlinspect.c: (print_element_info):
937         Remove old query functions. Ported old code.
938         Added position/convert helper functions to gstutils.
939         Reordered gstpad.c code, grouping relevant things.
940         Remove gst_message_new(), always need to speficy a specific
941         message.
942
943
944 2005-05-09  Andy Wingo  <wingo@pobox.com>
945
946         * gst/gstiterator.h: Add some includes.
947
948         * gst/gstqueryutils.h: Include more headers.
949
950         * gst/gstpad.h:
951         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
952         some uses of gst_pad_query.
953
954         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
955         NULL out parameters.
956         (gst_query_new_position): New proc, allocates a new position
957         query.
958
959         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
960         gstqueryutils.c to the build.
961
962         * gst/gststructure.c (gst_structure_set_valist): Implement with
963         the generic G_VALUE_COLLECT.
964         
965 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
966
967         * gst/Makefile.am: (gst_headers):
968         Added gstqueryutils.h to the list of headers to install, that was
969         a 'nachty' move wingo :)
970
971 2005-05-06  Andy Wingo  <wingo@pobox.com>
972
973         * gst/gstquery.h
974         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
975         GstData, init a memchunk.
976         (standard_definitions): Add a few query types, deprecate a few.
977         (gst_query_get_type): New proc.
978         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
979         implementation.
980         (gst_query_new_application, gst_query_get_structure): New public
981         procs.
982
983         * docs/design/draft-query.txt: Removed LINKS from the query types,
984         because all the rest can be dispatched to other pads -- seemed
985         ugly to have a query that couldn't be dispatched. internal_links
986         is fine as a pad method.
987
988         * gst/gstpad.h: Add query2 as a pad method, add the new functions
989         in gstpad.c, but maintain binary compatibility for the moment.
990         Will fix before 0.9 is out.
991
992         * gst/gstqueryutils.c: 
993         * gst/gstqueryutils.h: New files, implement 3 methods for each
994         query type: parse_query, parse_response, and set. Probably need an
995         allocator as well.
996
997         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
998
999         * gst/elements/gstfilesink.c (gst_filesink_query2):
1000         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1001         query_types, and formats methods.
1002
1003         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1004         (gst_pad_set_query2_function): New functions.
1005         (gst_real_pad_init): Set query2_default as the default query2
1006         function. Basically just dispatches to internally linked pads.
1007
1008         Needs review!
1009         
1010         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1011         without using the atomic operations. Only one thread can possibly
1012         be accessing the data at this point. Changed so as to avoid
1013         gst_atomic operations.
1014
1015 2005-05-06  Wim Taymans  <wim@fluendo.com>
1016
1017         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1018         Also set caps if we use the fallback buffer alloc.
1019
1020 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1021
1022         * docs/gst/Makefile.am:
1023         * docs/gst/gstreamer-docs.sgml:
1024         * docs/gst/gstreamer-sections.txt:
1025         * docs/gst/tmpl/gstatomic.sgml:
1026         * docs/gst/tmpl/gstmemchunk.sgml:
1027         * testsuite/elements/struct_i386.h:
1028         * win32/GStreamer.vcproj:
1029         * win32/Makefile:
1030           Purge GstAtomic stuff from docs and win32 makefiles as well
1031
1032 2005-05-06  Wim Taymans  <wim@fluendo.com>
1033
1034         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1035         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1036         * gst/gstpad.c: (gst_pad_peer_get_caps):
1037         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1038         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1039         (gst_queue_src_activate), (gst_queue_change_state):
1040         * gst/gstqueue.h:
1041         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1042         (intersect_caps_func):
1043         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1044         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1045         Some fixes for the peer_get_caps() change.
1046
1047 2005-05-06  Wim Taymans  <wim@fluendo.com>
1048
1049         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1050         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1051         (gst_basesink_activate):
1052         Actually do something with error codes returned from the push
1053         functions.
1054
1055 2005-05-06  Wim Taymans  <wim@fluendo.com>
1056
1057         * docs/design/part-element-sink.txt:
1058         * docs/design/part-element-source.txt:
1059         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1060         (gst_basesink_event), (gst_basesink_activate):
1061         * gst/base/gstbasesink.h:
1062         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1063         (gst_basesrc_activate):
1064         * gst/base/gstbasesrc.h:
1065         * gst/gstelement.c: (gst_element_pads_activate):
1066         Some more documentation.
1067         Fixed scheduling decision in _pads_activate().
1068
1069 2005-05-05  Andy Wingo  <wingo@pobox.com>
1070
1071         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1072         the test suite.
1073
1074 2005-05-05  Wim Taymans  <wim@fluendo.com>
1075
1076         * gst/base/Makefile.am:
1077         * gst/base/gstbasesink.h:
1078         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1079         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1080         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1081         (gst_collectpads_class_init), (gst_collectpads_init),
1082         (gst_collectpads_finalize), (gst_collectpads_new),
1083         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1084         (find_pad), (gst_collectpads_remove_pad),
1085         (gst_collectpads_is_active), (gst_collectpads_collect),
1086         (gst_collectpads_collect_range), (gst_collectpads_start),
1087         (gst_collectpads_stop), (gst_collectpads_peek),
1088         (gst_collectpads_pop), (gst_collectpads_available),
1089         (gst_collectpads_read), (gst_collectpads_flush),
1090         (gst_collectpads_chain):
1091         * gst/base/gstcollectpads.h:
1092         * gst/elements/Makefile.am:
1093         * gst/elements/gstelements.c:
1094         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1095         (gst_fakesink_get_times), (gst_fakesink_event),
1096         (gst_fakesink_preroll), (gst_fakesink_render):
1097         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1098         (gst_filesink_init), (gst_filesink_set_location),
1099         (gst_filesink_open_file), (gst_filesink_close_file),
1100         (gst_filesink_pad_query), (gst_filesink_event),
1101         (gst_filesink_render), (gst_filesink_change_state):
1102         * gst/elements/gstfilesink.h:
1103         Added object to help in making collect pad based elements.
1104         Ported filesink.
1105         Make event function in sink baseclass return gboolean.
1106
1107 2005-05-05  Wim Taymans  <wim@fluendo.com>
1108
1109         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1110         (gst_bin_get_by_name):
1111         * gst/gstbuffer.h:
1112         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1113         (gst_clock_finalize):
1114         * gst/gstdata.c: (gst_data_replace):
1115         * gst/gstdata.h:
1116         * gst/gstelement.c: (gst_element_request_pad),
1117         (gst_element_pads_activate):
1118         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1119         (gst_object_unref):
1120         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1121         (gst_pad_set_checkgetrange_function),
1122         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1123         (gst_pad_check_pull_range), (gst_pad_pull_range),
1124         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1125         (gst_pad_pause_task), (gst_pad_stop_task):
1126         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1127         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1128         Fix name lookup in GstBin.
1129         Added _data_replace() function and _buffer_replace()
1130         Use finalize method to clean up clock.
1131         Fix refcounting on request pads.
1132         Fix pad schedule mode error.
1133         Some more object refcounting debug info,
1134
1135
1136 2005-05-04  Andy Wingo <wingo@pobox.com>
1137
1138         * check/Makefile.am:
1139         * docs/gst/tmpl/gstatomic.sgml:
1140         * docs/gst/tmpl/gstplugin.sgml:
1141         * gst/base/gstbasesink.c: (gst_basesink_activate):
1142         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1143         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1144         (gst_basesrc_query), (gst_basesrc_set_property),
1145         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1146         (gst_basesrc_activate):
1147         * gst/base/gstbasesrc.h:
1148         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1149         (gst_base_transform_src_activate):
1150         * gst/elements/gstelements.c:
1151         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1152         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1153         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1154         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1155         (gst_type_find_element_checkgetrange),
1156         (gst_type_find_element_activate):
1157         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1158         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1159         (gst_caps_load_thyself):
1160         * gst/gstelement.c: (gst_element_pads_activate),
1161         (gst_element_save_thyself), (gst_element_restore_thyself):
1162         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1163         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1164         * gst/gstpad.h:
1165         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1166         (gst_xml_parse_file), (gst_xml_parse_memory),
1167         (gst_xml_get_element), (gst_xml_make_element):
1168         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1169         (_file_index_id_save_xml), (gst_file_index_commit):
1170         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1171         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1172         (load_paths):
1173         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1174         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1175         * tools/gst-complete.c: (main):
1176         * tools/gst-compprep.c: (main):
1177         * tools/gst-inspect.c: (print_element_properties_info):
1178         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1179         * tools/gst-xmlinspect.c: (print_element_properties):
1180         GCC 4 fixen.
1181         
1182 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1183
1184         * gst/gstplugin.c: (gst_plugin_check_module),
1185         (gst_plugin_check_file), (gst_plugin_load_file):
1186             apply patch from #172526 to make register work on MacOSX
1187
1188 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1189
1190         * docs/gst/tmpl/gstconfig.sgml:
1191         * gst/gstconfig.h.in:
1192           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1193         * testsuite/debug/printf_extension.c: (main):
1194           Do not use GST_PTR_FORMAT on pointers to types with
1195           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1196         * testsuite/elements/property.h:
1197           use correct printf format
1198
1199 2005-05-02  Wim Taymans  <wim@fluendo.com>
1200
1201         * docs/design/draft-push-pull.txt:
1202         * docs/design/draft-query.txt:
1203         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1204         (gst_basesrc_start):
1205         Added draft for new query API.
1206         Added draft for better selecting scheduling methods.
1207         Make basesrc ignore length if the subclass does not support
1208         it.
1209
1210 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1211
1212         * gst/Makefile.am:
1213           possible fixes for automake-1.5 - _LIBADD is reserved
1214
1215 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1216
1217         * docs/faq/Makefile.am:
1218         * docs/manual/Makefile.am:
1219         * docs/manuals.mak:
1220         * docs/pwg/Makefile.am:
1221         * gst/Makefile.am:
1222           possible fixes for automake-1.5
1223
1224 2005-04-28  Wim Taymans  <wim@fluendo.com>
1225
1226         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1227         (gst_basesink_pad_getcaps), (gst_basesink_init),
1228         (gst_basesink_do_sync):
1229         * gst/gstclock.c: (gst_clock_entry_new):
1230         * gst/gstevent.c: (gst_event_discont_get_value):
1231         * gst/gstpipeline.c: (pipeline_bus_handler),
1232         (gst_pipeline_change_state):
1233         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1234         Better debugging of clocking info.
1235         Allow NULL values when getting discont values.
1236
1237 2005-04-27  Wim Taymans  <wim@fluendo.com>
1238
1239         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1240         * check/gst/gstpad.c: (gst_pad_suite):
1241         Increase timeout for checks.
1242
1243 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1244
1245         * check/Makefile.am:
1246           fix the broken rule for cleanup.  Apparently this rule is
1247           only needed on FC2, so maybe this warrants further autotool
1248           inspection.
1249
1250 2005-04-26  Wim Taymans  <wim@fluendo.com>
1251
1252         * gst/gsttrashstack.h:
1253         Ooohh. a nasty one! After having a failed pop() from the stack,
1254         it's possible that the stack is empty. In that case, don't
1255         follow the NULL pointer.
1256
1257 2005-04-25  Wim Taymans  <wim@fluendo.com>
1258
1259         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1260         (gst_pad_set_checkgetrange_function),
1261         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1262         (gst_pad_check_pull_range), (gst_pad_pull_range),
1263         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1264         (gst_pad_pause_task), (gst_pad_stop_task):
1265         * gst/gstplugin.c: (gst_plugin_load):
1266         * gst/gstplugin.h:
1267         Remove gst_library_load as it does more harm than good with
1268         the new g_module flags.
1269         Revert bogus caps template check in pad linking, pad caps
1270         are important when linking not the template, which is more
1271         general than the current caps.
1272
1273 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1274
1275         * gst/autoplug/.cvsignore:
1276         * gst/autoplug/Makefile.am:
1277         * gst/autoplug/gstsearchfuncs.c:
1278         * gst/autoplug/gstsearchfuncs.h:
1279         * gst/autoplug/gstspider.c:
1280         * gst/autoplug/gstspider.h:
1281         * gst/autoplug/gstspideridentity.c:
1282         * gst/autoplug/gstspideridentity.h:
1283         * gst/autoplug/spidertest.c:
1284           Die, spider, die.
1285
1286 2005-04-25  Wim Taymans  <wim@fluendo.com>
1287
1288         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1289         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1290         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1291         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1292         * gst/gstpad.h:
1293         Added stubs for unimplemented functions. 
1294
1295 2005-04-24  David Schleef  <ds@schleef.org>
1296
1297         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1298         please fix.
1299
1300 2005-04-24  David Schleef  <ds@schleef.org>
1301
1302         Convert everything from GstAtomicInt to g_atomic_int_*, and
1303         remove gstatomic.
1304         * gst/Makefile.am:
1305         * gst/gstatomic.c:
1306         * gst/gstatomic.h:
1307         * gst/gstatomic_impl.h:
1308         * gst/gstbuffer.c:
1309         * gst/gstcaps.c:
1310         * gst/gstcaps.h:
1311         * gst/gstclock.c:
1312         * gst/gstclock.h:
1313         * gst/gstdata.c:
1314         * gst/gstdata.h:
1315         * gst/gstdata_private.h:
1316         * gst/gstevent.c:
1317         * gst/gstinfo.c:
1318         * gst/gstinfo.h:
1319         * gst/gstmessage.c:
1320         * gst/gstobject.c:
1321         * gst/gstobject.h:
1322         * gst/gststructure.c:
1323         * gst/gststructure.h:
1324         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1325         * gst/gstutils.h:
1326
1327 2005-04-24  David Schleef  <ds@schleef.org>
1328
1329         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1330         make the regressions tests work.  Remove some code that is no
1331         longer true.
1332         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1333         Disable warning for pads without templates.
1334
1335 2005-04-24  David Schleef  <ds@schleef.org>
1336
1337         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1338         functions that handle filtered links.
1339         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1340         removed functions.
1341         * gst/gstutils.c: Fix/remove utility functions that handle
1342         filtered caps.
1343         * gst/gstutils.h:
1344         * gst/gstvalue.c: Add serialization/deserialization of caps
1345         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1346         requires fixing so that the filter caps notation creates
1347         a capsfilter element and sets the filter_caps property.  I
1348         think everyone probably wants to keep the shorthand notation.
1349         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1350         * docs/gst/tmpl/gstpad.sgml:
1351
1352         * gst/elements/gstelements.c: Register capsfilter element.
1353         * gst/Makefile.am: fix spacing
1354         * docs/random/ds/0.9-suggested-changes: random
1355
1356 2005-04-23  David Schleef  <ds@schleef.org>
1357
1358         * gst/elements/Makefile.am:
1359         * gst/elements/gstcapsfilter.c: New element that acts like an
1360         identity, but filters caps.  Will eventually replace filtered
1361         caps in pad linking.
1362         * gst/gstutils.c: (gst_element_create_all_pads): New function
1363         to create all the ALWAYS pads that are registered with an
1364         element class.  This functionality should eventually be
1365         merged in with GstElement initialization.
1366         * gst/gstutils.h:
1367         * testsuite/trigger/README: part of trigger test code that should
1368         have been checked in a long time ago.
1369
1370 2005-04-23  David Schleef  <ds@schleef.org>
1371
1372         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1373         needed with new versions of libtool (nobody will confirm this),
1374         and hard to carry around.
1375         * gst/autoplug/Makefile.am:
1376         * gst/base/Makefile.am:
1377         * gst/elements/Makefile.am:
1378         * gst/indexers/Makefile.am:
1379         * gst/schedulers/Makefile.am:
1380         * libs/gst/bytestream/Makefile.am:
1381         * libs/gst/control/Makefile.am:
1382         * libs/gst/dataprotocol/Makefile.am:
1383         * libs/gst/getbits/Makefile.am:
1384
1385 2005-04-21  Wim Taymans  <wim@fluendo.com>
1386
1387         * docs/design/draft-push-pull.txt:
1388         * docs/design/part-MT-refcounting.txt:
1389         * docs/design/part-TODO.txt:
1390         * docs/design/part-caps.txt:
1391         * docs/design/part-events.txt:
1392         * docs/design/part-gstbus.txt:
1393         * docs/design/part-gstpipeline.txt:
1394         * docs/design/part-messages.txt:
1395         * docs/design/part-push-pull.txt:
1396         * docs/design/part-query.txt:
1397         Some more docs.
1398
1399 2005-04-21  Wim Taymans  <wim@fluendo.com>
1400
1401         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1402         (gst_message_new), (gst_message_new_error),
1403         (gst_message_new_warning), (gst_message_new_tag),
1404         (gst_message_new_state_changed), (gst_message_new_application),
1405         (gst_message_get_structure):
1406         * gst/gstmessage.h:
1407         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1408         (gst_structure_copy_conditional):
1409         Use parent refcount in GstMessage to ensure GstStructure
1410         consistency.
1411         Cleaned up headers a bit.
1412         
1413
1414 2005-04-20  Wim Taymans  <wim@fluendo.com>
1415
1416         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1417         (gst_basesink_pad_getcaps), (gst_basesink_init),
1418         (gst_basesink_chain_unlocked):
1419         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1420         (gst_type_find_helper):
1421         * gst/elements/gsttypefindelement.c:
1422         (gst_type_find_element_have_type), (gst_type_find_element_init),
1423         (stop_typefinding), (gst_type_find_element_handle_event),
1424         (find_suggest), (gst_type_find_element_chain),
1425         (gst_type_find_element_checkgetrange),
1426         (gst_type_find_element_getrange), (do_typefind),
1427         (gst_type_find_element_activate):
1428         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1429         (gst_buffer_default_free), (gst_buffer_default_copy),
1430         (gst_buffer_set_caps):
1431         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1432         (gst_caps_replace):
1433         * gst/gstmessage.c: (gst_message_new),
1434         (gst_message_new_state_changed):
1435         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1436         (gst_pad_set_checkgetrange_function),
1437         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1438         (gst_pad_set_caps), (gst_pad_check_pull_range),
1439         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1440         * gst/gstpad.h:
1441         * gst/gsttypefind.c: (gst_type_find_register):
1442         Make gst_caps_replace() work like other _replace() functions.
1443         Use _caps_replace() where possible.
1444         Make sure _message_new() initialises its field.
1445         Add gst_static_pad_template_get_caps()
1446
1447
1448 2005-04-18  Andy Wingo  <wingo@pobox.com>
1449
1450         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1451         on the peer, not the pad. I think that was a typo. Pass an extra
1452         arg to see if random access is possible. Activate the pads as
1453         PULL_RANGE if possible.
1454
1455         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1456
1457         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1458         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1459         to PROP_....
1460
1461 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1462
1463         * docs/faq/using.xml:
1464           Add note on gstreamer-properties (#154996).
1465
1466 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1467
1468         * docs/random/bbb/optional-properties:
1469           Some analysis on optional properties.
1470
1471 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1472
1473         * docs/gst/tmpl/gstelementfactory.sgml:
1474         * gst/gstelement.h:
1475         * gst/gstelementfactory.c: (gst_element_factory_init),
1476         (gst_element_factory_cleanup), (gst_element_register),
1477         (__gst_element_factory_add_static_pad_template),
1478         (gst_element_factory_get_static_pad_templates),
1479         (gst_element_factory_can_src_caps),
1480         (gst_element_factory_can_sink_caps):
1481         * gst/registries/Makefile.am:
1482         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1483         (gst_xml_registry_class_init), (gst_xml_registry_init),
1484         (gst_xml_registry_new), (gst_xml_registry_set_property),
1485         (gst_xml_registry_get_property), (get_time), (make_dir),
1486         (gst_xml_registry_get_perms_func),
1487         (plugin_times_older_than_recurse), (plugin_times_older_than),
1488         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1489         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1490         (add_to_char_array), (read_string), (read_uint), (read_enum),
1491         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1492         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1493         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1494         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1495         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1496         (gst_xml_registry_rebuild):
1497         * gst/registries/gstlibxmlregistry.h:
1498         * tools/gst-compprep.c: (main):
1499         * tools/gst-inspect.c: (print_pad_templates_info):
1500         * tools/gst-xmlinspect.c: (print_element_info):
1501           Use libxml2 for registry parsing, use staticpadtemplates in
1502           elementfactories. Makes gst_init() +/- 10x faster.
1503
1504 2005-04-12  Wim Taymans  <wim@fluendo.com>
1505
1506         * gst/base/Makefile.am:
1507         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1508         (gst_basesink_pad_getcaps), (gst_basesink_init),
1509         (gst_basesink_event), (gst_basesink_change_state):
1510         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1511         (gst_basesrc_init), (gst_basesrc_query),
1512         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1513         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1514         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1515         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1516         (gst_basesrc_stop), (gst_basesrc_activate),
1517         (gst_basesrc_change_state):
1518         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1519         (helper_find_suggest), (gst_type_find_helper):
1520         * gst/base/gsttypefindhelper.h:
1521         * gst/elements/Makefile.am:
1522         * gst/elements/gstelements.c:
1523         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1524         (gst_fakesink_get_times), (gst_fakesink_event),
1525         (gst_fakesink_preroll), (gst_fakesink_render):
1526         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1527         (gst_fakesrc_init), (gst_fakesrc_event_handler),
1528         (gst_fakesrc_get_property), (gst_fakesrc_create),
1529         (gst_fakesrc_start), (gst_fakesrc_stop):
1530         * gst/elements/gstfakesrc.h:
1531         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
1532         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1533         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1534         (gst_filesrc_create_read), (gst_filesrc_create),
1535         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
1536         (gst_filesrc_start):
1537         * gst/elements/gsttypefindelement.c:
1538         (gst_type_find_element_have_type), (gst_type_find_element_init),
1539         (start_typefinding), (stop_typefinding), (push_buffer_store),
1540         (gst_type_find_element_handle_event),
1541         (gst_type_find_element_chain),
1542         (gst_type_find_element_checkgetrange),
1543         (gst_type_find_element_getrange), (do_typefind),
1544         (gst_type_find_element_activate),
1545         (gst_type_find_element_change_state):
1546         * gst/elements/gsttypefindelement.h:
1547         * gst/gstpipeline.c: (pipeline_bus_handler):
1548         Added typefind helper.
1549         Small preroll fix in the base sink.
1550         Disable typefind code in basesrc.
1551         Crude port of typefindelement.
1552         Fakesrc cleanups.
1553
1554
1555 2005-04-11  Wim Taymans  <wim@fluendo.com>
1556
1557         * check/gst/gstbus.c: (gstbus_suite):
1558         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
1559         * check/gstcheck.h:
1560           Fix up the timeout so that the test does not fail.
1561
1562 2005-04-06  Wim Taymans  <wim@fluendo.com>
1563
1564         * gst/base/README:
1565         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1566         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
1567         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1568         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1569         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1570         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1571         (gst_basesrc_stop), (gst_basesrc_activate),
1572         (gst_basesrc_change_state), (basesrc_find_peek),
1573         (basesrc_find_suggest), (gst_basesrc_type_find):
1574         * gst/base/gstbasesrc.h:
1575         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1576         (gst_filesrc_class_init), (gst_filesrc_init),
1577         (gst_filesrc_finalize), (gst_filesrc_set_location),
1578         (gst_filesrc_set_property), (gst_filesrc_get_property),
1579         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1580         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1581         (gst_filesrc_create_read), (gst_filesrc_create),
1582         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
1583         * gst/elements/gstfilesrc.h:
1584         * gst/gstelement.c: (gst_element_get_state_func),
1585         (gst_element_lost_state), (gst_element_pads_activate):
1586         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1587         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1588         (gst_pad_pull_range):
1589         * gst/gstpad.h:
1590         More work on the generic source base class, implement seeking,
1591         query.
1592         Make filesrc extend the base source class.
1593         Added gst_pad_set_checkgetrange_function to GstPad.
1594
1595 2005-04-06  Andy Wingo  <wingo@pobox.com>
1596
1597         * pkgconfig/gstreamer-base.pc.in:
1598         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
1599
1600         * pkgconfig/Makefile.am:
1601         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
1602
1603 2005-04-04  Wim Taymans  <wim@fluendo.com>
1604
1605         * gst/base/Makefile.am:
1606         * gst/base/README:
1607         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1608         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1609         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1610         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
1611         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1612         (gst_basesrc_base_init), (gst_basesrc_class_init),
1613         (gst_basesrc_init), (gst_basesrc_get_formats),
1614         (gst_basesrc_get_query_types), (gst_basesrc_query),
1615         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
1616         (gst_basesrc_set_property), (gst_basesrc_get_property),
1617         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
1618         (gst_basesrc_loop), (gst_basesrc_activate),
1619         (gst_basesrc_change_state):
1620         * gst/base/gstbasesrc.h:
1621         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1622         (gst_fakesrc_class_init), (gst_fakesrc_init),
1623         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
1624         (gst_fakesrc_get_property), (gst_fakesrc_create):
1625         * gst/elements/gstfakesrc.h:
1626         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
1627         (gst_filesrc_open_file), (gst_filesrc_loop),
1628         (gst_filesrc_activate), (filesrc_find_peek),
1629         (gst_filesrc_type_find):
1630         Made base source class, make fakesrc extend it.
1631         Add comments to basesink class.
1632         Some filesrc cleanup.
1633
1634 2005-03-31  David Schleef  <ds@schleef.org>
1635
1636         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
1637         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
1638         expected to link against libgstreamer.
1639         * gst/base/Makefile.am: link against libgstreamer
1640         * gst/elements/Makefile.am: same
1641
1642 2005-03-31  Andy Wingo  <wingo@pobox.com>
1643
1644         * tests/instantiate/Makefile.am:
1645         * tests/instantiate/caps.c: Add test to test speed of caps copy
1646         and free.
1647
1648         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
1649         GMemChunk to be fair.
1650
1651         * gst/gsttrashstack.h: Remove warning about using the fallback
1652         trash stack implementation, it's still faster than malloc.
1653
1654 2005-03-30  Andy Wingo  <wingo@pobox.com>
1655
1656         * tests/complexity.c: Add a copyright.
1657
1658 2005-03-31  Wim Taymans  <wim@fluendo.com>
1659
1660         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
1661         (gst_base_transform_class_init), (gst_base_transform_init),
1662         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1663         (gst_base_transform_get_property),
1664         (gst_base_transform_sink_activate),
1665         (gst_base_transform_src_activate),
1666         (gst_base_transform_change_state):
1667         * gst/base/gstbasetransform.h:
1668         * gst/elements/gstidentity.c: (gst_identity_class_init),
1669         (gst_identity_event), (gst_identity_check_perfect),
1670         (gst_identity_transform), (gst_identity_start),
1671         (gst_identity_stop):
1672         Added start/stop methods to transform base class so subclasses 
1673         don't need to deal with state changes even.
1674
1675 2005-03-31  Wim Taymans  <wim@fluendo.com>
1676
1677         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
1678         (gst_event_new_discontinuous), (gst_event_discont_get_value):
1679         * gst/gstevent.h:
1680         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1681         (gst_pad_pull_range):
1682         Added rate to the discont event to prepare for variable speed
1683         and reverse playback.
1684
1685 2005-03-29  David Schleef  <ds@schleef.org>
1686
1687         * configure.ac:
1688         * testsuite/trigger/Makefile.am:
1689         * testsuite/trigger/trigger.c: A little example program to show
1690         how trigger-based elements can work.
1691
1692 2005-03-29  Wim Taymans  <wim@fluendo.com>
1693
1694         * gst/base/Makefile.am:
1695         * gst/base/README:
1696         * gst/base/gstbasesink.c: (gst_basesink_get_type),
1697         (gst_basesink_base_init), (gst_basesink_class_init),
1698         (gst_basesink_pad_getcaps), (gst_basesink_init),
1699         (gst_basesink_activate), (gst_basesink_change_state):
1700         * gst/base/gstbasesink.h:
1701         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
1702         (gst_base_transform_base_init), (gst_base_transform_finalize),
1703         (gst_base_transform_class_init), (gst_base_transform_init),
1704         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
1705         (gst_base_transform_event), (gst_base_transform_getrange),
1706         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
1707         (gst_base_transform_set_property),
1708         (gst_base_transform_get_property),
1709         (gst_base_transform_sink_activate),
1710         (gst_base_transform_src_activate),
1711         (gst_base_transform_change_state):
1712         * gst/base/gstbasetransform.h:
1713         * gst/elements/gstidentity.c: (gst_identity_finalize),
1714         (gst_identity_class_init), (gst_identity_init),
1715         (gst_identity_event), (gst_identity_check_perfect),
1716         (gst_identity_transform), (gst_identity_set_property),
1717         (gst_identity_get_property), (gst_identity_change_state):
1718         * gst/elements/gstidentity.h:
1719         * gst/gstelement.c: (gst_element_get_state_func),
1720         (gst_element_lost_state), (gst_element_pads_activate):
1721         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1722         (gst_pad_check_pull_range), (gst_pad_pull_range):
1723         * gst/gstpad.h:
1724         Simplify pad activation.
1725         Added function to check if pull_range can be performed.
1726         Error out when pulling inactive or flushing pads.
1727         Removed const from refcounted types as it does not make sense.
1728         Simplify pad templates in basesink
1729         Added base class for simple 1-to-1 transforms.
1730         Make identity subclass the base transform.
1731
1732 2005-03-29  Andy Wingo  <wingo@pobox.com>
1733
1734         * docs/libs/gstreamer-libs-overrides.txt: 
1735         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
1736         really don't understand what's going on, but like whatever. I want
1737         green buildbot!
1738
1739         * docs/gst/Makefile.am:
1740         * docs/libs/Makefile.am: Dist the overrides files.
1741
1742         * check/Makefile.am (clean-local): Remove .libs directories.
1743
1744         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
1745         elements to EXTRA_DIST, so po/ files are happy.
1746
1747         * po/POTFILES.in: Er, remove it here.
1748
1749         * po/POTFILES: Remove gstspider.c.
1750
1751         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
1752
1753         * docs/libs/gstreamer-libs-docs.sgml: 
1754         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
1755         bytestream.
1756
1757         * tests/complexity.c (main): Set the length of the preroll queue
1758         on the sinks to prevent a lockup.
1759
1760         * libs/gst/dataprotocol/Makefile.am: 
1761         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
1762         the same as the one in check/gst-libs/gdp.c.
1763
1764         * po/, docs/gst/: Commit automatic changes to docs and po files.
1765
1766         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
1767         the versioned libgstbase.
1768
1769         * check/Makefile.am: Depend on an unversioned gst-register, seems
1770         to make autoconf happier.
1771
1772         * gst/base/Makefile.am: Make libgstbase a versioned lib.
1773
1774 2005-03-28  Wim Taymans  <wim@fluendo.com>
1775
1776         * configure.ac:
1777         * docs/design/part-gstelement.txt:
1778         * docs/design/part-negotiation.txt:
1779         * docs/design/part-preroll.txt:
1780         * docs/design/part-scheduling.txt:
1781         * docs/design/part-states.txt:
1782         * gst/Makefile.am:
1783         * gst/base/Makefile.am:
1784         * gst/base/README:
1785         * gst/base/gstbasesink.c: (gst_basesink_get_template),
1786         (gst_basesink_base_init), (gst_basesink_class_init),
1787         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1788         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1789         (gst_basesink_set_pad_functions),
1790         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
1791         (gst_basesink_set_property), (gst_basesink_get_property),
1792         (gst_base_sink_get_template), (gst_base_sink_get_caps),
1793         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
1794         (gst_basesink_preroll_queue_push),
1795         (gst_basesink_preroll_queue_empty),
1796         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
1797         (gst_basesink_event), (gst_basesink_get_times),
1798         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
1799         (gst_basesink_chain_unlocked), (gst_basesink_chain),
1800         (gst_basesink_loop), (gst_basesink_activate),
1801         (gst_basesink_change_state):
1802         * gst/base/gstbasesink.h:
1803         * gst/elements/Makefile.am:
1804         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
1805         (gst_fakesink_class_init), (gst_fakesink_init),
1806         (gst_fakesink_set_property), (gst_fakesink_get_property),
1807         (gst_fakesink_get_times), (gst_fakesink_event),
1808         (gst_fakesink_preroll), (gst_fakesink_render),
1809         (gst_fakesink_change_state):
1810         * gst/elements/gstfakesink.h:
1811         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1812         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
1813         * gst/gstelement.c: (gst_element_add_pad),
1814         (gst_element_get_state_func), (gst_element_abort_state),
1815         (gst_element_commit_state), (gst_element_lost_state),
1816         (gst_element_set_state), (gst_element_pads_activate):
1817         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
1818         * gst/gstpipeline.c: (gst_pipeline_send_event),
1819         (gst_pipeline_change_state):
1820         Added state change code.
1821         Added/updated docs.
1822         Added sink base class, make fakesink extend the base class.
1823         Small cleanups in GstPipeline.
1824
1825 2005-03-26  David Schleef  <ds@schleef.org>
1826
1827         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
1828         is broken and should be implemented in a different library.
1829         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
1830         * gst/gst.h: remove gstcpu.h
1831         * gst/gstcpu.c: remove
1832         * gst/gstcpu.h: remove
1833         * gst/Makefile.am.future: Remove this file.  It's ancient.
1834
1835 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1836
1837         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1838         (gst_bin_send_event):
1839           Add default event/set_manager handlers. The set_manager handler
1840           takes care that the manager is distributed over kids that were
1841           already in the bin before the manager was set. The event handler
1842           is a utility virtual function that sends the event over all sinks,
1843           so that gst_element_send_event (bin, event); has the expected
1844           behaviour.
1845         * gst/gstpad.c: (gst_pad_event_default):
1846           Re-install default event handling for discontinuities, so that
1847           seeking works without requiring hacks in applications or extra
1848           code in sinks.
1849         * gst/gstpipeline.c: (gst_pipeline_class_init),
1850         (gst_pipeline_send_event):
1851           Half hack, half utility: set a pipeline to PAUSED for seek events,
1852           since that is the only way we can guarantee a/v sync. Means that
1853           you can do gst_element_seek (pipeline, method, pos); on a pipeline
1854           and it "just works".
1855
1856 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1857
1858         * gst/gstpipeline.c: (gst_pipeline_use_clock):
1859           Lock/unlock mismatch.
1860
1861 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1862
1863         * docs/faq/gst-uninstalled:
1864           add gst-plugins-base
1865         * docs/gst/Makefile.am:
1866           don't error out until docs are fixed
1867         * docs/gst/gstreamer.types:
1868           remove thread
1869
1870 2005-03-22  Wim Taymans  <wim@fluendo.com>
1871
1872         * check/Makefile.am:
1873         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
1874         * gst/gststructure.c: (gst_structure_set_valist),
1875         (gst_structure_copy_conditional):
1876         Activated more tests.
1877         Added message test.
1878         Added G_TYPE_POINTER to GstStructure.
1879         
1880
1881 2005-03-22  Wim Taymans  <wim@fluendo.com>
1882
1883         * docs/design/part-TODO.txt:
1884         * docs/design/part-events.txt:
1885         * docs/design/part-gstbin.txt:
1886         * docs/design/part-gstbus.txt:
1887         * docs/design/part-gstpipeline.txt:
1888         * docs/design/part-messages.txt:
1889         * gst/gstbus.c:
1890         * gst/gstmessage.c:
1891         Docs updates
1892
1893 2005-03-21  Wim Taymans  <wim@fluendo.com>
1894
1895         * gst/gstbus.c: (gst_bus_post):
1896         Fix copy-and-paste error.
1897
1898 2005-03-21  Wim Taymans  <wim@fluendo.com>
1899
1900         * check/Makefile.am:
1901         * gst/Makefile.am:
1902         * gst/elements/Makefile.am:
1903         * gst/elements/gstelements.c:
1904         * gst/elements/gstfakesink.c: (gst_fakesink_init),
1905         (gst_fakesink_event), (gst_fakesink_chain):
1906         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1907         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
1908         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
1909         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
1910         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1911         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
1912         (gst_fakesrc_loop), (gst_fakesrc_activate),
1913         (gst_fakesrc_change_state):
1914         * gst/elements/gstfakesrc.h:
1915         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
1916         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
1917         (gst_filesrc_open_file), (gst_filesrc_loop),
1918         (gst_filesrc_activate), (gst_filesrc_change_state),
1919         (filesrc_find_peek), (filesrc_find_suggest),
1920         (gst_filesrc_type_find):
1921         * gst/elements/gstidentity.c: (gst_identity_finalize),
1922         (gst_identity_class_init), (gst_identity_init),
1923         (gst_identity_proxy_getcaps), (identity_queue_push),
1924         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
1925         (gst_identity_getrange), (gst_identity_chain),
1926         (gst_identity_sink_loop), (gst_identity_src_loop),
1927         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
1928         (gst_identity_set_property), (gst_identity_get_property),
1929         (gst_identity_change_state):
1930         * gst/elements/gstidentity.h:
1931         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
1932         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
1933         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
1934         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
1935         (gst_tee_sink_activate):
1936         * gst/elements/gsttee.h:
1937         * gst/gst.c: (gst_register_core_elements), (init_post):
1938         * gst/gst.h:
1939         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
1940         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
1941         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
1942         (gst_bin_change_state):
1943         * gst/gstbin.h:
1944         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
1945         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
1946         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
1947         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
1948         (gst_bus_set_sync_handler), (gst_bus_create_watch),
1949         (bus_watch_callback), (bus_watch_destroy),
1950         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
1951         (poll_timeout), (gst_bus_poll):
1952         * gst/gstbus.h:
1953         * gst/gstcaps.h:
1954         * gst/gstdata.h:
1955         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
1956         (gst_element_post_message), (gst_element_message_full),
1957         (gst_element_get_state_func), (gst_element_get_state),
1958         (gst_element_abort_state), (gst_element_commit_state),
1959         (gst_element_lost_state), (gst_element_set_state),
1960         (gst_element_pads_activate), (gst_element_change_state),
1961         (gst_element_dispose), (gst_element_set_manager_func),
1962         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
1963         (gst_element_set_manager), (gst_element_get_manager),
1964         (gst_element_set_bus), (gst_element_get_bus),
1965         (gst_element_set_scheduler), (gst_element_get_scheduler):
1966         * gst/gstelement.h:
1967         * gst/gstevent.c: (gst_event_new_segment_seek),
1968         (gst_event_new_flush):
1969         * gst/gstevent.h:
1970         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
1971         (_gst_message_free), (gst_message_get_type), (gst_message_new),
1972         (gst_message_new_eos), (gst_message_new_error),
1973         (gst_message_new_warning), (gst_message_new_tag),
1974         (gst_message_new_state_changed), (gst_message_new_application),
1975         (gst_message_get_structure), (gst_message_parse_tag),
1976         (gst_message_parse_state_changed), (gst_message_parse_error),
1977         (gst_message_parse_warning):
1978         * gst/gstmessage.h:
1979         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
1980         (gst_real_pad_set_property), (gst_pad_set_active),
1981         (gst_pad_is_active), (gst_pad_set_blocked_async),
1982         (gst_pad_set_blocked), (gst_pad_is_blocked),
1983         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
1984         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
1985         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
1986         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
1987         (gst_pad_link_filtered), (gst_pad_relink_filtered),
1988         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
1989         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
1990         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
1991         (gst_pad_set_caps), (gst_pad_configure_sink),
1992         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
1993         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
1994         (gst_real_pad_dispose), (gst_real_pad_finalize),
1995         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
1996         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1997         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
1998         * gst/gstpad.h:
1999         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2000         (pipeline_bus_handler), (gst_pipeline_change_state),
2001         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2002         * gst/gstpipeline.h:
2003         * gst/gstprobe.h:
2004         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2005         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2006         (gst_queue_link_src), (gst_queue_bufferalloc),
2007         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2008         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2009         (gst_queue_loop), (gst_queue_handle_src_event),
2010         (gst_queue_handle_src_query), (gst_queue_src_activate),
2011         (gst_queue_change_state):
2012         * gst/gstqueue.h:
2013         * gst/gstscheduler.c: (gst_scheduler_init),
2014         (gst_scheduler_dispose), (gst_scheduler_create_task),
2015         (gst_scheduler_factory_create):
2016         * gst/gstscheduler.h:
2017         * gst/gststructure.c: (gst_structure_get_type),
2018         (gst_structure_copy_conditional):
2019         * gst/gststructure.h:
2020         * gst/gsttaginterface.h:
2021         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2022         (gst_task_init), (gst_task_dispose), (gst_task_create),
2023         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2024         (gst_task_pause):
2025         * gst/gsttask.h:
2026         * gst/gstthread.c:
2027         * gst/gstthread.h:
2028         * gst/gsttypes.h:
2029         * gst/schedulers/Makefile.am:
2030         * gst/schedulers/cothreads_compat.h:
2031         * gst/schedulers/entryscheduler.c:
2032         * gst/schedulers/faircothreads.c:
2033         * gst/schedulers/faircothreads.h:
2034         * gst/schedulers/fairscheduler.c:
2035         * gst/schedulers/gstbasicscheduler.c:
2036         * gst/schedulers/gstoptimalscheduler.c:
2037         * gst/schedulers/gthread-cothreads.h:
2038         * gst/schedulers/threadscheduler.c:
2039         (gst_thread_scheduler_task_get_type),
2040         (gst_thread_scheduler_task_class_init),
2041         (gst_thread_scheduler_task_init),
2042         (gst_thread_scheduler_task_start),
2043         (gst_thread_scheduler_task_stop),
2044         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2045         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2046         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2047         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2048         (plugin_init):
2049         * libs/gst/Makefile.am:
2050         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2051         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2052         (gst_file_pad_parent_set):
2053         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2054         (gst_dp_event_from_packet):
2055         * tests/complexity.c: (main):
2056         * tests/mass_elements.c: (main):
2057         * testsuite/states/locked.c: (message_received), (main):
2058         * testsuite/states/parent.c: (main):
2059         * tools/gst-inspect.c: (print_element_flag_info),
2060         (print_implementation_info), (print_pad_info):
2061         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2062         (main):
2063         * tools/gst-md5sum.c: (event_loop), (main):
2064         * tools/gst-typefind.c: (main):
2065         * tools/gst-xmlinspect.c: (print_element_info):
2066         Next big merge.
2067         Added GstBus for mainloop integration.
2068         Added GstMessage for sending notifications on the bus.
2069         Added GstTask as an abstraction for pipeline entry points.
2070         Removed GstThread.
2071         Removed Schedulers.
2072         Simplified GstQueue for multithreaded core.
2073         Made _link threadsafe, removed old capsnego.
2074         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2075         Added pad blocking functions.
2076         Reworked scheduling functions in GstPad to prepare for
2077         scheduling updates soon.
2078         Moved events out of data stream.
2079         Simplified GstEvent types.
2080         Added return values to push/pull.
2081         Removed clocking from GstElement.
2082         Added prototypes for state change function for next merge.
2083         Removed iterate from bins and state change management.
2084         Fixed some elements, disabled others for now.
2085         Fixed -inspect and -launch.
2086         Added check for GstBus.
2087
2088 2005-03-10  Wim Taymans  <wim@fluendo.com>
2089
2090         * docs/design/part-MT-refcounting.txt:
2091         * docs/design/part-clocks.txt:
2092         * docs/design/part-gstelement.txt:
2093         * docs/design/part-gstobject.txt:
2094         * docs/design/part-standards.txt:
2095         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2096         (gst_bin_remove_func), (gst_bin_remove):
2097         * gst/gstbin.h:
2098         * gst/gstbuffer.c:
2099         * gst/gstcaps.h:
2100         * testsuite/clock/clock1.c: (main):
2101         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2102         (main):
2103         * testsuite/dlopen/loadgst.c: (do_test):
2104         * testsuite/refcounting/bin.c: (add_remove_test1),
2105         (add_remove_test2), (main):
2106         * testsuite/refcounting/element.c: (main):
2107         * testsuite/refcounting/element_pad.c: (main):
2108         * testsuite/refcounting/pad.c: (main):
2109         * tools/gst-launch.c: (sigint_handler_sighandler):
2110         * tools/gst-typefind.c: (main):
2111         Doc updates.
2112         Added doc about clock.
2113         removed gst_bin_iterate_recurse_up(), marked methods
2114         for removal.
2115         Fix more testsuites.
2116
2117 2005-03-09  Wim Taymans  <wim@fluendo.com>
2118
2119         * gst/gstpad.c: (gst_pad_get_direction),
2120         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2121         (gst_pad_collect_valist):
2122         * testsuite/bins/interface.c: (main):
2123         * testsuite/caps/audioscale.c: (test_caps):
2124         * testsuite/caps/caps.c: (test1), (test2), (test3):
2125         * testsuite/caps/deserialize.c: (main):
2126         * testsuite/caps/enumcaps.c: (main):
2127         * testsuite/caps/filtercaps.c: (main):
2128         * testsuite/caps/intersect2.c: (main):
2129         * testsuite/caps/random.c: (main):
2130         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2131         * testsuite/caps/sets.c: (check_caps):
2132         * testsuite/caps/simplify.c: (check_caps), (main):
2133         * testsuite/caps/subtract.c: (check_caps):
2134         Fix _pad_get_direction wrt ghostpads.
2135         Fix caps testsuite.
2136
2137 2005-03-09  Wim Taymans  <wim@fluendo.com>
2138
2139         * check/Makefile.am:
2140         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2141         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2142         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2143         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2144         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2145         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2146         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2147         (bin_element_is_sink), (gst_bin_iterate_sinks),
2148         (gst_bin_iterate_all_by_interface):
2149         * gst/gstbin.h:
2150         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2151         (gst_element_change_state), (gst_element_dispose),
2152         (gst_element_finalize), (gst_element_set_loop_function):
2153         * gst/gstelement.h:
2154         * gst/gstiterator.c: (find_custom_fold_func):
2155         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2156         (gst_pad_collectv), (gst_pad_collect_valist),
2157         (gst_pad_template_new):
2158         * gst/gstpipeline.c: (gst_pipeline_class_init),
2159         (gst_pipeline_dispose), (gst_pipeline_set_property),
2160         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2161         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2162         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2163         * gst/gstutils.h:
2164         * gst/schedulers/entryscheduler.c:
2165         * gst/schedulers/gstbasicscheduler.c:
2166         (gst_basic_scheduler_cothreaded_chain),
2167         (gst_basic_scheduler_chain_add_element):
2168         * testsuite/bins/interface.c: (main):
2169         Added GstBin test.
2170         Added GstSystemClock test.
2171         Implemented clock distribution code in GstBin.
2172         Implemented iterate sinks method for future use.
2173         Rearranged gstelement.h
2174         Fix GstIterator comparison bug.
2175         Moved some code to GstPipeline, mostly clocking related.
2176
2177 2005-03-09  Wim Taymans  <wim@fluendo.com>
2178
2179         * configure.ac:
2180         * gst/gst_private.h:
2181         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2182         (gst_bin_remove_func), (gst_bin_remove),
2183         (gst_bin_get_by_name_recurse_up):
2184         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2185         (gst_clock_id_compare_func), (gst_clock_id_wait),
2186         (gst_clock_id_wait_async), (gst_clock_init),
2187         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2188         * gst/gstelement.h:
2189         * gst/gstinfo.c: (_gst_debug_init):
2190         * gst/gstobject.h:
2191         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2192         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2193         * gst/gstpad.h:
2194         Bump version number, we're now 0.9.0
2195         Add future debugging category.
2196         Fix NULL _unref() in _get_by_name_recurse_up
2197         Rearrange gstpad.h.
2198         Update some docs.
2199
2200 2005-03-08  Wim Taymans  <wim@fluendo.com>
2201
2202         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2203         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2204         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2205         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2206         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2207         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2208         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2209         * gst/elements/gstidentity.c: (gst_identity_class_init):
2210         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2211         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2212         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2213         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2214         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2215         (gst_tee_link):
2216         * gst/gstelement.c: (gst_element_class_init),
2217         (gst_element_base_class_init), (gst_element_init),
2218         (gst_element_get_random_pad), (gst_element_wait_state_change),
2219         (gst_element_change_state), (gst_element_dispose),
2220         (gst_element_finalize), (gst_element_set_loop_function):
2221         * gst/gstelement.h:
2222         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2223         * gst/gstthread.c: (gst_thread_class_init),
2224         (gst_thread_release_children_locks), (gst_thread_change_state):
2225         * gst/schedulers/gstbasicscheduler.c:
2226         (gst_basic_scheduler_loopfunc_wrapper),
2227         (gst_basic_scheduler_chain_wrapper),
2228         (gst_basic_scheduler_src_wrapper),
2229         (gst_basic_scheduler_remove_element):
2230         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2231         Remove threadsafe properties. Fix elements because GObject
2232         complains when installing a property before declaring a
2233         set/get_property handler.
2234         Rearrange gstelement.h file, use STATE macros for state locks.
2235         Free mutexes in the finalize method instead of dispose.
2236
2237 2005-03-08  Wim Taymans  <wim@fluendo.com>
2238
2239         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2240         * gst/gstthread.c: (gst_thread_release_children_locks):
2241         Added parentage check.
2242         Fix build og GstThread again.
2243
2244 2005-03-08  Wim Taymans  <wim@fluendo.com>
2245
2246         * docs/design/part-MT-refcounting.txt:
2247         * docs/design/part-conventions.txt:
2248         * docs/design/part-gstobject.txt:
2249         * docs/design/part-relations.txt:
2250         * docs/design/part-standards.txt:
2251         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2252         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2253         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2254         (gst_bin_iterate_all_by_interface):
2255         * gst/gstbuffer.h:
2256         * gst/gstclock.h:
2257         * gst/gstelement.c: (gst_element_class_init),
2258         (gst_element_change_state), (gst_element_set_loop_function):
2259         * gst/gstelement.h:
2260         * gst/gstiterator.c:
2261         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2262         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2263         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2264         (gst_object_set_parent), (gst_object_unparent),
2265         (gst_object_check_uniqueness):
2266         * gst/gstobject.h:
2267         Docs updates, clean up some headers.
2268
2269 2005-03-07  Wim Taymans  <wim@fluendo.com>
2270
2271         * check/.cvsignore:
2272         * check/Makefile.am:
2273         * check/gst-libs/.cvsignore:
2274         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2275         * check/gst/.cvsignore:
2276         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2277         (START_TEST), (gstbus_suite), (main):
2278         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2279         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2280         (gst_data_suite), (main):
2281         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2282         (add_fold_func), (gstiterator_suite), (main):
2283         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2284         (thread_name_object), (thread_name_object_default),
2285         (gst_object_name_compare), (gst_object_suite), (main):
2286         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2287         (gst_pad_suite), (main):
2288         * check/gstcheck.c: (gst_check_log_message_func),
2289         (gst_check_log_critical_func), (gst_check_init):
2290         * check/gstcheck.h:
2291         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2292         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2293         Added checks.
2294
2295 2005-03-07  Wim Taymans  <wim@fluendo.com>
2296
2297         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2298         (gst_list_iterator_next), (gst_list_iterator_resync),
2299         (gst_list_iterator_free), (gst_iterator_new_list),
2300         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2301         (gst_iterator_free), (gst_iterator_push), (filter_next),
2302         (filter_resync), (filter_uninit), (filter_free),
2303         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2304         (gst_iterator_foreach), (find_custom_fold_func),
2305         (gst_iterator_find_custom):
2306         * gst/gstiterator.h:
2307         Added missing files.
2308
2309 2005-03-07  Wim Taymans  <wim@fluendo.com>
2310
2311         * Makefile.am:
2312         * configure.ac:
2313         * docs/design/part-MT-refcounting.txt:
2314         * docs/design/part-conventions.txt:
2315         * docs/design/part-gstobject.txt:
2316         * docs/design/part-relations.txt:
2317         * examples/mixer/mixer.c: (main):
2318         * examples/thread/thread.c: (eos), (main):
2319         * gst/Makefile.am:
2320         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2321         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2322         (gst_spider_plug_from_srcpad):
2323         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2324         (gst_spider_identity_change_state),
2325         (gst_spider_identity_sink_loop_type_finding):
2326         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2327         * gst/elements/gstidentity.c: (gst_identity_init):
2328         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2329         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2330         * gst/elements/gsttypefindelement.c: (free_entry):
2331         * gst/gst.c:
2332         * gst/gst.h:
2333         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2334         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2335         (gst_bin_set_index), (gst_bin_set_element_sched),
2336         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2337         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2338         (gst_bin_iterate_elements), (iterate_child_recurse),
2339         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2340         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2341         (compare_interface), (gst_bin_get_by_interface),
2342         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2343         * gst/gstbin.h:
2344         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2345         (gst_buffer_default_free), (gst_buffer_default_copy),
2346         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2347         (gst_buffer_create_sub):
2348         * gst/gstbuffer.h:
2349         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2350         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2351         (gst_caps_unref), (gst_static_caps_get),
2352         (gst_caps_remove_and_get_structure), (gst_caps_append),
2353         (gst_caps_append_structure), (gst_caps_remove_structure),
2354         (gst_caps_copy_nth), (gst_caps_set_simple),
2355         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2356         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2357         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2358         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2359         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2360         (gst_caps_structure_figure_out_union),
2361         (gst_caps_switch_structures), (gst_caps_do_simplify),
2362         (gst_caps_replace), (gst_caps_from_string),
2363         (gst_caps_copy_conditional):
2364         * gst/gstcaps.h:
2365         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2366         (_gst_clock_id_free), (gst_clock_id_unref),
2367         (gst_clock_id_compare_func), (gst_clock_id_wait),
2368         (gst_clock_id_wait_async), (gst_clock_class_init),
2369         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2370         (gst_clock_get_time), (gst_clock_set_time_adjust),
2371         (gst_clock_set_property), (gst_clock_get_property):
2372         * gst/gstclock.h:
2373         * gst/gstcompat.h:
2374         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2375         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2376         * gst/gstdata.h:
2377         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2378         (gst_element_requires_clock), (gst_element_provides_clock),
2379         (gst_element_set_clock), (gst_element_clock_wait),
2380         (gst_element_wait), (gst_element_set_time_delay),
2381         (gst_element_is_indexable), (gst_element_add_pad),
2382         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2383         (pad_compare_name), (gst_element_get_static_pad),
2384         (gst_element_request_pad), (gst_element_get_request_pad),
2385         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2386         (gst_element_class_get_pad_template_list),
2387         (gst_element_class_get_pad_template), (gst_element_error_func),
2388         (gst_element_get_random_pad), (gst_element_get_event_masks),
2389         (gst_element_send_event), (gst_element_seek),
2390         (gst_element_get_query_types), (gst_element_query),
2391         (gst_element_get_formats), (gst_element_convert),
2392         (gst_element_is_locked_state), (gst_element_set_locked_state),
2393         (gst_element_sync_state_with_parent), (gst_element_change_state),
2394         (gst_element_finalize), (gst_element_yield),
2395         (gst_element_interrupt), (gst_element_set_scheduler),
2396         (gst_element_get_scheduler), (gst_element_set_loop_function):
2397         * gst/gstelement.h:
2398         * gst/gstevent.h:
2399         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2400         (gst_format_get_by_nick), (gst_format_get_details),
2401         (gst_format_iterate_definitions):
2402         * gst/gstformat.h:
2403         * gst/gstindex.c: (gst_index_gtype_resolver):
2404         * gst/gstinfo.c:
2405         * gst/gstinfo.h:
2406         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2407         (gst_mem_chunk_free):
2408         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2409         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2410         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2411         (gst_object_dispatch_properties_changed),
2412         (gst_object_set_name_default), (gst_object_set_name),
2413         (gst_object_get_name), (gst_object_set_name_prefix),
2414         (gst_object_get_name_prefix), (gst_object_set_parent),
2415         (gst_object_get_parent), (gst_object_unparent),
2416         (gst_object_check_uniqueness), (gst_object_save_thyself),
2417         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2418         (gst_object_set_property), (gst_object_get_property),
2419         (gst_object_get_path_string):
2420         * gst/gstobject.h:
2421         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2422         (gst_real_pad_init), (gst_real_pad_get_property),
2423         (gst_pad_custom_new), (gst_pad_get_direction),
2424         (gst_pad_set_active), (gst_pad_is_active),
2425         (gst_pad_set_event_function), (gst_pad_is_linked),
2426         (gst_pad_link_free), (gst_pad_link_intersect),
2427         (gst_pad_link_fixate), (gst_pad_set_caps),
2428         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2429         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2430         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2431         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2432         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2433         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2434         (gst_pad_realize), (gst_pad_get_allowed_caps),
2435         (gst_real_pad_dispose), (gst_real_pad_finalize),
2436         (gst_pad_collectv), (gst_pad_collect_valist),
2437         (gst_pad_template_dispose), (gst_pad_template_new),
2438         (gst_pad_get_internal_links):
2439         * gst/gstpad.h:
2440         * gst/gstpipeline.c: (gst_pipeline_dispose),
2441         (gst_pipeline_change_state):
2442         * gst/gstpipeline.h:
2443         * gst/gstplugin.c:
2444         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2445         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2446         * gst/gstpluginfeature.h:
2447         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2448         * gst/gstquery.c: (_gst_query_type_initialize),
2449         (gst_query_type_register), (gst_query_type_get_by_nick),
2450         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2451         * gst/gstquery.h:
2452         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2453         * gst/gstscheduler.c: (gst_scheduler_add_element),
2454         (gst_scheduler_factory_create):
2455         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2456         (gst_structure_free), (gst_structure_set_name),
2457         (gst_structure_id_set_value), (gst_structure_set_value),
2458         (gst_structure_set_valist), (gst_structure_remove_field),
2459         (gst_structure_remove_fields),
2460         (gst_structure_remove_fields_valist),
2461         (gst_structure_remove_all_fields), (gst_structure_foreach),
2462         (gst_structure_map_in_place),
2463         (gst_caps_structure_fixate_field_nearest_int),
2464         (gst_caps_structure_fixate_field_nearest_double):
2465         * gst/gststructure.h:
2466         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2467         (gst_system_clock_init), (gst_system_clock_dispose),
2468         (gst_system_clock_async_thread),
2469         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2470         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2471         * gst/gstsystemclock.h:
2472         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2473         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2474         * gst/gsttaginterface.c:
2475         * gst/gstthread.c: (gst_thread_dispose),
2476         (gst_thread_release_children_locks), (gst_thread_change_state),
2477         (gst_thread_main_loop):
2478         * gst/gsttrashstack.h:
2479         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2480         * gst/gsttypes.h:
2481         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2482         (gst_element_request_pad), (gst_element_get_pad_from_template),
2483         (gst_element_request_compatible_pad),
2484         (gst_element_get_compatible_pad_filtered),
2485         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2486         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2487         (gst_element_link_many), (gst_element_link),
2488         (gst_element_link_pads), (gst_element_unlink_pads),
2489         (gst_element_unlink_many), (gst_element_unlink),
2490         (gst_pad_can_link_filtered), (gst_pad_can_link),
2491         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2492         (gst_object_default_error), (gst_bin_add_many),
2493         (gst_bin_remove_many), (gst_element_populate_std_props),
2494         (gst_element_class_install_std_props), (gst_buffer_merge),
2495         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2496         (link_fold_func), (gst_pad_proxy_setcaps):
2497         * gst/gstutils.h:
2498         * gst/gstvalue.c: (gst_value_deserialize_string):
2499         * gst/parse/grammar.y:
2500         * gst/schedulers/gstbasicscheduler.c:
2501         (gst_basic_scheduler_cothreaded_chain),
2502         (gst_basic_scheduler_chain_recursive_add),
2503         (gst_basic_scheduler_pad_link):
2504         * gst/schedulers/gstoptimalscheduler.c:
2505         (get_group_schedule_function),
2506         (gst_opt_scheduler_state_transition),
2507         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2508         * libs/gst/bytestream/bytestream.c:
2509         * libs/gst/dataprotocol/dataprotocol.c:
2510         (gst_dp_header_from_buffer):
2511         * po/nb.po:
2512         * po/ru.po:
2513         * tests/threadstate/threadstate2.c: (eos):
2514         * tools/gst-compprep.c: (main):
2515         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
2516         (print_pad_info), (print_children_info):
2517         * tools/gst-launch.c: (idle_func), (main):
2518         * tools/gst-md5sum.c: (idle_func), (main):
2519         * tools/gst-xmlinspect.c: (print_element_info):
2520         First THREADED backport attempt, focusing on adding locks and
2521         making sure the API is threadsafe. Needs more work. More docs
2522         follow this week.
2523
2524 2005-02-24  Andy Wingo  <wingo@pobox.com>
2525
2526         * tests/bench-complexity.scm:
2527         * tests/complexity.gnuplot: New files, good for running complexity
2528         benchmarks.
2529
2530         * tests/Makefile.am:
2531         * tests/complexity.c: New test, sets up N elements, at each level
2532         teeing into M streams per element. Eeeenteresting.
2533
2534         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
2535         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
2536         running bench-mass_elements.scm.
2537
2538         * tests/bench-mass_elements.scm: New script, runs mass_elements
2539         for various numbers of identities, outputting the results to a
2540         file. Requires guile 1.6. Just for testing.
2541
2542 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2543
2544         * gst/schedulers/fairscheduler.c:
2545           compile with debug disabled
2546
2547 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2548
2549         * configure.ac:
2550           hunting season on 0.9 is now OPEN
2551
2552 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2553
2554         * docs/libs/tmpl/gstcontrol.sgml:
2555         * docs/libs/tmpl/gstdparam.sgml:
2556         * docs/libs/tmpl/gstdplinint.sgml:
2557         * docs/libs/tmpl/gstdpman.sgml:
2558         * docs/libs/tmpl/gstdpsmooth.sgml:
2559         * docs/libs/tmpl/gstunitconvert.sgml:
2560           more docs for the state of dparams
2561
2562 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2563
2564         * gst/gstelementfactory.c: (gst_element_factory_create):
2565         * gst/gstobject.c: (gst_object_init),
2566         (gst_object_set_name_default), (gst_object_set_name):
2567           name objects by default, not in gst_element_factory_create. Allows
2568           using elements created with g_object_new. (fixes #167283)
2569
2570 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2571
2572         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
2573           make the time that debugging functions print relative to when
2574           gst_init was called
2575
2576 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
2577
2578         * gst/gsttaginterface.c:
2579           Fix inline docs: tag setter vararg functions are NULL-terminated,
2580           GST_TAG_INVALID doesn't exist any more.
2581
2582 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2583
2584         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
2585         Allocate the 1 byte more memory that was forgotten!!!!!
2586         fixes memory corruption on 64bit platforms
2587
2588 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
2589
2590         * docs/pwg/building-pads.xml:
2591         * docs/pwg/intro-basics.xml:
2592           fixed a few typos, relabeled introductionary list of types
2593         * docs/random/ensonic/dparams.txt:
2594           more notes abut dparam changes
2595         * libs/gst/control/dparam.c: (gst_dparam_attach):
2596         * libs/gst/control/dparammanager.c:
2597         * libs/gst/control/dparammanager.h:
2598           - many comments and notes on dparam implementation
2599           - new dparams are were not initialized to the default value
2600             from param spec
2601
2602 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2603
2604         submitted by: Peter Astakhov
2605
2606         * po/LINGUAS:
2607         * po/ru.po:
2608           adding Russian translation
2609
2610 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2611
2612         * configure.ac:
2613         * docs/gst/Makefile.am:
2614         * docs/libs/Makefile.am:
2615           make sure popt is added to gtk-doc flags.  Fixes #147782.
2616
2617 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
2618
2619         * docs/faq/using.xml:
2620           Fix typo in FAQ (artssink => artsdsink)
2621
2622 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2623
2624         * tools/gst-launch.1.in:
2625           Fix typo (#166699).
2626
2627 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
2628
2629         * docs/faq/using.xml:
2630           Add -v argument to fakesrc/fakesink gst-launch line,
2631           so that the promised output will actually show up.
2632
2633 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2634
2635         * gst/gstthread.c: (gst_thread_change_state):
2636           Implement state-change error handling (#166073).
2637
2638 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2639
2640         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2641           Release interrupt after handling (#166250).
2642
2643 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2644
2645         * configure.ac:
2646           back to HEAD
2647
2648 === release 0.8.9 ===
2649
2650 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2651
2652         * NEWS:
2653         * RELEASE:
2654         * configure.ac:
2655           releasing 0.8.9, "Like Eating Glass"
2656
2657 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2658
2659         submitted by: Clytie Siddall
2660
2661         * po/vi.po: Added Vietnamese translation
2662
2663 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2664
2665         patch by: Tim Philipp-Müller
2666
2667         * configure.ac:
2668         * gst/gstpad.c:
2669           unref data when probe function returns FALSE.  Fixes #166362
2670
2671 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2672
2673         * gst/gst.c: (gst_init_get_popt_table):
2674           Fix typo (#166269).
2675
2676 2005-02-04  Andy Wingo  <wingo@pobox.com>
2677
2678         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
2679         the debugging on whether the caps are compatible.
2680
2681 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2682
2683         * docs/manual/basics-elements.xml:
2684           Fix two typos.
2685
2686 2005-02-02  Wim Taymans  <wim@fluendo.com>
2687
2688         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
2689         (schedule_chain), (get_invalid_call), (chain_invalid_call),
2690         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
2691         Remove some FIXMEs after analysing and commenting why they
2692         are not issues.
2693
2694 2005-02-02  Wim Taymans  <wim@fluendo.com>
2695
2696         * gst/schedulers/gstoptimalscheduler.c:
2697         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
2698         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
2699         (get_invalid_call), (chain_invalid_call),
2700         (get_group_schedule_function), (loop_group_schedule_function),
2701         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2702         (gst_opt_scheduler_state_transition),
2703         (gst_opt_scheduler_add_element),
2704         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
2705         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
2706         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
2707         (gst_opt_scheduler_show):
2708         Added lock to protect scheduler data structures.
2709
2710 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2711
2712         * testsuite/threads/threadi.c: (cb_data):
2713           Fix buglet in test.
2714
2715 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2716
2717         * testsuite/threads/Makefile.am:
2718         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
2719           On Wim's request, split the test in three separately-compiled
2720           tests that each test a very specific bug. Two of them still fail,
2721           will create bugs for those. threadi.c indicates why they fail.
2722
2723 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2724
2725         * gst/schedulers/gstoptimalscheduler.c:
2726         (get_group_schedule_function):
2727           Try to work with the threading mess that queue_link is.
2728
2729 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2730
2731         * gst/gstbin.c: (gst_bin_remove_func):
2732           Explicitely make an element release locks in a group when being
2733           remove from a bin.
2734         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2735           If there's no scheduler, always return immediately (similar to
2736           gst_element_interrupt).
2737
2738 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2739
2740         * gst/gstbin.c: (gst_bin_child_state_change_func):
2741           Remove a piece of code that could never be reached.
2742         * docs/gst/gstreamer-sections.txt:
2743         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
2744         (gst_pad_call_get_function):
2745         * gst/gstpad.h:
2746         * testsuite/pad/Makefile.am:
2747           Fix #150546, enable tests.
2748
2749 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2750
2751         * docs/pwg/advanced-types.xml:
2752           Fix description for buffer-frames=0.
2753         * docs/gst/tmpl/gstbin.sgml:
2754         * gst/gstbin.c: (gst_bin_child_state_change_func),
2755         (gst_bin_change_state), (gst_bin_change_state_norecurse):
2756         * gst/gstbin.h:
2757         * testsuite/threads/Makefile.am:
2758         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
2759         (cb_state), (cb_play), (main):
2760           Fix non-recursive state changes to *really* change the state
2761           of the object, and not just call parent_class->state_change.
2762           Fix a lot of lockups caused by this. Fixes #132775. Add test
2763           for the problem. Also enable test to show #142588 (fixed).
2764         * gst/gstthread.c: (gst_thread_change_state),
2765         (gst_thread_child_state_change):
2766           Don't exit the thread if we go to NULL and are inside thread
2767           context. Instead, return control to the main thread context
2768           and exit from there.
2769         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
2770           Don't unset virtual functions, since those may still be used.
2771           That's not necessarily correct, but suffices for now.
2772         * configure.ac:
2773         * testsuite/Makefile.am:
2774         * testsuite/pad/Makefile.am:
2775         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
2776         (gst_test_sink_base_init), (gst_test_sink_chain),
2777         (gst_test_sink_init), (main):
2778         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
2779         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
2780         (main):
2781         * testsuite/pad/link.c: (gst_test_element_class_init),
2782         (gst_test_element_base_init), (gst_test_src_get),
2783         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
2784         (gst_test_filter_loop), (gst_test_filter_init),
2785         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
2786         (cb_error), (main):
2787           Add tests to show #150546. Pass, but should fail (currently
2788           disabled from the testsuite).
2789         * gst/gstscheduler.c: (gst_scheduler_dispose):
2790           Dereference child schedulers on dispose (#94464).
2791         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
2792           Fix typo.
2793         * testsuite/threads/thread.c: (main):
2794           Add more debug.
2795
2796 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2797
2798         * gst/gstpad.c: (gst_pad_push):
2799           Oops, revert previous commit, broke testsuite...
2800
2801 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2802
2803         * gst/gstpad.c: (gst_pad_push):
2804           Add check that the pad on which the push is performed is not a
2805           get-based pad (#150546).
2806
2807 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2808
2809         * gst/elements/gsttypefindelement.c:
2810         (gst_type_find_element_handle_event):
2811           Fix buffer pushing if stream EOSes during typefinding.
2812
2813 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
2814
2815         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2816
2817         * gst/gstvalue.c: (gst_string_wrap):
2818           Allow NULL-strings as argument (#165365).
2819
2820 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
2821
2822         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2823
2824         * gst/schedulers/faircothreads.c:
2825         (gst_fair_scheduler_cothread_queue_show):
2826           Fix build without debug enabled.
2827
2828 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
2829
2830         * docs/gst/gstreamer-sections.txt:
2831         * docs/libs/gstreamer-libs-docs.sgml:
2832         * docs/libs/gstreamer-libs-sections.txt:
2833         * docs/libs/tmpl/gstcontrol.sgml:
2834         * docs/libs/tmpl/gstdparam.sgml:
2835         * docs/libs/tmpl/gstdplinint.sgml:
2836         * docs/libs/tmpl/gstdpman.sgml:
2837         * docs/libs/tmpl/gstdpsmooth.sgml:
2838         * docs/libs/tmpl/gstputbits.sgml:
2839         * docs/libs/tmpl/gstunitconvert.sgml:
2840         * libs/gst/control/dparam.c:
2841         * libs/gst/control/dparam.h:
2842         * libs/gst/control/dparammanager.c:
2843         (gst_dpman_add_required_dparam_callback),
2844         (gst_dpman_add_required_dparam_direct),
2845         (gst_dpman_add_required_dparam_array),
2846         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
2847         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
2848         (gst_dpman_get_manager)
2849           restructured DParam docs
2850
2851 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
2852
2853         * gst-element-check.m4:
2854           Only check for gst-inspect if we haven't already
2855           found it in previous element check runs
2856
2857 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
2858
2859         * docs/gst/Makefile.am:
2860         * docs/libs/Makefile.am:
2861           fixed install rules to treat style.css as optional
2862
2863 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
2864
2865         * docs/gst/Makefile.am:
2866         * docs/libs/Makefile.am:
2867           install style.css along with docs
2868         * docs/gst/tmpl/gstbin.sgml:
2869         * docs/gst/tmpl/gstclock.sgml:
2870         * docs/gst/tmpl/gstdata.sgml:
2871         * docs/gst/tmpl/gstelement.sgml:
2872         * gst/gstbin.h:
2873         * gst/gstelement.c: (gst_element_class_init):
2874         * gst/gstelement.h:
2875           fixing incomplete docs
2876
2877 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
2878
2879         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
2880           Don't unref seek event twice when fflush() fails
2881           
2882 2005-01-22  David Schleef  <ds@schleef.org>
2883
2884         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
2885
2886 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
2887
2888         * docs/gst/Makefile.am:
2889         * docs/libs/Makefile.am:
2890           added params for deprecation guards
2891         * gst/gst.c:
2892         * gst/gst.h:
2893         * gst/gsterror.c: (_gst_resource_errors_init),
2894         (_gst_stream_errors_init):
2895         * gst/gsterror.h:
2896           documented some more enums
2897
2898 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
2899         * gst/autoplug/gstspideridentity.c:
2900         Cosmetic fix - spider_find_peek should be static
2901         * gst/parse/parse.l:
2902         Applying fix for #164261
2903
2904 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
2905
2906         * docs/gst/gstreamer-sections.txt:
2907         * docs/gst/tmpl/gstplugin.sgml:
2908         * docs/libs/gstreamer-libs-sections.txt:
2909         * docs/libs/tmpl/gstcontrol.sgml:
2910         * gst/gstbuffer.h:
2911         * gst/gsttag.h:
2912         * gst/gstvalue.c:
2913           added docs for the TAG defines
2914
2915 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2916
2917         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2918           Only unref entry if there is an entry.
2919
2920 2005-01-17  Wim Taymans  <wim@fluendo.com>
2921
2922         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
2923         (remove_from_group), (schedule_group), (normalize_group),
2924         (gst_opt_scheduler_iterate):
2925         Also ref/unref decoupled elements before iterating the
2926         group since they are not added to the list of elements.
2927
2928 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2929
2930         * docs/manual/highlevel-components.xml:
2931           Add subtitle/streamselection as new features to playbin.
2932
2933 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2934
2935         * docs/manual/manual.xml:
2936           Re-enable dataaccess docs (oops).
2937
2938 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2939
2940         * docs/pwg/advanced-types.xml:
2941         * docs/random/mimetypes:
2942           Add documentation on libsndfile types (#163309), by Steve Baker
2943           <steve@stevebaker.org>.
2944         * gst/gstelement.c: (gst_element_release_request_pad):
2945           If an element has no explicit function, just remove the pad.
2946
2947 2005-01-17  Luca Ognibene  <luogni@tin.it>
2948
2949         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2950
2951         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
2952           Fix memleak (#163801).
2953
2954 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2955
2956         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
2957           I think this is actually more correct...
2958
2959 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2960
2961         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2962           Another workaround for memory access while destroyed in callback.
2963           Please, someone with refcount knowledge, have a look at this.
2964
2965 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2966
2967         * docs/faq/faq.xml:
2968         * docs/faq/legal.xml:
2969           move the legal Q&A here
2970
2971 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2972
2973         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
2974         (gst_tee_request_new_pad):
2975           Fix negotiation.
2976
2977 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2978
2979         * docs/random/omega/caps2:
2980         * testsuite/caps/caps_strings:
2981           replace framerate aproximations by their real value
2982           (24000/1001, 30000/1001, 60000/1001)
2983           Partially fixes bug #164049
2984
2985 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2986
2987         * docs/gst/Makefile.am:
2988           don't fail on the stupid GstPoptOption
2989
2990 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2991
2992         * gst/gstpad.h:
2993         * gst/gstprobe.c:
2994           allow probes to work on ghost pads by realizing the pad
2995           probe debugging
2996
2997 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2998
2999         * docs/gst/gstreamer-sections.txt:
3000         * docs/gst/tmpl/gstpad.sgml:
3001         * gst/gstpad.c: (gst_pad_set_active_recursive):
3002         * gst/gstpad.h:
3003           Add gst_pad_set_active_recursive().
3004
3005 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3006
3007         * docs/random/release:
3008           updates
3009         * gst/gst_private.h:
3010         * gst/gstinfo.c:
3011         * gst/gstobject.c:
3012           move deep_notify logging to a new category
3013         * gst/gstprobe.c:
3014         * gst/gstprobe.h:
3015           add stuff so bindings can wrap probes
3016
3017 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3018
3019         * gst/gstplugin.c: (gst_plugin_load):
3020           Fix plugin loading if plugin/lib was already loaded. Fixes
3021           #163383
3022
3023 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3024
3025         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3026
3027         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3028           Protect plugin loading by a mutex so it's threadsafe. Fixes
3029           #163234.
3030
3031 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3032
3033         * gst/gstevent.c: (_gst_event_copy):
3034           Reference source object when copying events, since it'll be
3035           dereferenced on event dereferencing as well.
3036
3037 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3038
3039         * docs/gst/gstreamer-sections.txt:
3040         * docs/gst/tmpl/gstevent.sgml:
3041         * gst/gstevent.c: (gst_event_new_filler_stamped),
3042         (gst_event_filler_get_duration):
3043         * gst/gstevent.h:
3044           Add two new functions for filler events (which are used to
3045           synchronize streams if one of them is not having any data
3046           for a while) without interrupting the actual data-stream.
3047           Basically a no-op.
3048         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3049         (gst_queue_link_sink), (gst_queue_link_src),
3050         (gst_queue_change_state):
3051           Allow for renegotiation while filled. Required for stream
3052           switching while playing.
3053
3054 2005-01-08  Benjamin Otte  <otte@gnome.org>
3055
3056         * gst/gstelement.c: (gst_element_link_many):
3057           fix up g_return_if_fail's
3058         * po/LINGUAS:
3059         * po/de.po:
3060           add German translation, that was somehow not included
3061
3062 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3063
3064         * docs/random/mimetypes:
3065           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3066           do not add them to riff-lib as they are not common
3067
3068 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3069
3070         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3071           Check for existence of probe after performing the probe before
3072           re-accessing it to prevent segfaults caused by removal of the
3073           probe in the callback.
3074
3075 2005-01-05  David Schleef  <ds@schleef.org>
3076
3077         * testsuite/registry/Makefile.am:
3078         * testsuite/registry/gst-print-formats.c:
3079         (print_pad_templates_info), (print_element_list),
3080         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3081         (g_list_uniqify), (get_pad_templates_info),
3082         (get_element_mime_list), (print_mime_list), (main): A little
3083         program that looks through the registry to find elements of
3084         a given type.  Not particularly interesting as a test, except
3085         that there's no other test covering the same area.
3086
3087 2005-01-05  David Schleef  <ds@schleef.org>
3088
3089         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3090         (fault_handler_sigaction), (fault_spin),
3091         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3092         in signal.h-type signal handlers by not calling forbidden functions,
3093         including gst_element_set_state().
3094
3095 2005-01-05  David Schleef  <ds@schleef.org>
3096
3097         * gst/gstvalue.h: Mark _gst_reserved[] as private
3098
3099 2005-01-05  David Schleef  <ds@schleef.org>
3100
3101         * gst/gstvalue.c: Fix doc build problem.
3102
3103 2005-01-05  David Schleef  <ds@schleef.org>
3104
3105         * gst/gstvalue.c: Add some documentation
3106
3107 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3108
3109         * docs/README:
3110           another shell oneliner for empty return value docs
3111         * gst/gstcaps.c:
3112         * gst/gstvalue.c:
3113         * libs/gst/control/dparam.c:
3114           more doc fixes (parameters and return values)
3115
3116 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3117
3118         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3119
3120         * gst/gstregistry.h:
3121         * gst/registries/gstxmlregistry.c:
3122           Fix macro's for Mingw (fixes #162276).
3123
3124 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3125
3126         * docs/README:
3127           quick shell oneliner to find undocumented members
3128         * docs/gst/tmpl/gstplugin.sgml:
3129         * docs/gst/tmpl/gstscheduler.sgml:
3130         * docs/gst/tmpl/gstthread.sgml:
3131           more enumtypes cleanup
3132         * gst/gsterror.h:
3133           activated documentation comments, now someone needs to document
3134           the enums :(
3135
3136 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3137
3138         * docs/manual/manual.xml:
3139           Add dataaccess part (doh!).
3140
3141 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3142
3143         * docs/manual/advanced-autoplugging.xml:
3144           Fix typo (intiate -> initiate).
3145
3146 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3147
3148         * docs/random/bbb/streamselection:
3149           Add some notes on how to handle multi-subtitle/-audio streams.
3150
3151 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3152
3153         * docs/gst/gstreamer-docs.sgml:
3154         * docs/gst/gstreamer-sections.txt:
3155         * docs/gst/tmpl/gstenumtypes.sgml:
3156         * docs/gst/tmpl/gsterror.sgml:
3157         * docs/gst/tmpl/gstevent.sgml:
3158         * docs/gst/tmpl/gstpad.sgml:
3159         * docs/gst/tmpl/gstpadtemplate.sgml:
3160         * docs/gst/tmpl/gstthread.sgml:
3161           removed gstenumtypes section from docs and put all the enums into
3162           their sections
3163
3164 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3165
3166         * gst/gstplugin.c:
3167           document gst_library_load a bit more (riff special case + return
3168           value if already loaded)
3169         * testsuite/bytestream/filepadsink.c:
3170           plugin name is 'gstbytestream', not 'bytestream'
3171
3172 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3173
3174         * docs/random/bbb/subtitles:
3175           Add some first mind rumblings on proper subtitle support.
3176
3177 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3178
3179         * po/ca.po:
3180         * po/sv.po:
3181           updated translations
3182
3183 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3184
3185         * docs/manual/advanced-dataaccess.xml:
3186           Add section on how to use fakesrc/fakesink/identity in your
3187           application, plus section on how to embed plugins. Also mention
3188           probes.
3189         * docs/manual/appendix-checklist.xml:
3190         * docs/manual/appendix-debugging.xml:
3191         * docs/manual/appendix-gnome.xml:
3192         * docs/manual/appendix-integration.xml:
3193           Debug -> checklist, GNOME -> integration, add sections on Linux,
3194           KDE integration and add other things useful for application
3195           development.
3196         * docs/manual/manual.xml:
3197           Remove some fixmes, update some file pointers.
3198         * docs/pwg/appendix-checklist.xml:
3199           Fix typo.
3200         * docs/pwg/building-boiler.xml:
3201           Remove ugly header and add commented fixme.
3202         * docs/pwg/pwg.xml:
3203           Add fixme.
3204         * examples/manual/Makefile.am:
3205           Add example for added docs.
3206
3207 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3208
3209         * configure.ac:
3210           back to HEAD
3211
3212 === release 0.8.8 ===
3213
3214 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3215
3216         * NEWS:
3217         * RELEASE:
3218         * configure.ac:
3219           Releasing 0.8.8, "I'll Take Care Of You"
3220
3221 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3222
3223         * configure.ac:
3224           second prerelease
3225
3226 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3227
3228         patch by: Wim Taymans
3229
3230         * gst/gstbin.c:
3231           Fix for #159852 - make iterate emission threadsafe
3232
3233 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3234
3235         * docs/faq/cvs.xml:
3236           notes about new fdo account request
3237
3238 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3239
3240         * docs/gst/gstreamer-docs.sgml:
3241         * docs/gst/tmpl/gstenumtypes.sgml:
3242         * docs/gst/tmpl/gstplugin.sgml:
3243         * docs/libs/gstreamer-libs-docs.sgml:
3244           Added missing short docs. Added ids for navigation.
3245
3246 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3247
3248         * docs/manual/advanced-autoplugging.xml:
3249         * docs/manual/advanced-schedulers.xml:
3250         * docs/manual/advanced-threads.xml:
3251           Rewrites. Remove cothreads, go a bit into opt specifically,
3252           document threads and their gotchas, and do some technical stuff
3253           on autoplugging plus add some working examples. Fixes #157395.
3254         * examples/manual/Makefile.am:
3255           Add typefind/autoplugger example (one that actually works).
3256           Remove queue example since it's a duplicate of the thread one.
3257
3258 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3259
3260         * gst/gstvalue.c: (gst_value_deserialize_string):
3261           use deprecated g_value_set_string_take_ownership to keep compatible
3262           with glib 2.2
3263
3264 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3265
3266         * gst/gstvalue.c: (gst_value_deserialize_string):
3267           revert last patch, only dom a g_utf8_validate now before accepting
3268           the string - caps parsing strips " from strings so we can't rely on
3269           them
3270         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3271           disable a test that tested the above and comment it
3272
3273 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3274
3275         Patch reviewed by David Schleef  <ds@schleef.org>
3276
3277         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3278         bug #153882)
3279         * win32/gstenumtypes.h: same
3280
3281 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3282
3283         * gst/gstpad.c: (gst_pad_query):
3284           Do query on realized pad, similar to how convert/send_event handle
3285           this. Also makes sense, since this pad belongs to the function to
3286           which this query will be sent. Fixes #158163.
3287
3288 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3289
3290         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3291
3292 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3293
3294         * docs/faq/general.xml: fix pipeline to actually work
3295
3296 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3297
3298         * gst/gstvalue.c: (gst_value_deserialize_string):
3299           check that a simple string that gets deserialized does not contain
3300           invalid characters
3301         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3302           remove a test that tested a wring behaviour
3303
3304 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3305
3306         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3307
3308         * docs/manual/intro-motivation.xml:
3309           Fix typos.
3310
3311 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3312
3313         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3314
3315         * docs/gst/tmpl/gstprobe.sgml:
3316           Fix documentation of probe callback - it is supposed to return
3317           FALSE, not TRUE, to remove data from the stream (#159087).
3318
3319 2004-12-16  Daniel Gazard  <dany42@free.fr>
3320
3321         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3322
3323         * gst/gstelementfactory.c: (gst_element_factory_create):
3324           Fix compile failure if compiling without libxml2 support (#149936).
3325
3326 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3327
3328         * docs/manual/advanced-autoplugging.xml:
3329         * docs/manual/highlevel-components.xml:
3330           Move spider from autoplugging to components. Autoplugging is for
3331           internals, not for solutions. ;-).
3332
3333 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3334
3335         * docs/random/ds/0.9-suggested-changes:
3336           Make note on device/location/uri property names.
3337
3338 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3339
3340         * docs/manual/advanced-autoplugging.xml:
3341         * docs/manual/advanced-clocks.xml:
3342         * docs/manual/advanced-interfaces.xml:
3343         * docs/manual/advanced-metadata.xml:
3344         * docs/manual/advanced-position.xml:
3345         * docs/manual/advanced-schedulers.xml:
3346         * docs/manual/advanced-threads.xml:
3347         * docs/manual/appendix-gnome.xml:
3348         * docs/manual/appendix-programs.xml:
3349         * docs/manual/appendix-quotes.xml:
3350         * docs/manual/autoplugging.xml:
3351         * docs/manual/basics-bins.xml:
3352         * docs/manual/basics-data.xml:
3353         * docs/manual/basics-elements.xml:
3354         * docs/manual/basics-helloworld.xml:
3355         * docs/manual/basics-init.xml:
3356         * docs/manual/basics-pads.xml:
3357         * docs/manual/basics-plugins.xml:
3358         * docs/manual/bins-api.xml:
3359         * docs/manual/bins.xml:
3360         * docs/manual/buffers-api.xml:
3361         * docs/manual/buffers.xml:
3362         * docs/manual/clocks.xml:
3363         * docs/manual/components.xml:
3364         * docs/manual/cothreads.xml:
3365         * docs/manual/debugging.xml:
3366         * docs/manual/dparams-app.xml:
3367         * docs/manual/dynamic.xml:
3368         * docs/manual/elements-api.xml:
3369         * docs/manual/elements.xml:
3370         * docs/manual/factories.xml:
3371         * docs/manual/gnome.xml:
3372         * docs/manual/goals.xml:
3373         * docs/manual/helloworld.xml:
3374         * docs/manual/helloworld2.xml:
3375         * docs/manual/highlevel-components.xml:
3376         * docs/manual/highlevel-xml.xml:
3377         * docs/manual/init-api.xml:
3378         * docs/manual/intro-basics.xml:
3379         * docs/manual/intro-motivation.xml:
3380         * docs/manual/intro-preface.xml:
3381         * docs/manual/intro.xml:
3382         * docs/manual/links-api.xml:
3383         * docs/manual/links.xml:
3384         * docs/manual/manual.xml:
3385         * docs/manual/motivation.xml:
3386         * docs/manual/pads-api.xml:
3387         * docs/manual/pads.xml:
3388         * docs/manual/plugins-api.xml:
3389         * docs/manual/plugins.xml:
3390         * docs/manual/programs.xml:
3391         * docs/manual/queues.xml:
3392         * docs/manual/quotes.xml:
3393         * docs/manual/schedulers.xml:
3394         * docs/manual/states-api.xml:
3395         * docs/manual/states.xml:
3396         * docs/manual/threads.xml:
3397         * docs/manual/typedetection.xml:
3398         * docs/manual/win32.xml:
3399         * docs/manual/xml.xml:
3400           Try 2. This time, include a short preface as a "general
3401           introduction", also add code blocks around all code samples
3402           so they get compiled. We still need a way to tell readers
3403           the filename of the code sample. In some cases, don't show
3404           all code in the documentation, but do include it in the generated
3405           code. This allows for focussing on specific bits in the docs,
3406           while still having a full test application available.
3407         * examples/manual/Makefile.am:
3408           Fix up examples for new ADM. Add several of the new examples that
3409           were either added or were missing from the build system.
3410         * examples/manual/extract.pl:
3411           Allow nameless blocks.
3412
3413 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3414
3415         * docs/manual/elements-api.xml:
3416         * docs/manual/helloworld.xml:
3417         * examples/manual/extract.pl:
3418           fix last example.  Add example of adding code blocks that are not
3419           shown in docbook output.
3420
3421 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3422
3423         * docs/manual/dynamic.xml:
3424         * docs/manual/elements-api.xml:
3425         * docs/manual/gnome.xml:
3426         * docs/manual/helloworld2.xml:
3427         * docs/manual/init-api.xml:
3428         * docs/manual/queues.xml:
3429         * docs/manual/threads.xml:
3430         * docs/manual/xml.xml:
3431         * examples/manual/extract.pl:
3432           Make it possible to extract example code from separate blocks.
3433           Should make Ronald happy.
3434
3435 2004-12-15  Wim Taymans  <wim@fluendo.com>
3436
3437         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3438         (remove_from_group), (group_elements_set_visited),
3439         (normalize_group), (gst_opt_scheduler_iterate):
3440         Fix bug where a flag was not updated on a decoupled entry point 
3441         because we were just checking the group element list and decoupled
3442         elements are not in that list..
3443
3444 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3445
3446         * docs/manual/advanced-autoplugging.xml:
3447         * docs/manual/advanced-clocks.xml:
3448         * docs/manual/advanced-dparams.xml:
3449         * docs/manual/advanced-interfaces.xml:
3450         * docs/manual/advanced-metadata.xml:
3451         * docs/manual/advanced-position.xml:
3452         * docs/manual/advanced-schedulers.xml:
3453         * docs/manual/advanced-threads.xml:
3454         * docs/manual/appendix-debugging.xml:
3455         * docs/manual/appendix-gnome.xml:
3456         * docs/manual/appendix-programs.xml:
3457         * docs/manual/appendix-quotes.xml:
3458         * docs/manual/appendix-win32.xml:
3459         * docs/manual/autoplugging.xml:
3460         * docs/manual/basics-bins.xml:
3461         * docs/manual/basics-data.xml:
3462         * docs/manual/basics-elements.xml:
3463         * docs/manual/basics-helloworld.xml:
3464         * docs/manual/basics-init.xml:
3465         * docs/manual/basics-pads.xml:
3466         * docs/manual/basics-plugins.xml:
3467         * docs/manual/bins-api.xml:
3468         * docs/manual/bins.xml:
3469         * docs/manual/buffers-api.xml:
3470         * docs/manual/buffers.xml:
3471         * docs/manual/clocks.xml:
3472         * docs/manual/components.xml:
3473         * docs/manual/cothreads.xml:
3474         * docs/manual/debugging.xml:
3475         * docs/manual/dparams-app.xml:
3476         * docs/manual/dynamic.xml:
3477         * docs/manual/elements-api.xml:
3478         * docs/manual/elements.xml:
3479         * docs/manual/factories.xml:
3480         * docs/manual/gnome.xml:
3481         * docs/manual/goals.xml:
3482         * docs/manual/helloworld.xml:
3483         * docs/manual/helloworld2.xml:
3484         * docs/manual/highlevel-components.xml:
3485         * docs/manual/highlevel-xml.xml:
3486         * docs/manual/init-api.xml:
3487         * docs/manual/intro-motivation.xml:
3488         * docs/manual/intro-preface.xml:
3489         * docs/manual/intro.xml:
3490         * docs/manual/links-api.xml:
3491         * docs/manual/links.xml:
3492         * docs/manual/manual.xml:
3493         * docs/manual/motivation.xml:
3494         * docs/manual/pads-api.xml:
3495         * docs/manual/pads.xml:
3496         * docs/manual/plugins-api.xml:
3497         * docs/manual/plugins.xml:
3498         * docs/manual/programs.xml:
3499         * docs/manual/queues.xml:
3500         * docs/manual/quotes.xml:
3501         * docs/manual/schedulers.xml:
3502         * docs/manual/states-api.xml:
3503         * docs/manual/states.xml:
3504         * docs/manual/threads.xml:
3505         * docs/manual/typedetection.xml:
3506         * docs/manual/win32.xml:
3507         * docs/manual/xml.xml:
3508           First try at rewriting the ADM. Needs lotsamore work, but some
3509           parts might already be somewhat useful.
3510         * docs/pwg/advanced-interfaces.xml:
3511           Remove properties interface, it never actually existed (except for
3512           on my HD...).
3513
3514 2004-12-13  David Schleef  <ds@schleef.org>
3515
3516         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
3517         be NULL (bug #160220).
3518
3519 2004-12-13  David Schleef  <ds@schleef.org>
3520
3521         * configure.ac: remove all mmx stuff, because it's not used.
3522         * docs/random/ds/0.9-suggested-changes: additional notes
3523         * include/Makefile.am: we don't use these anymore
3524         * include/mmx.h: remove
3525         * include/sse.h: remove
3526
3527 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3528
3529         * docs/random/mimetypes:
3530           Add FOURCC code for h264 codec (VSSH)
3531           Add alternate FOURCC codes for h263 related codecs
3532
3533 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
3534
3535         * docs/manual/programs.xml:
3536           Added more gst-launch examples.
3537
3538 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3539
3540         * gst/gstqueue.c: (gst_queue_handle_src_query):
3541           Check for availability again.
3542
3543 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3544
3545         * gst/gstcaps.c: (gst_caps_compare_structures):
3546           Simple caps go first. This has the nice side-effect of fixing an
3547           obscure warning.
3548
3549 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3550
3551         * gst/gstversion.h.in:
3552           Protect header.
3553
3554 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3555
3556         * gst/schedulers/gstoptimalscheduler.c:
3557         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
3558         (gst_opt_scheduler_get_wrapper):
3559           When we're recursing into a chain run, only run the directly
3560           related group, not all queued ones. This will fix a possible
3561           deadlock in chains with more than two groups.
3562
3563 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3564
3565         * autogen.sh:
3566           remove patch if autopoint fails
3567
3568 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3569
3570         * docs/gst/gstreamer-sections.txt:
3571           Document Thomas' addition, fix build, make Luis the sheriff happy.
3572
3573 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3574
3575         * gst/gstplugin.c:
3576         * gst/gstplugin.h:
3577           add accessor for version field
3578
3579 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3580
3581         submitted by: Luca Ferretti <elle.uca@infinito.it>
3582
3583         * po/LINGUAS:
3584         * po/it.po:
3585           New tranlation added: Italian
3586
3587 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3588
3589         * gst/gstpad.c: (gst_pad_is_negotiated),
3590         (gst_pad_get_negotiated_caps):
3591           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
3592           it doesn't actually check the contents), so be sure to hand it
3593           a RealPad else we'll crash.
3594
3595 2004-12-03  Wim Taymans  <wim@fluendo.com>
3596
3597         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3598         (gst_queue_link), (gst_queue_handle_src_query):
3599         Reverted to 1.110 until this makes the testsuite and various
3600         apps work.
3601
3602 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
3603
3604         * docs/upload.mak: fix included CVS conflict strings
3605
3606 2004-12-01  William Jon McCann  <mccann@jhu.edu>
3607
3608         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3609
3610         * gst/gstelement.c: (gst_element_error_full):
3611           Use g_error_new_literal because error text may have
3612           percentage signs in it. Fixes #160019.
3613
3614 2004-12-01  Benjamin Otte  <otte@gnome.org>
3615
3616         * gst/elements/gstbufferstore.c:
3617         (gst_buffer_store_add_buffer_func):
3618           don't try to make subbuffers bigger than they can be. (fixes
3619           #159970)
3620
3621 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3622
3623         * docs/gst/gstreamer-sections.txt:
3624         * docs/gst/tmpl/gstvalue.sgml:
3625           Add new function to docs to fix build.
3626
3627 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3628
3629         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
3630         * gst/gstpad.c: (_gst_pad_default_fixate_value),
3631         (_gst_pad_default_fixate_foreach):
3632         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
3633         * gst/gstvalue.h:
3634           Deprecate _type_is_fixed, use _value_is_fixed instead, since
3635           in some cases (arrays), the fixedness depends on the content.
3636         * gst/gstqueue.c: (gst_queue_handle_src_query):
3637           Check for availability before doing something.
3638
3639 2004-11-29  Wim Taymans  <wim@fluendo.com>
3640
3641         * testsuite/threads/Makefile.am:
3642         * testsuite/threads/signals.c: (gst_test_get_type),
3643         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
3644         (gst_test_set_property), (gst_test_get_property),
3645         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
3646         (gst_test_do_prop), (run_thread), (main):
3647         Added a bunch of testcases that show threadsafety bugs in glib.
3648
3649 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
3650
3651         * docs/manual/programs.xml:
3652           Added a first batch of gst-launch examples, as provided by Ronald
3653           and others from the devel-mlist
3654
3655 2004-11-28  Benjamin Otte  <otte@gnome.org>
3656
3657         * gst/gstelement.c: (gst_element_negotiate_pads):
3658           simplify
3659         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
3660         (gst_value_serialize_string), (gst_value_deserialize_string):
3661           add unwrapping of previously wrapped strings. Fix bug in wrapping
3662           while at it.
3663         * testsuite/caps/value_serialize.c: (test1),
3664         (test_string_serialization), (test_string_deserialization), (main):
3665           add tests for string (de)serialization
3666
3667 2004-11-26  Wim Taymans  <wim@fluendo.com>
3668
3669         * testsuite/threads/159566.c: (object_deep_notify), (main):
3670         * testsuite/threads/Makefile.am:
3671         Added testsuite to show bug #159566
3672
3673 2004-11-25  Wim Taymans  <wim@fluendo.com>
3674
3675         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
3676         (gst_thread_child_state_change), (gst_thread_main_loop):
3677         Ref the thread object in the GThread mainloop. Break out of the
3678         thread mainloop if it holds the last ref. This properly exits
3679         the threads when disposing the thread from its own context. It
3680         also avoids possible deadlocks in the dispose function.
3681
3682 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
3683
3684         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
3685         it is necessary to wait.
3686
3687 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3688
3689         * docs/pwg/building-boiler.xml:
3690           Make description somewhat clearer.
3691
3692 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3693
3694         * docs/upload.mak:
3695           Apparently docs changed location on FDO's server.
3696
3697 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3698
3699         * docs/pwg/appendix-checklist.xml:
3700           Add some random notes on things to check when writing an element.
3701           This list can be extended as people see fit.
3702
3703 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
3704
3705         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
3706         (gst_queue_link_src): Allow for renegotiating the caps of the sink
3707         pad. The queue will now wait until it is empty and forward the new
3708         caps to the source.
3709         * gst/gstbin.c (gst_bin_set_element_sched)
3710         (gst_bin_unset_element_sched): Make sure that all elements and
3711         links are registered and unregistered with the scheduler exactly
3712         once. This elaborates on a fix by Benjamin Otte, but
3713         guarantees that decoupled elements are also registered.
3714
3715 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3716
3717         * docs/manual/quotes.xml:
3718           add a quote
3719         * configure.ac:
3720         * gst/gst.c:
3721         * gst/gstinfo.c:
3722           add LIBDIR and move init message higher up so it's at the start
3723
3724 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3725
3726         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
3727         * gstreamer.spec.in: add fair
3728
3729 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3730
3731         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3732         * gst/elements/gstidentity.c: (gst_identity_class_init):
3733           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
3734           <teuf@gnome.org> (#157263).
3735         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3736         (gst_type_find_handle_src_query):
3737           Subtract size of internally stored data from position queries.
3738
3739 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
3740
3741         * gst/schedulers/fairscheduler.c:
3742         * gst/schedulers/faircothreads.c:
3743         * gst/schedulers/faircothreads.h:
3744         New cothread based scheduler: Fair scheduler.
3745         * gst/schedulers/gthread-cothreads.h: 
3746         Add the standard #if around the whole file.
3747         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
3748         compilation of the functions defined in this file. This is
3749         necessary to be able to use this file as a normal header.
3750         * gst/schedulers/Makefile.am: Add compiling support for fair
3751         scheduler.
3752         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
3753         scheduler cothreads layer from documentation generation.
3754
3755 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3756
3757         * gst/autoplug/gstspideridentity.c:
3758         (gst_spider_identity_sink_loop_type_finding):
3759           Don't crash if that function is not implemented.
3760
3761 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3762
3763         * docs/pwg/advanced-types.xml:
3764           Another typo.
3765
3766 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3767
3768         * docs/pwg/intro-preface.xml:
3769           Hm, ok, so the brackets weren't really useful...
3770         * docs/pwg/other-ntoone.xml:
3771           Fix embarassing typo.
3772
3773 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3774
3775         * docs/pwg/intro-preface.xml:
3776           Rewrite preface.
3777
3778 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3779
3780         * docs/pwg/advanced-scheduling.xml:
3781         * docs/pwg/advanced-tagging.xml:
3782         * docs/pwg/advanced-types.xml:
3783         * docs/pwg/building-boiler.xml:
3784         * docs/pwg/building-chainfn.xml:
3785         * docs/pwg/building-signals.xml:
3786         * docs/pwg/building-state.xml:
3787         * docs/pwg/building-testapp.xml:
3788         * docs/pwg/intro-basics.xml:
3789         * docs/pwg/other-manager.xml:
3790         * docs/pwg/other-source.xml:
3791           Typo fixes.
3792         * docs/pwg/other-manager.xml:
3793           Add some first content. No example code yet.
3794         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3795           Remove double newlines.
3796
3797 2004-11-04  Wim Taymans  <wim@fluendo.com>
3798
3799         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3800         (remove_from_group), (normalize_group), (group_migrate_connected),
3801         (gst_opt_scheduler_iterate):
3802         * testsuite/schedulers/.cvsignore:
3803         * testsuite/schedulers/Makefile.am:
3804         * testsuite/schedulers/queue_link.c: (main):
3805         Added testcase for scheduler segfault.
3806         Fix scheduler segfault when removing a decoupled
3807         entry point as the last element from a group.
3808
3809 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3810
3811         * gst/gstmarshal.list: add missing marshaller, fixes build
3812
3813 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3814
3815         * docs/random/signal: added notes about using BOXED for GstBuffer
3816         signal marshallers, not POINTER
3817
3818 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3819
3820         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3821         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
3822         POINTER=>BOXED changes to marshal GstBuffers
3823
3824 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3825
3826         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
3827         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
3828
3829 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
3830
3831         * docs/gst/gstreamer-sections.txt:
3832         * docs/gst/tmpl/gstcaps.sgml:
3833         * docs/gst/tmpl/gsterror.sgml:
3834         * docs/gst/tmpl/gstinfo.sgml:
3835         * docs/gst/tmpl/gstmacros.sgml:
3836         * docs/gst/tmpl/gstutils.sgml:
3837         * docs/random/ensonic/interfaces.txt:
3838         * gst/gstinfo.h:
3839           added some more docs, removed two obsolete defines
3840
3841 2004-11-02  Kjartan Maraas <as at gnome.org>
3842
3843         reviewed by: Wim Taymans, Ronald Bultje.
3844
3845         * gst/cothreads.c: (cothread_create):
3846         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3847         (gst_bin_child_state_change_func):
3848         * gst/gstbuffer.c: (gst_buffer_span):
3849         * gst/gstelement.c: (gst_element_get_index),
3850         (gst_element_get_event_masks), (gst_element_get_query_types),
3851         (gst_element_get_formats):
3852         * gst/gsterror.c: (_gst_core_errors_init),
3853         (_gst_library_errors_init), (_gst_resource_errors_init),
3854         (_gst_stream_errors_init):
3855         * gst/gstobject.c: (gst_object_default_deep_notify):
3856         * gst/gstpad.c: (gst_pad_get_event_masks),
3857         (gst_pad_get_internal_links_default):
3858         * gst/gstplugin.c: (gst_plugin_register_func),
3859         (gst_plugin_get_module):
3860         * gst/gststructure.c: (gst_structure_get_string),
3861         (gst_structure_get_abbrs), (gst_structure_from_abbr),
3862         (gst_structure_to_abbr):
3863         * gst/gstutils.c: (gst_print_element_args):
3864         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3865         (setup_group_scheduler), (gst_opt_scheduler_iterate):
3866         Aplied part of patch #157127: Cleanup of issues reported by 
3867         sparse.
3868         Also do not try to use cothreads when there is no cothread
3869         context yet.
3870
3871 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
3872
3873         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3874         (gst_opt_scheduler_iterate):
3875         Applied patch #154061. Running a pipeline in which an element 
3876         calls GST_ELEMENT_ERROR in the chain function, the opt 
3877         scheduler doesn't unref the chain so it never gets freed.
3878
3879 2004-11-02  Wim Taymans  <wim@fluendo.com>
3880
3881         * gst/gststructure.c: (gst_structure_get_abbrs),
3882         (gst_structure_from_abbr), (gst_structure_to_abbr):
3883         Remove that ugly if-then thing in the code that converts
3884         between strings and types.
3885
3886 2004-11-02  Wim Taymans  <wim@fluendo.com>
3887
3888         * gst/gstscheduler.c: (gst_scheduler_add_element),
3889         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
3890         Aplied clock distribution patch, this should fix bug
3891         #148787.
3892
3893 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3894
3895         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
3896
3897         * po/LINGUAS:
3898         * po/nb.po:
3899           Added Norwegian Bokmaal translation
3900
3901 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3902
3903         * tools/gst-inspect.c: (print_signal_info):
3904           print signal arguments as pointers if they are
3905
3906 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
3907
3908         * docs/pwg/building-boiler.xml:
3909           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
3910
3911 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3912
3913         * gst/parse/parse.l:
3914         * testsuite/parse/parse1.c: (main):
3915         Since parse can do 'element name=a:b' make 'a:b.' work as
3916         well. 
3917         Added testcase to verify fix.
3918
3919 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3920
3921         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
3922         Use the realpad when printing the direction.
3923         Add extra \n when printing extensions of typefind factories.
3924
3925 2004-10-13  David Schleef  <ds@schleef.org>
3926
3927         * examples/manual/Makefile.am: $< isn't portable in Makefile
3928         rules.
3929
3930 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
3931
3932         * docs/gst/tmpl/gstobject.sgml:
3933         * docs/gst/tmpl/gstplugin.sgml:
3934         * docs/gst/tmpl/gstpluginfeature.sgml:
3935         * docs/gst/tmpl/gstregistry.sgml:
3936         * docs/gst/tmpl/gstversion.sgml:
3937         * gst/gstbin.c:
3938           more api documentation
3939         * gst/gstplugin.c: (gst_plugin_register_func),
3940         (gst_plugin_check_file), (gst_plugin_load_file):
3941           better error signaling and logging
3942
3943 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3944
3945         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
3946           Subtract current queue contents from position queries.
3947
3948 2004-10-11  Johan Dahlin  <johan@gnome.org>
3949
3950         * gst/gsturi.c (gst_uri_get_location): unescape string
3951         (gst_uri_construct): escape string.
3952
3953 2004-10-11  Benjamin Otte  <otte@gnome.org>
3954
3955         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
3956         (gst_pad_try_set_caps_nonfixed):
3957           allow renegotiation of unconnected pads (as inside spider). Simply
3958           return OK if unconnected - mimic try_set_caps there.
3959
3960 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3961
3962         * gst/gstbin.c: (gst_bin_sync_children_state):
3963           Add missing break.
3964
3965 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3966
3967         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
3968         Set element to EOS before sending EOS event
3969
3970 2004-10-08  Wim Taymans  <wim at fluendo dot com>
3971
3972         * gst/elements/gsttypefindelement.c:
3973         (gst_type_find_element_handle_event):
3974         Handle EOS events when doing the transition from
3975         typefind to data passing. This should fix the
3976         infinite loops in short files.
3977
3978 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3979
3980         * gst/gstthread.c: (gst_thread_change_state),
3981         (gst_thread_child_state_change):
3982         Make sure no iteration happens while performing
3983         the state change as it could mess up the internal
3984         consistency of the thread state.
3985
3986 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3987
3988         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
3989         (gst_thread_change_state), (gst_thread_child_state_change):
3990         Do not try to grab the iterate lock in the state change method
3991         when we are in the same thread as the iterate or else we
3992         could deadlock. Some other cleanups.
3993
3994 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3995
3996         * configure.ac:
3997           bump nano to cvs
3998
3999 === release 0.8.7 ===
4000
4001 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4002
4003         * configure.ac:
4004         * NEWS:
4005         * RELEASE:
4006         * configure.ac:
4007           releasing 0.8.7, "A Cruise"
4008
4009 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4010
4011         * docs/random/mimetypes:
4012         Add an entry for Sony ATRAC3 audio format with mime-type
4013         used by rmdemux et riff-read
4014
4015 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4016
4017         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4018         Push the buffer store instead of clearing it in case that
4019         the stream is not seekable.
4020
4021 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4022
4023         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4024         (gst_thread_main_loop):
4025         Lock the iteration and the state change so that automatic
4026         negotiation and fixation does not happen at the same time
4027         as the in stream negotiation.
4028
4029 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4030
4031         * configure.ac:
4032           bump nano to cvs
4033
4034 === release 0.8.6 ===
4035
4036 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4037
4038         * configure.ac:
4039         * NEWS:
4040         * RELEASE:
4041         * configure.ac:
4042           releasing 0.8.6, "Narc"
4043
4044 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4045
4046         * configure.ac:
4047           prerel bump
4048
4049 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4050
4051         patch by: Steve Lhomme
4052
4053         * gst/elements/gstfakesrc.c:
4054         * gst/elements/gstidentity.c:
4055         * gst/gstthread.c:
4056           Fix for #153881
4057
4058 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4059
4060         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4061         Fix threadsafety of the crc checking function.
4062
4063 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4064
4065         patch by: Ronald Bultje
4066
4067         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4068         (gst_type_find_element_handle_event),
4069         (gst_type_find_element_chain):
4070         * gst/elements/gsttypefindelement.h:
4071          #153657.
4072          Filter out discont event from seekable sources when typefind
4073          asks them to seek.  Fixes typefind with demuxers for
4074          avi, asf and matroska.
4075
4076 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4077
4078         * docs/gst/gstreamer-sections.txt:
4079         * gst/gstcaps.c:
4080         * gst/gstcaps.h:
4081         * gst/gstpad.c:
4082           Revert preferred caps: (#147789)
4083
4084 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4085
4086         * win32/dirent.c:
4087           fix a memory leak
4088
4089 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4090
4091         * configure.ac:
4092           bump for prerelease
4093
4094 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4095
4096         * docs/Makefile.am:
4097         * docs/manual/elements-api.xml:
4098           restructure so that common stuff is shown first
4099         * docs/manual/init-api.xml:
4100           convert to examples
4101         * docs/manual/manual.xml:
4102         * docs/manuals.mak:
4103         * docs/url.entities:
4104           link to API on the website, possibly override later in build
4105         * examples/manual/.cvsignore:
4106           ignore more
4107         * examples/manual/Makefile.am:
4108           add more examples
4109         * examples/manual/extract.pl:
4110           error out on failure
4111
4112 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4113
4114         * docs/gst/tmpl/gstthread.sgml:
4115         * docs/manual/init-api.xml:
4116         * examples/manual/Makefile.am:
4117           convert two code bits to examples
4118
4119 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4120
4121         * gst/gstelement.c: (gst_element_change_state):
4122           Well, actually, I was about to remove this insane assert when
4123           I noticed Wim already did that. A warning is nice so we can
4124           fix actual ugs (using --g-fatal-warnings and backtraces), so
4125           I added that instead.
4126
4127 2004-09-06  Wim Taymans  <wim@fluendo.com>
4128
4129         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4130         (gst_element_threadsafe_properties_post_run),
4131         (gst_element_set_state), (gst_element_change_state):
4132         Added extra refcounting around various places. 
4133
4134 2004-09-06  Wim Taymans  <wim@fluendo.com>
4135
4136         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4137         Fix debug info.
4138
4139 2004-09-06  Wim Taymans  <wim@fluendo.com>
4140
4141         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4142         (remove_from_group):
4143         Some more debug info.
4144
4145 2004-09-03  Wim Taymans  <wim@fluendo.com>
4146
4147         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4148         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4149         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4150         (gst_fakesrc_get), (gst_fakesrc_change_state):
4151         * gst/elements/gstfakesrc.h:
4152         * gst/elements/gstidentity.c: (gst_identity_class_init),
4153         (gst_identity_init), (gst_identity_chain),
4154         (gst_identity_set_property), (gst_identity_get_property),
4155         (gst_identity_change_state):
4156         * gst/elements/gstidentity.h:
4157         Added datarate properties to limit the datarate.
4158
4159 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4160
4161         * gst/autoplug/gstspider.c: (plugin_init):
4162           don't set a rank. We don't want to autoplug by inserting spiders.
4163
4164 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4165
4166         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4167         (gst_spider_identity_plug):
4168           add a template for spider's sink
4169         * gst/gst.c: (gst_register_core_elements):
4170           queue's rank should be NULL, we don't want spider to add it.
4171
4172 2004-08-18  David Schleef  <ds@schleef.org>
4173
4174         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4175         * docs/libs/Makefile.am: same
4176         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4177         * docs/random/ds/0.9-planning: random additions
4178         * docs/random/ds/0.9-suggested-changes: same
4179         * gst/gstxml.h: remove vestigal GstXMLNs definition
4180
4181         Preferred caps: (#147789)
4182         * docs/gst/gstreamer-sections.txt: Add symbols
4183         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4184         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4185         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4186         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4187         (gst_caps_get_preferred), (gst_caps_set_preferred),
4188         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4189         (gst_caps_use_preferred): Handle caps preferences
4190         * gst/gstcaps.h: Add caps preferences
4191         * gst/gstpad.c: (gst_pad_link_get_preferred),
4192         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4193         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4194         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4195         negotiation.
4196
4197 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4198
4199         * gst/autoplug/gstspideridentity.c:
4200         (gst_spider_identity_request_new_pad):
4201         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4202         (gst_aggregator_init):
4203         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4204         (gst_fakesink_init):
4205         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4206         (gst_fakesrc_init):
4207         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4208         (gst_fdsink_init):
4209         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4210         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4211         (gst_filesink_init):
4212         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4213         (gst_filesrc_init):
4214         * gst/elements/gstidentity.c: (gst_identity_base_init),
4215         (gst_identity_init):
4216         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4217         (gst_multifilesrc_init):
4218         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4219         (gst_pipefilter_init):
4220         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4221         (gst_statistics_init):
4222         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4223         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4224           s/gst_pad_new/&_from_template/
4225           register pad templates in the base_init function
4226           add static pad template definitions
4227
4228 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4229
4230         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4231         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4232         * testsuite/refcounting/pad.c: (main):
4233         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4234           s/gst_pad_new/&_from_template/
4235           prepare deprecation of gst_pad_new
4236
4237 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4238
4239         patch by: Luca Ognibene <skaboy81@virgilio.it>
4240
4241         * gst/gstcaps.c:
4242         * gst/gstelement.c:
4243         * gst/gstpad.c:
4244         * gst/gstxml.c:
4245           fix memleaks.  Fixes #150001
4246
4247 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4248
4249         * docs/random/ds/0.9-suggested-changes:
4250           add notes - mostly about pad templates
4251
4252 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4253
4254         * win32/GStreamer.vcproj:
4255           temporary locale files are .gmo not .mo
4256
4257 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4258
4259         * configure.ac: bump nano to cvs
4260
4261 === release 0.8.5 ===
4262
4263 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4264
4265         * configure.ac:
4266           releasing 0.8.5, "Stuttgart"
4267         * NEWS:
4268         * RELEASE:
4269         * configure.ac:
4270         * docs/random/release:
4271           updates for release
4272
4273 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4274
4275         patch by: Wim Taymans (wim@fluendo.com)
4276
4277         * gst/gstbuffer.c:
4278         * gst/gstindex.h:
4279         * libs/gst/dataprotocol/dataprotocol.c:
4280           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4281
4282 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4283
4284         * Makefile.am:
4285         * win32/MANIFEST:
4286           add win32 dir to the build.  Fixes #149981.
4287
4288 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4289
4290         * configure.ac:
4291           bump libtool versioning
4292         * gst/gststructure.c:
4293           mark function as static
4294         * po/af.po:
4295         * po/az.po:
4296         * po/ca.po:
4297         * po/cs.po:
4298         * po/en_GB.po:
4299         * po/fr.po:
4300         * po/nl.po:
4301         * po/sq.po:
4302         * po/sr.po:
4303         * po/sv.po:
4304         * po/tr.po:
4305         * po/uk.po:
4306           translations update
4307         * win32/README.txt:
4308           trademark protection
4309
4310 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4311
4312         * configure.ac:
4313           fix GST_ORIGIN
4314           set GST_PACKAGE to source, and distinguish between release and other
4315         * tools/gst-inspect.c:
4316           print out plugin an element factory is part of so we see this info
4317
4318 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4319
4320         * docs/gst/gstreamer-sections.txt:
4321         * docs/gst/tmpl/gstbuffer.sgml:
4322         * docs/gst/tmpl/gstschedulerfactory.sgml:
4323           reorder docs a little, make GstBuffer's more sensible.
4324         * gst/gstbuffer.h:
4325           API: added GST_BUFFER_FLAG_DELTA_UNIT
4326         * gst/gstscheduler.c:
4327           comment API addition
4328
4329 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4330
4331         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4332           work with non-regular files that can be mmapped (like /dev/zero)
4333         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4334           get rid of typefinds that require a seek when we can't seek instead
4335           of trying them over and over again
4336         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4337           return non-zero failure value when the pipeline was interrupted or
4338           an error occurred
4339
4340 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4341
4342         * win32/config.h:
4343         * win32/GStreamer.vcproj:
4344           compile and install the locales
4345
4346 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4347
4348         * gst/gstvalue.c:
4349           fix a possible memory leak under Windows
4350
4351 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4352
4353         * win32/GStreamer.vcproj:
4354           fix a memory leak that occured under Windows
4355         * win32/gstreamer.def:
4356           add gst_scheduler_register
4357
4358 2004-08-11  Benjamin Otte  <otte@gnome.org>
4359
4360         * docs/gst/gstreamer-sections.txt:
4361         * gst/gstscheduler.c: (gst_scheduler_register):
4362         * gst/gstscheduler.h:
4363           API:
4364           add gst_scheduler_register shortcut similar to gst_element_register
4365         * gst/schedulers/entryscheduler.c: (plugin_init):
4366         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4367         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4368           use it
4369
4370 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4371
4372         * gst/gstvalue.h:
4373           fix a memory leak that occured under Windows
4374
4375 2004-08-10  Colin Walters  <walters@redhat.com>
4376
4377         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4378         Don't use O_EXCL to open temporary registry.  It will prevent
4379         registry creation if a temporary one already exists, which
4380         is unnecessary.
4381
4382 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4383
4384         * docs/gst/gstreamer-sections.txt:
4385         * docs/gst/tmpl/gstvalue.sgml:
4386           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4387
4388 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4389
4390         * win32/gstbytestream.vcproj:
4391         * win32/gstelements.vcproj:
4392         * win32/gstgetbits.vcproj:
4393         * win32/gst-inspect.vcproj:
4394         * win32/gst-launch.vcproj:
4395         * win32/gstoptimalscheduler.vcproj:
4396         * win32/GStreamer.vcproj:
4397         * win32/gst-register.vcproj:
4398         * win32/gstspider.vcproj:
4399           update the include and lib dirs to fit standard libraries as
4400           described in the Win32 manual
4401
4402 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4403
4404         * win32/config.h:
4405         * win32/gstversion.h:
4406           enable NLS again, push the version number for the coming 0.8.5 release
4407
4408 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4409
4410         * gst/gstvalue.h:
4411           export gst_type_XXX for windows DLLs
4412
4413 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4414
4415         * docs/faq/gst-uninstalled:
4416           fix PKG_CONFIG_PATH and PYTHONPATH
4417         * gst/schedulers/Makefile.am:
4418           cleanup
4419         * libs/gst/bytestream/bytestream.c:
4420           remove newline
4421         * po/LINGUAS:
4422         * po/sq.po:
4423           adding Albanian translation (Laurent Dhima)
4424         * po/cs.po:
4425           updated
4426
4427 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4428
4429         * po/ca.po:
4430         * po/sv.po:
4431           updated translations
4432
4433 2004-08-04  Benjamin Otte  <otte@gnome.org>
4434
4435         * tests/mass_elements.c: (main):
4436           allow specifying src and sink element explicitly, so I can test
4437           videotestsrc instead of fakesrc
4438
4439 2004-08-04  Benjamin Otte  <otte@gnome.org>
4440
4441         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4442         (gst_structure_id_empty_new), (gst_structure_empty_new),
4443         (gst_structure_copy):
4444           add gst_structure_id_empty_new_with_size to allow preallocating
4445           value array sizes. Use this in gst_structure_copy to get rid of
4446           reallocs.
4447           don't do quark=>string=>quark when copying structures
4448
4449 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4450
4451         * docs/manual/win32.xml:
4452         * win32/README.txt:
4453           update documentation with the clean version of dependencies
4454
4455 2004-08-03  Benjamin Otte  <otte@gnome.org>
4456
4457         * gst/schedulers/entryscheduler.c:
4458         (gst_entry_scheduler_remove_element):
4459           fix for GST_DISABLE_DEBUG
4460         * tools/gst-launch.c: (print_tag):
4461           fixes for G_DISABLE_ASSERT
4462
4463 2004-08-03  Benjamin Otte  <otte@gnome.org>
4464
4465         * gst/gst.c: (gst_register_core_elements):
4466           fix for G_DISABLE_ASSERT
4467         * gst/gstinfo.c: (__gst_in_valgrind):
4468           add for GST_DISABLE_DEBUG
4469
4470 2004-08-03  Benjamin Otte  <otte@gnome.org>
4471
4472         * gst/parse/parse.l:
4473           fix for G_DISABLE_ASSERT
4474
4475 2004-08-03  Wim Taymans  <wim@fluendo.com>
4476
4477         * gst/gstbin.c: (gst_bin_get_type),
4478         (gst_bin_child_state_change_func):
4479         * gst/gstthread.c: (gst_thread_change_state):
4480         Backported some debug logging from a reverted patch
4481         Don't try to destroy the thread twice. Added some more
4482         debugging in GstThread. Unlock and signal even if we
4483         are in the thread context.
4484
4485 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4486
4487         * po/uk.po:
4488           updated translation
4489
4490 2004-07-30  David Schleef  <ds@schleef.org>
4491
4492         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4493
4494 2004-07-29  David Schleef  <ds@schleef.org>
4495
4496         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4497         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4498
4499 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4500
4501         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4502         (gst_bin_add_func), (gst_bin_remove_func),
4503         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4504         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4505         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4506         (gst_bin_sync_children_state):
4507         * gst/gstbin.h:
4508         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4509         (gst_thread_change_state):
4510         * testsuite/states/Makefile.am:
4511           revert state change patches as agreed so we can rework them
4512           gradually
4513
4514 2004-07-29  Benjamin Otte  <otte@gnome.org>
4515
4516         * libs/gst/control/Makefile.am:
4517           link to libgstreamer (fixes Debian bug 262019, see
4518           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
4519
4520 2004-07-29  Wim Taymans  <wim@fluendo.com>
4521
4522         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4523         (check_from_fraction_convert), (transform_test), (main):
4524         Make the test less pedantic about float roundoff errors.
4525
4526 2004-07-29  Benjamin Otte  <otte@gnome.org>
4527
4528         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
4529         (gst_filesrc_srcpad_event):
4530           make seek events to before start/after end of file not fail, but
4531           seek to start/end instead
4532         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
4533           add more output
4534
4535 2004-07-29  Benjamin Otte  <otte@gnome.org>
4536
4537         * gst/gstpad.c: (gst_pad_set_explicit_caps):
4538           check that caps are fixed
4539         * gst/gstpad.c: (gst_pad_template_new):
4540           don't try to simplify caps, costs too much time on gst_init
4541         * gst/gstplugin.c: (gst_plugin_add_feature):
4542           G_ERROR if features are added twice
4543         * gst/gsttypefind.c: (gst_type_find_register):
4544         * gst/gstelementfactory.c: (gst_element_register):
4545           don't add features twice
4546         * docs/random/ds/0.9-suggested-changes:
4547           add note about possible gst_init optimization
4548
4549 2004-07-28  David Schleef  <ds@schleef.org>
4550
4551         * testsuite/elements/Makefile.am:
4552         * testsuite/elements/struct_i386.h:
4553         * testsuite/elements/struct_size.c: (main):  A little test
4554         to keep distcheck from working if someone changes a structure
4555         size accidentally.
4556
4557 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4558
4559         * docs/libs/Makefile.am:
4560         * docs/libs/gstreamer-libs-docs.sgml:
4561         * docs/libs/gstreamer-libs-sections.txt:
4562         * docs/libs/tmpl/gstbytestream.sgml:
4563         * docs/libs/tmpl/gstcontrol.sgml:
4564         * docs/libs/tmpl/gstdataprotocol.sgml:
4565         * docs/libs/tmpl/gstgetbits.sgml:
4566         * libs/gst/bytestream/Makefile.am:
4567         * libs/gst/bytestream/bytestream.c:
4568         * libs/gst/bytestream/bytestream.h:
4569         * libs/gst/control/Makefile.am:
4570         * libs/gst/dataprotocol/Makefile.am:
4571         * libs/gst/getbits/Makefile.am:
4572         * libs/gst/getbits/getbits.h:
4573           various doc and style fixes, adding bytestream to libs docs.
4574
4575 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4576
4577         * docs/gst/gstreamer-docs.sgml:
4578         * docs/libs/Makefile.am:
4579         * docs/libs/gstreamer-libs-docs.sgml:
4580         * docs/libs/gstreamer-libs-sections.txt:
4581         * libs/gst/control/dparam.c:
4582           more doc fixes.  gst-libs docs now build the same way as gst.
4583
4584 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4585
4586         * configure.ac:
4587         * testsuite/Makefile.am:
4588         * testsuite/bins/Makefile.am:
4589         * testsuite/caps/Makefile.am:
4590         * testsuite/cleanup/Makefile.am:
4591         * testsuite/clock/Makefile.am:
4592         * testsuite/debug/Makefile.am:
4593         * testsuite/dlopen/Makefile.am:
4594         * testsuite/dynparams/Makefile.am:
4595         * testsuite/elements/.cvsignore:
4596         * testsuite/elements/Makefile.am:
4597         * testsuite/enumcaps/Makefile.am:
4598         * testsuite/enumcaps/enumcaps.c:
4599         * testsuite/ghostpads/Makefile.am:
4600         * testsuite/indexers/Makefile.am:
4601         * testsuite/negotiation/Makefile.am:
4602         * testsuite/parse/Makefile.am:
4603         * testsuite/plugin/Makefile.am:
4604         * testsuite/refcounting/Makefile.am:
4605         * testsuite/schedulers/.cvsignore:
4606         * testsuite/states/Makefile.am:
4607         * testsuite/tags/Makefile.am:
4608         * testsuite/threads/Makefile.am:
4609           fold enumcaps into caps dir
4610           clean up Makefile.am's for testsuite
4611
4612 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4613
4614         * docs/gst/Makefile.am:
4615         * docs/libs/Makefile.am:
4616           clean up docs build.  Fixes needless rebuilding of template files.
4617
4618 2004-07-28  Wim Taymans  <wim@fluendo.com>
4619
4620         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
4621         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
4622         Make sure that a bin state change tries to keep the children
4623         in sync. 
4624         Added debug logging to the thread.
4625
4626 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4627
4628         * win32/GStreamer.vcproj:
4629         * win32/gstreamer.def:
4630           more exports for the plugins
4631
4632 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4633
4634         * win32/gstgetbits.vcproj:
4635         * win32/gstgetbits.def:
4636         * win32/msvc71.sln:
4637           add support for the getbits plugin
4638
4639 2004-07-27  Wim Taymans  <wim@fluendo.com>
4640
4641         * gst/gstvalue.c: (gst_value_transform_double_fraction),
4642         (gst_value_transform_fraction_double), (_gst_value_initialize):
4643         * testsuite/caps/Makefile.am:
4644         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4645         (check_from_fraction_convert), (transform_test), (main):
4646         Added transform functions between double and fraction.
4647         Added testcase to verify transforms
4648
4649 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4650
4651         * win32/GStreamer.vcproj:
4652           rename GStreamer-0.8.lib to libgstreamer.lib
4653
4654 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4655
4656         * win32/gstelements.vcproj:
4657         * win32/gstoptimalscheduler.vcproj:
4658           fixes for the Release build
4659
4660 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4661
4662         * win32/config.h:
4663           update the version number
4664
4665 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4666
4667         * win32/GStreamer.vcproj:
4668           add gstinterface to the build
4669
4670 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4671
4672         * win32/gstreamer.def:
4673           add many definitions needed by plugins,
4674           GST_CAT_DEFAULT only available in the Debug build ?
4675
4676 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4677
4678         * gst/gstelement.c: (gst_element_set_eos_recursive):
4679           various whitespace fixes.
4680           doc fix, fixes #148497
4681
4682 2004-07-25  Benjamin Otte  <otte@gnome.org>
4683
4684         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
4685           don't delay links on the sink elements, it causes unnegotiated
4686           links.
4687         * gst/elements/gsttypefindelement.c:
4688         (gst_type_find_element_base_init):
4689           add our padtemplates, we indeed do have some.
4690         * gst/elements/gsttypefindelement.c:
4691         (gst_type_find_element_handle_event),
4692         (gst_type_find_element_chain):
4693           don't push data when typefinding failed.
4694         * gst/gstpad.c: (gst_pad_link_fixate):
4695           check that no fixate function returns empty caps.
4696         * gst/gstpad.c: (gst_pad_push):
4697           check that the link is negotiated before data gets pushed.
4698         * tools/gst-register.c: (main):
4699           don't assert (fixes #148283)
4700
4701 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4702
4703         * docs/gst/gstreamer-sections.txt:
4704         * docs/gst/tmpl/gstconfig.sgml:
4705           add GST_PLUGIN_EXPORT definition
4706
4707 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4708
4709         * gst/gstplugin.h:
4710         * gst/gstconfig.h.in:
4711         * win32/gstconfig.h:
4712         * win32/gstelements.def:
4713         * win32/gstelements.vcproj:
4714         * win32/gstoptimalscheduler.def:
4715         * win32/gstoptimalscheduler.vcproj:
4716         * win32/gstspider.def:
4717         * win32/gstspider.vcproj:
4718           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
4719
4720 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4721
4722         * docs/gst/gstreamer-sections.txt:
4723           remove GST_CAT_DEFAULT because the type has changed
4724
4725 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4726
4727         * win32/gstbytestream.vcproj:
4728         * win32/gstelements.vcproj:
4729         * win32/gst-inspect.vcproj:
4730         * win32/gst-launch.vcproj:
4731         * win32/gstoptimalscheduler.vcproj:
4732         * win32/GStreamer.vcproj:
4733         * win32/gst-register.vcproj:
4734         * win32/gstspider.vcproj:
4735         * win32/msvc71.sln:
4736           Copy the files where needed after building, The testsuite will be
4737           built separately
4738
4739 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4740
4741         * win32/config.h:
4742         * win32/README.txt:
4743         * docs/manual/win32.xml:
4744         Fixed the plugin and GStreamer location
4745
4746 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4747
4748         * win32/gstreamer.def:
4749         More exports for the plugins
4750
4751 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4752
4753         * gst/gstinfo.h:
4754         Marc was right, we need to export literally GST_CAT_DEFAULT
4755
4756 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4757
4758         * win32/config.h:
4759         NLS crashes in gettext, disabled until this is solved
4760
4761 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4762
4763         * win32/gst-inspect.vcproj:
4764         * win32/gst-launch.vcproj:
4765         Should use NLS when available
4766
4767 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4768
4769         * gst/registries/gstxmlregistry.c:
4770         removing the file doesn't seem to be a good idea on Linux
4771
4772 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4773
4774         * gst/registries/gstxmlregistry.c:
4775         Remove the registry before renaming the tempfile (needed for Windows)
4776
4777 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4778
4779         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
4780         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
4781         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
4782         * gst/elements/gstmultifilesrc.h:
4783         Added newmedia property so it generates newmedia events between each
4784         file when property is set, as well as fixed eos handling
4785
4786 2004-07-22  David Schleef  <ds@schleef.org>
4787
4788         * gst/gststructure.c: (gst_structure_id_empty_new),
4789         (gst_structure_empty_new):  Set type field correctly.
4790         * gst/gststructure.h: Check type field correctly.
4791         * testsuite/caps/Makefile.am:
4792         * testsuite/caps/structure.c: (test1), (main): Add a very small
4793         test for structures.
4794
4795 2004-07-22  David Schleef  <ds@schleef.org>
4796
4797         * docs/random/ds/0.9-suggested-changes: more comments
4798         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
4799
4800 2004-07-22  Benjamin Otte  <otte@gnome.org>
4801
4802         * gst/gstelementfactory.c: (gst_element_register):
4803           set the factory in the class struct, so gst_element_get_factory
4804           actually works
4805         * gst/parse/grammar.y:
4806           set element to playing when it gets unlocked as we can't rely on the
4807           bin state - all elements in the bin state might still be locked in
4808           NULL)
4809
4810 2004-07-22  Benjamin Otte  <otte@gnome.org>
4811
4812         * gst/gstelement.c: (gst_element_set_state_func):
4813           make this a static function
4814
4815 2004-07-22  Wim Taymans  <wim@fluendo.com>
4816
4817         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
4818         (gst_opt_scheduler_pad_link):
4819         fix 147894-2 and the group_link problem.
4820
4821 2004-07-22  Wim Taymans  <wim@fluendo.com>
4822
4823         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4824         (handoff_identity), (main):
4825         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4826         (handoff_identity), (main):
4827         * testsuite/schedulers/Makefile.am:
4828         * testsuite/schedulers/group_link.c: (main):
4829         Show bug in scheduler when linking chain and loop based element 
4830         where the chain based element was not yet in a group.
4831
4832 2004-07-21  Benjamin Otte  <otte@gnome.org>
4833
4834         * gst/.cvsignore:
4835         * gst/autoplug/.cvsignore:
4836         * gst/elements/.cvsignore:
4837         * gst/indexers/.cvsignore:
4838         * libs/gst/bytestream/.cvsignore:
4839         * libs/gst/control/.cvsignore:
4840         * libs/gst/getbits/.cvsignore:
4841         * testsuite/states/.cvsignore:
4842         * testsuite/threads/.cvsignore:
4843           keep this up to date, since I seem to be the only one who cares
4844           about not missing files on commits (editor's note: no you don't,
4845           but feel free to change them at the time you add stuff instead
4846           of later on)
4847
4848 2004-07-21  Benjamin Otte  <otte@gnome.org>
4849
4850         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4851         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
4852         (gst_bin_child_state_change_func), (set_kid_state_func),
4853         (gst_bin_set_state), (gst_bin_change_state_norecurse):
4854           make state changes work correctly and reentrant (so removing
4855           elements from bins during state changes of bins doesn't cause
4856           segfaults or even wrong states)
4857           add debugging category and debugging output to print children states
4858         * gst/gstbin.c: (gst_bin_dispose): 
4859           add some assertion checks
4860         * gst/gstbin.h:
4861         * gst/gstbin.c: (gst_bin_sync_children_state):
4862           deprecate this function - it just does gst_bin_set_state (bin,
4863           GST_STATE (bin)) 
4864         * testsuite/threads/queue.c: (main):
4865           don't use gst_bin_sync_children_state anymore
4866         * testsuite/states/Makefile.am:
4867         * testsuite/states/bin.c:
4868           test that the state changes of bins work as expected
4869         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
4870           some adjustments to change states correctly, too
4871         * gst/gstthread.c: (gst_thread_change_state):
4872           don't enable/disable "threadsafe" properties, they're unused and
4873           cause random segfaults
4874         * testsuite/threads/Makefile.am:
4875           the queue check randomly passes now, ignore it
4876
4877 2004-07-21  Benjamin Otte  <otte@gnome.org>
4878
4879         * gst/gstpad.c:
4880           check if data is NULL before outputting debug info. (fixes #145100)
4881
4882 2004-07-21  Benjamin Otte  <otte@gnome.org>
4883
4884         * gst/schedulers/entryscheduler.c:
4885         (gst_entry_scheduler_loop_wrapper),
4886         (gst_entry_scheduler_chain_wrapper),
4887         (gst_entry_scheduler_get_wrapper):
4888           reset the state when the cothread starts, so we don't get assertion
4889           failures on restarting of cothreads
4890
4891 2004-07-20  Benjamin Otte  <otte@gnome.org>
4892
4893         * gst/gstelement.c: (gst_element_link_pads_filtered):
4894           use correct sinkpad, if only sinkpad is specified, but not srcpad
4895           (fixes #147889)
4896         * gst/gstelement.c: (gst_element_set_state_func),
4897         (gst_element_change_state): ref/unref the element, signal handlers
4898         could get rid of the element otherwise
4899
4900 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4901
4902         * docs/random/ds/0.9-suggested-changes:
4903           Make note about renaming fixed-list to array.
4904         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
4905         (_gst_value_initialize):
4906           Add array intersections.
4907         * testsuite/caps/intersect2.c: (main):
4908           Add test for array intersections.
4909
4910 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4911
4912         * configure.ac: back to cvs
4913
4914 === release 0.8.4 ===
4915
4916 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4917
4918         * configure.ac:
4919           releasing 0.8.4, "Paella"
4920           bump libtool versioning
4921
4922 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4923
4924         * po/LINGUAS:
4925         * po/ca.po:
4926           adding Catalan translation (Jordi Mallach)
4927
4928 2004-07-20  Wim Taymans  <wim@fluendo.com>
4929
4930         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4931         (handoff_identity), (main):
4932         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4933         (handoff_identity), (main):
4934         * testsuite/schedulers/Makefile.am:
4935         Added failing testcase for variant of #147894
4936
4937 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4938
4939         patch by: David Moore
4940
4941         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4942         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
4943         (group_migrate_connected):
4944         * testsuite/schedulers/Makefile.am:
4945           fix for #142813 (Deadlock in optimal scheduler)
4946
4947 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4948
4949         patch by: Wim Taymans
4950
4951         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4952         (gst_opt_scheduler_schedule_run_queue),
4953         (gst_opt_scheduler_get_wrapper), (get_group),
4954         (group_migrate_connected):
4955         * testsuite/schedulers/Makefile.am:
4956           fix for #147819 (Add some checks in the opt scheduler)
4957
4958 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4959
4960         patch by: Benjamin Otte
4961
4962         * gst/gstelementfactory.c: (__gst_element_details_set):
4963           fix for #147929: running gst-register in non-utf8 locale can cause
4964           invalid registry
4965
4966 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4967
4968         patch by: Wim Taymans
4969
4970         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
4971         (group_has_element), (element_get_reachables_func),
4972         (group_migrate_connected):
4973           fix for #147894 (opt scheduler decoupled elements mismanagement)
4974         * testsuite/schedulers/Makefile.am:
4975           testsuite app now passes
4976
4977 2004-07-19  Wim Taymans  <wim@fluendo.com>
4978
4979         * testsuite/schedulers/147819.c: (handoff_identity1),
4980         (handoff_identity2), (main):
4981         * testsuite/schedulers/Makefile.am:
4982         Added testcase for bug 147819
4983
4984 2004-07-19  Wim Taymans  <wim@fluendo.com>
4985
4986         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4987         (handoff_identity), (main):
4988         * testsuite/schedulers/Makefile.am:
4989         Added testcase for bug 147894
4990
4991 2004-07-16  Wim Taymans  <wim@fluendo.com>
4992
4993         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
4994         * testsuite/schedulers/142183.c: (handoff_identity), (main):
4995         * testsuite/schedulers/Makefile.am:
4996         Added testsuite for bug 142183 in its two incarnations. Refcount
4997         is not increased for scheduled elements and threadsafe properties
4998         mutexes are not properly unlocked.
4999
5000 2004-07-16  Wim Taymans  <wim@fluendo.com>
5001
5002         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5003         (create_chain), (destroy_chain), (create_group), (destroy_group),
5004         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5005         (group_dec_link), (gst_opt_scheduler_pad_link),
5006         (group_inc_links_for_element), (group_migrate_connected):
5007         Call group_inc_link with the proper src->sink ordering -- 
5008         break this, and we break sort_chain. patch from wingo for bug
5009         147713.
5010         Partially revert patch 1.89. When adding a loop based element to 
5011         the scheduler, the links to other groups are automatically followed
5012         and incremented. This should not happen because the bin will call
5013         pad_link explicitly for those connection, resulting in them counted 
5014         twice. Results in assertion failure on pipeline cleanup.
5015
5016 2004-07-16  Wim Taymans  <wim@fluendo.com>
5017
5018         * testsuite/schedulers/143777-2.c: (main):
5019         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5020         (main):
5021         * testsuite/schedulers/Makefile.am:
5022         Added cleanup code to testcase 143777-2.
5023         Added testcase to show bug 147713, does not really show the
5024         deadlock as I can't figure out how to trigger it, but it does
5025         demonstrate bad ordering in the scheduler.
5026
5027 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5028
5029         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5030           change strndup to g_strndup.  Fixes #147707
5031
5032 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5033
5034         * po/af.po:
5035         * po/az.po:
5036         * po/cs.po:
5037         * po/en_GB.po:
5038         * po/fr.po:
5039         * po/nl.po:
5040         * po/sr.po:
5041         * po/sv.po:
5042         * po/tr.po:
5043         * po/uk.po:
5044           updated translations
5045
5046 2004-07-16  Benjamin Otte  <otte@gnome.org>
5047
5048         * gst/gstvalue.c: (gst_greatest_common_divisor):
5049           use ints and return ints, fractions only use ints, too, so this
5050           avoids accidently casting multiplications to unsigned
5051         (gst_value_lcopy_fraction): it's ints, not uint32
5052         (gst_value_set_fraction): disallow minint, multiplying and negation
5053           are broken with it
5054         (gst_value_fraction_multiply): fix to make large numbers work and get
5055         rid of the assumption that the multiplication of two ints fits an
5056         int64 - dunno if that's true for all systems
5057         * testsuite/caps/Makefile.am:
5058         * testsuite/caps/fraction-multiply-and-zero.c:
5059         (check_multiplication), (check_equal), (zero_test), (main):
5060           add tests for all the stuff above
5061         * testsuite/caps/value_compare.c: (test1):
5062           fix comment
5063         * tests/.cvsignore:
5064         * testsuite/caps/.cvsignore:
5065         * testsuite/debug/.cvsignore:
5066         * testsuite/dlopen/.cvsignore:
5067         * testsuite/states/.cvsignore:
5068           get up to date
5069
5070 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5071
5072         * docs/manual/bins-api.xml:
5073         * docs/manual/factories.xml:
5074         * docs/manual/helloworld.xml:
5075         * docs/manual/links-api.xml: 
5076           fixes for out of date info, incorrect info and grammar
5077
5078 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5079
5080         * docs/manual/pads.xml:
5081         * docs/manual/pads-api.xml: grammar fix
5082
5083 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5084
5085         * docs/manual/pads-api.xml: typo + grammar fix
5086
5087 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5088
5089         * docs/gst/gstreamer-sections.txt:
5090           add new symbols
5091         * docs/gst/tmpl/gstelement.sgml:
5092         * docs/gst/tmpl/gstpad.sgml:
5093         * docs/gst/tmpl/gsttypes.sgml:
5094         * docs/gst/tmpl/gstvalue.sgml:
5095           update docs
5096         * gst/gststructure.c: (gst_structure_set_valist),
5097         (gst_structure_from_abbr), (gst_structure_to_abbr):
5098         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5099         (gst_greatest_common_divisor), (gst_value_init_fraction),
5100         (gst_value_copy_fraction), (gst_value_collect_fraction),
5101         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5102         (gst_value_get_fraction_numerator),
5103         (gst_value_get_fraction_denominator),
5104         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5105         (gst_value_deserialize_fraction),
5106         (gst_value_transform_fraction_string),
5107         (gst_value_transform_string_fraction),
5108         (gst_value_compare_fraction), (_gst_value_initialize):
5109         * gst/gstvalue.h:
5110           adding GstFraction GValue type, get/set, and multiply
5111         * testsuite/caps/Makefile.am:
5112         * testsuite/caps/fraction.c: (test), (main):
5113         * testsuite/caps/string-conversions.c: (main):
5114         * testsuite/caps/value_compare.c: (test1), (main):
5115           add regression tests for GstFraction
5116
5117 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5118         
5119         * docs/manual/init-api.xml: Grammar fix
5120
5121 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5122
5123         * docs/manual/states.xml: Fix inconsistent information
5124
5125 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5126
5127         * gst/gstelement.c: (gst_element_set_state):
5128         * gst/gstpad.c: (gst_pad_try_set_caps):
5129         * gst/gststructure.c:
5130         * gst/gstthread.c: (gst_thread_child_state_change):
5131         * gst/gstvalue.c: (gst_value_compare_double):
5132         * gst/gstvalue.h:
5133         * testsuite/parse/parse1.c: (main):
5134           debugging additions and style cleanups
5135
5136 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5137
5138         * docs/manual/states.xml: Grammar fix
5139
5140 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5141
5142         * docs/manual/pads.xml: Grammar fix
5143
5144 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5145
5146         * docs/manual/elements.xml: Fixed image reference
5147
5148 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5149
5150         * docs/manual/goals.xml: Grammar fix
5151
5152 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5153
5154         * docs/manual/motivation.xml:
5155         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5156
5157 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5158
5159         * docs/manual/motivation.xml: Fix spelling
5160
5161 2004-07-15  Benjamin Otte  <otte@gnome.org>
5162
5163         * gst/gstelement.h: 
5164           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5165           strings.
5166         * gst/gstelement.c (gst_element_class_init):
5167           GError's are boxed, not objects
5168         * gst/gstmarshal.list:
5169           update list for the fixed error signal
5170
5171 2004-07-14  Andy Wingo  <wingo@pobox.com>
5172
5173         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5174         there all along, but the function wasn't. (guile-gstreamer's build
5175         system uses the address of the function -- I wasn't actually
5176         trying to use this.)
5177
5178 2004-07-14  Andy Wingo  <wingo@pobox.com>
5179
5180         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5181         as gst_pad_proxy_pad_link) just link to every other pad when they
5182         are called. In the case where the graph has cycles, this will mean
5183         that a call to try_set_caps will recurse. Allow this recursion
5184         and return OK, while we wait for the first try_set_caps to give a
5185         proper return value.
5186         (gst_pad_link_call_link_functions): Since this function is the
5187         only one to set the NEGOTIATING flag on a pad, if the flag is set
5188         it means that the link functions have indirectly recursed. If this
5189         happens, error out to avoid infinite recursion and an eventual
5190         SEGV.
5191         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5192         (gst_pad_proxy_getcaps): Intersect the result with the template
5193         caps to ensure that the return value is valid.
5194
5195 2004-07-14  Andy Wingo  <wingo@pobox.com>
5196
5197         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5198         one refcount, the calling function is the owner of the buffer.
5199
5200 2004-07-14  Wim Taymans  <wim@fluendo.com>
5201
5202         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5203         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5204         Fix stupid warning when an element is to be migrated but
5205         is already migrated.
5206
5207 2004-07-14  Wim Taymans  <wim@fluendo.com>
5208
5209         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5210         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5211         Make sure that a single non-loop-based element does not 
5212         end up in a group. This fixes the testsuite again.
5213
5214 2004-07-14  Wim Taymans  <wim@fluendo.com>
5215
5216         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5217         (add_to_group), (merge_groups), (schedule_group),
5218         (gst_opt_scheduler_get_wrapper), (group_elements),
5219         (group_dec_link), (gst_opt_scheduler_pad_link),
5220         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5221         (gst_opt_scheduler_iterate):
5222         move isolated groups to a new chain.
5223         Emit a warning instead of segfaulting in some error cases.
5224         Fix a bug where the link count between groups was not calculated 
5225         correctly. Fixes #144510.
5226
5227 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5228         * gst/elements/gstfilesrc.c:
5229           Binary files support under Windows now OK
5230       
5231 2004-07-13  Benjamin Otte  <otte@gnome.org>
5232
5233           compatibility fixes for Solaris 8/gcc 2.95
5234         * configure.ac:
5235           include libintl libs in LDFLAGS
5236         * gstvalue.c (gst_value_deserialize_buffer):
5237           cast isxdigit stuff to int to silence compiler warning
5238
5239 2004-07-12  Benjamin Otte  <otte@gnome.org>
5240
5241         * gst/gsttypes.h:
5242           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5243           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5244           just causes support madness
5245         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5246           make it work without this
5247         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5248         (gst_file_index_commit):
5249           glib IO channels don't want binary mode
5250         * testsuite/bytestream/filepadsink.c: (main):
5251         * testsuite/bytestream/test1.c: (read_param_file):
5252           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5253
5254 2004-07-12  Benjamin Otte  <otte@gnome.org>
5255
5256         * gst/gstelement.c: (gst_element_class_init),
5257         (gst_element_set_state), (gst_element_set_state_func):
5258           virutalize gst_element_set_state, use set_state member in class
5259           struct that was already added in 0.7 for this.
5260         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5261         (gst_bin_change_state):
5262           make gst_bin_foreach works similar to other foreach functions, plug
5263           memleaks in it. Make functions using it work with the new approach.
5264           Document gst_bin_foreach, so it can be exported if we want to
5265         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5266           use virtualized set_state to make set_state on bins set the state of
5267           all its children.
5268
5269 2004-07-12  Benjamin Otte  <otte@gnome.org>
5270
5271         * configure.ac:
5272           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5273           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5274         * gst/gstpad.c: (gst_pad_alloc_buffer):
5275           allow buffer_alloc functions to return NULL and allocate a normal
5276           buffer in that case
5277
5278 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5279         * gst/elements/gstfilesink.c:
5280         * gst/elements/gstfilesrc.c:
5281         * gst/indexers/gstfileindex.c:
5282         * gst/gsttypes.h:
5283         * testsuite/bytestream/filepadsink.c:
5284         * testsuite/bytestream/test1.c:
5285           Handle binary files under Windows
5286
5287 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5288         * docs/manual/win32.xml:
5289         * win32/config.h:
5290         * win32/gst-register.vcproj:
5291         * win32/gstreamer.def:
5292           Update to another gettext public build
5293
5294 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5295         * gst/gstplugin.c:
5296           Fix an impossible C syntax
5297         * win32/config.h:
5298           Disable i18n under Windows for the moment
5299         * win32/gst-register.vcproj:
5300           Use this configuration
5301
5302 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5303         * docs/manual/quotes.xml:
5304           Keep the quotes file alive
5305         * docs/random/ds/0.9-suggested-changes:
5306           Add the suggestion of including a 'rowstride' as part of video
5307           format caps
5308
5309 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5310
5311         * gst/gstelement.c: (gst_element_set_state),
5312         (gst_element_change_state):
5313           d'oh.  Set PENDING state correctly before forcing bin to change.
5314         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5315         (gst_structure_parse_fixed_list):
5316         * gst/schedulers/gstoptimalscheduler.c:
5317         (gst_opt_scheduler_state_transition):
5318         * testsuite/states/parent.c: (main):
5319           remove comment now that it's fixed.
5320
5321 2004-07-11  Benjamin Otte  <otte@gnome.org>
5322
5323         * gst/gstclock.h:
5324           GST_SECOND shouldn't cause a conversion to unsigned.
5325         * testsuite/clock/.cvsignore:
5326         * testsuite/clock/Makefile.am:
5327         * testsuite/clock/signedness.c: (main):
5328           make sure it never will again
5329
5330 2004-07-11  Andy Wingo  <wingo@pobox.com>
5331
5332         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5333         whose state is higher than the bin state, raise the bin state to
5334         ensure that bin state := highest child state.
5335         
5336 2004-07-11  Andy Wingo  <wingo@pobox.com>
5337
5338         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5339         procedure on the children of a bin. Assumes that the procedure can
5340         change the set of children.
5341         (set_kid_state_func): New static function.
5342         (gst_bin_change_state): Use gst_bin_foreach to call
5343         set_kid_state_func. Fixes a bug: if a child had a state-change
5344         handler that removes it from the bin, there would be a segfault.
5345         Hopefully it should also work in the case where the state-change
5346         handler on one child adds or removes other children. In any case,
5347         fixes should go to gst_bin_foreach.
5348
5349 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5350
5351         * gst/gstelement.c: (gst_element_set_state):
5352           compatibility fix for latest plugins release.  Change loop back
5353           to while {}
5354
5355 2004-07-09  Wim Taymans  <wim@fluendo.com>
5356
5357         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5358         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5359         (gst_thread_main_loop):
5360         Since remove is virtual in GstBin we must not assume the 
5361         elements GList to have anothing useful.
5362         Add some more logging to GstThread and be a bit more paranoid
5363         when resetting the scheduler.
5364         Set the state of the bin to NULL before removing the children.
5365
5366 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5367
5368         * testsuite/threads/Makefile.am:
5369         * testsuite/threads/threadg.c:
5370           added test to check if problem when removing all elements from a
5371           GstThread before setting GstThread state to NULL
5372
5373 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5374
5375         * docs/gst/tmpl/gstelement.sgml:
5376         * docs/gst/tmpl/gsttypes.sgml:
5377         * gst/gstbin.c: (gst_bin_change_state):
5378         * gst/gstelement.c: (gst_element_set_state),
5379         (gst_element_change_state):
5380           rework so that for bins we try to set the state on all children
5381           as well even if the bin is in the correct state already.
5382           change while to do so at least one iteration is done.
5383           For regular elements, we fall back to the previous behaviour for
5384           now since we first need a new plugins release.
5385         * testsuite/states/parent.c: (main):
5386           test for this case
5387           Fixes #123774
5388
5389 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5390
5391         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5392         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5393         (gst_queue_release_locks), (gst_queue_change_state),
5394         (gst_queue_set_property):
5395           add proper lock debugging.  Change dispose to finalize, since
5396           we're freeing mutexes and other stuff which should happen only once.
5397
5398 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5399
5400         * docs/gst/tmpl/gstelement.sgml:
5401         * docs/gst/tmpl/gstplugin.sgml:
5402         * docs/gst/tmpl/gsttypes.sgml:
5403         * docs/pwg/building-state.xml:
5404         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5405         * gst/gstelement.c: (gst_element_change_state):
5406         * gst/gstthread.c: (gst_thread_change_state):
5407           catch wrong state changes in element base class.
5408
5409 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5410
5411         * gst/gstinfo.h:
5412           clean up layout a little.
5413
5414 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5415
5416         * configure.ac:
5417         * testsuite/Makefile.am:
5418         * testsuite/states/Makefile.am:
5419         * testsuite/states/parent.c: (main):
5420           re-enable states testsuite dir.  Add test for state changes and
5421           parent behaviour
5422
5423 2004-07-09  Wim Taymans  <wim@fluendo.com>
5424
5425         * gst/schedulers/gstoptimalscheduler.c:
5426         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5427         (element_get_reachables_func), (element_get_reachables),
5428         (debug_element), (rechain_group), (group_migrate_connected),
5429         (gst_opt_scheduler_pad_unlink):
5430         Do not try to migrate decoupled elements to a new group since
5431         they are not added to groups.
5432
5433 2004-07-08  Benjamin Otte  <otte@gnome.org>
5434
5435         * gst/gstelement.c: (gst_element_error_func):
5436           make reentrant (= allow removing elements in error handler)
5437
5438 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5439
5440         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5441         (gst_pad_send_event), (gst_pad_call_chain_function):
5442           events sent to elements below PAUSED cannot be handled, so
5443           don't try to
5444
5445 2004-07-08  Wim Taymans  <wim@fluendo.com>
5446
5447         * gst/schedulers/gstoptimalscheduler.c:
5448         (chain_recursively_migrate_group), (create_group),
5449         (schedule_group), (gst_opt_scheduler_pad_link),
5450         (group_elements_set_visited), (element_get_reachables_func),
5451         (element_get_reachables), (group_can_reach_group), (debug_element),
5452         (rechain_group), (group_migrate_connected),
5453         (gst_opt_scheduler_pad_unlink):
5454         * testsuite/schedulers/Makefile.am:
5455         Implemented group splitting and rechaining.
5456         Fixes 143777 and 143777-2 in the testsuite.
5457
5458 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5459
5460         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5461           extra debugging
5462         * gst/gstevent.h:
5463         * gst/gstinfo.c: (gst_debug_log_default):
5464           print time nicely.  add thread pointer until someone figures out
5465           a completely portable way of getting at thread id's.
5466         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5467         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5468         (gst_pad_call_chain_function):
5469           extra debugging
5470         * gst/schedulers/gstoptimalscheduler.c:
5471         (get_group_schedule_function), (loop_group_schedule_function),
5472         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5473         (pad_clear_queued), (gst_opt_scheduler_iterate):
5474           rename BUFPEN and friends to DATAPEN since that's what they are.
5475
5476 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5477
5478         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5479         * gst/gstbuffer.h:
5480         * gst/gstpad.c:
5481           cleanups and debugging
5482
5483 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5484
5485         * configure.ac:
5486         * gst/gstvalue.c: (gst_value_compare_enum),
5487         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5488         (gst_value_can_compare), (gst_value_compare):
5489         * testsuite/Makefile.am:
5490         * testsuite/enumcaps/Makefile.am:
5491         * testsuite/enumcaps/enumcaps.c:
5492           Fix enum serialization, deserialization, comparison in caps, add
5493           a test to ensure that this continues working in the future.
5494
5495 2004-07-06  David Schleef  <ds@schleef.org>
5496
5497         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5498         Fix memleak.
5499
5500 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5501
5502         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5503         * gst/gstplugin.h:
5504         * gst/registries/gstxmlregistry.c:
5505         (plugin_times_older_than_recurse), (plugin_times_older_than),
5506         (gst_xml_registry_parse_padtemplate):
5507           only rebuild registry when actual plugins have a newer time than
5508           the registry.  Fixes #145520
5509
5510 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5511
5512         * docs/manual/manual.xml:
5513         * docs/manual/win32.xml:
5514           add chapter on win32 building.  fixes #142422
5515
5516 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5517
5518         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
5519
5520         * gst/autoplug/gstspider.c: (gst_spider_init),
5521         (gst_spider_dispose):
5522           fix spider memleaks.  fixes #137863
5523
5524 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5525
5526         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
5527
5528         * gst/schedulers/gstoptimalscheduler.c:
5529         (gst_opt_scheduler_pad_unlink):
5530           fix SIGBUS error, fixes #145338
5531
5532 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5533
5534         * gst/gstobject.c: (gst_object_replace):
5535         * gst/gstscheduler.c: (gst_scheduler_get_clock):
5536         * gst/gstsystemclock.c: (gst_system_clock_obtain):
5537           clean up clock lifecycle.  Fixes #109831
5538
5539 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5540
5541         * po/LINGUAS:
5542         * po/cs.po:
5543           added Czech translation (Miloslav Trmac)
5544
5545 2004-07-04  David Schleef  <ds@schleef.org>
5546
5547         * tools/Makefile.am:
5548         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5549
5550 2004-07-04  David Schleef  <ds@schleef.org>
5551
5552         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5553
5554 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5555
5556         * gst/gstbin.c: (gst_bin_restore_thyself):
5557           chain to parent restore so the bins get restored correctly
5558           in the editor
5559
5560 2004-07-03  David Schleef  <ds@schleef.org>
5561
5562         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5563         Actually do something in these functions, like before the big
5564         caps change.  (bug #145137)
5565
5566 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5567
5568         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
5569         (gst_element_get_compatible_pad_filtered):
5570         * gst/gstthread.c: (gst_thread_main_loop):
5571           more debugging
5572
5573 2004-07-02  David Schleef  <ds@schleef.org>
5574
5575         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
5576         * gst/gstobject.h:
5577         * gst/gstparse.h:
5578         * gst/gsttrace.h:
5579         * gst/gstxml.h:
5580
5581 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5582
5583         * gst/gstpad.c: (gst_pad_check_schedulers),
5584         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5585         (gst_pad_link_prepare):
5586           revert until testsuite is fixed
5587
5588 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5589
5590         * testsuite/Makefile.am:
5591         * testsuite/caps/filtercaps.c: (main):
5592         * testsuite/clock/clock1.c: (main):
5593         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
5594           fix some more tests
5595
5596 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5597
5598         * testsuite/cleanup/cleanup1.c: (create_pipeline):
5599         * testsuite/cleanup/cleanup2.c: (create_pipeline):
5600         * testsuite/cleanup/cleanup4.c: (main):
5601           fix testsuite
5602
5603 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5604
5605         * libs/gst/control/control.c:
5606         * libs/gst/control/dparam.c:
5607         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
5608         * libs/gst/control/dparammanager.c:
5609         * libs/gst/control/dparammanager.h:
5610         * testsuite/dynparams/Makefile.am:
5611         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
5612         (gst_dptest_change_state), (gst_dptest_chain), (main):
5613           fix testcase for dparams
5614           add debugging category
5615
5616 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5617
5618         * testsuite/Rules:
5619           change path
5620
5621 2004-07-02  Benjamin Otte  <otte@gnome.org>
5622
5623         * tests/.cvsignore:
5624         * tests/Makefile.am:
5625         * tests/mass_elements.c: (gst_get_current_time), (main):
5626           add simple benchmark to test various speeds of fakesrc ! identity !
5627           identity ! ... ! fakesink.
5628           Usage: mass_elements [num_identities] [num_buffers]
5629           If not specified they default to 1000.
5630
5631 2004-07-02  Benjamin Otte  <otte@gnome.org>
5632
5633         * gst/gstpad.c: (gst_pad_check_schedulers),
5634         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5635         (gst_pad_link_prepare):
5636           check that pads that get linked belong to the same manager. The old
5637           code allowed linking elements before putting them into bins, so it
5638           worked to link them and then put them in different threads, which
5639           lead to weird behaviour.
5640           Since this effectively disallows linking elements before putting
5641           them in a bin, some applications might not work after this and error
5642           out. If these applications are too critical, we might need to revert
5643           that patch. Please test this before the next release...
5644
5645 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5646
5647         * gst/gstpad.c: (gst_pad_get_caps):
5648           throw an error if the getcaps function does not return a subset of
5649           the template caps.
5650         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
5651           make disconts without position info an error in debugging
5652         * tests/spidey_bench.c: (handoff), (main):
5653           don't count first try when averaging
5654
5655 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5656
5657         * gst/gstplugin.c: (gst_plugin_load_file):
5658           figure out problem with dynamic test
5659
5660 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5661
5662         * docs/gst/Makefile.am:
5663           fix docs build
5664
5665 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5666
5667         * po/POTFILES.in:
5668         * po/af.po:
5669         * po/az.po:
5670         * po/en_GB.po:
5671         * po/fr.po:
5672         * po/nl.po:
5673         * po/sr.po:
5674         * po/sv.po:
5675         * po/tr.po:
5676         * po/uk.po:
5677         * tools/gst-register.c: (plugin_added_func), (main):
5678           i18n-ize -register, fix plural
5679
5680 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5681
5682         * gst/elements/gstidentity.c: (gst_identity_class_init),
5683         (gst_identity_init), (gst_identity_chain),
5684         (gst_identity_set_property), (gst_identity_get_property):
5685         * gst/elements/gstidentity.h:
5686           check for perfect stream
5687
5688 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5689
5690         * gst/elements/gstidentity.c: (gst_identity_chain):
5691           print offset_end
5692
5693 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5694
5695         * docs/gst/Makefile.am:
5696         * docs/gst/gstreamer-docs.sgml:
5697           doc fixes
5698
5699 2004-06-24  David Schleef  <ds@schleef.org>
5700
5701         * autogen.sh:  Remove call to env, since the buildbot isn't
5702         broken anymore.
5703
5704 2004-06-24  Wim Taymans  <wim@fluendo.com>
5705
5706         * gst/elements/Makefile.am:
5707         * gst/elements/gstelements.c:
5708         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
5709         (gst_multifdsink_class_init), (gst_multifdsink_init),
5710         (gst_multifdsink_add), (gst_multifdsink_remove),
5711         (gst_multifdsink_clear), (gst_multifdsink_chain),
5712         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
5713         * gst/elements/gstmultifdsink.h:
5714         Added an element that writes to multiple filedescriptors at once.
5715
5716 2004-06-24  Benjamin Otte  <otte@gnome.org>
5717
5718         * gst/parse/grammar.y:
5719           don't try to link elements before they have been added to bins
5720
5721 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5722
5723         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
5724         (gst_file_pad_get_length):
5725         * libs/gst/bytestream/filepad.h:
5726           add 2 new functions
5727
5728 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5729
5730         * docs/gst/gstreamer-sections.txt:
5731         remove from docs, the define that Benjamin removed from gstelement.h
5732
5733 2004-06-22  Benjamin Otte  <otte@gnome.org>
5734
5735         * gst/gstelement.h:
5736           remove define that referenced a nonexisting GstElement struct member
5737
5738 2004-06-20  Benjamin Otte  <otte@gnome.org>
5739
5740         * gst/gstdata.c: (gst_data_is_writable):
5741           whoops, return values were wrong, so writable data was marked as
5742           non-writable and vice versa. (fixes #143953, spotted by Francis
5743           Labonte)
5744           Shows how rarely we need to copy data ;)
5745
5746 2004-06-20  Benjamin Otte  <otte@gnome.org>
5747
5748         * testsuite/schedulers/.cvsignore:
5749         * testsuite/schedulers/Makefile.am:
5750         * testsuite/schedulers/143777-2.c: (main):
5751           add test for opt breakage in bug #143777
5752
5753 2004-06-20  Benjamin Otte  <otte@gnome.org>
5754
5755         * gst/gstpad.c: (gst_pad_call_chain_function):
5756           check for if we were unlinked while inside the chainfunction (fixes
5757           entrygthread having issues with #143777)
5758         * testsuite/schedulers/143777.c: (main):
5759         * testsuite/schedulers/Makefile.am:
5760           add a test for that fix
5761
5762 2004-06-20  Benjamin Otte  <otte@gnome.org>
5763
5764         * gst/gstvalue.c: (gst_value_set_int_range):
5765           test that start is smaller then end
5766         * libs/gst/bytestream/Makefile.am:
5767         * libs/gst/bytestream/filepad.c: 
5768         * libs/gst/bytestream/filepad.h:
5769           add GstFilePad - a pad that behaves like a FILE*
5770         * testsuite/bytestream/.cvsignore:
5771         * testsuite/bytestream/Makefile.am:
5772         * testsuite/bytestream/filepadsink.c: 
5773           test for the GstFilePad
5774
5775 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5776
5777         * gst/elements/gstidentity.c: (gst_identity_class_init),
5778         (gst_identity_init), (gst_identity_set_clock),
5779         (gst_identity_chain), (gst_identity_set_property),
5780         (gst_identity_get_property):
5781         * gst/elements/gstidentity.h:
5782         * gst/gstclock.c: (gst_clock_id_wait):
5783           add a "sync" property to sync to the clock
5784
5785 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5786
5787         * gst/gstelementfactory.c: (gst_element_factory_create):
5788           make the freakin "elementfactory bla has no type" message more
5789           useful. So we actually can do something when someone shows up
5790           complaining about it.
5791
5792 2004-06-15  Johan Dahlin  <johan@gnome.org>
5793
5794         * tools/gst-inspect.c (main): Fallback to plugin if no element is
5795         found. This matches the old behavior better. Thanks to Thomas for
5796         pointing out.
5797
5798 2004-06-14  David Schleef  <ds@schleef.org>
5799
5800         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
5801         -fomit-frame-pointer.  Appears to generate correct code in
5802         other cases as well.
5803
5804 2004-06-14  Johan Dahlin  <johan@gnome.org>
5805
5806         * tools/gst-inspect.c (main): Add two new command line options: -a
5807         to print all elements and -n to print the name on each line. Also
5808         fix some error reporting.
5809         (main): Simplify, remove -n and always print names if -a is specified
5810
5811 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
5812
5813         * win32/gstconfig.h:
5814         * win32/GSTreamer.vcproj:
5815         * win32/Makefile:
5816         * gst/gstconfig.h.in:
5817         * gst/gst.h:
5818         * gst/gstbin.h:
5819         * gst/gstelement.h:
5820         * gst/gstevent.h:
5821         * gst/gstobject.h:
5822         * gst/gstpad.h:
5823         * docs/gst/gstreamer-sections.txt:
5824         * docs/gst/tmpl/gstconfig.sgml:
5825           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
5826
5827 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5828         * docs/gst/gstreamer-sections.txt:
5829         * docs/gst/tmpl/gstconfig.sgml:
5830         Add the GSTREAMER_EXPORT macro to the docs
5831
5832 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5833
5834         * tools/gst-compprep.c: (handle_xmlerror), (main):
5835         Add a check for the version that introduced SetStructuredError to fix
5836         the build on FC1
5837
5838 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5839
5840         * win32/msvc71.sln:
5841         * win32/testsuite/:
5842           prepare to compile the testsuite with MSVC
5843
5844 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5845
5846         * docs/manual/win32.xml:
5847           attempt to transform the Win32 README into an XML doc
5848
5849 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5850
5851         * gst/gst.c:
5852         * gst/gstbin.*:
5853         * gst/config.h.in:
5854         * gst/gstelement.*:
5855         * gst/gstevent.h:
5856         * gst/gstobject.*:
5857         * gst/gstpad.h:
5858         * tools/gst-register.c:
5859         * win32/gstreamer.def:
5860           extern symbols are now exported for the Windows DLL
5861
5862 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5863
5864         * gst/gstinfo.h:
5865           fix a problem to enable/disable DEBUG under MSVC
5866
5867 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5868
5869         * win32/:
5870           enable more debug code in DEBUG build
5871
5872 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5873
5874         * win32/config.h:
5875         * gst/gst-i18n-app.h:
5876           enable NLS under Windows
5877
5878 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
5879         * tools/gst-compprep.c: (handle_xmlerror), (main):
5880           Make an error that baffled me a bit clearer
5881
5882 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5883
5884         * gst/gstqueue.c:
5885           don't use g_queue_get_length () because it's 2.4, use ->length
5886
5887 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
5888
5889         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
5890
5891         * tools/gst-inspect.c: (print_signal_info):
5892           don't free random data twice. (fixes #144185)
5893
5894 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5895
5896         * gst/gstqueue.c:
5897         * gst/gstqueue.h:
5898           fix removing from the wrong queue on event timeout
5899           fix disposing of the event queue by casting correctly
5900           add mutexes for handling the event queue
5901           someone was sleeping when fixing queue last time around :)
5902
5903 2004-06-10  Johan Dahlin  <johan@gnome.org>
5904
5905         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
5906         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
5907
5908 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5909
5910         * docs/random/gdp:
5911         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
5912         * libs/gst/dataprotocol/dataprotocol.c:
5913         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5914         (gst_dp_buffer_from_header):
5915         * libs/gst/dataprotocol/dataprotocol.h:
5916         * libs/gst/dataprotocol/dp-private.h:
5917           rev version to 0.1, add buffer flags and copy them
5918
5919 2004-06-09  Johan Dahlin  <johan@gnome.org>
5920
5921         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
5922         the flags from the buffer we're copying.
5923
5924 2004-06-09  Wim Taymans  <wim@fluendo.com>
5925
5926         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
5927         * gst/elements/gstidentity.c: (gst_identity_init),
5928         (gst_identity_chain):
5929         Print more buffer info in fakesink.
5930         Make identity output similar to fakesink.
5931
5932 2004-06-07  Daniel Gazard  <dany42@free.fr>
5933
5934         reviewed by Benjamin Otte  <otte@gnome.org>
5935
5936         * configure.ac:
5937           fix cross compiling not working. (fixes #143741)
5938
5939 2004-06-07  Benjamin Otte  <otte@gnome.org>
5940
5941         * gst/gstelement.c: (gst_element_set_time_delay):
5942           add failure check
5943         * gst/gstinfo.h:
5944           put brackets around macro arguments of GST_TIME_ARGS, add note to
5945           move it to correct header in 0.9
5946
5947 2004-06-07  Benjamin Otte  <otte@gnome.org>
5948
5949         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
5950         (gst_file_index_load), (_file_index_id_save_entries),
5951         (gst_file_index_commit), (gst_file_index_add_association),
5952         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
5953         (gst_file_index_plugin_init):
5954           make debugging use a default category
5955
5956 2004-06-06  David Moore  <dcm@acm.org>
5957
5958         reviewed by Benjamin Otte  <otte@gnome.org>
5959
5960         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
5961         (gst_fdsrc_change_state):
5962           reset offset counter when going READY => PAUSED. (fixes #142903)
5963
5964 2004-06-06  ed@catmur.co.uk
5965
5966         reviewed by Benjamin Otte  <otte@gnome.org>
5967
5968         * gst/registries/gstxmlregistry.c:
5969         (gst_xml_registry_rebuild_recurse):
5970           don't rely on g_dir_open to figure out if a file is a directory, use
5971           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
5972           directories. (fixes #142850)
5973
5974 2004-06-06  Benjamin Otte  <otte@gnome.org>
5975
5976         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
5977           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
5978         * libs/gst/bytestream/adapter.c:
5979         * libs/gst/bytestream/adapter.h:
5980           fix copyright in header and typo in debugging category name
5981
5982 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5983
5984         * configure.ac:
5985           bump nano to cvs
5986
5987 === release 0.8.3 ===
5988
5989 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5990
5991         * configure.ac:
5992           update libtool versioning
5993           do a new release
5994         * docs/gst/tmpl/gstelement.sgml:
5995         * docs/gst/tmpl/gsttypes.sgml:
5996         * gst/gstinfo.c: (_gst_debug_init):
5997           put back GST_CAT_DATAFLOW to fix API breakage
5998
5999 2004-06-04  David Schleef  <ds@schleef.org>
6000
6001         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6002
6003 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6004
6005         * configure.ac:
6006           bump nano to cvs
6007
6008 === release 0.8.2 ===
6009
6010 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6011
6012         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6013           check GST_DEBUG environment variable which is parsed the same way
6014           as --gst-debug=
6015
6016 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6017
6018         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6019                             gstmd5sink.c gstshaper.c gsttee.c
6020                             gsttypefindelement.c
6021         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6022
6023           - removing trailing commas at end of enums
6024             it is correct C99 code but C90 compilers would complain
6025             (AIX, Forte, ...)
6026             ('should' fix #143290, at least partially)
6027
6028 2004-05-27  Wim Taymans  <wim@fluendo.com>
6029
6030         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6031         (chain_group_set_enabled), (create_group), (add_to_group),
6032         (merge_groups), (setup_group_scheduler), (group_elements),
6033         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6034         Don't try to follow the pad connections with other groups
6035         when a loop based element is added to the scheduler because
6036         the bin will inform the scheduler about the pad links a little
6037         later.
6038
6039 2004-05-27  Wim Taymans  <wim@fluendo.com>
6040
6041         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6042         (remove_from_chain), (chain_group_set_enabled),
6043         (setup_group_scheduler), (group_element_set_enabled),
6044         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6045         (gst_opt_scheduler_show):
6046         Elements without a group can do a state change as well, just wait
6047         with the setup of the scheduling function when it is added to a
6048         chain.
6049
6050 2004-05-27  Wim Taymans  <wim@fluendo.com>
6051
6052         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6053         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6054         (merge_groups), (setup_group_scheduler),
6055         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6056         (gst_opt_scheduler_show):
6057         Fixes to maintain internal consistency of the scheduler data
6058         structures. 
6059          - adding an enabled group to a chain should increment the
6060            number of enabled elements in that chain.
6061          - removing an enabled group from a chain could disable the
6062            chain.
6063          - removing a disabled group from a chain could enable the
6064            chain.
6065          - add g_assert when internal inconsistency is detected.
6066          - adding an element to a group could increase the number of
6067            links this group has with other groups.
6068          - merging two groups also merges the chains.
6069          - also show group links in the _show method.
6070            
6071
6072 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6073
6074         * gst/gstcaps.c: (gst_caps_structure_simplify):
6075           don't print error messages when there is no error
6076         * gst/gstvalue.c: (gst_value_compare_int_range):
6077           compare the second value, too
6078         * testsuite/caps/Makefile.am:
6079         * testsuite/caps/random.c: (assert_on_error), (main):
6080           add tests to make sure the two things above are checked for
6081
6082 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6083
6084         * configure.ac:
6085         * libs/gst/dataprotocol/Makefile.am:
6086         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6087         * libs/gst/dataprotocol/dataprotocol.h:
6088           wrap header in GST_ENABLE_NEW.  make code use it
6089
6090 2004-05-23  Johan Dahlin  <johan@gnome.org>
6091
6092         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6093         so verbose and print GstElement signal names all the time.
6094
6095 2004-05-22  David Schleef  <ds@schleef.org>
6096
6097         * gst/registries/gstxmlregistry.c:
6098         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6099         (bug #142957)
6100
6101 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6102
6103         * configure.ac:
6104           scrub cflags for glib2 so gcc doesn't complain when glib is in
6105           /usr/local
6106
6107 2004-05-21  Johan Dahlin  <johan@gnome.org>
6108
6109         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6110         __GNUC__, patch from Brian Cameron, fixes bug #142804
6111
6112 2004-05-20  David Schleef  <ds@schleef.org>
6113
6114         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6115         comparison code.  (bug #142819)
6116
6117 2004-05-20  Wim Taymans  <wim@fluendo.com>
6118
6119         * gst/gstbuffer.c: (gst_buffer_default_copy):
6120         * gst/gstbuffer.h:
6121         Added Comment to a flag.
6122         copy relevant flags in _buffer_copy.
6123
6124 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6125
6126         reviewed by: Wim Taymans <wim at fluendo dot com>
6127
6128         * gst/gstbuffer.h:
6129           add GST_BUFFER_IN_CAPS buffer flag
6130         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6131         (gst_structure_parse_any_list), (gst_structure_parse_list),
6132         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6133         * gst/gstvalue.c: (gst_value_serialize_any_list),
6134         (gst_value_transform_any_list_string),
6135         (gst_value_list_prepend_value), (gst_value_list_append_value),
6136         (gst_value_list_get_size), (gst_value_list_get_value),
6137         (gst_value_transform_list_string),
6138         (gst_value_transform_fixed_list_string),
6139         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6140         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6141         (_gst_value_initialize):
6142         * gst/gstvalue.h:
6143           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6144           < , > as a format.
6145         * testsuite/caps/string-conversions.c: (main):
6146           add regression tests for < >
6147
6148 2004-05-20  Johan Dahlin  <johan@gnome.org>
6149
6150         * docs/gst/Makefile.am (all-local): Re-add
6151
6152 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6153
6154         * docs/gst/Makefile.am:
6155         * docs/gst/gstreamer-docs.sgml:
6156         * docs/libs/Makefile.am:
6157         * docs/libs/gstreamer-libs-docs.sgml:
6158           fix distcheck issues
6159
6160 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6161
6162         * libs/gst/dataprotocol/Makefile.am:
6163           add to autotest
6164
6165 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6166
6167         * libs/gst/dataprotocol/Makefile.am:
6168         * libs/gst/dataprotocol/dataprotocol.c:
6169         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6170         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6171         * libs/gst/dataprotocol/dp-private.h:
6172           use GST macros to read/write fixed length ints
6173           add some more asserts
6174
6175 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6176
6177         * docs/libs/gstreamer-libs-docs.sgml:
6178         * docs/libs/gstreamer-libs-sections.txt:
6179           remove idct and putbits
6180         * configure.ac:
6181         * docs/libs/tmpl/gstdataprotocol.sgml:
6182         * libs/gst/Makefile.am:
6183         * libs/gst/dataprotocol/Makefile.am:
6184         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6185         (buffer_test), (caps_test), (event_test), (main):
6186         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6187         (gst_dp_dump_byte_array), (gst_dp_init),
6188         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6189         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6190         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6191         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6192         (gst_dp_validate_header), (gst_dp_validate_payload),
6193         (gst_dp_validate_packet), (plugin_init):
6194         * libs/gst/dataprotocol/dataprotocol.h:
6195         * libs/gst/dataprotocol/dp-private.h:
6196           add dataprotocol
6197
6198 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6199
6200         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6201           fix int variable deserialization and add a helper so we can actually
6202           debug this.
6203
6204 2004-05-18  David Schleef  <ds@schleef.org>
6205
6206         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6207           argv[0].  Calling yourself is probably not the best way to
6208           construct a test like this, btw.
6209
6210 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6211
6212         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6213           don't claim to be more intelligent than a scheduler when the
6214           scheduler claims the pipeline is stopped
6215         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6216         (safe_cothread_destroy),
6217         (gst_entry_scheduler_remove_all_cothreads),
6218         (gst_entry_scheduler_reset), (_remove_cothread),
6219         (gst_entry_scheduler_state_transition):
6220           hold off cothread destruction if we're not in main cothread
6221         * configure.ac:
6222         * testsuite/Makefile.am:
6223           add new test dir
6224         * testsuite/schedulers/.cvsignore:
6225         * testsuite/schedulers/Makefile.am:
6226           add tests
6227         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6228           check relinking and adding/removing elements from a running pipeline
6229         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6230           check unlinking in a running pipeline
6231         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6232           check unreffing a running pipeline
6233         * testsuite/schedulers/useless_iteration.c: (main):
6234           check iterating a pipeline that contains running threads works
6235
6236 2004-05-18  David Schleef  <ds@schleef.org>
6237
6238         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6239           is false.
6240
6241 2004-05-18  Wim Taymans  <wim@fluendo.com>
6242
6243         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6244         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6245         Fixed an error introduced with patch for 1.63. When setting
6246         a get based element as the entry point in a group, make sure
6247         to mark the group as GET based.
6248
6249 2004-05-18  Wim Taymans  <wim@fluendo.com>
6250
6251         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6252         (setup_group_scheduler), (loop_group_schedule_function),
6253         (gst_opt_scheduler_pad_link):
6254         Added some more debug info and fixed a bug where the group
6255         type was set to LOOP but it was in fact unknown.
6256
6257 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6258
6259         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6260           make resetting scheduler work twice in a row
6261
6262 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6263
6264         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6265         (CREATE_USERIALIZATION), (_gst_value_initialize),
6266         (gst_value_compare_float), (gst_value_serialize_float),
6267         (gst_value_deserialize_float), (gst_value_compare_enum),
6268         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6269           add serialization and comparison functions for long, int64, enum and
6270           float values
6271         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6272           use best serialization function in type hierarchy instead of only a
6273           matching one. This is required for enums to work.
6274         * gst/parse/grammar.y:
6275           use gst_caps_deserialize
6276         * testsuite/parse/Makefile.am:
6277           parse1 now works
6278         * testsuite/parse/parse1.c: (main):
6279           remove aggregator check, aggregator is broken, this test works now
6280           but fails because of bug #138012
6281         * testsuite/parse/parse2.c: (main):
6282           s/xvideosink/xvimagesink - this test looks a lot like we should
6283           disable it
6284
6285 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6286
6287         * gst/gstelement.c: (gst_element_class_init):
6288           whoops, store the signal id correctly
6289         * gst/schedulers/gstbasicscheduler.c:
6290         (gst_basic_scheduler_chain_wrapper):
6291           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6292           chain function isn't linked
6293
6294 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6295         * configure.ac:
6296         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6297         support until we decide where the flags should be used
6298         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6299         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6300         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6301         Output refused caps in the debug info
6302
6303 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6304
6305         * gst/elements/gstidentity.c: (gst_identity_chain):
6306           add duration debug
6307         * gst/gstinfo.c: (gst_debug_log_default):
6308           add timestamp
6309
6310 2004-05-13  Benjamin Otte  <otte@gnome.org>
6311
6312         * gst/gstpipeline.c: (gst_pipeline_dispose),
6313         (gst_pipeline_change_state):
6314           call gst_scheduler_reset on dispose (fixes #141416)
6315
6316 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6317
6318         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6319           compute mapsize correctly
6320         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6321           use correct datatypes when calling a varargs function
6322         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6323           push a DISCONT event as first thing
6324         * gst/gst_private.h:
6325         * gst/gstinfo.c: (_gst_debug_init):
6326           remove GST_DATAFLOW debugging category
6327         * gst/gstbin.c: (gst_bin_iterate):
6328           use GST_SCHEDULING category
6329         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6330         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6331         (gst_pad_call_get_function):
6332           add GST_DATAFLOW to easily track flow of buffers or events.
6333         * gst/gstqueue.c: (gst_queue_get_type),
6334         (gst_queue_handle_pending_events), (gst_queue_chain),
6335         (gst_queue_get), (gst_queue_handle_src_event):
6336           use own static debugging category GST_DATAFLOW for dataflow,
6337           use DEBUG category for showing which path events go, use LOG
6338           category for buffers.
6339
6340 2004-05-10  David Schleef  <ds@schleef.org>
6341
6342         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6343
6344 2004-05-10  David Schleef  <ds@schleef.org>
6345
6346         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6347         symbols, because otherwise we don't know what they are.  Thanks,
6348         the GStreamer team.
6349         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6350
6351 2004-05-10  David Schleef  <ds@schleef.org>
6352
6353         (from Steve Lhomme)
6354         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6355         are deleted.  Fix.
6356         * win32/Makefile.inspect:
6357         * win32/Makefile.launch:
6358         * win32/Makefile.register:
6359
6360 2004-05-10  David Schleef  <ds@schleef.org>
6361
6362         * gst/gstinfo.h: Add missing inline function.
6363         * gst/gsttrace.c: add include
6364         * gst/parse/grammar.y: remove unused code
6365         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6366         more portable.
6367         * tools/gst-register.c: wrap unistd.h
6368         
6369         More additions/fixes from Steve for the MSVC build.
6370         * win32/GStreamer.vcproj:
6371         * win32/Makefile:
6372         * win32/Makefile.inspect:
6373         * win32/Makefile.launch:
6374         * win32/Makefile.register:
6375         * win32/README.txt:
6376         * win32/gst-inspect.vcproj:
6377         * win32/gst-launch.vcproj:
6378         * win32/gst-register.vcproj:
6379         * win32/gstbytestream.def:
6380         * win32/gstbytestream.vcproj:
6381         * win32/gstconfig.h:
6382         * win32/gstelements.def:
6383         * win32/gstelements.vcproj:
6384         * win32/gstenumtypes.c:
6385         * win32/gstenumtypes.h:
6386         * win32/gstoptimalscheduler.def:
6387         * win32/gstoptimalscheduler.vcproj:
6388         * win32/gstreamer.def:
6389         * win32/gstspider.def:
6390         * win32/gstspider.vcproj:
6391         * win32/gstversion.h:
6392         * win32/msvc71.sln:
6393
6394 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6395
6396         * gst/gstelement.c: (gst_element_class_init),
6397         (gst_element_no_more_pads):
6398         * gst/gstelement.h:
6399           add gst_element_no_more_pads and the "no-more-pads" signal
6400
6401 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6402
6403         * gst/gstregistry.c: (gst_registry_add_plugin):
6404           refuse to add plugins when a plugin with same name is already
6405           registered. Fixes a bunch of "How to remove plugins?" issues.
6406           May lead to other problems though, let's test
6407
6408 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6409
6410         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6411         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6412         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6413
6414 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6415
6416         * tests/Makefile.am: fix am16 issue
6417
6418 2004-05-09  Benjamin Otte  <otte@gnome.org>
6419
6420         * libs/gst/bytestream/Makefile.am:
6421           we should indeed add .c files to makefiles or they won't be built
6422           (d'oh)
6423
6424 2004-05-08  Benjamin Otte  <otte@gnome.org>
6425
6426         * gst/gstpad.c: (gst_pad_proxy_fixate):
6427           really reduce the set of caps
6428
6429 2004-05-08  Benjamin Otte  <otte@gnome.org>
6430
6431         * tests/Makefile.am:
6432         * tests/spidey_bench.c: (handoff), (main):
6433           add benchmark to test how long spider needs to create a pipeline
6434
6435 2004-05-08  Benjamin Otte  <otte@gnome.org>
6436
6437         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6438           mark links as unengaged when unnegotiating instead of deactivating.
6439           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6440
6441 2004-05-08  Benjamin Otte  <otte@gnome.org>
6442
6443         * docs/manual/helloworld.xml:
6444           s/audiosink/osssink (patch by Patrick Guimond)
6445
6446 2004-05-07  David Schleef  <ds@schleef.org>
6447
6448         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6449         since it contains important stuff.
6450
6451 2004-05-07  David Schleef  <ds@schleef.org>
6452
6453         * testsuite/caps/caps.c: (test3), (main): A check for appending
6454         ANY caps.
6455
6456 2004-05-07  David Schleef  <ds@schleef.org>
6457
6458         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6459         which may contain commas.  Fixes detection of -Wa,-mregnames
6460
6461 2004-05-06  David Schleef  <ds@schleef.org>
6462
6463         Changes to handle compilers that don't have variadic macro
6464         support.  In particular, glib headers define some inlines
6465         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6466         builds.
6467         * gst/Makefile.am:
6468         * gst/cothreads.c:
6469         * gst/elements/gstfdsink.c:
6470         * gst/elements/gstfdsrc.c:
6471         * gst/elements/gstfilesink.c:
6472         * gst/elements/gstfilesrc.c:
6473         * gst/gst_private.h:
6474         * gst/gstatomic.c:
6475         * gst/gstcaps.c: (gst_caps_append):
6476         * gst/gstcpu.c: (gst_cpuid_i386):
6477         * gst/gstelement.c:
6478         * gst/gsterror.c:
6479         * gst/gstfilter.c:
6480         * gst/gstinfo.h:
6481         * gst/gstprobe.c:
6482         * gst/gstquery.c:
6483         * gst/gstregistry.c:
6484         * gst/gststructure.c:
6485         * gst/gsttaginterface.c:
6486         * gst/gsttrace.c: (gst_trace_new):
6487         * gst/gsttrashstack.c:
6488         * gst/gsturi.c:
6489         * gst/gstvalue.c:
6490         * gst/parse/grammar.y:
6491         * gst/parse/parse.l:
6492         * tools/gst-inspect.c: (main):
6493         * tools/gst-launch.c: (main):
6494         * tools/gst-xmlinspect.c: (PUT_STRING):
6495
6496 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6497
6498         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6499         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6500         * gst/elements/gstfilesrc.h:
6501           send NEW_MEDIA events correctly
6502         * gst/elements/gsttypefindelement.c: (start_typefinding),
6503         (gst_type_find_element_handle_event):
6504           restart typefinding when we get a NEW_MEDIA event
6505         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6506         (gst_bin_dispose):
6507           don't die when someone removes elements in callbacks
6508         * gst/gstelement.c: (gst_element_change_state):
6509           improve debugging
6510         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
6511           we need a NEW_MEDIA event to engage a link
6512         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
6513           don't g_print debugging stuff
6514         * testsuite/caps/simplify.c: (check_caps):
6515
6516 2004-05-04  Benjamin Otte  <otte@gnome.org>
6517
6518         * gst/parse/grammar.y:
6519           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
6520
6521 2004-05-04  Benjamin Otte  <otte@gnome.org>
6522
6523         * testsuite/caps/renegotiate.c: (main):
6524           improve output in error case
6525
6526 2004-05-04  Benjamin Otte  <otte@gnome.org>
6527
6528         * gst/parse/grammar.y:
6529           fix assert to not trigger when there's no error argument
6530         * gst/parse/parse.l:
6531           fix definition of caps to allow more than two structures
6532         * testsuite/caps/Makefile.am:
6533         * testsuite/caps/renegotiate.c: (main):
6534           it's sinesrc and works in that case
6535
6536 2004-05-04  Wim Taymans  <wim@fluendo.com>
6537
6538         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6539         (group_dec_link), (gst_opt_scheduler_pad_unlink):
6540         when removing an element from a group, we always need to
6541         decrement the link count that this group had with other 
6542         groups through the element.
6543         added an extra assert to catch inconsistencies when decrementing
6544         the link count.
6545
6546 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6547
6548         * configure.ac:
6549         * docs/gst/Makefile.am:
6550         * docs/gst/gstreamer-sections.txt:
6551         * docs/gst/tmpl/gstcompat.sgml:
6552         * examples/appreader/Makefile.am:
6553         * examples/cutter/Makefile.am:
6554         * examples/events/Makefile.am:
6555         * examples/helloworld/Makefile.am:
6556         * examples/helloworld2/Makefile.am:
6557         * examples/launch/Makefile.am:
6558         * examples/manual/Makefile.am:
6559         * examples/mixer/Makefile.am:
6560         * examples/pingpong/Makefile.am:
6561         * examples/plugins/Makefile.am:
6562         * examples/queue/Makefile.am:
6563         * examples/queue2/Makefile.am:
6564         * examples/queue3/Makefile.am:
6565         * examples/queue4/Makefile.am:
6566         * examples/retag/Makefile.am:
6567         * examples/thread/Makefile.am:
6568         * examples/typefind/Makefile.am:
6569         * examples/xml/Makefile.am:
6570         * gst/Makefile.am:
6571         * gst/autoplug/Makefile.am:
6572         * gst/elements/Makefile.am:
6573         * gst/gstcompat.h:
6574         * gst/indexers/Makefile.am:
6575         * gst/parse/Makefile.am:
6576         * gst/registries/Makefile.am:
6577         * gst/schedulers/Makefile.am:
6578         * libs/gst/bytestream/Makefile.am:
6579         * libs/gst/control/Makefile.am:
6580         * libs/gst/getbits/Makefile.am:
6581         * po/af.po:
6582         * po/az.po:
6583         * po/en_GB.po:
6584         * po/fr.po:
6585         * po/nl.po:
6586         * po/sr.po:
6587         * po/sv.po:
6588         * po/tr.po:
6589         * po/uk.po:
6590         * tests/Makefile.am:
6591         * tests/bufspeed/Makefile.am:
6592         * tests/instantiate/Makefile.am:
6593         * tests/memchunk/Makefile.am:
6594         * tests/muxing/Makefile.am:
6595         * tests/negotiation/Makefile.am:
6596         * tests/probes/Makefile.am:
6597         * tests/sched/Makefile.am:
6598         * tests/seeking/Makefile.am:
6599         * tests/threadstate/Makefile.am:
6600         * testsuite/caps/Makefile.am:
6601         * testsuite/cleanup/Makefile.am:
6602         * testsuite/dlopen/Makefile.am:
6603         * testsuite/dynparams/Makefile.am:
6604         * testsuite/plugin/Makefile.am:
6605         * testsuite/states/Makefile.am:
6606         * tools/Makefile.am:
6607           reorganize compile/link flags to be consistent
6608           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
6609
6610 2004-05-04  David Schleef  <ds@schleef.org>
6611
6612         The "once more, with feeling" check-in.
6613         * testsuite/caps/Makefile.am: dist caps_strings
6614         * testsuite/caps/renegotiate.c: (main): This test triggers a
6615           segfault in the core.  Marking as failing.
6616
6617 2004-05-03  David Schleef  <ds@schleef.org>
6618
6619         * testsuite/caps/deserialize.c: (main): Fix problems noticed
6620           by the build bots.
6621         * testsuite/caps/renegotiate.c: (main): Same.
6622
6623 2004-05-03  David Schleef  <ds@schleef.org>
6624
6625         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
6626
6627 2004-05-03  David Schleef  <ds@schleef.org>
6628
6629         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
6630           variable to find our source file.
6631
6632 2004-05-03  David Schleef  <ds@schleef.org>
6633
6634         * configure.ac:  Link plugins with libgstreamer and dependent
6635           libraries
6636         * testsuite/caps/Makefile.am:
6637         * testsuite/caps/caps_strings:
6638         * testsuite/caps/deserialize.c: (main): Add a little test to slog
6639           through a file of caps strings and test each one
6640
6641 2004-05-04  Benjamin Otte  <otte@gnome.org>
6642
6643         * libs/gst/bytestream/Makefile.am:
6644         * libs/gst/bytestream/adapter.c: 
6645         * libs/gst/bytestream/adapter.h:
6646           add GstAdapter, similar to bytestream, but doesn't require ugly event
6647           handling or uglier loopbased elements
6648
6649 2004-05-03  David Schleef  <ds@schleef.org>
6650
6651         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
6652         * testsuite/caps/erathostenes.c:
6653         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
6654
6655 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6656
6657         * docs/pwg/pwg.xml:
6658           remove hardcoded stylesheet path (duh)
6659         * docs/random/release:
6660         * docs/gst/gstreamer-sections.txt:
6661         * gst/Makefile.am:
6662         * gst/gst.h:
6663         * gst/gst_private.h:
6664         * gst/gstcaps.c:
6665         * gst/gstevent.c:
6666         * gst/gstformat.c:
6667         * gst/gstinfo.c:
6668         * gst/gstinfo.h:
6669         * gst/gstinterface.c:
6670         * gst/gstmemchunk.c:
6671         * gst/gstprobe.c:
6672         * gst/gstquery.c:
6673         * gst/gstregistry.c:
6674         * gst/gstregistrypool.c:
6675         * gst/gststructure.c:
6676         * gst/gsttaginterface.c:
6677         * gst/gstthread.c:
6678         * gst/gsttrace.c:
6679         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
6680         * gst/gsturi.c:
6681         * gst/gstvalue.c:
6682           deprecate gst_info; remove gstlog.h
6683    
6684
6685 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6686
6687         * Makefile.am:
6688         * po/en_GB.po:
6689         * po/sv.po:
6690         * po/uk.po:
6691           updated translations
6692
6693 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6694
6695         * gst/gstbin.c: (gst_bin_dispose):
6696           better debugging
6697
6698 2004-05-03  Johan Dahlin  <johan@gnome.org>
6699
6700         * gst/schedulers/gstoptimalscheduler.c
6701         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
6702         really is a GstElement. Avoids critical when running gst-launch -v
6703         and a oggdemux/decoding pipeline.
6704
6705 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6706
6707         * docs/gst/tmpl/gstpipeline.sgml :
6708         * docs/manual/elements-api.xml :
6709                 doc fix by Patrick Guimond (Protector) from devel ML
6710                 reviewed by ronald
6711
6712 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6713
6714         * docs/gst/Makefile.am :
6715         * docs/libs/Makefile.am :
6716                 apply a patch from Arwed v. Merkatz so that gtk-doc
6717                 generated docs install (same for .devhelp file)
6718                 (fixes part 1 of #138836)
6719
6720 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6721
6722         * docs/faq/dependencies.xml: typo
6723         * docs/faq/getting.xml :
6724             - fix download URL for new gstreamer site
6725             - hide sf.net download page as latest version aren't there
6726             - fix apt URLs
6727             - fill "get via CVS" paragraph (link to dev page on the site)
6728         * docs/faq/general.xml:
6729             hide status tables as they no more exists
6730             change case on plugins license file to reflect reality
6731         * docs/faq/troubleshooting.xml:
6732             remove the wiki question/answer as there is no more wiki
6733
6734 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6735
6736         * gst/gsterror.h:
6737           include the headers needed for declarations used in this header
6738
6739 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6740
6741         * docs/random/uraeus/gstreamer_and_midi.txt :
6742           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
6743           (fixes #132288)
6744
6745 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
6746
6747         reviewed by Benjamin Otte  <otte@gnome.org>
6748
6749         * gst/schedulers/gthread-cothreads.h:
6750           free allocated data for main cothread, too when destroying context
6751           (fixes #141417)
6752
6753 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6754
6755         * docs/manual/goals.xml : remove duplicated paragraph at end 
6756         of doc page (fixes #141448)
6757
6758 2004-04-29  David Schleef  <ds@schleef.org>
6759
6760         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6761         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
6762
6763 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6764
6765         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6766           fix property
6767         * gst/gstcaps.c:
6768           fix doc string
6769         * po/POTFILES.in:
6770           rename typefind source file
6771
6772 2004-04-28  David Schleef  <ds@schleef.org>
6773
6774         Several new files from Steve Lhomme's MSVC patch (bug #141317):
6775         * win32/GStreamer.vcproj:
6776         * win32/Makefile:
6777         * win32/config.h:
6778         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
6779         (_trewinddir), (_ttelldir), (_tseekdir):
6780         * win32/dirent.h:
6781         * win32/gst-inspect.vcproj:
6782         * win32/gst-launch.vcproj:
6783         * win32/gst-register.vcproj:
6784         * win32/gstbytestream.vcproj:
6785         * win32/gstelements.vcproj:
6786         * win32/gstoptimalscheduler.vcproj:
6787         * win32/gstspider.vcproj:
6788         * win32/gtchar.h:
6789         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
6790         * win32/mman.h:
6791         * win32/mman.inl:
6792         * win32/msvc71.sln:
6793
6794 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6795
6796         * gst/gst.c: (init_post):
6797         * gst/gstinfo.c:
6798           remove useless _gst_progname stuff
6799         * tools/gst-inspect.c: (print_field), (print_caps):
6800           improve caps output
6801
6802 2004-04-28  David Schleef  <ds@schleef.org>
6803
6804         Disable parsing of a lot of files that aren't part of the
6805         exported API.  Move corresponding template files to old/,
6806         waiting for removal when they don't contain anything
6807         interesting.
6808         * docs/gst/Makefile.am:
6809         * docs/gst/gstreamer-sections.txt:
6810         * docs/gst/tmpl/cothreads.sgml:
6811         * docs/gst/tmpl/cothreads_compat.sgml:
6812         * docs/gst/tmpl/gettext.sgml:
6813         * docs/gst/tmpl/gobject2gtk.sgml:
6814         * docs/gst/tmpl/grammar.tab.sgml:
6815         * docs/gst/tmpl/gst-i18n-app.sgml:
6816         * docs/gst/tmpl/gst-i18n-lib.sgml:
6817         * docs/gst/tmpl/gst_private.sgml:
6818         * docs/gst/tmpl/gstaggregator.sgml:
6819         * docs/gst/tmpl/gstarch.sgml:
6820         * docs/gst/tmpl/gstatomic_impl.sgml:
6821         * docs/gst/tmpl/gstbufferstore.sgml:
6822         * docs/gst/tmpl/gstdata_private.sgml:
6823         * docs/gst/tmpl/gstdisksink.sgml:
6824         * docs/gst/tmpl/gstdisksrc.sgml:
6825         * docs/gst/tmpl/gstelementfactory.sgml:
6826         * docs/gst/tmpl/gstextratypes.sgml:
6827         * docs/gst/tmpl/gstfakesink.sgml:
6828         * docs/gst/tmpl/gstfakesrc.sgml:
6829         * docs/gst/tmpl/gstfdsink.sgml:
6830         * docs/gst/tmpl/gstfdsrc.sgml:
6831         * docs/gst/tmpl/gstfilesink.sgml:
6832         * docs/gst/tmpl/gstfilesrc.sgml:
6833         * docs/gst/tmpl/gsthttpsrc.sgml:
6834         * docs/gst/tmpl/gstidentity.sgml:
6835         * docs/gst/tmpl/gstindexfactory.sgml:
6836         * docs/gst/tmpl/gstmarshal.sgml:
6837         * docs/gst/tmpl/gstmd5sink.sgml:
6838         * docs/gst/tmpl/gstmultidisksrc.sgml:
6839         * docs/gst/tmpl/gstmultifilesrc.sgml:
6840         * docs/gst/tmpl/gstpadtemplate.sgml:
6841         * docs/gst/tmpl/gstpipefilter.sgml:
6842         * docs/gst/tmpl/gstschedulerfactory.sgml:
6843         * docs/gst/tmpl/gstsearchfuncs.sgml:
6844         * docs/gst/tmpl/gstshaper.sgml:
6845         * docs/gst/tmpl/gstspider.sgml:
6846         * docs/gst/tmpl/gstspideridentity.sgml:
6847         * docs/gst/tmpl/gststatistics.sgml:
6848         * docs/gst/tmpl/gsttee.sgml:
6849         * docs/gst/tmpl/gsttimecache.sgml:
6850         * docs/gst/tmpl/gsttypefind.sgml:
6851         * docs/gst/tmpl/gsttypefindfactory.sgml:
6852         * docs/gst/tmpl/gstxmlregistry.sgml:
6853         * docs/gst/tmpl/gthread-cothreads.sgml:
6854         * docs/gst/tmpl/old/cothreads.sgml:
6855         * docs/gst/tmpl/old/cothreads_compat.sgml:
6856         * docs/gst/tmpl/old/gettext.sgml:
6857         * docs/gst/tmpl/old/gobject2gtk.sgml:
6858         * docs/gst/tmpl/old/grammar.tab.sgml:
6859         * docs/gst/tmpl/old/gst-i18n-app.sgml:
6860         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
6861         * docs/gst/tmpl/old/gst_private.sgml:
6862         * docs/gst/tmpl/old/gstaggregator.sgml:
6863         * docs/gst/tmpl/old/gstarch.sgml:
6864         * docs/gst/tmpl/old/gstatomic_impl.sgml:
6865         * docs/gst/tmpl/old/gstbufferstore.sgml:
6866         * docs/gst/tmpl/old/gstdata_private.sgml:
6867         * docs/gst/tmpl/old/gstdisksink.sgml:
6868         * docs/gst/tmpl/old/gstdisksrc.sgml:
6869         * docs/gst/tmpl/old/gstelementfactory.sgml:
6870         * docs/gst/tmpl/old/gstextratypes.sgml:
6871         * docs/gst/tmpl/old/gstfakesink.sgml:
6872         * docs/gst/tmpl/old/gstfakesrc.sgml:
6873         * docs/gst/tmpl/old/gstfdsink.sgml:
6874         * docs/gst/tmpl/old/gstfdsrc.sgml:
6875         * docs/gst/tmpl/old/gstfilesink.sgml:
6876         * docs/gst/tmpl/old/gstfilesrc.sgml:
6877         * docs/gst/tmpl/old/gsthttpsrc.sgml:
6878         * docs/gst/tmpl/old/gstidentity.sgml:
6879         * docs/gst/tmpl/old/gstindexfactory.sgml:
6880         * docs/gst/tmpl/old/gstmarshal.sgml:
6881         * docs/gst/tmpl/old/gstmd5sink.sgml:
6882         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
6883         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
6884         * docs/gst/tmpl/old/gstpadtemplate.sgml:
6885         * docs/gst/tmpl/old/gstpipefilter.sgml:
6886         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
6887         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
6888         * docs/gst/tmpl/old/gstshaper.sgml:
6889         * docs/gst/tmpl/old/gstspider.sgml:
6890         * docs/gst/tmpl/old/gstspideridentity.sgml:
6891         * docs/gst/tmpl/old/gststatistics.sgml:
6892         * docs/gst/tmpl/old/gsttee.sgml:
6893         * docs/gst/tmpl/old/gsttimecache.sgml:
6894         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
6895         * docs/gst/tmpl/old/gstxmlregistry.sgml:
6896         * docs/gst/tmpl/old/gthread-cothreads.sgml:
6897         * docs/gst/tmpl/old/types.sgml:
6898         * docs/gst/tmpl/types.sgml:
6899
6900         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
6901         gtkdoc-scan doesn't like files with the same name in different
6902         directories.
6903         * gst/elements/Makefile.am:
6904         * gst/elements/gstelements.c:
6905         * gst/elements/gsttypefind.c: 
6906         * gst/elements/gsttypefind.h:
6907         * gst/elements/gsttypefindelement.c:
6908         * gst/elements/gsttypefindelement.h:
6909
6910 2004-04-28  David Schleef  <ds@schleef.org>
6911
6912         A bunch of portability fixes, derived from Steve Lhomme's MSVC
6913         patch (bug #141317):
6914         * gst/gst-i18n-lib.h: Allow disabling gettext.
6915         * gst/gstatomic_impl.h: disable warning when it's dumb.
6916         * gst/gstclock.c: fix include
6917         * gst/gstcompat.h: fix variadic macro
6918         * gst/gstinfo.c: fix include
6919         * gst/gstmacros.h: add defines for inlines on MSVC
6920         * gst/gstplugin.c: fix includes
6921         * gst/gstregistry.c: fix includes
6922         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
6923         * gst/gstsystemclock.c: fix include
6924         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
6925         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
6926         * gst/registries/gstxmlregistry.c:
6927         (gst_xml_registry_parse_element_factory): fix use of non-portable
6928         functions
6929         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
6930         * libs/gst/control/dparammanager.h: same
6931
6932 2004-04-28  David Schleef  <ds@schleef.org>
6933
6934         Move a bunch of unused files to old/ with names that are
6935         not case-insensitive-unique.  These files still contain some
6936         useful information that needs to be merged into gstbin.sgml,
6937         etc., so they shouldn't be deleted yet.
6938         * docs/gst/tmpl/GstBin.sgml:
6939         * docs/gst/tmpl/GstBuffer.sgml:
6940         * docs/gst/tmpl/GstCaps.sgml:
6941         * docs/gst/tmpl/GstClock.sgml:
6942         * docs/gst/tmpl/GstCompat.sgml:
6943         * docs/gst/tmpl/GstData.sgml:
6944         * docs/gst/tmpl/GstElement.sgml:
6945         * docs/gst/tmpl/GstEvent.sgml:
6946         * docs/gst/tmpl/GstIndex.sgml:
6947         * docs/gst/tmpl/GstStructure.sgml:
6948         * docs/gst/tmpl/GstTag.sgml:
6949         * docs/gst/tmpl/old/GstBin.sgml:
6950         * docs/gst/tmpl/old/GstBuffer.sgml:
6951         * docs/gst/tmpl/old/GstCaps.sgml:
6952         * docs/gst/tmpl/old/GstClock.sgml:
6953         * docs/gst/tmpl/old/GstCompat.sgml:
6954         * docs/gst/tmpl/old/GstData.sgml:
6955         * docs/gst/tmpl/old/GstElement.sgml:
6956         * docs/gst/tmpl/old/GstEvent.sgml:
6957         * docs/gst/tmpl/old/GstIndex.sgml:
6958         * docs/gst/tmpl/old/GstStructure.sgml:
6959         * docs/gst/tmpl/old/GstTag.sgml:
6960
6961 2004-04-28  David Schleef  <ds@schleef.org>
6962
6963         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6964         (gst_caps_append), (gst_caps_append_structure),
6965         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
6966         (gst_caps_set_simple), (gst_caps_set_simple_valist),
6967         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
6968         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
6969         (gst_caps_intersect), (gst_caps_normalize),
6970         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
6971         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
6972         * gst/gstcaps.h: use GST_IS_CAPS().
6973
6974 2004-04-26  David Schleef  <ds@schleef.org>
6975
6976         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
6977         assembly.  gcc doesn't handle it correctly. (bug #141083)
6978         * gst/gsttrashstack.h: same
6979
6980 2004-04-25  Benjamin Otte  <otte@gnome.org>
6981
6982         * gst/gstelement.c: (gst_element_change_state):
6983           fix assertion to do an int comparison
6984
6985 2004-04-25  Benjamin Otte  <otte@gnome.org>
6986
6987         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6988           better debugging output on error
6989
6990 2004-04-25  Benjamin Otte  <otte@gnome.org>
6991
6992         * gst/gstcaps.c: (gst_caps_subtract):
6993           fix memleak
6994
6995 2004-04-23  Benjamin Otte  <otte@gnome.org>
6996
6997         * gst/gstvalue.c: (gst_value_compare_buffer),
6998         (_gst_value_initialize):
6999           add comparison function for buffers
7000
7001 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7002
7003         * docs/pwg/pwg.xml:
7004           Just found out that this so-called "ima-wav" format is really
7005           just "dvi adpcm" (according to the MS WAV documentation). So
7006           renaming it. We didn't use it yet anyway.
7007
7008 2004-04-23  Benjamin Otte  <otte@gnome.org>
7009
7010         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7011           call gst_caps_is_subset
7012
7013 2004-04-23  Benjamin Otte  <otte@gnome.org>
7014
7015         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7016         (gst_caps_is_subset):
7017           add documentation
7018
7019 2004-04-23  Benjamin Otte  <otte@gnome.org>
7020           
7021         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7022         (gst_caps_structure_subtract), (gst_caps_subtract),
7023         (gst_caps_structure_figure_out_union),
7024         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7025           fix simplifying and subtracting not working correctly with optional
7026           properties
7027           solve assorted problems that make it now simplify ebven more
7028         * docs/gst/tmpl/gstcaps.sgml:
7029         * gst/gstcaps.h:
7030           make gst_caps_do_simplify return a bool to indicate if it simplified
7031         * testsuite/caps/simplify.c: (main):
7032           add more checks. The tests is quite a bit useless right now because
7033           the core is heavily simplifying itself.
7034         * testsuite/caps/caps.h:
7035           fix caps to contain all optional properties
7036
7037 2004-04-22  Benjamin Otte  <otte@gnome.org>
7038
7039         * docs/gst/tmpl/gstcaps.sgml:
7040         * docs/gst/tmpl/gstfilesrc.sgml:
7041         * docs/gst/tmpl/gststructure.sgml:
7042         * docs/gst/tmpl/gstvalue.sgml:
7043           update for recent API changes
7044         * gst/gstcaps.c: (gst_caps_do_simplify):
7045           fix to stop trying with a freed structure
7046         * gst/gstpad.c: (gst_pad_link_fixate):
7047           simplify caps
7048         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7049           remove C++ comment
7050         * gst/gstpad.h:
7051           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7052         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7053         (gst_structure_to_string):
7054           keep the correct type when using lists of ranges
7055         * gst/gstvalue.c: (gst_value_list_prepend_value),
7056         (gst_value_list_append_value):
7057           copy the value before adding to the list (d'oh)
7058         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7059         (gst_value_subtract_int_range_int_range):
7060           handle overflows correctly
7061         * gst/gstvalue.c: (gst_value_subtract_from_list):
7062           fix memleak
7063         * testsuite/caps/caps.h:
7064           add a caps that caused segfaults
7065
7066 2004-04-22  Benjamin Otte  <otte@gnome.org>
7067
7068         * testsuite/refcounting/pad.c: (main):
7069           fix test
7070
7071 2004-04-22  Benjamin Otte  <otte@gnome.org>
7072
7073         * gst/gstcaps.c: (gst_caps_subtract):
7074           allow subtracting ANY and EMPTY from ANY caps
7075
7076 2004-04-22  Benjamin Otte  <otte@gnome.org>
7077
7078         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7079         (gst_caps_union):
7080           only simplify in functions that create new caps. Simplifying in
7081           gst_caps_append breaks tests.
7082
7083 2004-04-22  Benjamin Otte  <otte@gnome.org>
7084
7085         * gst/gstcaps.c: (gst_caps_structure_simplify):
7086           unset GValue after use
7087         * gst/gstcaps.c: (gst_caps_append), 
7088         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7089           use gst_caps_simplify (reduces registry size by 30%)
7090         * gst/gstpad.c: (gst_pad_template_new):
7091           don't allow NULL caps
7092
7093 2004-04-22  Benjamin Otte  <otte@gnome.org>
7094
7095         * docs/gst/gstreamer-sections.txt:
7096           add gst_caps_do_simplify
7097         * gst/gstcaps.c:
7098           add documentation for gst_caps_do_simplify
7099         * gst/gstvalue.h:
7100           fix typo in gst_value_register_subtract_func declaration for gst-doc
7101
7102 2004-04-22  Benjamin Otte  <otte@gnome.org>
7103
7104         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7105           fix bug when converting from empty string.
7106         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7107         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7108           use gst_caps_new_empty to allocate a new caps. Only that function
7109           allocates memory for caps now.
7110         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7111         (gst_caps_remove_structure):
7112           add ability to remove one structure (but not to header yet)
7113         * gst/gstcaps.c: (gst_caps_compare_structures),
7114         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7115         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7116         * gst/gstcaps.h:
7117           add gst_caps_do_simplify that tries to simplify a caps in place.
7118           Deprecate old gst_caps_simplify function.
7119         * testsuite/caps/caps.h:
7120           add caps.h containing a common set of caps to test against.
7121         * testsuite/caps/sets.c: (check_caps), (main):
7122           use it.
7123         * testsuite/caps/.cvsignore:
7124         * testsuite/caps/Makefile.am:
7125         * testsuite/caps/simplify.c: (check_caps), (main):
7126           add test to check correctness and efficency of caps simplification.
7127
7128 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7129
7130         reviewed by Benjamin Otte  <otte@gnome.org>
7131
7132         * gst/gstparse.c: (_gst_parse_escape):
7133           Free the GString used in _gst_parse_escape()
7134
7135 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7136
7137         * gst/gstpad.c: (gst_pad_link_negotiate):
7138           refuse to link if the link is not possible
7139         * configure.ac:
7140         * testsuite/Makefile.am:
7141         * testsuite/negotiation/.cvsignore:
7142         * testsuite/negotiation/Makefile.am:
7143         * testsuite/negotiation/pad_link.c: (main):
7144           add test that checks the above behaviour
7145
7146 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7147
7148         * docs/gst/gstreamer-sections.txt:
7149           add newly added API
7150
7151 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7152
7153         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7154         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7155         (gst_filesrc_open_file), (gst_filesrc_close_file),
7156         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7157         * gst/elements/gstfilesrc.h:
7158           add support for non-regular files (#140734)
7159
7160 2004-04-21  Benjamin Otte  <otte@gnome.org>
7161
7162         * gst/gstpad.c: (gst_pad_link_fixate):
7163           add sophisticated error checking code to see if fixation functions
7164           did their fixation right
7165
7166 2004-04-21  Benjamin Otte  <otte@gnome.org>
7167
7168         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7169           check for ANY caps before appending/unioning
7170         * gst/gstcaps.c: (gst_caps_is_subset),
7171         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7172         (gst_caps_structure_subtract), (gst_caps_subtract):
7173         * gst/gstcaps.h:
7174           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7175           the API. deprecate gst_caps_is_equal_fixed
7176         * gst/gstpad.c: (gst_pad_try_set_caps):
7177         * gst/gstqueue.c: (gst_queue_link):
7178           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7179         * gst/gststructure.c: (gst_structure_get_name_id):
7180         * gst/gststructure.h:
7181           add function gst_structure_get_name_id
7182         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7183         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7184         (gst_value_subtract_int_range_int_range),
7185         (gst_value_subtract_double_double_range),
7186         (gst_value_subtract_double_range_double),
7187         (gst_value_subtract_double_range_double_range),
7188         (gst_value_subtract_from_list), (gst_value_subtract_list),
7189         (gst_value_can_intersect), (gst_value_subtract),
7190         (gst_value_can_subtract), (gst_value_register_subtract_func),
7191         (_gst_value_initialize):
7192         * gst/gstvalue.h:
7193           add support for subtracting values from each other. Note that
7194           subtracting means subtracting as in set theory. Required for caps
7195           stuff above.
7196         * testsuite/caps/.cvsignore:
7197         * testsuite/caps/Makefile.am:
7198         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7199         * testsuite/caps/sets.c: (check_caps), (main):
7200         * testsuite/caps/subtract.c: (check_caps), (main):
7201           add tests for subtraction and equality code.
7202
7203 2004-04-20  David Schleef  <ds@schleef.org>
7204
7205         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7206         * gst/indexers/Makefile.am:
7207         * gst/schedulers/Makefile.am:
7208         * libs/gst/bytestream/Makefile.am:
7209         * libs/gst/control/Makefile.am:
7210         * libs/gst/getbits/Makefile.am:
7211
7212 2004-04-20  David Schleef  <ds@schleef.org>
7213
7214         * common/as-libtool.mak: Fine-tune DLL building.
7215         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7216         (like gst-plugins)
7217         * examples/plugins/Makefile.am: remove plugindir
7218         * gst/autoplug/Makefile.am: DLL building fixes
7219         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7220         Windows.
7221         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7222         * gst/indexers/Makefile.am: DLL building fixes
7223         * gst/schedulers/Makefile.am: DLL building fixes.
7224         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7225         * libs/gst/control/Makefile.am: same
7226         * libs/gst/getbits/Makefile.am: same
7227         * testsuite/Makefile.am: New dlopen directory
7228         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7229         when dlopened.
7230         * testsuite/dlopen/dlopen_gst.c: (main): same
7231         * testsuite/dlopen/loadgst.c: (do_test): same
7232
7233 2004-04-20  David Schleef  <ds@schleef.org>
7234
7235         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7236         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7237
7238 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7239
7240         * gst/gstelement.c: (gst_element_wait),
7241         (gst_element_set_time_delay), (gst_element_change_state):
7242           Use GST_TIME_*
7243
7244 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7245
7246         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7247         (gst_spider_identity_plug):
7248           improve debugging messages
7249         * gst/gstbin.c: (gst_bin_remove_func):
7250           make sure the state_change function is only called with simple state
7251           transitions
7252
7253 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7254
7255         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7256         (gst_fakesink_set_property), (gst_fakesink_chain):
7257         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7258         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7259         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7260         * gst/elements/gstidentity.c: (gst_identity_chain),
7261         (gst_identity_set_property):
7262         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7263         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7264           add warnings to _set_property for unknown arguments
7265           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7266
7267 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7268
7269         * Makefile.am:
7270         * docs/manuals.mak:
7271           add .po file download snippet
7272           fix a bug in the doc makefile
7273
7274 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7275
7276         * Makefile.am:
7277         * po/LINGUAS:
7278         * po/en_GB.po:
7279           Added en_GB translation (Gareth Owen)
7280
7281 2004-04-20  Johan Dahlin  <johan@gnome.org>
7282
7283         * gst/gstpad.c (_invent_event): Clean up
7284
7285 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7286
7287         * testsuite/caps/filtercaps.c: (main):
7288           fix test to test things correctly (caps are complicated)
7289
7290 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7291
7292         * testsuite/caps/Makefile.am:
7293         * testsuite/caps/filtercaps.c: (main):
7294           add test (that doesn't work right now, but should)
7295
7296 2004-04-19  David Schleef  <ds@schleef.org>
7297
7298         * configure.ac: Add test for allowing unaligned access.  Add define
7299         to put in gstconfig.h.
7300         * docs/gst/gstreamer-sections.txt: New symbols
7301         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7302         * docs/gst/tmpl/gstfilesrc.sgml:
7303         * docs/gst/tmpl/gstparse.sgml:
7304         * docs/gst/tmpl/gsttypes.sgml:
7305         * docs/gst/tmpl/gstutils.sgml:
7306         * docs/gst/tmpl/gstvalue.sgml:
7307         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7308         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7309         on most !i386/!powerpc architectures.  From Daniel Gazard
7310         <daniel.gazard@free.fr>.  (bug #140156)
7311         * po/af.po: Check in changes made by gettext.
7312         * po/az.po:
7313         * po/fr.po:
7314         * po/nl.po:
7315         * po/sr.po:
7316         * po/sv.po:
7317
7318 2004-04-20  Benjamin Otte  <otte@gnome.org>
7319
7320         * gst/schedulers/entryscheduler.c: 
7321         (gst_entry_scheduler_yield):
7322           refuse to yield when decoupled elements insist on doing that.
7323           At least it's better than crashing
7324
7325 2004-04-19  David Schleef  <ds@schleef.org>
7326
7327         * docs/libs/Makefile.am: Change sinclude to include
7328         * docs/gst/Makefile.am: same
7329         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7330
7331 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7332
7333         * po/LINGUAS:
7334         * po/uk.po:
7335           Added Ukrainian translation (Maxim V. Dziumanenko)
7336
7337 2004-04-19  Johan Dahlin  <johan@gnome.org>
7338
7339         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7340         checking here, do it before calling the function.
7341         Clean up, use for loops instead of while loops while iterating
7342         over lists.
7343
7344         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7345         in debug message.
7346         (gst_spider_create_and_plug): Improve debug message.
7347         General: Replace while loops which iterates over GLists with for
7348         loops. Which are much cleaner, improves readability, especially
7349         for gst_spider_identity_plug
7350
7351         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7352         fixes bug 140477
7353
7354 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7355
7356         * po/LINGUAS:
7357         * po/tr.po:
7358           Added Turkish translation (Baris Cicek)
7359
7360 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7361
7362         * docs/faq/troubleshooting.xml:
7363           Mention gst-register in the FAQ (fixes 139045).
7364
7365 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7366
7367         * docs/gst/gstreamer-sections.txt:
7368
7369 2004-04-17  Benjamin Otte  <otte@gnome.org>
7370
7371         * gst/gstelement.c: (gst_element_dispose):
7372           simplify
7373         * gst/gstpad.c: (gst_pad_call_chain_function):
7374           don't create loads of events due to bad macro usage
7375
7376 2004-04-16  David Schleef  <ds@schleef.org>
7377
7378         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7379         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7380         * gst/gstvalue.c: (gst_value_serialize_buffer),
7381         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7382         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7383         to indicate types that are fixed wrt caps or not.  Switching to
7384         this function fixes (bug #140298).
7385         * gst/gstvalue.h:
7386
7387 2004-04-16  David Schleef  <ds@schleef.org>
7388
7389         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7390         for GST_UNALIGNED_ACESS, since we essentially know which archs
7391         are ok.
7392
7393 2004-04-17  Benjamin Otte  <otte@gnome.org>
7394
7395         * docs/gst/Makefile.am:
7396           ignore gst/parse directory when building docs (fixes #140205)
7397
7398 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7399
7400         * testsuite/refcounting/mem.c: (vmsize):
7401           do error checking
7402
7403 2004-04-16  Johan Dahlin  <johan@gnome.org>
7404
7405         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7406         and gst_pad_call_get_function.
7407
7408 2004-04-15  David Schleef  <ds@schleef.org>
7409
7410         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7411         checks if we can access unaligned memory.
7412         * configure.ac: Use it.
7413
7414 2004-04-16  Benjamin Otte  <otte@gnome.org>
7415
7416         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7417         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7418         * gst/elements/gstfilesrc.h:
7419           s/seek_happened/need_discont/ and require discont before sending any
7420           data
7421
7422 2004-04-15  David Schleef  <ds@schleef.org>
7423
7424         * gst/gstvalue.c: (gst_value_serialize_buffer),
7425         (gst_value_deserialize_buffer), (_gst_value_initialize):
7426         Register these types as fundamental types. (bug #140015)
7427
7428 2004-04-16  Benjamin Otte  <otte@gnome.org>
7429
7430         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7431         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7432         (gst_pad_pull):
7433           implement enforcing discont events before buffers are passed. This
7434           allows state changes of only some elements and later correctly going
7435           on where they left off (or in short: you can now set audio sinks to
7436           NULL to release the device when the pipeline is paused)
7437         * gst/gstpad.c: (gst_pad_call_chain_function),
7438         (gst_pad_call_get_function):
7439         * gst/gstpad.h:
7440           add gst_pad_call_chain_function and gst_pad_call_get_function for
7441           scheduler interaction. They are required because of the changes
7442           above.
7443         * gst/schedulers/entryscheduler.c: (get_buffer),
7444         (gst_entry_scheduler_chain_wrapper),
7445         (gst_entry_scheduler_get_wrapper),
7446         (gst_entry_scheduler_state_transition),
7447         (gst_entry_scheduler_pad_link):
7448         * gst/schedulers/gstbasicscheduler.c:
7449         (gst_basic_scheduler_chain_wrapper),
7450         (gst_basic_scheduler_src_wrapper),
7451         (gst_basic_scheduler_chainhandler_proxy),
7452         (gst_basic_scheduler_gethandler_proxy),
7453         (gst_basic_scheduler_cothreaded_chain),
7454         (gst_basic_scheduler_chain_elements):
7455         * gst/schedulers/gstoptimalscheduler.c:
7456         (get_group_schedule_function), (pad_clear_queued),
7457         (gst_opt_scheduler_pad_link):
7458           use the new functions instead of calling get/chain-functions
7459           directly.
7460
7461 2004-04-15  David Schleef  <ds@schleef.org>
7462
7463         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7464         * docs/gst/tmpl/gstinfo.sgml: same
7465         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7466         gtk-doc put here.
7467         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7468         * examples/queue/queue.c: (main):  We iterate pipelines, not
7469         bins.  (bug #139996)
7470
7471 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7472
7473         * docs/pwg/advanced-types.xml:
7474           Add MS RLE support. Also document Qt RLE although I have no sample
7475           files for that yet. And document an extra property for ADPCM.
7476
7477 2004-04-15  David Schleef  <ds@schleef.org>
7478
7479         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7480         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7481         Windows.
7482
7483 2004-04-15  David Schleef  <ds@schleef.org>
7484
7485         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7486         symbol names to not conflict with new gstinfo.h symbols.
7487         * gst/gstinfo.h: Add inline functions for all those crazy
7488         compilers that don't know how to handle variadic macros (MSVC).
7489
7490 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7491
7492         * configure.ac: bump nano to 1
7493
7494 === release 0.8.1 ===
7495
7496 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7497
7498         * NEWS:
7499         * RELEASE:
7500         * configure.ac:
7501           releasing 0.8.1, "Snow Brigade"
7502
7503 2004-04-14  David Schleef  <ds@schleef.org>
7504
7505         * testsuite/Makefile.am: define tests_ignore
7506         * testsuite/Rules: Added new tests_ignore, which get compiled,
7507         but not run (generally because they're inconsistent or have
7508         heisenbugs).  Now we can ensure all the .c files compile in
7509         testsuite/.
7510         * testsuite/bins/Makefile.am: define tests_ignore
7511         * testsuite/bytestream/Makefile.am:
7512         * testsuite/caps/Makefile.am:
7513         * testsuite/clock/Makefile.am:
7514         * testsuite/debug/Makefile.am:
7515         * testsuite/debug/global.c: (gst_debug_log_one),
7516         (gst_debug_log_two): Fix compilation problem.
7517         * testsuite/dynparams/Makefile.am:
7518         * testsuite/elements/Makefile.am:
7519         * testsuite/ghostpads/Makefile.am:
7520         * testsuite/indexers/Makefile.am:
7521         * testsuite/parse/Makefile.am:
7522         * testsuite/plugin/Makefile.am:
7523         * testsuite/refcounting/Makefile.am:
7524         * testsuite/refcounting/element_pad.c: (main): Don't return leak
7525         results, because it's not calculated correctly.
7526         * testsuite/refcounting/pad.c: (main): same
7527         * testsuite/states/Makefile.am:
7528         * testsuite/tags/Makefile.am:
7529         * testsuite/threads/Makefile.am:
7530
7531 2004-04-14  David Schleef  <ds@schleef.org>
7532
7533         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
7534         generating bad code around the cpu detection asm code.
7535
7536 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7537
7538         * tools/gst-inspect.c: (print_element_info):
7539           print numeric version of rank as well, since we added some - 1
7540           rank values to elements
7541
7542 2004-04-13  David Schleef  <ds@schleef.org>
7543
7544         * configure.ac:  Disable various code when compiling for MinGW.
7545         * gst/elements/Makefile.am:
7546         * gst/elements/gstelements.c:
7547         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7548         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7549         * gst/registries/gstxmlregistry.c: (make_dir):
7550
7551 2004-04-13  David Schleef  <ds@schleef.org>
7552
7553         * gst/Makefile.am:
7554         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7555         assembly.
7556         * gst/gstcpuid_i386.s: remove
7557
7558 2004-04-13  David Schleef  <ds@schleef.org>
7559
7560         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
7561         seems to think it needs to be done.
7562         * docs/gst/tmpl/gstfakesink.sgml:
7563         * docs/gst/tmpl/gstfakesrc.sgml:
7564         * docs/gst/tmpl/gstfdsink.sgml:
7565         * docs/gst/tmpl/gstfdsrc.sgml:
7566         * docs/gst/tmpl/gstfilesink.sgml:
7567         * docs/gst/tmpl/gstfilesrc.sgml:
7568         * docs/gst/tmpl/gstidentity.sgml:
7569         * docs/gst/tmpl/gstmd5sink.sgml:
7570         * docs/gst/tmpl/gstmultifilesrc.sgml:
7571         * docs/gst/tmpl/gstpipefilter.sgml:
7572         * docs/gst/tmpl/gstshaper.sgml:
7573         * docs/gst/tmpl/gstspider.sgml:
7574         * docs/gst/tmpl/gstspideridentity.sgml:
7575         * docs/gst/tmpl/gststatistics.sgml:
7576         * docs/gst/tmpl/gsttee.sgml:
7577         * docs/gst/tmpl/gsttypefind.sgml:
7578         * docs/gst/tmpl/gstutils.sgml:
7579
7580 2004-04-13  David Schleef  <ds@schleef.org>
7581
7582         * configure.ac: Changes to remove POSIXisms (mmap in this case)
7583         and to build DLLs on Windows.
7584         * gst/Makefile.am:
7585         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7586         (gst_filesrc_open_file):
7587         * gst/schedulers/Makefile.am:
7588
7589 2004-04-13  David Schleef  <ds@schleef.org>
7590
7591         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
7592         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
7593         fixating lists.
7594
7595 2004-04-12  David Schleef  <ds@schleef.org>
7596
7597         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
7598         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
7599         to using it.
7600         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
7601         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
7602         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
7603         * gst/gststructure.c: (gst_structure_set_valist),
7604         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
7605         support for buffers.
7606         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
7607         intended to be const.
7608         * gst/gsttag.h: same
7609         * gst/gstvalue.c: (gst_value_serialize_buffer),
7610         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
7611         to (de)serialize buffers.
7612         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
7613         * testsuite/caps/string-conversions.c: (main):
7614         * testsuite/caps/value_serialize.c: add new test
7615
7616 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7617
7618         * docs/pwg/advanced-types.xml:
7619           Document MS video 1 (video/x-msvideocodec) mimetype/format.
7620
7621 2004-04-11  Benjamin Otte  <otte@gnome.org>
7622
7623         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7624           rename categories to basic_*
7625         * gst/schedulers/gstbasicscheduler.c: 
7626         (gst_basic_scheduler_chain_wrapper),
7627         (gst_basic_scheduler_chainhandler_proxy),
7628         (gst_basic_scheduler_gethandler_proxy),
7629         (gst_basic_scheduler_eventhandler_proxy):
7630           debugging category fixes - put common stuff in log category
7631         * gst/schedulers/gstbasicscheduler.c: 
7632         (gst_basic_scheduler_chain_elements):
7633           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
7634           active and linking two active chains
7635
7636 2004-04-10  Benjamin Otte  <otte@gnome.org>
7637
7638         * docs/pwg/intro-preface.xml:
7639           fix dead links and remove reference to Wiki
7640
7641 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7642
7643         * gst/schedulers/gstbasicscheduler.c:
7644           make sure we can switch back to the main function if we're still in
7645           the main function (supposed to fix #139617)
7646         * gst/schedulers/gthread-cothreads.h:
7647           don't throw an error when switching to the same cothread
7648
7649 2004-04-09  Benjamin Otte  <otte@gnome.org>
7650
7651         * gst/gstbin.c: (gst_bin_get_type):
7652         * gst/gstclock.c: (gst_clock_get_type):
7653         * gst/gstindex.c: (gst_index_get_type):
7654         * gst/gstobject.c: (gst_object_get_type),
7655         (gst_signal_object_get_type):
7656         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
7657         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
7658         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
7659         * gst/gstqueue.c: (gst_queue_get_type):
7660         * gst/gstregistry.c: (gst_registry_get_type):
7661         * gst/gstsystemclock.c: (gst_system_clock_get_type):
7662         * gst/gstthread.c: (gst_thread_get_type):
7663           don't use memchunks for these objects, use malloc instead
7664
7665 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7666
7667         * docs/gst/.cvsignore:
7668         * docs/gst/Makefile.am:
7669         * docs/gst/gstreamer-sections.txt:
7670         * docs/gst/tmpl/gstaggregator.sgml:
7671         * docs/gst/tmpl/gstbuffer.sgml:
7672         * docs/gst/tmpl/gstclock.sgml:
7673         * docs/gst/tmpl/gstelement.sgml:
7674         * docs/gst/tmpl/gstfakesink.sgml:
7675         * docs/gst/tmpl/gstfakesrc.sgml:
7676         * docs/gst/tmpl/gstfdsink.sgml:
7677         * docs/gst/tmpl/gstfdsrc.sgml:
7678         * docs/gst/tmpl/gstfilesink.sgml:
7679         * docs/gst/tmpl/gstfilesrc.sgml:
7680         * docs/gst/tmpl/gstidentity.sgml:
7681         * docs/gst/tmpl/gstindex.sgml:
7682         * docs/gst/tmpl/gstinfo.sgml:
7683         * docs/gst/tmpl/gstmd5sink.sgml:
7684         * docs/gst/tmpl/gstmultifilesrc.sgml:
7685         * docs/gst/tmpl/gstpad.sgml:
7686         * docs/gst/tmpl/gstpipefilter.sgml:
7687         * docs/gst/tmpl/gstpipeline.sgml:
7688         * docs/gst/tmpl/gstpluginfeature.sgml:
7689         * docs/gst/tmpl/gstqueue.sgml:
7690         * docs/gst/tmpl/gstregistry.sgml:
7691         * docs/gst/tmpl/gstscheduler.sgml:
7692         * docs/gst/tmpl/gstshaper.sgml:
7693         * docs/gst/tmpl/gstspider.sgml:
7694         * docs/gst/tmpl/gstspideridentity.sgml:
7695         * docs/gst/tmpl/gststatistics.sgml:
7696         * docs/gst/tmpl/gstsystemclock.sgml:
7697         * docs/gst/tmpl/gsttee.sgml:
7698         * docs/gst/tmpl/gstthread.sgml:
7699         * docs/gst/tmpl/gsttypefind.sgml:
7700         * docs/gst/tmpl/gstutils.sgml:
7701           further doc build fixes
7702
7703 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7704
7705         * docs/gst/Makefile.am:
7706           make docs exit on scanning problems
7707           fix nonsrcdir build issues
7708         * docs/gst/gstreamer-sections.txt:
7709           adding stuff from -unused
7710         * gst/gstqueue.h:
7711           create GstQueueSize
7712         * gst/schedulers/cothreads_compat.h:
7713           fix cothread warnings
7714
7715 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7716
7717         * docs/gst/gstreamer-sections.txt:
7718           remove defines deprecated by Benjamin
7719
7720 2004-04-07  Benjamin Otte  <otte@gnome.org>
7721
7722         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7723           when the buffer is complete, don't check if other buffers are needed
7724         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
7725           check that the offset is >0 so we don't try to read before the
7726           beginning of the file
7727         * gst/gstpad.c: (gst_pad_set_pad_template):
7728           sink the template, so we don't end up with 130k pad templates
7729
7730 2004-04-06  Benjamin Otte  <otte@gnome.org>
7731
7732         * gst/autoplug/gstspider.c: (gst_spider_link_add):
7733           don't ref the element, adding already reffed it. And we didn't unref
7734           it later anyway... (huge memleak when you used many spider elements)
7735         * gst/gstelement.c: (gst_element_base_class_finalize):
7736         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
7737         (gst_element_register):
7738         * gst/gsturi.c: (gst_element_make_from_uri):
7739           use gst_object_(un)ref instead of g_object(un)ref
7740
7741 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7742
7743         * gst/gstbuffer.h:
7744           remove macro that wouldn't work anymore because struct member has
7745           been removed.
7746         * gst/schedulers/entryscheduler.c: (schedule_forward):
7747           fix segfault for unconnected pads
7748         
7749 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7750
7751         reviewed by David Schleef <ds@schleef.org>
7752
7753         * gst/gstinfo.h:
7754           *_FORMAT modifiers should require putting a % in front of them for
7755           consistency reasons.
7756
7757 2004-04-05  Colin Walters  <walters@redhat.com>
7758
7759         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
7760         space.
7761
7762 2004-04-05  Benjamin Otte  <otte@gnome.org>
7763
7764         * configure.ac:
7765         * gst/Makefile.am:
7766         * gst/gst_private.h:
7767         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
7768           add support for detecting if GStreamer runs inside valgrind.
7769           requires valgrind (d'oh) and --enable-debug for correct cdetection.
7770           print a big message in valgrind that GStreamer has detected it's
7771           running inside and might now use different code.
7772         * gst/gstmemchunk.c: (populate), (free_area),
7773         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
7774         (gst_mem_chunk_free):
7775           flag memchunks for valgrind, so it can detect leaking of chunks.
7776           This allows detecting leaks of GstBuffer and GstEvent correctly
7777           inside valgrind.
7778
7779 2004-04-05  David Schleef  <ds@schleef.org>
7780
7781         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
7782           jensgr@gmx.net (Jens Granseuer)
7783
7784 2004-04-05  David Schleef  <ds@schleef.org>
7785
7786         * gst/gstbuffer.c: (_gst_buffer_sub_free),
7787         (gst_buffer_default_free), (gst_buffer_default_copy),
7788         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
7789         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
7790         structures in one place.
7791
7792 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7793
7794         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
7795           (GST_TIME_FORMAT, GST_TIME_ARGS)
7796
7797 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7798
7799         * testsuite/elements/Makefile.am:
7800           disable test until it stops breaking make distcheck
7801
7802 2004-04-05  Johan Dahlin  <johan@gnome.org>
7803
7804         * po/sv.po: Updated translation
7805
7806 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7807
7808         * gst/gstplugin.c: (gst_plugin_load_file):
7809           fix segfault for when original plugin was loaded statically
7810
7811 2004-04-05  Benjamin Otte  <otte@gnome.org>
7812
7813         * testsuite/debug/category.c: (main):
7814         * testsuite/debug/commandline.c: (main):
7815         * testsuite/debug/output.c: (main):
7816           fix tests to work again with debugging enabled
7817
7818 2004-04-05  Benjamin Otte  <otte@gnome.org>
7819
7820         * gst/schedulers/gstbasicscheduler.c:
7821         (gst_basic_scheduler_pad_link):
7822           fix to work with recent scheduling changes
7823
7824 2004-04-05  Benjamin Otte  <otte@gnome.org>
7825
7826         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
7827         prepareChangeLog doesn't work when cvs indents):
7828           don't throw an error when no element can be scheduled, there's too
7829           many weird reasons why it doesn't work. Return STOPPED instead.
7830           decoupled elemts' schedulability doesn't depend on bufpens.
7831
7832 2004-04-04  Benjamin Otte  <otte@gnome.org>
7833
7834         * gst/schedulers/gstbasicscheduler.c:
7835         (gst_basic_scheduler_pad_select):
7836           fix uninitialized variable warnings
7837
7838 2004-04-04  Benjamin Otte  <otte@gnome.org>
7839
7840         * gst/gstpad.c: (gst_pad_collect_valist):
7841           fix uninitialized variable warning
7842         * gst/schedulers/entryscheduler.c: (schedule_forward):
7843           fix shadowed variable
7844
7845 2004-04-04  Benjamin Otte  <otte@gnome.org>
7846
7847         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
7848         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
7849         (gst_pad_select):
7850         * gst/gstpad.h:
7851         * gst/gstscheduler.c: (gst_scheduler_pad_select),
7852         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
7853         * gst/gstscheduler.h:
7854           implement gst_pad_collect as replacement for gst_pad_select.
7855           deprecate gst_pad_select and gst_scheduler_(un)lock_element
7856           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
7857           new pad_select, lock and unlock calls.
7858         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
7859         * gst/cothreads.h:
7860         * gst/schedulers/cothreads_compat.h:
7861         * gst/schedulers/gthread-cothreads.h:
7862           remove unused cothread_lock and cothread_unlock calls
7863         * gst/schedulers/entryscheduler.c:
7864         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
7865         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
7866         (gst_entry_scheduler_pad_select):
7867           update to new API
7868         * gst/schedulers/gstbasicscheduler.c:
7869         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
7870         (gst_basic_scheduler_pad_select):
7871           remove useless lock and unlock calls, update pad_select to new API
7872           (untested)
7873         * gst/schedulers/gstoptimalscheduler.c:
7874         (gst_opt_scheduler_class_init):
7875           remove useless select, lock and unlock function calls
7876         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
7877           use gst_pad_collect instead of gst_pad_select
7878
7879 2004-04-04  Benjamin Otte  <otte@gnome.org>
7880
7881         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
7882         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
7883         (schedule_next_element), (print_entry):
7884           add can_schedule_pad to handle element states.
7885           add schedule_forward to select the correct entry to schedule next
7886
7887 2004-04-03  Benjamin Otte  <otte@gnome.org>
7888
7889         * gst/schedulers/entryscheduler.c: 
7890           remove unused variable, fix error inside Rb, fix compile warning in
7891           unreachable code
7892
7893 2004-04-03  Benjamin Otte  <otte@gnome.org>
7894
7895         * gst/schedulers/entryscheduler.c:
7896           completely revamp the inner workings, so it's a lot easier to
7897           understand and extend
7898
7899 2004-04-03  Andy Wingo  <wingo@pobox.com>
7900
7901         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
7902         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
7903         This allows better introspection of pipeline topology.
7904         (add_to_chain): Don't do trickery to put loop elements first;
7905         rather, queue a chain sort by marking the chain as dirty.
7906         (remove_from_chain): Mark the chain dirty.
7907         (sort_chain): New function. Sorts the group list so that terminal
7908         sinks are first. This means elements on the sink side will be
7909         preferentially sscheduled before elements on the src side of the
7910         pipeline.
7911         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
7912         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
7913         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
7914         (group_inc_link): Change argument and variable names to match the
7915         new link structure member names (src and sink).
7916         (group_dec_link): Add some description
7917
7918 2004-04-03  Benjamin Otte  <otte@gnome.org>
7919
7920         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
7921         * gst/gstinfo.h:
7922         * testsuite/debug/category.c: (main):
7923         * testsuite/debug/commandline.c: (main):
7924         * testsuite/debug/output.c: (main):
7925         * testsuite/debug/printf_extension.c: (main):
7926           fix to successfully build and test with --disable-gst-debug
7927           configure switch (fixes #138705)
7928
7929 2004-04-03  Benjamin Otte  <otte@gnome.org>
7930
7931         * docs/pwg/building-boiler.xml:
7932           add cvs login line and s/anonymous/anoncvs/
7933
7934 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
7935
7936         reviewed by Benjamin Otte  <otte@gnome.org>
7937
7938         * gst/gststructure.c: (gst_structure_free):
7939           memleak fix: free fields array (partial fix for #134839)
7940
7941 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7942
7943         * docs/random/ds/0.9-suggested-changes:
7944           Add a note to change handoff use in fakesrc to be usable in
7945           a more generic way (fakesrc should be renamed to appsrc or so).
7946         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7947           Change signal type to scope, so we can fill the buffer in the
7948           handoff handler (that's the whole use of this signal...).
7949
7950 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7951
7952         * docs/pwg/other-ntoone.xml:
7953           Document muxers and n-to-1 elements.
7954
7955 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
7956
7957         * gst/registries/gstxmlregistry.c
7958         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
7959         determine if a file is a G_MODULE. The old one discards paths
7960         containing "so" somewhere in the middle. My home directory is
7961         called "soto". Go figure...
7962
7963 2004-03-31  David Schleef  <ds@schleef.org>
7964
7965         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
7966         to eventually deprecate gst_buffer_merge().  (bug: #136408)
7967         * gst/gstbuffer.h:
7968
7969 2004-03-31  David Schleef  <ds@schleef.org>
7970
7971         * gst/gstvalue.c: (gst_value_union_int_int_range),
7972         (gst_value_union_int_range_int_range), (gst_value_can_union),
7973         (gst_value_union), (_gst_value_initialize):  Add some union
7974         implementations.  We didn't have any previously.
7975         * testsuite/caps/Makefile.am:
7976         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
7977         (gst_audioscale_getcaps), (test_caps), (main): A little test
7978         that is the same as the caps manipulation in audioscale.
7979
7980 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7981
7982         * docs/faq/general.xml:
7983           add entry about "does gst support format X?"
7984
7985 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7986
7987         * gst/gstthread.c:
7988           fix docs
7989         * gst/gstutils.h:
7990           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
7991
7992 2004-03-30  Benjamin Otte  <otte@gnome.org>
7993
7994         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7995           set the offset of the buffer to the requested offset
7996         * gst/elements/gsttypefind.c: (stop_typefinding):
7997           revert patch 1.18 (which I unfortunately don't know the reason for).
7998           This is needed to allow downstream elements to seek. Otherwise
7999           typefind might overwrite a previous seek by downstream elements.
8000           This lead to errors with id3tag and typefind on some mp3s.
8001         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8002         (gst_entry_scheduler_iterate):
8003           be more verbose when debugging
8004
8005 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8006
8007         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8008           make sure we don't get NULL strings
8009
8010 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8011
8012         * gst/gstcaps.c:
8013         * gst/gstelement.c:
8014         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8015         * gst/gstindex.c: (gst_index_resolver_get_type),
8016         (gst_index_get_type), (gst_index_factory_get_type):
8017         * gst/gstinfo.c:
8018         * gst/gstpad.c:
8019         * gst/gstplugin.c:
8020         * gst/gsturi.c: (gst_uri_handler_get_type):
8021         * gst/gstvalue.c:
8022           first batch of documentation fixes
8023
8024 2004-03-29  David Schleef  <ds@schleef.org>
8025
8026         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8027         * docs/gst/gstreamer-docs.sgml:  More hacking
8028         * docs/gst/gstreamer-sections.txt:
8029         * docs/gst/tmpl/cothreads_compat.sgml:
8030         * docs/gst/tmpl/gstcaps.sgml:
8031         * docs/gst/tmpl/gstclock.sgml:
8032         * docs/gst/tmpl/gstelement.sgml:
8033         * docs/gst/tmpl/gstevent.sgml:
8034         * docs/gst/tmpl/gstpad.sgml:
8035         * docs/gst/tmpl/gstutils.sgml:
8036         * docs/gst/tmpl/gstxml.sgml:
8037         * docs/gst/tmpl/gthread-cothreads.sgml:
8038         * docs/random/ds/0.9-suggested-changes:
8039         * gst/elements/gstfakesink.h: doc fixes
8040         * gst/elements/gstfakesrc.h: doc fixes
8041         * gst/gstcaps.c: doc fixes
8042         * gst/gstcaps.h: doc fixes
8043         * gst/gstelement.c: doc fixes
8044         * gst/gstelement.h: doc fixes
8045         * gst/gstindex.c: doc fixes
8046         * gst/gstinfo.c: doc fixes
8047         * gst/gstpad.c: doc fixes
8048         * gst/gstpad.h: doc fixes
8049         * gst/gstplugin.c: doc fixes
8050         * gst/gsttypefind.h: doc fixes
8051         * gst/gsturi.c: doc fixes
8052         * gst/gstvalue.c: doc fixes
8053
8054 2004-03-29  Colin Walters  <walters@redhat.com>
8055
8056         * gst/registries/gstxmlregistry.c (get_time)
8057         (plugin_times_older_than_recurse):
8058         Use the result of stat to determine whether a path is a file,
8059         so we don't attempt to opendir() files.
8060
8061 2004-03-29  Benjamin Otte  <otte@gnome.org>
8062
8063         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8064           print caps in debugging output when setting caps failed
8065         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8066         (schedule_next_element), (get_buffer), (run_chainhandler),
8067         (element_may_start), (gst_entry_scheduler_chain_handler),
8068         (gst_entry_scheduler_get_handler),
8069         (gst_entry_scheduler_state_transition),
8070         (gst_entry_scheduler_pad_link):
8071           make this scheduler a testcase for mandatory
8072           discont-before-first-buffer which is needed if we want to allow apps
8073           to release the sound device.
8074           add SCHED_ASSERT macro to print scheduler state before an assertion
8075           triggers.
8076
8077 2004-03-29  Benjamin Otte  <otte@gnome.org>
8078
8079         * COPYING:
8080           replace by LGPL (former COPYING.LIB). The core is completely
8081           licensed LGPL.
8082         * COPYING.LIB:
8083           remove
8084
8085 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8086
8087         * po/af.po:
8088         * po/sv.po:
8089           updated Afrikaans and Swedish
8090
8091 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8092
8093         * po/LINGUAS:
8094         * po/az.po:
8095           adding Azerbaijani (Mətin Əmirov)
8096
8097 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8098
8099         * gst/gstelement.h: 
8100         * gst/gstelement.c (gst_element_set_time_delay): New function for
8101         setting element time taking into account a hardware buffering
8102         delay.
8103         (gst_element_set_time): Now just an invocation of
8104         gst_element_set_time_delay.
8105         * gst/gstclock.h: 
8106         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8107         allowing to set event times in the future.
8108         (gst_clock_get_event_time): Now just an invocation of
8109         gst_clock_get_event_time_delay.
8110
8111 2004-03-28  Benjamin Otte  <otte@gnome.org>
8112
8113         * gst/gstbin.c: (gst_bin_set_element_sched),
8114         (gst_bin_unset_element_sched):
8115           don't add decoupled elements to schedulers - otherwise it's
8116           impossible to control if a link to a decoupled element was already
8117           removed from a scheduler or not.
8118         * gst/schedulers/cothreads_compat.h:
8119         * gst/schedulers/gthread-cothreads.h:
8120           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8121           is no "unused" warning.
8122         * gst/schedulers/Makefile.am:
8123         * gst/schedulers/entryscheduler.c:
8124           add new scheduler, based on ideas from talking to David and Martin.
8125           It's supposed to be small and correct. Currently it's also slow (but
8126           it's not noticable)
8127         * examples/retag/retag.c: (main):
8128         * testsuite/bytestream/test1.c: (main):
8129           fix missing NULLs at end of variadic functions
8130         * testsuite/elements/.cvsignore:
8131           update
8132
8133 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8134
8135         * gst/gstevent.h:
8136         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8137
8138 2004-03-25  David Schleef  <ds@schleef.org>
8139
8140         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8141         * docs/gst/tmpl/gstaggregator.sgml:
8142         * docs/gst/tmpl/gstautoplugfactory.sgml:
8143         * docs/gst/tmpl/gstbin.sgml:
8144         * docs/gst/tmpl/gstbuffer.sgml:
8145         * docs/gst/tmpl/gstbufferstore.sgml:
8146         * docs/gst/tmpl/gstfakesink.sgml:
8147         * docs/gst/tmpl/gstfakesrc.sgml:
8148         * docs/gst/tmpl/gstmd5sink.sgml:
8149         * docs/gst/tmpl/gstreamer-unused.sgml:
8150         * docs/gst/tmpl/gstsearchfuncs.sgml:
8151         * docs/gst/tmpl/gstshaper.sgml:
8152         * docs/gst/tmpl/gstspider.sgml:
8153         * docs/gst/tmpl/gsttee.sgml:
8154         * docs/gst/tmpl/gstutils.sgml:
8155         * docs/gst/tmpl/gstvalue.sgml:
8156         * docs/gst/tmpl/gstxml.sgml:
8157         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8158         and we don't support it.
8159         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8160         (gst_use_threads), (gst_has_threads): same
8161         * gst/gstthreaddummy.c: same
8162         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8163         * gst/autoplug/gstspider.h: same
8164         * gst/elements/gstaggregator.h: Remove bogus function from header
8165         * gst/elements/gstfakesink.h: same
8166         * gst/elements/gstfakesrc.h: same
8167         * gst/elements/gstmd5sink.h: same
8168         * gst/elements/gstshaper.h: same
8169         * gst/elements/gsttee.h: same
8170         * gst/gstbin.c: doc fixes
8171         * gst/gstbin.h: Remove unused definition.
8172         * gst/gstbuffer.c: doc fixes
8173         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8174         * gst/gstfilter.c: doc fixes
8175         * gst/gsttag.c: doc fixes
8176         * gst/gstvalue.c: doc fixes
8177
8178 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8179
8180         * docs/pwg/advanced-types.xml:
8181           Document typefinding.
8182         * docs/pwg/other-oneton.xml:
8183           Document one-to-n elements, demuxers and parsers.
8184
8185 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8186
8187         reviewed by: David Schleef  <ds@schleef.org>
8188
8189         * configure.ac: Check bison version (bug #127838)
8190
8191 2004-03-25  David Schleef  <ds@schleef.org>
8192
8193         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8194         * docs/gst/gstreamer-sections.txt:
8195         * docs/gst/tmpl/gstautoplug.sgml:
8196         * docs/gst/tmpl/gststaticautoplug.sgml:
8197         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8198         * docs/gst/tmpl/gstutils.sgml:
8199         * docs/gst/tmpl/gstxml.sgml:
8200
8201 2004-03-24  David Schleef  <ds@schleef.org>
8202
8203         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8204         manual being such complete crap, that I decided to do major
8205         hacking of it.  This checkin replaces any fine tuning that
8206         may have been done previously, with the benefit of actually
8207         being complete for much of the API that was changed since
8208         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8209         * docs/gst/gstreamer-sections.txt:
8210         * docs/gst/tmpl/GstBin.sgml:
8211         * docs/gst/tmpl/GstBuffer.sgml:
8212         * docs/gst/tmpl/GstCaps.sgml:
8213         * docs/gst/tmpl/GstClock.sgml:
8214         * docs/gst/tmpl/GstCompat.sgml:
8215         * docs/gst/tmpl/GstData.sgml:
8216         * docs/gst/tmpl/GstElement.sgml:
8217         * docs/gst/tmpl/GstEvent.sgml:
8218         * docs/gst/tmpl/GstIndex.sgml:
8219         * docs/gst/tmpl/GstStructure.sgml:
8220         * docs/gst/tmpl/GstTag.sgml:
8221         * docs/gst/tmpl/cothreads.sgml:
8222         * docs/gst/tmpl/cothreads_compat.sgml:
8223         * docs/gst/tmpl/gettext.sgml:
8224         * docs/gst/tmpl/grammar.tab.sgml:
8225         * docs/gst/tmpl/gst-i18n-app.sgml:
8226         * docs/gst/tmpl/gst-i18n-lib.sgml:
8227         * docs/gst/tmpl/gst.sgml:
8228         * docs/gst/tmpl/gst_private.sgml:
8229         * docs/gst/tmpl/gstaggregator.sgml:
8230         * docs/gst/tmpl/gstarch.sgml:
8231         * docs/gst/tmpl/gstatomic.sgml:
8232         * docs/gst/tmpl/gstatomic_impl.sgml:
8233         * docs/gst/tmpl/gstbin.sgml:
8234         * docs/gst/tmpl/gstbuffer.sgml:
8235         * docs/gst/tmpl/gstbufferstore.sgml:
8236         * docs/gst/tmpl/gstcaps.sgml:
8237         * docs/gst/tmpl/gstclock.sgml:
8238         * docs/gst/tmpl/gstcompat.sgml:
8239         * docs/gst/tmpl/gstconfig.sgml:
8240         * docs/gst/tmpl/gstcpu.sgml:
8241         * docs/gst/tmpl/gstdata.sgml:
8242         * docs/gst/tmpl/gstdata_private.sgml:
8243         * docs/gst/tmpl/gstelement.sgml:
8244         * docs/gst/tmpl/gstenumtypes.sgml:
8245         * docs/gst/tmpl/gsterror.sgml:
8246         * docs/gst/tmpl/gstevent.sgml:
8247         * docs/gst/tmpl/gstfakesink.sgml:
8248         * docs/gst/tmpl/gstfakesrc.sgml:
8249         * docs/gst/tmpl/gstfilesink.sgml:
8250         * docs/gst/tmpl/gstfilter.sgml:
8251         * docs/gst/tmpl/gstindex.sgml:
8252         * docs/gst/tmpl/gstinfo.sgml:
8253         * docs/gst/tmpl/gstinterface.sgml:
8254         * docs/gst/tmpl/gstlog.sgml:
8255         * docs/gst/tmpl/gstmacros.sgml:
8256         * docs/gst/tmpl/gstmarshal.sgml:
8257         * docs/gst/tmpl/gstmd5sink.sgml:
8258         * docs/gst/tmpl/gstmultifilesrc.sgml:
8259         * docs/gst/tmpl/gstobject.sgml:
8260         * docs/gst/tmpl/gstpad.sgml:
8261         * docs/gst/tmpl/gstparse.sgml:
8262         * docs/gst/tmpl/gstpipeline.sgml:
8263         * docs/gst/tmpl/gstplugin.sgml:
8264         * docs/gst/tmpl/gstpluginfeature.sgml:
8265         * docs/gst/tmpl/gstqueue.sgml:
8266         * docs/gst/tmpl/gstreamer-unused.sgml:
8267         * docs/gst/tmpl/gstregistry.sgml:
8268         * docs/gst/tmpl/gstregistrypool.sgml:
8269         * docs/gst/tmpl/gstscheduler.sgml:
8270         * docs/gst/tmpl/gstsearchfuncs.sgml:
8271         * docs/gst/tmpl/gstshaper.sgml:
8272         * docs/gst/tmpl/gstspider.sgml:
8273         * docs/gst/tmpl/gstspideridentity.sgml:
8274         * docs/gst/tmpl/gststructure.sgml:
8275         * docs/gst/tmpl/gstsystemclock.sgml:
8276         * docs/gst/tmpl/gsttag.sgml:
8277         * docs/gst/tmpl/gsttaginterface.sgml:
8278         * docs/gst/tmpl/gsttee.sgml:
8279         * docs/gst/tmpl/gstthread.sgml:
8280         * docs/gst/tmpl/gsttrace.sgml:
8281         * docs/gst/tmpl/gsttrashstack.sgml:
8282         * docs/gst/tmpl/gsttypefind.sgml:
8283         * docs/gst/tmpl/gsttypes.sgml:
8284         * docs/gst/tmpl/gsturi.sgml:
8285         * docs/gst/tmpl/gsturitype.sgml:
8286         * docs/gst/tmpl/gstutils.sgml:
8287         * docs/gst/tmpl/gstvalue.sgml:
8288         * docs/gst/tmpl/gstversion.sgml:
8289         * docs/gst/tmpl/gstxml.sgml:
8290         * docs/gst/tmpl/gstxmlregistry.sgml:
8291         * docs/gst/tmpl/gthread-cothreads.sgml:
8292         * docs/gst/tmpl/types.sgml:
8293
8294 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8295
8296         * docs/pwg/other-sink.xml:
8297         * docs/pwg/other-source.xml:
8298           Documentation on how to write source and sink elements. Other
8299           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8300           manager, autoplugger) are all still pending.
8301
8302 2004-03-25  Benjamin Otte  <otte@gnome.org>
8303
8304         * testsuite/elements/Makefile.am:
8305         * testsuite/elements/gst-compprep-check:
8306           add check to make sure gst-compprep works
8307         * testsuite/elements/gst-inspect-check.in:
8308           improve initialization output
8309         * testsuite/Makefile.am:
8310         * testsuite/gst-inspect-check:
8311           remove old file
8312
8313 2004-03-24  David Schleef  <ds@schleef.org>
8314
8315         * testsuite/elements/Makefile.am:
8316         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8317         to the testsuite.
8318
8319 2004-03-24  Benjamin Otte  <otte@gnome.org>
8320
8321         * libs/gst/control/dparam.c: (gst_dparam_attach),
8322         (gst_dparam_detach):
8323         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8324           fix lvalue casts for real
8325
8326 2004-03-24  Benjamin Otte  <otte@gnome.org>
8327
8328         * gst/schedulers/gstbasicscheduler.c:
8329         (gst_basic_scheduler_src_wrapper):
8330         * gst/schedulers/gstoptimalscheduler.c:
8331         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8332         (pad_clear_queued), (gst_opt_scheduler_add_element),
8333         (gst_opt_scheduler_remove_element):
8334           fix GStreamer to not have issues with lvalue casts anymore (fixes
8335           #136841)
8336
8337 2004-03-24  Benjamin Otte  <otte@gnome.org>
8338
8339         * gst/gstelement.c:
8340           add documentation about a gobject quirk where the object hasn't the
8341           correct class pointer set on initialization
8342         * gst/schedulers/gstbasicscheduler.c:
8343         (gst_basic_scheduler_src_wrapper):
8344           make sure to not run into an infinite loop
8345
8346 2004-03-22  Benjamin Otte  <otte@gnome.org>
8347
8348         * gst/gstutils.c: (gst_util_dump_mem):
8349         * gst/gstutils.h:
8350           first argument of gst_util_dump_mem should be const
8351
8352 2004-03-22  Johan Dahlin  <johan@gnome.org>
8353
8354         * gst/gstvalue.h: Clean up a little bit.
8355
8356 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8357
8358         reviewed by Benjamin Otte  <otte@gnome.org>
8359
8360         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8361         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8362         (gst_aggregator_class_init), (gst_aggregator_init):
8363         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8364         (gst_filesrc_dispose), (gst_filesrc_set_location):
8365         * gst/elements/gstidentity.c: (gst_identity_finalize),
8366         (gst_identity_class_init), (gst_identity_chain):
8367         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8368         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8369         (gst_statistics_class_init):
8370         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8371         (gst_tee_get_property):
8372           clean up used memory in this elements correctly on teardown (closes
8373           #137279)
8374
8375 2004-03-20  Colin Walters  <walters@redhat.com>
8376
8377         * gst/registries/gstxmlregistry.c:
8378         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8379         registry saving atomic.
8380
8381 2004-03-20  Colin Walters  <walters@redhat.com>
8382
8383         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8384         Just use
8385         access() instead of actually creating and deleting files.
8386
8387 2004-03-18  David Schleef  <ds@schleef.org>
8388
8389         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8390         (bug #137625)
8391
8392 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8393
8394         * po/sv.po: updated translation (Christian Rose)
8395
8396 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8397
8398         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8399         (gst_filesink_get_query_types), (_do_init),
8400         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8401           return FALSE silently
8402         * po/af.po: updated translation (Petri Jooste)
8403
8404 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8405
8406         * Makefile.am:
8407         * configure.ac:
8408           dist common properly
8409         * po/af.po:
8410         * po/fr.po:
8411         * po/nl.po:
8412         * po/sr.po:
8413         * po/sv.po:
8414           refreshing translations
8415
8416 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8417
8418         * po/LINGUAS:
8419         * po/sv.po:
8420         * po/af.po:
8421           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8422
8423 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8424
8425         * Makefile.am: use common/release.mak
8426
8427 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8428
8429         * docs/faq/gst-uninstalled:
8430           adding gst-monkeysaudio to the list of possible plugin dirs
8431
8432 2004-03-16  David Schleef  <ds@schleef.org>
8433
8434         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8435         (gst_init_check_with_popt_table):  Fix some gettext strings to
8436         make them easier to translate.  Required making the strings
8437         non-const.
8438
8439 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8440
8441         * configure.ac: bump nano to 1
8442
8443 === release 0.8.0 ===
8444
8445 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8446
8447         * configure.ac: release 0.8.0, "Executive Slacks"
8448
8449 2004-03-16  Johan Dahlin  <johan@gnome.org>
8450
8451         * gst/schedulers/gstoptimalscheduler.c
8452         (gst_opt_scheduler_pad_unlink): Remove double ;,
8453         spotted by Scott Wheeler
8454
8455 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8456
8457         * configure.ac: bump libtool version
8458
8459 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8460
8461         * gst/gstcaps.h:
8462         * gst/gststructure.h:
8463           add reserved padding
8464
8465 2004-03-15  Benjamin Otte  <otte@gnome.org>
8466
8467         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8468           set the first parameter for select call correctly.
8469           (fixes #137230)
8470
8471 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8472
8473         * *.c,*.h: don't mix tabs and spaces
8474
8475 2004-03-15  Johan Dahlin  <johan@gnome.org>
8476
8477         * gst/schedulers/gstoptimalscheduler.c
8478         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8479         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8480
8481         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8482         
8483 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8484
8485         * testsuite/Rules:
8486           fix gst-register rules
8487
8488 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8489
8490         * testsuite/Rules:
8491           use versioned gst-register
8492
8493 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8494
8495         * docs/libs/gstreamer-libs-sections.txt:
8496           remove </SUBSECTION>
8497         * gst/gstplugin.c:
8498         * gst/gstregistry.c: (gst_registry_add_plugin):
8499         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8500         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8501           add debugging and fix some comment blocks
8502
8503 2004-03-15  Johan Dahlin  <johan@gnome.org>
8504
8505         * *.h: Revert indent changes.
8506         
8507 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8508
8509         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8510           g_error_free the g_error
8511         * tools/gst-feedback-m.m:
8512           check for other versions of gstreamer
8513         * tools/gst-indent:
8514           use sh, not bash
8515
8516 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8517
8518         * tools/gst-register.c: do not spill paths when registries are not
8519           writable, until we fix the "user running gst-register" case.
8520
8521 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8522
8523         * *.c, *.h: commit of gst-indent run on core
8524
8525 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8526
8527         * tools/gst-indent:
8528         * tools/Makefile.am:
8529           add our indentation style as a script
8530
8531 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8532
8533         * po/sr.po:
8534         * po/LINGUAS:
8535           added Serbian translation
8536
8537 2004-03-13  Benjamin Otte  <otte@gnome.org>
8538
8539         * gst/gstelement.c:
8540           add documentation note about gst_element_found_tags_for_pad not
8541           being usable in getfunctions. (see #137042)
8542
8543 2004-03-12  David Schleef  <ds@schleef.org>
8544
8545         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8546         change API right now!  Readd gst_caps_is_simple() macro.
8547         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8548         uninitialized variable.  I'd bet this caused crashes.
8549         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8550
8551 2004-03-12  Johan Dahlin  <johan@gnome.org>
8552
8553         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8554         * gst/gstcaps.h: Clean up
8555
8556         * gst/gst.c (init_post): call gst_caps_get_type() instead of
8557         _gst_caps_initalize()
8558
8559         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
8560         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
8561
8562         * gst/gststructure.c (gst_structure_get_type): Ditto
8563
8564         * gst/gststructure.h: Ditto
8565         
8566 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8567
8568         * gst/gstqueue.c: (gst_queue_init):
8569           Reset default max. values in queues. Reason is simply to avoid
8570           braindead use. If you want wider values, use the properties. The
8571           default is supposed to always work. Wider values would make this
8572           beast a memory hog by default (250 full-PAL RGB32 video frames?
8573           That's 440 MB! No thank you).
8574
8575 2004-03-10  David Schleef  <ds@schleef.org>
8576
8577         * tools/gst-run.c: (main):  Fix crash when no relevant tools
8578         were found.  (bug #136793)
8579
8580 2004-03-10  Johan Dahlin  <johan@gnome.org>
8581
8582         * gst/schedulers/gstoptimalscheduler.c
8583         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
8584         links to elements within the same group, so we can finally remove
8585         that annoying warning. Refactor the code a little bit
8586         (group_dec_links_for_element): Split out
8587
8588 2004-03-09  David Schleef  <ds@schleef.org>
8589
8590         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
8591         (bug #134863)
8592
8593 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8594
8595         * configure.ac: first bug fix due to major/minor bump
8596
8597 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8598
8599         * configure.ac: bump nano to 1
8600
8601 === release 0.7.6 ===
8602
8603 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8604
8605         * NEWS:
8606         * RELEASE:
8607         * configure.ac:
8608           releasing 0.7.6, "Almost"
8609         * po/fr.po:
8610         * po/nl.po:
8611         * tools/Makefile.am:
8612         * tools/gst-feedback-m.m:
8613           unversioned source
8614
8615 2004-03-09  Johan Dahlin  <johan@gnome.org>
8616
8617         Reviewed by: Thomas Vander Stichele
8618
8619         * gst/gstelement.c (gst_element_class_init): register second
8620         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
8621         language bindings can (de)marshall correctly.
8622
8623         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
8624
8625         * gst/gsterror.c (gst_g_error_get_type): New function
8626
8627         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
8628         with VOID:OBJECT,OBJECT,STRING 
8629
8630 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
8631
8632         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
8633         Free a leaked g_timer on early returns.
8634
8635 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8636
8637         * docs/pwg/advanced-types.xml:
8638           Add cinepak description.
8639
8640 2004-03-07  David Schleef  <ds@schleef.org>
8641
8642         * docs/random/mimetypes:  Added cinepak description
8643
8644 2004-03-07  Andy Wingo  <wingo@pobox.com>
8645
8646         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
8647
8648         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
8649         there are no links to other groups when a group is destroyed.
8650         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
8651         removed from a group, make sure the link count to elements linked
8652         to other pads is appropriately decremented. This really fixes
8653         #135672.
8654
8655         The 1.60->1.61 patch has been reapplied in light of this fix.
8656
8657         * gst/gstelement.c (gst_element_dispose): Really protect against
8658         multiple invocations this time.
8659
8660 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8661
8662         * docs/gst/gstreamer-sections.txt:
8663         * docs/gst/tmpl/gsttag.sgml:
8664           remove some deprecated functions, document some existing ones
8665         * gst/gsttag.c: (gst_tag_get_flag):
8666         * gst/gsttag.h:
8667           add accessor function
8668
8669 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8670
8671         * docs/gst/gstreamer-sections.txt:
8672         * docs/gst/tmpl/gsttag.sgml:
8673         * docs/gst/tmpl/gstxml.sgml:
8674         * gst/gsttag.c: (gst_tag_get_flag):
8675         * gst/gsttag.h:
8676
8677 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
8678
8679         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
8680         leak
8681
8682 2004-03-05  David Schleef  <ds@schleef.org>
8683
8684         * REQUIREMENTS: Add bison and flex.
8685         * configure.ac: Fix comment about bison.
8686         * docs/random/ds/0.9-suggested-changes: yer ma
8687         * tools/gst-inspect.c: (print_element_info):  Fix warning.
8688
8689 2004-03-05  Benjamin Otte  <otte@gnome.org>
8690
8691         * gst/gstelement.c: (gst_element_error_full):
8692           revert recent recursive state changing commit - messing with other
8693           elements' states is evil and should be done by apps only.
8694
8695 2004-03-05  Benjamin Otte  <otte@gnome.org>
8696
8697         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
8698           check for empty intersection instead of NULL caps
8699         (gst_element_get_compatible_pad_filtered):
8700           remove old workaround that is only a bug nowadays
8701
8702 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8703
8704         * gst/gstelement.c: (gst_element_error_full):
8705           make elements try to recursively change state to PAUSED on all
8706           parents after an error to suppress ensuing warnings
8707         * gst/parse/grammar.y:
8708           make it check if it was able to sync the state, and throw an error
8709           if not, so stuff like
8710           oggdemux ! vorbisdec ! osssink gets caught
8711
8712 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8713
8714         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
8715           it contains lib64; use AS_AC_EXPAND to handle it properly
8716
8717 2004-03-05  David Schleef  <ds@schleef.org>
8718
8719         * gst/gstcpuid_i386.s:  Remove unused code
8720         * libs/gst/getbits/getbits.c: (gst_getbits_init),
8721         (gst_getbits_newbuf): Remove MMX code
8722         * libs/gst/getbits/getbits.h: Remove MMX code
8723
8724 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
8725
8726         * debian/.cvsignore:
8727         * debian/README.Debian:
8728         * debian/changelog:
8729         * debian/control:
8730         * debian/control.in:
8731         * debian/copyright:
8732         * debian/gstreamer-core-libs-dev.files:
8733         * debian/gstreamer-core-libs.files:
8734         * debian/gstreamer-core.files:
8735         * debian/gstreamer-core.postinst:
8736         * debian/gstreamer-core.postrm:
8737         * debian/gstreamer-doc.files:
8738         * debian/gstreamer-doc.links:
8739         * debian/gstreamer-doc.lintian:
8740         * debian/gstreamer-runtime.files:
8741         * debian/gstreamer-runtime.manpages:
8742         * debian/gstreamer-runtime.postinst:
8743         * debian/gstreamer-runtime.postrm:
8744         * debian/gstreamer-tools.files:
8745         * debian/gstreamer-tools.manpages:
8746         * debian/libgstreamer-dev.files:
8747         * debian/libgstreamer0.4.1.files:
8748         * debian/libgstreamerVERSION.files:
8749         * debian/rules:
8750         Debian package info not maintained here.
8751
8752 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8753
8754         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8755         * gst/gstbin.c: (gst_bin_class_init):
8756         * gst/gstelement.c: (gst_element_class_init):
8757         * gst/gstindex.c: (gst_index_class_init):
8758         * gst/gstobject.c: (gst_object_class_init),
8759         (gst_signal_object_class_init):
8760         * gst/gstpad.c: (gst_pad_template_class_init):
8761         * gst/gstregistry.c: (gst_registry_class_init):
8762         * gst/gsturi.c: (gst_uri_handler_base_init):
8763         * gst/gstxml.c: (gst_xml_class_init):
8764         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8765         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
8766           make all signal names use dashes instead of underscore
8767
8768 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8769
8770         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
8771
8772 2004-03-03  Benjamin Otte  <otte@gnome.org>
8773
8774         * gst/schedulers/gstoptimalscheduler.c:
8775           revert last commit by Andy Wingo. It causes segfaults on unreffing
8776           in Rhythmbox. (see bug #135672)
8777
8778 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8779
8780         * po/fr.po: fix typo
8781
8782 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8783
8784         * tools/gst-inspect.c: (main): 
8785         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
8786
8787 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8788
8789         * configure.ac:
8790           get GLIB_ONLY and POPT flags for the nonversioned binaries
8791         * tools/Makefile.am:
8792           use them
8793
8794 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8795
8796         * gst/gst.c: (init_post):
8797           change so that GST_REGISTRY now is where the global registry gets
8798           saved, since that is where plugins now get attached to first, and
8799           spilled over to the user registry.  Note that in the case of using
8800           GST_REGISTRY env var, we don't want to affect any real registries
8801           beyond the one given by this var, and thus we don't set a user
8802           registry to spill to.  So make sure GST_REGISTRY is writable.
8803
8804 2004-03-01  David Schleef  <ds@schleef.org>
8805
8806         * AUTHORS:  Added some names.  Add yourself if you're missing.
8807
8808 2004-03-01  David Schleef  <ds@schleef.org>
8809
8810         * MAINTAINERS: Add
8811
8812 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
8813
8814         * configure.ac:
8815           remove whitespace
8816         * docs/gst/tmpl/gstbuffer.sgml:
8817         * docs/gst/tmpl/gstdata.sgml:
8818         * docs/gst/tmpl/gstreamer-unused.sgml:
8819         * docs/gst/tmpl/gstxml.sgml:
8820           doc update
8821         * docs/manuals.mak:
8822           add a FIXME
8823         * docs/pwg/intro-preface.xml:
8824         * docs/pwg/pwg.xml:
8825           remove GNOME
8826         * gst/gst.c: (init_post):
8827           try GST_PLUGIN_PATH paths for the _global_registry first
8828         * gst/gstelement.h:
8829           add the error message as well, otherwise (null) debug info doesn't
8830           make much sense
8831         * tools/gst-register.c: (main):
8832           spill paths to next registry if this registry is not writable
8833         * po/fr.po:
8834         * po/nl.po:
8835           translation updates
8836
8837 2004-03-01  Johan Dahlin  <johan@gnome.org>
8838
8839         * gst/gstbuffer.c (_gst_buffer_initialize): 
8840         * gst/gstdata.c (gst_data_get_type): 
8841         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
8842         instead of ref, since some applications that uses GBoxed
8843         routines depends on a function that actually returns a copy.
8844
8845 2004-02-27  Benjamin Otte  <otte@gnome.org>
8846
8847         * gst/gstbuffer.h:
8848           remove gst_buffer_free, use gst_data_unref
8849         * gst/gstdata.c: (gst_data_get_type):
8850           use refcounting in GstData GBoxed registration
8851         * gst/gstdata.h:
8852           remove gst_data_free, use gst_data_unref
8853
8854 2004-02-27  Johan Dahlin  <johan@gnome.org>
8855
8856         * gst/gstdata.c (gst_data_get_type): New function, register
8857         GstData as a GBoxed type.
8858
8859         * gst/gstdata.h (GST_TYPE_DATA): New macro
8860
8861 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
8862
8863         * Makefile.am:
8864         * gstreamer.spec.in:
8865           put back RELEASE
8866         * gst/Makefile.am:
8867           clean up non-disting of built files
8868         * testsuite/debug/commandline.c:
8869           test fix for option rename
8870
8871 2004-02-26  David Schleef  <ds@schleef.org>
8872
8873         * configure.ac:  We don't really need glib-2.3.  Also remove
8874         some unneeded checks for library functions.
8875         * gst/Makefile.am:  Instead, we need to not dist files created
8876         by glib-genmarshal.
8877
8878 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8879
8880         * configure.ac:
8881           bump glib required version to 2.3.0 for g_value_takes_boxed
8882
8883  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
8884
8885         * common/m4/gst-docs.m4
8886         change flavour text from enable to disable as enable is our default
8887         closes bug Bug 135304
8888
8889 === release 0.7.5 ===
8890  
8891  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8892  
8893         * NEWS:
8894           instate NEWS file
8895         * Makefile.am:
8896         * gstreamer.spec.in:
8897         * RELEASE:
8898           put back release
8899         * configure.ac:
8900         * docs/random/release:
8901           more updates
8902
8903 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8904
8905         * gst/gsttag.c: (_gst_tag_initialize):
8906         * po/fr.po:
8907         * po/nl.po:
8908           remove hyphen from codec tags
8909
8910 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8911
8912         * gst/parse/Makefile.am:
8913           fix dependency so that a make from a clean build works the first
8914           time
8915
8916 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8917
8918         * docs/random/release:
8919           update release strategy
8920         * po/fr.po:
8921           auto-update po file
8922         * po/nl.po:
8923           update dutch translation
8924
8925 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8926
8927         * docs/manual/debugging.xml:
8928         fix manual for new debugging system
8929
8930 2004-02-25  Andy Wingo  <wingo@pobox.com>
8931
8932         * gst/gstpad.c (gst_pad_link_prepare): Re-add
8933         gst_pad_link_prepare. Please email the list with specific reasons
8934         for reverting.
8935
8936 2004-02-24  Andy Wingo  <wingo@pobox.com>
8937
8938         * gst/gstelement.c (gst_element_dispose): Protect against multiple
8939         invocations.
8940
8941         * gst/schedulers/gstoptimalscheduler.c:
8942         I added a mess of prototypes at the top of the file by way of
8943         documentation. Some of the operations on chains and groups were
8944         re-organized.
8945
8946         (create_group): Added a type argument so if the group is enabled,
8947         the setup_group_scheduler knows what to do.
8948         (group_elements): Added a type argument here, too, to be passed on
8949         to create_group.
8950         (group_element_set_enabled): If an unlinked PLAYING element is
8951         added to a bin, we have to create a new group to hold the element,
8952         and this function will be called before the group is added to the
8953         chain. Thus we have a valid case for group->chain==NULL. Instead
8954         of calling chain_group_set_enabled, just set the flag on the group
8955         (the chain's status will be set when the group is added to it).
8956         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
8957         Setup the group scheduler when the group is enabled, not
8958         specifically when an element goes PAUSED->PLAYING. This means
8959         PLAYING elements can be added, linked, and scheduled into a
8960         PLAYING pipeline, as was intended.
8961         (add_to_group): Don't ref the group twice. I don't know when this
8962         double-ref got in here. Removing it has the potential to cause
8963         segfaults if other parts of the scheduler are buggy. If you find
8964         that the scheduler is segfaulting for you, put in an extra ref
8965         here and see if that hacks over the underlying issue. Of course,
8966         then find out what code is unreffing a group it doesn't own...
8967         (create_group): Make the extra refcount floating, and remove it
8968         after adding the element. This means that...
8969         (unref_group): Destroy when the refcount reaches 0, not 1, like
8970         every other refcounted object in the known universe.
8971         (remove_from_group): When a group becomes empty, set it to be not
8972         active, and remove it from its chain. Don't unref it again,
8973         there's no floating reference any more.
8974         (destroy_group): We have to remove the group from the chain in
8975         remove_from_group (rather than here) to break refcounting cycles
8976         (the chain always has a ref on the group). So assert that
8977         group->chain==NULL.
8978         (ref_group_by_count): Removed, it was commented out anyway.
8979         (merge_chains): Use the remove_from_chain and add_to_chain
8980         primitives to do the reparenting, instead of rolling our own
8981         implementation.
8982         (add_to_chain): The first non-disabled group in the chain's group
8983         list will be the entry point for the chain. Because buffers can
8984         accumulate in loop elements' peer bufpens, we preferentially
8985         schedule loop groups before get groups to avoid unnecessary
8986         execution of get-based groups when the bufpens are already full.
8987         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
8988         (get_group_schedule_function): Ditto.
8989         (loop_group_schedule_function): Ditto.
8990         (gst_opt_scheduler_loop_wrapper): Ditto.
8991         (gst_opt_scheduler_iterate): Ditto.
8992
8993         I understand the opt scheduler now, yippee!
8994
8995         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
8996         (gst_pad_get_name, gst_pad_set_chain_function) 
8997         (gst_pad_set_get_function, gst_pad_set_event_function) 
8998         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
8999         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9000         (gst_pad_set_query_function, gst_pad_get_query_types) 
9001         (gst_pad_get_query_types_default) 
9002         (gst_pad_set_internal_link_function) 
9003         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9004         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9005         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9006         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9007         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9008         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9009         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9010         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9011         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9012         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9013         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9014         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9015         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9016         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9017         argument checks, and some doc fixes.
9018
9019         (gst_pad_custom_new_from_template): Um, does anyone
9020         use these functions? Actually make a custom pad instead of a
9021         normal one.
9022         (gst_pad_try_set_caps): Transpose some checks.
9023         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9024         the pad is in negotiation.
9025         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9026         
9027         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9028
9029         * gst/gstelement.h: 
9030         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9031         on the list.
9032
9033 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9034
9035         * gst/gstbin.c: (gst_bin_add):
9036           add error for not being able to add elements
9037
9038 2004-02-22  Julien MOUTTE <julien@moutte.net>
9039
9040         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9041         audio-codec and video-codec.
9042
9043 2004-02-22  Benjamin Otte  <otte@gnome.org>
9044
9045         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9046
9047         * autogen.sh:
9048           replace test -e with test -x for mkinstalldirs to be more portable.
9049           (fixes #134816)
9050
9051 2004-02-22  Benjamin Otte  <otte@gnome.org>
9052
9053         * gst/gstpad.c:
9054           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9055           too noisy
9056         * gst/gsttag.c: (_gst_tag_initialize):
9057         * gst/gsttag.h:
9058           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9059         * libs/gst/control/dparam.c: (gst_dparam_attach):
9060         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9061           check that types for attached dparams match
9062
9063 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9064
9065         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9066         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9067         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9068           fix errors
9069
9070 2004-02-20  Andy Wingo  <wingo@pobox.com>
9071
9072         * gst/gstbin.c:
9073         * gst/gstbuffer.c:
9074         * gst/gstplugin.c:
9075         * gst/registries/gstxmlregistry.c: 
9076         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9077
9078         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9079         (gst_element_add_pad): DEBUG->INFO, some fixes.
9080         (gst_element_get_compatible_pad_template): Just see if the
9081         templates' caps intersect, not if one is a strict subset of the
9082         other. This conforms more to what gst_pad_link_intersect() does.
9083         (gst_element_class_add_pad_template): Don't memcpy the pad
9084         template, just ref it.
9085         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9086
9087         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9088         (gst_pad_link_filtered): Debug changes.
9089         (gst_pad_link_prepare): New function, consolidated from
9090         can_link_filtered and link_filtered.
9091
9092         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9093         look more like that of the functions in gstelement.c
9094
9095         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9096         object, and return the empty string if object is NULL.
9097
9098         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9099         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9100         LOG, not DEBUG. We still get flex info on debug.
9101
9102         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9103         debug string more verbose.
9104         (plugin_times_older_than): DEBUG->LOG.
9105
9106 2004-02-20  Julien MOUTTE <julien@moutte.net>
9107
9108         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9109         will emit found_tag for each stream they demux with the codec.
9110
9111 2004-02-20  Benjamin Otte  <otte@gnome.org>
9112
9113         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9114           copy navigation event correctly. Check freeing tag lists. 
9115         * gst/gstthread.c: (gst_thread_change_state):
9116           don't abort() on state changing mess - it might happen because of
9117           bugs.
9118         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9119           use boxed functions
9120         * gst/gstvalue.h:
9121           fix GST_VALUE_HOLDS_CAPS
9122
9123 2004-02-19  David Schleef  <ds@schleef.org>
9124
9125         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9126         and use it for GST_FUNCTION.  (bug #134750)
9127
9128 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9129
9130         * po/fr.po:
9131         * po/nl.po:
9132           updating translations
9133
9134 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9135
9136         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9137
9138 2004-02-18  kost@imn.htwk-leipzig.de
9139
9140         reviewed by: David Schleef  <ds@schleef.org>
9141
9142         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9143         for libgstcontrol.
9144
9145 2004-02-18  David Schleef  <ds@schleef.org>
9146
9147         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9148         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9149         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9150         * tools/gst-inspect.c: (print_element_info): Support dumping of
9151         double dparam information.
9152
9153 2004-02-17  David Schleef  <ds@schleef.org>
9154
9155         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9156         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9157         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9158         Use GST_TYPE_CAPS in signal prototype.
9159         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9160         Convert GST_TYPE_CAPS to boxed.
9161         * gst/gstelement.c: (gst_element_class_init):
9162         Use GST_TYPE_TAG_LIST in signal prototype.
9163         * gst/gstindex.c: (gst_index_class_init):
9164         * gst/gstindex.h:
9165         Add GST_TYPE_INDEX_ENTRY type.
9166         * gst/gstmarshal.list:
9167         Add necessary marshal types.
9168         * gst/gstpad.c: (gst_real_pad_class_init),
9169         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9170         (gst_pad_recover_caps_error):
9171         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9172         * gst/gststructure.c: (_gst_structure_initialize),
9173         (gst_structure_copy), (_gst_structure_copy_conditional):
9174         * gst/gststructure.h:
9175         Convert GST_TYPE_STRUCTURE to boxed.
9176         * gst/gsttag.c: (gst_tag_list_get_type):
9177         * gst/gsttag.h:
9178         Add GST_TYPE_TAG_LIST type.
9179
9180 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9181
9182         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9183         to what we agreed with david.
9184         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9185
9186 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9187
9188         * po/nl.po: update translation
9189
9190 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9191
9192         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9193           throw an error if spider is trying to play a mime type there is
9194           no decoder for
9195         * po/POTFILES.in:
9196           add gst/autoplug/gstspider.c for translation
9197
9198 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9199
9200         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9201         silently when the pad is negotiating.
9202
9203 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9204
9205         * docs/faq/Makefile.am:
9206           add script to run gstreamer uninstalled 
9207         * docs/faq/faq.xml:
9208         * docs/faq/developing.xml:
9209         * docs/faq/gst-uninstalled:
9210           extract script to run gstreamer uninstalled
9211         * docs/manuals.mak:
9212           add EXTRA_SOURCES variable for Makefile.am's to set to
9213           use additional SOURCE files for the doc build
9214
9215 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9216
9217         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9218
9219 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9220
9221         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9222         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9223         an error was thrown by osssink. Basically a state change failure for
9224         an element in a different scheduling group was considered as
9225         successful, which means that caps nego was going on and weird stuff
9226         happened. Like I wrote in the comment there, if someone wants to
9227         revert that please drop me a mail explaining why because I really see
9228         no point in keeping that broken behaviour there.
9229         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9230         be empty, we then return NULL which will trigger a nice error when 
9231         pulling from the pad.
9232
9233 2004-02-13  David Schleef  <ds@schleef.org>
9234
9235         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9236         (gst_dparam_get_property), (gst_dparam_set_property),
9237         (gst_dparam_do_update_default):
9238         * libs/gst/control/dparam.h:
9239         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9240         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9241         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9242         (gst_dpsmooth_do_update_double):
9243         * libs/gst/control/dparam_smooth.h:
9244         * libs/gst/control/dparammanager.c:
9245         (gst_dpman_inline_direct_update):
9246         Add support for double dparams.
9247
9248 2004-02-13  David Schleef  <ds@schleef.org>
9249
9250         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9251         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9252
9253 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9254
9255         reviewed by: David Schleef  <ds@schleef.org>
9256
9257         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9258         (gst_fdsrc_init), (gst_fdsrc_set_property),
9259         (gst_fdsrc_get_property), (gst_fdsrc_get):
9260         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9261         and sends an EOS event if file descriptor reading times out.
9262
9263 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9264
9265         * configure.ac:
9266           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9267
9268 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9269
9270         * configure.ac: pass required libxml version as argument
9271         (bug reported by Christophe Fergeau)
9272
9273 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9274   
9275         * docs/gst/gstreamer-docs.sgml:
9276         * docs/gst/tmpl/gstxml.sgml:
9277         * docs/libs/gstreamer-libs-docs.sgml:
9278           version API docs
9279
9280 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9281
9282         * gst/gstinfo.c:
9283         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9284         (gst_registry_pool_feature_filter):
9285         * gst/gstthread.c: (gst_thread_class_init):
9286         * gst/gstvalue.c:
9287           add includes exposed by building without libxml
9288         * gst/indexers/Makefile.am:
9289           do not build fileindex when LOADSAVE disabled; we should have
9290           a better libxml check later since fileindex depends on xml, not
9291           LOADSAVE or REGISTRY
9292         * libs/gst/control/Makefile.am:
9293           link with m
9294         * tools/Makefile.am:
9295           fix wrong source code for gst-xmlinspect
9296
9297 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9298
9299         * configure.ac:
9300           fix gcov help output
9301           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9302         * docs/random/release:
9303           some updated releasing notes
9304         * gstreamer.spec.in:
9305           more updates
9306
9307 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9308
9309         * docs/faq/faq.xml:
9310         * docs/manual/manual.xml:
9311         * docs/pwg/pwg.xml:
9312         * docs/pwg/titlepage.xml:
9313           put version in documentation
9314
9315 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9316
9317         * tools/Makefile.am: fix man page installation
9318
9319 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9320
9321         * configure.ac:
9322           don't check for libxml when load/save and registry disabled (#105844)
9323         * gstreamer.spec.in:
9324           sync with fedora candidate spec
9325
9326 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9327
9328         * po/fr.po:
9329         * po/nl.po:
9330           replace multidisksrc with multifilesrc
9331
9332 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9333
9334         * po/POTFILES.in:
9335           update to multidisksrc => multifilesrc file renaming (#134145)
9336
9337 2004-02-11  David Schleef  <ds@schleef.org>
9338
9339         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9340         * docs/gst/tmpl/gstpadtemplate.sgml: same
9341         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9342         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9343         fixing dance.
9344         * gst/gstutils.c: Remove disabled code that uses GstProps.
9345         * gst/registries/gstxmlregistry.h: same
9346         * docs/random/ds/0.9-suggested-changes: random notes
9347
9348 2004-02-11  kost@imn.htwk-leipzig.de
9349
9350         reviewed by: David Schleef  <ds@schleef.org>
9351
9352         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9353         initialisation of clock (bug #134128)
9354
9355 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9356
9357         * configure.ac:
9358         * gst/elements/Makefile.am:
9359         * gst/elements/gstelements.c:
9360         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9361         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9362         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9363         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9364         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9365         * gst/elements/gstmultifilesrc.h:
9366           rename multidisksrc to multifilesrc (part of #122200)
9367
9368 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9369
9370         * docs/manuals.mak:
9371           fix automake complaints
9372         * gst-element-check.m4:
9373           fix unquotedness
9374
9375 2004-02-11  David Schleef  <ds@schleef.org>
9376
9377         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9378         * gst/gstatomic_impl.h: Disable sparc implementation.
9379
9380 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9381
9382         * gst-element-check.m4:
9383           fix underquoted macros as reported by automake 1.8.x (#133800)
9384         * configure.ac:
9385           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9386           by autopoint (fixes #132996)
9387
9388 2004-02-10  Andy Wingo  <wingo@pobox.com>
9389
9390         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9391         way to do inheritance.
9392         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9393         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9394         Routine docs.
9395         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9396         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9397         doc.
9398         (gst_pad_unlink, gst_pad_is_linked): Docs.
9399         (gst_pad_renegotiate): A brief description of capsnego.
9400         (gst_pad_try_set_caps): Document.
9401         (gst_pad_try_set_caps_nonfixed): Document.
9402         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9403         (gst_pad_set_parent): Deprecated (although not out of the API).
9404         (gst_pad_get_parent): Deprecated, although many plugins use this.
9405         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9406         are private and will go away in 0.9.
9407         (gst_pad_perform_negotiate): Doc.
9408         (gst_pad_link_unnegotiate): I think this is meant to be static.
9409         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9410         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9411         (gst_pad_get_peer): Doc updates.
9412         (gst_pad_caps_change_notify): Doc.
9413         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9414         (gst_ghost_pad_new): Doc fixes.
9415
9416         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9417         (gst_object_check_uniqueness): 
9418
9419         * gst/gstelement.c (gst_element_add_pad) 
9420         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9421         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9422         (gst_element_get_static_pad, gst_element_get_pad_list) 
9423         (gst_element_class_get_pad_template_list) 
9424         (gst_element_class_get_pad_template): Work on the docs.
9425         (gst_element_get_pad_template_list): Uses the class method.
9426         (gst_element_get_compatible_pad_template): Docs, and consolidate
9427         some test conditions. 
9428         (gst_element_get_pad_from_template): New static function.
9429         (gst_element_request_compatible_pad): Docs, and work with
9430         non-request compatible templates. 
9431         (gst_element_get_compatible_pad_filtered): Docs and remove
9432         redundant checks.
9433         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9434         (gst_element_link_filtered, gst_element_link_many) 
9435         (gst_element_link, gst_element_link_pads) 
9436         (gst_element_unlink_many): Docs.
9437
9438 2004-02-05  Andy Wingo  <wingo@pobox.com>
9439
9440         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9441         s/pointer/boxed/.
9442
9443         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9444
9445         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9446         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9447         with the type=GST_TYPE_CAPS. This allows language bindings to know
9448         what kind of data they're dealing with.
9449
9450         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9451         to NULL when g_value_init is called. GstCaps, which rolls its own
9452         type implementation, now does the same instead of allocating empty
9453         caps.
9454         (_gst_caps_initialize, _gst_caps_collect_value,
9455         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9456         table methods. This allows G_VALUE_COLLECT to work.
9457
9458 2004-02-05  Andy Wingo  <wingo@pobox.com>
9459
9460         * configure.ac:
9461         * testsuite/Makefile.am (SUBDIRS): 
9462         * testsuite/ghostpads/Makefile.am: 
9463         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9464
9465         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9466         These two routines are the only ones that set
9467         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9468         pad template. They should be made static, depending on ABI needs.
9469         (gst_real_pad_dispose): Handle the case of ghost pads without a
9470         parent. Assert after dealing with ghost pads that the ghost pad
9471         list is empty.
9472         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9473         set after creation.
9474         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9475         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9476         functions. set_property will call add_ghost_pad/remove_ghost_pad
9477         as appropriate.
9478         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9479
9480         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9481         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9482         (gst_element_remove_pad): Handle ghost pads as well.
9483         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9484         depending on API-stability needs).
9485
9486 2004-02-05  Andy Wingo  <wingo@pobox.com>
9487
9488         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9489         of course they're const
9490
9491 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9492
9493         * tools/Makefile.am:
9494         * tools/gst-feedback:
9495         * tools/gst-feedback-0.7:
9496           make gst-feedback versioned too for consistency
9497
9498 2004-02-11  David Schleef  <ds@schleef.org>
9499
9500         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9501         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9502
9503 2004-02-10  Julien MOUTTE <julien@moutte.net>
9504
9505         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9506         the structure does not contain a valid tag list. Adding a safety check
9507         to remove a noisy warning in that case.
9508
9509 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9510
9511         * gst/gst.c: fix name to be in line with others
9512
9513 2004-02-09  Julien MOUTTE <julien@moutte.net>
9514
9515         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
9516         not shout that loud when len is 0. Just return 0 silently.
9517
9518 2004-02-09  Julien MOUTTE  <julien@moutte.net>
9519
9520         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
9521         because data_unref has one and I prefer the debug to be symetric.
9522         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
9523         were refed when added to the queue and unrefed only once when the queue
9524         was flushed. Now the flush handler unref the buffers two times : first
9525         unref for the ref added when pushing in the queue's tail and second
9526         unref to destroy the flushed buffer.
9527
9528 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9529
9530         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
9531
9532 2004-02-06  David Schleef  <ds@schleef.org>
9533
9534         * docs/random/ds/0.9-suggested-changes: Random ramblings
9535         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
9536         to int before printing.
9537         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
9538         * gst/parse/parse.l: same.  See bug #129600
9539
9540 2004-02-06  David Schleef  <ds@schleef.org>
9541
9542         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
9543         (gst_index_add_entry), (gst_index_add_associationv),
9544         (gst_index_add_association): Add gst_index_add_associationv()
9545         and clean up gst_index_add_association(). #127133
9546
9547 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9548
9549         * autogen.sh: check out common with right tag if CVS/Tag exists
9550
9551 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9552
9553         * testsuite/ghostpads/ghostpads.c: (main):
9554           fix testsuite from segfaulting
9555
9556 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9557
9558         * Makefile.am: add release target
9559         * configure.ac: bump nano to 1
9560         * docs/random/release:
9561
9562 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9563
9564         * gst/gstcaps.h:
9565         * gst/gstelement.c: (gst_element_base_class_init),
9566         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9567         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9568         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9569         (gst_real_pad_dispose):
9570         * gst/gststructure.c: (gst_structure_free),
9571         (gst_structure_from_string):
9572           put reverted patch back in
9573         * gst/gstelement.c: (gst_element_remove_pad):
9574           free explicit caps if they're set
9575         * gst/gstpad.c: (_gst_pad_default_fixate_func):
9576           copy the structure when fixating
9577
9578 2004-02-05  David Schleef  <ds@schleef.org>
9579
9580         * gst/gstmarshal.list:
9581         * gst/gstpad.c: (gst_real_pad_class_init),
9582         (_gst_real_pad_fixate_accumulator):
9583         Revert POINTER->BOXED change in signal marshaller.
9584
9585 === release 0.7.4 ===
9586                                                                                 
9587 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9588                                                                                 
9589         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
9590         * configure.ac: changed for release
9591
9592 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9593
9594         * gstreamer.spec.in:
9595           bump required version of gtk-doc
9596
9597 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9598
9599         * gst/gstcaps.h:
9600         * gst/gstelement.c: (gst_element_base_class_init),
9601         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9602         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9603         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9604         (gst_real_pad_dispose):
9605         * gst/gststructure.c: (gst_structure_free),
9606         (gst_structure_from_string):
9607           revert patch that breaks applications, reapply after release
9608           to get this fixed properly
9609
9610 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9611
9612         * gst/gsttag.c: (_gst_tag_initialize):
9613         * gst/gsttag.h:
9614           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
9615
9616 2004-02-04  David Schleef  <ds@schleef.org>
9617
9618         Fix some memleaks:
9619         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
9620         (gst_spider_plug_from_srcpad):
9621         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
9622
9623 2004-02-04  David Schleef  <ds@schleef.org>
9624
9625         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
9626         a GstRealPad before accessing its structure members.
9627
9628 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9629
9630         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
9631         (gst_clock_get_speed):
9632         * gst/gstclock.h:
9633           reset padding, remove unused fields
9634
9635 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9636
9637         * gst/autoplug/gstspideridentity.c:
9638         (gst_spider_identity_sink_loop_type_finding):
9639           use get_allowed_caps, not get_caps (fixes #132519)
9640         * gst/elements/gsttypefind.c: (stop_typefinding):
9641           use correct order when sending buffers and seeking
9642
9643 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9644
9645         * configure.ac:
9646         * gst/gstelement.h:
9647         * gst/gstpad.h:
9648         * gst/gstqueue.h:
9649           upgrade libtool CURRENT, reset padding
9650
9651 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9652
9653         * configure.ac:
9654           bump to prerelease
9655           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
9656
9657 2004-02-04  David Schleef  <ds@schleef.org>
9658
9659         * docs/random/ds/0.9-suggested-changes: random notes
9660         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
9661         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
9662         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
9663         expansion.
9664         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9665         (gst_filesink_get_query_types): same
9666         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
9667         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
9668         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
9669         to use new GST_PTR_FORMAT.
9670         * gst/gstelement.h: deprecate function factory macros
9671         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
9672         These are our last variadic macros that can't be replaced with
9673         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
9674         attempting to deprecate gst_element_clock_wait().
9675         * gst/gstevent.h: same
9676         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9677         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
9678         * gst/gstpad.h: deprecate function factory macros similar to above.
9679
9680 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9681
9682         * configure.ac:
9683         * tools/Makefile.am:
9684         * tools/gst-run.c: (popt_callback), (hash_print_key),
9685         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
9686         (get_candidates), (main):
9687           add new source file to generate non-versioned wrapper binaries
9688           for our tools.
9689
9690 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9691
9692         * gst/gstevent.c: (_gst_event_free):
9693           actually break; inside the switch statement
9694         * gst/parse/grammar.y:
9695           fix memleak where GValues weren't unset
9696
9697 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9698
9699         * gst/gststructure.c: (gst_structure_from_string):
9700           fix huge memleak
9701         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9702         (new_entry), (gst_type_find_element_chain):
9703         * gst/gstelement.c: (gst_element_base_class_init),
9704         (gst_element_class_set_details):
9705         * gst/gstpad.c: (gst_pad_can_link_filtered):
9706           fix smaller memleaks
9707         * gst/gstpad.c: (gst_real_pad_dispose):
9708           check that explicit caps are gone
9709         * gst/gststructure.c: (gst_structure_free):
9710           actually free the structure
9711         * gst/gstelement.c: (gst_element_clear_pad_caps):
9712           unset explicit caps
9713
9714 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9715
9716         * tools/Makefile.am:
9717           use AM_CFLAGS since all the CFLAGS are the same
9718           use AM_LDFAGS
9719
9720 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9721
9722         * docs/manual/gnome.xml:
9723           expand example a little
9724         * gst/gst.c: (gst_init_with_popt_table),
9725         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
9726           make sure popt option displays are done with right textdomain
9727           use GstPoptOption type
9728         * gst/gst.h:
9729           create GstPoptOption type
9730
9731 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9732
9733         * gst/gsterror.c: (_gst_stream_errors_init):
9734         * gst/gsterror.h:
9735           adding error type for no codec
9736         * po/POTFILES.in:
9737           add gst-inspect
9738         * po/nl.po:
9739           update dutch translation
9740         * tools/gst-inspect.c: (print_element_list), (main):
9741           do proper internationalization
9742         * tools/gst-launch.c: (idle_func):
9743           remove commented out function call
9744
9745 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9746
9747         * docs/README:
9748           add some error fixing notes
9749         * docs/gst/gstreamer-sections.txt:
9750           remove double entries
9751         * docs/gst/tmpl/gstbin.sgml:
9752         * docs/gst/tmpl/gstclock.sgml:
9753           remove override
9754         * docs/gst/tmpl/gstelement.sgml:
9755         * docs/gst/tmpl/gstindex.sgml:
9756         * docs/gst/tmpl/gstobject.sgml:
9757         * docs/gst/tmpl/gstpadtemplate.sgml:
9758         * docs/gst/tmpl/gstreamer-unused.sgml:
9759         * docs/gst/tmpl/gsttag.sgml:
9760         * docs/gst/tmpl/gstthread.sgml:
9761         * docs/gst/tmpl/gstxml.sgml:
9762         * gst/gsttag.h:
9763           sync header prototypes with c decls
9764         * gst/gsttaginterface.c:
9765           fix doc headers
9766
9767 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9768
9769         * gst/parse/Makefile.am:
9770         * gst/gstobject.h:
9771           get rid of gstmarshal.h dependency. It's not needed.
9772         * gst/gst.h:
9773         * gst/elements/gstfakesink.c:
9774         * gst/elements/gstfakesrc.c:
9775         * gst/elements/gstidentity.c:
9776         * gst/gstbin.c:
9777         * gst/gstelement.c:
9778         * gst/gstindex.c:
9779         * gst/gstobject.c:
9780         * gst/gstpad.c:
9781         * gst/gstthread.c:
9782         * gst/gstxml.c:
9783         * libs/gst/control/dparam.c:
9784         * libs/gst/control/dparammanager.c:
9785           include gstmarshal.h.
9786         Fixes #132045
9787
9788 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9789
9790         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9791         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
9792         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
9793         * gst/elements/gstfilesrc.h:
9794           don't ref the filesrc when creating mmaped buffers. Don't keep a
9795           list of not-yet-destroyed buffers.
9796         * gst/gstbuffer.h:
9797           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
9798
9799 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9800
9801         * gst/gst.c: (init_pre):
9802           remove textdomain
9803
9804 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9805
9806         * docs/pwg/advanced-events.xml:
9807         * docs/pwg/advanced-scheduling.xml:
9808         * docs/pwg/intro-basics.xml:
9809         * docs/pwg/other-manager.xml:
9810         * docs/pwg/other-nton.xml:
9811         * docs/pwg/other-ntoone.xml:
9812         * docs/pwg/other-oneton.xml:
9813         * docs/pwg/pwg.xml:
9814           All sort of documentation... Forgot what. Point is that I want this
9815           in before I leave. The 'other-*' will be the last section and will
9816           explain issues specific to these type of elements.
9817
9818 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9819
9820         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9821         (gst_filesrc_get_read):
9822           set all the values on buffers that we can
9823
9824 2004-02-02  David Schleef  <ds@schleef.org>
9825
9826         Change usage of isblah() to g_ascii_isblah() to be more locale
9827         independent.  (#133076)
9828         * gst/gsturi.c: (gst_uri_protocol_check_internal):
9829         * gst/gstutils.c:
9830         * gst/parse/parse.l:
9831
9832 2004-02-02  Jon Trowbridge  <trow@gnu.org>
9833
9834         reviewed by: David Schleef  <ds@schleef.org>
9835
9836         Fix memory leaks:
9837         * gst/gstcaps.c: (gst_caps_to_string):
9838         * gst/registries/gstxmlregistry.c:
9839         (gst_xml_registry_add_path_list_func),
9840         (gst_xml_registry_parse_padtemplate):
9841
9842 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9843
9844         * gst/gstelement.c: (gst_element_default_error):
9845           suffix error messages with period
9846
9847 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9848
9849         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9850         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9851         * gst/gsterror.c: (gst_error_get_message):
9852           Suffix with dots
9853         * po/fr.po:
9854         * po/nl.po:
9855           Update translation files
9856
9857 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9858
9859         * gst/autoplug/gstspideridentity.c:
9860         (gst_spider_identity_sink_loop_type_finding):
9861         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9862         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9863         (gst_filesink_close_file), (gst_filesink_handle_event),
9864         (gst_filesink_chain):
9865         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9866         (gst_filesrc_get_read), (gst_filesrc_open_file):
9867         * gst/elements/gstidentity.c: (gst_identity_chain):
9868         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9869         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9870         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9871         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9872         * gst/gsterror.c: (_gst_core_errors_init),
9873         (_gst_library_errors_init), (_gst_resource_errors_init),
9874         (_gst_stream_errors_init), (gst_error_get_message):
9875         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9876         (gst_pad_recover_caps_error), (gst_pad_pull):
9877         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9878         * gst/schedulers/gstbasicscheduler.c:
9879         (gst_basic_scheduler_chainhandler_proxy),
9880         (gst_basic_scheduler_gethandler_proxy),
9881         (gst_basic_scheduler_cothreaded_chain):
9882           Suffix error messages with period.
9883           Use (NULL) instead of NULL
9884
9885 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9886
9887         * docs/gst/tmpl/gstelement.sgml:
9888         * docs/gst/tmpl/gstxml.sgml:
9889         * gst/gstelement.c: (gst_element_error_full):
9890           add element path to error
9891
9892 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9893
9894         * docs/random/mimetypes:
9895           update raw int/float info
9896         * gst/gsttag.c: (_gst_tag_initialize):
9897         * gst/gsttag.h:
9898           add GST_TAG_ENCODER
9899
9900 2004-01-30  David Schleef  <ds@schleef.org>
9901
9902         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
9903           missing (#132991)
9904
9905 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
9906
9907         reviewed by Benjamin Otte 
9908           parts of the patch submitted in bug #113913
9909
9910         * configure.ac:
9911           use AC_C_INLINE. Use = instead of == with test
9912         * examples/plugins/example.c:
9913         * gst/autoplug/gstspideridentity.c:
9914         * gst/elements/gstfdsrc.c:
9915         * gst/elements/gstfilesrc.c:
9916         * gst/elements/gstidentity.c:
9917         * gst/elements/gstmultidisksrc.c:
9918         * gst/elements/gststatistics.c:
9919         * gst/gstelement.c:
9920         * gst/gstobject.c:
9921         * gst/gstpad.c:
9922         * gst/gstpipeline.c:
9923         * gst/gstthread.c:
9924           don't end enums with a comma
9925         * gst/gstindex.c: (gst_index_compare_func):
9926           do explicit casting to gint
9927         * gst/gsttrace.c: (gst_trace_text_flush):
9928           #define strsize as a macro
9929
9930 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9931
9932         * docs/README:
9933         * docs/gst/gstreamer-docs.sgml:
9934         * docs/gst/gstreamer-sections.txt:
9935         * docs/gst/tmpl/gstelement.sgml:
9936         * docs/gst/tmpl/gsterror.sgml:
9937         * docs/gst/tmpl/gstinterface.sgml:
9938         * docs/gst/tmpl/gstreamer-unused.sgml:
9939         * docs/gst/tmpl/gststructure.sgml:
9940         * docs/gst/tmpl/gsttag.sgml:
9941         * docs/gst/tmpl/gsttaginterface.sgml:
9942         * docs/gst/tmpl/gstvalue.sgml:
9943         make sure all API ends up in the built docs
9944         * gst/gstinterface.c:
9945         * gst/gststructure.c: (gst_structure_id_set_value),
9946         (gst_structure_set_value), (gst_structure_id_get_value):
9947         * gst/gststructure.h:
9948         * gst/gstvalue.h:
9949         sync .h with .c declarations
9950
9951 2004-01-30  Julien Moutte  <julien@moutte.net>
9952
9953         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
9954         Ronald will fix riffread.
9955
9956 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9957
9958         * docs/pwg/advanced-interfaces.xml:
9959           Added tuner interface docs.
9960
9961 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9962
9963         * docs/random/mimetypes:
9964           correct Theora information
9965         * gst/gstelement.h:
9966           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
9967
9968 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9969
9970         * gst/gstelement.c: (gst_element_error_full):
9971         * gst/gstelement.h:
9972           GST_ELEMENT_ERROR in enum -> _IN_ERROR
9973
9974 2004-01-29  Julien MOUTTE  <julien@moutte.net>
9975
9976         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9977         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
9978         again and even before DISCONT.
9979         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
9980         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
9981         bytestream so that it's not stopping to fill the bytestream if events
9982         different than EOS or DISCONT are received. Instead it process them so
9983         that they go downstream.
9984
9985 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9986
9987         * docs/gst/tmpl/gstelement.sgml:
9988         * docs/gst/tmpl/gstreamer-unused.sgml:
9989         * docs/gst/tmpl/gstxml.sgml:
9990         * gst/autoplug/gstspideridentity.c:
9991         (gst_spider_identity_sink_loop_type_finding):
9992         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9993         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9994         (gst_filesink_close_file), (gst_filesink_handle_event),
9995         (gst_filesink_chain):
9996         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9997         (gst_filesrc_get_read), (gst_filesrc_open_file):
9998         * gst/elements/gstidentity.c: (gst_identity_chain):
9999         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10000         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10001         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10002         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10003         * gst/gstelement.h:
10004         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10005         (gst_pad_recover_caps_error), (gst_pad_pull):
10006         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10007         * gst/schedulers/gstbasicscheduler.c:
10008         (gst_basic_scheduler_chainhandler_proxy),
10009         (gst_basic_scheduler_gethandler_proxy),
10010         (gst_basic_scheduler_cothreaded_chain):
10011           gst_element_error -> GST_ELEMENT_ERROR
10012
10013 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10014
10015         * docs/Makefile.am:
10016         * docs/gst/tmpl/gstelement.sgml:
10017         * docs/gst/tmpl/gstxml.sgml:
10018         * docs/manuals.mak:
10019         * docs/pwg/advanced-request.xml:
10020         * docs/pwg/advanced-scheduling.xml:
10021         * docs/pwg/advanced-tagging.xml:
10022           fix non-validating docbook using CDATA
10023           make sure make check-local gets run first to check if it validates
10024
10025 2004-01-29  Julien MOUTTE <julien@moutte.net>
10026
10027         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10028         handling (up and downstream).
10029         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10030         my_filter thing.
10031
10032 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10033
10034         * docs/pwg/advanced-tagging.xml:
10035           Add docs about tag writing.
10036
10037 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10038
10039         * docs/pwg/advanced-tagging.xml:
10040           Add a part about tag reading and application signalling... Tag
10041           writing still needs to be documented.
10042         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10043           We can set file locations in READY, too.
10044
10045 2004-01-29  Julien MOUTTE <julien@moutte.net>
10046
10047         * docs/random/ds/element-checklist: Adding some notes about src
10048         events.
10049
10050 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10051
10052         * docs/random/mimetypes:
10053           Update docs to point to correct elements for various mimetypes, and
10054           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10055           <stephane.loeuillet@tiscali.fr>.
10056
10057 2004-01-28  David Schleef  <ds@schleef.org>
10058
10059         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10060
10061 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10062
10063         * docs/random/mimetypes:
10064           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10065           undefined"
10066         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10067           make it only work in NULL.
10068         * gst/gstcaps.c:
10069           don't posion NULL caps
10070         * gst/gstelement.c: (gst_element_set_time):
10071           add debugging statement
10072         * gst/gstelement.c: (gst_element_emit_found_tag),
10073         (gst_element_found_tag_func), (gst_element_found_tags):
10074         * gst/gstelement.h:
10075           These functions take const taglists
10076         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10077           fix memleak
10078         * gst/gstpad.c: (gst_pad_event_default):
10079           make more effort on handling discont and clocks, g_warn if everything
10080           fails
10081         * gst/gststructure.c: (gst_structure_remove_fields),
10082         (gst_structure_remove_fields_valist):
10083         * gst/gststructure.h:
10084           add gst_structure_remove_fields(_valist)
10085         * gst/gsttag.c:
10086           fix doc glitch
10087
10088 2004-01-28  David Schleef  <ds@schleef.org>
10089
10090         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10091         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10092         Fix memory leakage of gst_caps_to_string().
10093
10094         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10095         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10096         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10097         (gst_spider_identity_sink_loop_type_finding):
10098         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10099         (find_suggest):
10100         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10101         (gst_pad_set_explicit_caps):
10102         * gst/parse/grammar.y:
10103
10104 2004-01-28  David Schleef  <ds@schleef.org>
10105
10106         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10107         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10108         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10109         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10110         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10111         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10112         (gst_debug_log_default), (_gst_info_printf_extension),
10113         (_gst_info_printf_extension_arginfo):  Add printf extension.
10114         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10115         * gst/gststructure.c: (gst_structure_to_string),
10116         (_gst_structure_parse_value): Use gst_value_deserialize() and
10117         remove old code.
10118         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10119         (gst_value_deserialize_boolean), (gst_strtoi),
10120         (gst_value_deserialize_int), (gst_value_deserialize_double),
10121         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10122         a bunch of deserialize functions and gst_value_deserialize.
10123         * gst/gstvalue.h: er, _de_serialize, not unserialize
10124         * testsuite/caps/string-conversions.c: (main): We don't currently
10125         handle (float) in caps, so convert these to (double).
10126         * testsuite/debug/Makefile.am: Add new test for the printf extension
10127         * testsuite/debug/printf_extension.c: (main): same
10128
10129 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10130
10131         * docs/random/company/time:
10132           Add some docs about clocking and time
10133
10134 2004-01-28  Julien MOUTTE <julien@moutte.net>
10135
10136         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10137
10138 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10139
10140         * docs/pwg/advanced-clock.xml:
10141         * docs/pwg/advanced-dparams.xml:
10142         * docs/pwg/advanced-events.xml:
10143         * docs/pwg/advanced-interfaces.xml:
10144         * docs/pwg/advanced-midi.xml:
10145         * docs/pwg/advanced-request.xml:
10146         * docs/pwg/advanced-scheduling.xml:
10147         * docs/pwg/advanced-tagging.xml:
10148         * docs/pwg/advanced-types.xml:
10149         * docs/pwg/appendix-checklist.xml:
10150         * docs/pwg/building-boiler.xml:
10151         * docs/pwg/building-chainfn.xml:
10152         * docs/pwg/building-filterfactory.xml:
10153         * docs/pwg/building-pads.xml:
10154         * docs/pwg/building-props.xml:
10155         * docs/pwg/building-signals.xml:
10156         * docs/pwg/building-state.xml:
10157         * docs/pwg/building-testapp.xml:
10158         * docs/pwg/intro-basics.xml:
10159         * docs/pwg/intro-preface.xml:
10160         * docs/pwg/other-autoplugger.xml:
10161         * docs/pwg/other-sink.xml:
10162         * docs/pwg/other-source.xml:
10163         * docs/pwg/titlepage.xml:
10164           fix up id's
10165
10166 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10167
10168         * docs/95NonPath:
10169         * docs/HACKING:
10170         * docs/README:
10171         * docs/building-the-docs-on-debian:
10172           collect relevant bits of doc info
10173
10174 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10175
10176         * docs/pwg/advanced_tagging.xml:
10177           Half-assed commit so Thomas can re-arrange document IDs here to be
10178           consistent, too.
10179
10180 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10181
10182         * docs/manual/autoplugging.xml:
10183         * docs/manual/bins-api.xml:
10184         * docs/manual/bins.xml:
10185         * docs/manual/buffers-api.xml:
10186         * docs/manual/buffers.xml:
10187         * docs/manual/clocks.xml:
10188         * docs/manual/components.xml:
10189         * docs/manual/cothreads.xml:
10190         * docs/manual/debugging.xml:
10191         * docs/manual/dparams-app.xml:
10192         * docs/manual/dynamic.xml:
10193         * docs/manual/elements-api.xml:
10194         * docs/manual/elements.xml:
10195         * docs/manual/factories.xml:
10196         * docs/manual/gnome.xml:
10197         * docs/manual/goals.xml:
10198         * docs/manual/helloworld.xml:
10199         * docs/manual/helloworld2.xml:
10200         * docs/manual/init-api.xml:
10201         * docs/manual/intro.xml:
10202         * docs/manual/links-api.xml:
10203         * docs/manual/links.xml:
10204         * docs/manual/manual.xml:
10205         * docs/manual/motivation.xml:
10206         * docs/manual/pads-api.xml:
10207         * docs/manual/pads.xml:
10208         * docs/manual/plugins-api.xml:
10209         * docs/manual/plugins.xml:
10210         * docs/manual/programs.xml:
10211         * docs/manual/queues.xml:
10212         * docs/manual/quotes.xml:
10213         * docs/manual/schedulers.xml:
10214         * docs/manual/states-api.xml:
10215         * docs/manual/states.xml:
10216         * docs/manual/threads.xml:
10217         * docs/manual/typedetection.xml:
10218         * docs/manual/xml.xml:
10219           use chapter, part, section or misc as id starts for all bits
10220
10221 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10222
10223         * docs/gst/gstreamer-sections.txt:
10224           Fix up TITLE of the sections
10225
10226 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10227
10228         * docs/pwg/advanced_interfaces.xml:
10229           Add documentation on propertyprobing.
10230         * docs/pwg/advanced_events.xml:
10231         * docs/pwg/advanced_tagging.xml:
10232         * docs/pwg/building_boiler.xml:
10233         * docs/pwg/building_filterfactory.xml:
10234         * docs/pwg/pwg.xml:
10235           Move filterfactory and tagging into their own chapter, add a chapter
10236           on events. all these are empty placeholders that will be filled in
10237           some day.
10238
10239 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10240
10241         * docs/pwg/advanced_interfaces.xml:
10242           Docs for mixer interface. Also a check for website uploading.
10243
10244 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10245
10246         * docs/HACKING:
10247         * docs/Makefile.am:
10248         * docs/faq/Makefile.am:
10249         * docs/gst/Makefile.am:
10250         * docs/gst/tmpl/gstelement.sgml:
10251         * docs/gst/tmpl/gstplugin.sgml:
10252         * docs/gst/tmpl/gstreamer-unused.sgml:
10253         * docs/libs/Makefile.am:
10254         * docs/manual/Makefile.am:
10255         * docs/manuals.mak:
10256         * docs/pwg/Makefile.am:
10257         * docs/upload.mak:
10258           Separate out upload target and make it similar for
10259           both docbook and gtk-doc docs
10260
10261 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10262
10263         * docs/manuals.mak:
10264           Fix upload target to work with freedesktop
10265
10266 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10267
10268         * docs/pwg/advanced_types.xml:
10269           Add notes on creating your own types.
10270         * docs/pwg/building_boiler.xml:
10271         * docs/pwg/building_pads.xml:
10272         * docs/pwg/building_state.xml:
10273           Add some stuff about how to retrieve values from structures, how
10274           that relates to types and change layout slightly again to be almost
10275           perfect.
10276
10277 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10278
10279         * docs/pwg/advanced_dparams.xml:
10280         * docs/pwg/advanced_scheduling.xml:
10281           Change index layout slightly.
10282
10283 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10284
10285         * docs/pwg/advanced_clock.xml:
10286         * docs/pwg/advanced_interfaces.xml:
10287         * docs/pwg/advanced_midi.xml:
10288           General placeholders for now.
10289         * docs/pwg/advanced_request.xml:
10290           Explanation about sometimes and request pads.
10291         * docs/pwg/advanced_scheduling.xml:
10292           Concept of bytestream, loopfunctions and schedulers.
10293         * docs/pwg/building_boiler.xml:
10294           Add something about plugin-init.
10295
10296 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10297
10298         * docs/pwg/building_pads.xml:
10299           Fix broken docbook
10300
10301 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10302
10303         * docs/pwg/advanced_interfaces.xml:
10304         * docs/pwg/pwg.xml:
10305           Add as a placeholder for future filling-in.
10306         * docs/pwg/basics_autoplugging.xml:
10307         * docs/pwg/basics_buffers.xml:
10308         * docs/pwg/basics_elements.xml:
10309         * docs/pwg/basics_events.xml:
10310         * docs/pwg/basics_plugins.xml:
10311         * docs/pwg/basics_types.xml:
10312           Remove, because unused (this is all in intro_basics.xml).
10313         * docs/pwg/building_signals.xml:
10314           Short intro to signals + reference to GObject docs - we really
10315           shouldn't go into these sort of things to deply because we don't
10316           use them that extensively anyway.
10317         * docs/pwg/building_state.xml:
10318           Explanation of states. Benjamin, please check.
10319         * docs/pwg/building_testapp.xml:
10320           Put everything in one page - putting only a few lines of content
10321           per page doesn't really make sense.
10322
10323           Time to get into the advanced topics. ;).
10324
10325 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10326
10327         * docs/pwg/advanced_types.xml:
10328           Finish documenting the current state of mimetypes.
10329         * docs/pwg/building_boiler.xml:
10330         * docs/pwg/building_chainfn.xml:
10331         * docs/pwg/building_pads.xml:
10332         * docs/pwg/building_props.xml:
10333         * docs/pwg/building_testapp.xml:
10334           Start documenting the "how to build a simple audio filter" part
10335           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10336           states and (maybe?) a short introduction to capsnego in the chapter
10337           on pads (building_pads.xml). Capsnego should probably be explained
10338           fully in advanced_capsnego.xml or so.
10339
10340 2004-01-26  David Schleef  <ds@schleef.org>
10341
10342         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10343         * gst/gstpad.h: Add new function to allow element to (somewhat)
10344         specify non-fixed caps on a pad.
10345         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10346         that I added a few weeks ago.
10347
10348 2004-01-26  David Schleef  <ds@schleef.org>
10349
10350         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10351           making try_set_caps() work with non-fixed caps.
10352
10353 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10354
10355         * docs/pwg/advanced_types.xml:
10356         * docs/pwg/intro_basics.xml:
10357         * docs/pwg/intro_preface.xml:
10358         * docs/pwg/pwg.xml:
10359         * docs/pwg/titlepage.xml:
10360           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10361           in here (docs/random/mimetypes), and will from there on work on both
10362           updating outdated parts and adding missing parts.
10363           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10364
10365 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10366
10367         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10368           policy is set
10369
10370 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10371
10372         * gst/gstelement.h:
10373           remove gst_element_factory_get_version. It doesn't exist anymore.
10374         * gst/gstplugin.c:
10375         * gst/gstplugin.h:
10376           remove gst_plugin_set_name and change gst_plugin_get_longname to
10377           gst_plugin_get_description to match code.
10378         * gst/gsterror.h:
10379           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10380         * gst/gstpad.c: (gst_pad_try_set_caps):
10381           make it work with nonfixed caps.
10382           Note that even in the nonfixed case the link function of the pad
10383           that tries to set caps isn't called.
10384
10385 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10386
10387         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10388           fix bug where buffer was not assembled correctly
10389         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10390           silence by default
10391         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10392           only seek if there's no more buffers that could work without seeking
10393
10394 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10395
10396         * gst/gsttag.c: (_gst_tag_initialize):
10397         * gst/gsttag.h:
10398           Add application tag (for encoding/muxing app).
10399
10400 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10401
10402         * autogen.sh:
10403           make autopoint force, and libtoolize not copy
10404         * common/m4/as-docbook.m4:
10405           added docbook xml catalog setup check
10406         * common/m4/gst-doc.m4:
10407           use docbook check
10408
10409 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10410
10411         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10412         * gst/gsttag.h:
10413           add GstTagFlag
10414
10415 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10416
10417         * docs/gst/gstreamer-sections.txt:
10418         * docs/gst/tmpl/gst.sgml:
10419         * docs/gst/tmpl/gstbuffer.sgml:
10420         * docs/gst/tmpl/gstclock.sgml:
10421         * docs/gst/tmpl/gstelement.sgml:
10422         * docs/gst/tmpl/gstreamer-unused.sgml:
10423         * docs/gst/tmpl/gstxml.sgml:
10424           sync latest API changes to docs
10425
10426 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10427
10428         * gst/gstpluginfeature.c:
10429           fix doc snippet
10430         * tools/gst-inspect.c: (print_element_list):
10431           fix output of typefind
10432           add GPL header
10433         * tools/gst-launch.c:
10434           add GPL header
10435
10436 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10437
10438         * gst/elements/Makefile.am:
10439         * gst/elements/gstelements.c:
10440         * gst/elements/gsttypefindelement.c:
10441         * gst/elements/gsttypefindelement.h:
10442         * po/POTFILES.in:
10443         * po/fr.po:
10444         * po/nl.po:
10445           renamed gsttypefindelement to gsttypefind, conserving CVS history
10446
10447 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10448
10449         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10450         * gst/gsttag.h:
10451           add some tags used in ogg as well
10452           fix _ in replaygain tags
10453
10454 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10455
10456         * gst/gsterror.h:
10457           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10458
10459 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10460
10461         * gst/gstelement.c: (gst_element_error_full):
10462         * gst/gstelement.h:
10463           change _extended to _full
10464
10465 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10466
10467         reviewed by: <delete if not using a buddy>
10468
10469         * docs/gst/tmpl/gst.sgml:
10470         * docs/gst/tmpl/gstbuffer.sgml:
10471         * docs/gst/tmpl/gstclock.sgml:
10472         * docs/gst/tmpl/gstelement.sgml:
10473         * docs/gst/tmpl/gstreamer-unused.sgml:
10474         * docs/gst/tmpl/gstxml.sgml:
10475         * gst/gstelement.c: (gst_element_error_full):
10476         * gst/gstelement.h:
10477
10478 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10479
10480         * gst/gstelement.h: fix _gst_element_error_printf prototype
10481
10482 2004-01-20  David Schleef  <ds@schleef.org>
10483
10484         * gst/gststructure.c: (gst_structure_to_string):
10485         Convert function to use gst_value_serialize().
10486         * gst/gstvalue.c: (gst_value_serialize_list),
10487         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10488         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10489         (gst_value_serialize_int), (gst_value_serialize_double),
10490         (gst_string_wrap), (gst_value_serialize_string),
10491         (gst_value_serialize), (gst_value_deserialize):
10492         * gst/gstvalue.h:
10493         Add implementations for serialize.
10494
10495 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10496
10497         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10498         we want to keep that one in the future or change xvidenc.c to use 
10499         another error.
10500
10501 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10502
10503         * gst/gstelement.c: (_gst_element_error_printf):
10504         * gst/gstelement.h:
10505           privatise function
10506
10507 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10508
10509         * docs/random/error:
10510           doc explaining error system
10511         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10512           cleanup
10513
10514 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10515
10516         * gst/gst-i18n-app.h:
10517         * gst/gst-i18n-lib.h:
10518           remove inclusion of config.h
10519         * po/POTFILES.in:
10520         * po/nl.po:
10521           add gst/gstelement.c
10522
10523 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10524
10525         * po/nl.po: updated Dutch translation
10526
10527 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10528
10529         * gst/gsterror.c: (_gst_core_errors_init),
10530         (_gst_library_errors_init), (_gst_resource_errors_init),
10531         (_gst_stream_errors_init):
10532         remove ending punctuation dots
10533
10534 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10535
10536         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10537         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
10538         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10539         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10540         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10541         use GST_ERROR_SYSTEM
10542
10543 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10544
10545         * gst/gstelement.c: (gst_element_error_printf),
10546         (gst_element_error_extended):
10547         * gst/gstelement.h:
10548           add a helper printf function so we can have NULL values passed.
10549
10550 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10551
10552         * gst/gstelement.h:
10553           add G_STMT macros to gst_element_error, which isn't strictly
10554           necessary but people tell me to anyway.
10555
10556 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10557
10558         * gst/Makefile.am:
10559         * gst/autoplug/gstspideridentity.c:
10560         (gst_spider_identity_sink_loop_type_finding):
10561         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10562         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10563         (gst_filesink_close_file), (gst_filesink_handle_event),
10564         (gst_filesink_chain):
10565         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
10566         (gst_filesrc_map_region), (gst_filesrc_get_read),
10567         (gst_filesrc_open_file):
10568         * gst/elements/gstidentity.c: (gst_identity_chain):
10569         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10570         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10571         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10572         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
10573         * gst/gst.h:
10574         * gst/gst_private.h:
10575         * gst/gstelement.c: (gst_element_class_init),
10576         (gst_element_default_error), (gst_element_error_func),
10577         (gst_element_error_extended):
10578         * gst/gstelement.h:
10579         * gst/gsterror.c: (_gst_core_errors_init),
10580         (_gst_library_errors_init), (_gst_resource_errors_init),
10581         (_gst_stream_errors_init), (gst_error_get_message):
10582         * gst/gsterror.h:
10583         * gst/gstinfo.c: (_gst_debug_init):
10584         * gst/gstmarshal.list:
10585         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10586         (gst_pad_recover_caps_error), (gst_pad_pull):
10587         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10588         * gst/schedulers/gstbasicscheduler.c:
10589         (gst_basic_scheduler_chainhandler_proxy),
10590         (gst_basic_scheduler_gethandler_proxy),
10591         (gst_basic_scheduler_cothreaded_chain):
10592         * po/POTFILES.in:
10593         * po/fr.po:
10594         * po/nl.po:
10595           change error signal
10596           add error categories
10597
10598 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
10599
10600         * gst/gsttag.c: (_gst_tag_initialize):
10601         * gst/gsttag.h:
10602         Add replaygain tag
10603
10604 2004-01-18  Colin Walters  <walters@verbum.org>
10605
10606         * examples/retag/retag.c: Call gst_init before processing
10607         program args.  Add g_assert to _link_many call.
10608
10609 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10610
10611         * gst/gstpad.c: (gst_pad_alloc_buffer):
10612           Return a newly allocated buffer when the pad has no peer.
10613
10614 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10615
10616         * gst/gstclock.c: (gst_clock_get_time):
10617           make it compile with gcc 2.95 again.
10618           Patch by Scott Wheeler
10619
10620 2004-01-15  David Schleef  <ds@schleef.org>
10621
10622         * gst/gstcaps.h:
10623         Added gst_caps_is_simple() macro.
10624         * testsuite/caps/caps.c: (test1):
10625         * testsuite/caps/intersect2.c: (main):
10626         * testsuite/caps/intersection.c: (main):
10627         Fixes to make 'make check' work again after removing
10628         gst_caps_is_chained().
10629
10630 2004-01-15  Leif Johnson <leif@ambient.2y.net>
10631
10632         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
10633         and additions to the MIDI document.
10634
10635 2004-01-15  David Schleef  <ds@schleef.org>
10636
10637         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
10638         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
10639         of GST_RPAD_, since we don't know if it's a real or ghost pad.
10640
10641 2004-01-15  David Schleef  <ds@schleef.org>
10642
10643         * gst/gstqueue.c:
10644         * gst/gstqueue.h:
10645         Fix the spelling of "treshold" and make min_threshold actually
10646         affect the queue.
10647
10648 2004-01-15  David Schleef  <ds@schleef.org>
10649
10650         * gst/gstcaps.c:
10651         Add lots of documentation.
10652         * gst/gstcaps.h:
10653         Deprecate a few functions.
10654         * gst/gstpad.c:
10655         Removed use of deprecated functions.
10656
10657 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10658
10659         * gst/gstpad.c: (gst_pad_is_linked):
10660         * gst/gstpad.h:
10661           implement gst_pad_is_linked
10662         * gst/gstelement.h:
10663           reserve space for initiate_state_change
10664
10665 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10666
10667         * gst/autoplug/gstspideridentity.c:
10668         (gst_spider_identity_sink_loop_type_finding):
10669           break infinite loop by just returning instead of looping
10670         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
10671           set event time difference correctly. Set it to 1 second instead
10672           of 100ms to be more tolerant
10673         * gst/gstelement.c: (gst_element_set_time):
10674           add debugging output
10675
10676 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10677
10678         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
10679           query if buffers are inside the pool, ignore events
10680
10681 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10682
10683         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
10684         (gst_clock_set_speed), (gst_clock_set_active),
10685         (gst_clock_is_active), (gst_clock_reset),
10686         (gst_clock_handle_discont):
10687         * gst/gstclock.h:
10688           deprecate old interface and disable functions that aren't in use
10689           anymore.
10690         * gst/gstelement.h:
10691         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
10692         (gst_element_set_time), (gst_element_adjust_time):
10693           add concept of "element time" and functions to get/set this time.
10694         * gst/gstelement.c: (gst_element_change_state):
10695           update element time correctly.
10696         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10697           This is a debug message, not a g_critical.
10698         * gst/gstpad.c: (gst_pad_event_default):
10699           handle discontinuous events right with element time.
10700         * gst/gstscheduler.c: (gst_scheduler_state_transition):
10701           update to clocking fixes.
10702           set clocks on elements in READY=>PAUSED. The old behaviour caused
10703           a wrong element time on the first element that started playing.
10704         * gst/schedulers/gstbasicscheduler.c:
10705         (gst_basic_scheduler_class_init):
10706         * gst/schedulers/gstoptimalscheduler.c:
10707         (gst_opt_scheduler_class_init):
10708           remove code that just implements the default behaviour.
10709         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
10710           update to use new clocking functions
10711         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
10712         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
10713           update to test new element time.
10714         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
10715           use _get_allowed_caps instead of _get_caps. This catches filtered
10716           caps correctly.
10717         * testsuite/debug/commandline.c:
10718           update for new GST_DEBUG syntax.
10719         * testsuite/threads/Makefile.am:
10720           disable a test that only works sometimes.
10721
10722 2004-01-13  Julien MOUTTE <julien@moutte.net>
10723
10724         * po/LINGUAS: Adding fr.
10725         * po/fr.po: Adding french translation.
10726
10727 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10728
10729         * gst/parse/grammar.y:
10730         * po/POTFILES.in:
10731         * po/nl.po:
10732         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
10733           translate parsing error messages
10734
10735 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10736
10737         * po/POTFILES.in: adding gst-launch
10738         * po/nl.po: updated translation, all 99 strings translated
10739         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
10740         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
10741           fix strings for translation
10742
10743 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10744
10745         * gst/gst.c:
10746           - capitalize beginnings of popt options
10747           - fix strings for translation
10748           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
10749
10750 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10751
10752         * po/README: add some notes on how to update translations
10753
10754 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10755
10756         * ABOUT-NLS: removed, is autogenerated from autopoint
10757         * autogen.sh: add autopoint stuff
10758         * configure.ac: fix up gettext stuff
10759         * gst/Makefile.am: add i18n headers to noinst_HEADERS
10760         * gst/elements/gsttypefindelement.c: add header include
10761         * gst/gettext.h: add header, copy from system-installed header
10762         * gst/gst-i18n-app.h: to be included by each app having translations
10763         * gst/gst-i18n-lib.h: to be included by each lib having translations
10764         * gst/gst.c: (init_pre): fix up gettext calls
10765         * gst/gst_private.h: remove i18n stuff, moving to separate headers
10766         * po/LINGUAS: the new way to specify translations present
10767         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
10768         * po/Makevars: the variables filled in for GStreamer
10769         * po/POTFILES.in: added new files with translations
10770         * po/de.po: has new strings
10771         * po/nl.po: readded, has new strings
10772
10773 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10774
10775         * gst/gsttag.c: fix some strings marked for translation
10776
10777 2004-01-13  Iain <iain@prettypeople.org>
10778
10779         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
10780         group when we add an element to it, cos we unref it when we remove one
10781
10782 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10783
10784         * testsuite/debug/commandline.c: (debug_not_reached):
10785         * testsuite/debug/output.c: (check_message):
10786           fix testsuite
10787
10788 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10789
10790         * examples/cutter/.cvsignore:
10791         * examples/helloworld/.cvsignore:
10792         * examples/launch/.cvsignore:
10793         * examples/manual/.cvsignore:
10794         * examples/mixer/.cvsignore:
10795         * examples/pingpong/.cvsignore:
10796         * examples/plugins/.cvsignore:
10797         * examples/queue/.cvsignore:
10798         * examples/queue2/.cvsignore:
10799         * examples/queue3/.cvsignore:
10800         * examples/queue4/.cvsignore:
10801         * examples/retag/.cvsignore:
10802         * examples/thread/.cvsignore:
10803         * examples/typefind/.cvsignore:
10804         * examples/xml/.cvsignore:
10805         * gst/.cvsignore:
10806         * gst/autoplug/.cvsignore:
10807         * gst/elements/.cvsignore:
10808         * gst/indexers/.cvsignore:
10809         * gst/parse/.cvsignore:
10810         * gst/registries/.cvsignore:
10811         * gst/schedulers/.cvsignore:
10812         * libs/gst/bytestream/.cvsignore:
10813         * libs/gst/control/.cvsignore:
10814         * libs/gst/getbits/.cvsignore:
10815         * tests/.cvsignore:
10816         * tests/bufspeed/.cvsignore:
10817         * tests/instantiate/.cvsignore:
10818         * tests/memchunk/.cvsignore:
10819         * tests/muxing/.cvsignore:
10820         * tests/sched/.cvsignore:
10821         * tests/seeking/.cvsignore:
10822         * tests/threadstate/.cvsignore:
10823         * testsuite/.cvsignore:
10824         * testsuite/caps/.cvsignore:
10825         * testsuite/cleanup/.cvsignore:
10826         * testsuite/dynparams/.cvsignore:
10827         * testsuite/plugin/.cvsignore:
10828         * tools/.cvsignore:
10829           update - this is huge, because it includes *.bb, *.bbg and *.da files
10830           which are generated for gcov.
10831
10832 2004-01-11  David Schleef  <ds@schleef.org>
10833
10834         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
10835         a function to parse integers in ways that strto[u]l() does not.
10836
10837 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10838
10839         * tools/gst-inspect.c: (print_caps):
10840           improve output of caps a bit
10841
10842 2004-01-11  David Schleef  <ds@schleef.org>
10843
10844         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
10845         inherit correct flags (READONLY and DONTKEEP).
10846
10847 2004-01-11  David Schleef  <ds@schleef.org>
10848
10849         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
10850         (gst_filesrc_map_region):
10851         * gst/gstbuffer.c: (_gst_buffer_initialize),
10852         (_gst_buffer_sub_free), (gst_buffer_default_copy),
10853         (gst_buffer_new), (gst_buffer_create_sub),
10854         (gst_buffer_is_span_fast), (gst_buffer_span):
10855         * gst/gstbuffer.h:
10856         Change GstBuffer private structure element names. (all files)
10857         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
10858         (gst_queue_link):
10859         * gst/gstqueue.h:
10860         Implement getcaps/pad_link functions that handle the case where
10861         there are data in the queue.
10862
10863 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10864
10865         * gst/elements/gstbufferstore.c:
10866           initialize debugging structure correctly
10867         * gst/elements/gsttee.c: (gst_tee_set_property):
10868           g_object_notify when property was changed
10869         * gst/elements/gsttypefindelement.c:
10870         (gst_type_find_element_change_state):
10871           clear caps correctly
10872
10873 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10874
10875         * gst/gstqueue.c: (gst_queue_init):
10876           Use better defaults for when a queue should block. This
10877           gets rid of jerky playback for quite a few files.
10878           It takes more memory.
10879
10880 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10881
10882         (gst_xml_registry_parse_padtemplate):
10883           make critical message slightly more useful
10884
10885 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10886
10887         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
10888         (gst_debug_message_get), (gst_debug_log_default):
10889         * gst/gstinfo.h:
10890           Change gst_debug_log(_valist) to take a const format string.
10891           Change prototype of log function and functions using those to 
10892           take a GstDebugMessage instead of a string that requires using
10893           gst_debug_message_get.
10894
10895 2004-01-08  David Schleef  <ds@schleef.org>
10896
10897         * Makefile.am:
10898         * configure.ac:
10899         Add option --enable-gcov to build GStreamer with -fprofile-arcs
10900         and -ftest-coverage, which allows gcov to show information about
10901         testsuite coverage.
10902
10903 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10904
10905         * gst/gstutils.h:
10906           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
10907           GST_PARENT_CALL_WITH_DEFAULT
10908         * gst/elements/gstaggregator.c: 
10909         * gst/elements/gstbufferstore.c: 
10910         * gst/elements/gstfakesink.c: 
10911         * gst/elements/gstfakesrc.c: 
10912         * gst/elements/gstfdsink.c: 
10913         * gst/elements/gstfdsrc.c: 
10914         * gst/elements/gstfilesink.c: 
10915         * gst/elements/gstfilesrc.c: 
10916         * gst/elements/gstidentity.c: 
10917         * gst/elements/gstmd5sink.c: 
10918         * gst/elements/gstmultidisksrc.c:
10919         * gst/elements/gstpipefilter.c: 
10920         * gst/elements/gstshaper.c:
10921         * gst/elements/gststatistics.c:
10922         * gst/elements/gsttee.c:
10923         * gst/elements/gsttypefindelement.c:
10924           use them.
10925
10926 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10927
10928         * docs/gst/gstreamer-docs.sgml: remove props
10929         * docs/gst/gstreamer-sections.txt: remove props
10930         * docs/gst/tmpl/gst.sgml:
10931         * docs/gst/tmpl/gstbin.sgml:
10932         * docs/gst/tmpl/gstbuffer.sgml:
10933         * docs/gst/tmpl/gstcaps.sgml:
10934         * docs/gst/tmpl/gstclock.sgml:
10935         * docs/gst/tmpl/gstelement.sgml:
10936         * docs/gst/tmpl/gstindex.sgml:
10937         * docs/gst/tmpl/gstobject.sgml:
10938         * docs/gst/tmpl/gstpad.sgml:
10939         * docs/gst/tmpl/gstpadtemplate.sgml:
10940         * docs/gst/tmpl/gstreamer-unused.sgml:
10941         * docs/gst/tmpl/gstthread.sgml:
10942         * docs/gst/tmpl/gstxml.sgml:
10943           sync with code reorganization
10944
10945 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
10946
10947         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10948         Make the 'Could not find compatible pad' message more informative.
10949
10950 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10951                                                                                 
10952         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
10953           Fix for if we pass NULL as property to location.
10954         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
10955         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
10956           Fix for instantiate-test (see below).
10957         * gst/gststructure.c: (_gst_structure_parse_value):
10958           Fix compile error on gcc-2.96.
10959         * configure.ac:
10960         * tests/Makefile.am:
10961         * tests/instantiate/Makefile.am:
10962         * tests/instantiate/create.c: (create_all_elements), (main):
10963           Add a test that instantiates all elements. This makes it easy to
10964           track dead code for old API/design (like setting event functions
10965           on sink pads and so on).
10966
10967 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
10968
10969         * gst/gstcaps.c: (gst_caps_append_structure):
10970           Move the poisoning to allow a NULL structure
10971         * gst/gstevent.c: (_gst_event_free):
10972           When freeing a navigation event, free the structure
10973           also
10974
10975 2004-01-04  David Schleef  <ds@schleef.org>
10976
10977         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10978         Remove usage of gst_pad_proxy_fixate.
10979         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
10980         (gst_caps_split_one), (gst_caps_replace):
10981         Add poisoning code.
10982         * gst/gstmarshal.list:
10983         Add pointer__pointer for fixate signal
10984         * gst/gstpad.c: (gst_real_pad_class_init),
10985         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10986         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
10987         (gst_pad_set_explicit_caps), (gst_pad_template_new):
10988         Add poisoning code. Add fixate signal on RealPad. Change
10989         set_explicit_caps() to take const GstCaps, like try_set_caps().
10990         * gst/gstpad.h:
10991         * testsuite/caps/Makefile.am:
10992         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
10993
10994 2004-01-03  David Schleef  <ds@schleef.org>
10995
10996         * gst/elements/gsttypefindelement.c:
10997         (gst_type_find_element_have_type), (gst_type_find_element_init):
10998         Use gst_pad_use_explicit_caps for src pad.
10999         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11000         before using it.
11001
11002 2004-01-03  David Schleef  <ds@schleef.org>
11003
11004         * gst/gstelement.c: (gst_element_link_pads_filtered),
11005         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11006         that linking was successful.
11007         * gst/gstpad.c: (gst_pad_link_free),
11008         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11009         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11010         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11011         GstPadLinkReturn correctly between functions, and don't fail
11012         when DELAYED is used (DELAYED is very important).  Better
11013         cleanup on unlinking and unnegotiation.  Should fix some spider
11014         bugs.
11015
11016 2004-01-02  David Schleef  <ds@schleef.org>
11017
11018         * gst/gstelement.c: (gst_element_class_init),
11019         (gst_element_base_class_init): ->padtemplates should be cleared
11020         in base_init, since we need to have a fresh list for every
11021         class.  (Alternately, we chould copy the list and share the
11022         actual pad templates (not the list), but that would require
11023         changing every plugin to move pad template registration from
11024         base_init to class_init.)
11025
11026 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11027
11028         * gst/gstelement.c: (gst_element_class_add_pad_template):
11029           Refuse registering a pad template if another pad template
11030           with the same name already exists (#114715).
11031
11032 2004-01-02  David Schleef  <ds@schleef.org>
11033
11034         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11035         (gst_caps_is_equal_fixed): Add new function.
11036         * gst/gstcaps.h: ditto.
11037         * gst/gstpad.c: (gst_real_pad_class_init),
11038         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11039         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11040         check new caps against existing caps -- if they're the same, return
11041         OK without renegotiating.  caps-nego-failed signal fixed so that
11042         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11043         to save an extra caps copy.  Don't complete negotiation if a pad
11044         link function returns DELAYED.
11045
11046 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11047
11048         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11049           Fix wrong g_return_if_fail
11050
11051 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11052
11053         * gst/gstbin.c: (gst_bin_class_init):
11054         Change the marshalling of element_added/element_removed
11055         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11056         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11057
11058 2004-01-01  David Schleef  <ds@schleef.org>
11059
11060         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11061         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11062         (gst_pad_use_explicit_caps):
11063         * gst/gstpad.h:
11064         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11065         to use an internal getcaps and link fuction so that negotiation
11066         always results in the explicitly set caps.
11067         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11068         are particularly useful for decoders.
11069
11070 2003-12-31  David Schleef  <ds@schleef.org>
11071
11072         * gst/elements/gstidentity.c: (gst_identity_class_init),
11073         (gst_identity_init), (gst_identity_chain),
11074         (gst_identity_set_property), (gst_identity_get_property):
11075         * gst/elements/gstidentity.h:
11076         * gst/gstqueue.c: (gst_queue_init):
11077           Negotiation fixes.
11078
11079 2003-12-31  David Schleef  <ds@schleef.org>
11080
11081         * gst/gstcaps.c: (gst_caps_intersect),
11082         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11083           Implement gst_caps_normalize().
11084         * testsuite/caps/normalisation.c: (main):
11085           Add an additional test
11086
11087 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11088
11089         * gst/gstqueue.c: (gst_queue_init):
11090           use gst_pad_proxy_getcaps()
11091
11092 2003-12-31  David Schleef  <ds@schleef.org>
11093
11094         * gst/elements/gstshaper.c: (gst_shaper_link):
11095         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11096         * gst/gstqueue.c: (gst_queue_link):
11097           Negotiation fixes.
11098
11099 2003-12-31  David Schleef  <ds@schleef.org>
11100
11101         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11102         * gst/gstpad.h: Add functions that are useful as default pad
11103         link and fixate functions for elements.
11104
11105 2003-12-30  David Schleef  <ds@schleef.org>
11106
11107         * gst/gstpad.c: (gst_pad_link_try):
11108           Fix segfault when attempting to return to old caps
11109
11110 2003-12-29  David Schleef  <ds@schleef.org>
11111
11112         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11113         (gst_caps_structure_simplify), (gst_caps_simplify):
11114         * gst/gstcaps.h:
11115           Add simplify function
11116         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11117         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11118         * gst/gstpad.h:
11119           Copy over srcnotify, sinknotify when calling old pad_link
11120           functions.  Add new is_negotiated() function.
11121         * gst/gststructure.c: (gst_structure_copy):
11122           Fix an incredibly stupid bug that should have been noticed
11123           weeks ago.  _copy() returned the argument, not the new copy.
11124
11125 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11126
11127         * gst/gstcaps.c: (gst_caps_append):
11128           add sanity checks
11129         * gst/gstcaps.h: (gst_caps_debug):
11130           remove, it doesn't exist anymore.
11131         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11132         (gst_element_threadsafe_properties_post_run):
11133           make debugging messages not clutter up THREAD debug category
11134         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11135         (gst_element_change_state):
11136           update to new caps API
11137         * gst/gstinterface.c: (gst_implements_interface_cast):
11138           don't put vital code in g_return_if_fail
11139         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11140         (gst_pad_link_filtered):
11141           add pst_pad_try_link and use it.
11142         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11143           implement correctly, deprecate first one.
11144         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11145           add and implement.
11146         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11147           implement.
11148         (gst_pad_get_negotiated_caps):
11149           add and implement. Make GST_PAD_CAPS call this function.
11150         (gst_pad_get_caps):
11151           remove unneeded check..
11152         (gst_pad_recover_caps_error):
11153           disable, always return FALSE.
11154         (gst_real_pad_dispose):
11155           don't free caps and appfilter anymore, they're unused.
11156         * gst/gstpad.h:
11157           Reflect changes mentioned above.
11158         * gst/gstsystemclock.c: (gst_system_clock_wait):
11159           Make 'clock is way behind' a debugging message.
11160         * gst/gstthread.c: (gst_thread_change_state):
11161           Fix debugging message
11162
11163 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11164
11165         * gst/gstinfo.h:
11166           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11167         * docs/gst/tmpl/gstreamer-unused.sgml:
11168           removed all traces of cvs conflicts
11169
11170 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11171
11172         * configure.ac:
11173         * gst/schedulers/cothreads_compat.h:
11174         * libs/Makefile.am:
11175           remove last instances of wingo cothread usage
11176
11177 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11178
11179         * gst/gstplugin.c:
11180         * gst/gstversion.h.in:
11181         * gst/parse/grammar.y:
11182           change comment block from /** to /* when not gtk-doc comments
11183
11184 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11185
11186         * gst/gst.c: whitespace and doc style fixes
11187
11188 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11189
11190         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11191
11192 2003-12-24  Colin Walters  <walters@verbum.org>
11193
11194         * gst/elements/gsttypefindelement.c:
11195           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11196           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11197           Don't double-free caps.
11198
11199 2003-12-23  David Schleef  <ds@schleef.org>
11200
11201         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11202           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11203           Many little fixes and additions of debug statements to
11204           get rhythmbox working.
11205
11206 2003-12-23  Colin Walters  <walters@verbum.org>
11207
11208         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11209         Use GST_PAD_LINK_SUCCESSFUL.
11210
11211 2003-12-23  David Schleef  <ds@schleef.org>
11212
11213         * gst/elements/gstaggregator.c:
11214         * gst/elements/gsttee.c:
11215           Use gst_pad_proxy_getcaps().
11216         * gst/gstpad.c:
11217         * gst/gstpad.h:
11218           Add gst_pad_proxy_getcaps(), which filter elements can use
11219           as a generic getcaps implementation.
11220           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11221           was advertised.
11222
11223 2003-12-23  David Schleef  <ds@schleef.org>
11224
11225         * gst/gstpad.c:
11226           Rearrange/rewrite much of the pad negotiation code, since it
11227           resembled pasta.  This actually changes the way some
11228           negotiation works, since the previous code was inconsistent
11229           depending on how it was invoked.  Add (internal) structure
11230           GstPadLink, which is used to hold some information (more in
11231           the future) about the link between two pads.  Fixes a number
11232           of bugs, including random lossage of filter caps when the
11233           initial negotiation is delayed.  A few functions are still
11234           unimplemented.
11235         * gst/gstpad.h:
11236           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11237           these when testing GstPadLinkReturn values instead of comparing
11238           directly.
11239
11240 2003-12-23  David Schleef  <ds@schleef.org>
11241
11242         * gst/gstvalue.c: 
11243         * gst/gstvalue.h:
11244           Rearrange lots of code.  Change registration of compare function
11245           into registration of compare/serialize/deserialize functions.
11246           Doesn't include implementation of gst_value_[de]serialize(),
11247           but that should be easy.
11248
11249 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11250
11251         * docs/gst/gstreamer-sections.txt:
11252         * docs/gst/tmpl/gstprops.sgml: removed
11253         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11254           David removed props and caps code, so let's remove their docs as well.
11255           Removed all no longer existing symbols from gstreamer-sections.txt
11256           
11257 2003-12-22  Colin Walters  <walters@verbum.org>
11258
11259         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11260           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11261           of tags directly.
11262
11263 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11264
11265         * gst/elements/gstelements.c:
11266           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11267         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11268           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11269           gst_caps (peer).
11270
11271 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11272
11273         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11274         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11275         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11276         (gst_spider_identity_sink_loop_type_finding):
11277         * gst/autoplug/gstspideridentity.h:
11278           Fix autoplugging in spider element, so it works with new caps.
11279           This was mainly caused by identifying empty caps incorrectly.
11280
11281 2003-12-22  David Schleef  <ds@schleef.org>
11282
11283         * gststructure.c, gstvalue.c, gstvalue.h: Add
11284           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11285           using g_value_copy()
11286
11287 2003-12-21  David Schleef  <ds@schleef.org>
11288
11289         * many, many files: Merge CAPS branch.  This includes:
11290           - implemention of GstValue and several GstValue types
11291           - implemention of GstStructure
11292           - entire rewrite of GstCaps
11293           - removal of GstProps
11294           - many changes to GstPad to compensate for new caps paradigm
11295           - removal of GstBufferpool
11296         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11297         gstvalue.h, gst/gstcaps[2]*.[ch]:
11298           - rename gstcaps2.[ch] to gstcaps.[ch]
11299
11300 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11301
11302         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11303         (gst_queue_chain), (gst_queue_handle_src_event):
11304           implement timeout for sending events. Workaround for if the
11305           pipeline on this queue is not passing any data.
11306
11307 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11308                                                                                 
11309         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11310         * moved CVS to freedesktop.org
11311