check/gst/gstcaps.c: Testcase to show error in buffer-on-caps serialisation.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-20  Wim Taymans  <wim@fluendo.com>
2
3         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
4         Testcase to show error in buffer-on-caps serialisation.
5
6 2005-06-20  Andy Wingo  <wingo@pobox.com>
7
8         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
9         will be adding to later.
10
11         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
12         if its socks fill with rocks.
13         (gst_system_clock_obtain): Set the name on object construction.
14         Avoid double-checked locking.
15
16 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
17
18         * gst/gsturi.c: (gst_element_make_from_uri):
19           Fix potential endless loop.
20
21 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
22
23         * check/Makefile.am:
24           add gsttag
25         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
26         (main):
27           move over from testsuite dir and clean up
28         * configure.ac:
29         * gst/gsttag.c:
30         * testsuite/Makefile.am:
31         * testsuite/tags/.cvsignore:
32         * testsuite/tags/Makefile.am:
33         * testsuite/tags/merge.c:
34           remove testsuite/tags
35
36 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
37
38         * docs/gst/gstreamer-sections.txt:
39         * docs/gst/tmpl/gstenumtypes.sgml:
40         * win32/gstenumtypes.c:
41           clean up documentation build a little
42
43 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
44
45         * check/gstcheck.h:
46           add macros for checking refcounts on objects and caps
47         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
48           add some more unit tests
49         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
50         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
51           fix leaked refcounts (I hope :)) so unittest works
52         * gst/gstpad.h:
53           whitespace removal
54
55 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
56
57         * configure.ac: back to HEAD
58
59 === release 0.9.1 ===
60
61 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
62
63         * NEWS:
64         * RELEASE:
65           updated
66
67 2005-06-17  Andy Wingo  <wingo@pobox.com>
68
69         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
70         assert; it's always possible that the pad gets deactivated in
71         between the checks in gstpad.c and the implementation. Rely on
72         finish_preroll() to return a FLUSHING or similar instead of on the
73         assert.
74         
75         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
76         clock and post an EOS message if we come out of finish_preroll in
77         the playing state.
78
79 2005-06-16  David Schleef  <ds@schleef.org>
80
81         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
82         (gst_capsfilter_set_property): Allow NULL as possible value
83         for filter_caps property, indicating GST_CAPS_ANY.
84
85 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
86
87         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
88           fix debug output
89         * gst/schedulers/Makefile.am:
90           use libgst prefix
91         * gstreamer.spec.in:
92           fix spec for it
93
94 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
95
96         * gstreamer.spec.in:
97           clean up
98
99 2005-06-08  Andy Wingo  <wingo@pobox.com>
100
101         * gst/gstutils.c: RPAD fixes all around.
102         (gst_element_link_pads): Refcounting fixes.
103
104         * tools/gst-inspect.c:
105         * tools/gst-xmlinspect.c:
106         * parse/grammar.y:
107         * gst/base/gsttypefindhelper.c:
108         * gst/base/gstbasesink.c:
109         * gst/gstqueue.c: RPAD fixes.
110
111         * gst/gstghostpad.h:
112         * gst/gstghostpad.c: New ghost pad implementation as full proxy
113         pads. The tricky thing is they provide both source and sink
114         interfaces, since they proxy the internal pad for the external
115         pad, and vice versa. Implement with lower-level ProxyPad objects,
116         with the interior proxy pad as a child of the exterior ghost pad.
117         Should write a doc on this.
118         
119         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
120         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
121         gst_object API.
122         
123         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
124         pads are real pads. No ghost pads in this file. Not documenting
125         the myriad s/RPAD/PAD/ and REALIZE fixes.
126         (gst_pad_class_init): Add properties for "direction" and
127         "template". Both are construct-only, so they can't change during
128         the life of the pad. Fixes properly deriving from GstPad.
129         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
130         derived objects, just set properties when creating the objects via
131         g_object_new.
132         (gst_pad_get_parent): Implement as a function, return NULL if the
133         parent is not an element.
134         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
135         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
136         
137         * gst/gstobject.c (gst_object_class_init): Make name a construct
138         property. Don't set it in the object init.
139
140         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
141         with UNKNOWN direction.
142         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
143         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
144         (gst_element_remove_pad): Remove ghost-pad special cases.
145         (gst_element_pads_activate): Remove rpad cruft.
146
147         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
148         catch the pad's-parent-not-an-element case.
149
150         * gst/gst.h: Include gstghostpad.h.
151
152         * gst/gst.c (init_post): No more real, ghost pads.
153
154         * gst/Makefile.am: Add gstghostpad.[ch].
155
156         * check/Makefile.am:
157         * check/gst/gstbin.c:
158         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
159         into a bin creates ghost pads, and that the refcounts are right.
160         Partly moved from gstbin.c.
161
162 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
163
164         * check/gst-libs/.cvsignore:
165         * check/gst/.cvsignore:
166         * check/pipelines/.cvsignore:
167           ignore more
168         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
169         (START_TEST), (cleanup_suite), (main):
170           add some tests related to cleanup after running pipelines
171
172 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
173
174         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
175           add a testsuite for GstBuffer
176
177 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
178
179         * gst/gstminiobject.h:
180           add defines for accessing the refcount
181
182 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
183
184         * Makefile.am: added support for html unit test coverage reports
185
186 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
187
188         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
189           Free existing caps if the capsfilter changes. Add a FIXME about
190           setting those caps on the pads.
191
192         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
193           Before adding a ghost pad to a parent bin, check that there isn't
194           already one for the element on the bin. Prevents infinite recursion
195           when using decodebin in parse pipelines. Andy says he'll rewrite the
196           way this works anyway, so ignore the hack.
197
198 2005-06-02  Andy Wingo  <wingo@pobox.com>
199
200         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
201         file size, pass it on to the type find helper.
202
203         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
204         segment_start and segment_end properly according to the seek
205         method. Segment_end is still a bit flaky because offset can be
206         negative for CUR and END cases, but it takes -1 as an "unset"
207         value.
208
209 2005-06-02  Wim Taymans  <wim@fluendo.com>
210
211         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
212         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
213         (gst_basesink_activate):
214         * gst/base/gstbasesink.h:
215         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
216         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
217         (gst_pad_query), (gst_pad_start_task):
218         * gst/gstpad.h:
219         * gst/gstqueue.c: (gst_queue_bufferalloc),
220         (gst_queue_handle_sink_event), (gst_queue_chain):
221         Bufferalloc: return GstFlowReturn to more accuratly report
222         why allocation failed.
223
224 2005-06-02  Wim Taymans  <wim@fluendo.com>
225
226         * gst/gstpipeline.c: (gst_pipeline_send_event):
227         Take snapshot of state without blocking.
228
229 2005-06-02  Wim Taymans  <wim@fluendo.com>
230
231         * docs/design/part-TODO.txt:
232         * docs/design/part-caps.txt:
233         * docs/design/part-clocks.txt:
234         * docs/design/part-negotiation.txt:
235         * docs/design/part-preroll.txt:
236         Small doc updates 
237
238 2005-05-30  Wim Taymans  <wim@fluendo.com>
239
240         * gst/elements/gstidentity.c: (gst_identity_event),
241         (gst_identity_transform), (gst_identity_get_property):
242         Protect last_message property as it is accessed from
243         multiple threads.
244
245 2005-05-30  Wim Taymans  <wim@fluendo.com>
246
247         * gst/gstelement.c: (gst_element_init),
248         (gst_element_pads_activate), (gst_element_change_state):
249         Slicker pad activation code.
250
251 2005-05-30  Wim Taymans  <wim@fluendo.com>
252
253         * gst/Makefile.am:
254         * gst/gstelement.h:
255         * gst/gstelementfactory.h:
256         * gst/gsttypes.h:
257         Move elementfactory methods to separate .h file.
258
259 2005-05-30  Wim Taymans  <wim@fluendo.com>
260
261         * docs/design/part-overview.txt:
262         * gst/gstsystemclock.h:
263         Small typo fixes, doc updates.
264
265 2005-05-30  Wim Taymans  <wim@fluendo.com>
266
267         * gst/gst.c: (gst_init_get_popt_table), (init_post),
268         (init_popt_callback):
269         Remove cpu-opt flag.
270
271 2005-05-30  Wim Taymans  <wim@fluendo.com>
272
273         * gst/gstbuffer.c: (gst_subbuffer_finalize),
274         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
275         * gst/gstbuffer.h:
276         Avoid typechecking in places where not needed.
277         Added accessor for malloc_data.
278
279 2005-05-30  Wim Taymans  <wim@fluendo.com>
280
281         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
282         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
283         (gst_pad_configure_sink), (gst_pad_configure_src),
284         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
285         (gst_pad_start_task):
286         Propagate errors from _set_caps() in configure_src/sink
287         functions instead of returning TRUE.
288         FLUSH events can travel up and downstream
289
290
291 2005-05-30  Wim Taymans  <wim@fluendo.com>
292
293         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
294         (gst_basesink_activate):
295         Handle EOS in preroll.
296
297 2005-05-30  Wim Taymans  <wim@fluendo.com>
298
299         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
300         (gst_queue_loop), (gst_queue_handle_src_event):
301         Remove old pieces of code
302         Flushing the queue in an upstream event is a very bad idea.
303
304 2005-05-26  Andy Wingo  <wingo@pobox.com>
305
306         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
307         gst_value_set_mini_object so as to add a ref on the object (which
308         will be removed when the value is unset).
309
310         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
311         arg type in ::handoff.
312
313         * gst/gstelement.c (gst_element_change_state): Also deactivate
314         pads in READY->NULL, just in case the element didn't make it to
315         PAUSED. Wingo tested, Wim approved.
316
317 2005-05-26  Wim Taymans  <wim@fluendo.com>
318
319         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
320         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
321         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
322         A flushing pad cannot be used to alloc_buffer from.
323
324 2005-05-26  Wim Taymans  <wim@fluendo.com>
325
326         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
327         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
328         (gst_bus_source_dispatch), (gst_bus_source_finalize),
329         (gst_bus_create_watch), (gst_bus_add_watch_full):
330         * gst/gstbus.h:
331         Implement a real GSource and use g_main_context_wakeup() to
332         signal new messages instead of the socketpair.
333
334 2005-05-25  Wim Taymans  <wim@fluendo.com>
335
336         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
337         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
338         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
339         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
340         (gst_pad_send_event), (gst_pad_start_task):
341         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
342         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
343         (gst_queue_sink_activate), (gst_queue_src_activate),
344         (gst_queue_change_state):
345         * gst/gstqueue.h:
346         Fix state changes for non sinks. We now change sinks, then elements
347         with unconnected srcpads, then the rest.
348         More efficient queue unlocking in flush and state changes.
349         Set the pad activate mode even if it does not have an activate
350         function.
351
352 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
353
354         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
355           Don't go in pull mode for non-seekable sources.
356         * gst/elements/gsttypefindelement.h:
357         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
358         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
359         (free_entry), (stop_typefinding),
360         (gst_type_find_element_handle_event), (find_peek),
361         (gst_type_find_element_chain), (do_pull_typefind),
362         (gst_type_find_element_change_state):
363           Allow typefinding (w/o seeking) in push-mode, simplified version
364           of what was in 0.8.
365         * gst/gstutils.c: (gst_buffer_join):
366         * gst/gstutils.h:
367           gst_buffer_join() from 0.8.
368
369 2005-05-25  Wim Taymans  <wim@fluendo.com>
370
371         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
372         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
373         (gst_pad_send_event), (gst_pad_start_task):
374         Disable attempt at mode switching until it is figured out.
375
376 2005-05-25  Wim Taymans  <wim@fluendo.com>
377
378         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
379         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
380         (gst_basesink_finish_preroll), (gst_basesink_chain),
381         (gst_basesink_loop), (gst_basesink_activate),
382         (gst_basesink_change_state):
383         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
384         (gst_basesrc_get_range), (gst_basesrc_loop),
385         (gst_basesrc_activate):
386         * gst/elements/gsttee.c: (gst_tee_sink_activate):
387         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
388         (gst_real_pad_init), (gst_real_pad_set_property),
389         (gst_real_pad_get_property), (gst_pad_set_active),
390         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
391         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
392         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
393         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
394         (gst_pad_event_default_dispatch), (gst_pad_event_default),
395         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
396         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
397         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
398         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
399         (gst_pad_stop_task):
400         * gst/gstpad.h:
401         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
402         (gst_queue_loop), (gst_queue_src_activate):
403         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
404         (gst_task_get_state):
405         * gst/gsttask.h:
406         * gst/schedulers/threadscheduler.c:
407         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
408         Implement gst_pad_pause/start/stop_task(), take STREAM lock
409         in task function.
410         Remove ACTIVE pad flag, use FLUSHING everywhere
411         Added _pad_chain(), _pad_get_range() to call chain/getrange 
412         functions.
413         Add locks around IS_FLUSHING when reading.
414         Take STREAM lock in chain(), get_range() functions so plugins
415         don't need to take it anymore.
416         
417
418
419 2005-05-25  Wim Taymans  <wim@fluendo.com>
420
421         * tools/gst-launch.c: (event_loop):
422         Unref message after using its contents instead of
423         before.
424
425 2005-05-24  Wim Taymans  <wim@fluendo.com>
426
427         * docs/design/draft-ghostpads.txt:
428         * docs/design/draft-push-pull.txt:
429         * docs/design/draft-query.txt:
430         * docs/design/part-overview.txt:
431         Docs updates, added general overview doc.
432
433 2005-05-21  David Schleef  <ds@schleef.org>
434
435         * docs/gst/tmpl/old/GstBin.sgml:
436         * docs/gst/tmpl/old/GstBuffer.sgml:
437         * docs/gst/tmpl/old/GstCaps.sgml:
438         * docs/gst/tmpl/old/GstClock.sgml:
439         * docs/gst/tmpl/old/GstCompat.sgml:
440         * docs/gst/tmpl/old/GstData.sgml:
441         * docs/gst/tmpl/old/GstElement.sgml:
442         * docs/gst/tmpl/old/GstEvent.sgml:
443         * docs/gst/tmpl/old/GstIndex.sgml:
444         * docs/gst/tmpl/old/GstStructure.sgml:
445         * docs/gst/tmpl/old/GstTag.sgml:
446         * docs/gst/tmpl/old/cothreads.sgml:
447         * docs/gst/tmpl/old/cothreads_compat.sgml:
448         * docs/gst/tmpl/old/gettext.sgml:
449         * docs/gst/tmpl/old/gobject2gtk.sgml:
450         * docs/gst/tmpl/old/grammar.tab.sgml:
451         * docs/gst/tmpl/old/gst-i18n-app.sgml:
452         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
453         * docs/gst/tmpl/old/gst_private.sgml:
454         * docs/gst/tmpl/old/gstaggregator.sgml:
455         * docs/gst/tmpl/old/gstarch.sgml:
456         * docs/gst/tmpl/old/gstatomic_impl.sgml:
457         * docs/gst/tmpl/old/gstbufferstore.sgml:
458         * docs/gst/tmpl/old/gstdata_private.sgml:
459         * docs/gst/tmpl/old/gstdisksink.sgml:
460         * docs/gst/tmpl/old/gstdisksrc.sgml:
461         * docs/gst/tmpl/old/gstelementfactory.sgml:
462         * docs/gst/tmpl/old/gstextratypes.sgml:
463         * docs/gst/tmpl/old/gstfakesink.sgml:
464         * docs/gst/tmpl/old/gstfakesrc.sgml:
465         * docs/gst/tmpl/old/gstfdsink.sgml:
466         * docs/gst/tmpl/old/gstfdsrc.sgml:
467         * docs/gst/tmpl/old/gstfilesink.sgml:
468         * docs/gst/tmpl/old/gstfilesrc.sgml:
469         * docs/gst/tmpl/old/gsthttpsrc.sgml:
470         * docs/gst/tmpl/old/gstidentity.sgml:
471         * docs/gst/tmpl/old/gstindexfactory.sgml:
472         * docs/gst/tmpl/old/gstmarshal.sgml:
473         * docs/gst/tmpl/old/gstmd5sink.sgml:
474         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
475         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
476         * docs/gst/tmpl/old/gstpadtemplate.sgml:
477         * docs/gst/tmpl/old/gstpipefilter.sgml:
478         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
479         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
480         * docs/gst/tmpl/old/gstshaper.sgml:
481         * docs/gst/tmpl/old/gstspider.sgml:
482         * docs/gst/tmpl/old/gstspideridentity.sgml:
483         * docs/gst/tmpl/old/gststatistics.sgml:
484         * docs/gst/tmpl/old/gsttee.sgml:
485         * docs/gst/tmpl/old/gsttimecache.sgml:
486         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
487         * docs/gst/tmpl/old/gstxmlregistry.sgml:
488         * docs/gst/tmpl/old/gthread-cothreads.sgml:
489         * docs/gst/tmpl/old/types.sgml:
490           I didn't intend to add these or check them in.
491
492 2005-05-19  David Schleef  <ds@schleef.org>
493
494         * configure.ac: Use -no-common everywhere.  In a sane world, it
495           would be the default in libtool, because without it, you can't
496           build DLLs on Windows.
497         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
498         * docs/gst/gstreamer-sections.txt:
499         * docs/gst/tmpl/gstcpu.sgml:
500         * docs/gst/tmpl/gstdata.sgml:
501         * docs/gst/tmpl/gstthread.sgml:
502
503 2005-05-19  David Schleef  <ds@schleef.org>
504
505         * gst/gstminiobject.c: (gst_value_set_mini_object),
506         (gst_value_take_mini_object), (gst_value_get_mini_object):
507         * gst/gstminiobject.h: Add GValue set/get functions.
508
509 2005-05-19  Wim Taymans  <wim@fluendo.com>
510
511         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
512         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
513         (gst_subbuffer_init), (gst_buffer_is_span_fast):
514         * gst/gstbuffer.h:
515         * gst/gstbus.c: (gst_bus_post):
516         * gst/gstelement.c: (gst_element_get_random_pad):
517         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
518         Make subbufer unref the parent in finalize.
519         some more debugging info.
520
521
522 2005-05-19  Wim Taymans  <wim@fluendo.com>
523
524         * gst/base/gstbasesink.c: (gst_basesink_class_init),
525         (gst_basesink_init), (gst_basesink_finalize),
526         (gst_basesink_activate), (gst_basesink_change_state):
527         Don't free preroll queue too early.
528
529 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
530
531         * gst/Makefile.am:
532         * gst/ROADMAP:
533           Hi, I'm outdated. Please shoot me.
534
535 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
536
537         * gst/gstpipeline.c: (gst_pipeline_send_event):
538           Do not access variables after they have been deleted.
539
540 2005-05-19  Wim Taymans  <wim@fluendo.com>
541
542         * tools/gst-inspect.c: (print_plugin_features):
543         A plugin feature does unfortunatly not use the
544         object name yet...
545
546 2005-05-18  Wim Taymans  <wim@fluendo.com>
547
548         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
549         Port _span() functions to new subbuffers.
550
551 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
552
553         * gst/gstbin.c: (gst_bin_add_func):
554           Fix clock settery in bins when adding kids after the clock has
555           been selected.
556
557 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
558
559         * gst/elements/gstidentity.c: (gst_identity_class_init):
560           Workaround until signals support GstMiniObject.
561
562 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
563
564         * gst/gstbuffer.c:
565         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
566
567 2005-05-18  Wim Taymans  <wim@fluendo.com>
568
569         * gst/base/Makefile.am:
570         * gst/base/gstadapter.c: (gst_adapter_base_init),
571         (gst_adapter_class_init), (gst_adapter_init),
572         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
573         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
574         (gst_adapter_flush), (gst_adapter_available),
575         (gst_adapter_available_fast):
576         * gst/base/gstadapter.h:
577         Ported and added adapter to the base classes.
578
579 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
580
581         * gst/gst.c:
582         * gst/gstmessage.c:
583           Make sure the class is reffed/unreffed once before threads can be
584           used.  Fixes #304551.
585
586 2005-05-17  Wim Taymans  <wim@fluendo.com>
587
588         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
589         (gst_basesink_chain_unlocked), (gst_basesink_activate):
590         * gst/gstminiobject.c: (gst_mini_object_get_type),
591         (gst_mini_object_free):
592         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
593         (gst_pad_push), (gst_pad_push_event):
594         * gst/gstqueue.c: (gst_queue_change_state):
595         Don't queue buffers in basesink when we are flushing.
596         Unref buffer when flushing in basesink.
597         Flush queue when going to READY
598         Unref buffer when _push() returns an error.
599         Don't free MiniObject instance when refcount is incremented
600         in _finalize() so that we can recover objects.
601
602 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
603
604         * docs/manual/advanced-schedulers.xml:
605         * docs/manual/appendix-checklist.xml:
606         * docs/pwg/advanced-clock.xml:
607         * docs/pwg/advanced-interfaces.xml:
608         * docs/pwg/advanced-request.xml:
609         * docs/pwg/advanced-types.xml:
610         * docs/pwg/intro-preface.xml:
611         * examples/plugins/example.c: (gst_example_get_type),
612         (gst_example_class_init), (gst_example_chain),
613         (gst_example_set_property), (gst_example_get_property),
614         (gst_example_change_state), (plugin_init):
615         * examples/plugins/example.h:
616           small doc fixes
617
618 2005-05-17  Wim Taymans  <wim@fluendo.com>
619
620         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
621         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
622         * gst/gstqueue.c: (gst_queue_change_state):
623         Clear queue when going to READY.
624         Remove IN_SETCAPS flag too.
625
626 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
627
628         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
629           Remove implicit cast from gboolean to GstElementStateReturn;
630           make sure we still return failure in paused => ready case if
631           the parent class fails to change state and our own stop 
632           vfunc succeeds.
633
634 2005-05-17  Wim Taymans  <wim@fluendo.com>
635
636         * tools/gst-launch.c: (event_loop):
637         Message was unreffed too soon.
638
639 2005-05-16  Andy Wingo  <wingo@pobox.com>
640
641         * gst/gstbin.c (sink_iterator_filter): Err... um...
642
643         * check/gst/gstbin.c (test_ghost_pads): New test for the
644         ghosting-if-elements-not-in-same-bin behavior.
645
646 2005-05-16  David Schleef  <ds@schleef.org>
647
648         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
649         accessing refcount directly.
650
651 2005-05-15  David Schleef  <ds@schleef.org>
652
653         * check/Makefile.am: remove GstData checks
654         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
655         * gst/Makefile.am: add miniobject, remove data
656         * gst/gst.h: add miniobject, remove data
657         * gst/gstdata.c: remove
658         * gst/gstdata.h: remove
659         * gst/gstdata_private.h: remove
660         * gst/gsttypes.h: remove GstEvent and GstMessage
661         * gst/gstelement.c: (gst_element_post_message): fix for API changes
662         * gst/gstmarshal.list: change BOXED -> OBJECT
663
664         Implement GstMiniObject.
665         * gst/gstminiobject.c:
666         * gst/gstminiobject.h:
667
668         Modify to be subclasses of GstMiniObject.
669         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
670         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
671         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
672         (gst_subbuffer_get_type), (gst_subbuffer_init),
673         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
674         (gst_buffer_span):
675         * gst/gstbuffer.h:
676         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
677         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
678         (_gst_event_copy), (gst_event_new):
679         * gst/gstevent.h:
680         * gst/gstmessage.c: (_gst_message_initialize),
681         (gst_message_get_type), (gst_message_class_init),
682         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
683         (gst_message_new), (gst_message_new_error),
684         (gst_message_new_warning), (gst_message_new_tag),
685         (gst_message_new_state_changed), (gst_message_new_application):
686         * gst/gstmessage.h:
687         * gst/gstprobe.c: (gst_probe_perform),
688         (gst_probe_dispatcher_dispatch):
689         * gst/gstprobe.h:
690         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
691         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
692         (_gst_query_copy), (gst_query_new):
693
694         Update elements for GstData -> GstMiniObject changes
695         * gst/gstquery.h:
696         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
697         (gst_queue_chain), (gst_queue_loop):
698         * gst/elements/gstbufferstore.c:
699         (gst_buffer_store_add_buffer_func),
700         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
701         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
702         (gst_fakesink_render):
703         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
704         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
705         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
706         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
707         (gst_filesrc_create_read):
708         * gst/elements/gstidentity.c: (gst_identity_class_init):
709         * gst/elements/gsttypefindelement.c:
710         (gst_type_find_element_src_event), (free_entry_buffers),
711         (gst_type_find_element_handle_event):
712         * libs/gst/dataprotocol/dataprotocol.c:
713         (gst_dp_header_from_buffer):
714         * libs/gst/dataprotocol/dataprotocol.h:
715         * libs/gst/dataprotocol/dp-private.h:
716
717 2005-05-15  David Schleef  <ds@schleef.org>
718
719         * gst/elements/gstelements.c: Don't include headers that were
720         just removed.
721
722 2005-05-15  David Schleef  <ds@schleef.org>
723
724         * gst/elements/Makefile.am: Remove some elements that don't
725         need to be in the core (or even exist at all).
726         * gst/elements/gstaggregator.c:
727         * gst/elements/gstaggregator.h:
728         * gst/elements/gstmd5sink.c:
729         * gst/elements/gstmd5sink.h:
730         * gst/elements/gstmultifilesrc.c:
731         * gst/elements/gstmultifilesrc.h:
732         * gst/elements/gstpipefilter.c:
733         * gst/elements/gstpipefilter.h:
734         * gst/elements/gstshaper.c:
735         * gst/elements/gstshaper.h:
736         * gst/elements/gststatistics.c:
737         * gst/elements/gststatistics.h:
738         * po/POTFILES.in: Remove above files.
739
740 2005-05-14  Andy Wingo  <wingo@pobox.com>
741
742         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
743         so as to get the refs right.
744         (sink_iterator_filter): New function, wraps bin_element_is_sink,
745         unreffing objects that don't pass the filter.
746
747         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
748         gst_element_set_bus.
749         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
750         normal cases, this will destroy the bus.
751
752         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
753         object.
754
755         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
756         has no sinks.
757
758 2005-05-13  Andy Wingo  <wingo@pobox.com>
759
760         * gst/gstutils.c (gst_element_link_pads): Instead of calling
761         gst_pad_link, call pad_link_maybe_ghosting,
762         (pad_link_maybe_ghosting): Links pads, making sure that the
763         elements being linked are in the same bin.
764         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
765         Helpers for pad_link_maybe_ghosting.
766
767 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
768
769         * configure.ac:
770           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
771
772 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
773
774         * docs/design/part-element-source.txt:
775           Mention GstPushSrc
776
777 2005-05-12  Wim Taymans  <wim@fluendo.com>
778
779         * gst/base/gstbasesink.c: (gst_basesink_init),
780         (gst_basesink_activate):
781         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
782         (gst_basesrc_is_seekable):
783         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
784         (bin_element_is_sink), (gst_bin_change_state):
785         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
786         * gst/gstelement.h:
787         Identify sinks by their flag to avoid overly complicated
788         checks (fow now).
789         Do state changes even for elements not reachable from the
790         sinks.
791         BaseSink is a sink now :)
792         Some more debugging info in the basesrc.
793
794
795 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
796
797         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
798           Implement _query on a bin, similar to _send_event.
799
800 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
801
802         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
803           Discont event offset format should be GST_FORMAT_BYTES,
804           not GST_FORMAT_TIME.
805
806 2005-05-12  Wim Taymans  <wim@fluendo.com>
807
808         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
809         Same fix as Ronald's but without the signal. 
810
811 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
812
813         * gst/gstutils.c: (gst_element_query_position):
814           No, an element is not a pad.
815
816 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
817
818         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
819         (gst_bin_get_state):
820           If a child is removed from a bin while we remove the child from
821           the bin and while we're retrieving its state, signal this to the
822           get_state function so we abort the wait (instead of waiting for
823           a timeout) and can immediately re-iterate over all other elements.
824
825 2005-05-12  Wim Taymans  <wim@fluendo.com>
826
827         * gst/base/Makefile.am:
828         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
829         (gst_basesrc_start):
830         * gst/base/gstbasesrc.h:
831         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
832         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
833         (gst_pushsrc_init), (gst_pushsrc_create):
834         * gst/base/gstpushsrc.h:
835         Added is_seekable to BaseSrc
836         Added simple PushSrc.
837
838 2005-05-11  Wim Taymans  <wim@fluendo.com>
839
840         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
841         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
842         (gst_element_link_pads), (gst_element_query_position),
843         (gst_element_query_convert), (intersect_caps_func),
844         (gst_pad_query_position), (gst_pad_query_convert):
845         Fix refcounting in utils function.
846         No point in trying to activate a pad when it's added, it could
847         be added from the state change function and then we deadlock, the
848         element has to decide what to do.
849
850 2005-05-10  Andy Wingo  <wingo@pobox.com>
851
852         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
853         *all* the arguments.
854
855         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
856         stream lock if it's a FLUSH_DONE; normal flushes don't get the
857         lock (according to the docs -- if this is wrong change the docs).
858
859         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
860         flush messages in the NULL state.
861
862         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
863         message immediately and return.
864         (gst_bus_set_flushing): New function. If a bus is flushing, it
865         flushes out any queued messages and immediately unrefs new
866         messages. This is so when an element goes to NULL, all of the
867         unhandled messages coming from it can be freed, and their
868         references to the element dropped. In other words: message source
869         ref considered harmful :P
870
871         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
872         we're finished with it.
873
874         * gst/gstmessage.c (gst_message_new_state_changed): 
875
876 2005-05-10  Wim Taymans  <wim@fluendo.com>
877
878         * gst/gstvalue.c: (gst_value_compare_flags),
879         (gst_value_serialize_flags), (gst_value_deserialize_flags),
880         (_gst_value_initialize):
881         Added flags serialize/deserialize/compare code.
882
883 2005-05-09  Andy Wingo  <wingo@pobox.com>
884
885         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
886         Intersect the peer's caps with our caps.
887
888 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
889
890         * gst/base/gsttypefindhelper.c: (helper_find_peek):
891         * gst/elements/gsttypefindelement.c: (find_peek):
892           Handle negative offsets better. Fixes decodebin.
893
894 2005-05-09  Wim Taymans  <wim@fluendo.com>
895
896         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
897         (gst_base_transform_event):
898         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
899         Implement accept_caps.
900         Fix silly lock/unlock mismatch in base class.
901
902 2005-05-09  Wim Taymans  <wim@fluendo.com>
903
904         * docs/design/draft-push-pull.txt:
905         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
906         * gst/elements/gstfilesink.c: (gst_filesink_init),
907         (gst_filesink_query):
908         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
909         (gst_type_find_handle_src_query), (find_element_get_length):
910         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
911         * gst/gstelement.h:
912         * gst/gstmessage.c:
913         * gst/gstmessage.h:
914         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
915         (gst_real_pad_get_caps_unlocked),
916         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
917         (gst_pad_event_default_dispatch), (gst_pad_event_default),
918         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
919         (gst_real_pad_dispose), (gst_real_pad_finalize),
920         (gst_pad_load_and_link), (gst_pad_save_thyself),
921         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
922         (gst_pad_check_pull_range), (gst_pad_pull_range),
923         (gst_pad_template_get_type), (gst_pad_template_class_init),
924         (gst_pad_template_init), (gst_pad_template_dispose),
925         (name_is_valid), (gst_static_pad_template_get),
926         (gst_pad_template_new), (gst_static_pad_template_get_caps),
927         (gst_pad_template_get_caps), (gst_pad_set_element_private),
928         (gst_pad_get_element_private), (gst_pad_start_task),
929         (gst_pad_pause_task), (gst_pad_stop_task),
930         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
931         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
932         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
933         (gst_ghost_pad_new):
934         * gst/gstpad.h:
935         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
936         (gst_query_new_position), (gst_query_set_position),
937         (gst_query_parse_position), (gst_query_new_convert),
938         (gst_query_set_convert), (gst_query_parse_convert):
939         * gst/gstquery.h:
940         * gst/gstqueryutils.c:
941         * gst/gstqueryutils.h:
942         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
943         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
944         (gst_queue_handle_src_query):
945         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
946         (gst_element_query_position), (gst_element_query_convert),
947         (intersect_caps_func), (gst_pad_query_position),
948         (gst_pad_query_convert):
949         * gst/gstutils.h:
950         * tools/gst-inspect.c: (print_pad_info):
951         * tools/gst-xmlinspect.c: (print_element_info):
952         Remove old query functions. Ported old code.
953         Added position/convert helper functions to gstutils.
954         Reordered gstpad.c code, grouping relevant things.
955         Remove gst_message_new(), always need to speficy a specific
956         message.
957
958
959 2005-05-09  Andy Wingo  <wingo@pobox.com>
960
961         * gst/gstiterator.h: Add some includes.
962
963         * gst/gstqueryutils.h: Include more headers.
964
965         * gst/gstpad.h:
966         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
967         some uses of gst_pad_query.
968
969         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
970         NULL out parameters.
971         (gst_query_new_position): New proc, allocates a new position
972         query.
973
974         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
975         gstqueryutils.c to the build.
976
977         * gst/gststructure.c (gst_structure_set_valist): Implement with
978         the generic G_VALUE_COLLECT.
979         
980 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
981
982         * gst/Makefile.am: (gst_headers):
983         Added gstqueryutils.h to the list of headers to install, that was
984         a 'nachty' move wingo :)
985
986 2005-05-06  Andy Wingo  <wingo@pobox.com>
987
988         * gst/gstquery.h
989         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
990         GstData, init a memchunk.
991         (standard_definitions): Add a few query types, deprecate a few.
992         (gst_query_get_type): New proc.
993         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
994         implementation.
995         (gst_query_new_application, gst_query_get_structure): New public
996         procs.
997
998         * docs/design/draft-query.txt: Removed LINKS from the query types,
999         because all the rest can be dispatched to other pads -- seemed
1000         ugly to have a query that couldn't be dispatched. internal_links
1001         is fine as a pad method.
1002
1003         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1004         in gstpad.c, but maintain binary compatibility for the moment.
1005         Will fix before 0.9 is out.
1006
1007         * gst/gstqueryutils.c: 
1008         * gst/gstqueryutils.h: New files, implement 3 methods for each
1009         query type: parse_query, parse_response, and set. Probably need an
1010         allocator as well.
1011
1012         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1013
1014         * gst/elements/gstfilesink.c (gst_filesink_query2):
1015         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1016         query_types, and formats methods.
1017
1018         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1019         (gst_pad_set_query2_function): New functions.
1020         (gst_real_pad_init): Set query2_default as the default query2
1021         function. Basically just dispatches to internally linked pads.
1022
1023         Needs review!
1024         
1025         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1026         without using the atomic operations. Only one thread can possibly
1027         be accessing the data at this point. Changed so as to avoid
1028         gst_atomic operations.
1029
1030 2005-05-06  Wim Taymans  <wim@fluendo.com>
1031
1032         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1033         Also set caps if we use the fallback buffer alloc.
1034
1035 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1036
1037         * docs/gst/Makefile.am:
1038         * docs/gst/gstreamer-docs.sgml:
1039         * docs/gst/gstreamer-sections.txt:
1040         * docs/gst/tmpl/gstatomic.sgml:
1041         * docs/gst/tmpl/gstmemchunk.sgml:
1042         * testsuite/elements/struct_i386.h:
1043         * win32/GStreamer.vcproj:
1044         * win32/Makefile:
1045           Purge GstAtomic stuff from docs and win32 makefiles as well
1046
1047 2005-05-06  Wim Taymans  <wim@fluendo.com>
1048
1049         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1050         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1051         * gst/gstpad.c: (gst_pad_peer_get_caps):
1052         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1053         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1054         (gst_queue_src_activate), (gst_queue_change_state):
1055         * gst/gstqueue.h:
1056         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1057         (intersect_caps_func):
1058         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1059         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1060         Some fixes for the peer_get_caps() change.
1061
1062 2005-05-06  Wim Taymans  <wim@fluendo.com>
1063
1064         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1065         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1066         (gst_basesink_activate):
1067         Actually do something with error codes returned from the push
1068         functions.
1069
1070 2005-05-06  Wim Taymans  <wim@fluendo.com>
1071
1072         * docs/design/part-element-sink.txt:
1073         * docs/design/part-element-source.txt:
1074         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1075         (gst_basesink_event), (gst_basesink_activate):
1076         * gst/base/gstbasesink.h:
1077         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1078         (gst_basesrc_activate):
1079         * gst/base/gstbasesrc.h:
1080         * gst/gstelement.c: (gst_element_pads_activate):
1081         Some more documentation.
1082         Fixed scheduling decision in _pads_activate().
1083
1084 2005-05-05  Andy Wingo  <wingo@pobox.com>
1085
1086         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1087         the test suite.
1088
1089 2005-05-05  Wim Taymans  <wim@fluendo.com>
1090
1091         * gst/base/Makefile.am:
1092         * gst/base/gstbasesink.h:
1093         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1094         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1095         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1096         (gst_collectpads_class_init), (gst_collectpads_init),
1097         (gst_collectpads_finalize), (gst_collectpads_new),
1098         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1099         (find_pad), (gst_collectpads_remove_pad),
1100         (gst_collectpads_is_active), (gst_collectpads_collect),
1101         (gst_collectpads_collect_range), (gst_collectpads_start),
1102         (gst_collectpads_stop), (gst_collectpads_peek),
1103         (gst_collectpads_pop), (gst_collectpads_available),
1104         (gst_collectpads_read), (gst_collectpads_flush),
1105         (gst_collectpads_chain):
1106         * gst/base/gstcollectpads.h:
1107         * gst/elements/Makefile.am:
1108         * gst/elements/gstelements.c:
1109         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1110         (gst_fakesink_get_times), (gst_fakesink_event),
1111         (gst_fakesink_preroll), (gst_fakesink_render):
1112         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1113         (gst_filesink_init), (gst_filesink_set_location),
1114         (gst_filesink_open_file), (gst_filesink_close_file),
1115         (gst_filesink_pad_query), (gst_filesink_event),
1116         (gst_filesink_render), (gst_filesink_change_state):
1117         * gst/elements/gstfilesink.h:
1118         Added object to help in making collect pad based elements.
1119         Ported filesink.
1120         Make event function in sink baseclass return gboolean.
1121
1122 2005-05-05  Wim Taymans  <wim@fluendo.com>
1123
1124         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1125         (gst_bin_get_by_name):
1126         * gst/gstbuffer.h:
1127         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1128         (gst_clock_finalize):
1129         * gst/gstdata.c: (gst_data_replace):
1130         * gst/gstdata.h:
1131         * gst/gstelement.c: (gst_element_request_pad),
1132         (gst_element_pads_activate):
1133         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1134         (gst_object_unref):
1135         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1136         (gst_pad_set_checkgetrange_function),
1137         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1138         (gst_pad_check_pull_range), (gst_pad_pull_range),
1139         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1140         (gst_pad_pause_task), (gst_pad_stop_task):
1141         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1142         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1143         Fix name lookup in GstBin.
1144         Added _data_replace() function and _buffer_replace()
1145         Use finalize method to clean up clock.
1146         Fix refcounting on request pads.
1147         Fix pad schedule mode error.
1148         Some more object refcounting debug info,
1149
1150
1151 2005-05-04  Andy Wingo <wingo@pobox.com>
1152
1153         * check/Makefile.am:
1154         * docs/gst/tmpl/gstatomic.sgml:
1155         * docs/gst/tmpl/gstplugin.sgml:
1156         * gst/base/gstbasesink.c: (gst_basesink_activate):
1157         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1158         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1159         (gst_basesrc_query), (gst_basesrc_set_property),
1160         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1161         (gst_basesrc_activate):
1162         * gst/base/gstbasesrc.h:
1163         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1164         (gst_base_transform_src_activate):
1165         * gst/elements/gstelements.c:
1166         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1167         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1168         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1169         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1170         (gst_type_find_element_checkgetrange),
1171         (gst_type_find_element_activate):
1172         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1173         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1174         (gst_caps_load_thyself):
1175         * gst/gstelement.c: (gst_element_pads_activate),
1176         (gst_element_save_thyself), (gst_element_restore_thyself):
1177         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1178         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1179         * gst/gstpad.h:
1180         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1181         (gst_xml_parse_file), (gst_xml_parse_memory),
1182         (gst_xml_get_element), (gst_xml_make_element):
1183         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1184         (_file_index_id_save_xml), (gst_file_index_commit):
1185         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1186         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1187         (load_paths):
1188         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1189         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1190         * tools/gst-complete.c: (main):
1191         * tools/gst-compprep.c: (main):
1192         * tools/gst-inspect.c: (print_element_properties_info):
1193         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1194         * tools/gst-xmlinspect.c: (print_element_properties):
1195         GCC 4 fixen.
1196         
1197 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1198
1199         * gst/gstplugin.c: (gst_plugin_check_module),
1200         (gst_plugin_check_file), (gst_plugin_load_file):
1201             apply patch from #172526 to make register work on MacOSX
1202
1203 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1204
1205         * docs/gst/tmpl/gstconfig.sgml:
1206         * gst/gstconfig.h.in:
1207           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1208         * testsuite/debug/printf_extension.c: (main):
1209           Do not use GST_PTR_FORMAT on pointers to types with
1210           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1211         * testsuite/elements/property.h:
1212           use correct printf format
1213
1214 2005-05-02  Wim Taymans  <wim@fluendo.com>
1215
1216         * docs/design/draft-push-pull.txt:
1217         * docs/design/draft-query.txt:
1218         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1219         (gst_basesrc_start):
1220         Added draft for new query API.
1221         Added draft for better selecting scheduling methods.
1222         Make basesrc ignore length if the subclass does not support
1223         it.
1224
1225 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1226
1227         * gst/Makefile.am:
1228           possible fixes for automake-1.5 - _LIBADD is reserved
1229
1230 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1231
1232         * docs/faq/Makefile.am:
1233         * docs/manual/Makefile.am:
1234         * docs/manuals.mak:
1235         * docs/pwg/Makefile.am:
1236         * gst/Makefile.am:
1237           possible fixes for automake-1.5
1238
1239 2005-04-28  Wim Taymans  <wim@fluendo.com>
1240
1241         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1242         (gst_basesink_pad_getcaps), (gst_basesink_init),
1243         (gst_basesink_do_sync):
1244         * gst/gstclock.c: (gst_clock_entry_new):
1245         * gst/gstevent.c: (gst_event_discont_get_value):
1246         * gst/gstpipeline.c: (pipeline_bus_handler),
1247         (gst_pipeline_change_state):
1248         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1249         Better debugging of clocking info.
1250         Allow NULL values when getting discont values.
1251
1252 2005-04-27  Wim Taymans  <wim@fluendo.com>
1253
1254         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1255         * check/gst/gstpad.c: (gst_pad_suite):
1256         Increase timeout for checks.
1257
1258 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1259
1260         * check/Makefile.am:
1261           fix the broken rule for cleanup.  Apparently this rule is
1262           only needed on FC2, so maybe this warrants further autotool
1263           inspection.
1264
1265 2005-04-26  Wim Taymans  <wim@fluendo.com>
1266
1267         * gst/gsttrashstack.h:
1268         Ooohh. a nasty one! After having a failed pop() from the stack,
1269         it's possible that the stack is empty. In that case, don't
1270         follow the NULL pointer.
1271
1272 2005-04-25  Wim Taymans  <wim@fluendo.com>
1273
1274         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1275         (gst_pad_set_checkgetrange_function),
1276         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1277         (gst_pad_check_pull_range), (gst_pad_pull_range),
1278         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1279         (gst_pad_pause_task), (gst_pad_stop_task):
1280         * gst/gstplugin.c: (gst_plugin_load):
1281         * gst/gstplugin.h:
1282         Remove gst_library_load as it does more harm than good with
1283         the new g_module flags.
1284         Revert bogus caps template check in pad linking, pad caps
1285         are important when linking not the template, which is more
1286         general than the current caps.
1287
1288 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1289
1290         * gst/autoplug/.cvsignore:
1291         * gst/autoplug/Makefile.am:
1292         * gst/autoplug/gstsearchfuncs.c:
1293         * gst/autoplug/gstsearchfuncs.h:
1294         * gst/autoplug/gstspider.c:
1295         * gst/autoplug/gstspider.h:
1296         * gst/autoplug/gstspideridentity.c:
1297         * gst/autoplug/gstspideridentity.h:
1298         * gst/autoplug/spidertest.c:
1299           Die, spider, die.
1300
1301 2005-04-25  Wim Taymans  <wim@fluendo.com>
1302
1303         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1304         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1305         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1306         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1307         * gst/gstpad.h:
1308         Added stubs for unimplemented functions. 
1309
1310 2005-04-24  David Schleef  <ds@schleef.org>
1311
1312         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1313         please fix.
1314
1315 2005-04-24  David Schleef  <ds@schleef.org>
1316
1317         Convert everything from GstAtomicInt to g_atomic_int_*, and
1318         remove gstatomic.
1319         * gst/Makefile.am:
1320         * gst/gstatomic.c:
1321         * gst/gstatomic.h:
1322         * gst/gstatomic_impl.h:
1323         * gst/gstbuffer.c:
1324         * gst/gstcaps.c:
1325         * gst/gstcaps.h:
1326         * gst/gstclock.c:
1327         * gst/gstclock.h:
1328         * gst/gstdata.c:
1329         * gst/gstdata.h:
1330         * gst/gstdata_private.h:
1331         * gst/gstevent.c:
1332         * gst/gstinfo.c:
1333         * gst/gstinfo.h:
1334         * gst/gstmessage.c:
1335         * gst/gstobject.c:
1336         * gst/gstobject.h:
1337         * gst/gststructure.c:
1338         * gst/gststructure.h:
1339         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1340         * gst/gstutils.h:
1341
1342 2005-04-24  David Schleef  <ds@schleef.org>
1343
1344         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1345         make the regressions tests work.  Remove some code that is no
1346         longer true.
1347         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1348         Disable warning for pads without templates.
1349
1350 2005-04-24  David Schleef  <ds@schleef.org>
1351
1352         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1353         functions that handle filtered links.
1354         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1355         removed functions.
1356         * gst/gstutils.c: Fix/remove utility functions that handle
1357         filtered caps.
1358         * gst/gstutils.h:
1359         * gst/gstvalue.c: Add serialization/deserialization of caps
1360         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1361         requires fixing so that the filter caps notation creates
1362         a capsfilter element and sets the filter_caps property.  I
1363         think everyone probably wants to keep the shorthand notation.
1364         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1365         * docs/gst/tmpl/gstpad.sgml:
1366
1367         * gst/elements/gstelements.c: Register capsfilter element.
1368         * gst/Makefile.am: fix spacing
1369         * docs/random/ds/0.9-suggested-changes: random
1370
1371 2005-04-23  David Schleef  <ds@schleef.org>
1372
1373         * gst/elements/Makefile.am:
1374         * gst/elements/gstcapsfilter.c: New element that acts like an
1375         identity, but filters caps.  Will eventually replace filtered
1376         caps in pad linking.
1377         * gst/gstutils.c: (gst_element_create_all_pads): New function
1378         to create all the ALWAYS pads that are registered with an
1379         element class.  This functionality should eventually be
1380         merged in with GstElement initialization.
1381         * gst/gstutils.h:
1382         * testsuite/trigger/README: part of trigger test code that should
1383         have been checked in a long time ago.
1384
1385 2005-04-23  David Schleef  <ds@schleef.org>
1386
1387         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1388         needed with new versions of libtool (nobody will confirm this),
1389         and hard to carry around.
1390         * gst/autoplug/Makefile.am:
1391         * gst/base/Makefile.am:
1392         * gst/elements/Makefile.am:
1393         * gst/indexers/Makefile.am:
1394         * gst/schedulers/Makefile.am:
1395         * libs/gst/bytestream/Makefile.am:
1396         * libs/gst/control/Makefile.am:
1397         * libs/gst/dataprotocol/Makefile.am:
1398         * libs/gst/getbits/Makefile.am:
1399
1400 2005-04-21  Wim Taymans  <wim@fluendo.com>
1401
1402         * docs/design/draft-push-pull.txt:
1403         * docs/design/part-MT-refcounting.txt:
1404         * docs/design/part-TODO.txt:
1405         * docs/design/part-caps.txt:
1406         * docs/design/part-events.txt:
1407         * docs/design/part-gstbus.txt:
1408         * docs/design/part-gstpipeline.txt:
1409         * docs/design/part-messages.txt:
1410         * docs/design/part-push-pull.txt:
1411         * docs/design/part-query.txt:
1412         Some more docs.
1413
1414 2005-04-21  Wim Taymans  <wim@fluendo.com>
1415
1416         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1417         (gst_message_new), (gst_message_new_error),
1418         (gst_message_new_warning), (gst_message_new_tag),
1419         (gst_message_new_state_changed), (gst_message_new_application),
1420         (gst_message_get_structure):
1421         * gst/gstmessage.h:
1422         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1423         (gst_structure_copy_conditional):
1424         Use parent refcount in GstMessage to ensure GstStructure
1425         consistency.
1426         Cleaned up headers a bit.
1427         
1428
1429 2005-04-20  Wim Taymans  <wim@fluendo.com>
1430
1431         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1432         (gst_basesink_pad_getcaps), (gst_basesink_init),
1433         (gst_basesink_chain_unlocked):
1434         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1435         (gst_type_find_helper):
1436         * gst/elements/gsttypefindelement.c:
1437         (gst_type_find_element_have_type), (gst_type_find_element_init),
1438         (stop_typefinding), (gst_type_find_element_handle_event),
1439         (find_suggest), (gst_type_find_element_chain),
1440         (gst_type_find_element_checkgetrange),
1441         (gst_type_find_element_getrange), (do_typefind),
1442         (gst_type_find_element_activate):
1443         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1444         (gst_buffer_default_free), (gst_buffer_default_copy),
1445         (gst_buffer_set_caps):
1446         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1447         (gst_caps_replace):
1448         * gst/gstmessage.c: (gst_message_new),
1449         (gst_message_new_state_changed):
1450         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1451         (gst_pad_set_checkgetrange_function),
1452         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1453         (gst_pad_set_caps), (gst_pad_check_pull_range),
1454         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1455         * gst/gstpad.h:
1456         * gst/gsttypefind.c: (gst_type_find_register):
1457         Make gst_caps_replace() work like other _replace() functions.
1458         Use _caps_replace() where possible.
1459         Make sure _message_new() initialises its field.
1460         Add gst_static_pad_template_get_caps()
1461
1462
1463 2005-04-18  Andy Wingo  <wingo@pobox.com>
1464
1465         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1466         on the peer, not the pad. I think that was a typo. Pass an extra
1467         arg to see if random access is possible. Activate the pads as
1468         PULL_RANGE if possible.
1469
1470         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1471
1472         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1473         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1474         to PROP_....
1475
1476 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1477
1478         * docs/faq/using.xml:
1479           Add note on gstreamer-properties (#154996).
1480
1481 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1482
1483         * docs/random/bbb/optional-properties:
1484           Some analysis on optional properties.
1485
1486 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1487
1488         * docs/gst/tmpl/gstelementfactory.sgml:
1489         * gst/gstelement.h:
1490         * gst/gstelementfactory.c: (gst_element_factory_init),
1491         (gst_element_factory_cleanup), (gst_element_register),
1492         (__gst_element_factory_add_static_pad_template),
1493         (gst_element_factory_get_static_pad_templates),
1494         (gst_element_factory_can_src_caps),
1495         (gst_element_factory_can_sink_caps):
1496         * gst/registries/Makefile.am:
1497         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1498         (gst_xml_registry_class_init), (gst_xml_registry_init),
1499         (gst_xml_registry_new), (gst_xml_registry_set_property),
1500         (gst_xml_registry_get_property), (get_time), (make_dir),
1501         (gst_xml_registry_get_perms_func),
1502         (plugin_times_older_than_recurse), (plugin_times_older_than),
1503         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1504         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1505         (add_to_char_array), (read_string), (read_uint), (read_enum),
1506         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1507         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1508         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1509         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1510         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1511         (gst_xml_registry_rebuild):
1512         * gst/registries/gstlibxmlregistry.h:
1513         * tools/gst-compprep.c: (main):
1514         * tools/gst-inspect.c: (print_pad_templates_info):
1515         * tools/gst-xmlinspect.c: (print_element_info):
1516           Use libxml2 for registry parsing, use staticpadtemplates in
1517           elementfactories. Makes gst_init() +/- 10x faster.
1518
1519 2005-04-12  Wim Taymans  <wim@fluendo.com>
1520
1521         * gst/base/Makefile.am:
1522         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1523         (gst_basesink_pad_getcaps), (gst_basesink_init),
1524         (gst_basesink_event), (gst_basesink_change_state):
1525         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1526         (gst_basesrc_init), (gst_basesrc_query),
1527         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1528         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1529         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1530         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1531         (gst_basesrc_stop), (gst_basesrc_activate),
1532         (gst_basesrc_change_state):
1533         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1534         (helper_find_suggest), (gst_type_find_helper):
1535         * gst/base/gsttypefindhelper.h:
1536         * gst/elements/Makefile.am:
1537         * gst/elements/gstelements.c:
1538         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1539         (gst_fakesink_get_times), (gst_fakesink_event),
1540         (gst_fakesink_preroll), (gst_fakesink_render):
1541         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1542         (gst_fakesrc_init), (gst_fakesrc_event_handler),
1543         (gst_fakesrc_get_property), (gst_fakesrc_create),
1544         (gst_fakesrc_start), (gst_fakesrc_stop):
1545         * gst/elements/gstfakesrc.h:
1546         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
1547         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1548         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1549         (gst_filesrc_create_read), (gst_filesrc_create),
1550         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
1551         (gst_filesrc_start):
1552         * gst/elements/gsttypefindelement.c:
1553         (gst_type_find_element_have_type), (gst_type_find_element_init),
1554         (start_typefinding), (stop_typefinding), (push_buffer_store),
1555         (gst_type_find_element_handle_event),
1556         (gst_type_find_element_chain),
1557         (gst_type_find_element_checkgetrange),
1558         (gst_type_find_element_getrange), (do_typefind),
1559         (gst_type_find_element_activate),
1560         (gst_type_find_element_change_state):
1561         * gst/elements/gsttypefindelement.h:
1562         * gst/gstpipeline.c: (pipeline_bus_handler):
1563         Added typefind helper.
1564         Small preroll fix in the base sink.
1565         Disable typefind code in basesrc.
1566         Crude port of typefindelement.
1567         Fakesrc cleanups.
1568
1569
1570 2005-04-11  Wim Taymans  <wim@fluendo.com>
1571
1572         * check/gst/gstbus.c: (gstbus_suite):
1573         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
1574         * check/gstcheck.h:
1575           Fix up the timeout so that the test does not fail.
1576
1577 2005-04-06  Wim Taymans  <wim@fluendo.com>
1578
1579         * gst/base/README:
1580         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1581         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
1582         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1583         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1584         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1585         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1586         (gst_basesrc_stop), (gst_basesrc_activate),
1587         (gst_basesrc_change_state), (basesrc_find_peek),
1588         (basesrc_find_suggest), (gst_basesrc_type_find):
1589         * gst/base/gstbasesrc.h:
1590         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1591         (gst_filesrc_class_init), (gst_filesrc_init),
1592         (gst_filesrc_finalize), (gst_filesrc_set_location),
1593         (gst_filesrc_set_property), (gst_filesrc_get_property),
1594         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1595         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1596         (gst_filesrc_create_read), (gst_filesrc_create),
1597         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
1598         * gst/elements/gstfilesrc.h:
1599         * gst/gstelement.c: (gst_element_get_state_func),
1600         (gst_element_lost_state), (gst_element_pads_activate):
1601         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1602         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1603         (gst_pad_pull_range):
1604         * gst/gstpad.h:
1605         More work on the generic source base class, implement seeking,
1606         query.
1607         Make filesrc extend the base source class.
1608         Added gst_pad_set_checkgetrange_function to GstPad.
1609
1610 2005-04-06  Andy Wingo  <wingo@pobox.com>
1611
1612         * pkgconfig/gstreamer-base.pc.in:
1613         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
1614
1615         * pkgconfig/Makefile.am:
1616         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
1617
1618 2005-04-04  Wim Taymans  <wim@fluendo.com>
1619
1620         * gst/base/Makefile.am:
1621         * gst/base/README:
1622         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1623         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1624         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1625         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
1626         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1627         (gst_basesrc_base_init), (gst_basesrc_class_init),
1628         (gst_basesrc_init), (gst_basesrc_get_formats),
1629         (gst_basesrc_get_query_types), (gst_basesrc_query),
1630         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
1631         (gst_basesrc_set_property), (gst_basesrc_get_property),
1632         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
1633         (gst_basesrc_loop), (gst_basesrc_activate),
1634         (gst_basesrc_change_state):
1635         * gst/base/gstbasesrc.h:
1636         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1637         (gst_fakesrc_class_init), (gst_fakesrc_init),
1638         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
1639         (gst_fakesrc_get_property), (gst_fakesrc_create):
1640         * gst/elements/gstfakesrc.h:
1641         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
1642         (gst_filesrc_open_file), (gst_filesrc_loop),
1643         (gst_filesrc_activate), (filesrc_find_peek),
1644         (gst_filesrc_type_find):
1645         Made base source class, make fakesrc extend it.
1646         Add comments to basesink class.
1647         Some filesrc cleanup.
1648
1649 2005-03-31  David Schleef  <ds@schleef.org>
1650
1651         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
1652         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
1653         expected to link against libgstreamer.
1654         * gst/base/Makefile.am: link against libgstreamer
1655         * gst/elements/Makefile.am: same
1656
1657 2005-03-31  Andy Wingo  <wingo@pobox.com>
1658
1659         * tests/instantiate/Makefile.am:
1660         * tests/instantiate/caps.c: Add test to test speed of caps copy
1661         and free.
1662
1663         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
1664         GMemChunk to be fair.
1665
1666         * gst/gsttrashstack.h: Remove warning about using the fallback
1667         trash stack implementation, it's still faster than malloc.
1668
1669 2005-03-30  Andy Wingo  <wingo@pobox.com>
1670
1671         * tests/complexity.c: Add a copyright.
1672
1673 2005-03-31  Wim Taymans  <wim@fluendo.com>
1674
1675         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
1676         (gst_base_transform_class_init), (gst_base_transform_init),
1677         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1678         (gst_base_transform_get_property),
1679         (gst_base_transform_sink_activate),
1680         (gst_base_transform_src_activate),
1681         (gst_base_transform_change_state):
1682         * gst/base/gstbasetransform.h:
1683         * gst/elements/gstidentity.c: (gst_identity_class_init),
1684         (gst_identity_event), (gst_identity_check_perfect),
1685         (gst_identity_transform), (gst_identity_start),
1686         (gst_identity_stop):
1687         Added start/stop methods to transform base class so subclasses 
1688         don't need to deal with state changes even.
1689
1690 2005-03-31  Wim Taymans  <wim@fluendo.com>
1691
1692         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
1693         (gst_event_new_discontinuous), (gst_event_discont_get_value):
1694         * gst/gstevent.h:
1695         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1696         (gst_pad_pull_range):
1697         Added rate to the discont event to prepare for variable speed
1698         and reverse playback.
1699
1700 2005-03-29  David Schleef  <ds@schleef.org>
1701
1702         * configure.ac:
1703         * testsuite/trigger/Makefile.am:
1704         * testsuite/trigger/trigger.c: A little example program to show
1705         how trigger-based elements can work.
1706
1707 2005-03-29  Wim Taymans  <wim@fluendo.com>
1708
1709         * gst/base/Makefile.am:
1710         * gst/base/README:
1711         * gst/base/gstbasesink.c: (gst_basesink_get_type),
1712         (gst_basesink_base_init), (gst_basesink_class_init),
1713         (gst_basesink_pad_getcaps), (gst_basesink_init),
1714         (gst_basesink_activate), (gst_basesink_change_state):
1715         * gst/base/gstbasesink.h:
1716         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
1717         (gst_base_transform_base_init), (gst_base_transform_finalize),
1718         (gst_base_transform_class_init), (gst_base_transform_init),
1719         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
1720         (gst_base_transform_event), (gst_base_transform_getrange),
1721         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
1722         (gst_base_transform_set_property),
1723         (gst_base_transform_get_property),
1724         (gst_base_transform_sink_activate),
1725         (gst_base_transform_src_activate),
1726         (gst_base_transform_change_state):
1727         * gst/base/gstbasetransform.h:
1728         * gst/elements/gstidentity.c: (gst_identity_finalize),
1729         (gst_identity_class_init), (gst_identity_init),
1730         (gst_identity_event), (gst_identity_check_perfect),
1731         (gst_identity_transform), (gst_identity_set_property),
1732         (gst_identity_get_property), (gst_identity_change_state):
1733         * gst/elements/gstidentity.h:
1734         * gst/gstelement.c: (gst_element_get_state_func),
1735         (gst_element_lost_state), (gst_element_pads_activate):
1736         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1737         (gst_pad_check_pull_range), (gst_pad_pull_range):
1738         * gst/gstpad.h:
1739         Simplify pad activation.
1740         Added function to check if pull_range can be performed.
1741         Error out when pulling inactive or flushing pads.
1742         Removed const from refcounted types as it does not make sense.
1743         Simplify pad templates in basesink
1744         Added base class for simple 1-to-1 transforms.
1745         Make identity subclass the base transform.
1746
1747 2005-03-29  Andy Wingo  <wingo@pobox.com>
1748
1749         * docs/libs/gstreamer-libs-overrides.txt: 
1750         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
1751         really don't understand what's going on, but like whatever. I want
1752         green buildbot!
1753
1754         * docs/gst/Makefile.am:
1755         * docs/libs/Makefile.am: Dist the overrides files.
1756
1757         * check/Makefile.am (clean-local): Remove .libs directories.
1758
1759         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
1760         elements to EXTRA_DIST, so po/ files are happy.
1761
1762         * po/POTFILES.in: Er, remove it here.
1763
1764         * po/POTFILES: Remove gstspider.c.
1765
1766         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
1767
1768         * docs/libs/gstreamer-libs-docs.sgml: 
1769         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
1770         bytestream.
1771
1772         * tests/complexity.c (main): Set the length of the preroll queue
1773         on the sinks to prevent a lockup.
1774
1775         * libs/gst/dataprotocol/Makefile.am: 
1776         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
1777         the same as the one in check/gst-libs/gdp.c.
1778
1779         * po/, docs/gst/: Commit automatic changes to docs and po files.
1780
1781         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
1782         the versioned libgstbase.
1783
1784         * check/Makefile.am: Depend on an unversioned gst-register, seems
1785         to make autoconf happier.
1786
1787         * gst/base/Makefile.am: Make libgstbase a versioned lib.
1788
1789 2005-03-28  Wim Taymans  <wim@fluendo.com>
1790
1791         * configure.ac:
1792         * docs/design/part-gstelement.txt:
1793         * docs/design/part-negotiation.txt:
1794         * docs/design/part-preroll.txt:
1795         * docs/design/part-scheduling.txt:
1796         * docs/design/part-states.txt:
1797         * gst/Makefile.am:
1798         * gst/base/Makefile.am:
1799         * gst/base/README:
1800         * gst/base/gstbasesink.c: (gst_basesink_get_template),
1801         (gst_basesink_base_init), (gst_basesink_class_init),
1802         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1803         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1804         (gst_basesink_set_pad_functions),
1805         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
1806         (gst_basesink_set_property), (gst_basesink_get_property),
1807         (gst_base_sink_get_template), (gst_base_sink_get_caps),
1808         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
1809         (gst_basesink_preroll_queue_push),
1810         (gst_basesink_preroll_queue_empty),
1811         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
1812         (gst_basesink_event), (gst_basesink_get_times),
1813         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
1814         (gst_basesink_chain_unlocked), (gst_basesink_chain),
1815         (gst_basesink_loop), (gst_basesink_activate),
1816         (gst_basesink_change_state):
1817         * gst/base/gstbasesink.h:
1818         * gst/elements/Makefile.am:
1819         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
1820         (gst_fakesink_class_init), (gst_fakesink_init),
1821         (gst_fakesink_set_property), (gst_fakesink_get_property),
1822         (gst_fakesink_get_times), (gst_fakesink_event),
1823         (gst_fakesink_preroll), (gst_fakesink_render),
1824         (gst_fakesink_change_state):
1825         * gst/elements/gstfakesink.h:
1826         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1827         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
1828         * gst/gstelement.c: (gst_element_add_pad),
1829         (gst_element_get_state_func), (gst_element_abort_state),
1830         (gst_element_commit_state), (gst_element_lost_state),
1831         (gst_element_set_state), (gst_element_pads_activate):
1832         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
1833         * gst/gstpipeline.c: (gst_pipeline_send_event),
1834         (gst_pipeline_change_state):
1835         Added state change code.
1836         Added/updated docs.
1837         Added sink base class, make fakesink extend the base class.
1838         Small cleanups in GstPipeline.
1839
1840 2005-03-26  David Schleef  <ds@schleef.org>
1841
1842         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
1843         is broken and should be implemented in a different library.
1844         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
1845         * gst/gst.h: remove gstcpu.h
1846         * gst/gstcpu.c: remove
1847         * gst/gstcpu.h: remove
1848         * gst/Makefile.am.future: Remove this file.  It's ancient.
1849
1850 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1851
1852         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1853         (gst_bin_send_event):
1854           Add default event/set_manager handlers. The set_manager handler
1855           takes care that the manager is distributed over kids that were
1856           already in the bin before the manager was set. The event handler
1857           is a utility virtual function that sends the event over all sinks,
1858           so that gst_element_send_event (bin, event); has the expected
1859           behaviour.
1860         * gst/gstpad.c: (gst_pad_event_default):
1861           Re-install default event handling for discontinuities, so that
1862           seeking works without requiring hacks in applications or extra
1863           code in sinks.
1864         * gst/gstpipeline.c: (gst_pipeline_class_init),
1865         (gst_pipeline_send_event):
1866           Half hack, half utility: set a pipeline to PAUSED for seek events,
1867           since that is the only way we can guarantee a/v sync. Means that
1868           you can do gst_element_seek (pipeline, method, pos); on a pipeline
1869           and it "just works".
1870
1871 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1872
1873         * gst/gstpipeline.c: (gst_pipeline_use_clock):
1874           Lock/unlock mismatch.
1875
1876 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1877
1878         * docs/faq/gst-uninstalled:
1879           add gst-plugins-base
1880         * docs/gst/Makefile.am:
1881           don't error out until docs are fixed
1882         * docs/gst/gstreamer.types:
1883           remove thread
1884
1885 2005-03-22  Wim Taymans  <wim@fluendo.com>
1886
1887         * check/Makefile.am:
1888         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
1889         * gst/gststructure.c: (gst_structure_set_valist),
1890         (gst_structure_copy_conditional):
1891         Activated more tests.
1892         Added message test.
1893         Added G_TYPE_POINTER to GstStructure.
1894         
1895
1896 2005-03-22  Wim Taymans  <wim@fluendo.com>
1897
1898         * docs/design/part-TODO.txt:
1899         * docs/design/part-events.txt:
1900         * docs/design/part-gstbin.txt:
1901         * docs/design/part-gstbus.txt:
1902         * docs/design/part-gstpipeline.txt:
1903         * docs/design/part-messages.txt:
1904         * gst/gstbus.c:
1905         * gst/gstmessage.c:
1906         Docs updates
1907
1908 2005-03-21  Wim Taymans  <wim@fluendo.com>
1909
1910         * gst/gstbus.c: (gst_bus_post):
1911         Fix copy-and-paste error.
1912
1913 2005-03-21  Wim Taymans  <wim@fluendo.com>
1914
1915         * check/Makefile.am:
1916         * gst/Makefile.am:
1917         * gst/elements/Makefile.am:
1918         * gst/elements/gstelements.c:
1919         * gst/elements/gstfakesink.c: (gst_fakesink_init),
1920         (gst_fakesink_event), (gst_fakesink_chain):
1921         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1922         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
1923         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
1924         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
1925         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1926         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
1927         (gst_fakesrc_loop), (gst_fakesrc_activate),
1928         (gst_fakesrc_change_state):
1929         * gst/elements/gstfakesrc.h:
1930         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
1931         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
1932         (gst_filesrc_open_file), (gst_filesrc_loop),
1933         (gst_filesrc_activate), (gst_filesrc_change_state),
1934         (filesrc_find_peek), (filesrc_find_suggest),
1935         (gst_filesrc_type_find):
1936         * gst/elements/gstidentity.c: (gst_identity_finalize),
1937         (gst_identity_class_init), (gst_identity_init),
1938         (gst_identity_proxy_getcaps), (identity_queue_push),
1939         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
1940         (gst_identity_getrange), (gst_identity_chain),
1941         (gst_identity_sink_loop), (gst_identity_src_loop),
1942         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
1943         (gst_identity_set_property), (gst_identity_get_property),
1944         (gst_identity_change_state):
1945         * gst/elements/gstidentity.h:
1946         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
1947         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
1948         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
1949         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
1950         (gst_tee_sink_activate):
1951         * gst/elements/gsttee.h:
1952         * gst/gst.c: (gst_register_core_elements), (init_post):
1953         * gst/gst.h:
1954         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
1955         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
1956         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
1957         (gst_bin_change_state):
1958         * gst/gstbin.h:
1959         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
1960         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
1961         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
1962         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
1963         (gst_bus_set_sync_handler), (gst_bus_create_watch),
1964         (bus_watch_callback), (bus_watch_destroy),
1965         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
1966         (poll_timeout), (gst_bus_poll):
1967         * gst/gstbus.h:
1968         * gst/gstcaps.h:
1969         * gst/gstdata.h:
1970         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
1971         (gst_element_post_message), (gst_element_message_full),
1972         (gst_element_get_state_func), (gst_element_get_state),
1973         (gst_element_abort_state), (gst_element_commit_state),
1974         (gst_element_lost_state), (gst_element_set_state),
1975         (gst_element_pads_activate), (gst_element_change_state),
1976         (gst_element_dispose), (gst_element_set_manager_func),
1977         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
1978         (gst_element_set_manager), (gst_element_get_manager),
1979         (gst_element_set_bus), (gst_element_get_bus),
1980         (gst_element_set_scheduler), (gst_element_get_scheduler):
1981         * gst/gstelement.h:
1982         * gst/gstevent.c: (gst_event_new_segment_seek),
1983         (gst_event_new_flush):
1984         * gst/gstevent.h:
1985         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
1986         (_gst_message_free), (gst_message_get_type), (gst_message_new),
1987         (gst_message_new_eos), (gst_message_new_error),
1988         (gst_message_new_warning), (gst_message_new_tag),
1989         (gst_message_new_state_changed), (gst_message_new_application),
1990         (gst_message_get_structure), (gst_message_parse_tag),
1991         (gst_message_parse_state_changed), (gst_message_parse_error),
1992         (gst_message_parse_warning):
1993         * gst/gstmessage.h:
1994         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
1995         (gst_real_pad_set_property), (gst_pad_set_active),
1996         (gst_pad_is_active), (gst_pad_set_blocked_async),
1997         (gst_pad_set_blocked), (gst_pad_is_blocked),
1998         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
1999         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2000         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2001         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2002         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2003         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2004         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2005         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2006         (gst_pad_set_caps), (gst_pad_configure_sink),
2007         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2008         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2009         (gst_real_pad_dispose), (gst_real_pad_finalize),
2010         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2011         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2012         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2013         * gst/gstpad.h:
2014         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2015         (pipeline_bus_handler), (gst_pipeline_change_state),
2016         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2017         * gst/gstpipeline.h:
2018         * gst/gstprobe.h:
2019         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2020         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2021         (gst_queue_link_src), (gst_queue_bufferalloc),
2022         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2023         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2024         (gst_queue_loop), (gst_queue_handle_src_event),
2025         (gst_queue_handle_src_query), (gst_queue_src_activate),
2026         (gst_queue_change_state):
2027         * gst/gstqueue.h:
2028         * gst/gstscheduler.c: (gst_scheduler_init),
2029         (gst_scheduler_dispose), (gst_scheduler_create_task),
2030         (gst_scheduler_factory_create):
2031         * gst/gstscheduler.h:
2032         * gst/gststructure.c: (gst_structure_get_type),
2033         (gst_structure_copy_conditional):
2034         * gst/gststructure.h:
2035         * gst/gsttaginterface.h:
2036         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2037         (gst_task_init), (gst_task_dispose), (gst_task_create),
2038         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2039         (gst_task_pause):
2040         * gst/gsttask.h:
2041         * gst/gstthread.c:
2042         * gst/gstthread.h:
2043         * gst/gsttypes.h:
2044         * gst/schedulers/Makefile.am:
2045         * gst/schedulers/cothreads_compat.h:
2046         * gst/schedulers/entryscheduler.c:
2047         * gst/schedulers/faircothreads.c:
2048         * gst/schedulers/faircothreads.h:
2049         * gst/schedulers/fairscheduler.c:
2050         * gst/schedulers/gstbasicscheduler.c:
2051         * gst/schedulers/gstoptimalscheduler.c:
2052         * gst/schedulers/gthread-cothreads.h:
2053         * gst/schedulers/threadscheduler.c:
2054         (gst_thread_scheduler_task_get_type),
2055         (gst_thread_scheduler_task_class_init),
2056         (gst_thread_scheduler_task_init),
2057         (gst_thread_scheduler_task_start),
2058         (gst_thread_scheduler_task_stop),
2059         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2060         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2061         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2062         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2063         (plugin_init):
2064         * libs/gst/Makefile.am:
2065         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2066         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2067         (gst_file_pad_parent_set):
2068         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2069         (gst_dp_event_from_packet):
2070         * tests/complexity.c: (main):
2071         * tests/mass_elements.c: (main):
2072         * testsuite/states/locked.c: (message_received), (main):
2073         * testsuite/states/parent.c: (main):
2074         * tools/gst-inspect.c: (print_element_flag_info),
2075         (print_implementation_info), (print_pad_info):
2076         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2077         (main):
2078         * tools/gst-md5sum.c: (event_loop), (main):
2079         * tools/gst-typefind.c: (main):
2080         * tools/gst-xmlinspect.c: (print_element_info):
2081         Next big merge.
2082         Added GstBus for mainloop integration.
2083         Added GstMessage for sending notifications on the bus.
2084         Added GstTask as an abstraction for pipeline entry points.
2085         Removed GstThread.
2086         Removed Schedulers.
2087         Simplified GstQueue for multithreaded core.
2088         Made _link threadsafe, removed old capsnego.
2089         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2090         Added pad blocking functions.
2091         Reworked scheduling functions in GstPad to prepare for
2092         scheduling updates soon.
2093         Moved events out of data stream.
2094         Simplified GstEvent types.
2095         Added return values to push/pull.
2096         Removed clocking from GstElement.
2097         Added prototypes for state change function for next merge.
2098         Removed iterate from bins and state change management.
2099         Fixed some elements, disabled others for now.
2100         Fixed -inspect and -launch.
2101         Added check for GstBus.
2102
2103 2005-03-10  Wim Taymans  <wim@fluendo.com>
2104
2105         * docs/design/part-MT-refcounting.txt:
2106         * docs/design/part-clocks.txt:
2107         * docs/design/part-gstelement.txt:
2108         * docs/design/part-gstobject.txt:
2109         * docs/design/part-standards.txt:
2110         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2111         (gst_bin_remove_func), (gst_bin_remove):
2112         * gst/gstbin.h:
2113         * gst/gstbuffer.c:
2114         * gst/gstcaps.h:
2115         * testsuite/clock/clock1.c: (main):
2116         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2117         (main):
2118         * testsuite/dlopen/loadgst.c: (do_test):
2119         * testsuite/refcounting/bin.c: (add_remove_test1),
2120         (add_remove_test2), (main):
2121         * testsuite/refcounting/element.c: (main):
2122         * testsuite/refcounting/element_pad.c: (main):
2123         * testsuite/refcounting/pad.c: (main):
2124         * tools/gst-launch.c: (sigint_handler_sighandler):
2125         * tools/gst-typefind.c: (main):
2126         Doc updates.
2127         Added doc about clock.
2128         removed gst_bin_iterate_recurse_up(), marked methods
2129         for removal.
2130         Fix more testsuites.
2131
2132 2005-03-09  Wim Taymans  <wim@fluendo.com>
2133
2134         * gst/gstpad.c: (gst_pad_get_direction),
2135         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2136         (gst_pad_collect_valist):
2137         * testsuite/bins/interface.c: (main):
2138         * testsuite/caps/audioscale.c: (test_caps):
2139         * testsuite/caps/caps.c: (test1), (test2), (test3):
2140         * testsuite/caps/deserialize.c: (main):
2141         * testsuite/caps/enumcaps.c: (main):
2142         * testsuite/caps/filtercaps.c: (main):
2143         * testsuite/caps/intersect2.c: (main):
2144         * testsuite/caps/random.c: (main):
2145         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2146         * testsuite/caps/sets.c: (check_caps):
2147         * testsuite/caps/simplify.c: (check_caps), (main):
2148         * testsuite/caps/subtract.c: (check_caps):
2149         Fix _pad_get_direction wrt ghostpads.
2150         Fix caps testsuite.
2151
2152 2005-03-09  Wim Taymans  <wim@fluendo.com>
2153
2154         * check/Makefile.am:
2155         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2156         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2157         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2158         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2159         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2160         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2161         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2162         (bin_element_is_sink), (gst_bin_iterate_sinks),
2163         (gst_bin_iterate_all_by_interface):
2164         * gst/gstbin.h:
2165         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2166         (gst_element_change_state), (gst_element_dispose),
2167         (gst_element_finalize), (gst_element_set_loop_function):
2168         * gst/gstelement.h:
2169         * gst/gstiterator.c: (find_custom_fold_func):
2170         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2171         (gst_pad_collectv), (gst_pad_collect_valist),
2172         (gst_pad_template_new):
2173         * gst/gstpipeline.c: (gst_pipeline_class_init),
2174         (gst_pipeline_dispose), (gst_pipeline_set_property),
2175         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2176         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2177         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2178         * gst/gstutils.h:
2179         * gst/schedulers/entryscheduler.c:
2180         * gst/schedulers/gstbasicscheduler.c:
2181         (gst_basic_scheduler_cothreaded_chain),
2182         (gst_basic_scheduler_chain_add_element):
2183         * testsuite/bins/interface.c: (main):
2184         Added GstBin test.
2185         Added GstSystemClock test.
2186         Implemented clock distribution code in GstBin.
2187         Implemented iterate sinks method for future use.
2188         Rearranged gstelement.h
2189         Fix GstIterator comparison bug.
2190         Moved some code to GstPipeline, mostly clocking related.
2191
2192 2005-03-09  Wim Taymans  <wim@fluendo.com>
2193
2194         * configure.ac:
2195         * gst/gst_private.h:
2196         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2197         (gst_bin_remove_func), (gst_bin_remove),
2198         (gst_bin_get_by_name_recurse_up):
2199         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2200         (gst_clock_id_compare_func), (gst_clock_id_wait),
2201         (gst_clock_id_wait_async), (gst_clock_init),
2202         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2203         * gst/gstelement.h:
2204         * gst/gstinfo.c: (_gst_debug_init):
2205         * gst/gstobject.h:
2206         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2207         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2208         * gst/gstpad.h:
2209         Bump version number, we're now 0.9.0
2210         Add future debugging category.
2211         Fix NULL _unref() in _get_by_name_recurse_up
2212         Rearrange gstpad.h.
2213         Update some docs.
2214
2215 2005-03-08  Wim Taymans  <wim@fluendo.com>
2216
2217         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2218         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2219         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2220         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2221         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2222         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2223         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2224         * gst/elements/gstidentity.c: (gst_identity_class_init):
2225         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2226         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2227         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2228         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2229         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2230         (gst_tee_link):
2231         * gst/gstelement.c: (gst_element_class_init),
2232         (gst_element_base_class_init), (gst_element_init),
2233         (gst_element_get_random_pad), (gst_element_wait_state_change),
2234         (gst_element_change_state), (gst_element_dispose),
2235         (gst_element_finalize), (gst_element_set_loop_function):
2236         * gst/gstelement.h:
2237         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2238         * gst/gstthread.c: (gst_thread_class_init),
2239         (gst_thread_release_children_locks), (gst_thread_change_state):
2240         * gst/schedulers/gstbasicscheduler.c:
2241         (gst_basic_scheduler_loopfunc_wrapper),
2242         (gst_basic_scheduler_chain_wrapper),
2243         (gst_basic_scheduler_src_wrapper),
2244         (gst_basic_scheduler_remove_element):
2245         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2246         Remove threadsafe properties. Fix elements because GObject
2247         complains when installing a property before declaring a
2248         set/get_property handler.
2249         Rearrange gstelement.h file, use STATE macros for state locks.
2250         Free mutexes in the finalize method instead of dispose.
2251
2252 2005-03-08  Wim Taymans  <wim@fluendo.com>
2253
2254         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2255         * gst/gstthread.c: (gst_thread_release_children_locks):
2256         Added parentage check.
2257         Fix build og GstThread again.
2258
2259 2005-03-08  Wim Taymans  <wim@fluendo.com>
2260
2261         * docs/design/part-MT-refcounting.txt:
2262         * docs/design/part-conventions.txt:
2263         * docs/design/part-gstobject.txt:
2264         * docs/design/part-relations.txt:
2265         * docs/design/part-standards.txt:
2266         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2267         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2268         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2269         (gst_bin_iterate_all_by_interface):
2270         * gst/gstbuffer.h:
2271         * gst/gstclock.h:
2272         * gst/gstelement.c: (gst_element_class_init),
2273         (gst_element_change_state), (gst_element_set_loop_function):
2274         * gst/gstelement.h:
2275         * gst/gstiterator.c:
2276         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2277         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2278         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2279         (gst_object_set_parent), (gst_object_unparent),
2280         (gst_object_check_uniqueness):
2281         * gst/gstobject.h:
2282         Docs updates, clean up some headers.
2283
2284 2005-03-07  Wim Taymans  <wim@fluendo.com>
2285
2286         * check/.cvsignore:
2287         * check/Makefile.am:
2288         * check/gst-libs/.cvsignore:
2289         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2290         * check/gst/.cvsignore:
2291         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2292         (START_TEST), (gstbus_suite), (main):
2293         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2294         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2295         (gst_data_suite), (main):
2296         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2297         (add_fold_func), (gstiterator_suite), (main):
2298         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2299         (thread_name_object), (thread_name_object_default),
2300         (gst_object_name_compare), (gst_object_suite), (main):
2301         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2302         (gst_pad_suite), (main):
2303         * check/gstcheck.c: (gst_check_log_message_func),
2304         (gst_check_log_critical_func), (gst_check_init):
2305         * check/gstcheck.h:
2306         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2307         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2308         Added checks.
2309
2310 2005-03-07  Wim Taymans  <wim@fluendo.com>
2311
2312         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2313         (gst_list_iterator_next), (gst_list_iterator_resync),
2314         (gst_list_iterator_free), (gst_iterator_new_list),
2315         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2316         (gst_iterator_free), (gst_iterator_push), (filter_next),
2317         (filter_resync), (filter_uninit), (filter_free),
2318         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2319         (gst_iterator_foreach), (find_custom_fold_func),
2320         (gst_iterator_find_custom):
2321         * gst/gstiterator.h:
2322         Added missing files.
2323
2324 2005-03-07  Wim Taymans  <wim@fluendo.com>
2325
2326         * Makefile.am:
2327         * configure.ac:
2328         * docs/design/part-MT-refcounting.txt:
2329         * docs/design/part-conventions.txt:
2330         * docs/design/part-gstobject.txt:
2331         * docs/design/part-relations.txt:
2332         * examples/mixer/mixer.c: (main):
2333         * examples/thread/thread.c: (eos), (main):
2334         * gst/Makefile.am:
2335         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2336         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2337         (gst_spider_plug_from_srcpad):
2338         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2339         (gst_spider_identity_change_state),
2340         (gst_spider_identity_sink_loop_type_finding):
2341         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2342         * gst/elements/gstidentity.c: (gst_identity_init):
2343         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2344         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2345         * gst/elements/gsttypefindelement.c: (free_entry):
2346         * gst/gst.c:
2347         * gst/gst.h:
2348         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2349         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2350         (gst_bin_set_index), (gst_bin_set_element_sched),
2351         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2352         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2353         (gst_bin_iterate_elements), (iterate_child_recurse),
2354         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2355         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2356         (compare_interface), (gst_bin_get_by_interface),
2357         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2358         * gst/gstbin.h:
2359         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2360         (gst_buffer_default_free), (gst_buffer_default_copy),
2361         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2362         (gst_buffer_create_sub):
2363         * gst/gstbuffer.h:
2364         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2365         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2366         (gst_caps_unref), (gst_static_caps_get),
2367         (gst_caps_remove_and_get_structure), (gst_caps_append),
2368         (gst_caps_append_structure), (gst_caps_remove_structure),
2369         (gst_caps_copy_nth), (gst_caps_set_simple),
2370         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2371         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2372         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2373         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2374         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2375         (gst_caps_structure_figure_out_union),
2376         (gst_caps_switch_structures), (gst_caps_do_simplify),
2377         (gst_caps_replace), (gst_caps_from_string),
2378         (gst_caps_copy_conditional):
2379         * gst/gstcaps.h:
2380         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2381         (_gst_clock_id_free), (gst_clock_id_unref),
2382         (gst_clock_id_compare_func), (gst_clock_id_wait),
2383         (gst_clock_id_wait_async), (gst_clock_class_init),
2384         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2385         (gst_clock_get_time), (gst_clock_set_time_adjust),
2386         (gst_clock_set_property), (gst_clock_get_property):
2387         * gst/gstclock.h:
2388         * gst/gstcompat.h:
2389         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2390         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2391         * gst/gstdata.h:
2392         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2393         (gst_element_requires_clock), (gst_element_provides_clock),
2394         (gst_element_set_clock), (gst_element_clock_wait),
2395         (gst_element_wait), (gst_element_set_time_delay),
2396         (gst_element_is_indexable), (gst_element_add_pad),
2397         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2398         (pad_compare_name), (gst_element_get_static_pad),
2399         (gst_element_request_pad), (gst_element_get_request_pad),
2400         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2401         (gst_element_class_get_pad_template_list),
2402         (gst_element_class_get_pad_template), (gst_element_error_func),
2403         (gst_element_get_random_pad), (gst_element_get_event_masks),
2404         (gst_element_send_event), (gst_element_seek),
2405         (gst_element_get_query_types), (gst_element_query),
2406         (gst_element_get_formats), (gst_element_convert),
2407         (gst_element_is_locked_state), (gst_element_set_locked_state),
2408         (gst_element_sync_state_with_parent), (gst_element_change_state),
2409         (gst_element_finalize), (gst_element_yield),
2410         (gst_element_interrupt), (gst_element_set_scheduler),
2411         (gst_element_get_scheduler), (gst_element_set_loop_function):
2412         * gst/gstelement.h:
2413         * gst/gstevent.h:
2414         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2415         (gst_format_get_by_nick), (gst_format_get_details),
2416         (gst_format_iterate_definitions):
2417         * gst/gstformat.h:
2418         * gst/gstindex.c: (gst_index_gtype_resolver):
2419         * gst/gstinfo.c:
2420         * gst/gstinfo.h:
2421         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2422         (gst_mem_chunk_free):
2423         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2424         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2425         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2426         (gst_object_dispatch_properties_changed),
2427         (gst_object_set_name_default), (gst_object_set_name),
2428         (gst_object_get_name), (gst_object_set_name_prefix),
2429         (gst_object_get_name_prefix), (gst_object_set_parent),
2430         (gst_object_get_parent), (gst_object_unparent),
2431         (gst_object_check_uniqueness), (gst_object_save_thyself),
2432         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2433         (gst_object_set_property), (gst_object_get_property),
2434         (gst_object_get_path_string):
2435         * gst/gstobject.h:
2436         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2437         (gst_real_pad_init), (gst_real_pad_get_property),
2438         (gst_pad_custom_new), (gst_pad_get_direction),
2439         (gst_pad_set_active), (gst_pad_is_active),
2440         (gst_pad_set_event_function), (gst_pad_is_linked),
2441         (gst_pad_link_free), (gst_pad_link_intersect),
2442         (gst_pad_link_fixate), (gst_pad_set_caps),
2443         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2444         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2445         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2446         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2447         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2448         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2449         (gst_pad_realize), (gst_pad_get_allowed_caps),
2450         (gst_real_pad_dispose), (gst_real_pad_finalize),
2451         (gst_pad_collectv), (gst_pad_collect_valist),
2452         (gst_pad_template_dispose), (gst_pad_template_new),
2453         (gst_pad_get_internal_links):
2454         * gst/gstpad.h:
2455         * gst/gstpipeline.c: (gst_pipeline_dispose),
2456         (gst_pipeline_change_state):
2457         * gst/gstpipeline.h:
2458         * gst/gstplugin.c:
2459         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2460         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2461         * gst/gstpluginfeature.h:
2462         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2463         * gst/gstquery.c: (_gst_query_type_initialize),
2464         (gst_query_type_register), (gst_query_type_get_by_nick),
2465         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2466         * gst/gstquery.h:
2467         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2468         * gst/gstscheduler.c: (gst_scheduler_add_element),
2469         (gst_scheduler_factory_create):
2470         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2471         (gst_structure_free), (gst_structure_set_name),
2472         (gst_structure_id_set_value), (gst_structure_set_value),
2473         (gst_structure_set_valist), (gst_structure_remove_field),
2474         (gst_structure_remove_fields),
2475         (gst_structure_remove_fields_valist),
2476         (gst_structure_remove_all_fields), (gst_structure_foreach),
2477         (gst_structure_map_in_place),
2478         (gst_caps_structure_fixate_field_nearest_int),
2479         (gst_caps_structure_fixate_field_nearest_double):
2480         * gst/gststructure.h:
2481         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2482         (gst_system_clock_init), (gst_system_clock_dispose),
2483         (gst_system_clock_async_thread),
2484         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2485         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2486         * gst/gstsystemclock.h:
2487         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2488         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2489         * gst/gsttaginterface.c:
2490         * gst/gstthread.c: (gst_thread_dispose),
2491         (gst_thread_release_children_locks), (gst_thread_change_state),
2492         (gst_thread_main_loop):
2493         * gst/gsttrashstack.h:
2494         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2495         * gst/gsttypes.h:
2496         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2497         (gst_element_request_pad), (gst_element_get_pad_from_template),
2498         (gst_element_request_compatible_pad),
2499         (gst_element_get_compatible_pad_filtered),
2500         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2501         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2502         (gst_element_link_many), (gst_element_link),
2503         (gst_element_link_pads), (gst_element_unlink_pads),
2504         (gst_element_unlink_many), (gst_element_unlink),
2505         (gst_pad_can_link_filtered), (gst_pad_can_link),
2506         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2507         (gst_object_default_error), (gst_bin_add_many),
2508         (gst_bin_remove_many), (gst_element_populate_std_props),
2509         (gst_element_class_install_std_props), (gst_buffer_merge),
2510         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2511         (link_fold_func), (gst_pad_proxy_setcaps):
2512         * gst/gstutils.h:
2513         * gst/gstvalue.c: (gst_value_deserialize_string):
2514         * gst/parse/grammar.y:
2515         * gst/schedulers/gstbasicscheduler.c:
2516         (gst_basic_scheduler_cothreaded_chain),
2517         (gst_basic_scheduler_chain_recursive_add),
2518         (gst_basic_scheduler_pad_link):
2519         * gst/schedulers/gstoptimalscheduler.c:
2520         (get_group_schedule_function),
2521         (gst_opt_scheduler_state_transition),
2522         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2523         * libs/gst/bytestream/bytestream.c:
2524         * libs/gst/dataprotocol/dataprotocol.c:
2525         (gst_dp_header_from_buffer):
2526         * po/nb.po:
2527         * po/ru.po:
2528         * tests/threadstate/threadstate2.c: (eos):
2529         * tools/gst-compprep.c: (main):
2530         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
2531         (print_pad_info), (print_children_info):
2532         * tools/gst-launch.c: (idle_func), (main):
2533         * tools/gst-md5sum.c: (idle_func), (main):
2534         * tools/gst-xmlinspect.c: (print_element_info):
2535         First THREADED backport attempt, focusing on adding locks and
2536         making sure the API is threadsafe. Needs more work. More docs
2537         follow this week.
2538
2539 2005-02-24  Andy Wingo  <wingo@pobox.com>
2540
2541         * tests/bench-complexity.scm:
2542         * tests/complexity.gnuplot: New files, good for running complexity
2543         benchmarks.
2544
2545         * tests/Makefile.am:
2546         * tests/complexity.c: New test, sets up N elements, at each level
2547         teeing into M streams per element. Eeeenteresting.
2548
2549         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
2550         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
2551         running bench-mass_elements.scm.
2552
2553         * tests/bench-mass_elements.scm: New script, runs mass_elements
2554         for various numbers of identities, outputting the results to a
2555         file. Requires guile 1.6. Just for testing.
2556
2557 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2558
2559         * gst/schedulers/fairscheduler.c:
2560           compile with debug disabled
2561
2562 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2563
2564         * configure.ac:
2565           hunting season on 0.9 is now OPEN
2566
2567 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2568
2569         * docs/libs/tmpl/gstcontrol.sgml:
2570         * docs/libs/tmpl/gstdparam.sgml:
2571         * docs/libs/tmpl/gstdplinint.sgml:
2572         * docs/libs/tmpl/gstdpman.sgml:
2573         * docs/libs/tmpl/gstdpsmooth.sgml:
2574         * docs/libs/tmpl/gstunitconvert.sgml:
2575           more docs for the state of dparams
2576
2577 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2578
2579         * gst/gstelementfactory.c: (gst_element_factory_create):
2580         * gst/gstobject.c: (gst_object_init),
2581         (gst_object_set_name_default), (gst_object_set_name):
2582           name objects by default, not in gst_element_factory_create. Allows
2583           using elements created with g_object_new. (fixes #167283)
2584
2585 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2586
2587         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
2588           make the time that debugging functions print relative to when
2589           gst_init was called
2590
2591 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
2592
2593         * gst/gsttaginterface.c:
2594           Fix inline docs: tag setter vararg functions are NULL-terminated,
2595           GST_TAG_INVALID doesn't exist any more.
2596
2597 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2598
2599         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
2600         Allocate the 1 byte more memory that was forgotten!!!!!
2601         fixes memory corruption on 64bit platforms
2602
2603 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
2604
2605         * docs/pwg/building-pads.xml:
2606         * docs/pwg/intro-basics.xml:
2607           fixed a few typos, relabeled introductionary list of types
2608         * docs/random/ensonic/dparams.txt:
2609           more notes abut dparam changes
2610         * libs/gst/control/dparam.c: (gst_dparam_attach):
2611         * libs/gst/control/dparammanager.c:
2612         * libs/gst/control/dparammanager.h:
2613           - many comments and notes on dparam implementation
2614           - new dparams are were not initialized to the default value
2615             from param spec
2616
2617 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2618
2619         submitted by: Peter Astakhov
2620
2621         * po/LINGUAS:
2622         * po/ru.po:
2623           adding Russian translation
2624
2625 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2626
2627         * configure.ac:
2628         * docs/gst/Makefile.am:
2629         * docs/libs/Makefile.am:
2630           make sure popt is added to gtk-doc flags.  Fixes #147782.
2631
2632 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
2633
2634         * docs/faq/using.xml:
2635           Fix typo in FAQ (artssink => artsdsink)
2636
2637 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2638
2639         * tools/gst-launch.1.in:
2640           Fix typo (#166699).
2641
2642 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
2643
2644         * docs/faq/using.xml:
2645           Add -v argument to fakesrc/fakesink gst-launch line,
2646           so that the promised output will actually show up.
2647
2648 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2649
2650         * gst/gstthread.c: (gst_thread_change_state):
2651           Implement state-change error handling (#166073).
2652
2653 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2654
2655         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2656           Release interrupt after handling (#166250).
2657
2658 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2659
2660         * configure.ac:
2661           back to HEAD
2662
2663 === release 0.8.9 ===
2664
2665 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2666
2667         * NEWS:
2668         * RELEASE:
2669         * configure.ac:
2670           releasing 0.8.9, "Like Eating Glass"
2671
2672 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2673
2674         submitted by: Clytie Siddall
2675
2676         * po/vi.po: Added Vietnamese translation
2677
2678 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2679
2680         patch by: Tim Philipp-Müller
2681
2682         * configure.ac:
2683         * gst/gstpad.c:
2684           unref data when probe function returns FALSE.  Fixes #166362
2685
2686 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2687
2688         * gst/gst.c: (gst_init_get_popt_table):
2689           Fix typo (#166269).
2690
2691 2005-02-04  Andy Wingo  <wingo@pobox.com>
2692
2693         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
2694         the debugging on whether the caps are compatible.
2695
2696 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2697
2698         * docs/manual/basics-elements.xml:
2699           Fix two typos.
2700
2701 2005-02-02  Wim Taymans  <wim@fluendo.com>
2702
2703         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
2704         (schedule_chain), (get_invalid_call), (chain_invalid_call),
2705         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
2706         Remove some FIXMEs after analysing and commenting why they
2707         are not issues.
2708
2709 2005-02-02  Wim Taymans  <wim@fluendo.com>
2710
2711         * gst/schedulers/gstoptimalscheduler.c:
2712         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
2713         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
2714         (get_invalid_call), (chain_invalid_call),
2715         (get_group_schedule_function), (loop_group_schedule_function),
2716         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2717         (gst_opt_scheduler_state_transition),
2718         (gst_opt_scheduler_add_element),
2719         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
2720         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
2721         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
2722         (gst_opt_scheduler_show):
2723         Added lock to protect scheduler data structures.
2724
2725 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2726
2727         * testsuite/threads/threadi.c: (cb_data):
2728           Fix buglet in test.
2729
2730 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2731
2732         * testsuite/threads/Makefile.am:
2733         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
2734           On Wim's request, split the test in three separately-compiled
2735           tests that each test a very specific bug. Two of them still fail,
2736           will create bugs for those. threadi.c indicates why they fail.
2737
2738 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2739
2740         * gst/schedulers/gstoptimalscheduler.c:
2741         (get_group_schedule_function):
2742           Try to work with the threading mess that queue_link is.
2743
2744 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2745
2746         * gst/gstbin.c: (gst_bin_remove_func):
2747           Explicitely make an element release locks in a group when being
2748           remove from a bin.
2749         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2750           If there's no scheduler, always return immediately (similar to
2751           gst_element_interrupt).
2752
2753 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2754
2755         * gst/gstbin.c: (gst_bin_child_state_change_func):
2756           Remove a piece of code that could never be reached.
2757         * docs/gst/gstreamer-sections.txt:
2758         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
2759         (gst_pad_call_get_function):
2760         * gst/gstpad.h:
2761         * testsuite/pad/Makefile.am:
2762           Fix #150546, enable tests.
2763
2764 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2765
2766         * docs/pwg/advanced-types.xml:
2767           Fix description for buffer-frames=0.
2768         * docs/gst/tmpl/gstbin.sgml:
2769         * gst/gstbin.c: (gst_bin_child_state_change_func),
2770         (gst_bin_change_state), (gst_bin_change_state_norecurse):
2771         * gst/gstbin.h:
2772         * testsuite/threads/Makefile.am:
2773         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
2774         (cb_state), (cb_play), (main):
2775           Fix non-recursive state changes to *really* change the state
2776           of the object, and not just call parent_class->state_change.
2777           Fix a lot of lockups caused by this. Fixes #132775. Add test
2778           for the problem. Also enable test to show #142588 (fixed).
2779         * gst/gstthread.c: (gst_thread_change_state),
2780         (gst_thread_child_state_change):
2781           Don't exit the thread if we go to NULL and are inside thread
2782           context. Instead, return control to the main thread context
2783           and exit from there.
2784         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
2785           Don't unset virtual functions, since those may still be used.
2786           That's not necessarily correct, but suffices for now.
2787         * configure.ac:
2788         * testsuite/Makefile.am:
2789         * testsuite/pad/Makefile.am:
2790         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
2791         (gst_test_sink_base_init), (gst_test_sink_chain),
2792         (gst_test_sink_init), (main):
2793         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
2794         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
2795         (main):
2796         * testsuite/pad/link.c: (gst_test_element_class_init),
2797         (gst_test_element_base_init), (gst_test_src_get),
2798         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
2799         (gst_test_filter_loop), (gst_test_filter_init),
2800         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
2801         (cb_error), (main):
2802           Add tests to show #150546. Pass, but should fail (currently
2803           disabled from the testsuite).
2804         * gst/gstscheduler.c: (gst_scheduler_dispose):
2805           Dereference child schedulers on dispose (#94464).
2806         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
2807           Fix typo.
2808         * testsuite/threads/thread.c: (main):
2809           Add more debug.
2810
2811 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2812
2813         * gst/gstpad.c: (gst_pad_push):
2814           Oops, revert previous commit, broke testsuite...
2815
2816 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2817
2818         * gst/gstpad.c: (gst_pad_push):
2819           Add check that the pad on which the push is performed is not a
2820           get-based pad (#150546).
2821
2822 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2823
2824         * gst/elements/gsttypefindelement.c:
2825         (gst_type_find_element_handle_event):
2826           Fix buffer pushing if stream EOSes during typefinding.
2827
2828 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
2829
2830         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2831
2832         * gst/gstvalue.c: (gst_string_wrap):
2833           Allow NULL-strings as argument (#165365).
2834
2835 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
2836
2837         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2838
2839         * gst/schedulers/faircothreads.c:
2840         (gst_fair_scheduler_cothread_queue_show):
2841           Fix build without debug enabled.
2842
2843 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
2844
2845         * docs/gst/gstreamer-sections.txt:
2846         * docs/libs/gstreamer-libs-docs.sgml:
2847         * docs/libs/gstreamer-libs-sections.txt:
2848         * docs/libs/tmpl/gstcontrol.sgml:
2849         * docs/libs/tmpl/gstdparam.sgml:
2850         * docs/libs/tmpl/gstdplinint.sgml:
2851         * docs/libs/tmpl/gstdpman.sgml:
2852         * docs/libs/tmpl/gstdpsmooth.sgml:
2853         * docs/libs/tmpl/gstputbits.sgml:
2854         * docs/libs/tmpl/gstunitconvert.sgml:
2855         * libs/gst/control/dparam.c:
2856         * libs/gst/control/dparam.h:
2857         * libs/gst/control/dparammanager.c:
2858         (gst_dpman_add_required_dparam_callback),
2859         (gst_dpman_add_required_dparam_direct),
2860         (gst_dpman_add_required_dparam_array),
2861         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
2862         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
2863         (gst_dpman_get_manager)
2864           restructured DParam docs
2865
2866 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
2867
2868         * gst-element-check.m4:
2869           Only check for gst-inspect if we haven't already
2870           found it in previous element check runs
2871
2872 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
2873
2874         * docs/gst/Makefile.am:
2875         * docs/libs/Makefile.am:
2876           fixed install rules to treat style.css as optional
2877
2878 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
2879
2880         * docs/gst/Makefile.am:
2881         * docs/libs/Makefile.am:
2882           install style.css along with docs
2883         * docs/gst/tmpl/gstbin.sgml:
2884         * docs/gst/tmpl/gstclock.sgml:
2885         * docs/gst/tmpl/gstdata.sgml:
2886         * docs/gst/tmpl/gstelement.sgml:
2887         * gst/gstbin.h:
2888         * gst/gstelement.c: (gst_element_class_init):
2889         * gst/gstelement.h:
2890           fixing incomplete docs
2891
2892 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
2893
2894         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
2895           Don't unref seek event twice when fflush() fails
2896           
2897 2005-01-22  David Schleef  <ds@schleef.org>
2898
2899         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
2900
2901 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
2902
2903         * docs/gst/Makefile.am:
2904         * docs/libs/Makefile.am:
2905           added params for deprecation guards
2906         * gst/gst.c:
2907         * gst/gst.h:
2908         * gst/gsterror.c: (_gst_resource_errors_init),
2909         (_gst_stream_errors_init):
2910         * gst/gsterror.h:
2911           documented some more enums
2912
2913 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
2914         * gst/autoplug/gstspideridentity.c:
2915         Cosmetic fix - spider_find_peek should be static
2916         * gst/parse/parse.l:
2917         Applying fix for #164261
2918
2919 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
2920
2921         * docs/gst/gstreamer-sections.txt:
2922         * docs/gst/tmpl/gstplugin.sgml:
2923         * docs/libs/gstreamer-libs-sections.txt:
2924         * docs/libs/tmpl/gstcontrol.sgml:
2925         * gst/gstbuffer.h:
2926         * gst/gsttag.h:
2927         * gst/gstvalue.c:
2928           added docs for the TAG defines
2929
2930 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2931
2932         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2933           Only unref entry if there is an entry.
2934
2935 2005-01-17  Wim Taymans  <wim@fluendo.com>
2936
2937         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
2938         (remove_from_group), (schedule_group), (normalize_group),
2939         (gst_opt_scheduler_iterate):
2940         Also ref/unref decoupled elements before iterating the
2941         group since they are not added to the list of elements.
2942
2943 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2944
2945         * docs/manual/highlevel-components.xml:
2946           Add subtitle/streamselection as new features to playbin.
2947
2948 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2949
2950         * docs/manual/manual.xml:
2951           Re-enable dataaccess docs (oops).
2952
2953 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2954
2955         * docs/pwg/advanced-types.xml:
2956         * docs/random/mimetypes:
2957           Add documentation on libsndfile types (#163309), by Steve Baker
2958           <steve@stevebaker.org>.
2959         * gst/gstelement.c: (gst_element_release_request_pad):
2960           If an element has no explicit function, just remove the pad.
2961
2962 2005-01-17  Luca Ognibene  <luogni@tin.it>
2963
2964         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2965
2966         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
2967           Fix memleak (#163801).
2968
2969 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2970
2971         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
2972           I think this is actually more correct...
2973
2974 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2975
2976         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2977           Another workaround for memory access while destroyed in callback.
2978           Please, someone with refcount knowledge, have a look at this.
2979
2980 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2981
2982         * docs/faq/faq.xml:
2983         * docs/faq/legal.xml:
2984           move the legal Q&A here
2985
2986 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2987
2988         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
2989         (gst_tee_request_new_pad):
2990           Fix negotiation.
2991
2992 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2993
2994         * docs/random/omega/caps2:
2995         * testsuite/caps/caps_strings:
2996           replace framerate aproximations by their real value
2997           (24000/1001, 30000/1001, 60000/1001)
2998           Partially fixes bug #164049
2999
3000 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3001
3002         * docs/gst/Makefile.am:
3003           don't fail on the stupid GstPoptOption
3004
3005 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3006
3007         * gst/gstpad.h:
3008         * gst/gstprobe.c:
3009           allow probes to work on ghost pads by realizing the pad
3010           probe debugging
3011
3012 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3013
3014         * docs/gst/gstreamer-sections.txt:
3015         * docs/gst/tmpl/gstpad.sgml:
3016         * gst/gstpad.c: (gst_pad_set_active_recursive):
3017         * gst/gstpad.h:
3018           Add gst_pad_set_active_recursive().
3019
3020 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3021
3022         * docs/random/release:
3023           updates
3024         * gst/gst_private.h:
3025         * gst/gstinfo.c:
3026         * gst/gstobject.c:
3027           move deep_notify logging to a new category
3028         * gst/gstprobe.c:
3029         * gst/gstprobe.h:
3030           add stuff so bindings can wrap probes
3031
3032 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3033
3034         * gst/gstplugin.c: (gst_plugin_load):
3035           Fix plugin loading if plugin/lib was already loaded. Fixes
3036           #163383
3037
3038 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3039
3040         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3041
3042         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3043           Protect plugin loading by a mutex so it's threadsafe. Fixes
3044           #163234.
3045
3046 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3047
3048         * gst/gstevent.c: (_gst_event_copy):
3049           Reference source object when copying events, since it'll be
3050           dereferenced on event dereferencing as well.
3051
3052 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3053
3054         * docs/gst/gstreamer-sections.txt:
3055         * docs/gst/tmpl/gstevent.sgml:
3056         * gst/gstevent.c: (gst_event_new_filler_stamped),
3057         (gst_event_filler_get_duration):
3058         * gst/gstevent.h:
3059           Add two new functions for filler events (which are used to
3060           synchronize streams if one of them is not having any data
3061           for a while) without interrupting the actual data-stream.
3062           Basically a no-op.
3063         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3064         (gst_queue_link_sink), (gst_queue_link_src),
3065         (gst_queue_change_state):
3066           Allow for renegotiation while filled. Required for stream
3067           switching while playing.
3068
3069 2005-01-08  Benjamin Otte  <otte@gnome.org>
3070
3071         * gst/gstelement.c: (gst_element_link_many):
3072           fix up g_return_if_fail's
3073         * po/LINGUAS:
3074         * po/de.po:
3075           add German translation, that was somehow not included
3076
3077 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3078
3079         * docs/random/mimetypes:
3080           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3081           do not add them to riff-lib as they are not common
3082
3083 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3084
3085         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3086           Check for existence of probe after performing the probe before
3087           re-accessing it to prevent segfaults caused by removal of the
3088           probe in the callback.
3089
3090 2005-01-05  David Schleef  <ds@schleef.org>
3091
3092         * testsuite/registry/Makefile.am:
3093         * testsuite/registry/gst-print-formats.c:
3094         (print_pad_templates_info), (print_element_list),
3095         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3096         (g_list_uniqify), (get_pad_templates_info),
3097         (get_element_mime_list), (print_mime_list), (main): A little
3098         program that looks through the registry to find elements of
3099         a given type.  Not particularly interesting as a test, except
3100         that there's no other test covering the same area.
3101
3102 2005-01-05  David Schleef  <ds@schleef.org>
3103
3104         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3105         (fault_handler_sigaction), (fault_spin),
3106         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3107         in signal.h-type signal handlers by not calling forbidden functions,
3108         including gst_element_set_state().
3109
3110 2005-01-05  David Schleef  <ds@schleef.org>
3111
3112         * gst/gstvalue.h: Mark _gst_reserved[] as private
3113
3114 2005-01-05  David Schleef  <ds@schleef.org>
3115
3116         * gst/gstvalue.c: Fix doc build problem.
3117
3118 2005-01-05  David Schleef  <ds@schleef.org>
3119
3120         * gst/gstvalue.c: Add some documentation
3121
3122 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3123
3124         * docs/README:
3125           another shell oneliner for empty return value docs
3126         * gst/gstcaps.c:
3127         * gst/gstvalue.c:
3128         * libs/gst/control/dparam.c:
3129           more doc fixes (parameters and return values)
3130
3131 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3132
3133         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3134
3135         * gst/gstregistry.h:
3136         * gst/registries/gstxmlregistry.c:
3137           Fix macro's for Mingw (fixes #162276).
3138
3139 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3140
3141         * docs/README:
3142           quick shell oneliner to find undocumented members
3143         * docs/gst/tmpl/gstplugin.sgml:
3144         * docs/gst/tmpl/gstscheduler.sgml:
3145         * docs/gst/tmpl/gstthread.sgml:
3146           more enumtypes cleanup
3147         * gst/gsterror.h:
3148           activated documentation comments, now someone needs to document
3149           the enums :(
3150
3151 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3152
3153         * docs/manual/manual.xml:
3154           Add dataaccess part (doh!).
3155
3156 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3157
3158         * docs/manual/advanced-autoplugging.xml:
3159           Fix typo (intiate -> initiate).
3160
3161 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3162
3163         * docs/random/bbb/streamselection:
3164           Add some notes on how to handle multi-subtitle/-audio streams.
3165
3166 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3167
3168         * docs/gst/gstreamer-docs.sgml:
3169         * docs/gst/gstreamer-sections.txt:
3170         * docs/gst/tmpl/gstenumtypes.sgml:
3171         * docs/gst/tmpl/gsterror.sgml:
3172         * docs/gst/tmpl/gstevent.sgml:
3173         * docs/gst/tmpl/gstpad.sgml:
3174         * docs/gst/tmpl/gstpadtemplate.sgml:
3175         * docs/gst/tmpl/gstthread.sgml:
3176           removed gstenumtypes section from docs and put all the enums into
3177           their sections
3178
3179 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3180
3181         * gst/gstplugin.c:
3182           document gst_library_load a bit more (riff special case + return
3183           value if already loaded)
3184         * testsuite/bytestream/filepadsink.c:
3185           plugin name is 'gstbytestream', not 'bytestream'
3186
3187 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3188
3189         * docs/random/bbb/subtitles:
3190           Add some first mind rumblings on proper subtitle support.
3191
3192 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3193
3194         * po/ca.po:
3195         * po/sv.po:
3196           updated translations
3197
3198 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3199
3200         * docs/manual/advanced-dataaccess.xml:
3201           Add section on how to use fakesrc/fakesink/identity in your
3202           application, plus section on how to embed plugins. Also mention
3203           probes.
3204         * docs/manual/appendix-checklist.xml:
3205         * docs/manual/appendix-debugging.xml:
3206         * docs/manual/appendix-gnome.xml:
3207         * docs/manual/appendix-integration.xml:
3208           Debug -> checklist, GNOME -> integration, add sections on Linux,
3209           KDE integration and add other things useful for application
3210           development.
3211         * docs/manual/manual.xml:
3212           Remove some fixmes, update some file pointers.
3213         * docs/pwg/appendix-checklist.xml:
3214           Fix typo.
3215         * docs/pwg/building-boiler.xml:
3216           Remove ugly header and add commented fixme.
3217         * docs/pwg/pwg.xml:
3218           Add fixme.
3219         * examples/manual/Makefile.am:
3220           Add example for added docs.
3221
3222 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3223
3224         * configure.ac:
3225           back to HEAD
3226
3227 === release 0.8.8 ===
3228
3229 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3230
3231         * NEWS:
3232         * RELEASE:
3233         * configure.ac:
3234           Releasing 0.8.8, "I'll Take Care Of You"
3235
3236 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3237
3238         * configure.ac:
3239           second prerelease
3240
3241 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3242
3243         patch by: Wim Taymans
3244
3245         * gst/gstbin.c:
3246           Fix for #159852 - make iterate emission threadsafe
3247
3248 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3249
3250         * docs/faq/cvs.xml:
3251           notes about new fdo account request
3252
3253 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3254
3255         * docs/gst/gstreamer-docs.sgml:
3256         * docs/gst/tmpl/gstenumtypes.sgml:
3257         * docs/gst/tmpl/gstplugin.sgml:
3258         * docs/libs/gstreamer-libs-docs.sgml:
3259           Added missing short docs. Added ids for navigation.
3260
3261 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3262
3263         * docs/manual/advanced-autoplugging.xml:
3264         * docs/manual/advanced-schedulers.xml:
3265         * docs/manual/advanced-threads.xml:
3266           Rewrites. Remove cothreads, go a bit into opt specifically,
3267           document threads and their gotchas, and do some technical stuff
3268           on autoplugging plus add some working examples. Fixes #157395.
3269         * examples/manual/Makefile.am:
3270           Add typefind/autoplugger example (one that actually works).
3271           Remove queue example since it's a duplicate of the thread one.
3272
3273 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3274
3275         * gst/gstvalue.c: (gst_value_deserialize_string):
3276           use deprecated g_value_set_string_take_ownership to keep compatible
3277           with glib 2.2
3278
3279 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3280
3281         * gst/gstvalue.c: (gst_value_deserialize_string):
3282           revert last patch, only dom a g_utf8_validate now before accepting
3283           the string - caps parsing strips " from strings so we can't rely on
3284           them
3285         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3286           disable a test that tested the above and comment it
3287
3288 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3289
3290         Patch reviewed by David Schleef  <ds@schleef.org>
3291
3292         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3293         bug #153882)
3294         * win32/gstenumtypes.h: same
3295
3296 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3297
3298         * gst/gstpad.c: (gst_pad_query):
3299           Do query on realized pad, similar to how convert/send_event handle
3300           this. Also makes sense, since this pad belongs to the function to
3301           which this query will be sent. Fixes #158163.
3302
3303 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3304
3305         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3306
3307 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3308
3309         * docs/faq/general.xml: fix pipeline to actually work
3310
3311 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3312
3313         * gst/gstvalue.c: (gst_value_deserialize_string):
3314           check that a simple string that gets deserialized does not contain
3315           invalid characters
3316         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3317           remove a test that tested a wring behaviour
3318
3319 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3320
3321         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3322
3323         * docs/manual/intro-motivation.xml:
3324           Fix typos.
3325
3326 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3327
3328         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3329
3330         * docs/gst/tmpl/gstprobe.sgml:
3331           Fix documentation of probe callback - it is supposed to return
3332           FALSE, not TRUE, to remove data from the stream (#159087).
3333
3334 2004-12-16  Daniel Gazard  <dany42@free.fr>
3335
3336         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3337
3338         * gst/gstelementfactory.c: (gst_element_factory_create):
3339           Fix compile failure if compiling without libxml2 support (#149936).
3340
3341 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3342
3343         * docs/manual/advanced-autoplugging.xml:
3344         * docs/manual/highlevel-components.xml:
3345           Move spider from autoplugging to components. Autoplugging is for
3346           internals, not for solutions. ;-).
3347
3348 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3349
3350         * docs/random/ds/0.9-suggested-changes:
3351           Make note on device/location/uri property names.
3352
3353 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3354
3355         * docs/manual/advanced-autoplugging.xml:
3356         * docs/manual/advanced-clocks.xml:
3357         * docs/manual/advanced-interfaces.xml:
3358         * docs/manual/advanced-metadata.xml:
3359         * docs/manual/advanced-position.xml:
3360         * docs/manual/advanced-schedulers.xml:
3361         * docs/manual/advanced-threads.xml:
3362         * docs/manual/appendix-gnome.xml:
3363         * docs/manual/appendix-programs.xml:
3364         * docs/manual/appendix-quotes.xml:
3365         * docs/manual/autoplugging.xml:
3366         * docs/manual/basics-bins.xml:
3367         * docs/manual/basics-data.xml:
3368         * docs/manual/basics-elements.xml:
3369         * docs/manual/basics-helloworld.xml:
3370         * docs/manual/basics-init.xml:
3371         * docs/manual/basics-pads.xml:
3372         * docs/manual/basics-plugins.xml:
3373         * docs/manual/bins-api.xml:
3374         * docs/manual/bins.xml:
3375         * docs/manual/buffers-api.xml:
3376         * docs/manual/buffers.xml:
3377         * docs/manual/clocks.xml:
3378         * docs/manual/components.xml:
3379         * docs/manual/cothreads.xml:
3380         * docs/manual/debugging.xml:
3381         * docs/manual/dparams-app.xml:
3382         * docs/manual/dynamic.xml:
3383         * docs/manual/elements-api.xml:
3384         * docs/manual/elements.xml:
3385         * docs/manual/factories.xml:
3386         * docs/manual/gnome.xml:
3387         * docs/manual/goals.xml:
3388         * docs/manual/helloworld.xml:
3389         * docs/manual/helloworld2.xml:
3390         * docs/manual/highlevel-components.xml:
3391         * docs/manual/highlevel-xml.xml:
3392         * docs/manual/init-api.xml:
3393         * docs/manual/intro-basics.xml:
3394         * docs/manual/intro-motivation.xml:
3395         * docs/manual/intro-preface.xml:
3396         * docs/manual/intro.xml:
3397         * docs/manual/links-api.xml:
3398         * docs/manual/links.xml:
3399         * docs/manual/manual.xml:
3400         * docs/manual/motivation.xml:
3401         * docs/manual/pads-api.xml:
3402         * docs/manual/pads.xml:
3403         * docs/manual/plugins-api.xml:
3404         * docs/manual/plugins.xml:
3405         * docs/manual/programs.xml:
3406         * docs/manual/queues.xml:
3407         * docs/manual/quotes.xml:
3408         * docs/manual/schedulers.xml:
3409         * docs/manual/states-api.xml:
3410         * docs/manual/states.xml:
3411         * docs/manual/threads.xml:
3412         * docs/manual/typedetection.xml:
3413         * docs/manual/win32.xml:
3414         * docs/manual/xml.xml:
3415           Try 2. This time, include a short preface as a "general
3416           introduction", also add code blocks around all code samples
3417           so they get compiled. We still need a way to tell readers
3418           the filename of the code sample. In some cases, don't show
3419           all code in the documentation, but do include it in the generated
3420           code. This allows for focussing on specific bits in the docs,
3421           while still having a full test application available.
3422         * examples/manual/Makefile.am:
3423           Fix up examples for new ADM. Add several of the new examples that
3424           were either added or were missing from the build system.
3425         * examples/manual/extract.pl:
3426           Allow nameless blocks.
3427
3428 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3429
3430         * docs/manual/elements-api.xml:
3431         * docs/manual/helloworld.xml:
3432         * examples/manual/extract.pl:
3433           fix last example.  Add example of adding code blocks that are not
3434           shown in docbook output.
3435
3436 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3437
3438         * docs/manual/dynamic.xml:
3439         * docs/manual/elements-api.xml:
3440         * docs/manual/gnome.xml:
3441         * docs/manual/helloworld2.xml:
3442         * docs/manual/init-api.xml:
3443         * docs/manual/queues.xml:
3444         * docs/manual/threads.xml:
3445         * docs/manual/xml.xml:
3446         * examples/manual/extract.pl:
3447           Make it possible to extract example code from separate blocks.
3448           Should make Ronald happy.
3449
3450 2004-12-15  Wim Taymans  <wim@fluendo.com>
3451
3452         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3453         (remove_from_group), (group_elements_set_visited),
3454         (normalize_group), (gst_opt_scheduler_iterate):
3455         Fix bug where a flag was not updated on a decoupled entry point 
3456         because we were just checking the group element list and decoupled
3457         elements are not in that list..
3458
3459 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3460
3461         * docs/manual/advanced-autoplugging.xml:
3462         * docs/manual/advanced-clocks.xml:
3463         * docs/manual/advanced-dparams.xml:
3464         * docs/manual/advanced-interfaces.xml:
3465         * docs/manual/advanced-metadata.xml:
3466         * docs/manual/advanced-position.xml:
3467         * docs/manual/advanced-schedulers.xml:
3468         * docs/manual/advanced-threads.xml:
3469         * docs/manual/appendix-debugging.xml:
3470         * docs/manual/appendix-gnome.xml:
3471         * docs/manual/appendix-programs.xml:
3472         * docs/manual/appendix-quotes.xml:
3473         * docs/manual/appendix-win32.xml:
3474         * docs/manual/autoplugging.xml:
3475         * docs/manual/basics-bins.xml:
3476         * docs/manual/basics-data.xml:
3477         * docs/manual/basics-elements.xml:
3478         * docs/manual/basics-helloworld.xml:
3479         * docs/manual/basics-init.xml:
3480         * docs/manual/basics-pads.xml:
3481         * docs/manual/basics-plugins.xml:
3482         * docs/manual/bins-api.xml:
3483         * docs/manual/bins.xml:
3484         * docs/manual/buffers-api.xml:
3485         * docs/manual/buffers.xml:
3486         * docs/manual/clocks.xml:
3487         * docs/manual/components.xml:
3488         * docs/manual/cothreads.xml:
3489         * docs/manual/debugging.xml:
3490         * docs/manual/dparams-app.xml:
3491         * docs/manual/dynamic.xml:
3492         * docs/manual/elements-api.xml:
3493         * docs/manual/elements.xml:
3494         * docs/manual/factories.xml:
3495         * docs/manual/gnome.xml:
3496         * docs/manual/goals.xml:
3497         * docs/manual/helloworld.xml:
3498         * docs/manual/helloworld2.xml:
3499         * docs/manual/highlevel-components.xml:
3500         * docs/manual/highlevel-xml.xml:
3501         * docs/manual/init-api.xml:
3502         * docs/manual/intro-motivation.xml:
3503         * docs/manual/intro-preface.xml:
3504         * docs/manual/intro.xml:
3505         * docs/manual/links-api.xml:
3506         * docs/manual/links.xml:
3507         * docs/manual/manual.xml:
3508         * docs/manual/motivation.xml:
3509         * docs/manual/pads-api.xml:
3510         * docs/manual/pads.xml:
3511         * docs/manual/plugins-api.xml:
3512         * docs/manual/plugins.xml:
3513         * docs/manual/programs.xml:
3514         * docs/manual/queues.xml:
3515         * docs/manual/quotes.xml:
3516         * docs/manual/schedulers.xml:
3517         * docs/manual/states-api.xml:
3518         * docs/manual/states.xml:
3519         * docs/manual/threads.xml:
3520         * docs/manual/typedetection.xml:
3521         * docs/manual/win32.xml:
3522         * docs/manual/xml.xml:
3523           First try at rewriting the ADM. Needs lotsamore work, but some
3524           parts might already be somewhat useful.
3525         * docs/pwg/advanced-interfaces.xml:
3526           Remove properties interface, it never actually existed (except for
3527           on my HD...).
3528
3529 2004-12-13  David Schleef  <ds@schleef.org>
3530
3531         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
3532         be NULL (bug #160220).
3533
3534 2004-12-13  David Schleef  <ds@schleef.org>
3535
3536         * configure.ac: remove all mmx stuff, because it's not used.
3537         * docs/random/ds/0.9-suggested-changes: additional notes
3538         * include/Makefile.am: we don't use these anymore
3539         * include/mmx.h: remove
3540         * include/sse.h: remove
3541
3542 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3543
3544         * docs/random/mimetypes:
3545           Add FOURCC code for h264 codec (VSSH)
3546           Add alternate FOURCC codes for h263 related codecs
3547
3548 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
3549
3550         * docs/manual/programs.xml:
3551           Added more gst-launch examples.
3552
3553 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3554
3555         * gst/gstqueue.c: (gst_queue_handle_src_query):
3556           Check for availability again.
3557
3558 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3559
3560         * gst/gstcaps.c: (gst_caps_compare_structures):
3561           Simple caps go first. This has the nice side-effect of fixing an
3562           obscure warning.
3563
3564 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3565
3566         * gst/gstversion.h.in:
3567           Protect header.
3568
3569 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3570
3571         * gst/schedulers/gstoptimalscheduler.c:
3572         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
3573         (gst_opt_scheduler_get_wrapper):
3574           When we're recursing into a chain run, only run the directly
3575           related group, not all queued ones. This will fix a possible
3576           deadlock in chains with more than two groups.
3577
3578 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3579
3580         * autogen.sh:
3581           remove patch if autopoint fails
3582
3583 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3584
3585         * docs/gst/gstreamer-sections.txt:
3586           Document Thomas' addition, fix build, make Luis the sheriff happy.
3587
3588 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3589
3590         * gst/gstplugin.c:
3591         * gst/gstplugin.h:
3592           add accessor for version field
3593
3594 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3595
3596         submitted by: Luca Ferretti <elle.uca@infinito.it>
3597
3598         * po/LINGUAS:
3599         * po/it.po:
3600           New tranlation added: Italian
3601
3602 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3603
3604         * gst/gstpad.c: (gst_pad_is_negotiated),
3605         (gst_pad_get_negotiated_caps):
3606           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
3607           it doesn't actually check the contents), so be sure to hand it
3608           a RealPad else we'll crash.
3609
3610 2004-12-03  Wim Taymans  <wim@fluendo.com>
3611
3612         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3613         (gst_queue_link), (gst_queue_handle_src_query):
3614         Reverted to 1.110 until this makes the testsuite and various
3615         apps work.
3616
3617 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
3618
3619         * docs/upload.mak: fix included CVS conflict strings
3620
3621 2004-12-01  William Jon McCann  <mccann@jhu.edu>
3622
3623         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3624
3625         * gst/gstelement.c: (gst_element_error_full):
3626           Use g_error_new_literal because error text may have
3627           percentage signs in it. Fixes #160019.
3628
3629 2004-12-01  Benjamin Otte  <otte@gnome.org>
3630
3631         * gst/elements/gstbufferstore.c:
3632         (gst_buffer_store_add_buffer_func):
3633           don't try to make subbuffers bigger than they can be. (fixes
3634           #159970)
3635
3636 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3637
3638         * docs/gst/gstreamer-sections.txt:
3639         * docs/gst/tmpl/gstvalue.sgml:
3640           Add new function to docs to fix build.
3641
3642 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3643
3644         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
3645         * gst/gstpad.c: (_gst_pad_default_fixate_value),
3646         (_gst_pad_default_fixate_foreach):
3647         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
3648         * gst/gstvalue.h:
3649           Deprecate _type_is_fixed, use _value_is_fixed instead, since
3650           in some cases (arrays), the fixedness depends on the content.
3651         * gst/gstqueue.c: (gst_queue_handle_src_query):
3652           Check for availability before doing something.
3653
3654 2004-11-29  Wim Taymans  <wim@fluendo.com>
3655
3656         * testsuite/threads/Makefile.am:
3657         * testsuite/threads/signals.c: (gst_test_get_type),
3658         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
3659         (gst_test_set_property), (gst_test_get_property),
3660         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
3661         (gst_test_do_prop), (run_thread), (main):
3662         Added a bunch of testcases that show threadsafety bugs in glib.
3663
3664 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
3665
3666         * docs/manual/programs.xml:
3667           Added a first batch of gst-launch examples, as provided by Ronald
3668           and others from the devel-mlist
3669
3670 2004-11-28  Benjamin Otte  <otte@gnome.org>
3671
3672         * gst/gstelement.c: (gst_element_negotiate_pads):
3673           simplify
3674         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
3675         (gst_value_serialize_string), (gst_value_deserialize_string):
3676           add unwrapping of previously wrapped strings. Fix bug in wrapping
3677           while at it.
3678         * testsuite/caps/value_serialize.c: (test1),
3679         (test_string_serialization), (test_string_deserialization), (main):
3680           add tests for string (de)serialization
3681
3682 2004-11-26  Wim Taymans  <wim@fluendo.com>
3683
3684         * testsuite/threads/159566.c: (object_deep_notify), (main):
3685         * testsuite/threads/Makefile.am:
3686         Added testsuite to show bug #159566
3687
3688 2004-11-25  Wim Taymans  <wim@fluendo.com>
3689
3690         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
3691         (gst_thread_child_state_change), (gst_thread_main_loop):
3692         Ref the thread object in the GThread mainloop. Break out of the
3693         thread mainloop if it holds the last ref. This properly exits
3694         the threads when disposing the thread from its own context. It
3695         also avoids possible deadlocks in the dispose function.
3696
3697 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
3698
3699         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
3700         it is necessary to wait.
3701
3702 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3703
3704         * docs/pwg/building-boiler.xml:
3705           Make description somewhat clearer.
3706
3707 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3708
3709         * docs/upload.mak:
3710           Apparently docs changed location on FDO's server.
3711
3712 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3713
3714         * docs/pwg/appendix-checklist.xml:
3715           Add some random notes on things to check when writing an element.
3716           This list can be extended as people see fit.
3717
3718 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
3719
3720         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
3721         (gst_queue_link_src): Allow for renegotiating the caps of the sink
3722         pad. The queue will now wait until it is empty and forward the new
3723         caps to the source.
3724         * gst/gstbin.c (gst_bin_set_element_sched)
3725         (gst_bin_unset_element_sched): Make sure that all elements and
3726         links are registered and unregistered with the scheduler exactly
3727         once. This elaborates on a fix by Benjamin Otte, but
3728         guarantees that decoupled elements are also registered.
3729
3730 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3731
3732         * docs/manual/quotes.xml:
3733           add a quote
3734         * configure.ac:
3735         * gst/gst.c:
3736         * gst/gstinfo.c:
3737           add LIBDIR and move init message higher up so it's at the start
3738
3739 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3740
3741         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
3742         * gstreamer.spec.in: add fair
3743
3744 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3745
3746         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3747         * gst/elements/gstidentity.c: (gst_identity_class_init):
3748           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
3749           <teuf@gnome.org> (#157263).
3750         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3751         (gst_type_find_handle_src_query):
3752           Subtract size of internally stored data from position queries.
3753
3754 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
3755
3756         * gst/schedulers/fairscheduler.c:
3757         * gst/schedulers/faircothreads.c:
3758         * gst/schedulers/faircothreads.h:
3759         New cothread based scheduler: Fair scheduler.
3760         * gst/schedulers/gthread-cothreads.h: 
3761         Add the standard #if around the whole file.
3762         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
3763         compilation of the functions defined in this file. This is
3764         necessary to be able to use this file as a normal header.
3765         * gst/schedulers/Makefile.am: Add compiling support for fair
3766         scheduler.
3767         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
3768         scheduler cothreads layer from documentation generation.
3769
3770 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3771
3772         * gst/autoplug/gstspideridentity.c:
3773         (gst_spider_identity_sink_loop_type_finding):
3774           Don't crash if that function is not implemented.
3775
3776 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3777
3778         * docs/pwg/advanced-types.xml:
3779           Another typo.
3780
3781 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3782
3783         * docs/pwg/intro-preface.xml:
3784           Hm, ok, so the brackets weren't really useful...
3785         * docs/pwg/other-ntoone.xml:
3786           Fix embarassing typo.
3787
3788 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3789
3790         * docs/pwg/intro-preface.xml:
3791           Rewrite preface.
3792
3793 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3794
3795         * docs/pwg/advanced-scheduling.xml:
3796         * docs/pwg/advanced-tagging.xml:
3797         * docs/pwg/advanced-types.xml:
3798         * docs/pwg/building-boiler.xml:
3799         * docs/pwg/building-chainfn.xml:
3800         * docs/pwg/building-signals.xml:
3801         * docs/pwg/building-state.xml:
3802         * docs/pwg/building-testapp.xml:
3803         * docs/pwg/intro-basics.xml:
3804         * docs/pwg/other-manager.xml:
3805         * docs/pwg/other-source.xml:
3806           Typo fixes.
3807         * docs/pwg/other-manager.xml:
3808           Add some first content. No example code yet.
3809         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3810           Remove double newlines.
3811
3812 2004-11-04  Wim Taymans  <wim@fluendo.com>
3813
3814         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3815         (remove_from_group), (normalize_group), (group_migrate_connected),
3816         (gst_opt_scheduler_iterate):
3817         * testsuite/schedulers/.cvsignore:
3818         * testsuite/schedulers/Makefile.am:
3819         * testsuite/schedulers/queue_link.c: (main):
3820         Added testcase for scheduler segfault.
3821         Fix scheduler segfault when removing a decoupled
3822         entry point as the last element from a group.
3823
3824 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3825
3826         * gst/gstmarshal.list: add missing marshaller, fixes build
3827
3828 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3829
3830         * docs/random/signal: added notes about using BOXED for GstBuffer
3831         signal marshallers, not POINTER
3832
3833 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3834
3835         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3836         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
3837         POINTER=>BOXED changes to marshal GstBuffers
3838
3839 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3840
3841         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
3842         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
3843
3844 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
3845
3846         * docs/gst/gstreamer-sections.txt:
3847         * docs/gst/tmpl/gstcaps.sgml:
3848         * docs/gst/tmpl/gsterror.sgml:
3849         * docs/gst/tmpl/gstinfo.sgml:
3850         * docs/gst/tmpl/gstmacros.sgml:
3851         * docs/gst/tmpl/gstutils.sgml:
3852         * docs/random/ensonic/interfaces.txt:
3853         * gst/gstinfo.h:
3854           added some more docs, removed two obsolete defines
3855
3856 2004-11-02  Kjartan Maraas <as at gnome.org>
3857
3858         reviewed by: Wim Taymans, Ronald Bultje.
3859
3860         * gst/cothreads.c: (cothread_create):
3861         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3862         (gst_bin_child_state_change_func):
3863         * gst/gstbuffer.c: (gst_buffer_span):
3864         * gst/gstelement.c: (gst_element_get_index),
3865         (gst_element_get_event_masks), (gst_element_get_query_types),
3866         (gst_element_get_formats):
3867         * gst/gsterror.c: (_gst_core_errors_init),
3868         (_gst_library_errors_init), (_gst_resource_errors_init),
3869         (_gst_stream_errors_init):
3870         * gst/gstobject.c: (gst_object_default_deep_notify):
3871         * gst/gstpad.c: (gst_pad_get_event_masks),
3872         (gst_pad_get_internal_links_default):
3873         * gst/gstplugin.c: (gst_plugin_register_func),
3874         (gst_plugin_get_module):
3875         * gst/gststructure.c: (gst_structure_get_string),
3876         (gst_structure_get_abbrs), (gst_structure_from_abbr),
3877         (gst_structure_to_abbr):
3878         * gst/gstutils.c: (gst_print_element_args):
3879         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3880         (setup_group_scheduler), (gst_opt_scheduler_iterate):
3881         Aplied part of patch #157127: Cleanup of issues reported by 
3882         sparse.
3883         Also do not try to use cothreads when there is no cothread
3884         context yet.
3885
3886 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
3887
3888         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3889         (gst_opt_scheduler_iterate):
3890         Applied patch #154061. Running a pipeline in which an element 
3891         calls GST_ELEMENT_ERROR in the chain function, the opt 
3892         scheduler doesn't unref the chain so it never gets freed.
3893
3894 2004-11-02  Wim Taymans  <wim@fluendo.com>
3895
3896         * gst/gststructure.c: (gst_structure_get_abbrs),
3897         (gst_structure_from_abbr), (gst_structure_to_abbr):
3898         Remove that ugly if-then thing in the code that converts
3899         between strings and types.
3900
3901 2004-11-02  Wim Taymans  <wim@fluendo.com>
3902
3903         * gst/gstscheduler.c: (gst_scheduler_add_element),
3904         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
3905         Aplied clock distribution patch, this should fix bug
3906         #148787.
3907
3908 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3909
3910         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
3911
3912         * po/LINGUAS:
3913         * po/nb.po:
3914           Added Norwegian Bokmaal translation
3915
3916 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3917
3918         * tools/gst-inspect.c: (print_signal_info):
3919           print signal arguments as pointers if they are
3920
3921 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
3922
3923         * docs/pwg/building-boiler.xml:
3924           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
3925
3926 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3927
3928         * gst/parse/parse.l:
3929         * testsuite/parse/parse1.c: (main):
3930         Since parse can do 'element name=a:b' make 'a:b.' work as
3931         well. 
3932         Added testcase to verify fix.
3933
3934 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3935
3936         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
3937         Use the realpad when printing the direction.
3938         Add extra \n when printing extensions of typefind factories.
3939
3940 2004-10-13  David Schleef  <ds@schleef.org>
3941
3942         * examples/manual/Makefile.am: $< isn't portable in Makefile
3943         rules.
3944
3945 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
3946
3947         * docs/gst/tmpl/gstobject.sgml:
3948         * docs/gst/tmpl/gstplugin.sgml:
3949         * docs/gst/tmpl/gstpluginfeature.sgml:
3950         * docs/gst/tmpl/gstregistry.sgml:
3951         * docs/gst/tmpl/gstversion.sgml:
3952         * gst/gstbin.c:
3953           more api documentation
3954         * gst/gstplugin.c: (gst_plugin_register_func),
3955         (gst_plugin_check_file), (gst_plugin_load_file):
3956           better error signaling and logging
3957
3958 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3959
3960         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
3961           Subtract current queue contents from position queries.
3962
3963 2004-10-11  Johan Dahlin  <johan@gnome.org>
3964
3965         * gst/gsturi.c (gst_uri_get_location): unescape string
3966         (gst_uri_construct): escape string.
3967
3968 2004-10-11  Benjamin Otte  <otte@gnome.org>
3969
3970         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
3971         (gst_pad_try_set_caps_nonfixed):
3972           allow renegotiation of unconnected pads (as inside spider). Simply
3973           return OK if unconnected - mimic try_set_caps there.
3974
3975 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3976
3977         * gst/gstbin.c: (gst_bin_sync_children_state):
3978           Add missing break.
3979
3980 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3981
3982         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
3983         Set element to EOS before sending EOS event
3984
3985 2004-10-08  Wim Taymans  <wim at fluendo dot com>
3986
3987         * gst/elements/gsttypefindelement.c:
3988         (gst_type_find_element_handle_event):
3989         Handle EOS events when doing the transition from
3990         typefind to data passing. This should fix the
3991         infinite loops in short files.
3992
3993 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3994
3995         * gst/gstthread.c: (gst_thread_change_state),
3996         (gst_thread_child_state_change):
3997         Make sure no iteration happens while performing
3998         the state change as it could mess up the internal
3999         consistency of the thread state.
4000
4001 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4002
4003         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4004         (gst_thread_change_state), (gst_thread_child_state_change):
4005         Do not try to grab the iterate lock in the state change method
4006         when we are in the same thread as the iterate or else we
4007         could deadlock. Some other cleanups.
4008
4009 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4010
4011         * configure.ac:
4012           bump nano to cvs
4013
4014 === release 0.8.7 ===
4015
4016 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4017
4018         * configure.ac:
4019         * NEWS:
4020         * RELEASE:
4021         * configure.ac:
4022           releasing 0.8.7, "A Cruise"
4023
4024 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4025
4026         * docs/random/mimetypes:
4027         Add an entry for Sony ATRAC3 audio format with mime-type
4028         used by rmdemux et riff-read
4029
4030 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4031
4032         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4033         Push the buffer store instead of clearing it in case that
4034         the stream is not seekable.
4035
4036 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4037
4038         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4039         (gst_thread_main_loop):
4040         Lock the iteration and the state change so that automatic
4041         negotiation and fixation does not happen at the same time
4042         as the in stream negotiation.
4043
4044 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4045
4046         * configure.ac:
4047           bump nano to cvs
4048
4049 === release 0.8.6 ===
4050
4051 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4052
4053         * configure.ac:
4054         * NEWS:
4055         * RELEASE:
4056         * configure.ac:
4057           releasing 0.8.6, "Narc"
4058
4059 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4060
4061         * configure.ac:
4062           prerel bump
4063
4064 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4065
4066         patch by: Steve Lhomme
4067
4068         * gst/elements/gstfakesrc.c:
4069         * gst/elements/gstidentity.c:
4070         * gst/gstthread.c:
4071           Fix for #153881
4072
4073 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4074
4075         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4076         Fix threadsafety of the crc checking function.
4077
4078 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4079
4080         patch by: Ronald Bultje
4081
4082         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4083         (gst_type_find_element_handle_event),
4084         (gst_type_find_element_chain):
4085         * gst/elements/gsttypefindelement.h:
4086          #153657.
4087          Filter out discont event from seekable sources when typefind
4088          asks them to seek.  Fixes typefind with demuxers for
4089          avi, asf and matroska.
4090
4091 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4092
4093         * docs/gst/gstreamer-sections.txt:
4094         * gst/gstcaps.c:
4095         * gst/gstcaps.h:
4096         * gst/gstpad.c:
4097           Revert preferred caps: (#147789)
4098
4099 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4100
4101         * win32/dirent.c:
4102           fix a memory leak
4103
4104 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4105
4106         * configure.ac:
4107           bump for prerelease
4108
4109 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4110
4111         * docs/Makefile.am:
4112         * docs/manual/elements-api.xml:
4113           restructure so that common stuff is shown first
4114         * docs/manual/init-api.xml:
4115           convert to examples
4116         * docs/manual/manual.xml:
4117         * docs/manuals.mak:
4118         * docs/url.entities:
4119           link to API on the website, possibly override later in build
4120         * examples/manual/.cvsignore:
4121           ignore more
4122         * examples/manual/Makefile.am:
4123           add more examples
4124         * examples/manual/extract.pl:
4125           error out on failure
4126
4127 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4128
4129         * docs/gst/tmpl/gstthread.sgml:
4130         * docs/manual/init-api.xml:
4131         * examples/manual/Makefile.am:
4132           convert two code bits to examples
4133
4134 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4135
4136         * gst/gstelement.c: (gst_element_change_state):
4137           Well, actually, I was about to remove this insane assert when
4138           I noticed Wim already did that. A warning is nice so we can
4139           fix actual ugs (using --g-fatal-warnings and backtraces), so
4140           I added that instead.
4141
4142 2004-09-06  Wim Taymans  <wim@fluendo.com>
4143
4144         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4145         (gst_element_threadsafe_properties_post_run),
4146         (gst_element_set_state), (gst_element_change_state):
4147         Added extra refcounting around various places. 
4148
4149 2004-09-06  Wim Taymans  <wim@fluendo.com>
4150
4151         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4152         Fix debug info.
4153
4154 2004-09-06  Wim Taymans  <wim@fluendo.com>
4155
4156         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4157         (remove_from_group):
4158         Some more debug info.
4159
4160 2004-09-03  Wim Taymans  <wim@fluendo.com>
4161
4162         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4163         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4164         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4165         (gst_fakesrc_get), (gst_fakesrc_change_state):
4166         * gst/elements/gstfakesrc.h:
4167         * gst/elements/gstidentity.c: (gst_identity_class_init),
4168         (gst_identity_init), (gst_identity_chain),
4169         (gst_identity_set_property), (gst_identity_get_property),
4170         (gst_identity_change_state):
4171         * gst/elements/gstidentity.h:
4172         Added datarate properties to limit the datarate.
4173
4174 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4175
4176         * gst/autoplug/gstspider.c: (plugin_init):
4177           don't set a rank. We don't want to autoplug by inserting spiders.
4178
4179 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4180
4181         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4182         (gst_spider_identity_plug):
4183           add a template for spider's sink
4184         * gst/gst.c: (gst_register_core_elements):
4185           queue's rank should be NULL, we don't want spider to add it.
4186
4187 2004-08-18  David Schleef  <ds@schleef.org>
4188
4189         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4190         * docs/libs/Makefile.am: same
4191         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4192         * docs/random/ds/0.9-planning: random additions
4193         * docs/random/ds/0.9-suggested-changes: same
4194         * gst/gstxml.h: remove vestigal GstXMLNs definition
4195
4196         Preferred caps: (#147789)
4197         * docs/gst/gstreamer-sections.txt: Add symbols
4198         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4199         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4200         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4201         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4202         (gst_caps_get_preferred), (gst_caps_set_preferred),
4203         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4204         (gst_caps_use_preferred): Handle caps preferences
4205         * gst/gstcaps.h: Add caps preferences
4206         * gst/gstpad.c: (gst_pad_link_get_preferred),
4207         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4208         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4209         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4210         negotiation.
4211
4212 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4213
4214         * gst/autoplug/gstspideridentity.c:
4215         (gst_spider_identity_request_new_pad):
4216         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4217         (gst_aggregator_init):
4218         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4219         (gst_fakesink_init):
4220         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4221         (gst_fakesrc_init):
4222         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4223         (gst_fdsink_init):
4224         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4225         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4226         (gst_filesink_init):
4227         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4228         (gst_filesrc_init):
4229         * gst/elements/gstidentity.c: (gst_identity_base_init),
4230         (gst_identity_init):
4231         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4232         (gst_multifilesrc_init):
4233         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4234         (gst_pipefilter_init):
4235         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4236         (gst_statistics_init):
4237         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4238         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4239           s/gst_pad_new/&_from_template/
4240           register pad templates in the base_init function
4241           add static pad template definitions
4242
4243 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4244
4245         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4246         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4247         * testsuite/refcounting/pad.c: (main):
4248         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4249           s/gst_pad_new/&_from_template/
4250           prepare deprecation of gst_pad_new
4251
4252 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4253
4254         patch by: Luca Ognibene <skaboy81@virgilio.it>
4255
4256         * gst/gstcaps.c:
4257         * gst/gstelement.c:
4258         * gst/gstpad.c:
4259         * gst/gstxml.c:
4260           fix memleaks.  Fixes #150001
4261
4262 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4263
4264         * docs/random/ds/0.9-suggested-changes:
4265           add notes - mostly about pad templates
4266
4267 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4268
4269         * win32/GStreamer.vcproj:
4270           temporary locale files are .gmo not .mo
4271
4272 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4273
4274         * configure.ac: bump nano to cvs
4275
4276 === release 0.8.5 ===
4277
4278 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4279
4280         * configure.ac:
4281           releasing 0.8.5, "Stuttgart"
4282         * NEWS:
4283         * RELEASE:
4284         * configure.ac:
4285         * docs/random/release:
4286           updates for release
4287
4288 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4289
4290         patch by: Wim Taymans (wim@fluendo.com)
4291
4292         * gst/gstbuffer.c:
4293         * gst/gstindex.h:
4294         * libs/gst/dataprotocol/dataprotocol.c:
4295           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4296
4297 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4298
4299         * Makefile.am:
4300         * win32/MANIFEST:
4301           add win32 dir to the build.  Fixes #149981.
4302
4303 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4304
4305         * configure.ac:
4306           bump libtool versioning
4307         * gst/gststructure.c:
4308           mark function as static
4309         * po/af.po:
4310         * po/az.po:
4311         * po/ca.po:
4312         * po/cs.po:
4313         * po/en_GB.po:
4314         * po/fr.po:
4315         * po/nl.po:
4316         * po/sq.po:
4317         * po/sr.po:
4318         * po/sv.po:
4319         * po/tr.po:
4320         * po/uk.po:
4321           translations update
4322         * win32/README.txt:
4323           trademark protection
4324
4325 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4326
4327         * configure.ac:
4328           fix GST_ORIGIN
4329           set GST_PACKAGE to source, and distinguish between release and other
4330         * tools/gst-inspect.c:
4331           print out plugin an element factory is part of so we see this info
4332
4333 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4334
4335         * docs/gst/gstreamer-sections.txt:
4336         * docs/gst/tmpl/gstbuffer.sgml:
4337         * docs/gst/tmpl/gstschedulerfactory.sgml:
4338           reorder docs a little, make GstBuffer's more sensible.
4339         * gst/gstbuffer.h:
4340           API: added GST_BUFFER_FLAG_DELTA_UNIT
4341         * gst/gstscheduler.c:
4342           comment API addition
4343
4344 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4345
4346         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4347           work with non-regular files that can be mmapped (like /dev/zero)
4348         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4349           get rid of typefinds that require a seek when we can't seek instead
4350           of trying them over and over again
4351         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4352           return non-zero failure value when the pipeline was interrupted or
4353           an error occurred
4354
4355 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4356
4357         * win32/config.h:
4358         * win32/GStreamer.vcproj:
4359           compile and install the locales
4360
4361 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4362
4363         * gst/gstvalue.c:
4364           fix a possible memory leak under Windows
4365
4366 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4367
4368         * win32/GStreamer.vcproj:
4369           fix a memory leak that occured under Windows
4370         * win32/gstreamer.def:
4371           add gst_scheduler_register
4372
4373 2004-08-11  Benjamin Otte  <otte@gnome.org>
4374
4375         * docs/gst/gstreamer-sections.txt:
4376         * gst/gstscheduler.c: (gst_scheduler_register):
4377         * gst/gstscheduler.h:
4378           API:
4379           add gst_scheduler_register shortcut similar to gst_element_register
4380         * gst/schedulers/entryscheduler.c: (plugin_init):
4381         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4382         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4383           use it
4384
4385 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4386
4387         * gst/gstvalue.h:
4388           fix a memory leak that occured under Windows
4389
4390 2004-08-10  Colin Walters  <walters@redhat.com>
4391
4392         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4393         Don't use O_EXCL to open temporary registry.  It will prevent
4394         registry creation if a temporary one already exists, which
4395         is unnecessary.
4396
4397 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4398
4399         * docs/gst/gstreamer-sections.txt:
4400         * docs/gst/tmpl/gstvalue.sgml:
4401           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4402
4403 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4404
4405         * win32/gstbytestream.vcproj:
4406         * win32/gstelements.vcproj:
4407         * win32/gstgetbits.vcproj:
4408         * win32/gst-inspect.vcproj:
4409         * win32/gst-launch.vcproj:
4410         * win32/gstoptimalscheduler.vcproj:
4411         * win32/GStreamer.vcproj:
4412         * win32/gst-register.vcproj:
4413         * win32/gstspider.vcproj:
4414           update the include and lib dirs to fit standard libraries as
4415           described in the Win32 manual
4416
4417 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4418
4419         * win32/config.h:
4420         * win32/gstversion.h:
4421           enable NLS again, push the version number for the coming 0.8.5 release
4422
4423 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4424
4425         * gst/gstvalue.h:
4426           export gst_type_XXX for windows DLLs
4427
4428 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4429
4430         * docs/faq/gst-uninstalled:
4431           fix PKG_CONFIG_PATH and PYTHONPATH
4432         * gst/schedulers/Makefile.am:
4433           cleanup
4434         * libs/gst/bytestream/bytestream.c:
4435           remove newline
4436         * po/LINGUAS:
4437         * po/sq.po:
4438           adding Albanian translation (Laurent Dhima)
4439         * po/cs.po:
4440           updated
4441
4442 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4443
4444         * po/ca.po:
4445         * po/sv.po:
4446           updated translations
4447
4448 2004-08-04  Benjamin Otte  <otte@gnome.org>
4449
4450         * tests/mass_elements.c: (main):
4451           allow specifying src and sink element explicitly, so I can test
4452           videotestsrc instead of fakesrc
4453
4454 2004-08-04  Benjamin Otte  <otte@gnome.org>
4455
4456         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4457         (gst_structure_id_empty_new), (gst_structure_empty_new),
4458         (gst_structure_copy):
4459           add gst_structure_id_empty_new_with_size to allow preallocating
4460           value array sizes. Use this in gst_structure_copy to get rid of
4461           reallocs.
4462           don't do quark=>string=>quark when copying structures
4463
4464 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4465
4466         * docs/manual/win32.xml:
4467         * win32/README.txt:
4468           update documentation with the clean version of dependencies
4469
4470 2004-08-03  Benjamin Otte  <otte@gnome.org>
4471
4472         * gst/schedulers/entryscheduler.c:
4473         (gst_entry_scheduler_remove_element):
4474           fix for GST_DISABLE_DEBUG
4475         * tools/gst-launch.c: (print_tag):
4476           fixes for G_DISABLE_ASSERT
4477
4478 2004-08-03  Benjamin Otte  <otte@gnome.org>
4479
4480         * gst/gst.c: (gst_register_core_elements):
4481           fix for G_DISABLE_ASSERT
4482         * gst/gstinfo.c: (__gst_in_valgrind):
4483           add for GST_DISABLE_DEBUG
4484
4485 2004-08-03  Benjamin Otte  <otte@gnome.org>
4486
4487         * gst/parse/parse.l:
4488           fix for G_DISABLE_ASSERT
4489
4490 2004-08-03  Wim Taymans  <wim@fluendo.com>
4491
4492         * gst/gstbin.c: (gst_bin_get_type),
4493         (gst_bin_child_state_change_func):
4494         * gst/gstthread.c: (gst_thread_change_state):
4495         Backported some debug logging from a reverted patch
4496         Don't try to destroy the thread twice. Added some more
4497         debugging in GstThread. Unlock and signal even if we
4498         are in the thread context.
4499
4500 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4501
4502         * po/uk.po:
4503           updated translation
4504
4505 2004-07-30  David Schleef  <ds@schleef.org>
4506
4507         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4508
4509 2004-07-29  David Schleef  <ds@schleef.org>
4510
4511         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4512         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4513
4514 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4515
4516         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4517         (gst_bin_add_func), (gst_bin_remove_func),
4518         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4519         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4520         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4521         (gst_bin_sync_children_state):
4522         * gst/gstbin.h:
4523         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4524         (gst_thread_change_state):
4525         * testsuite/states/Makefile.am:
4526           revert state change patches as agreed so we can rework them
4527           gradually
4528
4529 2004-07-29  Benjamin Otte  <otte@gnome.org>
4530
4531         * libs/gst/control/Makefile.am:
4532           link to libgstreamer (fixes Debian bug 262019, see
4533           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
4534
4535 2004-07-29  Wim Taymans  <wim@fluendo.com>
4536
4537         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4538         (check_from_fraction_convert), (transform_test), (main):
4539         Make the test less pedantic about float roundoff errors.
4540
4541 2004-07-29  Benjamin Otte  <otte@gnome.org>
4542
4543         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
4544         (gst_filesrc_srcpad_event):
4545           make seek events to before start/after end of file not fail, but
4546           seek to start/end instead
4547         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
4548           add more output
4549
4550 2004-07-29  Benjamin Otte  <otte@gnome.org>
4551
4552         * gst/gstpad.c: (gst_pad_set_explicit_caps):
4553           check that caps are fixed
4554         * gst/gstpad.c: (gst_pad_template_new):
4555           don't try to simplify caps, costs too much time on gst_init
4556         * gst/gstplugin.c: (gst_plugin_add_feature):
4557           G_ERROR if features are added twice
4558         * gst/gsttypefind.c: (gst_type_find_register):
4559         * gst/gstelementfactory.c: (gst_element_register):
4560           don't add features twice
4561         * docs/random/ds/0.9-suggested-changes:
4562           add note about possible gst_init optimization
4563
4564 2004-07-28  David Schleef  <ds@schleef.org>
4565
4566         * testsuite/elements/Makefile.am:
4567         * testsuite/elements/struct_i386.h:
4568         * testsuite/elements/struct_size.c: (main):  A little test
4569         to keep distcheck from working if someone changes a structure
4570         size accidentally.
4571
4572 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4573
4574         * docs/libs/Makefile.am:
4575         * docs/libs/gstreamer-libs-docs.sgml:
4576         * docs/libs/gstreamer-libs-sections.txt:
4577         * docs/libs/tmpl/gstbytestream.sgml:
4578         * docs/libs/tmpl/gstcontrol.sgml:
4579         * docs/libs/tmpl/gstdataprotocol.sgml:
4580         * docs/libs/tmpl/gstgetbits.sgml:
4581         * libs/gst/bytestream/Makefile.am:
4582         * libs/gst/bytestream/bytestream.c:
4583         * libs/gst/bytestream/bytestream.h:
4584         * libs/gst/control/Makefile.am:
4585         * libs/gst/dataprotocol/Makefile.am:
4586         * libs/gst/getbits/Makefile.am:
4587         * libs/gst/getbits/getbits.h:
4588           various doc and style fixes, adding bytestream to libs docs.
4589
4590 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4591
4592         * docs/gst/gstreamer-docs.sgml:
4593         * docs/libs/Makefile.am:
4594         * docs/libs/gstreamer-libs-docs.sgml:
4595         * docs/libs/gstreamer-libs-sections.txt:
4596         * libs/gst/control/dparam.c:
4597           more doc fixes.  gst-libs docs now build the same way as gst.
4598
4599 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4600
4601         * configure.ac:
4602         * testsuite/Makefile.am:
4603         * testsuite/bins/Makefile.am:
4604         * testsuite/caps/Makefile.am:
4605         * testsuite/cleanup/Makefile.am:
4606         * testsuite/clock/Makefile.am:
4607         * testsuite/debug/Makefile.am:
4608         * testsuite/dlopen/Makefile.am:
4609         * testsuite/dynparams/Makefile.am:
4610         * testsuite/elements/.cvsignore:
4611         * testsuite/elements/Makefile.am:
4612         * testsuite/enumcaps/Makefile.am:
4613         * testsuite/enumcaps/enumcaps.c:
4614         * testsuite/ghostpads/Makefile.am:
4615         * testsuite/indexers/Makefile.am:
4616         * testsuite/negotiation/Makefile.am:
4617         * testsuite/parse/Makefile.am:
4618         * testsuite/plugin/Makefile.am:
4619         * testsuite/refcounting/Makefile.am:
4620         * testsuite/schedulers/.cvsignore:
4621         * testsuite/states/Makefile.am:
4622         * testsuite/tags/Makefile.am:
4623         * testsuite/threads/Makefile.am:
4624           fold enumcaps into caps dir
4625           clean up Makefile.am's for testsuite
4626
4627 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4628
4629         * docs/gst/Makefile.am:
4630         * docs/libs/Makefile.am:
4631           clean up docs build.  Fixes needless rebuilding of template files.
4632
4633 2004-07-28  Wim Taymans  <wim@fluendo.com>
4634
4635         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
4636         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
4637         Make sure that a bin state change tries to keep the children
4638         in sync. 
4639         Added debug logging to the thread.
4640
4641 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4642
4643         * win32/GStreamer.vcproj:
4644         * win32/gstreamer.def:
4645           more exports for the plugins
4646
4647 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4648
4649         * win32/gstgetbits.vcproj:
4650         * win32/gstgetbits.def:
4651         * win32/msvc71.sln:
4652           add support for the getbits plugin
4653
4654 2004-07-27  Wim Taymans  <wim@fluendo.com>
4655
4656         * gst/gstvalue.c: (gst_value_transform_double_fraction),
4657         (gst_value_transform_fraction_double), (_gst_value_initialize):
4658         * testsuite/caps/Makefile.am:
4659         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4660         (check_from_fraction_convert), (transform_test), (main):
4661         Added transform functions between double and fraction.
4662         Added testcase to verify transforms
4663
4664 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4665
4666         * win32/GStreamer.vcproj:
4667           rename GStreamer-0.8.lib to libgstreamer.lib
4668
4669 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4670
4671         * win32/gstelements.vcproj:
4672         * win32/gstoptimalscheduler.vcproj:
4673           fixes for the Release build
4674
4675 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4676
4677         * win32/config.h:
4678           update the version number
4679
4680 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4681
4682         * win32/GStreamer.vcproj:
4683           add gstinterface to the build
4684
4685 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4686
4687         * win32/gstreamer.def:
4688           add many definitions needed by plugins,
4689           GST_CAT_DEFAULT only available in the Debug build ?
4690
4691 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4692
4693         * gst/gstelement.c: (gst_element_set_eos_recursive):
4694           various whitespace fixes.
4695           doc fix, fixes #148497
4696
4697 2004-07-25  Benjamin Otte  <otte@gnome.org>
4698
4699         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
4700           don't delay links on the sink elements, it causes unnegotiated
4701           links.
4702         * gst/elements/gsttypefindelement.c:
4703         (gst_type_find_element_base_init):
4704           add our padtemplates, we indeed do have some.
4705         * gst/elements/gsttypefindelement.c:
4706         (gst_type_find_element_handle_event),
4707         (gst_type_find_element_chain):
4708           don't push data when typefinding failed.
4709         * gst/gstpad.c: (gst_pad_link_fixate):
4710           check that no fixate function returns empty caps.
4711         * gst/gstpad.c: (gst_pad_push):
4712           check that the link is negotiated before data gets pushed.
4713         * tools/gst-register.c: (main):
4714           don't assert (fixes #148283)
4715
4716 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4717
4718         * docs/gst/gstreamer-sections.txt:
4719         * docs/gst/tmpl/gstconfig.sgml:
4720           add GST_PLUGIN_EXPORT definition
4721
4722 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4723
4724         * gst/gstplugin.h:
4725         * gst/gstconfig.h.in:
4726         * win32/gstconfig.h:
4727         * win32/gstelements.def:
4728         * win32/gstelements.vcproj:
4729         * win32/gstoptimalscheduler.def:
4730         * win32/gstoptimalscheduler.vcproj:
4731         * win32/gstspider.def:
4732         * win32/gstspider.vcproj:
4733           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
4734
4735 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4736
4737         * docs/gst/gstreamer-sections.txt:
4738           remove GST_CAT_DEFAULT because the type has changed
4739
4740 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4741
4742         * win32/gstbytestream.vcproj:
4743         * win32/gstelements.vcproj:
4744         * win32/gst-inspect.vcproj:
4745         * win32/gst-launch.vcproj:
4746         * win32/gstoptimalscheduler.vcproj:
4747         * win32/GStreamer.vcproj:
4748         * win32/gst-register.vcproj:
4749         * win32/gstspider.vcproj:
4750         * win32/msvc71.sln:
4751           Copy the files where needed after building, The testsuite will be
4752           built separately
4753
4754 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4755
4756         * win32/config.h:
4757         * win32/README.txt:
4758         * docs/manual/win32.xml:
4759         Fixed the plugin and GStreamer location
4760
4761 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4762
4763         * win32/gstreamer.def:
4764         More exports for the plugins
4765
4766 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4767
4768         * gst/gstinfo.h:
4769         Marc was right, we need to export literally GST_CAT_DEFAULT
4770
4771 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4772
4773         * win32/config.h:
4774         NLS crashes in gettext, disabled until this is solved
4775
4776 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4777
4778         * win32/gst-inspect.vcproj:
4779         * win32/gst-launch.vcproj:
4780         Should use NLS when available
4781
4782 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4783
4784         * gst/registries/gstxmlregistry.c:
4785         removing the file doesn't seem to be a good idea on Linux
4786
4787 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4788
4789         * gst/registries/gstxmlregistry.c:
4790         Remove the registry before renaming the tempfile (needed for Windows)
4791
4792 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4793
4794         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
4795         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
4796         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
4797         * gst/elements/gstmultifilesrc.h:
4798         Added newmedia property so it generates newmedia events between each
4799         file when property is set, as well as fixed eos handling
4800
4801 2004-07-22  David Schleef  <ds@schleef.org>
4802
4803         * gst/gststructure.c: (gst_structure_id_empty_new),
4804         (gst_structure_empty_new):  Set type field correctly.
4805         * gst/gststructure.h: Check type field correctly.
4806         * testsuite/caps/Makefile.am:
4807         * testsuite/caps/structure.c: (test1), (main): Add a very small
4808         test for structures.
4809
4810 2004-07-22  David Schleef  <ds@schleef.org>
4811
4812         * docs/random/ds/0.9-suggested-changes: more comments
4813         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
4814
4815 2004-07-22  Benjamin Otte  <otte@gnome.org>
4816
4817         * gst/gstelementfactory.c: (gst_element_register):
4818           set the factory in the class struct, so gst_element_get_factory
4819           actually works
4820         * gst/parse/grammar.y:
4821           set element to playing when it gets unlocked as we can't rely on the
4822           bin state - all elements in the bin state might still be locked in
4823           NULL)
4824
4825 2004-07-22  Benjamin Otte  <otte@gnome.org>
4826
4827         * gst/gstelement.c: (gst_element_set_state_func):
4828           make this a static function
4829
4830 2004-07-22  Wim Taymans  <wim@fluendo.com>
4831
4832         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
4833         (gst_opt_scheduler_pad_link):
4834         fix 147894-2 and the group_link problem.
4835
4836 2004-07-22  Wim Taymans  <wim@fluendo.com>
4837
4838         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4839         (handoff_identity), (main):
4840         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4841         (handoff_identity), (main):
4842         * testsuite/schedulers/Makefile.am:
4843         * testsuite/schedulers/group_link.c: (main):
4844         Show bug in scheduler when linking chain and loop based element 
4845         where the chain based element was not yet in a group.
4846
4847 2004-07-21  Benjamin Otte  <otte@gnome.org>
4848
4849         * gst/.cvsignore:
4850         * gst/autoplug/.cvsignore:
4851         * gst/elements/.cvsignore:
4852         * gst/indexers/.cvsignore:
4853         * libs/gst/bytestream/.cvsignore:
4854         * libs/gst/control/.cvsignore:
4855         * libs/gst/getbits/.cvsignore:
4856         * testsuite/states/.cvsignore:
4857         * testsuite/threads/.cvsignore:
4858           keep this up to date, since I seem to be the only one who cares
4859           about not missing files on commits (editor's note: no you don't,
4860           but feel free to change them at the time you add stuff instead
4861           of later on)
4862
4863 2004-07-21  Benjamin Otte  <otte@gnome.org>
4864
4865         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4866         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
4867         (gst_bin_child_state_change_func), (set_kid_state_func),
4868         (gst_bin_set_state), (gst_bin_change_state_norecurse):
4869           make state changes work correctly and reentrant (so removing
4870           elements from bins during state changes of bins doesn't cause
4871           segfaults or even wrong states)
4872           add debugging category and debugging output to print children states
4873         * gst/gstbin.c: (gst_bin_dispose): 
4874           add some assertion checks
4875         * gst/gstbin.h:
4876         * gst/gstbin.c: (gst_bin_sync_children_state):
4877           deprecate this function - it just does gst_bin_set_state (bin,
4878           GST_STATE (bin)) 
4879         * testsuite/threads/queue.c: (main):
4880           don't use gst_bin_sync_children_state anymore
4881         * testsuite/states/Makefile.am:
4882         * testsuite/states/bin.c:
4883           test that the state changes of bins work as expected
4884         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
4885           some adjustments to change states correctly, too
4886         * gst/gstthread.c: (gst_thread_change_state):
4887           don't enable/disable "threadsafe" properties, they're unused and
4888           cause random segfaults
4889         * testsuite/threads/Makefile.am:
4890           the queue check randomly passes now, ignore it
4891
4892 2004-07-21  Benjamin Otte  <otte@gnome.org>
4893
4894         * gst/gstpad.c:
4895           check if data is NULL before outputting debug info. (fixes #145100)
4896
4897 2004-07-21  Benjamin Otte  <otte@gnome.org>
4898
4899         * gst/schedulers/entryscheduler.c:
4900         (gst_entry_scheduler_loop_wrapper),
4901         (gst_entry_scheduler_chain_wrapper),
4902         (gst_entry_scheduler_get_wrapper):
4903           reset the state when the cothread starts, so we don't get assertion
4904           failures on restarting of cothreads
4905
4906 2004-07-20  Benjamin Otte  <otte@gnome.org>
4907
4908         * gst/gstelement.c: (gst_element_link_pads_filtered):
4909           use correct sinkpad, if only sinkpad is specified, but not srcpad
4910           (fixes #147889)
4911         * gst/gstelement.c: (gst_element_set_state_func),
4912         (gst_element_change_state): ref/unref the element, signal handlers
4913         could get rid of the element otherwise
4914
4915 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4916
4917         * docs/random/ds/0.9-suggested-changes:
4918           Make note about renaming fixed-list to array.
4919         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
4920         (_gst_value_initialize):
4921           Add array intersections.
4922         * testsuite/caps/intersect2.c: (main):
4923           Add test for array intersections.
4924
4925 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4926
4927         * configure.ac: back to cvs
4928
4929 === release 0.8.4 ===
4930
4931 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4932
4933         * configure.ac:
4934           releasing 0.8.4, "Paella"
4935           bump libtool versioning
4936
4937 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4938
4939         * po/LINGUAS:
4940         * po/ca.po:
4941           adding Catalan translation (Jordi Mallach)
4942
4943 2004-07-20  Wim Taymans  <wim@fluendo.com>
4944
4945         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4946         (handoff_identity), (main):
4947         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4948         (handoff_identity), (main):
4949         * testsuite/schedulers/Makefile.am:
4950         Added failing testcase for variant of #147894
4951
4952 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4953
4954         patch by: David Moore
4955
4956         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4957         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
4958         (group_migrate_connected):
4959         * testsuite/schedulers/Makefile.am:
4960           fix for #142813 (Deadlock in optimal scheduler)
4961
4962 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4963
4964         patch by: Wim Taymans
4965
4966         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4967         (gst_opt_scheduler_schedule_run_queue),
4968         (gst_opt_scheduler_get_wrapper), (get_group),
4969         (group_migrate_connected):
4970         * testsuite/schedulers/Makefile.am:
4971           fix for #147819 (Add some checks in the opt scheduler)
4972
4973 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4974
4975         patch by: Benjamin Otte
4976
4977         * gst/gstelementfactory.c: (__gst_element_details_set):
4978           fix for #147929: running gst-register in non-utf8 locale can cause
4979           invalid registry
4980
4981 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4982
4983         patch by: Wim Taymans
4984
4985         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
4986         (group_has_element), (element_get_reachables_func),
4987         (group_migrate_connected):
4988           fix for #147894 (opt scheduler decoupled elements mismanagement)
4989         * testsuite/schedulers/Makefile.am:
4990           testsuite app now passes
4991
4992 2004-07-19  Wim Taymans  <wim@fluendo.com>
4993
4994         * testsuite/schedulers/147819.c: (handoff_identity1),
4995         (handoff_identity2), (main):
4996         * testsuite/schedulers/Makefile.am:
4997         Added testcase for bug 147819
4998
4999 2004-07-19  Wim Taymans  <wim@fluendo.com>
5000
5001         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5002         (handoff_identity), (main):
5003         * testsuite/schedulers/Makefile.am:
5004         Added testcase for bug 147894
5005
5006 2004-07-16  Wim Taymans  <wim@fluendo.com>
5007
5008         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5009         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5010         * testsuite/schedulers/Makefile.am:
5011         Added testsuite for bug 142183 in its two incarnations. Refcount
5012         is not increased for scheduled elements and threadsafe properties
5013         mutexes are not properly unlocked.
5014
5015 2004-07-16  Wim Taymans  <wim@fluendo.com>
5016
5017         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5018         (create_chain), (destroy_chain), (create_group), (destroy_group),
5019         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5020         (group_dec_link), (gst_opt_scheduler_pad_link),
5021         (group_inc_links_for_element), (group_migrate_connected):
5022         Call group_inc_link with the proper src->sink ordering -- 
5023         break this, and we break sort_chain. patch from wingo for bug
5024         147713.
5025         Partially revert patch 1.89. When adding a loop based element to 
5026         the scheduler, the links to other groups are automatically followed
5027         and incremented. This should not happen because the bin will call
5028         pad_link explicitly for those connection, resulting in them counted 
5029         twice. Results in assertion failure on pipeline cleanup.
5030
5031 2004-07-16  Wim Taymans  <wim@fluendo.com>
5032
5033         * testsuite/schedulers/143777-2.c: (main):
5034         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5035         (main):
5036         * testsuite/schedulers/Makefile.am:
5037         Added cleanup code to testcase 143777-2.
5038         Added testcase to show bug 147713, does not really show the
5039         deadlock as I can't figure out how to trigger it, but it does
5040         demonstrate bad ordering in the scheduler.
5041
5042 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5043
5044         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5045           change strndup to g_strndup.  Fixes #147707
5046
5047 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5048
5049         * po/af.po:
5050         * po/az.po:
5051         * po/cs.po:
5052         * po/en_GB.po:
5053         * po/fr.po:
5054         * po/nl.po:
5055         * po/sr.po:
5056         * po/sv.po:
5057         * po/tr.po:
5058         * po/uk.po:
5059           updated translations
5060
5061 2004-07-16  Benjamin Otte  <otte@gnome.org>
5062
5063         * gst/gstvalue.c: (gst_greatest_common_divisor):
5064           use ints and return ints, fractions only use ints, too, so this
5065           avoids accidently casting multiplications to unsigned
5066         (gst_value_lcopy_fraction): it's ints, not uint32
5067         (gst_value_set_fraction): disallow minint, multiplying and negation
5068           are broken with it
5069         (gst_value_fraction_multiply): fix to make large numbers work and get
5070         rid of the assumption that the multiplication of two ints fits an
5071         int64 - dunno if that's true for all systems
5072         * testsuite/caps/Makefile.am:
5073         * testsuite/caps/fraction-multiply-and-zero.c:
5074         (check_multiplication), (check_equal), (zero_test), (main):
5075           add tests for all the stuff above
5076         * testsuite/caps/value_compare.c: (test1):
5077           fix comment
5078         * tests/.cvsignore:
5079         * testsuite/caps/.cvsignore:
5080         * testsuite/debug/.cvsignore:
5081         * testsuite/dlopen/.cvsignore:
5082         * testsuite/states/.cvsignore:
5083           get up to date
5084
5085 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5086
5087         * docs/manual/bins-api.xml:
5088         * docs/manual/factories.xml:
5089         * docs/manual/helloworld.xml:
5090         * docs/manual/links-api.xml: 
5091           fixes for out of date info, incorrect info and grammar
5092
5093 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5094
5095         * docs/manual/pads.xml:
5096         * docs/manual/pads-api.xml: grammar fix
5097
5098 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5099
5100         * docs/manual/pads-api.xml: typo + grammar fix
5101
5102 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5103
5104         * docs/gst/gstreamer-sections.txt:
5105           add new symbols
5106         * docs/gst/tmpl/gstelement.sgml:
5107         * docs/gst/tmpl/gstpad.sgml:
5108         * docs/gst/tmpl/gsttypes.sgml:
5109         * docs/gst/tmpl/gstvalue.sgml:
5110           update docs
5111         * gst/gststructure.c: (gst_structure_set_valist),
5112         (gst_structure_from_abbr), (gst_structure_to_abbr):
5113         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5114         (gst_greatest_common_divisor), (gst_value_init_fraction),
5115         (gst_value_copy_fraction), (gst_value_collect_fraction),
5116         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5117         (gst_value_get_fraction_numerator),
5118         (gst_value_get_fraction_denominator),
5119         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5120         (gst_value_deserialize_fraction),
5121         (gst_value_transform_fraction_string),
5122         (gst_value_transform_string_fraction),
5123         (gst_value_compare_fraction), (_gst_value_initialize):
5124         * gst/gstvalue.h:
5125           adding GstFraction GValue type, get/set, and multiply
5126         * testsuite/caps/Makefile.am:
5127         * testsuite/caps/fraction.c: (test), (main):
5128         * testsuite/caps/string-conversions.c: (main):
5129         * testsuite/caps/value_compare.c: (test1), (main):
5130           add regression tests for GstFraction
5131
5132 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5133         
5134         * docs/manual/init-api.xml: Grammar fix
5135
5136 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5137
5138         * docs/manual/states.xml: Fix inconsistent information
5139
5140 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5141
5142         * gst/gstelement.c: (gst_element_set_state):
5143         * gst/gstpad.c: (gst_pad_try_set_caps):
5144         * gst/gststructure.c:
5145         * gst/gstthread.c: (gst_thread_child_state_change):
5146         * gst/gstvalue.c: (gst_value_compare_double):
5147         * gst/gstvalue.h:
5148         * testsuite/parse/parse1.c: (main):
5149           debugging additions and style cleanups
5150
5151 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5152
5153         * docs/manual/states.xml: Grammar fix
5154
5155 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5156
5157         * docs/manual/pads.xml: Grammar fix
5158
5159 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5160
5161         * docs/manual/elements.xml: Fixed image reference
5162
5163 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5164
5165         * docs/manual/goals.xml: Grammar fix
5166
5167 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5168
5169         * docs/manual/motivation.xml:
5170         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5171
5172 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5173
5174         * docs/manual/motivation.xml: Fix spelling
5175
5176 2004-07-15  Benjamin Otte  <otte@gnome.org>
5177
5178         * gst/gstelement.h: 
5179           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5180           strings.
5181         * gst/gstelement.c (gst_element_class_init):
5182           GError's are boxed, not objects
5183         * gst/gstmarshal.list:
5184           update list for the fixed error signal
5185
5186 2004-07-14  Andy Wingo  <wingo@pobox.com>
5187
5188         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5189         there all along, but the function wasn't. (guile-gstreamer's build
5190         system uses the address of the function -- I wasn't actually
5191         trying to use this.)
5192
5193 2004-07-14  Andy Wingo  <wingo@pobox.com>
5194
5195         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5196         as gst_pad_proxy_pad_link) just link to every other pad when they
5197         are called. In the case where the graph has cycles, this will mean
5198         that a call to try_set_caps will recurse. Allow this recursion
5199         and return OK, while we wait for the first try_set_caps to give a
5200         proper return value.
5201         (gst_pad_link_call_link_functions): Since this function is the
5202         only one to set the NEGOTIATING flag on a pad, if the flag is set
5203         it means that the link functions have indirectly recursed. If this
5204         happens, error out to avoid infinite recursion and an eventual
5205         SEGV.
5206         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5207         (gst_pad_proxy_getcaps): Intersect the result with the template
5208         caps to ensure that the return value is valid.
5209
5210 2004-07-14  Andy Wingo  <wingo@pobox.com>
5211
5212         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5213         one refcount, the calling function is the owner of the buffer.
5214
5215 2004-07-14  Wim Taymans  <wim@fluendo.com>
5216
5217         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5218         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5219         Fix stupid warning when an element is to be migrated but
5220         is already migrated.
5221
5222 2004-07-14  Wim Taymans  <wim@fluendo.com>
5223
5224         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5225         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5226         Make sure that a single non-loop-based element does not 
5227         end up in a group. This fixes the testsuite again.
5228
5229 2004-07-14  Wim Taymans  <wim@fluendo.com>
5230
5231         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5232         (add_to_group), (merge_groups), (schedule_group),
5233         (gst_opt_scheduler_get_wrapper), (group_elements),
5234         (group_dec_link), (gst_opt_scheduler_pad_link),
5235         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5236         (gst_opt_scheduler_iterate):
5237         move isolated groups to a new chain.
5238         Emit a warning instead of segfaulting in some error cases.
5239         Fix a bug where the link count between groups was not calculated 
5240         correctly. Fixes #144510.
5241
5242 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5243         * gst/elements/gstfilesrc.c:
5244           Binary files support under Windows now OK
5245       
5246 2004-07-13  Benjamin Otte  <otte@gnome.org>
5247
5248           compatibility fixes for Solaris 8/gcc 2.95
5249         * configure.ac:
5250           include libintl libs in LDFLAGS
5251         * gstvalue.c (gst_value_deserialize_buffer):
5252           cast isxdigit stuff to int to silence compiler warning
5253
5254 2004-07-12  Benjamin Otte  <otte@gnome.org>
5255
5256         * gst/gsttypes.h:
5257           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5258           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5259           just causes support madness
5260         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5261           make it work without this
5262         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5263         (gst_file_index_commit):
5264           glib IO channels don't want binary mode
5265         * testsuite/bytestream/filepadsink.c: (main):
5266         * testsuite/bytestream/test1.c: (read_param_file):
5267           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5268
5269 2004-07-12  Benjamin Otte  <otte@gnome.org>
5270
5271         * gst/gstelement.c: (gst_element_class_init),
5272         (gst_element_set_state), (gst_element_set_state_func):
5273           virutalize gst_element_set_state, use set_state member in class
5274           struct that was already added in 0.7 for this.
5275         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5276         (gst_bin_change_state):
5277           make gst_bin_foreach works similar to other foreach functions, plug
5278           memleaks in it. Make functions using it work with the new approach.
5279           Document gst_bin_foreach, so it can be exported if we want to
5280         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5281           use virtualized set_state to make set_state on bins set the state of
5282           all its children.
5283
5284 2004-07-12  Benjamin Otte  <otte@gnome.org>
5285
5286         * configure.ac:
5287           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5288           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5289         * gst/gstpad.c: (gst_pad_alloc_buffer):
5290           allow buffer_alloc functions to return NULL and allocate a normal
5291           buffer in that case
5292
5293 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5294         * gst/elements/gstfilesink.c:
5295         * gst/elements/gstfilesrc.c:
5296         * gst/indexers/gstfileindex.c:
5297         * gst/gsttypes.h:
5298         * testsuite/bytestream/filepadsink.c:
5299         * testsuite/bytestream/test1.c:
5300           Handle binary files under Windows
5301
5302 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5303         * docs/manual/win32.xml:
5304         * win32/config.h:
5305         * win32/gst-register.vcproj:
5306         * win32/gstreamer.def:
5307           Update to another gettext public build
5308
5309 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5310         * gst/gstplugin.c:
5311           Fix an impossible C syntax
5312         * win32/config.h:
5313           Disable i18n under Windows for the moment
5314         * win32/gst-register.vcproj:
5315           Use this configuration
5316
5317 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5318         * docs/manual/quotes.xml:
5319           Keep the quotes file alive
5320         * docs/random/ds/0.9-suggested-changes:
5321           Add the suggestion of including a 'rowstride' as part of video
5322           format caps
5323
5324 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5325
5326         * gst/gstelement.c: (gst_element_set_state),
5327         (gst_element_change_state):
5328           d'oh.  Set PENDING state correctly before forcing bin to change.
5329         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5330         (gst_structure_parse_fixed_list):
5331         * gst/schedulers/gstoptimalscheduler.c:
5332         (gst_opt_scheduler_state_transition):
5333         * testsuite/states/parent.c: (main):
5334           remove comment now that it's fixed.
5335
5336 2004-07-11  Benjamin Otte  <otte@gnome.org>
5337
5338         * gst/gstclock.h:
5339           GST_SECOND shouldn't cause a conversion to unsigned.
5340         * testsuite/clock/.cvsignore:
5341         * testsuite/clock/Makefile.am:
5342         * testsuite/clock/signedness.c: (main):
5343           make sure it never will again
5344
5345 2004-07-11  Andy Wingo  <wingo@pobox.com>
5346
5347         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5348         whose state is higher than the bin state, raise the bin state to
5349         ensure that bin state := highest child state.
5350         
5351 2004-07-11  Andy Wingo  <wingo@pobox.com>
5352
5353         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5354         procedure on the children of a bin. Assumes that the procedure can
5355         change the set of children.
5356         (set_kid_state_func): New static function.
5357         (gst_bin_change_state): Use gst_bin_foreach to call
5358         set_kid_state_func. Fixes a bug: if a child had a state-change
5359         handler that removes it from the bin, there would be a segfault.
5360         Hopefully it should also work in the case where the state-change
5361         handler on one child adds or removes other children. In any case,
5362         fixes should go to gst_bin_foreach.
5363
5364 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5365
5366         * gst/gstelement.c: (gst_element_set_state):
5367           compatibility fix for latest plugins release.  Change loop back
5368           to while {}
5369
5370 2004-07-09  Wim Taymans  <wim@fluendo.com>
5371
5372         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5373         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5374         (gst_thread_main_loop):
5375         Since remove is virtual in GstBin we must not assume the 
5376         elements GList to have anothing useful.
5377         Add some more logging to GstThread and be a bit more paranoid
5378         when resetting the scheduler.
5379         Set the state of the bin to NULL before removing the children.
5380
5381 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5382
5383         * testsuite/threads/Makefile.am:
5384         * testsuite/threads/threadg.c:
5385           added test to check if problem when removing all elements from a
5386           GstThread before setting GstThread state to NULL
5387
5388 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5389
5390         * docs/gst/tmpl/gstelement.sgml:
5391         * docs/gst/tmpl/gsttypes.sgml:
5392         * gst/gstbin.c: (gst_bin_change_state):
5393         * gst/gstelement.c: (gst_element_set_state),
5394         (gst_element_change_state):
5395           rework so that for bins we try to set the state on all children
5396           as well even if the bin is in the correct state already.
5397           change while to do so at least one iteration is done.
5398           For regular elements, we fall back to the previous behaviour for
5399           now since we first need a new plugins release.
5400         * testsuite/states/parent.c: (main):
5401           test for this case
5402           Fixes #123774
5403
5404 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5405
5406         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5407         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5408         (gst_queue_release_locks), (gst_queue_change_state),
5409         (gst_queue_set_property):
5410           add proper lock debugging.  Change dispose to finalize, since
5411           we're freeing mutexes and other stuff which should happen only once.
5412
5413 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5414
5415         * docs/gst/tmpl/gstelement.sgml:
5416         * docs/gst/tmpl/gstplugin.sgml:
5417         * docs/gst/tmpl/gsttypes.sgml:
5418         * docs/pwg/building-state.xml:
5419         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5420         * gst/gstelement.c: (gst_element_change_state):
5421         * gst/gstthread.c: (gst_thread_change_state):
5422           catch wrong state changes in element base class.
5423
5424 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5425
5426         * gst/gstinfo.h:
5427           clean up layout a little.
5428
5429 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5430
5431         * configure.ac:
5432         * testsuite/Makefile.am:
5433         * testsuite/states/Makefile.am:
5434         * testsuite/states/parent.c: (main):
5435           re-enable states testsuite dir.  Add test for state changes and
5436           parent behaviour
5437
5438 2004-07-09  Wim Taymans  <wim@fluendo.com>
5439
5440         * gst/schedulers/gstoptimalscheduler.c:
5441         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5442         (element_get_reachables_func), (element_get_reachables),
5443         (debug_element), (rechain_group), (group_migrate_connected),
5444         (gst_opt_scheduler_pad_unlink):
5445         Do not try to migrate decoupled elements to a new group since
5446         they are not added to groups.
5447
5448 2004-07-08  Benjamin Otte  <otte@gnome.org>
5449
5450         * gst/gstelement.c: (gst_element_error_func):
5451           make reentrant (= allow removing elements in error handler)
5452
5453 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5454
5455         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5456         (gst_pad_send_event), (gst_pad_call_chain_function):
5457           events sent to elements below PAUSED cannot be handled, so
5458           don't try to
5459
5460 2004-07-08  Wim Taymans  <wim@fluendo.com>
5461
5462         * gst/schedulers/gstoptimalscheduler.c:
5463         (chain_recursively_migrate_group), (create_group),
5464         (schedule_group), (gst_opt_scheduler_pad_link),
5465         (group_elements_set_visited), (element_get_reachables_func),
5466         (element_get_reachables), (group_can_reach_group), (debug_element),
5467         (rechain_group), (group_migrate_connected),
5468         (gst_opt_scheduler_pad_unlink):
5469         * testsuite/schedulers/Makefile.am:
5470         Implemented group splitting and rechaining.
5471         Fixes 143777 and 143777-2 in the testsuite.
5472
5473 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5474
5475         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5476           extra debugging
5477         * gst/gstevent.h:
5478         * gst/gstinfo.c: (gst_debug_log_default):
5479           print time nicely.  add thread pointer until someone figures out
5480           a completely portable way of getting at thread id's.
5481         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5482         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5483         (gst_pad_call_chain_function):
5484           extra debugging
5485         * gst/schedulers/gstoptimalscheduler.c:
5486         (get_group_schedule_function), (loop_group_schedule_function),
5487         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5488         (pad_clear_queued), (gst_opt_scheduler_iterate):
5489           rename BUFPEN and friends to DATAPEN since that's what they are.
5490
5491 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5492
5493         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5494         * gst/gstbuffer.h:
5495         * gst/gstpad.c:
5496           cleanups and debugging
5497
5498 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5499
5500         * configure.ac:
5501         * gst/gstvalue.c: (gst_value_compare_enum),
5502         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5503         (gst_value_can_compare), (gst_value_compare):
5504         * testsuite/Makefile.am:
5505         * testsuite/enumcaps/Makefile.am:
5506         * testsuite/enumcaps/enumcaps.c:
5507           Fix enum serialization, deserialization, comparison in caps, add
5508           a test to ensure that this continues working in the future.
5509
5510 2004-07-06  David Schleef  <ds@schleef.org>
5511
5512         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5513         Fix memleak.
5514
5515 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5516
5517         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5518         * gst/gstplugin.h:
5519         * gst/registries/gstxmlregistry.c:
5520         (plugin_times_older_than_recurse), (plugin_times_older_than),
5521         (gst_xml_registry_parse_padtemplate):
5522           only rebuild registry when actual plugins have a newer time than
5523           the registry.  Fixes #145520
5524
5525 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5526
5527         * docs/manual/manual.xml:
5528         * docs/manual/win32.xml:
5529           add chapter on win32 building.  fixes #142422
5530
5531 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5532
5533         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
5534
5535         * gst/autoplug/gstspider.c: (gst_spider_init),
5536         (gst_spider_dispose):
5537           fix spider memleaks.  fixes #137863
5538
5539 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5540
5541         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
5542
5543         * gst/schedulers/gstoptimalscheduler.c:
5544         (gst_opt_scheduler_pad_unlink):
5545           fix SIGBUS error, fixes #145338
5546
5547 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5548
5549         * gst/gstobject.c: (gst_object_replace):
5550         * gst/gstscheduler.c: (gst_scheduler_get_clock):
5551         * gst/gstsystemclock.c: (gst_system_clock_obtain):
5552           clean up clock lifecycle.  Fixes #109831
5553
5554 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5555
5556         * po/LINGUAS:
5557         * po/cs.po:
5558           added Czech translation (Miloslav Trmac)
5559
5560 2004-07-04  David Schleef  <ds@schleef.org>
5561
5562         * tools/Makefile.am:
5563         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5564
5565 2004-07-04  David Schleef  <ds@schleef.org>
5566
5567         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5568
5569 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5570
5571         * gst/gstbin.c: (gst_bin_restore_thyself):
5572           chain to parent restore so the bins get restored correctly
5573           in the editor
5574
5575 2004-07-03  David Schleef  <ds@schleef.org>
5576
5577         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5578         Actually do something in these functions, like before the big
5579         caps change.  (bug #145137)
5580
5581 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5582
5583         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
5584         (gst_element_get_compatible_pad_filtered):
5585         * gst/gstthread.c: (gst_thread_main_loop):
5586           more debugging
5587
5588 2004-07-02  David Schleef  <ds@schleef.org>
5589
5590         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
5591         * gst/gstobject.h:
5592         * gst/gstparse.h:
5593         * gst/gsttrace.h:
5594         * gst/gstxml.h:
5595
5596 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5597
5598         * gst/gstpad.c: (gst_pad_check_schedulers),
5599         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5600         (gst_pad_link_prepare):
5601           revert until testsuite is fixed
5602
5603 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5604
5605         * testsuite/Makefile.am:
5606         * testsuite/caps/filtercaps.c: (main):
5607         * testsuite/clock/clock1.c: (main):
5608         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
5609           fix some more tests
5610
5611 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5612
5613         * testsuite/cleanup/cleanup1.c: (create_pipeline):
5614         * testsuite/cleanup/cleanup2.c: (create_pipeline):
5615         * testsuite/cleanup/cleanup4.c: (main):
5616           fix testsuite
5617
5618 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5619
5620         * libs/gst/control/control.c:
5621         * libs/gst/control/dparam.c:
5622         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
5623         * libs/gst/control/dparammanager.c:
5624         * libs/gst/control/dparammanager.h:
5625         * testsuite/dynparams/Makefile.am:
5626         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
5627         (gst_dptest_change_state), (gst_dptest_chain), (main):
5628           fix testcase for dparams
5629           add debugging category
5630
5631 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5632
5633         * testsuite/Rules:
5634           change path
5635
5636 2004-07-02  Benjamin Otte  <otte@gnome.org>
5637
5638         * tests/.cvsignore:
5639         * tests/Makefile.am:
5640         * tests/mass_elements.c: (gst_get_current_time), (main):
5641           add simple benchmark to test various speeds of fakesrc ! identity !
5642           identity ! ... ! fakesink.
5643           Usage: mass_elements [num_identities] [num_buffers]
5644           If not specified they default to 1000.
5645
5646 2004-07-02  Benjamin Otte  <otte@gnome.org>
5647
5648         * gst/gstpad.c: (gst_pad_check_schedulers),
5649         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5650         (gst_pad_link_prepare):
5651           check that pads that get linked belong to the same manager. The old
5652           code allowed linking elements before putting them into bins, so it
5653           worked to link them and then put them in different threads, which
5654           lead to weird behaviour.
5655           Since this effectively disallows linking elements before putting
5656           them in a bin, some applications might not work after this and error
5657           out. If these applications are too critical, we might need to revert
5658           that patch. Please test this before the next release...
5659
5660 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5661
5662         * gst/gstpad.c: (gst_pad_get_caps):
5663           throw an error if the getcaps function does not return a subset of
5664           the template caps.
5665         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
5666           make disconts without position info an error in debugging
5667         * tests/spidey_bench.c: (handoff), (main):
5668           don't count first try when averaging
5669
5670 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5671
5672         * gst/gstplugin.c: (gst_plugin_load_file):
5673           figure out problem with dynamic test
5674
5675 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5676
5677         * docs/gst/Makefile.am:
5678           fix docs build
5679
5680 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5681
5682         * po/POTFILES.in:
5683         * po/af.po:
5684         * po/az.po:
5685         * po/en_GB.po:
5686         * po/fr.po:
5687         * po/nl.po:
5688         * po/sr.po:
5689         * po/sv.po:
5690         * po/tr.po:
5691         * po/uk.po:
5692         * tools/gst-register.c: (plugin_added_func), (main):
5693           i18n-ize -register, fix plural
5694
5695 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5696
5697         * gst/elements/gstidentity.c: (gst_identity_class_init),
5698         (gst_identity_init), (gst_identity_chain),
5699         (gst_identity_set_property), (gst_identity_get_property):
5700         * gst/elements/gstidentity.h:
5701           check for perfect stream
5702
5703 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5704
5705         * gst/elements/gstidentity.c: (gst_identity_chain):
5706           print offset_end
5707
5708 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5709
5710         * docs/gst/Makefile.am:
5711         * docs/gst/gstreamer-docs.sgml:
5712           doc fixes
5713
5714 2004-06-24  David Schleef  <ds@schleef.org>
5715
5716         * autogen.sh:  Remove call to env, since the buildbot isn't
5717         broken anymore.
5718
5719 2004-06-24  Wim Taymans  <wim@fluendo.com>
5720
5721         * gst/elements/Makefile.am:
5722         * gst/elements/gstelements.c:
5723         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
5724         (gst_multifdsink_class_init), (gst_multifdsink_init),
5725         (gst_multifdsink_add), (gst_multifdsink_remove),
5726         (gst_multifdsink_clear), (gst_multifdsink_chain),
5727         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
5728         * gst/elements/gstmultifdsink.h:
5729         Added an element that writes to multiple filedescriptors at once.
5730
5731 2004-06-24  Benjamin Otte  <otte@gnome.org>
5732
5733         * gst/parse/grammar.y:
5734           don't try to link elements before they have been added to bins
5735
5736 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5737
5738         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
5739         (gst_file_pad_get_length):
5740         * libs/gst/bytestream/filepad.h:
5741           add 2 new functions
5742
5743 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5744
5745         * docs/gst/gstreamer-sections.txt:
5746         remove from docs, the define that Benjamin removed from gstelement.h
5747
5748 2004-06-22  Benjamin Otte  <otte@gnome.org>
5749
5750         * gst/gstelement.h:
5751           remove define that referenced a nonexisting GstElement struct member
5752
5753 2004-06-20  Benjamin Otte  <otte@gnome.org>
5754
5755         * gst/gstdata.c: (gst_data_is_writable):
5756           whoops, return values were wrong, so writable data was marked as
5757           non-writable and vice versa. (fixes #143953, spotted by Francis
5758           Labonte)
5759           Shows how rarely we need to copy data ;)
5760
5761 2004-06-20  Benjamin Otte  <otte@gnome.org>
5762
5763         * testsuite/schedulers/.cvsignore:
5764         * testsuite/schedulers/Makefile.am:
5765         * testsuite/schedulers/143777-2.c: (main):
5766           add test for opt breakage in bug #143777
5767
5768 2004-06-20  Benjamin Otte  <otte@gnome.org>
5769
5770         * gst/gstpad.c: (gst_pad_call_chain_function):
5771           check for if we were unlinked while inside the chainfunction (fixes
5772           entrygthread having issues with #143777)
5773         * testsuite/schedulers/143777.c: (main):
5774         * testsuite/schedulers/Makefile.am:
5775           add a test for that fix
5776
5777 2004-06-20  Benjamin Otte  <otte@gnome.org>
5778
5779         * gst/gstvalue.c: (gst_value_set_int_range):
5780           test that start is smaller then end
5781         * libs/gst/bytestream/Makefile.am:
5782         * libs/gst/bytestream/filepad.c: 
5783         * libs/gst/bytestream/filepad.h:
5784           add GstFilePad - a pad that behaves like a FILE*
5785         * testsuite/bytestream/.cvsignore:
5786         * testsuite/bytestream/Makefile.am:
5787         * testsuite/bytestream/filepadsink.c: 
5788           test for the GstFilePad
5789
5790 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5791
5792         * gst/elements/gstidentity.c: (gst_identity_class_init),
5793         (gst_identity_init), (gst_identity_set_clock),
5794         (gst_identity_chain), (gst_identity_set_property),
5795         (gst_identity_get_property):
5796         * gst/elements/gstidentity.h:
5797         * gst/gstclock.c: (gst_clock_id_wait):
5798           add a "sync" property to sync to the clock
5799
5800 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5801
5802         * gst/gstelementfactory.c: (gst_element_factory_create):
5803           make the freakin "elementfactory bla has no type" message more
5804           useful. So we actually can do something when someone shows up
5805           complaining about it.
5806
5807 2004-06-15  Johan Dahlin  <johan@gnome.org>
5808
5809         * tools/gst-inspect.c (main): Fallback to plugin if no element is
5810         found. This matches the old behavior better. Thanks to Thomas for
5811         pointing out.
5812
5813 2004-06-14  David Schleef  <ds@schleef.org>
5814
5815         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
5816         -fomit-frame-pointer.  Appears to generate correct code in
5817         other cases as well.
5818
5819 2004-06-14  Johan Dahlin  <johan@gnome.org>
5820
5821         * tools/gst-inspect.c (main): Add two new command line options: -a
5822         to print all elements and -n to print the name on each line. Also
5823         fix some error reporting.
5824         (main): Simplify, remove -n and always print names if -a is specified
5825
5826 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
5827
5828         * win32/gstconfig.h:
5829         * win32/GSTreamer.vcproj:
5830         * win32/Makefile:
5831         * gst/gstconfig.h.in:
5832         * gst/gst.h:
5833         * gst/gstbin.h:
5834         * gst/gstelement.h:
5835         * gst/gstevent.h:
5836         * gst/gstobject.h:
5837         * gst/gstpad.h:
5838         * docs/gst/gstreamer-sections.txt:
5839         * docs/gst/tmpl/gstconfig.sgml:
5840           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
5841
5842 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5843         * docs/gst/gstreamer-sections.txt:
5844         * docs/gst/tmpl/gstconfig.sgml:
5845         Add the GSTREAMER_EXPORT macro to the docs
5846
5847 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5848
5849         * tools/gst-compprep.c: (handle_xmlerror), (main):
5850         Add a check for the version that introduced SetStructuredError to fix
5851         the build on FC1
5852
5853 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5854
5855         * win32/msvc71.sln:
5856         * win32/testsuite/:
5857           prepare to compile the testsuite with MSVC
5858
5859 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5860
5861         * docs/manual/win32.xml:
5862           attempt to transform the Win32 README into an XML doc
5863
5864 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5865
5866         * gst/gst.c:
5867         * gst/gstbin.*:
5868         * gst/config.h.in:
5869         * gst/gstelement.*:
5870         * gst/gstevent.h:
5871         * gst/gstobject.*:
5872         * gst/gstpad.h:
5873         * tools/gst-register.c:
5874         * win32/gstreamer.def:
5875           extern symbols are now exported for the Windows DLL
5876
5877 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5878
5879         * gst/gstinfo.h:
5880           fix a problem to enable/disable DEBUG under MSVC
5881
5882 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5883
5884         * win32/:
5885           enable more debug code in DEBUG build
5886
5887 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5888
5889         * win32/config.h:
5890         * gst/gst-i18n-app.h:
5891           enable NLS under Windows
5892
5893 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
5894         * tools/gst-compprep.c: (handle_xmlerror), (main):
5895           Make an error that baffled me a bit clearer
5896
5897 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5898
5899         * gst/gstqueue.c:
5900           don't use g_queue_get_length () because it's 2.4, use ->length
5901
5902 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
5903
5904         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
5905
5906         * tools/gst-inspect.c: (print_signal_info):
5907           don't free random data twice. (fixes #144185)
5908
5909 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5910
5911         * gst/gstqueue.c:
5912         * gst/gstqueue.h:
5913           fix removing from the wrong queue on event timeout
5914           fix disposing of the event queue by casting correctly
5915           add mutexes for handling the event queue
5916           someone was sleeping when fixing queue last time around :)
5917
5918 2004-06-10  Johan Dahlin  <johan@gnome.org>
5919
5920         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
5921         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
5922
5923 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5924
5925         * docs/random/gdp:
5926         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
5927         * libs/gst/dataprotocol/dataprotocol.c:
5928         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5929         (gst_dp_buffer_from_header):
5930         * libs/gst/dataprotocol/dataprotocol.h:
5931         * libs/gst/dataprotocol/dp-private.h:
5932           rev version to 0.1, add buffer flags and copy them
5933
5934 2004-06-09  Johan Dahlin  <johan@gnome.org>
5935
5936         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
5937         the flags from the buffer we're copying.
5938
5939 2004-06-09  Wim Taymans  <wim@fluendo.com>
5940
5941         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
5942         * gst/elements/gstidentity.c: (gst_identity_init),
5943         (gst_identity_chain):
5944         Print more buffer info in fakesink.
5945         Make identity output similar to fakesink.
5946
5947 2004-06-07  Daniel Gazard  <dany42@free.fr>
5948
5949         reviewed by Benjamin Otte  <otte@gnome.org>
5950
5951         * configure.ac:
5952           fix cross compiling not working. (fixes #143741)
5953
5954 2004-06-07  Benjamin Otte  <otte@gnome.org>
5955
5956         * gst/gstelement.c: (gst_element_set_time_delay):
5957           add failure check
5958         * gst/gstinfo.h:
5959           put brackets around macro arguments of GST_TIME_ARGS, add note to
5960           move it to correct header in 0.9
5961
5962 2004-06-07  Benjamin Otte  <otte@gnome.org>
5963
5964         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
5965         (gst_file_index_load), (_file_index_id_save_entries),
5966         (gst_file_index_commit), (gst_file_index_add_association),
5967         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
5968         (gst_file_index_plugin_init):
5969           make debugging use a default category
5970
5971 2004-06-06  David Moore  <dcm@acm.org>
5972
5973         reviewed by Benjamin Otte  <otte@gnome.org>
5974
5975         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
5976         (gst_fdsrc_change_state):
5977           reset offset counter when going READY => PAUSED. (fixes #142903)
5978
5979 2004-06-06  ed@catmur.co.uk
5980
5981         reviewed by Benjamin Otte  <otte@gnome.org>
5982
5983         * gst/registries/gstxmlregistry.c:
5984         (gst_xml_registry_rebuild_recurse):
5985           don't rely on g_dir_open to figure out if a file is a directory, use
5986           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
5987           directories. (fixes #142850)
5988
5989 2004-06-06  Benjamin Otte  <otte@gnome.org>
5990
5991         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
5992           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
5993         * libs/gst/bytestream/adapter.c:
5994         * libs/gst/bytestream/adapter.h:
5995           fix copyright in header and typo in debugging category name
5996
5997 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5998
5999         * configure.ac:
6000           bump nano to cvs
6001
6002 === release 0.8.3 ===
6003
6004 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6005
6006         * configure.ac:
6007           update libtool versioning
6008           do a new release
6009         * docs/gst/tmpl/gstelement.sgml:
6010         * docs/gst/tmpl/gsttypes.sgml:
6011         * gst/gstinfo.c: (_gst_debug_init):
6012           put back GST_CAT_DATAFLOW to fix API breakage
6013
6014 2004-06-04  David Schleef  <ds@schleef.org>
6015
6016         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6017
6018 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6019
6020         * configure.ac:
6021           bump nano to cvs
6022
6023 === release 0.8.2 ===
6024
6025 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6026
6027         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6028           check GST_DEBUG environment variable which is parsed the same way
6029           as --gst-debug=
6030
6031 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6032
6033         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6034                             gstmd5sink.c gstshaper.c gsttee.c
6035                             gsttypefindelement.c
6036         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6037
6038           - removing trailing commas at end of enums
6039             it is correct C99 code but C90 compilers would complain
6040             (AIX, Forte, ...)
6041             ('should' fix #143290, at least partially)
6042
6043 2004-05-27  Wim Taymans  <wim@fluendo.com>
6044
6045         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6046         (chain_group_set_enabled), (create_group), (add_to_group),
6047         (merge_groups), (setup_group_scheduler), (group_elements),
6048         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6049         Don't try to follow the pad connections with other groups
6050         when a loop based element is added to the scheduler because
6051         the bin will inform the scheduler about the pad links a little
6052         later.
6053
6054 2004-05-27  Wim Taymans  <wim@fluendo.com>
6055
6056         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6057         (remove_from_chain), (chain_group_set_enabled),
6058         (setup_group_scheduler), (group_element_set_enabled),
6059         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6060         (gst_opt_scheduler_show):
6061         Elements without a group can do a state change as well, just wait
6062         with the setup of the scheduling function when it is added to a
6063         chain.
6064
6065 2004-05-27  Wim Taymans  <wim@fluendo.com>
6066
6067         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6068         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6069         (merge_groups), (setup_group_scheduler),
6070         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6071         (gst_opt_scheduler_show):
6072         Fixes to maintain internal consistency of the scheduler data
6073         structures. 
6074          - adding an enabled group to a chain should increment the
6075            number of enabled elements in that chain.
6076          - removing an enabled group from a chain could disable the
6077            chain.
6078          - removing a disabled group from a chain could enable the
6079            chain.
6080          - add g_assert when internal inconsistency is detected.
6081          - adding an element to a group could increase the number of
6082            links this group has with other groups.
6083          - merging two groups also merges the chains.
6084          - also show group links in the _show method.
6085            
6086
6087 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6088
6089         * gst/gstcaps.c: (gst_caps_structure_simplify):
6090           don't print error messages when there is no error
6091         * gst/gstvalue.c: (gst_value_compare_int_range):
6092           compare the second value, too
6093         * testsuite/caps/Makefile.am:
6094         * testsuite/caps/random.c: (assert_on_error), (main):
6095           add tests to make sure the two things above are checked for
6096
6097 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6098
6099         * configure.ac:
6100         * libs/gst/dataprotocol/Makefile.am:
6101         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6102         * libs/gst/dataprotocol/dataprotocol.h:
6103           wrap header in GST_ENABLE_NEW.  make code use it
6104
6105 2004-05-23  Johan Dahlin  <johan@gnome.org>
6106
6107         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6108         so verbose and print GstElement signal names all the time.
6109
6110 2004-05-22  David Schleef  <ds@schleef.org>
6111
6112         * gst/registries/gstxmlregistry.c:
6113         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6114         (bug #142957)
6115
6116 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6117
6118         * configure.ac:
6119           scrub cflags for glib2 so gcc doesn't complain when glib is in
6120           /usr/local
6121
6122 2004-05-21  Johan Dahlin  <johan@gnome.org>
6123
6124         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6125         __GNUC__, patch from Brian Cameron, fixes bug #142804
6126
6127 2004-05-20  David Schleef  <ds@schleef.org>
6128
6129         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6130         comparison code.  (bug #142819)
6131
6132 2004-05-20  Wim Taymans  <wim@fluendo.com>
6133
6134         * gst/gstbuffer.c: (gst_buffer_default_copy):
6135         * gst/gstbuffer.h:
6136         Added Comment to a flag.
6137         copy relevant flags in _buffer_copy.
6138
6139 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6140
6141         reviewed by: Wim Taymans <wim at fluendo dot com>
6142
6143         * gst/gstbuffer.h:
6144           add GST_BUFFER_IN_CAPS buffer flag
6145         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6146         (gst_structure_parse_any_list), (gst_structure_parse_list),
6147         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6148         * gst/gstvalue.c: (gst_value_serialize_any_list),
6149         (gst_value_transform_any_list_string),
6150         (gst_value_list_prepend_value), (gst_value_list_append_value),
6151         (gst_value_list_get_size), (gst_value_list_get_value),
6152         (gst_value_transform_list_string),
6153         (gst_value_transform_fixed_list_string),
6154         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6155         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6156         (_gst_value_initialize):
6157         * gst/gstvalue.h:
6158           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6159           < , > as a format.
6160         * testsuite/caps/string-conversions.c: (main):
6161           add regression tests for < >
6162
6163 2004-05-20  Johan Dahlin  <johan@gnome.org>
6164
6165         * docs/gst/Makefile.am (all-local): Re-add
6166
6167 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6168
6169         * docs/gst/Makefile.am:
6170         * docs/gst/gstreamer-docs.sgml:
6171         * docs/libs/Makefile.am:
6172         * docs/libs/gstreamer-libs-docs.sgml:
6173           fix distcheck issues
6174
6175 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6176
6177         * libs/gst/dataprotocol/Makefile.am:
6178           add to autotest
6179
6180 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6181
6182         * libs/gst/dataprotocol/Makefile.am:
6183         * libs/gst/dataprotocol/dataprotocol.c:
6184         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6185         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6186         * libs/gst/dataprotocol/dp-private.h:
6187           use GST macros to read/write fixed length ints
6188           add some more asserts
6189
6190 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6191
6192         * docs/libs/gstreamer-libs-docs.sgml:
6193         * docs/libs/gstreamer-libs-sections.txt:
6194           remove idct and putbits
6195         * configure.ac:
6196         * docs/libs/tmpl/gstdataprotocol.sgml:
6197         * libs/gst/Makefile.am:
6198         * libs/gst/dataprotocol/Makefile.am:
6199         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6200         (buffer_test), (caps_test), (event_test), (main):
6201         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6202         (gst_dp_dump_byte_array), (gst_dp_init),
6203         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6204         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6205         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6206         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6207         (gst_dp_validate_header), (gst_dp_validate_payload),
6208         (gst_dp_validate_packet), (plugin_init):
6209         * libs/gst/dataprotocol/dataprotocol.h:
6210         * libs/gst/dataprotocol/dp-private.h:
6211           add dataprotocol
6212
6213 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6214
6215         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6216           fix int variable deserialization and add a helper so we can actually
6217           debug this.
6218
6219 2004-05-18  David Schleef  <ds@schleef.org>
6220
6221         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6222           argv[0].  Calling yourself is probably not the best way to
6223           construct a test like this, btw.
6224
6225 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6226
6227         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6228           don't claim to be more intelligent than a scheduler when the
6229           scheduler claims the pipeline is stopped
6230         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6231         (safe_cothread_destroy),
6232         (gst_entry_scheduler_remove_all_cothreads),
6233         (gst_entry_scheduler_reset), (_remove_cothread),
6234         (gst_entry_scheduler_state_transition):
6235           hold off cothread destruction if we're not in main cothread
6236         * configure.ac:
6237         * testsuite/Makefile.am:
6238           add new test dir
6239         * testsuite/schedulers/.cvsignore:
6240         * testsuite/schedulers/Makefile.am:
6241           add tests
6242         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6243           check relinking and adding/removing elements from a running pipeline
6244         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6245           check unlinking in a running pipeline
6246         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6247           check unreffing a running pipeline
6248         * testsuite/schedulers/useless_iteration.c: (main):
6249           check iterating a pipeline that contains running threads works
6250
6251 2004-05-18  David Schleef  <ds@schleef.org>
6252
6253         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6254           is false.
6255
6256 2004-05-18  Wim Taymans  <wim@fluendo.com>
6257
6258         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6259         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6260         Fixed an error introduced with patch for 1.63. When setting
6261         a get based element as the entry point in a group, make sure
6262         to mark the group as GET based.
6263
6264 2004-05-18  Wim Taymans  <wim@fluendo.com>
6265
6266         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6267         (setup_group_scheduler), (loop_group_schedule_function),
6268         (gst_opt_scheduler_pad_link):
6269         Added some more debug info and fixed a bug where the group
6270         type was set to LOOP but it was in fact unknown.
6271
6272 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6273
6274         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6275           make resetting scheduler work twice in a row
6276
6277 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6278
6279         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6280         (CREATE_USERIALIZATION), (_gst_value_initialize),
6281         (gst_value_compare_float), (gst_value_serialize_float),
6282         (gst_value_deserialize_float), (gst_value_compare_enum),
6283         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6284           add serialization and comparison functions for long, int64, enum and
6285           float values
6286         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6287           use best serialization function in type hierarchy instead of only a
6288           matching one. This is required for enums to work.
6289         * gst/parse/grammar.y:
6290           use gst_caps_deserialize
6291         * testsuite/parse/Makefile.am:
6292           parse1 now works
6293         * testsuite/parse/parse1.c: (main):
6294           remove aggregator check, aggregator is broken, this test works now
6295           but fails because of bug #138012
6296         * testsuite/parse/parse2.c: (main):
6297           s/xvideosink/xvimagesink - this test looks a lot like we should
6298           disable it
6299
6300 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6301
6302         * gst/gstelement.c: (gst_element_class_init):
6303           whoops, store the signal id correctly
6304         * gst/schedulers/gstbasicscheduler.c:
6305         (gst_basic_scheduler_chain_wrapper):
6306           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6307           chain function isn't linked
6308
6309 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6310         * configure.ac:
6311         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6312         support until we decide where the flags should be used
6313         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6314         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6315         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6316         Output refused caps in the debug info
6317
6318 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6319
6320         * gst/elements/gstidentity.c: (gst_identity_chain):
6321           add duration debug
6322         * gst/gstinfo.c: (gst_debug_log_default):
6323           add timestamp
6324
6325 2004-05-13  Benjamin Otte  <otte@gnome.org>
6326
6327         * gst/gstpipeline.c: (gst_pipeline_dispose),
6328         (gst_pipeline_change_state):
6329           call gst_scheduler_reset on dispose (fixes #141416)
6330
6331 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6332
6333         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6334           compute mapsize correctly
6335         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6336           use correct datatypes when calling a varargs function
6337         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6338           push a DISCONT event as first thing
6339         * gst/gst_private.h:
6340         * gst/gstinfo.c: (_gst_debug_init):
6341           remove GST_DATAFLOW debugging category
6342         * gst/gstbin.c: (gst_bin_iterate):
6343           use GST_SCHEDULING category
6344         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6345         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6346         (gst_pad_call_get_function):
6347           add GST_DATAFLOW to easily track flow of buffers or events.
6348         * gst/gstqueue.c: (gst_queue_get_type),
6349         (gst_queue_handle_pending_events), (gst_queue_chain),
6350         (gst_queue_get), (gst_queue_handle_src_event):
6351           use own static debugging category GST_DATAFLOW for dataflow,
6352           use DEBUG category for showing which path events go, use LOG
6353           category for buffers.
6354
6355 2004-05-10  David Schleef  <ds@schleef.org>
6356
6357         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6358
6359 2004-05-10  David Schleef  <ds@schleef.org>
6360
6361         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6362         symbols, because otherwise we don't know what they are.  Thanks,
6363         the GStreamer team.
6364         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6365
6366 2004-05-10  David Schleef  <ds@schleef.org>
6367
6368         (from Steve Lhomme)
6369         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6370         are deleted.  Fix.
6371         * win32/Makefile.inspect:
6372         * win32/Makefile.launch:
6373         * win32/Makefile.register:
6374
6375 2004-05-10  David Schleef  <ds@schleef.org>
6376
6377         * gst/gstinfo.h: Add missing inline function.
6378         * gst/gsttrace.c: add include
6379         * gst/parse/grammar.y: remove unused code
6380         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6381         more portable.
6382         * tools/gst-register.c: wrap unistd.h
6383         
6384         More additions/fixes from Steve for the MSVC build.
6385         * win32/GStreamer.vcproj:
6386         * win32/Makefile:
6387         * win32/Makefile.inspect:
6388         * win32/Makefile.launch:
6389         * win32/Makefile.register:
6390         * win32/README.txt:
6391         * win32/gst-inspect.vcproj:
6392         * win32/gst-launch.vcproj:
6393         * win32/gst-register.vcproj:
6394         * win32/gstbytestream.def:
6395         * win32/gstbytestream.vcproj:
6396         * win32/gstconfig.h:
6397         * win32/gstelements.def:
6398         * win32/gstelements.vcproj:
6399         * win32/gstenumtypes.c:
6400         * win32/gstenumtypes.h:
6401         * win32/gstoptimalscheduler.def:
6402         * win32/gstoptimalscheduler.vcproj:
6403         * win32/gstreamer.def:
6404         * win32/gstspider.def:
6405         * win32/gstspider.vcproj:
6406         * win32/gstversion.h:
6407         * win32/msvc71.sln:
6408
6409 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6410
6411         * gst/gstelement.c: (gst_element_class_init),
6412         (gst_element_no_more_pads):
6413         * gst/gstelement.h:
6414           add gst_element_no_more_pads and the "no-more-pads" signal
6415
6416 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6417
6418         * gst/gstregistry.c: (gst_registry_add_plugin):
6419           refuse to add plugins when a plugin with same name is already
6420           registered. Fixes a bunch of "How to remove plugins?" issues.
6421           May lead to other problems though, let's test
6422
6423 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6424
6425         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6426         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6427         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6428
6429 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6430
6431         * tests/Makefile.am: fix am16 issue
6432
6433 2004-05-09  Benjamin Otte  <otte@gnome.org>
6434
6435         * libs/gst/bytestream/Makefile.am:
6436           we should indeed add .c files to makefiles or they won't be built
6437           (d'oh)
6438
6439 2004-05-08  Benjamin Otte  <otte@gnome.org>
6440
6441         * gst/gstpad.c: (gst_pad_proxy_fixate):
6442           really reduce the set of caps
6443
6444 2004-05-08  Benjamin Otte  <otte@gnome.org>
6445
6446         * tests/Makefile.am:
6447         * tests/spidey_bench.c: (handoff), (main):
6448           add benchmark to test how long spider needs to create a pipeline
6449
6450 2004-05-08  Benjamin Otte  <otte@gnome.org>
6451
6452         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6453           mark links as unengaged when unnegotiating instead of deactivating.
6454           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6455
6456 2004-05-08  Benjamin Otte  <otte@gnome.org>
6457
6458         * docs/manual/helloworld.xml:
6459           s/audiosink/osssink (patch by Patrick Guimond)
6460
6461 2004-05-07  David Schleef  <ds@schleef.org>
6462
6463         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6464         since it contains important stuff.
6465
6466 2004-05-07  David Schleef  <ds@schleef.org>
6467
6468         * testsuite/caps/caps.c: (test3), (main): A check for appending
6469         ANY caps.
6470
6471 2004-05-07  David Schleef  <ds@schleef.org>
6472
6473         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6474         which may contain commas.  Fixes detection of -Wa,-mregnames
6475
6476 2004-05-06  David Schleef  <ds@schleef.org>
6477
6478         Changes to handle compilers that don't have variadic macro
6479         support.  In particular, glib headers define some inlines
6480         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6481         builds.
6482         * gst/Makefile.am:
6483         * gst/cothreads.c:
6484         * gst/elements/gstfdsink.c:
6485         * gst/elements/gstfdsrc.c:
6486         * gst/elements/gstfilesink.c:
6487         * gst/elements/gstfilesrc.c:
6488         * gst/gst_private.h:
6489         * gst/gstatomic.c:
6490         * gst/gstcaps.c: (gst_caps_append):
6491         * gst/gstcpu.c: (gst_cpuid_i386):
6492         * gst/gstelement.c:
6493         * gst/gsterror.c:
6494         * gst/gstfilter.c:
6495         * gst/gstinfo.h:
6496         * gst/gstprobe.c:
6497         * gst/gstquery.c:
6498         * gst/gstregistry.c:
6499         * gst/gststructure.c:
6500         * gst/gsttaginterface.c:
6501         * gst/gsttrace.c: (gst_trace_new):
6502         * gst/gsttrashstack.c:
6503         * gst/gsturi.c:
6504         * gst/gstvalue.c:
6505         * gst/parse/grammar.y:
6506         * gst/parse/parse.l:
6507         * tools/gst-inspect.c: (main):
6508         * tools/gst-launch.c: (main):
6509         * tools/gst-xmlinspect.c: (PUT_STRING):
6510
6511 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6512
6513         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6514         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6515         * gst/elements/gstfilesrc.h:
6516           send NEW_MEDIA events correctly
6517         * gst/elements/gsttypefindelement.c: (start_typefinding),
6518         (gst_type_find_element_handle_event):
6519           restart typefinding when we get a NEW_MEDIA event
6520         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6521         (gst_bin_dispose):
6522           don't die when someone removes elements in callbacks
6523         * gst/gstelement.c: (gst_element_change_state):
6524           improve debugging
6525         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
6526           we need a NEW_MEDIA event to engage a link
6527         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
6528           don't g_print debugging stuff
6529         * testsuite/caps/simplify.c: (check_caps):
6530
6531 2004-05-04  Benjamin Otte  <otte@gnome.org>
6532
6533         * gst/parse/grammar.y:
6534           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
6535
6536 2004-05-04  Benjamin Otte  <otte@gnome.org>
6537
6538         * testsuite/caps/renegotiate.c: (main):
6539           improve output in error case
6540
6541 2004-05-04  Benjamin Otte  <otte@gnome.org>
6542
6543         * gst/parse/grammar.y:
6544           fix assert to not trigger when there's no error argument
6545         * gst/parse/parse.l:
6546           fix definition of caps to allow more than two structures
6547         * testsuite/caps/Makefile.am:
6548         * testsuite/caps/renegotiate.c: (main):
6549           it's sinesrc and works in that case
6550
6551 2004-05-04  Wim Taymans  <wim@fluendo.com>
6552
6553         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6554         (group_dec_link), (gst_opt_scheduler_pad_unlink):
6555         when removing an element from a group, we always need to
6556         decrement the link count that this group had with other 
6557         groups through the element.
6558         added an extra assert to catch inconsistencies when decrementing
6559         the link count.
6560
6561 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6562
6563         * configure.ac:
6564         * docs/gst/Makefile.am:
6565         * docs/gst/gstreamer-sections.txt:
6566         * docs/gst/tmpl/gstcompat.sgml:
6567         * examples/appreader/Makefile.am:
6568         * examples/cutter/Makefile.am:
6569         * examples/events/Makefile.am:
6570         * examples/helloworld/Makefile.am:
6571         * examples/helloworld2/Makefile.am:
6572         * examples/launch/Makefile.am:
6573         * examples/manual/Makefile.am:
6574         * examples/mixer/Makefile.am:
6575         * examples/pingpong/Makefile.am:
6576         * examples/plugins/Makefile.am:
6577         * examples/queue/Makefile.am:
6578         * examples/queue2/Makefile.am:
6579         * examples/queue3/Makefile.am:
6580         * examples/queue4/Makefile.am:
6581         * examples/retag/Makefile.am:
6582         * examples/thread/Makefile.am:
6583         * examples/typefind/Makefile.am:
6584         * examples/xml/Makefile.am:
6585         * gst/Makefile.am:
6586         * gst/autoplug/Makefile.am:
6587         * gst/elements/Makefile.am:
6588         * gst/gstcompat.h:
6589         * gst/indexers/Makefile.am:
6590         * gst/parse/Makefile.am:
6591         * gst/registries/Makefile.am:
6592         * gst/schedulers/Makefile.am:
6593         * libs/gst/bytestream/Makefile.am:
6594         * libs/gst/control/Makefile.am:
6595         * libs/gst/getbits/Makefile.am:
6596         * po/af.po:
6597         * po/az.po:
6598         * po/en_GB.po:
6599         * po/fr.po:
6600         * po/nl.po:
6601         * po/sr.po:
6602         * po/sv.po:
6603         * po/tr.po:
6604         * po/uk.po:
6605         * tests/Makefile.am:
6606         * tests/bufspeed/Makefile.am:
6607         * tests/instantiate/Makefile.am:
6608         * tests/memchunk/Makefile.am:
6609         * tests/muxing/Makefile.am:
6610         * tests/negotiation/Makefile.am:
6611         * tests/probes/Makefile.am:
6612         * tests/sched/Makefile.am:
6613         * tests/seeking/Makefile.am:
6614         * tests/threadstate/Makefile.am:
6615         * testsuite/caps/Makefile.am:
6616         * testsuite/cleanup/Makefile.am:
6617         * testsuite/dlopen/Makefile.am:
6618         * testsuite/dynparams/Makefile.am:
6619         * testsuite/plugin/Makefile.am:
6620         * testsuite/states/Makefile.am:
6621         * tools/Makefile.am:
6622           reorganize compile/link flags to be consistent
6623           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
6624
6625 2004-05-04  David Schleef  <ds@schleef.org>
6626
6627         The "once more, with feeling" check-in.
6628         * testsuite/caps/Makefile.am: dist caps_strings
6629         * testsuite/caps/renegotiate.c: (main): This test triggers a
6630           segfault in the core.  Marking as failing.
6631
6632 2004-05-03  David Schleef  <ds@schleef.org>
6633
6634         * testsuite/caps/deserialize.c: (main): Fix problems noticed
6635           by the build bots.
6636         * testsuite/caps/renegotiate.c: (main): Same.
6637
6638 2004-05-03  David Schleef  <ds@schleef.org>
6639
6640         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
6641
6642 2004-05-03  David Schleef  <ds@schleef.org>
6643
6644         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
6645           variable to find our source file.
6646
6647 2004-05-03  David Schleef  <ds@schleef.org>
6648
6649         * configure.ac:  Link plugins with libgstreamer and dependent
6650           libraries
6651         * testsuite/caps/Makefile.am:
6652         * testsuite/caps/caps_strings:
6653         * testsuite/caps/deserialize.c: (main): Add a little test to slog
6654           through a file of caps strings and test each one
6655
6656 2004-05-04  Benjamin Otte  <otte@gnome.org>
6657
6658         * libs/gst/bytestream/Makefile.am:
6659         * libs/gst/bytestream/adapter.c: 
6660         * libs/gst/bytestream/adapter.h:
6661           add GstAdapter, similar to bytestream, but doesn't require ugly event
6662           handling or uglier loopbased elements
6663
6664 2004-05-03  David Schleef  <ds@schleef.org>
6665
6666         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
6667         * testsuite/caps/erathostenes.c:
6668         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
6669
6670 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6671
6672         * docs/pwg/pwg.xml:
6673           remove hardcoded stylesheet path (duh)
6674         * docs/random/release:
6675         * docs/gst/gstreamer-sections.txt:
6676         * gst/Makefile.am:
6677         * gst/gst.h:
6678         * gst/gst_private.h:
6679         * gst/gstcaps.c:
6680         * gst/gstevent.c:
6681         * gst/gstformat.c:
6682         * gst/gstinfo.c:
6683         * gst/gstinfo.h:
6684         * gst/gstinterface.c:
6685         * gst/gstmemchunk.c:
6686         * gst/gstprobe.c:
6687         * gst/gstquery.c:
6688         * gst/gstregistry.c:
6689         * gst/gstregistrypool.c:
6690         * gst/gststructure.c:
6691         * gst/gsttaginterface.c:
6692         * gst/gstthread.c:
6693         * gst/gsttrace.c:
6694         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
6695         * gst/gsturi.c:
6696         * gst/gstvalue.c:
6697           deprecate gst_info; remove gstlog.h
6698    
6699
6700 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6701
6702         * Makefile.am:
6703         * po/en_GB.po:
6704         * po/sv.po:
6705         * po/uk.po:
6706           updated translations
6707
6708 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6709
6710         * gst/gstbin.c: (gst_bin_dispose):
6711           better debugging
6712
6713 2004-05-03  Johan Dahlin  <johan@gnome.org>
6714
6715         * gst/schedulers/gstoptimalscheduler.c
6716         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
6717         really is a GstElement. Avoids critical when running gst-launch -v
6718         and a oggdemux/decoding pipeline.
6719
6720 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6721
6722         * docs/gst/tmpl/gstpipeline.sgml :
6723         * docs/manual/elements-api.xml :
6724                 doc fix by Patrick Guimond (Protector) from devel ML
6725                 reviewed by ronald
6726
6727 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6728
6729         * docs/gst/Makefile.am :
6730         * docs/libs/Makefile.am :
6731                 apply a patch from Arwed v. Merkatz so that gtk-doc
6732                 generated docs install (same for .devhelp file)
6733                 (fixes part 1 of #138836)
6734
6735 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6736
6737         * docs/faq/dependencies.xml: typo
6738         * docs/faq/getting.xml :
6739             - fix download URL for new gstreamer site
6740             - hide sf.net download page as latest version aren't there
6741             - fix apt URLs
6742             - fill "get via CVS" paragraph (link to dev page on the site)
6743         * docs/faq/general.xml:
6744             hide status tables as they no more exists
6745             change case on plugins license file to reflect reality
6746         * docs/faq/troubleshooting.xml:
6747             remove the wiki question/answer as there is no more wiki
6748
6749 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6750
6751         * gst/gsterror.h:
6752           include the headers needed for declarations used in this header
6753
6754 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6755
6756         * docs/random/uraeus/gstreamer_and_midi.txt :
6757           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
6758           (fixes #132288)
6759
6760 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
6761
6762         reviewed by Benjamin Otte  <otte@gnome.org>
6763
6764         * gst/schedulers/gthread-cothreads.h:
6765           free allocated data for main cothread, too when destroying context
6766           (fixes #141417)
6767
6768 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6769
6770         * docs/manual/goals.xml : remove duplicated paragraph at end 
6771         of doc page (fixes #141448)
6772
6773 2004-04-29  David Schleef  <ds@schleef.org>
6774
6775         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6776         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
6777
6778 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6779
6780         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6781           fix property
6782         * gst/gstcaps.c:
6783           fix doc string
6784         * po/POTFILES.in:
6785           rename typefind source file
6786
6787 2004-04-28  David Schleef  <ds@schleef.org>
6788
6789         Several new files from Steve Lhomme's MSVC patch (bug #141317):
6790         * win32/GStreamer.vcproj:
6791         * win32/Makefile:
6792         * win32/config.h:
6793         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
6794         (_trewinddir), (_ttelldir), (_tseekdir):
6795         * win32/dirent.h:
6796         * win32/gst-inspect.vcproj:
6797         * win32/gst-launch.vcproj:
6798         * win32/gst-register.vcproj:
6799         * win32/gstbytestream.vcproj:
6800         * win32/gstelements.vcproj:
6801         * win32/gstoptimalscheduler.vcproj:
6802         * win32/gstspider.vcproj:
6803         * win32/gtchar.h:
6804         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
6805         * win32/mman.h:
6806         * win32/mman.inl:
6807         * win32/msvc71.sln:
6808
6809 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6810
6811         * gst/gst.c: (init_post):
6812         * gst/gstinfo.c:
6813           remove useless _gst_progname stuff
6814         * tools/gst-inspect.c: (print_field), (print_caps):
6815           improve caps output
6816
6817 2004-04-28  David Schleef  <ds@schleef.org>
6818
6819         Disable parsing of a lot of files that aren't part of the
6820         exported API.  Move corresponding template files to old/,
6821         waiting for removal when they don't contain anything
6822         interesting.
6823         * docs/gst/Makefile.am:
6824         * docs/gst/gstreamer-sections.txt:
6825         * docs/gst/tmpl/cothreads.sgml:
6826         * docs/gst/tmpl/cothreads_compat.sgml:
6827         * docs/gst/tmpl/gettext.sgml:
6828         * docs/gst/tmpl/gobject2gtk.sgml:
6829         * docs/gst/tmpl/grammar.tab.sgml:
6830         * docs/gst/tmpl/gst-i18n-app.sgml:
6831         * docs/gst/tmpl/gst-i18n-lib.sgml:
6832         * docs/gst/tmpl/gst_private.sgml:
6833         * docs/gst/tmpl/gstaggregator.sgml:
6834         * docs/gst/tmpl/gstarch.sgml:
6835         * docs/gst/tmpl/gstatomic_impl.sgml:
6836         * docs/gst/tmpl/gstbufferstore.sgml:
6837         * docs/gst/tmpl/gstdata_private.sgml:
6838         * docs/gst/tmpl/gstdisksink.sgml:
6839         * docs/gst/tmpl/gstdisksrc.sgml:
6840         * docs/gst/tmpl/gstelementfactory.sgml:
6841         * docs/gst/tmpl/gstextratypes.sgml:
6842         * docs/gst/tmpl/gstfakesink.sgml:
6843         * docs/gst/tmpl/gstfakesrc.sgml:
6844         * docs/gst/tmpl/gstfdsink.sgml:
6845         * docs/gst/tmpl/gstfdsrc.sgml:
6846         * docs/gst/tmpl/gstfilesink.sgml:
6847         * docs/gst/tmpl/gstfilesrc.sgml:
6848         * docs/gst/tmpl/gsthttpsrc.sgml:
6849         * docs/gst/tmpl/gstidentity.sgml:
6850         * docs/gst/tmpl/gstindexfactory.sgml:
6851         * docs/gst/tmpl/gstmarshal.sgml:
6852         * docs/gst/tmpl/gstmd5sink.sgml:
6853         * docs/gst/tmpl/gstmultidisksrc.sgml:
6854         * docs/gst/tmpl/gstmultifilesrc.sgml:
6855         * docs/gst/tmpl/gstpadtemplate.sgml:
6856         * docs/gst/tmpl/gstpipefilter.sgml:
6857         * docs/gst/tmpl/gstschedulerfactory.sgml:
6858         * docs/gst/tmpl/gstsearchfuncs.sgml:
6859         * docs/gst/tmpl/gstshaper.sgml:
6860         * docs/gst/tmpl/gstspider.sgml:
6861         * docs/gst/tmpl/gstspideridentity.sgml:
6862         * docs/gst/tmpl/gststatistics.sgml:
6863         * docs/gst/tmpl/gsttee.sgml:
6864         * docs/gst/tmpl/gsttimecache.sgml:
6865         * docs/gst/tmpl/gsttypefind.sgml:
6866         * docs/gst/tmpl/gsttypefindfactory.sgml:
6867         * docs/gst/tmpl/gstxmlregistry.sgml:
6868         * docs/gst/tmpl/gthread-cothreads.sgml:
6869         * docs/gst/tmpl/old/cothreads.sgml:
6870         * docs/gst/tmpl/old/cothreads_compat.sgml:
6871         * docs/gst/tmpl/old/gettext.sgml:
6872         * docs/gst/tmpl/old/gobject2gtk.sgml:
6873         * docs/gst/tmpl/old/grammar.tab.sgml:
6874         * docs/gst/tmpl/old/gst-i18n-app.sgml:
6875         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
6876         * docs/gst/tmpl/old/gst_private.sgml:
6877         * docs/gst/tmpl/old/gstaggregator.sgml:
6878         * docs/gst/tmpl/old/gstarch.sgml:
6879         * docs/gst/tmpl/old/gstatomic_impl.sgml:
6880         * docs/gst/tmpl/old/gstbufferstore.sgml:
6881         * docs/gst/tmpl/old/gstdata_private.sgml:
6882         * docs/gst/tmpl/old/gstdisksink.sgml:
6883         * docs/gst/tmpl/old/gstdisksrc.sgml:
6884         * docs/gst/tmpl/old/gstelementfactory.sgml:
6885         * docs/gst/tmpl/old/gstextratypes.sgml:
6886         * docs/gst/tmpl/old/gstfakesink.sgml:
6887         * docs/gst/tmpl/old/gstfakesrc.sgml:
6888         * docs/gst/tmpl/old/gstfdsink.sgml:
6889         * docs/gst/tmpl/old/gstfdsrc.sgml:
6890         * docs/gst/tmpl/old/gstfilesink.sgml:
6891         * docs/gst/tmpl/old/gstfilesrc.sgml:
6892         * docs/gst/tmpl/old/gsthttpsrc.sgml:
6893         * docs/gst/tmpl/old/gstidentity.sgml:
6894         * docs/gst/tmpl/old/gstindexfactory.sgml:
6895         * docs/gst/tmpl/old/gstmarshal.sgml:
6896         * docs/gst/tmpl/old/gstmd5sink.sgml:
6897         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
6898         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
6899         * docs/gst/tmpl/old/gstpadtemplate.sgml:
6900         * docs/gst/tmpl/old/gstpipefilter.sgml:
6901         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
6902         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
6903         * docs/gst/tmpl/old/gstshaper.sgml:
6904         * docs/gst/tmpl/old/gstspider.sgml:
6905         * docs/gst/tmpl/old/gstspideridentity.sgml:
6906         * docs/gst/tmpl/old/gststatistics.sgml:
6907         * docs/gst/tmpl/old/gsttee.sgml:
6908         * docs/gst/tmpl/old/gsttimecache.sgml:
6909         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
6910         * docs/gst/tmpl/old/gstxmlregistry.sgml:
6911         * docs/gst/tmpl/old/gthread-cothreads.sgml:
6912         * docs/gst/tmpl/old/types.sgml:
6913         * docs/gst/tmpl/types.sgml:
6914
6915         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
6916         gtkdoc-scan doesn't like files with the same name in different
6917         directories.
6918         * gst/elements/Makefile.am:
6919         * gst/elements/gstelements.c:
6920         * gst/elements/gsttypefind.c: 
6921         * gst/elements/gsttypefind.h:
6922         * gst/elements/gsttypefindelement.c:
6923         * gst/elements/gsttypefindelement.h:
6924
6925 2004-04-28  David Schleef  <ds@schleef.org>
6926
6927         A bunch of portability fixes, derived from Steve Lhomme's MSVC
6928         patch (bug #141317):
6929         * gst/gst-i18n-lib.h: Allow disabling gettext.
6930         * gst/gstatomic_impl.h: disable warning when it's dumb.
6931         * gst/gstclock.c: fix include
6932         * gst/gstcompat.h: fix variadic macro
6933         * gst/gstinfo.c: fix include
6934         * gst/gstmacros.h: add defines for inlines on MSVC
6935         * gst/gstplugin.c: fix includes
6936         * gst/gstregistry.c: fix includes
6937         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
6938         * gst/gstsystemclock.c: fix include
6939         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
6940         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
6941         * gst/registries/gstxmlregistry.c:
6942         (gst_xml_registry_parse_element_factory): fix use of non-portable
6943         functions
6944         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
6945         * libs/gst/control/dparammanager.h: same
6946
6947 2004-04-28  David Schleef  <ds@schleef.org>
6948
6949         Move a bunch of unused files to old/ with names that are
6950         not case-insensitive-unique.  These files still contain some
6951         useful information that needs to be merged into gstbin.sgml,
6952         etc., so they shouldn't be deleted yet.
6953         * docs/gst/tmpl/GstBin.sgml:
6954         * docs/gst/tmpl/GstBuffer.sgml:
6955         * docs/gst/tmpl/GstCaps.sgml:
6956         * docs/gst/tmpl/GstClock.sgml:
6957         * docs/gst/tmpl/GstCompat.sgml:
6958         * docs/gst/tmpl/GstData.sgml:
6959         * docs/gst/tmpl/GstElement.sgml:
6960         * docs/gst/tmpl/GstEvent.sgml:
6961         * docs/gst/tmpl/GstIndex.sgml:
6962         * docs/gst/tmpl/GstStructure.sgml:
6963         * docs/gst/tmpl/GstTag.sgml:
6964         * docs/gst/tmpl/old/GstBin.sgml:
6965         * docs/gst/tmpl/old/GstBuffer.sgml:
6966         * docs/gst/tmpl/old/GstCaps.sgml:
6967         * docs/gst/tmpl/old/GstClock.sgml:
6968         * docs/gst/tmpl/old/GstCompat.sgml:
6969         * docs/gst/tmpl/old/GstData.sgml:
6970         * docs/gst/tmpl/old/GstElement.sgml:
6971         * docs/gst/tmpl/old/GstEvent.sgml:
6972         * docs/gst/tmpl/old/GstIndex.sgml:
6973         * docs/gst/tmpl/old/GstStructure.sgml:
6974         * docs/gst/tmpl/old/GstTag.sgml:
6975
6976 2004-04-28  David Schleef  <ds@schleef.org>
6977
6978         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6979         (gst_caps_append), (gst_caps_append_structure),
6980         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
6981         (gst_caps_set_simple), (gst_caps_set_simple_valist),
6982         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
6983         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
6984         (gst_caps_intersect), (gst_caps_normalize),
6985         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
6986         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
6987         * gst/gstcaps.h: use GST_IS_CAPS().
6988
6989 2004-04-26  David Schleef  <ds@schleef.org>
6990
6991         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
6992         assembly.  gcc doesn't handle it correctly. (bug #141083)
6993         * gst/gsttrashstack.h: same
6994
6995 2004-04-25  Benjamin Otte  <otte@gnome.org>
6996
6997         * gst/gstelement.c: (gst_element_change_state):
6998           fix assertion to do an int comparison
6999
7000 2004-04-25  Benjamin Otte  <otte@gnome.org>
7001
7002         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7003           better debugging output on error
7004
7005 2004-04-25  Benjamin Otte  <otte@gnome.org>
7006
7007         * gst/gstcaps.c: (gst_caps_subtract):
7008           fix memleak
7009
7010 2004-04-23  Benjamin Otte  <otte@gnome.org>
7011
7012         * gst/gstvalue.c: (gst_value_compare_buffer),
7013         (_gst_value_initialize):
7014           add comparison function for buffers
7015
7016 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7017
7018         * docs/pwg/pwg.xml:
7019           Just found out that this so-called "ima-wav" format is really
7020           just "dvi adpcm" (according to the MS WAV documentation). So
7021           renaming it. We didn't use it yet anyway.
7022
7023 2004-04-23  Benjamin Otte  <otte@gnome.org>
7024
7025         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7026           call gst_caps_is_subset
7027
7028 2004-04-23  Benjamin Otte  <otte@gnome.org>
7029
7030         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7031         (gst_caps_is_subset):
7032           add documentation
7033
7034 2004-04-23  Benjamin Otte  <otte@gnome.org>
7035           
7036         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7037         (gst_caps_structure_subtract), (gst_caps_subtract),
7038         (gst_caps_structure_figure_out_union),
7039         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7040           fix simplifying and subtracting not working correctly with optional
7041           properties
7042           solve assorted problems that make it now simplify ebven more
7043         * docs/gst/tmpl/gstcaps.sgml:
7044         * gst/gstcaps.h:
7045           make gst_caps_do_simplify return a bool to indicate if it simplified
7046         * testsuite/caps/simplify.c: (main):
7047           add more checks. The tests is quite a bit useless right now because
7048           the core is heavily simplifying itself.
7049         * testsuite/caps/caps.h:
7050           fix caps to contain all optional properties
7051
7052 2004-04-22  Benjamin Otte  <otte@gnome.org>
7053
7054         * docs/gst/tmpl/gstcaps.sgml:
7055         * docs/gst/tmpl/gstfilesrc.sgml:
7056         * docs/gst/tmpl/gststructure.sgml:
7057         * docs/gst/tmpl/gstvalue.sgml:
7058           update for recent API changes
7059         * gst/gstcaps.c: (gst_caps_do_simplify):
7060           fix to stop trying with a freed structure
7061         * gst/gstpad.c: (gst_pad_link_fixate):
7062           simplify caps
7063         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7064           remove C++ comment
7065         * gst/gstpad.h:
7066           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7067         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7068         (gst_structure_to_string):
7069           keep the correct type when using lists of ranges
7070         * gst/gstvalue.c: (gst_value_list_prepend_value),
7071         (gst_value_list_append_value):
7072           copy the value before adding to the list (d'oh)
7073         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7074         (gst_value_subtract_int_range_int_range):
7075           handle overflows correctly
7076         * gst/gstvalue.c: (gst_value_subtract_from_list):
7077           fix memleak
7078         * testsuite/caps/caps.h:
7079           add a caps that caused segfaults
7080
7081 2004-04-22  Benjamin Otte  <otte@gnome.org>
7082
7083         * testsuite/refcounting/pad.c: (main):
7084           fix test
7085
7086 2004-04-22  Benjamin Otte  <otte@gnome.org>
7087
7088         * gst/gstcaps.c: (gst_caps_subtract):
7089           allow subtracting ANY and EMPTY from ANY caps
7090
7091 2004-04-22  Benjamin Otte  <otte@gnome.org>
7092
7093         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7094         (gst_caps_union):
7095           only simplify in functions that create new caps. Simplifying in
7096           gst_caps_append breaks tests.
7097
7098 2004-04-22  Benjamin Otte  <otte@gnome.org>
7099
7100         * gst/gstcaps.c: (gst_caps_structure_simplify):
7101           unset GValue after use
7102         * gst/gstcaps.c: (gst_caps_append), 
7103         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7104           use gst_caps_simplify (reduces registry size by 30%)
7105         * gst/gstpad.c: (gst_pad_template_new):
7106           don't allow NULL caps
7107
7108 2004-04-22  Benjamin Otte  <otte@gnome.org>
7109
7110         * docs/gst/gstreamer-sections.txt:
7111           add gst_caps_do_simplify
7112         * gst/gstcaps.c:
7113           add documentation for gst_caps_do_simplify
7114         * gst/gstvalue.h:
7115           fix typo in gst_value_register_subtract_func declaration for gst-doc
7116
7117 2004-04-22  Benjamin Otte  <otte@gnome.org>
7118
7119         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7120           fix bug when converting from empty string.
7121         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7122         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7123           use gst_caps_new_empty to allocate a new caps. Only that function
7124           allocates memory for caps now.
7125         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7126         (gst_caps_remove_structure):
7127           add ability to remove one structure (but not to header yet)
7128         * gst/gstcaps.c: (gst_caps_compare_structures),
7129         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7130         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7131         * gst/gstcaps.h:
7132           add gst_caps_do_simplify that tries to simplify a caps in place.
7133           Deprecate old gst_caps_simplify function.
7134         * testsuite/caps/caps.h:
7135           add caps.h containing a common set of caps to test against.
7136         * testsuite/caps/sets.c: (check_caps), (main):
7137           use it.
7138         * testsuite/caps/.cvsignore:
7139         * testsuite/caps/Makefile.am:
7140         * testsuite/caps/simplify.c: (check_caps), (main):
7141           add test to check correctness and efficency of caps simplification.
7142
7143 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7144
7145         reviewed by Benjamin Otte  <otte@gnome.org>
7146
7147         * gst/gstparse.c: (_gst_parse_escape):
7148           Free the GString used in _gst_parse_escape()
7149
7150 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7151
7152         * gst/gstpad.c: (gst_pad_link_negotiate):
7153           refuse to link if the link is not possible
7154         * configure.ac:
7155         * testsuite/Makefile.am:
7156         * testsuite/negotiation/.cvsignore:
7157         * testsuite/negotiation/Makefile.am:
7158         * testsuite/negotiation/pad_link.c: (main):
7159           add test that checks the above behaviour
7160
7161 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7162
7163         * docs/gst/gstreamer-sections.txt:
7164           add newly added API
7165
7166 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7167
7168         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7169         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7170         (gst_filesrc_open_file), (gst_filesrc_close_file),
7171         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7172         * gst/elements/gstfilesrc.h:
7173           add support for non-regular files (#140734)
7174
7175 2004-04-21  Benjamin Otte  <otte@gnome.org>
7176
7177         * gst/gstpad.c: (gst_pad_link_fixate):
7178           add sophisticated error checking code to see if fixation functions
7179           did their fixation right
7180
7181 2004-04-21  Benjamin Otte  <otte@gnome.org>
7182
7183         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7184           check for ANY caps before appending/unioning
7185         * gst/gstcaps.c: (gst_caps_is_subset),
7186         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7187         (gst_caps_structure_subtract), (gst_caps_subtract):
7188         * gst/gstcaps.h:
7189           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7190           the API. deprecate gst_caps_is_equal_fixed
7191         * gst/gstpad.c: (gst_pad_try_set_caps):
7192         * gst/gstqueue.c: (gst_queue_link):
7193           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7194         * gst/gststructure.c: (gst_structure_get_name_id):
7195         * gst/gststructure.h:
7196           add function gst_structure_get_name_id
7197         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7198         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7199         (gst_value_subtract_int_range_int_range),
7200         (gst_value_subtract_double_double_range),
7201         (gst_value_subtract_double_range_double),
7202         (gst_value_subtract_double_range_double_range),
7203         (gst_value_subtract_from_list), (gst_value_subtract_list),
7204         (gst_value_can_intersect), (gst_value_subtract),
7205         (gst_value_can_subtract), (gst_value_register_subtract_func),
7206         (_gst_value_initialize):
7207         * gst/gstvalue.h:
7208           add support for subtracting values from each other. Note that
7209           subtracting means subtracting as in set theory. Required for caps
7210           stuff above.
7211         * testsuite/caps/.cvsignore:
7212         * testsuite/caps/Makefile.am:
7213         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7214         * testsuite/caps/sets.c: (check_caps), (main):
7215         * testsuite/caps/subtract.c: (check_caps), (main):
7216           add tests for subtraction and equality code.
7217
7218 2004-04-20  David Schleef  <ds@schleef.org>
7219
7220         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7221         * gst/indexers/Makefile.am:
7222         * gst/schedulers/Makefile.am:
7223         * libs/gst/bytestream/Makefile.am:
7224         * libs/gst/control/Makefile.am:
7225         * libs/gst/getbits/Makefile.am:
7226
7227 2004-04-20  David Schleef  <ds@schleef.org>
7228
7229         * common/as-libtool.mak: Fine-tune DLL building.
7230         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7231         (like gst-plugins)
7232         * examples/plugins/Makefile.am: remove plugindir
7233         * gst/autoplug/Makefile.am: DLL building fixes
7234         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7235         Windows.
7236         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7237         * gst/indexers/Makefile.am: DLL building fixes
7238         * gst/schedulers/Makefile.am: DLL building fixes.
7239         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7240         * libs/gst/control/Makefile.am: same
7241         * libs/gst/getbits/Makefile.am: same
7242         * testsuite/Makefile.am: New dlopen directory
7243         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7244         when dlopened.
7245         * testsuite/dlopen/dlopen_gst.c: (main): same
7246         * testsuite/dlopen/loadgst.c: (do_test): same
7247
7248 2004-04-20  David Schleef  <ds@schleef.org>
7249
7250         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7251         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7252
7253 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7254
7255         * gst/gstelement.c: (gst_element_wait),
7256         (gst_element_set_time_delay), (gst_element_change_state):
7257           Use GST_TIME_*
7258
7259 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7260
7261         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7262         (gst_spider_identity_plug):
7263           improve debugging messages
7264         * gst/gstbin.c: (gst_bin_remove_func):
7265           make sure the state_change function is only called with simple state
7266           transitions
7267
7268 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7269
7270         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7271         (gst_fakesink_set_property), (gst_fakesink_chain):
7272         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7273         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7274         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7275         * gst/elements/gstidentity.c: (gst_identity_chain),
7276         (gst_identity_set_property):
7277         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7278         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7279           add warnings to _set_property for unknown arguments
7280           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7281
7282 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7283
7284         * Makefile.am:
7285         * docs/manuals.mak:
7286           add .po file download snippet
7287           fix a bug in the doc makefile
7288
7289 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7290
7291         * Makefile.am:
7292         * po/LINGUAS:
7293         * po/en_GB.po:
7294           Added en_GB translation (Gareth Owen)
7295
7296 2004-04-20  Johan Dahlin  <johan@gnome.org>
7297
7298         * gst/gstpad.c (_invent_event): Clean up
7299
7300 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7301
7302         * testsuite/caps/filtercaps.c: (main):
7303           fix test to test things correctly (caps are complicated)
7304
7305 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7306
7307         * testsuite/caps/Makefile.am:
7308         * testsuite/caps/filtercaps.c: (main):
7309           add test (that doesn't work right now, but should)
7310
7311 2004-04-19  David Schleef  <ds@schleef.org>
7312
7313         * configure.ac: Add test for allowing unaligned access.  Add define
7314         to put in gstconfig.h.
7315         * docs/gst/gstreamer-sections.txt: New symbols
7316         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7317         * docs/gst/tmpl/gstfilesrc.sgml:
7318         * docs/gst/tmpl/gstparse.sgml:
7319         * docs/gst/tmpl/gsttypes.sgml:
7320         * docs/gst/tmpl/gstutils.sgml:
7321         * docs/gst/tmpl/gstvalue.sgml:
7322         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7323         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7324         on most !i386/!powerpc architectures.  From Daniel Gazard
7325         <daniel.gazard@free.fr>.  (bug #140156)
7326         * po/af.po: Check in changes made by gettext.
7327         * po/az.po:
7328         * po/fr.po:
7329         * po/nl.po:
7330         * po/sr.po:
7331         * po/sv.po:
7332
7333 2004-04-20  Benjamin Otte  <otte@gnome.org>
7334
7335         * gst/schedulers/entryscheduler.c: 
7336         (gst_entry_scheduler_yield):
7337           refuse to yield when decoupled elements insist on doing that.
7338           At least it's better than crashing
7339
7340 2004-04-19  David Schleef  <ds@schleef.org>
7341
7342         * docs/libs/Makefile.am: Change sinclude to include
7343         * docs/gst/Makefile.am: same
7344         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7345
7346 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7347
7348         * po/LINGUAS:
7349         * po/uk.po:
7350           Added Ukrainian translation (Maxim V. Dziumanenko)
7351
7352 2004-04-19  Johan Dahlin  <johan@gnome.org>
7353
7354         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7355         checking here, do it before calling the function.
7356         Clean up, use for loops instead of while loops while iterating
7357         over lists.
7358
7359         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7360         in debug message.
7361         (gst_spider_create_and_plug): Improve debug message.
7362         General: Replace while loops which iterates over GLists with for
7363         loops. Which are much cleaner, improves readability, especially
7364         for gst_spider_identity_plug
7365
7366         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7367         fixes bug 140477
7368
7369 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7370
7371         * po/LINGUAS:
7372         * po/tr.po:
7373           Added Turkish translation (Baris Cicek)
7374
7375 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7376
7377         * docs/faq/troubleshooting.xml:
7378           Mention gst-register in the FAQ (fixes 139045).
7379
7380 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7381
7382         * docs/gst/gstreamer-sections.txt:
7383
7384 2004-04-17  Benjamin Otte  <otte@gnome.org>
7385
7386         * gst/gstelement.c: (gst_element_dispose):
7387           simplify
7388         * gst/gstpad.c: (gst_pad_call_chain_function):
7389           don't create loads of events due to bad macro usage
7390
7391 2004-04-16  David Schleef  <ds@schleef.org>
7392
7393         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7394         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7395         * gst/gstvalue.c: (gst_value_serialize_buffer),
7396         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7397         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7398         to indicate types that are fixed wrt caps or not.  Switching to
7399         this function fixes (bug #140298).
7400         * gst/gstvalue.h:
7401
7402 2004-04-16  David Schleef  <ds@schleef.org>
7403
7404         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7405         for GST_UNALIGNED_ACESS, since we essentially know which archs
7406         are ok.
7407
7408 2004-04-17  Benjamin Otte  <otte@gnome.org>
7409
7410         * docs/gst/Makefile.am:
7411           ignore gst/parse directory when building docs (fixes #140205)
7412
7413 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7414
7415         * testsuite/refcounting/mem.c: (vmsize):
7416           do error checking
7417
7418 2004-04-16  Johan Dahlin  <johan@gnome.org>
7419
7420         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7421         and gst_pad_call_get_function.
7422
7423 2004-04-15  David Schleef  <ds@schleef.org>
7424
7425         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7426         checks if we can access unaligned memory.
7427         * configure.ac: Use it.
7428
7429 2004-04-16  Benjamin Otte  <otte@gnome.org>
7430
7431         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7432         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7433         * gst/elements/gstfilesrc.h:
7434           s/seek_happened/need_discont/ and require discont before sending any
7435           data
7436
7437 2004-04-15  David Schleef  <ds@schleef.org>
7438
7439         * gst/gstvalue.c: (gst_value_serialize_buffer),
7440         (gst_value_deserialize_buffer), (_gst_value_initialize):
7441         Register these types as fundamental types. (bug #140015)
7442
7443 2004-04-16  Benjamin Otte  <otte@gnome.org>
7444
7445         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7446         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7447         (gst_pad_pull):
7448           implement enforcing discont events before buffers are passed. This
7449           allows state changes of only some elements and later correctly going
7450           on where they left off (or in short: you can now set audio sinks to
7451           NULL to release the device when the pipeline is paused)
7452         * gst/gstpad.c: (gst_pad_call_chain_function),
7453         (gst_pad_call_get_function):
7454         * gst/gstpad.h:
7455           add gst_pad_call_chain_function and gst_pad_call_get_function for
7456           scheduler interaction. They are required because of the changes
7457           above.
7458         * gst/schedulers/entryscheduler.c: (get_buffer),
7459         (gst_entry_scheduler_chain_wrapper),
7460         (gst_entry_scheduler_get_wrapper),
7461         (gst_entry_scheduler_state_transition),
7462         (gst_entry_scheduler_pad_link):
7463         * gst/schedulers/gstbasicscheduler.c:
7464         (gst_basic_scheduler_chain_wrapper),
7465         (gst_basic_scheduler_src_wrapper),
7466         (gst_basic_scheduler_chainhandler_proxy),
7467         (gst_basic_scheduler_gethandler_proxy),
7468         (gst_basic_scheduler_cothreaded_chain),
7469         (gst_basic_scheduler_chain_elements):
7470         * gst/schedulers/gstoptimalscheduler.c:
7471         (get_group_schedule_function), (pad_clear_queued),
7472         (gst_opt_scheduler_pad_link):
7473           use the new functions instead of calling get/chain-functions
7474           directly.
7475
7476 2004-04-15  David Schleef  <ds@schleef.org>
7477
7478         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7479         * docs/gst/tmpl/gstinfo.sgml: same
7480         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7481         gtk-doc put here.
7482         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7483         * examples/queue/queue.c: (main):  We iterate pipelines, not
7484         bins.  (bug #139996)
7485
7486 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7487
7488         * docs/pwg/advanced-types.xml:
7489           Add MS RLE support. Also document Qt RLE although I have no sample
7490           files for that yet. And document an extra property for ADPCM.
7491
7492 2004-04-15  David Schleef  <ds@schleef.org>
7493
7494         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7495         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7496         Windows.
7497
7498 2004-04-15  David Schleef  <ds@schleef.org>
7499
7500         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7501         symbol names to not conflict with new gstinfo.h symbols.
7502         * gst/gstinfo.h: Add inline functions for all those crazy
7503         compilers that don't know how to handle variadic macros (MSVC).
7504
7505 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7506
7507         * configure.ac: bump nano to 1
7508
7509 === release 0.8.1 ===
7510
7511 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7512
7513         * NEWS:
7514         * RELEASE:
7515         * configure.ac:
7516           releasing 0.8.1, "Snow Brigade"
7517
7518 2004-04-14  David Schleef  <ds@schleef.org>
7519
7520         * testsuite/Makefile.am: define tests_ignore
7521         * testsuite/Rules: Added new tests_ignore, which get compiled,
7522         but not run (generally because they're inconsistent or have
7523         heisenbugs).  Now we can ensure all the .c files compile in
7524         testsuite/.
7525         * testsuite/bins/Makefile.am: define tests_ignore
7526         * testsuite/bytestream/Makefile.am:
7527         * testsuite/caps/Makefile.am:
7528         * testsuite/clock/Makefile.am:
7529         * testsuite/debug/Makefile.am:
7530         * testsuite/debug/global.c: (gst_debug_log_one),
7531         (gst_debug_log_two): Fix compilation problem.
7532         * testsuite/dynparams/Makefile.am:
7533         * testsuite/elements/Makefile.am:
7534         * testsuite/ghostpads/Makefile.am:
7535         * testsuite/indexers/Makefile.am:
7536         * testsuite/parse/Makefile.am:
7537         * testsuite/plugin/Makefile.am:
7538         * testsuite/refcounting/Makefile.am:
7539         * testsuite/refcounting/element_pad.c: (main): Don't return leak
7540         results, because it's not calculated correctly.
7541         * testsuite/refcounting/pad.c: (main): same
7542         * testsuite/states/Makefile.am:
7543         * testsuite/tags/Makefile.am:
7544         * testsuite/threads/Makefile.am:
7545
7546 2004-04-14  David Schleef  <ds@schleef.org>
7547
7548         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
7549         generating bad code around the cpu detection asm code.
7550
7551 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7552
7553         * tools/gst-inspect.c: (print_element_info):
7554           print numeric version of rank as well, since we added some - 1
7555           rank values to elements
7556
7557 2004-04-13  David Schleef  <ds@schleef.org>
7558
7559         * configure.ac:  Disable various code when compiling for MinGW.
7560         * gst/elements/Makefile.am:
7561         * gst/elements/gstelements.c:
7562         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7563         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7564         * gst/registries/gstxmlregistry.c: (make_dir):
7565
7566 2004-04-13  David Schleef  <ds@schleef.org>
7567
7568         * gst/Makefile.am:
7569         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7570         assembly.
7571         * gst/gstcpuid_i386.s: remove
7572
7573 2004-04-13  David Schleef  <ds@schleef.org>
7574
7575         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
7576         seems to think it needs to be done.
7577         * docs/gst/tmpl/gstfakesink.sgml:
7578         * docs/gst/tmpl/gstfakesrc.sgml:
7579         * docs/gst/tmpl/gstfdsink.sgml:
7580         * docs/gst/tmpl/gstfdsrc.sgml:
7581         * docs/gst/tmpl/gstfilesink.sgml:
7582         * docs/gst/tmpl/gstfilesrc.sgml:
7583         * docs/gst/tmpl/gstidentity.sgml:
7584         * docs/gst/tmpl/gstmd5sink.sgml:
7585         * docs/gst/tmpl/gstmultifilesrc.sgml:
7586         * docs/gst/tmpl/gstpipefilter.sgml:
7587         * docs/gst/tmpl/gstshaper.sgml:
7588         * docs/gst/tmpl/gstspider.sgml:
7589         * docs/gst/tmpl/gstspideridentity.sgml:
7590         * docs/gst/tmpl/gststatistics.sgml:
7591         * docs/gst/tmpl/gsttee.sgml:
7592         * docs/gst/tmpl/gsttypefind.sgml:
7593         * docs/gst/tmpl/gstutils.sgml:
7594
7595 2004-04-13  David Schleef  <ds@schleef.org>
7596
7597         * configure.ac: Changes to remove POSIXisms (mmap in this case)
7598         and to build DLLs on Windows.
7599         * gst/Makefile.am:
7600         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7601         (gst_filesrc_open_file):
7602         * gst/schedulers/Makefile.am:
7603
7604 2004-04-13  David Schleef  <ds@schleef.org>
7605
7606         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
7607         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
7608         fixating lists.
7609
7610 2004-04-12  David Schleef  <ds@schleef.org>
7611
7612         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
7613         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
7614         to using it.
7615         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
7616         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
7617         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
7618         * gst/gststructure.c: (gst_structure_set_valist),
7619         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
7620         support for buffers.
7621         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
7622         intended to be const.
7623         * gst/gsttag.h: same
7624         * gst/gstvalue.c: (gst_value_serialize_buffer),
7625         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
7626         to (de)serialize buffers.
7627         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
7628         * testsuite/caps/string-conversions.c: (main):
7629         * testsuite/caps/value_serialize.c: add new test
7630
7631 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7632
7633         * docs/pwg/advanced-types.xml:
7634           Document MS video 1 (video/x-msvideocodec) mimetype/format.
7635
7636 2004-04-11  Benjamin Otte  <otte@gnome.org>
7637
7638         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7639           rename categories to basic_*
7640         * gst/schedulers/gstbasicscheduler.c: 
7641         (gst_basic_scheduler_chain_wrapper),
7642         (gst_basic_scheduler_chainhandler_proxy),
7643         (gst_basic_scheduler_gethandler_proxy),
7644         (gst_basic_scheduler_eventhandler_proxy):
7645           debugging category fixes - put common stuff in log category
7646         * gst/schedulers/gstbasicscheduler.c: 
7647         (gst_basic_scheduler_chain_elements):
7648           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
7649           active and linking two active chains
7650
7651 2004-04-10  Benjamin Otte  <otte@gnome.org>
7652
7653         * docs/pwg/intro-preface.xml:
7654           fix dead links and remove reference to Wiki
7655
7656 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7657
7658         * gst/schedulers/gstbasicscheduler.c:
7659           make sure we can switch back to the main function if we're still in
7660           the main function (supposed to fix #139617)
7661         * gst/schedulers/gthread-cothreads.h:
7662           don't throw an error when switching to the same cothread
7663
7664 2004-04-09  Benjamin Otte  <otte@gnome.org>
7665
7666         * gst/gstbin.c: (gst_bin_get_type):
7667         * gst/gstclock.c: (gst_clock_get_type):
7668         * gst/gstindex.c: (gst_index_get_type):
7669         * gst/gstobject.c: (gst_object_get_type),
7670         (gst_signal_object_get_type):
7671         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
7672         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
7673         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
7674         * gst/gstqueue.c: (gst_queue_get_type):
7675         * gst/gstregistry.c: (gst_registry_get_type):
7676         * gst/gstsystemclock.c: (gst_system_clock_get_type):
7677         * gst/gstthread.c: (gst_thread_get_type):
7678           don't use memchunks for these objects, use malloc instead
7679
7680 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7681
7682         * docs/gst/.cvsignore:
7683         * docs/gst/Makefile.am:
7684         * docs/gst/gstreamer-sections.txt:
7685         * docs/gst/tmpl/gstaggregator.sgml:
7686         * docs/gst/tmpl/gstbuffer.sgml:
7687         * docs/gst/tmpl/gstclock.sgml:
7688         * docs/gst/tmpl/gstelement.sgml:
7689         * docs/gst/tmpl/gstfakesink.sgml:
7690         * docs/gst/tmpl/gstfakesrc.sgml:
7691         * docs/gst/tmpl/gstfdsink.sgml:
7692         * docs/gst/tmpl/gstfdsrc.sgml:
7693         * docs/gst/tmpl/gstfilesink.sgml:
7694         * docs/gst/tmpl/gstfilesrc.sgml:
7695         * docs/gst/tmpl/gstidentity.sgml:
7696         * docs/gst/tmpl/gstindex.sgml:
7697         * docs/gst/tmpl/gstinfo.sgml:
7698         * docs/gst/tmpl/gstmd5sink.sgml:
7699         * docs/gst/tmpl/gstmultifilesrc.sgml:
7700         * docs/gst/tmpl/gstpad.sgml:
7701         * docs/gst/tmpl/gstpipefilter.sgml:
7702         * docs/gst/tmpl/gstpipeline.sgml:
7703         * docs/gst/tmpl/gstpluginfeature.sgml:
7704         * docs/gst/tmpl/gstqueue.sgml:
7705         * docs/gst/tmpl/gstregistry.sgml:
7706         * docs/gst/tmpl/gstscheduler.sgml:
7707         * docs/gst/tmpl/gstshaper.sgml:
7708         * docs/gst/tmpl/gstspider.sgml:
7709         * docs/gst/tmpl/gstspideridentity.sgml:
7710         * docs/gst/tmpl/gststatistics.sgml:
7711         * docs/gst/tmpl/gstsystemclock.sgml:
7712         * docs/gst/tmpl/gsttee.sgml:
7713         * docs/gst/tmpl/gstthread.sgml:
7714         * docs/gst/tmpl/gsttypefind.sgml:
7715         * docs/gst/tmpl/gstutils.sgml:
7716           further doc build fixes
7717
7718 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7719
7720         * docs/gst/Makefile.am:
7721           make docs exit on scanning problems
7722           fix nonsrcdir build issues
7723         * docs/gst/gstreamer-sections.txt:
7724           adding stuff from -unused
7725         * gst/gstqueue.h:
7726           create GstQueueSize
7727         * gst/schedulers/cothreads_compat.h:
7728           fix cothread warnings
7729
7730 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7731
7732         * docs/gst/gstreamer-sections.txt:
7733           remove defines deprecated by Benjamin
7734
7735 2004-04-07  Benjamin Otte  <otte@gnome.org>
7736
7737         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7738           when the buffer is complete, don't check if other buffers are needed
7739         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
7740           check that the offset is >0 so we don't try to read before the
7741           beginning of the file
7742         * gst/gstpad.c: (gst_pad_set_pad_template):
7743           sink the template, so we don't end up with 130k pad templates
7744
7745 2004-04-06  Benjamin Otte  <otte@gnome.org>
7746
7747         * gst/autoplug/gstspider.c: (gst_spider_link_add):
7748           don't ref the element, adding already reffed it. And we didn't unref
7749           it later anyway... (huge memleak when you used many spider elements)
7750         * gst/gstelement.c: (gst_element_base_class_finalize):
7751         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
7752         (gst_element_register):
7753         * gst/gsturi.c: (gst_element_make_from_uri):
7754           use gst_object_(un)ref instead of g_object(un)ref
7755
7756 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7757
7758         * gst/gstbuffer.h:
7759           remove macro that wouldn't work anymore because struct member has
7760           been removed.
7761         * gst/schedulers/entryscheduler.c: (schedule_forward):
7762           fix segfault for unconnected pads
7763         
7764 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7765
7766         reviewed by David Schleef <ds@schleef.org>
7767
7768         * gst/gstinfo.h:
7769           *_FORMAT modifiers should require putting a % in front of them for
7770           consistency reasons.
7771
7772 2004-04-05  Colin Walters  <walters@redhat.com>
7773
7774         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
7775         space.
7776
7777 2004-04-05  Benjamin Otte  <otte@gnome.org>
7778
7779         * configure.ac:
7780         * gst/Makefile.am:
7781         * gst/gst_private.h:
7782         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
7783           add support for detecting if GStreamer runs inside valgrind.
7784           requires valgrind (d'oh) and --enable-debug for correct cdetection.
7785           print a big message in valgrind that GStreamer has detected it's
7786           running inside and might now use different code.
7787         * gst/gstmemchunk.c: (populate), (free_area),
7788         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
7789         (gst_mem_chunk_free):
7790           flag memchunks for valgrind, so it can detect leaking of chunks.
7791           This allows detecting leaks of GstBuffer and GstEvent correctly
7792           inside valgrind.
7793
7794 2004-04-05  David Schleef  <ds@schleef.org>
7795
7796         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
7797           jensgr@gmx.net (Jens Granseuer)
7798
7799 2004-04-05  David Schleef  <ds@schleef.org>
7800
7801         * gst/gstbuffer.c: (_gst_buffer_sub_free),
7802         (gst_buffer_default_free), (gst_buffer_default_copy),
7803         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
7804         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
7805         structures in one place.
7806
7807 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7808
7809         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
7810           (GST_TIME_FORMAT, GST_TIME_ARGS)
7811
7812 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7813
7814         * testsuite/elements/Makefile.am:
7815           disable test until it stops breaking make distcheck
7816
7817 2004-04-05  Johan Dahlin  <johan@gnome.org>
7818
7819         * po/sv.po: Updated translation
7820
7821 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7822
7823         * gst/gstplugin.c: (gst_plugin_load_file):
7824           fix segfault for when original plugin was loaded statically
7825
7826 2004-04-05  Benjamin Otte  <otte@gnome.org>
7827
7828         * testsuite/debug/category.c: (main):
7829         * testsuite/debug/commandline.c: (main):
7830         * testsuite/debug/output.c: (main):
7831           fix tests to work again with debugging enabled
7832
7833 2004-04-05  Benjamin Otte  <otte@gnome.org>
7834
7835         * gst/schedulers/gstbasicscheduler.c:
7836         (gst_basic_scheduler_pad_link):
7837           fix to work with recent scheduling changes
7838
7839 2004-04-05  Benjamin Otte  <otte@gnome.org>
7840
7841         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
7842         prepareChangeLog doesn't work when cvs indents):
7843           don't throw an error when no element can be scheduled, there's too
7844           many weird reasons why it doesn't work. Return STOPPED instead.
7845           decoupled elemts' schedulability doesn't depend on bufpens.
7846
7847 2004-04-04  Benjamin Otte  <otte@gnome.org>
7848
7849         * gst/schedulers/gstbasicscheduler.c:
7850         (gst_basic_scheduler_pad_select):
7851           fix uninitialized variable warnings
7852
7853 2004-04-04  Benjamin Otte  <otte@gnome.org>
7854
7855         * gst/gstpad.c: (gst_pad_collect_valist):
7856           fix uninitialized variable warning
7857         * gst/schedulers/entryscheduler.c: (schedule_forward):
7858           fix shadowed variable
7859
7860 2004-04-04  Benjamin Otte  <otte@gnome.org>
7861
7862         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
7863         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
7864         (gst_pad_select):
7865         * gst/gstpad.h:
7866         * gst/gstscheduler.c: (gst_scheduler_pad_select),
7867         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
7868         * gst/gstscheduler.h:
7869           implement gst_pad_collect as replacement for gst_pad_select.
7870           deprecate gst_pad_select and gst_scheduler_(un)lock_element
7871           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
7872           new pad_select, lock and unlock calls.
7873         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
7874         * gst/cothreads.h:
7875         * gst/schedulers/cothreads_compat.h:
7876         * gst/schedulers/gthread-cothreads.h:
7877           remove unused cothread_lock and cothread_unlock calls
7878         * gst/schedulers/entryscheduler.c:
7879         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
7880         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
7881         (gst_entry_scheduler_pad_select):
7882           update to new API
7883         * gst/schedulers/gstbasicscheduler.c:
7884         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
7885         (gst_basic_scheduler_pad_select):
7886           remove useless lock and unlock calls, update pad_select to new API
7887           (untested)
7888         * gst/schedulers/gstoptimalscheduler.c:
7889         (gst_opt_scheduler_class_init):
7890           remove useless select, lock and unlock function calls
7891         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
7892           use gst_pad_collect instead of gst_pad_select
7893
7894 2004-04-04  Benjamin Otte  <otte@gnome.org>
7895
7896         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
7897         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
7898         (schedule_next_element), (print_entry):
7899           add can_schedule_pad to handle element states.
7900           add schedule_forward to select the correct entry to schedule next
7901
7902 2004-04-03  Benjamin Otte  <otte@gnome.org>
7903
7904         * gst/schedulers/entryscheduler.c: 
7905           remove unused variable, fix error inside Rb, fix compile warning in
7906           unreachable code
7907
7908 2004-04-03  Benjamin Otte  <otte@gnome.org>
7909
7910         * gst/schedulers/entryscheduler.c:
7911           completely revamp the inner workings, so it's a lot easier to
7912           understand and extend
7913
7914 2004-04-03  Andy Wingo  <wingo@pobox.com>
7915
7916         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
7917         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
7918         This allows better introspection of pipeline topology.
7919         (add_to_chain): Don't do trickery to put loop elements first;
7920         rather, queue a chain sort by marking the chain as dirty.
7921         (remove_from_chain): Mark the chain dirty.
7922         (sort_chain): New function. Sorts the group list so that terminal
7923         sinks are first. This means elements on the sink side will be
7924         preferentially sscheduled before elements on the src side of the
7925         pipeline.
7926         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
7927         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
7928         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
7929         (group_inc_link): Change argument and variable names to match the
7930         new link structure member names (src and sink).
7931         (group_dec_link): Add some description
7932
7933 2004-04-03  Benjamin Otte  <otte@gnome.org>
7934
7935         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
7936         * gst/gstinfo.h:
7937         * testsuite/debug/category.c: (main):
7938         * testsuite/debug/commandline.c: (main):
7939         * testsuite/debug/output.c: (main):
7940         * testsuite/debug/printf_extension.c: (main):
7941           fix to successfully build and test with --disable-gst-debug
7942           configure switch (fixes #138705)
7943
7944 2004-04-03  Benjamin Otte  <otte@gnome.org>
7945
7946         * docs/pwg/building-boiler.xml:
7947           add cvs login line and s/anonymous/anoncvs/
7948
7949 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
7950
7951         reviewed by Benjamin Otte  <otte@gnome.org>
7952
7953         * gst/gststructure.c: (gst_structure_free):
7954           memleak fix: free fields array (partial fix for #134839)
7955
7956 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7957
7958         * docs/random/ds/0.9-suggested-changes:
7959           Add a note to change handoff use in fakesrc to be usable in
7960           a more generic way (fakesrc should be renamed to appsrc or so).
7961         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7962           Change signal type to scope, so we can fill the buffer in the
7963           handoff handler (that's the whole use of this signal...).
7964
7965 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7966
7967         * docs/pwg/other-ntoone.xml:
7968           Document muxers and n-to-1 elements.
7969
7970 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
7971
7972         * gst/registries/gstxmlregistry.c
7973         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
7974         determine if a file is a G_MODULE. The old one discards paths
7975         containing "so" somewhere in the middle. My home directory is
7976         called "soto". Go figure...
7977
7978 2004-03-31  David Schleef  <ds@schleef.org>
7979
7980         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
7981         to eventually deprecate gst_buffer_merge().  (bug: #136408)
7982         * gst/gstbuffer.h:
7983
7984 2004-03-31  David Schleef  <ds@schleef.org>
7985
7986         * gst/gstvalue.c: (gst_value_union_int_int_range),
7987         (gst_value_union_int_range_int_range), (gst_value_can_union),
7988         (gst_value_union), (_gst_value_initialize):  Add some union
7989         implementations.  We didn't have any previously.
7990         * testsuite/caps/Makefile.am:
7991         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
7992         (gst_audioscale_getcaps), (test_caps), (main): A little test
7993         that is the same as the caps manipulation in audioscale.
7994
7995 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7996
7997         * docs/faq/general.xml:
7998           add entry about "does gst support format X?"
7999
8000 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8001
8002         * gst/gstthread.c:
8003           fix docs
8004         * gst/gstutils.h:
8005           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8006
8007 2004-03-30  Benjamin Otte  <otte@gnome.org>
8008
8009         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8010           set the offset of the buffer to the requested offset
8011         * gst/elements/gsttypefind.c: (stop_typefinding):
8012           revert patch 1.18 (which I unfortunately don't know the reason for).
8013           This is needed to allow downstream elements to seek. Otherwise
8014           typefind might overwrite a previous seek by downstream elements.
8015           This lead to errors with id3tag and typefind on some mp3s.
8016         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8017         (gst_entry_scheduler_iterate):
8018           be more verbose when debugging
8019
8020 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8021
8022         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8023           make sure we don't get NULL strings
8024
8025 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8026
8027         * gst/gstcaps.c:
8028         * gst/gstelement.c:
8029         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8030         * gst/gstindex.c: (gst_index_resolver_get_type),
8031         (gst_index_get_type), (gst_index_factory_get_type):
8032         * gst/gstinfo.c:
8033         * gst/gstpad.c:
8034         * gst/gstplugin.c:
8035         * gst/gsturi.c: (gst_uri_handler_get_type):
8036         * gst/gstvalue.c:
8037           first batch of documentation fixes
8038
8039 2004-03-29  David Schleef  <ds@schleef.org>
8040
8041         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8042         * docs/gst/gstreamer-docs.sgml:  More hacking
8043         * docs/gst/gstreamer-sections.txt:
8044         * docs/gst/tmpl/cothreads_compat.sgml:
8045         * docs/gst/tmpl/gstcaps.sgml:
8046         * docs/gst/tmpl/gstclock.sgml:
8047         * docs/gst/tmpl/gstelement.sgml:
8048         * docs/gst/tmpl/gstevent.sgml:
8049         * docs/gst/tmpl/gstpad.sgml:
8050         * docs/gst/tmpl/gstutils.sgml:
8051         * docs/gst/tmpl/gstxml.sgml:
8052         * docs/gst/tmpl/gthread-cothreads.sgml:
8053         * docs/random/ds/0.9-suggested-changes:
8054         * gst/elements/gstfakesink.h: doc fixes
8055         * gst/elements/gstfakesrc.h: doc fixes
8056         * gst/gstcaps.c: doc fixes
8057         * gst/gstcaps.h: doc fixes
8058         * gst/gstelement.c: doc fixes
8059         * gst/gstelement.h: doc fixes
8060         * gst/gstindex.c: doc fixes
8061         * gst/gstinfo.c: doc fixes
8062         * gst/gstpad.c: doc fixes
8063         * gst/gstpad.h: doc fixes
8064         * gst/gstplugin.c: doc fixes
8065         * gst/gsttypefind.h: doc fixes
8066         * gst/gsturi.c: doc fixes
8067         * gst/gstvalue.c: doc fixes
8068
8069 2004-03-29  Colin Walters  <walters@redhat.com>
8070
8071         * gst/registries/gstxmlregistry.c (get_time)
8072         (plugin_times_older_than_recurse):
8073         Use the result of stat to determine whether a path is a file,
8074         so we don't attempt to opendir() files.
8075
8076 2004-03-29  Benjamin Otte  <otte@gnome.org>
8077
8078         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8079           print caps in debugging output when setting caps failed
8080         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8081         (schedule_next_element), (get_buffer), (run_chainhandler),
8082         (element_may_start), (gst_entry_scheduler_chain_handler),
8083         (gst_entry_scheduler_get_handler),
8084         (gst_entry_scheduler_state_transition),
8085         (gst_entry_scheduler_pad_link):
8086           make this scheduler a testcase for mandatory
8087           discont-before-first-buffer which is needed if we want to allow apps
8088           to release the sound device.
8089           add SCHED_ASSERT macro to print scheduler state before an assertion
8090           triggers.
8091
8092 2004-03-29  Benjamin Otte  <otte@gnome.org>
8093
8094         * COPYING:
8095           replace by LGPL (former COPYING.LIB). The core is completely
8096           licensed LGPL.
8097         * COPYING.LIB:
8098           remove
8099
8100 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8101
8102         * po/af.po:
8103         * po/sv.po:
8104           updated Afrikaans and Swedish
8105
8106 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8107
8108         * po/LINGUAS:
8109         * po/az.po:
8110           adding Azerbaijani (Mətin Əmirov)
8111
8112 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8113
8114         * gst/gstelement.h: 
8115         * gst/gstelement.c (gst_element_set_time_delay): New function for
8116         setting element time taking into account a hardware buffering
8117         delay.
8118         (gst_element_set_time): Now just an invocation of
8119         gst_element_set_time_delay.
8120         * gst/gstclock.h: 
8121         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8122         allowing to set event times in the future.
8123         (gst_clock_get_event_time): Now just an invocation of
8124         gst_clock_get_event_time_delay.
8125
8126 2004-03-28  Benjamin Otte  <otte@gnome.org>
8127
8128         * gst/gstbin.c: (gst_bin_set_element_sched),
8129         (gst_bin_unset_element_sched):
8130           don't add decoupled elements to schedulers - otherwise it's
8131           impossible to control if a link to a decoupled element was already
8132           removed from a scheduler or not.
8133         * gst/schedulers/cothreads_compat.h:
8134         * gst/schedulers/gthread-cothreads.h:
8135           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8136           is no "unused" warning.
8137         * gst/schedulers/Makefile.am:
8138         * gst/schedulers/entryscheduler.c:
8139           add new scheduler, based on ideas from talking to David and Martin.
8140           It's supposed to be small and correct. Currently it's also slow (but
8141           it's not noticable)
8142         * examples/retag/retag.c: (main):
8143         * testsuite/bytestream/test1.c: (main):
8144           fix missing NULLs at end of variadic functions
8145         * testsuite/elements/.cvsignore:
8146           update
8147
8148 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8149
8150         * gst/gstevent.h:
8151         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8152
8153 2004-03-25  David Schleef  <ds@schleef.org>
8154
8155         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8156         * docs/gst/tmpl/gstaggregator.sgml:
8157         * docs/gst/tmpl/gstautoplugfactory.sgml:
8158         * docs/gst/tmpl/gstbin.sgml:
8159         * docs/gst/tmpl/gstbuffer.sgml:
8160         * docs/gst/tmpl/gstbufferstore.sgml:
8161         * docs/gst/tmpl/gstfakesink.sgml:
8162         * docs/gst/tmpl/gstfakesrc.sgml:
8163         * docs/gst/tmpl/gstmd5sink.sgml:
8164         * docs/gst/tmpl/gstreamer-unused.sgml:
8165         * docs/gst/tmpl/gstsearchfuncs.sgml:
8166         * docs/gst/tmpl/gstshaper.sgml:
8167         * docs/gst/tmpl/gstspider.sgml:
8168         * docs/gst/tmpl/gsttee.sgml:
8169         * docs/gst/tmpl/gstutils.sgml:
8170         * docs/gst/tmpl/gstvalue.sgml:
8171         * docs/gst/tmpl/gstxml.sgml:
8172         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8173         and we don't support it.
8174         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8175         (gst_use_threads), (gst_has_threads): same
8176         * gst/gstthreaddummy.c: same
8177         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8178         * gst/autoplug/gstspider.h: same
8179         * gst/elements/gstaggregator.h: Remove bogus function from header
8180         * gst/elements/gstfakesink.h: same
8181         * gst/elements/gstfakesrc.h: same
8182         * gst/elements/gstmd5sink.h: same
8183         * gst/elements/gstshaper.h: same
8184         * gst/elements/gsttee.h: same
8185         * gst/gstbin.c: doc fixes
8186         * gst/gstbin.h: Remove unused definition.
8187         * gst/gstbuffer.c: doc fixes
8188         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8189         * gst/gstfilter.c: doc fixes
8190         * gst/gsttag.c: doc fixes
8191         * gst/gstvalue.c: doc fixes
8192
8193 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8194
8195         * docs/pwg/advanced-types.xml:
8196           Document typefinding.
8197         * docs/pwg/other-oneton.xml:
8198           Document one-to-n elements, demuxers and parsers.
8199
8200 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8201
8202         reviewed by: David Schleef  <ds@schleef.org>
8203
8204         * configure.ac: Check bison version (bug #127838)
8205
8206 2004-03-25  David Schleef  <ds@schleef.org>
8207
8208         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8209         * docs/gst/gstreamer-sections.txt:
8210         * docs/gst/tmpl/gstautoplug.sgml:
8211         * docs/gst/tmpl/gststaticautoplug.sgml:
8212         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8213         * docs/gst/tmpl/gstutils.sgml:
8214         * docs/gst/tmpl/gstxml.sgml:
8215
8216 2004-03-24  David Schleef  <ds@schleef.org>
8217
8218         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8219         manual being such complete crap, that I decided to do major
8220         hacking of it.  This checkin replaces any fine tuning that
8221         may have been done previously, with the benefit of actually
8222         being complete for much of the API that was changed since
8223         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8224         * docs/gst/gstreamer-sections.txt:
8225         * docs/gst/tmpl/GstBin.sgml:
8226         * docs/gst/tmpl/GstBuffer.sgml:
8227         * docs/gst/tmpl/GstCaps.sgml:
8228         * docs/gst/tmpl/GstClock.sgml:
8229         * docs/gst/tmpl/GstCompat.sgml:
8230         * docs/gst/tmpl/GstData.sgml:
8231         * docs/gst/tmpl/GstElement.sgml:
8232         * docs/gst/tmpl/GstEvent.sgml:
8233         * docs/gst/tmpl/GstIndex.sgml:
8234         * docs/gst/tmpl/GstStructure.sgml:
8235         * docs/gst/tmpl/GstTag.sgml:
8236         * docs/gst/tmpl/cothreads.sgml:
8237         * docs/gst/tmpl/cothreads_compat.sgml:
8238         * docs/gst/tmpl/gettext.sgml:
8239         * docs/gst/tmpl/grammar.tab.sgml:
8240         * docs/gst/tmpl/gst-i18n-app.sgml:
8241         * docs/gst/tmpl/gst-i18n-lib.sgml:
8242         * docs/gst/tmpl/gst.sgml:
8243         * docs/gst/tmpl/gst_private.sgml:
8244         * docs/gst/tmpl/gstaggregator.sgml:
8245         * docs/gst/tmpl/gstarch.sgml:
8246         * docs/gst/tmpl/gstatomic.sgml:
8247         * docs/gst/tmpl/gstatomic_impl.sgml:
8248         * docs/gst/tmpl/gstbin.sgml:
8249         * docs/gst/tmpl/gstbuffer.sgml:
8250         * docs/gst/tmpl/gstbufferstore.sgml:
8251         * docs/gst/tmpl/gstcaps.sgml:
8252         * docs/gst/tmpl/gstclock.sgml:
8253         * docs/gst/tmpl/gstcompat.sgml:
8254         * docs/gst/tmpl/gstconfig.sgml:
8255         * docs/gst/tmpl/gstcpu.sgml:
8256         * docs/gst/tmpl/gstdata.sgml:
8257         * docs/gst/tmpl/gstdata_private.sgml:
8258         * docs/gst/tmpl/gstelement.sgml:
8259         * docs/gst/tmpl/gstenumtypes.sgml:
8260         * docs/gst/tmpl/gsterror.sgml:
8261         * docs/gst/tmpl/gstevent.sgml:
8262         * docs/gst/tmpl/gstfakesink.sgml:
8263         * docs/gst/tmpl/gstfakesrc.sgml:
8264         * docs/gst/tmpl/gstfilesink.sgml:
8265         * docs/gst/tmpl/gstfilter.sgml:
8266         * docs/gst/tmpl/gstindex.sgml:
8267         * docs/gst/tmpl/gstinfo.sgml:
8268         * docs/gst/tmpl/gstinterface.sgml:
8269         * docs/gst/tmpl/gstlog.sgml:
8270         * docs/gst/tmpl/gstmacros.sgml:
8271         * docs/gst/tmpl/gstmarshal.sgml:
8272         * docs/gst/tmpl/gstmd5sink.sgml:
8273         * docs/gst/tmpl/gstmultifilesrc.sgml:
8274         * docs/gst/tmpl/gstobject.sgml:
8275         * docs/gst/tmpl/gstpad.sgml:
8276         * docs/gst/tmpl/gstparse.sgml:
8277         * docs/gst/tmpl/gstpipeline.sgml:
8278         * docs/gst/tmpl/gstplugin.sgml:
8279         * docs/gst/tmpl/gstpluginfeature.sgml:
8280         * docs/gst/tmpl/gstqueue.sgml:
8281         * docs/gst/tmpl/gstreamer-unused.sgml:
8282         * docs/gst/tmpl/gstregistry.sgml:
8283         * docs/gst/tmpl/gstregistrypool.sgml:
8284         * docs/gst/tmpl/gstscheduler.sgml:
8285         * docs/gst/tmpl/gstsearchfuncs.sgml:
8286         * docs/gst/tmpl/gstshaper.sgml:
8287         * docs/gst/tmpl/gstspider.sgml:
8288         * docs/gst/tmpl/gstspideridentity.sgml:
8289         * docs/gst/tmpl/gststructure.sgml:
8290         * docs/gst/tmpl/gstsystemclock.sgml:
8291         * docs/gst/tmpl/gsttag.sgml:
8292         * docs/gst/tmpl/gsttaginterface.sgml:
8293         * docs/gst/tmpl/gsttee.sgml:
8294         * docs/gst/tmpl/gstthread.sgml:
8295         * docs/gst/tmpl/gsttrace.sgml:
8296         * docs/gst/tmpl/gsttrashstack.sgml:
8297         * docs/gst/tmpl/gsttypefind.sgml:
8298         * docs/gst/tmpl/gsttypes.sgml:
8299         * docs/gst/tmpl/gsturi.sgml:
8300         * docs/gst/tmpl/gsturitype.sgml:
8301         * docs/gst/tmpl/gstutils.sgml:
8302         * docs/gst/tmpl/gstvalue.sgml:
8303         * docs/gst/tmpl/gstversion.sgml:
8304         * docs/gst/tmpl/gstxml.sgml:
8305         * docs/gst/tmpl/gstxmlregistry.sgml:
8306         * docs/gst/tmpl/gthread-cothreads.sgml:
8307         * docs/gst/tmpl/types.sgml:
8308
8309 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8310
8311         * docs/pwg/other-sink.xml:
8312         * docs/pwg/other-source.xml:
8313           Documentation on how to write source and sink elements. Other
8314           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8315           manager, autoplugger) are all still pending.
8316
8317 2004-03-25  Benjamin Otte  <otte@gnome.org>
8318
8319         * testsuite/elements/Makefile.am:
8320         * testsuite/elements/gst-compprep-check:
8321           add check to make sure gst-compprep works
8322         * testsuite/elements/gst-inspect-check.in:
8323           improve initialization output
8324         * testsuite/Makefile.am:
8325         * testsuite/gst-inspect-check:
8326           remove old file
8327
8328 2004-03-24  David Schleef  <ds@schleef.org>
8329
8330         * testsuite/elements/Makefile.am:
8331         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8332         to the testsuite.
8333
8334 2004-03-24  Benjamin Otte  <otte@gnome.org>
8335
8336         * libs/gst/control/dparam.c: (gst_dparam_attach),
8337         (gst_dparam_detach):
8338         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8339           fix lvalue casts for real
8340
8341 2004-03-24  Benjamin Otte  <otte@gnome.org>
8342
8343         * gst/schedulers/gstbasicscheduler.c:
8344         (gst_basic_scheduler_src_wrapper):
8345         * gst/schedulers/gstoptimalscheduler.c:
8346         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8347         (pad_clear_queued), (gst_opt_scheduler_add_element),
8348         (gst_opt_scheduler_remove_element):
8349           fix GStreamer to not have issues with lvalue casts anymore (fixes
8350           #136841)
8351
8352 2004-03-24  Benjamin Otte  <otte@gnome.org>
8353
8354         * gst/gstelement.c:
8355           add documentation about a gobject quirk where the object hasn't the
8356           correct class pointer set on initialization
8357         * gst/schedulers/gstbasicscheduler.c:
8358         (gst_basic_scheduler_src_wrapper):
8359           make sure to not run into an infinite loop
8360
8361 2004-03-22  Benjamin Otte  <otte@gnome.org>
8362
8363         * gst/gstutils.c: (gst_util_dump_mem):
8364         * gst/gstutils.h:
8365           first argument of gst_util_dump_mem should be const
8366
8367 2004-03-22  Johan Dahlin  <johan@gnome.org>
8368
8369         * gst/gstvalue.h: Clean up a little bit.
8370
8371 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8372
8373         reviewed by Benjamin Otte  <otte@gnome.org>
8374
8375         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8376         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8377         (gst_aggregator_class_init), (gst_aggregator_init):
8378         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8379         (gst_filesrc_dispose), (gst_filesrc_set_location):
8380         * gst/elements/gstidentity.c: (gst_identity_finalize),
8381         (gst_identity_class_init), (gst_identity_chain):
8382         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8383         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8384         (gst_statistics_class_init):
8385         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8386         (gst_tee_get_property):
8387           clean up used memory in this elements correctly on teardown (closes
8388           #137279)
8389
8390 2004-03-20  Colin Walters  <walters@redhat.com>
8391
8392         * gst/registries/gstxmlregistry.c:
8393         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8394         registry saving atomic.
8395
8396 2004-03-20  Colin Walters  <walters@redhat.com>
8397
8398         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8399         Just use
8400         access() instead of actually creating and deleting files.
8401
8402 2004-03-18  David Schleef  <ds@schleef.org>
8403
8404         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8405         (bug #137625)
8406
8407 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8408
8409         * po/sv.po: updated translation (Christian Rose)
8410
8411 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8412
8413         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8414         (gst_filesink_get_query_types), (_do_init),
8415         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8416           return FALSE silently
8417         * po/af.po: updated translation (Petri Jooste)
8418
8419 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8420
8421         * Makefile.am:
8422         * configure.ac:
8423           dist common properly
8424         * po/af.po:
8425         * po/fr.po:
8426         * po/nl.po:
8427         * po/sr.po:
8428         * po/sv.po:
8429           refreshing translations
8430
8431 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8432
8433         * po/LINGUAS:
8434         * po/sv.po:
8435         * po/af.po:
8436           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8437
8438 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8439
8440         * Makefile.am: use common/release.mak
8441
8442 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8443
8444         * docs/faq/gst-uninstalled:
8445           adding gst-monkeysaudio to the list of possible plugin dirs
8446
8447 2004-03-16  David Schleef  <ds@schleef.org>
8448
8449         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8450         (gst_init_check_with_popt_table):  Fix some gettext strings to
8451         make them easier to translate.  Required making the strings
8452         non-const.
8453
8454 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8455
8456         * configure.ac: bump nano to 1
8457
8458 === release 0.8.0 ===
8459
8460 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8461
8462         * configure.ac: release 0.8.0, "Executive Slacks"
8463
8464 2004-03-16  Johan Dahlin  <johan@gnome.org>
8465
8466         * gst/schedulers/gstoptimalscheduler.c
8467         (gst_opt_scheduler_pad_unlink): Remove double ;,
8468         spotted by Scott Wheeler
8469
8470 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8471
8472         * configure.ac: bump libtool version
8473
8474 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8475
8476         * gst/gstcaps.h:
8477         * gst/gststructure.h:
8478           add reserved padding
8479
8480 2004-03-15  Benjamin Otte  <otte@gnome.org>
8481
8482         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8483           set the first parameter for select call correctly.
8484           (fixes #137230)
8485
8486 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8487
8488         * *.c,*.h: don't mix tabs and spaces
8489
8490 2004-03-15  Johan Dahlin  <johan@gnome.org>
8491
8492         * gst/schedulers/gstoptimalscheduler.c
8493         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8494         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8495
8496         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8497         
8498 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8499
8500         * testsuite/Rules:
8501           fix gst-register rules
8502
8503 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8504
8505         * testsuite/Rules:
8506           use versioned gst-register
8507
8508 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8509
8510         * docs/libs/gstreamer-libs-sections.txt:
8511           remove </SUBSECTION>
8512         * gst/gstplugin.c:
8513         * gst/gstregistry.c: (gst_registry_add_plugin):
8514         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8515         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8516           add debugging and fix some comment blocks
8517
8518 2004-03-15  Johan Dahlin  <johan@gnome.org>
8519
8520         * *.h: Revert indent changes.
8521         
8522 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8523
8524         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8525           g_error_free the g_error
8526         * tools/gst-feedback-m.m:
8527           check for other versions of gstreamer
8528         * tools/gst-indent:
8529           use sh, not bash
8530
8531 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8532
8533         * tools/gst-register.c: do not spill paths when registries are not
8534           writable, until we fix the "user running gst-register" case.
8535
8536 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8537
8538         * *.c, *.h: commit of gst-indent run on core
8539
8540 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8541
8542         * tools/gst-indent:
8543         * tools/Makefile.am:
8544           add our indentation style as a script
8545
8546 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8547
8548         * po/sr.po:
8549         * po/LINGUAS:
8550           added Serbian translation
8551
8552 2004-03-13  Benjamin Otte  <otte@gnome.org>
8553
8554         * gst/gstelement.c:
8555           add documentation note about gst_element_found_tags_for_pad not
8556           being usable in getfunctions. (see #137042)
8557
8558 2004-03-12  David Schleef  <ds@schleef.org>
8559
8560         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8561         change API right now!  Readd gst_caps_is_simple() macro.
8562         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8563         uninitialized variable.  I'd bet this caused crashes.
8564         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8565
8566 2004-03-12  Johan Dahlin  <johan@gnome.org>
8567
8568         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8569         * gst/gstcaps.h: Clean up
8570
8571         * gst/gst.c (init_post): call gst_caps_get_type() instead of
8572         _gst_caps_initalize()
8573
8574         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
8575         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
8576
8577         * gst/gststructure.c (gst_structure_get_type): Ditto
8578
8579         * gst/gststructure.h: Ditto
8580         
8581 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8582
8583         * gst/gstqueue.c: (gst_queue_init):
8584           Reset default max. values in queues. Reason is simply to avoid
8585           braindead use. If you want wider values, use the properties. The
8586           default is supposed to always work. Wider values would make this
8587           beast a memory hog by default (250 full-PAL RGB32 video frames?
8588           That's 440 MB! No thank you).
8589
8590 2004-03-10  David Schleef  <ds@schleef.org>
8591
8592         * tools/gst-run.c: (main):  Fix crash when no relevant tools
8593         were found.  (bug #136793)
8594
8595 2004-03-10  Johan Dahlin  <johan@gnome.org>
8596
8597         * gst/schedulers/gstoptimalscheduler.c
8598         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
8599         links to elements within the same group, so we can finally remove
8600         that annoying warning. Refactor the code a little bit
8601         (group_dec_links_for_element): Split out
8602
8603 2004-03-09  David Schleef  <ds@schleef.org>
8604
8605         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
8606         (bug #134863)
8607
8608 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8609
8610         * configure.ac: first bug fix due to major/minor bump
8611
8612 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8613
8614         * configure.ac: bump nano to 1
8615
8616 === release 0.7.6 ===
8617
8618 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8619
8620         * NEWS:
8621         * RELEASE:
8622         * configure.ac:
8623           releasing 0.7.6, "Almost"
8624         * po/fr.po:
8625         * po/nl.po:
8626         * tools/Makefile.am:
8627         * tools/gst-feedback-m.m:
8628           unversioned source
8629
8630 2004-03-09  Johan Dahlin  <johan@gnome.org>
8631
8632         Reviewed by: Thomas Vander Stichele
8633
8634         * gst/gstelement.c (gst_element_class_init): register second
8635         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
8636         language bindings can (de)marshall correctly.
8637
8638         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
8639
8640         * gst/gsterror.c (gst_g_error_get_type): New function
8641
8642         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
8643         with VOID:OBJECT,OBJECT,STRING 
8644
8645 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
8646
8647         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
8648         Free a leaked g_timer on early returns.
8649
8650 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8651
8652         * docs/pwg/advanced-types.xml:
8653           Add cinepak description.
8654
8655 2004-03-07  David Schleef  <ds@schleef.org>
8656
8657         * docs/random/mimetypes:  Added cinepak description
8658
8659 2004-03-07  Andy Wingo  <wingo@pobox.com>
8660
8661         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
8662
8663         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
8664         there are no links to other groups when a group is destroyed.
8665         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
8666         removed from a group, make sure the link count to elements linked
8667         to other pads is appropriately decremented. This really fixes
8668         #135672.
8669
8670         The 1.60->1.61 patch has been reapplied in light of this fix.
8671
8672         * gst/gstelement.c (gst_element_dispose): Really protect against
8673         multiple invocations this time.
8674
8675 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8676
8677         * docs/gst/gstreamer-sections.txt:
8678         * docs/gst/tmpl/gsttag.sgml:
8679           remove some deprecated functions, document some existing ones
8680         * gst/gsttag.c: (gst_tag_get_flag):
8681         * gst/gsttag.h:
8682           add accessor function
8683
8684 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8685
8686         * docs/gst/gstreamer-sections.txt:
8687         * docs/gst/tmpl/gsttag.sgml:
8688         * docs/gst/tmpl/gstxml.sgml:
8689         * gst/gsttag.c: (gst_tag_get_flag):
8690         * gst/gsttag.h:
8691
8692 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
8693
8694         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
8695         leak
8696
8697 2004-03-05  David Schleef  <ds@schleef.org>
8698
8699         * REQUIREMENTS: Add bison and flex.
8700         * configure.ac: Fix comment about bison.
8701         * docs/random/ds/0.9-suggested-changes: yer ma
8702         * tools/gst-inspect.c: (print_element_info):  Fix warning.
8703
8704 2004-03-05  Benjamin Otte  <otte@gnome.org>
8705
8706         * gst/gstelement.c: (gst_element_error_full):
8707           revert recent recursive state changing commit - messing with other
8708           elements' states is evil and should be done by apps only.
8709
8710 2004-03-05  Benjamin Otte  <otte@gnome.org>
8711
8712         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
8713           check for empty intersection instead of NULL caps
8714         (gst_element_get_compatible_pad_filtered):
8715           remove old workaround that is only a bug nowadays
8716
8717 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8718
8719         * gst/gstelement.c: (gst_element_error_full):
8720           make elements try to recursively change state to PAUSED on all
8721           parents after an error to suppress ensuing warnings
8722         * gst/parse/grammar.y:
8723           make it check if it was able to sync the state, and throw an error
8724           if not, so stuff like
8725           oggdemux ! vorbisdec ! osssink gets caught
8726
8727 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8728
8729         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
8730           it contains lib64; use AS_AC_EXPAND to handle it properly
8731
8732 2004-03-05  David Schleef  <ds@schleef.org>
8733
8734         * gst/gstcpuid_i386.s:  Remove unused code
8735         * libs/gst/getbits/getbits.c: (gst_getbits_init),
8736         (gst_getbits_newbuf): Remove MMX code
8737         * libs/gst/getbits/getbits.h: Remove MMX code
8738
8739 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
8740
8741         * debian/.cvsignore:
8742         * debian/README.Debian:
8743         * debian/changelog:
8744         * debian/control:
8745         * debian/control.in:
8746         * debian/copyright:
8747         * debian/gstreamer-core-libs-dev.files:
8748         * debian/gstreamer-core-libs.files:
8749         * debian/gstreamer-core.files:
8750         * debian/gstreamer-core.postinst:
8751         * debian/gstreamer-core.postrm:
8752         * debian/gstreamer-doc.files:
8753         * debian/gstreamer-doc.links:
8754         * debian/gstreamer-doc.lintian:
8755         * debian/gstreamer-runtime.files:
8756         * debian/gstreamer-runtime.manpages:
8757         * debian/gstreamer-runtime.postinst:
8758         * debian/gstreamer-runtime.postrm:
8759         * debian/gstreamer-tools.files:
8760         * debian/gstreamer-tools.manpages:
8761         * debian/libgstreamer-dev.files:
8762         * debian/libgstreamer0.4.1.files:
8763         * debian/libgstreamerVERSION.files:
8764         * debian/rules:
8765         Debian package info not maintained here.
8766
8767 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8768
8769         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8770         * gst/gstbin.c: (gst_bin_class_init):
8771         * gst/gstelement.c: (gst_element_class_init):
8772         * gst/gstindex.c: (gst_index_class_init):
8773         * gst/gstobject.c: (gst_object_class_init),
8774         (gst_signal_object_class_init):
8775         * gst/gstpad.c: (gst_pad_template_class_init):
8776         * gst/gstregistry.c: (gst_registry_class_init):
8777         * gst/gsturi.c: (gst_uri_handler_base_init):
8778         * gst/gstxml.c: (gst_xml_class_init):
8779         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8780         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
8781           make all signal names use dashes instead of underscore
8782
8783 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8784
8785         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
8786
8787 2004-03-03  Benjamin Otte  <otte@gnome.org>
8788
8789         * gst/schedulers/gstoptimalscheduler.c:
8790           revert last commit by Andy Wingo. It causes segfaults on unreffing
8791           in Rhythmbox. (see bug #135672)
8792
8793 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8794
8795         * po/fr.po: fix typo
8796
8797 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8798
8799         * tools/gst-inspect.c: (main): 
8800         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
8801
8802 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8803
8804         * configure.ac:
8805           get GLIB_ONLY and POPT flags for the nonversioned binaries
8806         * tools/Makefile.am:
8807           use them
8808
8809 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8810
8811         * gst/gst.c: (init_post):
8812           change so that GST_REGISTRY now is where the global registry gets
8813           saved, since that is where plugins now get attached to first, and
8814           spilled over to the user registry.  Note that in the case of using
8815           GST_REGISTRY env var, we don't want to affect any real registries
8816           beyond the one given by this var, and thus we don't set a user
8817           registry to spill to.  So make sure GST_REGISTRY is writable.
8818
8819 2004-03-01  David Schleef  <ds@schleef.org>
8820
8821         * AUTHORS:  Added some names.  Add yourself if you're missing.
8822
8823 2004-03-01  David Schleef  <ds@schleef.org>
8824
8825         * MAINTAINERS: Add
8826
8827 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
8828
8829         * configure.ac:
8830           remove whitespace
8831         * docs/gst/tmpl/gstbuffer.sgml:
8832         * docs/gst/tmpl/gstdata.sgml:
8833         * docs/gst/tmpl/gstreamer-unused.sgml:
8834         * docs/gst/tmpl/gstxml.sgml:
8835           doc update
8836         * docs/manuals.mak:
8837           add a FIXME
8838         * docs/pwg/intro-preface.xml:
8839         * docs/pwg/pwg.xml:
8840           remove GNOME
8841         * gst/gst.c: (init_post):
8842           try GST_PLUGIN_PATH paths for the _global_registry first
8843         * gst/gstelement.h:
8844           add the error message as well, otherwise (null) debug info doesn't
8845           make much sense
8846         * tools/gst-register.c: (main):
8847           spill paths to next registry if this registry is not writable
8848         * po/fr.po:
8849         * po/nl.po:
8850           translation updates
8851
8852 2004-03-01  Johan Dahlin  <johan@gnome.org>
8853
8854         * gst/gstbuffer.c (_gst_buffer_initialize): 
8855         * gst/gstdata.c (gst_data_get_type): 
8856         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
8857         instead of ref, since some applications that uses GBoxed
8858         routines depends on a function that actually returns a copy.
8859
8860 2004-02-27  Benjamin Otte  <otte@gnome.org>
8861
8862         * gst/gstbuffer.h:
8863           remove gst_buffer_free, use gst_data_unref
8864         * gst/gstdata.c: (gst_data_get_type):
8865           use refcounting in GstData GBoxed registration
8866         * gst/gstdata.h:
8867           remove gst_data_free, use gst_data_unref
8868
8869 2004-02-27  Johan Dahlin  <johan@gnome.org>
8870
8871         * gst/gstdata.c (gst_data_get_type): New function, register
8872         GstData as a GBoxed type.
8873
8874         * gst/gstdata.h (GST_TYPE_DATA): New macro
8875
8876 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
8877
8878         * Makefile.am:
8879         * gstreamer.spec.in:
8880           put back RELEASE
8881         * gst/Makefile.am:
8882           clean up non-disting of built files
8883         * testsuite/debug/commandline.c:
8884           test fix for option rename
8885
8886 2004-02-26  David Schleef  <ds@schleef.org>
8887
8888         * configure.ac:  We don't really need glib-2.3.  Also remove
8889         some unneeded checks for library functions.
8890         * gst/Makefile.am:  Instead, we need to not dist files created
8891         by glib-genmarshal.
8892
8893 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8894
8895         * configure.ac:
8896           bump glib required version to 2.3.0 for g_value_takes_boxed
8897
8898  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
8899
8900         * common/m4/gst-docs.m4
8901         change flavour text from enable to disable as enable is our default
8902         closes bug Bug 135304
8903
8904 === release 0.7.5 ===
8905  
8906  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8907  
8908         * NEWS:
8909           instate NEWS file
8910         * Makefile.am:
8911         * gstreamer.spec.in:
8912         * RELEASE:
8913           put back release
8914         * configure.ac:
8915         * docs/random/release:
8916           more updates
8917
8918 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8919
8920         * gst/gsttag.c: (_gst_tag_initialize):
8921         * po/fr.po:
8922         * po/nl.po:
8923           remove hyphen from codec tags
8924
8925 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8926
8927         * gst/parse/Makefile.am:
8928           fix dependency so that a make from a clean build works the first
8929           time
8930
8931 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8932
8933         * docs/random/release:
8934           update release strategy
8935         * po/fr.po:
8936           auto-update po file
8937         * po/nl.po:
8938           update dutch translation
8939
8940 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8941
8942         * docs/manual/debugging.xml:
8943         fix manual for new debugging system
8944
8945 2004-02-25  Andy Wingo  <wingo@pobox.com>
8946
8947         * gst/gstpad.c (gst_pad_link_prepare): Re-add
8948         gst_pad_link_prepare. Please email the list with specific reasons
8949         for reverting.
8950
8951 2004-02-24  Andy Wingo  <wingo@pobox.com>
8952
8953         * gst/gstelement.c (gst_element_dispose): Protect against multiple
8954         invocations.
8955
8956         * gst/schedulers/gstoptimalscheduler.c:
8957         I added a mess of prototypes at the top of the file by way of
8958         documentation. Some of the operations on chains and groups were
8959         re-organized.
8960
8961         (create_group): Added a type argument so if the group is enabled,
8962         the setup_group_scheduler knows what to do.
8963         (group_elements): Added a type argument here, too, to be passed on
8964         to create_group.
8965         (group_element_set_enabled): If an unlinked PLAYING element is
8966         added to a bin, we have to create a new group to hold the element,
8967         and this function will be called before the group is added to the
8968         chain. Thus we have a valid case for group->chain==NULL. Instead
8969         of calling chain_group_set_enabled, just set the flag on the group
8970         (the chain's status will be set when the group is added to it).
8971         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
8972         Setup the group scheduler when the group is enabled, not
8973         specifically when an element goes PAUSED->PLAYING. This means
8974         PLAYING elements can be added, linked, and scheduled into a
8975         PLAYING pipeline, as was intended.
8976         (add_to_group): Don't ref the group twice. I don't know when this
8977         double-ref got in here. Removing it has the potential to cause
8978         segfaults if other parts of the scheduler are buggy. If you find
8979         that the scheduler is segfaulting for you, put in an extra ref
8980         here and see if that hacks over the underlying issue. Of course,
8981         then find out what code is unreffing a group it doesn't own...
8982         (create_group): Make the extra refcount floating, and remove it
8983         after adding the element. This means that...
8984         (unref_group): Destroy when the refcount reaches 0, not 1, like
8985         every other refcounted object in the known universe.
8986         (remove_from_group): When a group becomes empty, set it to be not
8987         active, and remove it from its chain. Don't unref it again,
8988         there's no floating reference any more.
8989         (destroy_group): We have to remove the group from the chain in
8990         remove_from_group (rather than here) to break refcounting cycles
8991         (the chain always has a ref on the group). So assert that
8992         group->chain==NULL.
8993         (ref_group_by_count): Removed, it was commented out anyway.
8994         (merge_chains): Use the remove_from_chain and add_to_chain
8995         primitives to do the reparenting, instead of rolling our own
8996         implementation.
8997         (add_to_chain): The first non-disabled group in the chain's group
8998         list will be the entry point for the chain. Because buffers can
8999         accumulate in loop elements' peer bufpens, we preferentially
9000         schedule loop groups before get groups to avoid unnecessary
9001         execution of get-based groups when the bufpens are already full.
9002         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9003         (get_group_schedule_function): Ditto.
9004         (loop_group_schedule_function): Ditto.
9005         (gst_opt_scheduler_loop_wrapper): Ditto.
9006         (gst_opt_scheduler_iterate): Ditto.
9007
9008         I understand the opt scheduler now, yippee!
9009
9010         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9011         (gst_pad_get_name, gst_pad_set_chain_function) 
9012         (gst_pad_set_get_function, gst_pad_set_event_function) 
9013         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9014         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9015         (gst_pad_set_query_function, gst_pad_get_query_types) 
9016         (gst_pad_get_query_types_default) 
9017         (gst_pad_set_internal_link_function) 
9018         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9019         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9020         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9021         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9022         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9023         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9024         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9025         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9026         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9027         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9028         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9029         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9030         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9031         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9032         argument checks, and some doc fixes.
9033
9034         (gst_pad_custom_new_from_template): Um, does anyone
9035         use these functions? Actually make a custom pad instead of a
9036         normal one.
9037         (gst_pad_try_set_caps): Transpose some checks.
9038         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9039         the pad is in negotiation.
9040         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9041         
9042         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9043
9044         * gst/gstelement.h: 
9045         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9046         on the list.
9047
9048 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9049
9050         * gst/gstbin.c: (gst_bin_add):
9051           add error for not being able to add elements
9052
9053 2004-02-22  Julien MOUTTE <julien@moutte.net>
9054
9055         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9056         audio-codec and video-codec.
9057
9058 2004-02-22  Benjamin Otte  <otte@gnome.org>
9059
9060         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9061
9062         * autogen.sh:
9063           replace test -e with test -x for mkinstalldirs to be more portable.
9064           (fixes #134816)
9065
9066 2004-02-22  Benjamin Otte  <otte@gnome.org>
9067
9068         * gst/gstpad.c:
9069           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9070           too noisy
9071         * gst/gsttag.c: (_gst_tag_initialize):
9072         * gst/gsttag.h:
9073           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9074         * libs/gst/control/dparam.c: (gst_dparam_attach):
9075         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9076           check that types for attached dparams match
9077
9078 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9079
9080         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9081         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9082         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9083           fix errors
9084
9085 2004-02-20  Andy Wingo  <wingo@pobox.com>
9086
9087         * gst/gstbin.c:
9088         * gst/gstbuffer.c:
9089         * gst/gstplugin.c:
9090         * gst/registries/gstxmlregistry.c: 
9091         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9092
9093         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9094         (gst_element_add_pad): DEBUG->INFO, some fixes.
9095         (gst_element_get_compatible_pad_template): Just see if the
9096         templates' caps intersect, not if one is a strict subset of the
9097         other. This conforms more to what gst_pad_link_intersect() does.
9098         (gst_element_class_add_pad_template): Don't memcpy the pad
9099         template, just ref it.
9100         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9101
9102         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9103         (gst_pad_link_filtered): Debug changes.
9104         (gst_pad_link_prepare): New function, consolidated from
9105         can_link_filtered and link_filtered.
9106
9107         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9108         look more like that of the functions in gstelement.c
9109
9110         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9111         object, and return the empty string if object is NULL.
9112
9113         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9114         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9115         LOG, not DEBUG. We still get flex info on debug.
9116
9117         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9118         debug string more verbose.
9119         (plugin_times_older_than): DEBUG->LOG.
9120
9121 2004-02-20  Julien MOUTTE <julien@moutte.net>
9122
9123         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9124         will emit found_tag for each stream they demux with the codec.
9125
9126 2004-02-20  Benjamin Otte  <otte@gnome.org>
9127
9128         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9129           copy navigation event correctly. Check freeing tag lists. 
9130         * gst/gstthread.c: (gst_thread_change_state):
9131           don't abort() on state changing mess - it might happen because of
9132           bugs.
9133         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9134           use boxed functions
9135         * gst/gstvalue.h:
9136           fix GST_VALUE_HOLDS_CAPS
9137
9138 2004-02-19  David Schleef  <ds@schleef.org>
9139
9140         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9141         and use it for GST_FUNCTION.  (bug #134750)
9142
9143 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9144
9145         * po/fr.po:
9146         * po/nl.po:
9147           updating translations
9148
9149 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9150
9151         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9152
9153 2004-02-18  kost@imn.htwk-leipzig.de
9154
9155         reviewed by: David Schleef  <ds@schleef.org>
9156
9157         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9158         for libgstcontrol.
9159
9160 2004-02-18  David Schleef  <ds@schleef.org>
9161
9162         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9163         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9164         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9165         * tools/gst-inspect.c: (print_element_info): Support dumping of
9166         double dparam information.
9167
9168 2004-02-17  David Schleef  <ds@schleef.org>
9169
9170         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9171         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9172         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9173         Use GST_TYPE_CAPS in signal prototype.
9174         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9175         Convert GST_TYPE_CAPS to boxed.
9176         * gst/gstelement.c: (gst_element_class_init):
9177         Use GST_TYPE_TAG_LIST in signal prototype.
9178         * gst/gstindex.c: (gst_index_class_init):
9179         * gst/gstindex.h:
9180         Add GST_TYPE_INDEX_ENTRY type.
9181         * gst/gstmarshal.list:
9182         Add necessary marshal types.
9183         * gst/gstpad.c: (gst_real_pad_class_init),
9184         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9185         (gst_pad_recover_caps_error):
9186         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9187         * gst/gststructure.c: (_gst_structure_initialize),
9188         (gst_structure_copy), (_gst_structure_copy_conditional):
9189         * gst/gststructure.h:
9190         Convert GST_TYPE_STRUCTURE to boxed.
9191         * gst/gsttag.c: (gst_tag_list_get_type):
9192         * gst/gsttag.h:
9193         Add GST_TYPE_TAG_LIST type.
9194
9195 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9196
9197         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9198         to what we agreed with david.
9199         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9200
9201 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9202
9203         * po/nl.po: update translation
9204
9205 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9206
9207         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9208           throw an error if spider is trying to play a mime type there is
9209           no decoder for
9210         * po/POTFILES.in:
9211           add gst/autoplug/gstspider.c for translation
9212
9213 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9214
9215         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9216         silently when the pad is negotiating.
9217
9218 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9219
9220         * docs/faq/Makefile.am:
9221           add script to run gstreamer uninstalled 
9222         * docs/faq/faq.xml:
9223         * docs/faq/developing.xml:
9224         * docs/faq/gst-uninstalled:
9225           extract script to run gstreamer uninstalled
9226         * docs/manuals.mak:
9227           add EXTRA_SOURCES variable for Makefile.am's to set to
9228           use additional SOURCE files for the doc build
9229
9230 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9231
9232         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9233
9234 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9235
9236         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9237         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9238         an error was thrown by osssink. Basically a state change failure for
9239         an element in a different scheduling group was considered as
9240         successful, which means that caps nego was going on and weird stuff
9241         happened. Like I wrote in the comment there, if someone wants to
9242         revert that please drop me a mail explaining why because I really see
9243         no point in keeping that broken behaviour there.
9244         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9245         be empty, we then return NULL which will trigger a nice error when 
9246         pulling from the pad.
9247
9248 2004-02-13  David Schleef  <ds@schleef.org>
9249
9250         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9251         (gst_dparam_get_property), (gst_dparam_set_property),
9252         (gst_dparam_do_update_default):
9253         * libs/gst/control/dparam.h:
9254         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9255         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9256         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9257         (gst_dpsmooth_do_update_double):
9258         * libs/gst/control/dparam_smooth.h:
9259         * libs/gst/control/dparammanager.c:
9260         (gst_dpman_inline_direct_update):
9261         Add support for double dparams.
9262
9263 2004-02-13  David Schleef  <ds@schleef.org>
9264
9265         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9266         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9267
9268 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9269
9270         reviewed by: David Schleef  <ds@schleef.org>
9271
9272         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9273         (gst_fdsrc_init), (gst_fdsrc_set_property),
9274         (gst_fdsrc_get_property), (gst_fdsrc_get):
9275         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9276         and sends an EOS event if file descriptor reading times out.
9277
9278 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9279
9280         * configure.ac:
9281           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9282
9283 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9284
9285         * configure.ac: pass required libxml version as argument
9286         (bug reported by Christophe Fergeau)
9287
9288 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9289   
9290         * docs/gst/gstreamer-docs.sgml:
9291         * docs/gst/tmpl/gstxml.sgml:
9292         * docs/libs/gstreamer-libs-docs.sgml:
9293           version API docs
9294
9295 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9296
9297         * gst/gstinfo.c:
9298         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9299         (gst_registry_pool_feature_filter):
9300         * gst/gstthread.c: (gst_thread_class_init):
9301         * gst/gstvalue.c:
9302           add includes exposed by building without libxml
9303         * gst/indexers/Makefile.am:
9304           do not build fileindex when LOADSAVE disabled; we should have
9305           a better libxml check later since fileindex depends on xml, not
9306           LOADSAVE or REGISTRY
9307         * libs/gst/control/Makefile.am:
9308           link with m
9309         * tools/Makefile.am:
9310           fix wrong source code for gst-xmlinspect
9311
9312 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9313
9314         * configure.ac:
9315           fix gcov help output
9316           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9317         * docs/random/release:
9318           some updated releasing notes
9319         * gstreamer.spec.in:
9320           more updates
9321
9322 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9323
9324         * docs/faq/faq.xml:
9325         * docs/manual/manual.xml:
9326         * docs/pwg/pwg.xml:
9327         * docs/pwg/titlepage.xml:
9328           put version in documentation
9329
9330 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9331
9332         * tools/Makefile.am: fix man page installation
9333
9334 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9335
9336         * configure.ac:
9337           don't check for libxml when load/save and registry disabled (#105844)
9338         * gstreamer.spec.in:
9339           sync with fedora candidate spec
9340
9341 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9342
9343         * po/fr.po:
9344         * po/nl.po:
9345           replace multidisksrc with multifilesrc
9346
9347 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9348
9349         * po/POTFILES.in:
9350           update to multidisksrc => multifilesrc file renaming (#134145)
9351
9352 2004-02-11  David Schleef  <ds@schleef.org>
9353
9354         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9355         * docs/gst/tmpl/gstpadtemplate.sgml: same
9356         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9357         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9358         fixing dance.
9359         * gst/gstutils.c: Remove disabled code that uses GstProps.
9360         * gst/registries/gstxmlregistry.h: same
9361         * docs/random/ds/0.9-suggested-changes: random notes
9362
9363 2004-02-11  kost@imn.htwk-leipzig.de
9364
9365         reviewed by: David Schleef  <ds@schleef.org>
9366
9367         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9368         initialisation of clock (bug #134128)
9369
9370 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9371
9372         * configure.ac:
9373         * gst/elements/Makefile.am:
9374         * gst/elements/gstelements.c:
9375         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9376         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9377         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9378         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9379         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9380         * gst/elements/gstmultifilesrc.h:
9381           rename multidisksrc to multifilesrc (part of #122200)
9382
9383 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9384
9385         * docs/manuals.mak:
9386           fix automake complaints
9387         * gst-element-check.m4:
9388           fix unquotedness
9389
9390 2004-02-11  David Schleef  <ds@schleef.org>
9391
9392         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9393         * gst/gstatomic_impl.h: Disable sparc implementation.
9394
9395 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9396
9397         * gst-element-check.m4:
9398           fix underquoted macros as reported by automake 1.8.x (#133800)
9399         * configure.ac:
9400           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9401           by autopoint (fixes #132996)
9402
9403 2004-02-10  Andy Wingo  <wingo@pobox.com>
9404
9405         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9406         way to do inheritance.
9407         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9408         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9409         Routine docs.
9410         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9411         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9412         doc.
9413         (gst_pad_unlink, gst_pad_is_linked): Docs.
9414         (gst_pad_renegotiate): A brief description of capsnego.
9415         (gst_pad_try_set_caps): Document.
9416         (gst_pad_try_set_caps_nonfixed): Document.
9417         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9418         (gst_pad_set_parent): Deprecated (although not out of the API).
9419         (gst_pad_get_parent): Deprecated, although many plugins use this.
9420         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9421         are private and will go away in 0.9.
9422         (gst_pad_perform_negotiate): Doc.
9423         (gst_pad_link_unnegotiate): I think this is meant to be static.
9424         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9425         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9426         (gst_pad_get_peer): Doc updates.
9427         (gst_pad_caps_change_notify): Doc.
9428         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9429         (gst_ghost_pad_new): Doc fixes.
9430
9431         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9432         (gst_object_check_uniqueness): 
9433
9434         * gst/gstelement.c (gst_element_add_pad) 
9435         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9436         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9437         (gst_element_get_static_pad, gst_element_get_pad_list) 
9438         (gst_element_class_get_pad_template_list) 
9439         (gst_element_class_get_pad_template): Work on the docs.
9440         (gst_element_get_pad_template_list): Uses the class method.
9441         (gst_element_get_compatible_pad_template): Docs, and consolidate
9442         some test conditions. 
9443         (gst_element_get_pad_from_template): New static function.
9444         (gst_element_request_compatible_pad): Docs, and work with
9445         non-request compatible templates. 
9446         (gst_element_get_compatible_pad_filtered): Docs and remove
9447         redundant checks.
9448         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9449         (gst_element_link_filtered, gst_element_link_many) 
9450         (gst_element_link, gst_element_link_pads) 
9451         (gst_element_unlink_many): Docs.
9452
9453 2004-02-05  Andy Wingo  <wingo@pobox.com>
9454
9455         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9456         s/pointer/boxed/.
9457
9458         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9459
9460         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9461         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9462         with the type=GST_TYPE_CAPS. This allows language bindings to know
9463         what kind of data they're dealing with.
9464
9465         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9466         to NULL when g_value_init is called. GstCaps, which rolls its own
9467         type implementation, now does the same instead of allocating empty
9468         caps.
9469         (_gst_caps_initialize, _gst_caps_collect_value,
9470         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9471         table methods. This allows G_VALUE_COLLECT to work.
9472
9473 2004-02-05  Andy Wingo  <wingo@pobox.com>
9474
9475         * configure.ac:
9476         * testsuite/Makefile.am (SUBDIRS): 
9477         * testsuite/ghostpads/Makefile.am: 
9478         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9479
9480         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9481         These two routines are the only ones that set
9482         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9483         pad template. They should be made static, depending on ABI needs.
9484         (gst_real_pad_dispose): Handle the case of ghost pads without a
9485         parent. Assert after dealing with ghost pads that the ghost pad
9486         list is empty.
9487         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9488         set after creation.
9489         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9490         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9491         functions. set_property will call add_ghost_pad/remove_ghost_pad
9492         as appropriate.
9493         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9494
9495         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9496         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9497         (gst_element_remove_pad): Handle ghost pads as well.
9498         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9499         depending on API-stability needs).
9500
9501 2004-02-05  Andy Wingo  <wingo@pobox.com>
9502
9503         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9504         of course they're const
9505
9506 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9507
9508         * tools/Makefile.am:
9509         * tools/gst-feedback:
9510         * tools/gst-feedback-0.7:
9511           make gst-feedback versioned too for consistency
9512
9513 2004-02-11  David Schleef  <ds@schleef.org>
9514
9515         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9516         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9517
9518 2004-02-10  Julien MOUTTE <julien@moutte.net>
9519
9520         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9521         the structure does not contain a valid tag list. Adding a safety check
9522         to remove a noisy warning in that case.
9523
9524 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9525
9526         * gst/gst.c: fix name to be in line with others
9527
9528 2004-02-09  Julien MOUTTE <julien@moutte.net>
9529
9530         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
9531         not shout that loud when len is 0. Just return 0 silently.
9532
9533 2004-02-09  Julien MOUTTE  <julien@moutte.net>
9534
9535         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
9536         because data_unref has one and I prefer the debug to be symetric.
9537         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
9538         were refed when added to the queue and unrefed only once when the queue
9539         was flushed. Now the flush handler unref the buffers two times : first
9540         unref for the ref added when pushing in the queue's tail and second
9541         unref to destroy the flushed buffer.
9542
9543 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9544
9545         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
9546
9547 2004-02-06  David Schleef  <ds@schleef.org>
9548
9549         * docs/random/ds/0.9-suggested-changes: Random ramblings
9550         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
9551         to int before printing.
9552         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
9553         * gst/parse/parse.l: same.  See bug #129600
9554
9555 2004-02-06  David Schleef  <ds@schleef.org>
9556
9557         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
9558         (gst_index_add_entry), (gst_index_add_associationv),
9559         (gst_index_add_association): Add gst_index_add_associationv()
9560         and clean up gst_index_add_association(). #127133
9561
9562 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9563
9564         * autogen.sh: check out common with right tag if CVS/Tag exists
9565
9566 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9567
9568         * testsuite/ghostpads/ghostpads.c: (main):
9569           fix testsuite from segfaulting
9570
9571 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9572
9573         * Makefile.am: add release target
9574         * configure.ac: bump nano to 1
9575         * docs/random/release:
9576
9577 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9578
9579         * gst/gstcaps.h:
9580         * gst/gstelement.c: (gst_element_base_class_init),
9581         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9582         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9583         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9584         (gst_real_pad_dispose):
9585         * gst/gststructure.c: (gst_structure_free),
9586         (gst_structure_from_string):
9587           put reverted patch back in
9588         * gst/gstelement.c: (gst_element_remove_pad):
9589           free explicit caps if they're set
9590         * gst/gstpad.c: (_gst_pad_default_fixate_func):
9591           copy the structure when fixating
9592
9593 2004-02-05  David Schleef  <ds@schleef.org>
9594
9595         * gst/gstmarshal.list:
9596         * gst/gstpad.c: (gst_real_pad_class_init),
9597         (_gst_real_pad_fixate_accumulator):
9598         Revert POINTER->BOXED change in signal marshaller.
9599
9600 === release 0.7.4 ===
9601                                                                                 
9602 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9603                                                                                 
9604         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
9605         * configure.ac: changed for release
9606
9607 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9608
9609         * gstreamer.spec.in:
9610           bump required version of gtk-doc
9611
9612 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9613
9614         * gst/gstcaps.h:
9615         * gst/gstelement.c: (gst_element_base_class_init),
9616         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9617         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9618         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9619         (gst_real_pad_dispose):
9620         * gst/gststructure.c: (gst_structure_free),
9621         (gst_structure_from_string):
9622           revert patch that breaks applications, reapply after release
9623           to get this fixed properly
9624
9625 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9626
9627         * gst/gsttag.c: (_gst_tag_initialize):
9628         * gst/gsttag.h:
9629           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
9630
9631 2004-02-04  David Schleef  <ds@schleef.org>
9632
9633         Fix some memleaks:
9634         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
9635         (gst_spider_plug_from_srcpad):
9636         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
9637
9638 2004-02-04  David Schleef  <ds@schleef.org>
9639
9640         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
9641         a GstRealPad before accessing its structure members.
9642
9643 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9644
9645         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
9646         (gst_clock_get_speed):
9647         * gst/gstclock.h:
9648           reset padding, remove unused fields
9649
9650 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9651
9652         * gst/autoplug/gstspideridentity.c:
9653         (gst_spider_identity_sink_loop_type_finding):
9654           use get_allowed_caps, not get_caps (fixes #132519)
9655         * gst/elements/gsttypefind.c: (stop_typefinding):
9656           use correct order when sending buffers and seeking
9657
9658 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9659
9660         * configure.ac:
9661         * gst/gstelement.h:
9662         * gst/gstpad.h:
9663         * gst/gstqueue.h:
9664           upgrade libtool CURRENT, reset padding
9665
9666 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9667
9668         * configure.ac:
9669           bump to prerelease
9670           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
9671
9672 2004-02-04  David Schleef  <ds@schleef.org>
9673
9674         * docs/random/ds/0.9-suggested-changes: random notes
9675         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
9676         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
9677         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
9678         expansion.
9679         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9680         (gst_filesink_get_query_types): same
9681         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
9682         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
9683         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
9684         to use new GST_PTR_FORMAT.
9685         * gst/gstelement.h: deprecate function factory macros
9686         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
9687         These are our last variadic macros that can't be replaced with
9688         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
9689         attempting to deprecate gst_element_clock_wait().
9690         * gst/gstevent.h: same
9691         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9692         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
9693         * gst/gstpad.h: deprecate function factory macros similar to above.
9694
9695 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9696
9697         * configure.ac:
9698         * tools/Makefile.am:
9699         * tools/gst-run.c: (popt_callback), (hash_print_key),
9700         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
9701         (get_candidates), (main):
9702           add new source file to generate non-versioned wrapper binaries
9703           for our tools.
9704
9705 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9706
9707         * gst/gstevent.c: (_gst_event_free):
9708           actually break; inside the switch statement
9709         * gst/parse/grammar.y:
9710           fix memleak where GValues weren't unset
9711
9712 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9713
9714         * gst/gststructure.c: (gst_structure_from_string):
9715           fix huge memleak
9716         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9717         (new_entry), (gst_type_find_element_chain):
9718         * gst/gstelement.c: (gst_element_base_class_init),
9719         (gst_element_class_set_details):
9720         * gst/gstpad.c: (gst_pad_can_link_filtered):
9721           fix smaller memleaks
9722         * gst/gstpad.c: (gst_real_pad_dispose):
9723           check that explicit caps are gone
9724         * gst/gststructure.c: (gst_structure_free):
9725           actually free the structure
9726         * gst/gstelement.c: (gst_element_clear_pad_caps):
9727           unset explicit caps
9728
9729 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9730
9731         * tools/Makefile.am:
9732           use AM_CFLAGS since all the CFLAGS are the same
9733           use AM_LDFAGS
9734
9735 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9736
9737         * docs/manual/gnome.xml:
9738           expand example a little
9739         * gst/gst.c: (gst_init_with_popt_table),
9740         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
9741           make sure popt option displays are done with right textdomain
9742           use GstPoptOption type
9743         * gst/gst.h:
9744           create GstPoptOption type
9745
9746 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9747
9748         * gst/gsterror.c: (_gst_stream_errors_init):
9749         * gst/gsterror.h:
9750           adding error type for no codec
9751         * po/POTFILES.in:
9752           add gst-inspect
9753         * po/nl.po:
9754           update dutch translation
9755         * tools/gst-inspect.c: (print_element_list), (main):
9756           do proper internationalization
9757         * tools/gst-launch.c: (idle_func):
9758           remove commented out function call
9759
9760 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9761
9762         * docs/README:
9763           add some error fixing notes
9764         * docs/gst/gstreamer-sections.txt:
9765           remove double entries
9766         * docs/gst/tmpl/gstbin.sgml:
9767         * docs/gst/tmpl/gstclock.sgml:
9768           remove override
9769         * docs/gst/tmpl/gstelement.sgml:
9770         * docs/gst/tmpl/gstindex.sgml:
9771         * docs/gst/tmpl/gstobject.sgml:
9772         * docs/gst/tmpl/gstpadtemplate.sgml:
9773         * docs/gst/tmpl/gstreamer-unused.sgml:
9774         * docs/gst/tmpl/gsttag.sgml:
9775         * docs/gst/tmpl/gstthread.sgml:
9776         * docs/gst/tmpl/gstxml.sgml:
9777         * gst/gsttag.h:
9778           sync header prototypes with c decls
9779         * gst/gsttaginterface.c:
9780           fix doc headers
9781
9782 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9783
9784         * gst/parse/Makefile.am:
9785         * gst/gstobject.h:
9786           get rid of gstmarshal.h dependency. It's not needed.
9787         * gst/gst.h:
9788         * gst/elements/gstfakesink.c:
9789         * gst/elements/gstfakesrc.c:
9790         * gst/elements/gstidentity.c:
9791         * gst/gstbin.c:
9792         * gst/gstelement.c:
9793         * gst/gstindex.c:
9794         * gst/gstobject.c:
9795         * gst/gstpad.c:
9796         * gst/gstthread.c:
9797         * gst/gstxml.c:
9798         * libs/gst/control/dparam.c:
9799         * libs/gst/control/dparammanager.c:
9800           include gstmarshal.h.
9801         Fixes #132045
9802
9803 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9804
9805         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9806         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
9807         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
9808         * gst/elements/gstfilesrc.h:
9809           don't ref the filesrc when creating mmaped buffers. Don't keep a
9810           list of not-yet-destroyed buffers.
9811         * gst/gstbuffer.h:
9812           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
9813
9814 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9815
9816         * gst/gst.c: (init_pre):
9817           remove textdomain
9818
9819 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9820
9821         * docs/pwg/advanced-events.xml:
9822         * docs/pwg/advanced-scheduling.xml:
9823         * docs/pwg/intro-basics.xml:
9824         * docs/pwg/other-manager.xml:
9825         * docs/pwg/other-nton.xml:
9826         * docs/pwg/other-ntoone.xml:
9827         * docs/pwg/other-oneton.xml:
9828         * docs/pwg/pwg.xml:
9829           All sort of documentation... Forgot what. Point is that I want this
9830           in before I leave. The 'other-*' will be the last section and will
9831           explain issues specific to these type of elements.
9832
9833 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9834
9835         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9836         (gst_filesrc_get_read):
9837           set all the values on buffers that we can
9838
9839 2004-02-02  David Schleef  <ds@schleef.org>
9840
9841         Change usage of isblah() to g_ascii_isblah() to be more locale
9842         independent.  (#133076)
9843         * gst/gsturi.c: (gst_uri_protocol_check_internal):
9844         * gst/gstutils.c:
9845         * gst/parse/parse.l:
9846
9847 2004-02-02  Jon Trowbridge  <trow@gnu.org>
9848
9849         reviewed by: David Schleef  <ds@schleef.org>
9850
9851         Fix memory leaks:
9852         * gst/gstcaps.c: (gst_caps_to_string):
9853         * gst/registries/gstxmlregistry.c:
9854         (gst_xml_registry_add_path_list_func),
9855         (gst_xml_registry_parse_padtemplate):
9856
9857 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9858
9859         * gst/gstelement.c: (gst_element_default_error):
9860           suffix error messages with period
9861
9862 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9863
9864         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9865         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9866         * gst/gsterror.c: (gst_error_get_message):
9867           Suffix with dots
9868         * po/fr.po:
9869         * po/nl.po:
9870           Update translation files
9871
9872 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9873
9874         * gst/autoplug/gstspideridentity.c:
9875         (gst_spider_identity_sink_loop_type_finding):
9876         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9877         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9878         (gst_filesink_close_file), (gst_filesink_handle_event),
9879         (gst_filesink_chain):
9880         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9881         (gst_filesrc_get_read), (gst_filesrc_open_file):
9882         * gst/elements/gstidentity.c: (gst_identity_chain):
9883         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9884         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9885         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9886         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9887         * gst/gsterror.c: (_gst_core_errors_init),
9888         (_gst_library_errors_init), (_gst_resource_errors_init),
9889         (_gst_stream_errors_init), (gst_error_get_message):
9890         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9891         (gst_pad_recover_caps_error), (gst_pad_pull):
9892         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9893         * gst/schedulers/gstbasicscheduler.c:
9894         (gst_basic_scheduler_chainhandler_proxy),
9895         (gst_basic_scheduler_gethandler_proxy),
9896         (gst_basic_scheduler_cothreaded_chain):
9897           Suffix error messages with period.
9898           Use (NULL) instead of NULL
9899
9900 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9901
9902         * docs/gst/tmpl/gstelement.sgml:
9903         * docs/gst/tmpl/gstxml.sgml:
9904         * gst/gstelement.c: (gst_element_error_full):
9905           add element path to error
9906
9907 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9908
9909         * docs/random/mimetypes:
9910           update raw int/float info
9911         * gst/gsttag.c: (_gst_tag_initialize):
9912         * gst/gsttag.h:
9913           add GST_TAG_ENCODER
9914
9915 2004-01-30  David Schleef  <ds@schleef.org>
9916
9917         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
9918           missing (#132991)
9919
9920 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
9921
9922         reviewed by Benjamin Otte 
9923           parts of the patch submitted in bug #113913
9924
9925         * configure.ac:
9926           use AC_C_INLINE. Use = instead of == with test
9927         * examples/plugins/example.c:
9928         * gst/autoplug/gstspideridentity.c:
9929         * gst/elements/gstfdsrc.c:
9930         * gst/elements/gstfilesrc.c:
9931         * gst/elements/gstidentity.c:
9932         * gst/elements/gstmultidisksrc.c:
9933         * gst/elements/gststatistics.c:
9934         * gst/gstelement.c:
9935         * gst/gstobject.c:
9936         * gst/gstpad.c:
9937         * gst/gstpipeline.c:
9938         * gst/gstthread.c:
9939           don't end enums with a comma
9940         * gst/gstindex.c: (gst_index_compare_func):
9941           do explicit casting to gint
9942         * gst/gsttrace.c: (gst_trace_text_flush):
9943           #define strsize as a macro
9944
9945 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9946
9947         * docs/README:
9948         * docs/gst/gstreamer-docs.sgml:
9949         * docs/gst/gstreamer-sections.txt:
9950         * docs/gst/tmpl/gstelement.sgml:
9951         * docs/gst/tmpl/gsterror.sgml:
9952         * docs/gst/tmpl/gstinterface.sgml:
9953         * docs/gst/tmpl/gstreamer-unused.sgml:
9954         * docs/gst/tmpl/gststructure.sgml:
9955         * docs/gst/tmpl/gsttag.sgml:
9956         * docs/gst/tmpl/gsttaginterface.sgml:
9957         * docs/gst/tmpl/gstvalue.sgml:
9958         make sure all API ends up in the built docs
9959         * gst/gstinterface.c:
9960         * gst/gststructure.c: (gst_structure_id_set_value),
9961         (gst_structure_set_value), (gst_structure_id_get_value):
9962         * gst/gststructure.h:
9963         * gst/gstvalue.h:
9964         sync .h with .c declarations
9965
9966 2004-01-30  Julien Moutte  <julien@moutte.net>
9967
9968         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
9969         Ronald will fix riffread.
9970
9971 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9972
9973         * docs/pwg/advanced-interfaces.xml:
9974           Added tuner interface docs.
9975
9976 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9977
9978         * docs/random/mimetypes:
9979           correct Theora information
9980         * gst/gstelement.h:
9981           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
9982
9983 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9984
9985         * gst/gstelement.c: (gst_element_error_full):
9986         * gst/gstelement.h:
9987           GST_ELEMENT_ERROR in enum -> _IN_ERROR
9988
9989 2004-01-29  Julien MOUTTE  <julien@moutte.net>
9990
9991         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9992         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
9993         again and even before DISCONT.
9994         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
9995         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
9996         bytestream so that it's not stopping to fill the bytestream if events
9997         different than EOS or DISCONT are received. Instead it process them so
9998         that they go downstream.
9999
10000 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10001
10002         * docs/gst/tmpl/gstelement.sgml:
10003         * docs/gst/tmpl/gstreamer-unused.sgml:
10004         * docs/gst/tmpl/gstxml.sgml:
10005         * gst/autoplug/gstspideridentity.c:
10006         (gst_spider_identity_sink_loop_type_finding):
10007         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10008         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10009         (gst_filesink_close_file), (gst_filesink_handle_event),
10010         (gst_filesink_chain):
10011         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10012         (gst_filesrc_get_read), (gst_filesrc_open_file):
10013         * gst/elements/gstidentity.c: (gst_identity_chain):
10014         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10015         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10016         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10017         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10018         * gst/gstelement.h:
10019         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10020         (gst_pad_recover_caps_error), (gst_pad_pull):
10021         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10022         * gst/schedulers/gstbasicscheduler.c:
10023         (gst_basic_scheduler_chainhandler_proxy),
10024         (gst_basic_scheduler_gethandler_proxy),
10025         (gst_basic_scheduler_cothreaded_chain):
10026           gst_element_error -> GST_ELEMENT_ERROR
10027
10028 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10029
10030         * docs/Makefile.am:
10031         * docs/gst/tmpl/gstelement.sgml:
10032         * docs/gst/tmpl/gstxml.sgml:
10033         * docs/manuals.mak:
10034         * docs/pwg/advanced-request.xml:
10035         * docs/pwg/advanced-scheduling.xml:
10036         * docs/pwg/advanced-tagging.xml:
10037           fix non-validating docbook using CDATA
10038           make sure make check-local gets run first to check if it validates
10039
10040 2004-01-29  Julien MOUTTE <julien@moutte.net>
10041
10042         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10043         handling (up and downstream).
10044         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10045         my_filter thing.
10046
10047 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10048
10049         * docs/pwg/advanced-tagging.xml:
10050           Add docs about tag writing.
10051
10052 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10053
10054         * docs/pwg/advanced-tagging.xml:
10055           Add a part about tag reading and application signalling... Tag
10056           writing still needs to be documented.
10057         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10058           We can set file locations in READY, too.
10059
10060 2004-01-29  Julien MOUTTE <julien@moutte.net>
10061
10062         * docs/random/ds/element-checklist: Adding some notes about src
10063         events.
10064
10065 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10066
10067         * docs/random/mimetypes:
10068           Update docs to point to correct elements for various mimetypes, and
10069           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10070           <stephane.loeuillet@tiscali.fr>.
10071
10072 2004-01-28  David Schleef  <ds@schleef.org>
10073
10074         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10075
10076 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10077
10078         * docs/random/mimetypes:
10079           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10080           undefined"
10081         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10082           make it only work in NULL.
10083         * gst/gstcaps.c:
10084           don't posion NULL caps
10085         * gst/gstelement.c: (gst_element_set_time):
10086           add debugging statement
10087         * gst/gstelement.c: (gst_element_emit_found_tag),
10088         (gst_element_found_tag_func), (gst_element_found_tags):
10089         * gst/gstelement.h:
10090           These functions take const taglists
10091         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10092           fix memleak
10093         * gst/gstpad.c: (gst_pad_event_default):
10094           make more effort on handling discont and clocks, g_warn if everything
10095           fails
10096         * gst/gststructure.c: (gst_structure_remove_fields),
10097         (gst_structure_remove_fields_valist):
10098         * gst/gststructure.h:
10099           add gst_structure_remove_fields(_valist)
10100         * gst/gsttag.c:
10101           fix doc glitch
10102
10103 2004-01-28  David Schleef  <ds@schleef.org>
10104
10105         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10106         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10107         Fix memory leakage of gst_caps_to_string().
10108
10109         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10110         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10111         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10112         (gst_spider_identity_sink_loop_type_finding):
10113         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10114         (find_suggest):
10115         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10116         (gst_pad_set_explicit_caps):
10117         * gst/parse/grammar.y:
10118
10119 2004-01-28  David Schleef  <ds@schleef.org>
10120
10121         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10122         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10123         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10124         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10125         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10126         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10127         (gst_debug_log_default), (_gst_info_printf_extension),
10128         (_gst_info_printf_extension_arginfo):  Add printf extension.
10129         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10130         * gst/gststructure.c: (gst_structure_to_string),
10131         (_gst_structure_parse_value): Use gst_value_deserialize() and
10132         remove old code.
10133         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10134         (gst_value_deserialize_boolean), (gst_strtoi),
10135         (gst_value_deserialize_int), (gst_value_deserialize_double),
10136         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10137         a bunch of deserialize functions and gst_value_deserialize.
10138         * gst/gstvalue.h: er, _de_serialize, not unserialize
10139         * testsuite/caps/string-conversions.c: (main): We don't currently
10140         handle (float) in caps, so convert these to (double).
10141         * testsuite/debug/Makefile.am: Add new test for the printf extension
10142         * testsuite/debug/printf_extension.c: (main): same
10143
10144 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10145
10146         * docs/random/company/time:
10147           Add some docs about clocking and time
10148
10149 2004-01-28  Julien MOUTTE <julien@moutte.net>
10150
10151         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10152
10153 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10154
10155         * docs/pwg/advanced-clock.xml:
10156         * docs/pwg/advanced-dparams.xml:
10157         * docs/pwg/advanced-events.xml:
10158         * docs/pwg/advanced-interfaces.xml:
10159         * docs/pwg/advanced-midi.xml:
10160         * docs/pwg/advanced-request.xml:
10161         * docs/pwg/advanced-scheduling.xml:
10162         * docs/pwg/advanced-tagging.xml:
10163         * docs/pwg/advanced-types.xml:
10164         * docs/pwg/appendix-checklist.xml:
10165         * docs/pwg/building-boiler.xml:
10166         * docs/pwg/building-chainfn.xml:
10167         * docs/pwg/building-filterfactory.xml:
10168         * docs/pwg/building-pads.xml:
10169         * docs/pwg/building-props.xml:
10170         * docs/pwg/building-signals.xml:
10171         * docs/pwg/building-state.xml:
10172         * docs/pwg/building-testapp.xml:
10173         * docs/pwg/intro-basics.xml:
10174         * docs/pwg/intro-preface.xml:
10175         * docs/pwg/other-autoplugger.xml:
10176         * docs/pwg/other-sink.xml:
10177         * docs/pwg/other-source.xml:
10178         * docs/pwg/titlepage.xml:
10179           fix up id's
10180
10181 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10182
10183         * docs/95NonPath:
10184         * docs/HACKING:
10185         * docs/README:
10186         * docs/building-the-docs-on-debian:
10187           collect relevant bits of doc info
10188
10189 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10190
10191         * docs/pwg/advanced_tagging.xml:
10192           Half-assed commit so Thomas can re-arrange document IDs here to be
10193           consistent, too.
10194
10195 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10196
10197         * docs/manual/autoplugging.xml:
10198         * docs/manual/bins-api.xml:
10199         * docs/manual/bins.xml:
10200         * docs/manual/buffers-api.xml:
10201         * docs/manual/buffers.xml:
10202         * docs/manual/clocks.xml:
10203         * docs/manual/components.xml:
10204         * docs/manual/cothreads.xml:
10205         * docs/manual/debugging.xml:
10206         * docs/manual/dparams-app.xml:
10207         * docs/manual/dynamic.xml:
10208         * docs/manual/elements-api.xml:
10209         * docs/manual/elements.xml:
10210         * docs/manual/factories.xml:
10211         * docs/manual/gnome.xml:
10212         * docs/manual/goals.xml:
10213         * docs/manual/helloworld.xml:
10214         * docs/manual/helloworld2.xml:
10215         * docs/manual/init-api.xml:
10216         * docs/manual/intro.xml:
10217         * docs/manual/links-api.xml:
10218         * docs/manual/links.xml:
10219         * docs/manual/manual.xml:
10220         * docs/manual/motivation.xml:
10221         * docs/manual/pads-api.xml:
10222         * docs/manual/pads.xml:
10223         * docs/manual/plugins-api.xml:
10224         * docs/manual/plugins.xml:
10225         * docs/manual/programs.xml:
10226         * docs/manual/queues.xml:
10227         * docs/manual/quotes.xml:
10228         * docs/manual/schedulers.xml:
10229         * docs/manual/states-api.xml:
10230         * docs/manual/states.xml:
10231         * docs/manual/threads.xml:
10232         * docs/manual/typedetection.xml:
10233         * docs/manual/xml.xml:
10234           use chapter, part, section or misc as id starts for all bits
10235
10236 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10237
10238         * docs/gst/gstreamer-sections.txt:
10239           Fix up TITLE of the sections
10240
10241 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10242
10243         * docs/pwg/advanced_interfaces.xml:
10244           Add documentation on propertyprobing.
10245         * docs/pwg/advanced_events.xml:
10246         * docs/pwg/advanced_tagging.xml:
10247         * docs/pwg/building_boiler.xml:
10248         * docs/pwg/building_filterfactory.xml:
10249         * docs/pwg/pwg.xml:
10250           Move filterfactory and tagging into their own chapter, add a chapter
10251           on events. all these are empty placeholders that will be filled in
10252           some day.
10253
10254 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10255
10256         * docs/pwg/advanced_interfaces.xml:
10257           Docs for mixer interface. Also a check for website uploading.
10258
10259 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10260
10261         * docs/HACKING:
10262         * docs/Makefile.am:
10263         * docs/faq/Makefile.am:
10264         * docs/gst/Makefile.am:
10265         * docs/gst/tmpl/gstelement.sgml:
10266         * docs/gst/tmpl/gstplugin.sgml:
10267         * docs/gst/tmpl/gstreamer-unused.sgml:
10268         * docs/libs/Makefile.am:
10269         * docs/manual/Makefile.am:
10270         * docs/manuals.mak:
10271         * docs/pwg/Makefile.am:
10272         * docs/upload.mak:
10273           Separate out upload target and make it similar for
10274           both docbook and gtk-doc docs
10275
10276 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10277
10278         * docs/manuals.mak:
10279           Fix upload target to work with freedesktop
10280
10281 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10282
10283         * docs/pwg/advanced_types.xml:
10284           Add notes on creating your own types.
10285         * docs/pwg/building_boiler.xml:
10286         * docs/pwg/building_pads.xml:
10287         * docs/pwg/building_state.xml:
10288           Add some stuff about how to retrieve values from structures, how
10289           that relates to types and change layout slightly again to be almost
10290           perfect.
10291
10292 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10293
10294         * docs/pwg/advanced_dparams.xml:
10295         * docs/pwg/advanced_scheduling.xml:
10296           Change index layout slightly.
10297
10298 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10299
10300         * docs/pwg/advanced_clock.xml:
10301         * docs/pwg/advanced_interfaces.xml:
10302         * docs/pwg/advanced_midi.xml:
10303           General placeholders for now.
10304         * docs/pwg/advanced_request.xml:
10305           Explanation about sometimes and request pads.
10306         * docs/pwg/advanced_scheduling.xml:
10307           Concept of bytestream, loopfunctions and schedulers.
10308         * docs/pwg/building_boiler.xml:
10309           Add something about plugin-init.
10310
10311 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10312
10313         * docs/pwg/building_pads.xml:
10314           Fix broken docbook
10315
10316 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10317
10318         * docs/pwg/advanced_interfaces.xml:
10319         * docs/pwg/pwg.xml:
10320           Add as a placeholder for future filling-in.
10321         * docs/pwg/basics_autoplugging.xml:
10322         * docs/pwg/basics_buffers.xml:
10323         * docs/pwg/basics_elements.xml:
10324         * docs/pwg/basics_events.xml:
10325         * docs/pwg/basics_plugins.xml:
10326         * docs/pwg/basics_types.xml:
10327           Remove, because unused (this is all in intro_basics.xml).
10328         * docs/pwg/building_signals.xml:
10329           Short intro to signals + reference to GObject docs - we really
10330           shouldn't go into these sort of things to deply because we don't
10331           use them that extensively anyway.
10332         * docs/pwg/building_state.xml:
10333           Explanation of states. Benjamin, please check.
10334         * docs/pwg/building_testapp.xml:
10335           Put everything in one page - putting only a few lines of content
10336           per page doesn't really make sense.
10337
10338           Time to get into the advanced topics. ;).
10339
10340 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10341
10342         * docs/pwg/advanced_types.xml:
10343           Finish documenting the current state of mimetypes.
10344         * docs/pwg/building_boiler.xml:
10345         * docs/pwg/building_chainfn.xml:
10346         * docs/pwg/building_pads.xml:
10347         * docs/pwg/building_props.xml:
10348         * docs/pwg/building_testapp.xml:
10349           Start documenting the "how to build a simple audio filter" part
10350           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10351           states and (maybe?) a short introduction to capsnego in the chapter
10352           on pads (building_pads.xml). Capsnego should probably be explained
10353           fully in advanced_capsnego.xml or so.
10354
10355 2004-01-26  David Schleef  <ds@schleef.org>
10356
10357         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10358         * gst/gstpad.h: Add new function to allow element to (somewhat)
10359         specify non-fixed caps on a pad.
10360         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10361         that I added a few weeks ago.
10362
10363 2004-01-26  David Schleef  <ds@schleef.org>
10364
10365         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10366           making try_set_caps() work with non-fixed caps.
10367
10368 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10369
10370         * docs/pwg/advanced_types.xml:
10371         * docs/pwg/intro_basics.xml:
10372         * docs/pwg/intro_preface.xml:
10373         * docs/pwg/pwg.xml:
10374         * docs/pwg/titlepage.xml:
10375           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10376           in here (docs/random/mimetypes), and will from there on work on both
10377           updating outdated parts and adding missing parts.
10378           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10379
10380 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10381
10382         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10383           policy is set
10384
10385 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10386
10387         * gst/gstelement.h:
10388           remove gst_element_factory_get_version. It doesn't exist anymore.
10389         * gst/gstplugin.c:
10390         * gst/gstplugin.h:
10391           remove gst_plugin_set_name and change gst_plugin_get_longname to
10392           gst_plugin_get_description to match code.
10393         * gst/gsterror.h:
10394           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10395         * gst/gstpad.c: (gst_pad_try_set_caps):
10396           make it work with nonfixed caps.
10397           Note that even in the nonfixed case the link function of the pad
10398           that tries to set caps isn't called.
10399
10400 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10401
10402         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10403           fix bug where buffer was not assembled correctly
10404         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10405           silence by default
10406         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10407           only seek if there's no more buffers that could work without seeking
10408
10409 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10410
10411         * gst/gsttag.c: (_gst_tag_initialize):
10412         * gst/gsttag.h:
10413           Add application tag (for encoding/muxing app).
10414
10415 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10416
10417         * autogen.sh:
10418           make autopoint force, and libtoolize not copy
10419         * common/m4/as-docbook.m4:
10420           added docbook xml catalog setup check
10421         * common/m4/gst-doc.m4:
10422           use docbook check
10423
10424 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10425
10426         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10427         * gst/gsttag.h:
10428           add GstTagFlag
10429
10430 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10431
10432         * docs/gst/gstreamer-sections.txt:
10433         * docs/gst/tmpl/gst.sgml:
10434         * docs/gst/tmpl/gstbuffer.sgml:
10435         * docs/gst/tmpl/gstclock.sgml:
10436         * docs/gst/tmpl/gstelement.sgml:
10437         * docs/gst/tmpl/gstreamer-unused.sgml:
10438         * docs/gst/tmpl/gstxml.sgml:
10439           sync latest API changes to docs
10440
10441 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10442
10443         * gst/gstpluginfeature.c:
10444           fix doc snippet
10445         * tools/gst-inspect.c: (print_element_list):
10446           fix output of typefind
10447           add GPL header
10448         * tools/gst-launch.c:
10449           add GPL header
10450
10451 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10452
10453         * gst/elements/Makefile.am:
10454         * gst/elements/gstelements.c:
10455         * gst/elements/gsttypefindelement.c:
10456         * gst/elements/gsttypefindelement.h:
10457         * po/POTFILES.in:
10458         * po/fr.po:
10459         * po/nl.po:
10460           renamed gsttypefindelement to gsttypefind, conserving CVS history
10461
10462 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10463
10464         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10465         * gst/gsttag.h:
10466           add some tags used in ogg as well
10467           fix _ in replaygain tags
10468
10469 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10470
10471         * gst/gsterror.h:
10472           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10473
10474 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10475
10476         * gst/gstelement.c: (gst_element_error_full):
10477         * gst/gstelement.h:
10478           change _extended to _full
10479
10480 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10481
10482         reviewed by: <delete if not using a buddy>
10483
10484         * docs/gst/tmpl/gst.sgml:
10485         * docs/gst/tmpl/gstbuffer.sgml:
10486         * docs/gst/tmpl/gstclock.sgml:
10487         * docs/gst/tmpl/gstelement.sgml:
10488         * docs/gst/tmpl/gstreamer-unused.sgml:
10489         * docs/gst/tmpl/gstxml.sgml:
10490         * gst/gstelement.c: (gst_element_error_full):
10491         * gst/gstelement.h:
10492
10493 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10494
10495         * gst/gstelement.h: fix _gst_element_error_printf prototype
10496
10497 2004-01-20  David Schleef  <ds@schleef.org>
10498
10499         * gst/gststructure.c: (gst_structure_to_string):
10500         Convert function to use gst_value_serialize().
10501         * gst/gstvalue.c: (gst_value_serialize_list),
10502         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10503         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10504         (gst_value_serialize_int), (gst_value_serialize_double),
10505         (gst_string_wrap), (gst_value_serialize_string),
10506         (gst_value_serialize), (gst_value_deserialize):
10507         * gst/gstvalue.h:
10508         Add implementations for serialize.
10509
10510 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10511
10512         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10513         we want to keep that one in the future or change xvidenc.c to use 
10514         another error.
10515
10516 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10517
10518         * gst/gstelement.c: (_gst_element_error_printf):
10519         * gst/gstelement.h:
10520           privatise function
10521
10522 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10523
10524         * docs/random/error:
10525           doc explaining error system
10526         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10527           cleanup
10528
10529 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10530
10531         * gst/gst-i18n-app.h:
10532         * gst/gst-i18n-lib.h:
10533           remove inclusion of config.h
10534         * po/POTFILES.in:
10535         * po/nl.po:
10536           add gst/gstelement.c
10537
10538 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10539
10540         * po/nl.po: updated Dutch translation
10541
10542 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10543
10544         * gst/gsterror.c: (_gst_core_errors_init),
10545         (_gst_library_errors_init), (_gst_resource_errors_init),
10546         (_gst_stream_errors_init):
10547         remove ending punctuation dots
10548
10549 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10550
10551         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10552         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
10553         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10554         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10555         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10556         use GST_ERROR_SYSTEM
10557
10558 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10559
10560         * gst/gstelement.c: (gst_element_error_printf),
10561         (gst_element_error_extended):
10562         * gst/gstelement.h:
10563           add a helper printf function so we can have NULL values passed.
10564
10565 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10566
10567         * gst/gstelement.h:
10568           add G_STMT macros to gst_element_error, which isn't strictly
10569           necessary but people tell me to anyway.
10570
10571 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10572
10573         * gst/Makefile.am:
10574         * gst/autoplug/gstspideridentity.c:
10575         (gst_spider_identity_sink_loop_type_finding):
10576         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10577         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10578         (gst_filesink_close_file), (gst_filesink_handle_event),
10579         (gst_filesink_chain):
10580         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
10581         (gst_filesrc_map_region), (gst_filesrc_get_read),
10582         (gst_filesrc_open_file):
10583         * gst/elements/gstidentity.c: (gst_identity_chain):
10584         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10585         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10586         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10587         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
10588         * gst/gst.h:
10589         * gst/gst_private.h:
10590         * gst/gstelement.c: (gst_element_class_init),
10591         (gst_element_default_error), (gst_element_error_func),
10592         (gst_element_error_extended):
10593         * gst/gstelement.h:
10594         * gst/gsterror.c: (_gst_core_errors_init),
10595         (_gst_library_errors_init), (_gst_resource_errors_init),
10596         (_gst_stream_errors_init), (gst_error_get_message):
10597         * gst/gsterror.h:
10598         * gst/gstinfo.c: (_gst_debug_init):
10599         * gst/gstmarshal.list:
10600         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10601         (gst_pad_recover_caps_error), (gst_pad_pull):
10602         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10603         * gst/schedulers/gstbasicscheduler.c:
10604         (gst_basic_scheduler_chainhandler_proxy),
10605         (gst_basic_scheduler_gethandler_proxy),
10606         (gst_basic_scheduler_cothreaded_chain):
10607         * po/POTFILES.in:
10608         * po/fr.po:
10609         * po/nl.po:
10610           change error signal
10611           add error categories
10612
10613 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
10614
10615         * gst/gsttag.c: (_gst_tag_initialize):
10616         * gst/gsttag.h:
10617         Add replaygain tag
10618
10619 2004-01-18  Colin Walters  <walters@verbum.org>
10620
10621         * examples/retag/retag.c: Call gst_init before processing
10622         program args.  Add g_assert to _link_many call.
10623
10624 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10625
10626         * gst/gstpad.c: (gst_pad_alloc_buffer):
10627           Return a newly allocated buffer when the pad has no peer.
10628
10629 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10630
10631         * gst/gstclock.c: (gst_clock_get_time):
10632           make it compile with gcc 2.95 again.
10633           Patch by Scott Wheeler
10634
10635 2004-01-15  David Schleef  <ds@schleef.org>
10636
10637         * gst/gstcaps.h:
10638         Added gst_caps_is_simple() macro.
10639         * testsuite/caps/caps.c: (test1):
10640         * testsuite/caps/intersect2.c: (main):
10641         * testsuite/caps/intersection.c: (main):
10642         Fixes to make 'make check' work again after removing
10643         gst_caps_is_chained().
10644
10645 2004-01-15  Leif Johnson <leif@ambient.2y.net>
10646
10647         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
10648         and additions to the MIDI document.
10649
10650 2004-01-15  David Schleef  <ds@schleef.org>
10651
10652         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
10653         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
10654         of GST_RPAD_, since we don't know if it's a real or ghost pad.
10655
10656 2004-01-15  David Schleef  <ds@schleef.org>
10657
10658         * gst/gstqueue.c:
10659         * gst/gstqueue.h:
10660         Fix the spelling of "treshold" and make min_threshold actually
10661         affect the queue.
10662
10663 2004-01-15  David Schleef  <ds@schleef.org>
10664
10665         * gst/gstcaps.c:
10666         Add lots of documentation.
10667         * gst/gstcaps.h:
10668         Deprecate a few functions.
10669         * gst/gstpad.c:
10670         Removed use of deprecated functions.
10671
10672 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10673
10674         * gst/gstpad.c: (gst_pad_is_linked):
10675         * gst/gstpad.h:
10676           implement gst_pad_is_linked
10677         * gst/gstelement.h:
10678           reserve space for initiate_state_change
10679
10680 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10681
10682         * gst/autoplug/gstspideridentity.c:
10683         (gst_spider_identity_sink_loop_type_finding):
10684           break infinite loop by just returning instead of looping
10685         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
10686           set event time difference correctly. Set it to 1 second instead
10687           of 100ms to be more tolerant
10688         * gst/gstelement.c: (gst_element_set_time):
10689           add debugging output
10690
10691 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10692
10693         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
10694           query if buffers are inside the pool, ignore events
10695
10696 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10697
10698         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
10699         (gst_clock_set_speed), (gst_clock_set_active),
10700         (gst_clock_is_active), (gst_clock_reset),
10701         (gst_clock_handle_discont):
10702         * gst/gstclock.h:
10703           deprecate old interface and disable functions that aren't in use
10704           anymore.
10705         * gst/gstelement.h:
10706         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
10707         (gst_element_set_time), (gst_element_adjust_time):
10708           add concept of "element time" and functions to get/set this time.
10709         * gst/gstelement.c: (gst_element_change_state):
10710           update element time correctly.
10711         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10712           This is a debug message, not a g_critical.
10713         * gst/gstpad.c: (gst_pad_event_default):
10714           handle discontinuous events right with element time.
10715         * gst/gstscheduler.c: (gst_scheduler_state_transition):
10716           update to clocking fixes.
10717           set clocks on elements in READY=>PAUSED. The old behaviour caused
10718           a wrong element time on the first element that started playing.
10719         * gst/schedulers/gstbasicscheduler.c:
10720         (gst_basic_scheduler_class_init):
10721         * gst/schedulers/gstoptimalscheduler.c:
10722         (gst_opt_scheduler_class_init):
10723           remove code that just implements the default behaviour.
10724         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
10725           update to use new clocking functions
10726         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
10727         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
10728           update to test new element time.
10729         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
10730           use _get_allowed_caps instead of _get_caps. This catches filtered
10731           caps correctly.
10732         * testsuite/debug/commandline.c:
10733           update for new GST_DEBUG syntax.
10734         * testsuite/threads/Makefile.am:
10735           disable a test that only works sometimes.
10736
10737 2004-01-13  Julien MOUTTE <julien@moutte.net>
10738
10739         * po/LINGUAS: Adding fr.
10740         * po/fr.po: Adding french translation.
10741
10742 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10743
10744         * gst/parse/grammar.y:
10745         * po/POTFILES.in:
10746         * po/nl.po:
10747         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
10748           translate parsing error messages
10749
10750 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10751
10752         * po/POTFILES.in: adding gst-launch
10753         * po/nl.po: updated translation, all 99 strings translated
10754         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
10755         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
10756           fix strings for translation
10757
10758 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10759
10760         * gst/gst.c:
10761           - capitalize beginnings of popt options
10762           - fix strings for translation
10763           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
10764
10765 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10766
10767         * po/README: add some notes on how to update translations
10768
10769 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10770
10771         * ABOUT-NLS: removed, is autogenerated from autopoint
10772         * autogen.sh: add autopoint stuff
10773         * configure.ac: fix up gettext stuff
10774         * gst/Makefile.am: add i18n headers to noinst_HEADERS
10775         * gst/elements/gsttypefindelement.c: add header include
10776         * gst/gettext.h: add header, copy from system-installed header
10777         * gst/gst-i18n-app.h: to be included by each app having translations
10778         * gst/gst-i18n-lib.h: to be included by each lib having translations
10779         * gst/gst.c: (init_pre): fix up gettext calls
10780         * gst/gst_private.h: remove i18n stuff, moving to separate headers
10781         * po/LINGUAS: the new way to specify translations present
10782         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
10783         * po/Makevars: the variables filled in for GStreamer
10784         * po/POTFILES.in: added new files with translations
10785         * po/de.po: has new strings
10786         * po/nl.po: readded, has new strings
10787
10788 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10789
10790         * gst/gsttag.c: fix some strings marked for translation
10791
10792 2004-01-13  Iain <iain@prettypeople.org>
10793
10794         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
10795         group when we add an element to it, cos we unref it when we remove one
10796
10797 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10798
10799         * testsuite/debug/commandline.c: (debug_not_reached):
10800         * testsuite/debug/output.c: (check_message):
10801           fix testsuite
10802
10803 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10804
10805         * examples/cutter/.cvsignore:
10806         * examples/helloworld/.cvsignore:
10807         * examples/launch/.cvsignore:
10808         * examples/manual/.cvsignore:
10809         * examples/mixer/.cvsignore:
10810         * examples/pingpong/.cvsignore:
10811         * examples/plugins/.cvsignore:
10812         * examples/queue/.cvsignore:
10813         * examples/queue2/.cvsignore:
10814         * examples/queue3/.cvsignore:
10815         * examples/queue4/.cvsignore:
10816         * examples/retag/.cvsignore:
10817         * examples/thread/.cvsignore:
10818         * examples/typefind/.cvsignore:
10819         * examples/xml/.cvsignore:
10820         * gst/.cvsignore:
10821         * gst/autoplug/.cvsignore:
10822         * gst/elements/.cvsignore:
10823         * gst/indexers/.cvsignore:
10824         * gst/parse/.cvsignore:
10825         * gst/registries/.cvsignore:
10826         * gst/schedulers/.cvsignore:
10827         * libs/gst/bytestream/.cvsignore:
10828         * libs/gst/control/.cvsignore:
10829         * libs/gst/getbits/.cvsignore:
10830         * tests/.cvsignore:
10831         * tests/bufspeed/.cvsignore:
10832         * tests/instantiate/.cvsignore:
10833         * tests/memchunk/.cvsignore:
10834         * tests/muxing/.cvsignore:
10835         * tests/sched/.cvsignore:
10836         * tests/seeking/.cvsignore:
10837         * tests/threadstate/.cvsignore:
10838         * testsuite/.cvsignore:
10839         * testsuite/caps/.cvsignore:
10840         * testsuite/cleanup/.cvsignore:
10841         * testsuite/dynparams/.cvsignore:
10842         * testsuite/plugin/.cvsignore:
10843         * tools/.cvsignore:
10844           update - this is huge, because it includes *.bb, *.bbg and *.da files
10845           which are generated for gcov.
10846
10847 2004-01-11  David Schleef  <ds@schleef.org>
10848
10849         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
10850         a function to parse integers in ways that strto[u]l() does not.
10851
10852 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10853
10854         * tools/gst-inspect.c: (print_caps):
10855           improve output of caps a bit
10856
10857 2004-01-11  David Schleef  <ds@schleef.org>
10858
10859         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
10860         inherit correct flags (READONLY and DONTKEEP).
10861
10862 2004-01-11  David Schleef  <ds@schleef.org>
10863
10864         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
10865         (gst_filesrc_map_region):
10866         * gst/gstbuffer.c: (_gst_buffer_initialize),
10867         (_gst_buffer_sub_free), (gst_buffer_default_copy),
10868         (gst_buffer_new), (gst_buffer_create_sub),
10869         (gst_buffer_is_span_fast), (gst_buffer_span):
10870         * gst/gstbuffer.h:
10871         Change GstBuffer private structure element names. (all files)
10872         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
10873         (gst_queue_link):
10874         * gst/gstqueue.h:
10875         Implement getcaps/pad_link functions that handle the case where
10876         there are data in the queue.
10877
10878 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10879
10880         * gst/elements/gstbufferstore.c:
10881           initialize debugging structure correctly
10882         * gst/elements/gsttee.c: (gst_tee_set_property):
10883           g_object_notify when property was changed
10884         * gst/elements/gsttypefindelement.c:
10885         (gst_type_find_element_change_state):
10886           clear caps correctly
10887
10888 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10889
10890         * gst/gstqueue.c: (gst_queue_init):
10891           Use better defaults for when a queue should block. This
10892           gets rid of jerky playback for quite a few files.
10893           It takes more memory.
10894
10895 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10896
10897         (gst_xml_registry_parse_padtemplate):
10898           make critical message slightly more useful
10899
10900 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10901
10902         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
10903         (gst_debug_message_get), (gst_debug_log_default):
10904         * gst/gstinfo.h:
10905           Change gst_debug_log(_valist) to take a const format string.
10906           Change prototype of log function and functions using those to 
10907           take a GstDebugMessage instead of a string that requires using
10908           gst_debug_message_get.
10909
10910 2004-01-08  David Schleef  <ds@schleef.org>
10911
10912         * Makefile.am:
10913         * configure.ac:
10914         Add option --enable-gcov to build GStreamer with -fprofile-arcs
10915         and -ftest-coverage, which allows gcov to show information about
10916         testsuite coverage.
10917
10918 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10919
10920         * gst/gstutils.h:
10921           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
10922           GST_PARENT_CALL_WITH_DEFAULT
10923         * gst/elements/gstaggregator.c: 
10924         * gst/elements/gstbufferstore.c: 
10925         * gst/elements/gstfakesink.c: 
10926         * gst/elements/gstfakesrc.c: 
10927         * gst/elements/gstfdsink.c: 
10928         * gst/elements/gstfdsrc.c: 
10929         * gst/elements/gstfilesink.c: 
10930         * gst/elements/gstfilesrc.c: 
10931         * gst/elements/gstidentity.c: 
10932         * gst/elements/gstmd5sink.c: 
10933         * gst/elements/gstmultidisksrc.c:
10934         * gst/elements/gstpipefilter.c: 
10935         * gst/elements/gstshaper.c:
10936         * gst/elements/gststatistics.c:
10937         * gst/elements/gsttee.c:
10938         * gst/elements/gsttypefindelement.c:
10939           use them.
10940
10941 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10942
10943         * docs/gst/gstreamer-docs.sgml: remove props
10944         * docs/gst/gstreamer-sections.txt: remove props
10945         * docs/gst/tmpl/gst.sgml:
10946         * docs/gst/tmpl/gstbin.sgml:
10947         * docs/gst/tmpl/gstbuffer.sgml:
10948         * docs/gst/tmpl/gstcaps.sgml:
10949         * docs/gst/tmpl/gstclock.sgml:
10950         * docs/gst/tmpl/gstelement.sgml:
10951         * docs/gst/tmpl/gstindex.sgml:
10952         * docs/gst/tmpl/gstobject.sgml:
10953         * docs/gst/tmpl/gstpad.sgml:
10954         * docs/gst/tmpl/gstpadtemplate.sgml:
10955         * docs/gst/tmpl/gstreamer-unused.sgml:
10956         * docs/gst/tmpl/gstthread.sgml:
10957         * docs/gst/tmpl/gstxml.sgml:
10958           sync with code reorganization
10959
10960 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
10961
10962         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10963         Make the 'Could not find compatible pad' message more informative.
10964
10965 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10966                                                                                 
10967         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
10968           Fix for if we pass NULL as property to location.
10969         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
10970         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
10971           Fix for instantiate-test (see below).
10972         * gst/gststructure.c: (_gst_structure_parse_value):
10973           Fix compile error on gcc-2.96.
10974         * configure.ac:
10975         * tests/Makefile.am:
10976         * tests/instantiate/Makefile.am:
10977         * tests/instantiate/create.c: (create_all_elements), (main):
10978           Add a test that instantiates all elements. This makes it easy to
10979           track dead code for old API/design (like setting event functions
10980           on sink pads and so on).
10981
10982 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
10983
10984         * gst/gstcaps.c: (gst_caps_append_structure):
10985           Move the poisoning to allow a NULL structure
10986         * gst/gstevent.c: (_gst_event_free):
10987           When freeing a navigation event, free the structure
10988           also
10989
10990 2004-01-04  David Schleef  <ds@schleef.org>
10991
10992         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10993         Remove usage of gst_pad_proxy_fixate.
10994         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
10995         (gst_caps_split_one), (gst_caps_replace):
10996         Add poisoning code.
10997         * gst/gstmarshal.list:
10998         Add pointer__pointer for fixate signal
10999         * gst/gstpad.c: (gst_real_pad_class_init),
11000         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11001         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11002         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11003         Add poisoning code. Add fixate signal on RealPad. Change
11004         set_explicit_caps() to take const GstCaps, like try_set_caps().
11005         * gst/gstpad.h:
11006         * testsuite/caps/Makefile.am:
11007         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11008
11009 2004-01-03  David Schleef  <ds@schleef.org>
11010
11011         * gst/elements/gsttypefindelement.c:
11012         (gst_type_find_element_have_type), (gst_type_find_element_init):
11013         Use gst_pad_use_explicit_caps for src pad.
11014         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11015         before using it.
11016
11017 2004-01-03  David Schleef  <ds@schleef.org>
11018
11019         * gst/gstelement.c: (gst_element_link_pads_filtered),
11020         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11021         that linking was successful.
11022         * gst/gstpad.c: (gst_pad_link_free),
11023         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11024         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11025         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11026         GstPadLinkReturn correctly between functions, and don't fail
11027         when DELAYED is used (DELAYED is very important).  Better
11028         cleanup on unlinking and unnegotiation.  Should fix some spider
11029         bugs.
11030
11031 2004-01-02  David Schleef  <ds@schleef.org>
11032
11033         * gst/gstelement.c: (gst_element_class_init),
11034         (gst_element_base_class_init): ->padtemplates should be cleared
11035         in base_init, since we need to have a fresh list for every
11036         class.  (Alternately, we chould copy the list and share the
11037         actual pad templates (not the list), but that would require
11038         changing every plugin to move pad template registration from
11039         base_init to class_init.)
11040
11041 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11042
11043         * gst/gstelement.c: (gst_element_class_add_pad_template):
11044           Refuse registering a pad template if another pad template
11045           with the same name already exists (#114715).
11046
11047 2004-01-02  David Schleef  <ds@schleef.org>
11048
11049         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11050         (gst_caps_is_equal_fixed): Add new function.
11051         * gst/gstcaps.h: ditto.
11052         * gst/gstpad.c: (gst_real_pad_class_init),
11053         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11054         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11055         check new caps against existing caps -- if they're the same, return
11056         OK without renegotiating.  caps-nego-failed signal fixed so that
11057         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11058         to save an extra caps copy.  Don't complete negotiation if a pad
11059         link function returns DELAYED.
11060
11061 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11062
11063         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11064           Fix wrong g_return_if_fail
11065
11066 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11067
11068         * gst/gstbin.c: (gst_bin_class_init):
11069         Change the marshalling of element_added/element_removed
11070         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11071         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11072
11073 2004-01-01  David Schleef  <ds@schleef.org>
11074
11075         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11076         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11077         (gst_pad_use_explicit_caps):
11078         * gst/gstpad.h:
11079         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11080         to use an internal getcaps and link fuction so that negotiation
11081         always results in the explicitly set caps.
11082         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11083         are particularly useful for decoders.
11084
11085 2003-12-31  David Schleef  <ds@schleef.org>
11086
11087         * gst/elements/gstidentity.c: (gst_identity_class_init),
11088         (gst_identity_init), (gst_identity_chain),
11089         (gst_identity_set_property), (gst_identity_get_property):
11090         * gst/elements/gstidentity.h:
11091         * gst/gstqueue.c: (gst_queue_init):
11092           Negotiation fixes.
11093
11094 2003-12-31  David Schleef  <ds@schleef.org>
11095
11096         * gst/gstcaps.c: (gst_caps_intersect),
11097         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11098           Implement gst_caps_normalize().
11099         * testsuite/caps/normalisation.c: (main):
11100           Add an additional test
11101
11102 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11103
11104         * gst/gstqueue.c: (gst_queue_init):
11105           use gst_pad_proxy_getcaps()
11106
11107 2003-12-31  David Schleef  <ds@schleef.org>
11108
11109         * gst/elements/gstshaper.c: (gst_shaper_link):
11110         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11111         * gst/gstqueue.c: (gst_queue_link):
11112           Negotiation fixes.
11113
11114 2003-12-31  David Schleef  <ds@schleef.org>
11115
11116         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11117         * gst/gstpad.h: Add functions that are useful as default pad
11118         link and fixate functions for elements.
11119
11120 2003-12-30  David Schleef  <ds@schleef.org>
11121
11122         * gst/gstpad.c: (gst_pad_link_try):
11123           Fix segfault when attempting to return to old caps
11124
11125 2003-12-29  David Schleef  <ds@schleef.org>
11126
11127         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11128         (gst_caps_structure_simplify), (gst_caps_simplify):
11129         * gst/gstcaps.h:
11130           Add simplify function
11131         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11132         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11133         * gst/gstpad.h:
11134           Copy over srcnotify, sinknotify when calling old pad_link
11135           functions.  Add new is_negotiated() function.
11136         * gst/gststructure.c: (gst_structure_copy):
11137           Fix an incredibly stupid bug that should have been noticed
11138           weeks ago.  _copy() returned the argument, not the new copy.
11139
11140 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11141
11142         * gst/gstcaps.c: (gst_caps_append):
11143           add sanity checks
11144         * gst/gstcaps.h: (gst_caps_debug):
11145           remove, it doesn't exist anymore.
11146         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11147         (gst_element_threadsafe_properties_post_run):
11148           make debugging messages not clutter up THREAD debug category
11149         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11150         (gst_element_change_state):
11151           update to new caps API
11152         * gst/gstinterface.c: (gst_implements_interface_cast):
11153           don't put vital code in g_return_if_fail
11154         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11155         (gst_pad_link_filtered):
11156           add pst_pad_try_link and use it.
11157         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11158           implement correctly, deprecate first one.
11159         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11160           add and implement.
11161         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11162           implement.
11163         (gst_pad_get_negotiated_caps):
11164           add and implement. Make GST_PAD_CAPS call this function.
11165         (gst_pad_get_caps):
11166           remove unneeded check..
11167         (gst_pad_recover_caps_error):
11168           disable, always return FALSE.
11169         (gst_real_pad_dispose):
11170           don't free caps and appfilter anymore, they're unused.
11171         * gst/gstpad.h:
11172           Reflect changes mentioned above.
11173         * gst/gstsystemclock.c: (gst_system_clock_wait):
11174           Make 'clock is way behind' a debugging message.
11175         * gst/gstthread.c: (gst_thread_change_state):
11176           Fix debugging message
11177
11178 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11179
11180         * gst/gstinfo.h:
11181           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11182         * docs/gst/tmpl/gstreamer-unused.sgml:
11183           removed all traces of cvs conflicts
11184
11185 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11186
11187         * configure.ac:
11188         * gst/schedulers/cothreads_compat.h:
11189         * libs/Makefile.am:
11190           remove last instances of wingo cothread usage
11191
11192 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11193
11194         * gst/gstplugin.c:
11195         * gst/gstversion.h.in:
11196         * gst/parse/grammar.y:
11197           change comment block from /** to /* when not gtk-doc comments
11198
11199 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11200
11201         * gst/gst.c: whitespace and doc style fixes
11202
11203 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11204
11205         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11206
11207 2003-12-24  Colin Walters  <walters@verbum.org>
11208
11209         * gst/elements/gsttypefindelement.c:
11210           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11211           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11212           Don't double-free caps.
11213
11214 2003-12-23  David Schleef  <ds@schleef.org>
11215
11216         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11217           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11218           Many little fixes and additions of debug statements to
11219           get rhythmbox working.
11220
11221 2003-12-23  Colin Walters  <walters@verbum.org>
11222
11223         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11224         Use GST_PAD_LINK_SUCCESSFUL.
11225
11226 2003-12-23  David Schleef  <ds@schleef.org>
11227
11228         * gst/elements/gstaggregator.c:
11229         * gst/elements/gsttee.c:
11230           Use gst_pad_proxy_getcaps().
11231         * gst/gstpad.c:
11232         * gst/gstpad.h:
11233           Add gst_pad_proxy_getcaps(), which filter elements can use
11234           as a generic getcaps implementation.
11235           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11236           was advertised.
11237
11238 2003-12-23  David Schleef  <ds@schleef.org>
11239
11240         * gst/gstpad.c:
11241           Rearrange/rewrite much of the pad negotiation code, since it
11242           resembled pasta.  This actually changes the way some
11243           negotiation works, since the previous code was inconsistent
11244           depending on how it was invoked.  Add (internal) structure
11245           GstPadLink, which is used to hold some information (more in
11246           the future) about the link between two pads.  Fixes a number
11247           of bugs, including random lossage of filter caps when the
11248           initial negotiation is delayed.  A few functions are still
11249           unimplemented.
11250         * gst/gstpad.h:
11251           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11252           these when testing GstPadLinkReturn values instead of comparing
11253           directly.
11254
11255 2003-12-23  David Schleef  <ds@schleef.org>
11256
11257         * gst/gstvalue.c: 
11258         * gst/gstvalue.h:
11259           Rearrange lots of code.  Change registration of compare function
11260           into registration of compare/serialize/deserialize functions.
11261           Doesn't include implementation of gst_value_[de]serialize(),
11262           but that should be easy.
11263
11264 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11265
11266         * docs/gst/gstreamer-sections.txt:
11267         * docs/gst/tmpl/gstprops.sgml: removed
11268         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11269           David removed props and caps code, so let's remove their docs as well.
11270           Removed all no longer existing symbols from gstreamer-sections.txt
11271           
11272 2003-12-22  Colin Walters  <walters@verbum.org>
11273
11274         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11275           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11276           of tags directly.
11277
11278 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11279
11280         * gst/elements/gstelements.c:
11281           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11282         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11283           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11284           gst_caps (peer).
11285
11286 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11287
11288         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11289         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11290         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11291         (gst_spider_identity_sink_loop_type_finding):
11292         * gst/autoplug/gstspideridentity.h:
11293           Fix autoplugging in spider element, so it works with new caps.
11294           This was mainly caused by identifying empty caps incorrectly.
11295
11296 2003-12-22  David Schleef  <ds@schleef.org>
11297
11298         * gststructure.c, gstvalue.c, gstvalue.h: Add
11299           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11300           using g_value_copy()
11301
11302 2003-12-21  David Schleef  <ds@schleef.org>
11303
11304         * many, many files: Merge CAPS branch.  This includes:
11305           - implemention of GstValue and several GstValue types
11306           - implemention of GstStructure
11307           - entire rewrite of GstCaps
11308           - removal of GstProps
11309           - many changes to GstPad to compensate for new caps paradigm
11310           - removal of GstBufferpool
11311         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11312         gstvalue.h, gst/gstcaps[2]*.[ch]:
11313           - rename gstcaps2.[ch] to gstcaps.[ch]
11314
11315 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11316
11317         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11318         (gst_queue_chain), (gst_queue_handle_src_event):
11319           implement timeout for sending events. Workaround for if the
11320           pipeline on this queue is not passing any data.
11321
11322 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11323                                                                                 
11324         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11325         * moved CVS to freedesktop.org
11326