gst/elements/gstcapsfilter.c: Allow NULL as possible value for filter_caps property...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-16  David Schleef  <ds@schleef.org>
2
3         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
4         (gst_capsfilter_set_property): Allow NULL as possible value
5         for filter_caps property, indicating GST_CAPS_ANY.
6
7 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8
9         * gstreamer.spec.in:
10           clean up
11
12 2005-06-08  Andy Wingo  <wingo@pobox.com>
13
14         * gst/gstutils.c: RPAD fixes all around.
15         (gst_element_link_pads): Refcounting fixes.
16
17         * tools/gst-inspect.c:
18         * tools/gst-xmlinspect.c:
19         * parse/grammar.y:
20         * gst/base/gsttypefindhelper.c:
21         * gst/base/gstbasesink.c:
22         * gst/gstqueue.c: RPAD fixes.
23
24         * gst/gstghostpad.h:
25         * gst/gstghostpad.c: New ghost pad implementation as full proxy
26         pads. The tricky thing is they provide both source and sink
27         interfaces, since they proxy the internal pad for the external
28         pad, and vice versa. Implement with lower-level ProxyPad objects,
29         with the interior proxy pad as a child of the exterior ghost pad.
30         Should write a doc on this.
31         
32         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
33         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
34         gst_object API.
35         
36         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
37         pads are real pads. No ghost pads in this file. Not documenting
38         the myriad s/RPAD/PAD/ and REALIZE fixes.
39         (gst_pad_class_init): Add properties for "direction" and
40         "template". Both are construct-only, so they can't change during
41         the life of the pad. Fixes properly deriving from GstPad.
42         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
43         derived objects, just set properties when creating the objects via
44         g_object_new.
45         (gst_pad_get_parent): Implement as a function, return NULL if the
46         parent is not an element.
47         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
48         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
49         
50         * gst/gstobject.c (gst_object_class_init): Make name a construct
51         property. Don't set it in the object init.
52
53         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
54         with UNKNOWN direction.
55         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
56         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
57         (gst_element_remove_pad): Remove ghost-pad special cases.
58         (gst_element_pads_activate): Remove rpad cruft.
59
60         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
61         catch the pad's-parent-not-an-element case.
62
63         * gst/gst.h: Include gstghostpad.h.
64
65         * gst/gst.c (init_post): No more real, ghost pads.
66
67         * gst/Makefile.am: Add gstghostpad.[ch].
68
69         * check/Makefile.am:
70         * check/gst/gstbin.c:
71         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
72         into a bin creates ghost pads, and that the refcounts are right.
73         Partly moved from gstbin.c.
74
75 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
76
77         * check/gst-libs/.cvsignore:
78         * check/gst/.cvsignore:
79         * check/pipelines/.cvsignore:
80           ignore more
81         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
82         (START_TEST), (cleanup_suite), (main):
83           add some tests related to cleanup after running pipelines
84
85 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
86
87         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
88           add a testsuite for GstBuffer
89
90 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
91
92         * gst/gstminiobject.h:
93           add defines for accessing the refcount
94
95 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
96
97         * Makefile.am: added support for html unit test coverage reports
98
99 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
100
101         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
102           Free existing caps if the capsfilter changes. Add a FIXME about
103           setting those caps on the pads.
104
105         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
106           Before adding a ghost pad to a parent bin, check that there isn't
107           already one for the element on the bin. Prevents infinite recursion
108           when using decodebin in parse pipelines. Andy says he'll rewrite the
109           way this works anyway, so ignore the hack.
110
111 2005-06-02  Andy Wingo  <wingo@pobox.com>
112
113         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
114         file size, pass it on to the type find helper.
115
116         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
117         segment_start and segment_end properly according to the seek
118         method. Segment_end is still a bit flaky because offset can be
119         negative for CUR and END cases, but it takes -1 as an "unset"
120         value.
121
122 2005-06-02  Wim Taymans  <wim@fluendo.com>
123
124         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
125         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
126         (gst_basesink_activate):
127         * gst/base/gstbasesink.h:
128         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
129         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
130         (gst_pad_query), (gst_pad_start_task):
131         * gst/gstpad.h:
132         * gst/gstqueue.c: (gst_queue_bufferalloc),
133         (gst_queue_handle_sink_event), (gst_queue_chain):
134         Bufferalloc: return GstFlowReturn to more accuratly report
135         why allocation failed.
136
137 2005-06-02  Wim Taymans  <wim@fluendo.com>
138
139         * gst/gstpipeline.c: (gst_pipeline_send_event):
140         Take snapshot of state without blocking.
141
142 2005-06-02  Wim Taymans  <wim@fluendo.com>
143
144         * docs/design/part-TODO.txt:
145         * docs/design/part-caps.txt:
146         * docs/design/part-clocks.txt:
147         * docs/design/part-negotiation.txt:
148         * docs/design/part-preroll.txt:
149         Small doc updates 
150
151 2005-05-30  Wim Taymans  <wim@fluendo.com>
152
153         * gst/elements/gstidentity.c: (gst_identity_event),
154         (gst_identity_transform), (gst_identity_get_property):
155         Protect last_message property as it is accessed from
156         multiple threads.
157
158 2005-05-30  Wim Taymans  <wim@fluendo.com>
159
160         * gst/gstelement.c: (gst_element_init),
161         (gst_element_pads_activate), (gst_element_change_state):
162         Slicker pad activation code.
163
164 2005-05-30  Wim Taymans  <wim@fluendo.com>
165
166         * gst/Makefile.am:
167         * gst/gstelement.h:
168         * gst/gstelementfactory.h:
169         * gst/gsttypes.h:
170         Move elementfactory methods to separate .h file.
171
172 2005-05-30  Wim Taymans  <wim@fluendo.com>
173
174         * docs/design/part-overview.txt:
175         * gst/gstsystemclock.h:
176         Small typo fixes, doc updates.
177
178 2005-05-30  Wim Taymans  <wim@fluendo.com>
179
180         * gst/gst.c: (gst_init_get_popt_table), (init_post),
181         (init_popt_callback):
182         Remove cpu-opt flag.
183
184 2005-05-30  Wim Taymans  <wim@fluendo.com>
185
186         * gst/gstbuffer.c: (gst_subbuffer_finalize),
187         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
188         * gst/gstbuffer.h:
189         Avoid typechecking in places where not needed.
190         Added accessor for malloc_data.
191
192 2005-05-30  Wim Taymans  <wim@fluendo.com>
193
194         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
195         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
196         (gst_pad_configure_sink), (gst_pad_configure_src),
197         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
198         (gst_pad_start_task):
199         Propagate errors from _set_caps() in configure_src/sink
200         functions instead of returning TRUE.
201         FLUSH events can travel up and downstream
202
203
204 2005-05-30  Wim Taymans  <wim@fluendo.com>
205
206         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
207         (gst_basesink_activate):
208         Handle EOS in preroll.
209
210 2005-05-30  Wim Taymans  <wim@fluendo.com>
211
212         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
213         (gst_queue_loop), (gst_queue_handle_src_event):
214         Remove old pieces of code
215         Flushing the queue in an upstream event is a very bad idea.
216
217 2005-05-26  Andy Wingo  <wingo@pobox.com>
218
219         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
220         gst_value_set_mini_object so as to add a ref on the object (which
221         will be removed when the value is unset).
222
223         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
224         arg type in ::handoff.
225
226         * gst/gstelement.c (gst_element_change_state): Also deactivate
227         pads in READY->NULL, just in case the element didn't make it to
228         PAUSED. Wingo tested, Wim approved.
229
230 2005-05-26  Wim Taymans  <wim@fluendo.com>
231
232         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
233         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
234         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
235         A flushing pad cannot be used to alloc_buffer from.
236
237 2005-05-26  Wim Taymans  <wim@fluendo.com>
238
239         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
240         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
241         (gst_bus_source_dispatch), (gst_bus_source_finalize),
242         (gst_bus_create_watch), (gst_bus_add_watch_full):
243         * gst/gstbus.h:
244         Implement a real GSource and use g_main_context_wakeup() to
245         signal new messages instead of the socketpair.
246
247 2005-05-25  Wim Taymans  <wim@fluendo.com>
248
249         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
250         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
251         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
252         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
253         (gst_pad_send_event), (gst_pad_start_task):
254         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
255         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
256         (gst_queue_sink_activate), (gst_queue_src_activate),
257         (gst_queue_change_state):
258         * gst/gstqueue.h:
259         Fix state changes for non sinks. We now change sinks, then elements
260         with unconnected srcpads, then the rest.
261         More efficient queue unlocking in flush and state changes.
262         Set the pad activate mode even if it does not have an activate
263         function.
264
265 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
266
267         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
268           Don't go in pull mode for non-seekable sources.
269         * gst/elements/gsttypefindelement.h:
270         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
271         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
272         (free_entry), (stop_typefinding),
273         (gst_type_find_element_handle_event), (find_peek),
274         (gst_type_find_element_chain), (do_pull_typefind),
275         (gst_type_find_element_change_state):
276           Allow typefinding (w/o seeking) in push-mode, simplified version
277           of what was in 0.8.
278         * gst/gstutils.c: (gst_buffer_join):
279         * gst/gstutils.h:
280           gst_buffer_join() from 0.8.
281
282 2005-05-25  Wim Taymans  <wim@fluendo.com>
283
284         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
285         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
286         (gst_pad_send_event), (gst_pad_start_task):
287         Disable attempt at mode switching until it is figured out.
288
289 2005-05-25  Wim Taymans  <wim@fluendo.com>
290
291         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
292         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
293         (gst_basesink_finish_preroll), (gst_basesink_chain),
294         (gst_basesink_loop), (gst_basesink_activate),
295         (gst_basesink_change_state):
296         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
297         (gst_basesrc_get_range), (gst_basesrc_loop),
298         (gst_basesrc_activate):
299         * gst/elements/gsttee.c: (gst_tee_sink_activate):
300         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
301         (gst_real_pad_init), (gst_real_pad_set_property),
302         (gst_real_pad_get_property), (gst_pad_set_active),
303         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
304         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
305         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
306         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
307         (gst_pad_event_default_dispatch), (gst_pad_event_default),
308         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
309         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
310         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
311         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
312         (gst_pad_stop_task):
313         * gst/gstpad.h:
314         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
315         (gst_queue_loop), (gst_queue_src_activate):
316         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
317         (gst_task_get_state):
318         * gst/gsttask.h:
319         * gst/schedulers/threadscheduler.c:
320         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
321         Implement gst_pad_pause/start/stop_task(), take STREAM lock
322         in task function.
323         Remove ACTIVE pad flag, use FLUSHING everywhere
324         Added _pad_chain(), _pad_get_range() to call chain/getrange 
325         functions.
326         Add locks around IS_FLUSHING when reading.
327         Take STREAM lock in chain(), get_range() functions so plugins
328         don't need to take it anymore.
329         
330
331
332 2005-05-25  Wim Taymans  <wim@fluendo.com>
333
334         * tools/gst-launch.c: (event_loop):
335         Unref message after using its contents instead of
336         before.
337
338 2005-05-24  Wim Taymans  <wim@fluendo.com>
339
340         * docs/design/draft-ghostpads.txt:
341         * docs/design/draft-push-pull.txt:
342         * docs/design/draft-query.txt:
343         * docs/design/part-overview.txt:
344         Docs updates, added general overview doc.
345
346 2005-05-21  David Schleef  <ds@schleef.org>
347
348         * docs/gst/tmpl/old/GstBin.sgml:
349         * docs/gst/tmpl/old/GstBuffer.sgml:
350         * docs/gst/tmpl/old/GstCaps.sgml:
351         * docs/gst/tmpl/old/GstClock.sgml:
352         * docs/gst/tmpl/old/GstCompat.sgml:
353         * docs/gst/tmpl/old/GstData.sgml:
354         * docs/gst/tmpl/old/GstElement.sgml:
355         * docs/gst/tmpl/old/GstEvent.sgml:
356         * docs/gst/tmpl/old/GstIndex.sgml:
357         * docs/gst/tmpl/old/GstStructure.sgml:
358         * docs/gst/tmpl/old/GstTag.sgml:
359         * docs/gst/tmpl/old/cothreads.sgml:
360         * docs/gst/tmpl/old/cothreads_compat.sgml:
361         * docs/gst/tmpl/old/gettext.sgml:
362         * docs/gst/tmpl/old/gobject2gtk.sgml:
363         * docs/gst/tmpl/old/grammar.tab.sgml:
364         * docs/gst/tmpl/old/gst-i18n-app.sgml:
365         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
366         * docs/gst/tmpl/old/gst_private.sgml:
367         * docs/gst/tmpl/old/gstaggregator.sgml:
368         * docs/gst/tmpl/old/gstarch.sgml:
369         * docs/gst/tmpl/old/gstatomic_impl.sgml:
370         * docs/gst/tmpl/old/gstbufferstore.sgml:
371         * docs/gst/tmpl/old/gstdata_private.sgml:
372         * docs/gst/tmpl/old/gstdisksink.sgml:
373         * docs/gst/tmpl/old/gstdisksrc.sgml:
374         * docs/gst/tmpl/old/gstelementfactory.sgml:
375         * docs/gst/tmpl/old/gstextratypes.sgml:
376         * docs/gst/tmpl/old/gstfakesink.sgml:
377         * docs/gst/tmpl/old/gstfakesrc.sgml:
378         * docs/gst/tmpl/old/gstfdsink.sgml:
379         * docs/gst/tmpl/old/gstfdsrc.sgml:
380         * docs/gst/tmpl/old/gstfilesink.sgml:
381         * docs/gst/tmpl/old/gstfilesrc.sgml:
382         * docs/gst/tmpl/old/gsthttpsrc.sgml:
383         * docs/gst/tmpl/old/gstidentity.sgml:
384         * docs/gst/tmpl/old/gstindexfactory.sgml:
385         * docs/gst/tmpl/old/gstmarshal.sgml:
386         * docs/gst/tmpl/old/gstmd5sink.sgml:
387         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
388         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
389         * docs/gst/tmpl/old/gstpadtemplate.sgml:
390         * docs/gst/tmpl/old/gstpipefilter.sgml:
391         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
392         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
393         * docs/gst/tmpl/old/gstshaper.sgml:
394         * docs/gst/tmpl/old/gstspider.sgml:
395         * docs/gst/tmpl/old/gstspideridentity.sgml:
396         * docs/gst/tmpl/old/gststatistics.sgml:
397         * docs/gst/tmpl/old/gsttee.sgml:
398         * docs/gst/tmpl/old/gsttimecache.sgml:
399         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
400         * docs/gst/tmpl/old/gstxmlregistry.sgml:
401         * docs/gst/tmpl/old/gthread-cothreads.sgml:
402         * docs/gst/tmpl/old/types.sgml:
403           I didn't intend to add these or check them in.
404
405 2005-05-19  David Schleef  <ds@schleef.org>
406
407         * configure.ac: Use -no-common everywhere.  In a sane world, it
408           would be the default in libtool, because without it, you can't
409           build DLLs on Windows.
410         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
411         * docs/gst/gstreamer-sections.txt:
412         * docs/gst/tmpl/gstcpu.sgml:
413         * docs/gst/tmpl/gstdata.sgml:
414         * docs/gst/tmpl/gstthread.sgml:
415
416 2005-05-19  David Schleef  <ds@schleef.org>
417
418         * gst/gstminiobject.c: (gst_value_set_mini_object),
419         (gst_value_take_mini_object), (gst_value_get_mini_object):
420         * gst/gstminiobject.h: Add GValue set/get functions.
421
422 2005-05-19  Wim Taymans  <wim@fluendo.com>
423
424         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
425         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
426         (gst_subbuffer_init), (gst_buffer_is_span_fast):
427         * gst/gstbuffer.h:
428         * gst/gstbus.c: (gst_bus_post):
429         * gst/gstelement.c: (gst_element_get_random_pad):
430         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
431         Make subbufer unref the parent in finalize.
432         some more debugging info.
433
434
435 2005-05-19  Wim Taymans  <wim@fluendo.com>
436
437         * gst/base/gstbasesink.c: (gst_basesink_class_init),
438         (gst_basesink_init), (gst_basesink_finalize),
439         (gst_basesink_activate), (gst_basesink_change_state):
440         Don't free preroll queue too early.
441
442 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
443
444         * gst/Makefile.am:
445         * gst/ROADMAP:
446           Hi, I'm outdated. Please shoot me.
447
448 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
449
450         * gst/gstpipeline.c: (gst_pipeline_send_event):
451           Do not access variables after they have been deleted.
452
453 2005-05-19  Wim Taymans  <wim@fluendo.com>
454
455         * tools/gst-inspect.c: (print_plugin_features):
456         A plugin feature does unfortunatly not use the
457         object name yet...
458
459 2005-05-18  Wim Taymans  <wim@fluendo.com>
460
461         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
462         Port _span() functions to new subbuffers.
463
464 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
465
466         * gst/gstbin.c: (gst_bin_add_func):
467           Fix clock settery in bins when adding kids after the clock has
468           been selected.
469
470 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
471
472         * gst/elements/gstidentity.c: (gst_identity_class_init):
473           Workaround until signals support GstMiniObject.
474
475 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
476
477         * gst/gstbuffer.c:
478         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
479
480 2005-05-18  Wim Taymans  <wim@fluendo.com>
481
482         * gst/base/Makefile.am:
483         * gst/base/gstadapter.c: (gst_adapter_base_init),
484         (gst_adapter_class_init), (gst_adapter_init),
485         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
486         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
487         (gst_adapter_flush), (gst_adapter_available),
488         (gst_adapter_available_fast):
489         * gst/base/gstadapter.h:
490         Ported and added adapter to the base classes.
491
492 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
493
494         * gst/gst.c:
495         * gst/gstmessage.c:
496           Make sure the class is reffed/unreffed once before threads can be
497           used.  Fixes #304551.
498
499 2005-05-17  Wim Taymans  <wim@fluendo.com>
500
501         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
502         (gst_basesink_chain_unlocked), (gst_basesink_activate):
503         * gst/gstminiobject.c: (gst_mini_object_get_type),
504         (gst_mini_object_free):
505         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
506         (gst_pad_push), (gst_pad_push_event):
507         * gst/gstqueue.c: (gst_queue_change_state):
508         Don't queue buffers in basesink when we are flushing.
509         Unref buffer when flushing in basesink.
510         Flush queue when going to READY
511         Unref buffer when _push() returns an error.
512         Don't free MiniObject instance when refcount is incremented
513         in _finalize() so that we can recover objects.
514
515 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
516
517         * docs/manual/advanced-schedulers.xml:
518         * docs/manual/appendix-checklist.xml:
519         * docs/pwg/advanced-clock.xml:
520         * docs/pwg/advanced-interfaces.xml:
521         * docs/pwg/advanced-request.xml:
522         * docs/pwg/advanced-types.xml:
523         * docs/pwg/intro-preface.xml:
524         * examples/plugins/example.c: (gst_example_get_type),
525         (gst_example_class_init), (gst_example_chain),
526         (gst_example_set_property), (gst_example_get_property),
527         (gst_example_change_state), (plugin_init):
528         * examples/plugins/example.h:
529           small doc fixes
530
531 2005-05-17  Wim Taymans  <wim@fluendo.com>
532
533         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
534         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
535         * gst/gstqueue.c: (gst_queue_change_state):
536         Clear queue when going to READY.
537         Remove IN_SETCAPS flag too.
538
539 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
540
541         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
542           Remove implicit cast from gboolean to GstElementStateReturn;
543           make sure we still return failure in paused => ready case if
544           the parent class fails to change state and our own stop 
545           vfunc succeeds.
546
547 2005-05-17  Wim Taymans  <wim@fluendo.com>
548
549         * tools/gst-launch.c: (event_loop):
550         Message was unreffed too soon.
551
552 2005-05-16  Andy Wingo  <wingo@pobox.com>
553
554         * gst/gstbin.c (sink_iterator_filter): Err... um...
555
556         * check/gst/gstbin.c (test_ghost_pads): New test for the
557         ghosting-if-elements-not-in-same-bin behavior.
558
559 2005-05-16  David Schleef  <ds@schleef.org>
560
561         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
562         accessing refcount directly.
563
564 2005-05-15  David Schleef  <ds@schleef.org>
565
566         * check/Makefile.am: remove GstData checks
567         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
568         * gst/Makefile.am: add miniobject, remove data
569         * gst/gst.h: add miniobject, remove data
570         * gst/gstdata.c: remove
571         * gst/gstdata.h: remove
572         * gst/gstdata_private.h: remove
573         * gst/gsttypes.h: remove GstEvent and GstMessage
574         * gst/gstelement.c: (gst_element_post_message): fix for API changes
575         * gst/gstmarshal.list: change BOXED -> OBJECT
576
577         Implement GstMiniObject.
578         * gst/gstminiobject.c:
579         * gst/gstminiobject.h:
580
581         Modify to be subclasses of GstMiniObject.
582         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
583         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
584         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
585         (gst_subbuffer_get_type), (gst_subbuffer_init),
586         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
587         (gst_buffer_span):
588         * gst/gstbuffer.h:
589         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
590         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
591         (_gst_event_copy), (gst_event_new):
592         * gst/gstevent.h:
593         * gst/gstmessage.c: (_gst_message_initialize),
594         (gst_message_get_type), (gst_message_class_init),
595         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
596         (gst_message_new), (gst_message_new_error),
597         (gst_message_new_warning), (gst_message_new_tag),
598         (gst_message_new_state_changed), (gst_message_new_application):
599         * gst/gstmessage.h:
600         * gst/gstprobe.c: (gst_probe_perform),
601         (gst_probe_dispatcher_dispatch):
602         * gst/gstprobe.h:
603         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
604         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
605         (_gst_query_copy), (gst_query_new):
606
607         Update elements for GstData -> GstMiniObject changes
608         * gst/gstquery.h:
609         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
610         (gst_queue_chain), (gst_queue_loop):
611         * gst/elements/gstbufferstore.c:
612         (gst_buffer_store_add_buffer_func),
613         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
614         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
615         (gst_fakesink_render):
616         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
617         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
618         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
619         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
620         (gst_filesrc_create_read):
621         * gst/elements/gstidentity.c: (gst_identity_class_init):
622         * gst/elements/gsttypefindelement.c:
623         (gst_type_find_element_src_event), (free_entry_buffers),
624         (gst_type_find_element_handle_event):
625         * libs/gst/dataprotocol/dataprotocol.c:
626         (gst_dp_header_from_buffer):
627         * libs/gst/dataprotocol/dataprotocol.h:
628         * libs/gst/dataprotocol/dp-private.h:
629
630 2005-05-15  David Schleef  <ds@schleef.org>
631
632         * gst/elements/gstelements.c: Don't include headers that were
633         just removed.
634
635 2005-05-15  David Schleef  <ds@schleef.org>
636
637         * gst/elements/Makefile.am: Remove some elements that don't
638         need to be in the core (or even exist at all).
639         * gst/elements/gstaggregator.c:
640         * gst/elements/gstaggregator.h:
641         * gst/elements/gstmd5sink.c:
642         * gst/elements/gstmd5sink.h:
643         * gst/elements/gstmultifilesrc.c:
644         * gst/elements/gstmultifilesrc.h:
645         * gst/elements/gstpipefilter.c:
646         * gst/elements/gstpipefilter.h:
647         * gst/elements/gstshaper.c:
648         * gst/elements/gstshaper.h:
649         * gst/elements/gststatistics.c:
650         * gst/elements/gststatistics.h:
651         * po/POTFILES.in: Remove above files.
652
653 2005-05-14  Andy Wingo  <wingo@pobox.com>
654
655         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
656         so as to get the refs right.
657         (sink_iterator_filter): New function, wraps bin_element_is_sink,
658         unreffing objects that don't pass the filter.
659
660         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
661         gst_element_set_bus.
662         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
663         normal cases, this will destroy the bus.
664
665         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
666         object.
667
668         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
669         has no sinks.
670
671 2005-05-13  Andy Wingo  <wingo@pobox.com>
672
673         * gst/gstutils.c (gst_element_link_pads): Instead of calling
674         gst_pad_link, call pad_link_maybe_ghosting,
675         (pad_link_maybe_ghosting): Links pads, making sure that the
676         elements being linked are in the same bin.
677         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
678         Helpers for pad_link_maybe_ghosting.
679
680 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
681
682         * configure.ac:
683           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
684
685 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
686
687         * docs/design/part-element-source.txt:
688           Mention GstPushSrc
689
690 2005-05-12  Wim Taymans  <wim@fluendo.com>
691
692         * gst/base/gstbasesink.c: (gst_basesink_init),
693         (gst_basesink_activate):
694         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
695         (gst_basesrc_is_seekable):
696         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
697         (bin_element_is_sink), (gst_bin_change_state):
698         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
699         * gst/gstelement.h:
700         Identify sinks by their flag to avoid overly complicated
701         checks (fow now).
702         Do state changes even for elements not reachable from the
703         sinks.
704         BaseSink is a sink now :)
705         Some more debugging info in the basesrc.
706
707
708 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
709
710         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
711           Implement _query on a bin, similar to _send_event.
712
713 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
714
715         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
716           Discont event offset format should be GST_FORMAT_BYTES,
717           not GST_FORMAT_TIME.
718
719 2005-05-12  Wim Taymans  <wim@fluendo.com>
720
721         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
722         Same fix as Ronald's but without the signal. 
723
724 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
725
726         * gst/gstutils.c: (gst_element_query_position):
727           No, an element is not a pad.
728
729 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
730
731         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
732         (gst_bin_get_state):
733           If a child is removed from a bin while we remove the child from
734           the bin and while we're retrieving its state, signal this to the
735           get_state function so we abort the wait (instead of waiting for
736           a timeout) and can immediately re-iterate over all other elements.
737
738 2005-05-12  Wim Taymans  <wim@fluendo.com>
739
740         * gst/base/Makefile.am:
741         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
742         (gst_basesrc_start):
743         * gst/base/gstbasesrc.h:
744         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
745         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
746         (gst_pushsrc_init), (gst_pushsrc_create):
747         * gst/base/gstpushsrc.h:
748         Added is_seekable to BaseSrc
749         Added simple PushSrc.
750
751 2005-05-11  Wim Taymans  <wim@fluendo.com>
752
753         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
754         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
755         (gst_element_link_pads), (gst_element_query_position),
756         (gst_element_query_convert), (intersect_caps_func),
757         (gst_pad_query_position), (gst_pad_query_convert):
758         Fix refcounting in utils function.
759         No point in trying to activate a pad when it's added, it could
760         be added from the state change function and then we deadlock, the
761         element has to decide what to do.
762
763 2005-05-10  Andy Wingo  <wingo@pobox.com>
764
765         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
766         *all* the arguments.
767
768         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
769         stream lock if it's a FLUSH_DONE; normal flushes don't get the
770         lock (according to the docs -- if this is wrong change the docs).
771
772         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
773         flush messages in the NULL state.
774
775         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
776         message immediately and return.
777         (gst_bus_set_flushing): New function. If a bus is flushing, it
778         flushes out any queued messages and immediately unrefs new
779         messages. This is so when an element goes to NULL, all of the
780         unhandled messages coming from it can be freed, and their
781         references to the element dropped. In other words: message source
782         ref considered harmful :P
783
784         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
785         we're finished with it.
786
787         * gst/gstmessage.c (gst_message_new_state_changed): 
788
789 2005-05-10  Wim Taymans  <wim@fluendo.com>
790
791         * gst/gstvalue.c: (gst_value_compare_flags),
792         (gst_value_serialize_flags), (gst_value_deserialize_flags),
793         (_gst_value_initialize):
794         Added flags serialize/deserialize/compare code.
795
796 2005-05-09  Andy Wingo  <wingo@pobox.com>
797
798         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
799         Intersect the peer's caps with our caps.
800
801 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
802
803         * gst/base/gsttypefindhelper.c: (helper_find_peek):
804         * gst/elements/gsttypefindelement.c: (find_peek):
805           Handle negative offsets better. Fixes decodebin.
806
807 2005-05-09  Wim Taymans  <wim@fluendo.com>
808
809         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
810         (gst_base_transform_event):
811         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
812         Implement accept_caps.
813         Fix silly lock/unlock mismatch in base class.
814
815 2005-05-09  Wim Taymans  <wim@fluendo.com>
816
817         * docs/design/draft-push-pull.txt:
818         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
819         * gst/elements/gstfilesink.c: (gst_filesink_init),
820         (gst_filesink_query):
821         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
822         (gst_type_find_handle_src_query), (find_element_get_length):
823         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
824         * gst/gstelement.h:
825         * gst/gstmessage.c:
826         * gst/gstmessage.h:
827         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
828         (gst_real_pad_get_caps_unlocked),
829         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
830         (gst_pad_event_default_dispatch), (gst_pad_event_default),
831         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
832         (gst_real_pad_dispose), (gst_real_pad_finalize),
833         (gst_pad_load_and_link), (gst_pad_save_thyself),
834         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
835         (gst_pad_check_pull_range), (gst_pad_pull_range),
836         (gst_pad_template_get_type), (gst_pad_template_class_init),
837         (gst_pad_template_init), (gst_pad_template_dispose),
838         (name_is_valid), (gst_static_pad_template_get),
839         (gst_pad_template_new), (gst_static_pad_template_get_caps),
840         (gst_pad_template_get_caps), (gst_pad_set_element_private),
841         (gst_pad_get_element_private), (gst_pad_start_task),
842         (gst_pad_pause_task), (gst_pad_stop_task),
843         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
844         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
845         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
846         (gst_ghost_pad_new):
847         * gst/gstpad.h:
848         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
849         (gst_query_new_position), (gst_query_set_position),
850         (gst_query_parse_position), (gst_query_new_convert),
851         (gst_query_set_convert), (gst_query_parse_convert):
852         * gst/gstquery.h:
853         * gst/gstqueryutils.c:
854         * gst/gstqueryutils.h:
855         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
856         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
857         (gst_queue_handle_src_query):
858         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
859         (gst_element_query_position), (gst_element_query_convert),
860         (intersect_caps_func), (gst_pad_query_position),
861         (gst_pad_query_convert):
862         * gst/gstutils.h:
863         * tools/gst-inspect.c: (print_pad_info):
864         * tools/gst-xmlinspect.c: (print_element_info):
865         Remove old query functions. Ported old code.
866         Added position/convert helper functions to gstutils.
867         Reordered gstpad.c code, grouping relevant things.
868         Remove gst_message_new(), always need to speficy a specific
869         message.
870
871
872 2005-05-09  Andy Wingo  <wingo@pobox.com>
873
874         * gst/gstiterator.h: Add some includes.
875
876         * gst/gstqueryutils.h: Include more headers.
877
878         * gst/gstpad.h:
879         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
880         some uses of gst_pad_query.
881
882         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
883         NULL out parameters.
884         (gst_query_new_position): New proc, allocates a new position
885         query.
886
887         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
888         gstqueryutils.c to the build.
889
890         * gst/gststructure.c (gst_structure_set_valist): Implement with
891         the generic G_VALUE_COLLECT.
892         
893 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
894
895         * gst/Makefile.am: (gst_headers):
896         Added gstqueryutils.h to the list of headers to install, that was
897         a 'nachty' move wingo :)
898
899 2005-05-06  Andy Wingo  <wingo@pobox.com>
900
901         * gst/gstquery.h
902         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
903         GstData, init a memchunk.
904         (standard_definitions): Add a few query types, deprecate a few.
905         (gst_query_get_type): New proc.
906         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
907         implementation.
908         (gst_query_new_application, gst_query_get_structure): New public
909         procs.
910
911         * docs/design/draft-query.txt: Removed LINKS from the query types,
912         because all the rest can be dispatched to other pads -- seemed
913         ugly to have a query that couldn't be dispatched. internal_links
914         is fine as a pad method.
915
916         * gst/gstpad.h: Add query2 as a pad method, add the new functions
917         in gstpad.c, but maintain binary compatibility for the moment.
918         Will fix before 0.9 is out.
919
920         * gst/gstqueryutils.c: 
921         * gst/gstqueryutils.h: New files, implement 3 methods for each
922         query type: parse_query, parse_response, and set. Probably need an
923         allocator as well.
924
925         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
926
927         * gst/elements/gstfilesink.c (gst_filesink_query2):
928         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
929         query_types, and formats methods.
930
931         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
932         (gst_pad_set_query2_function): New functions.
933         (gst_real_pad_init): Set query2_default as the default query2
934         function. Basically just dispatches to internally linked pads.
935
936         Needs review!
937         
938         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
939         without using the atomic operations. Only one thread can possibly
940         be accessing the data at this point. Changed so as to avoid
941         gst_atomic operations.
942
943 2005-05-06  Wim Taymans  <wim@fluendo.com>
944
945         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
946         Also set caps if we use the fallback buffer alloc.
947
948 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
949
950         * docs/gst/Makefile.am:
951         * docs/gst/gstreamer-docs.sgml:
952         * docs/gst/gstreamer-sections.txt:
953         * docs/gst/tmpl/gstatomic.sgml:
954         * docs/gst/tmpl/gstmemchunk.sgml:
955         * testsuite/elements/struct_i386.h:
956         * win32/GStreamer.vcproj:
957         * win32/Makefile:
958           Purge GstAtomic stuff from docs and win32 makefiles as well
959
960 2005-05-06  Wim Taymans  <wim@fluendo.com>
961
962         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
963         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
964         * gst/gstpad.c: (gst_pad_peer_get_caps):
965         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
966         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
967         (gst_queue_src_activate), (gst_queue_change_state):
968         * gst/gstqueue.h:
969         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
970         (intersect_caps_func):
971         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
972         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
973         Some fixes for the peer_get_caps() change.
974
975 2005-05-06  Wim Taymans  <wim@fluendo.com>
976
977         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
978         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
979         (gst_basesink_activate):
980         Actually do something with error codes returned from the push
981         functions.
982
983 2005-05-06  Wim Taymans  <wim@fluendo.com>
984
985         * docs/design/part-element-sink.txt:
986         * docs/design/part-element-source.txt:
987         * gst/base/gstbasesink.c: (gst_basesink_class_init),
988         (gst_basesink_event), (gst_basesink_activate):
989         * gst/base/gstbasesink.h:
990         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
991         (gst_basesrc_activate):
992         * gst/base/gstbasesrc.h:
993         * gst/gstelement.c: (gst_element_pads_activate):
994         Some more documentation.
995         Fixed scheduling decision in _pads_activate().
996
997 2005-05-05  Andy Wingo  <wingo@pobox.com>
998
999         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1000         the test suite.
1001
1002 2005-05-05  Wim Taymans  <wim@fluendo.com>
1003
1004         * gst/base/Makefile.am:
1005         * gst/base/gstbasesink.h:
1006         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1007         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1008         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1009         (gst_collectpads_class_init), (gst_collectpads_init),
1010         (gst_collectpads_finalize), (gst_collectpads_new),
1011         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1012         (find_pad), (gst_collectpads_remove_pad),
1013         (gst_collectpads_is_active), (gst_collectpads_collect),
1014         (gst_collectpads_collect_range), (gst_collectpads_start),
1015         (gst_collectpads_stop), (gst_collectpads_peek),
1016         (gst_collectpads_pop), (gst_collectpads_available),
1017         (gst_collectpads_read), (gst_collectpads_flush),
1018         (gst_collectpads_chain):
1019         * gst/base/gstcollectpads.h:
1020         * gst/elements/Makefile.am:
1021         * gst/elements/gstelements.c:
1022         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1023         (gst_fakesink_get_times), (gst_fakesink_event),
1024         (gst_fakesink_preroll), (gst_fakesink_render):
1025         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1026         (gst_filesink_init), (gst_filesink_set_location),
1027         (gst_filesink_open_file), (gst_filesink_close_file),
1028         (gst_filesink_pad_query), (gst_filesink_event),
1029         (gst_filesink_render), (gst_filesink_change_state):
1030         * gst/elements/gstfilesink.h:
1031         Added object to help in making collect pad based elements.
1032         Ported filesink.
1033         Make event function in sink baseclass return gboolean.
1034
1035 2005-05-05  Wim Taymans  <wim@fluendo.com>
1036
1037         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1038         (gst_bin_get_by_name):
1039         * gst/gstbuffer.h:
1040         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1041         (gst_clock_finalize):
1042         * gst/gstdata.c: (gst_data_replace):
1043         * gst/gstdata.h:
1044         * gst/gstelement.c: (gst_element_request_pad),
1045         (gst_element_pads_activate):
1046         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1047         (gst_object_unref):
1048         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1049         (gst_pad_set_checkgetrange_function),
1050         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1051         (gst_pad_check_pull_range), (gst_pad_pull_range),
1052         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1053         (gst_pad_pause_task), (gst_pad_stop_task):
1054         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1055         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1056         Fix name lookup in GstBin.
1057         Added _data_replace() function and _buffer_replace()
1058         Use finalize method to clean up clock.
1059         Fix refcounting on request pads.
1060         Fix pad schedule mode error.
1061         Some more object refcounting debug info,
1062
1063
1064 2005-05-04  Andy Wingo <wingo@pobox.com>
1065
1066         * check/Makefile.am:
1067         * docs/gst/tmpl/gstatomic.sgml:
1068         * docs/gst/tmpl/gstplugin.sgml:
1069         * gst/base/gstbasesink.c: (gst_basesink_activate):
1070         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1071         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1072         (gst_basesrc_query), (gst_basesrc_set_property),
1073         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1074         (gst_basesrc_activate):
1075         * gst/base/gstbasesrc.h:
1076         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1077         (gst_base_transform_src_activate):
1078         * gst/elements/gstelements.c:
1079         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1080         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1081         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1082         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1083         (gst_type_find_element_checkgetrange),
1084         (gst_type_find_element_activate):
1085         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1086         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1087         (gst_caps_load_thyself):
1088         * gst/gstelement.c: (gst_element_pads_activate),
1089         (gst_element_save_thyself), (gst_element_restore_thyself):
1090         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1091         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1092         * gst/gstpad.h:
1093         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1094         (gst_xml_parse_file), (gst_xml_parse_memory),
1095         (gst_xml_get_element), (gst_xml_make_element):
1096         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1097         (_file_index_id_save_xml), (gst_file_index_commit):
1098         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1099         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1100         (load_paths):
1101         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1102         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1103         * tools/gst-complete.c: (main):
1104         * tools/gst-compprep.c: (main):
1105         * tools/gst-inspect.c: (print_element_properties_info):
1106         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1107         * tools/gst-xmlinspect.c: (print_element_properties):
1108         GCC 4 fixen.
1109         
1110 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1111
1112         * gst/gstplugin.c: (gst_plugin_check_module),
1113         (gst_plugin_check_file), (gst_plugin_load_file):
1114             apply patch from #172526 to make register work on MacOSX
1115
1116 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1117
1118         * docs/gst/tmpl/gstconfig.sgml:
1119         * gst/gstconfig.h.in:
1120           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1121         * testsuite/debug/printf_extension.c: (main):
1122           Do not use GST_PTR_FORMAT on pointers to types with
1123           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1124         * testsuite/elements/property.h:
1125           use correct printf format
1126
1127 2005-05-02  Wim Taymans  <wim@fluendo.com>
1128
1129         * docs/design/draft-push-pull.txt:
1130         * docs/design/draft-query.txt:
1131         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1132         (gst_basesrc_start):
1133         Added draft for new query API.
1134         Added draft for better selecting scheduling methods.
1135         Make basesrc ignore length if the subclass does not support
1136         it.
1137
1138 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1139
1140         * gst/Makefile.am:
1141           possible fixes for automake-1.5 - _LIBADD is reserved
1142
1143 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1144
1145         * docs/faq/Makefile.am:
1146         * docs/manual/Makefile.am:
1147         * docs/manuals.mak:
1148         * docs/pwg/Makefile.am:
1149         * gst/Makefile.am:
1150           possible fixes for automake-1.5
1151
1152 2005-04-28  Wim Taymans  <wim@fluendo.com>
1153
1154         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1155         (gst_basesink_pad_getcaps), (gst_basesink_init),
1156         (gst_basesink_do_sync):
1157         * gst/gstclock.c: (gst_clock_entry_new):
1158         * gst/gstevent.c: (gst_event_discont_get_value):
1159         * gst/gstpipeline.c: (pipeline_bus_handler),
1160         (gst_pipeline_change_state):
1161         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1162         Better debugging of clocking info.
1163         Allow NULL values when getting discont values.
1164
1165 2005-04-27  Wim Taymans  <wim@fluendo.com>
1166
1167         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1168         * check/gst/gstpad.c: (gst_pad_suite):
1169         Increase timeout for checks.
1170
1171 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1172
1173         * check/Makefile.am:
1174           fix the broken rule for cleanup.  Apparently this rule is
1175           only needed on FC2, so maybe this warrants further autotool
1176           inspection.
1177
1178 2005-04-26  Wim Taymans  <wim@fluendo.com>
1179
1180         * gst/gsttrashstack.h:
1181         Ooohh. a nasty one! After having a failed pop() from the stack,
1182         it's possible that the stack is empty. In that case, don't
1183         follow the NULL pointer.
1184
1185 2005-04-25  Wim Taymans  <wim@fluendo.com>
1186
1187         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1188         (gst_pad_set_checkgetrange_function),
1189         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1190         (gst_pad_check_pull_range), (gst_pad_pull_range),
1191         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1192         (gst_pad_pause_task), (gst_pad_stop_task):
1193         * gst/gstplugin.c: (gst_plugin_load):
1194         * gst/gstplugin.h:
1195         Remove gst_library_load as it does more harm than good with
1196         the new g_module flags.
1197         Revert bogus caps template check in pad linking, pad caps
1198         are important when linking not the template, which is more
1199         general than the current caps.
1200
1201 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1202
1203         * gst/autoplug/.cvsignore:
1204         * gst/autoplug/Makefile.am:
1205         * gst/autoplug/gstsearchfuncs.c:
1206         * gst/autoplug/gstsearchfuncs.h:
1207         * gst/autoplug/gstspider.c:
1208         * gst/autoplug/gstspider.h:
1209         * gst/autoplug/gstspideridentity.c:
1210         * gst/autoplug/gstspideridentity.h:
1211         * gst/autoplug/spidertest.c:
1212           Die, spider, die.
1213
1214 2005-04-25  Wim Taymans  <wim@fluendo.com>
1215
1216         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1217         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1218         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1219         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1220         * gst/gstpad.h:
1221         Added stubs for unimplemented functions. 
1222
1223 2005-04-24  David Schleef  <ds@schleef.org>
1224
1225         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1226         please fix.
1227
1228 2005-04-24  David Schleef  <ds@schleef.org>
1229
1230         Convert everything from GstAtomicInt to g_atomic_int_*, and
1231         remove gstatomic.
1232         * gst/Makefile.am:
1233         * gst/gstatomic.c:
1234         * gst/gstatomic.h:
1235         * gst/gstatomic_impl.h:
1236         * gst/gstbuffer.c:
1237         * gst/gstcaps.c:
1238         * gst/gstcaps.h:
1239         * gst/gstclock.c:
1240         * gst/gstclock.h:
1241         * gst/gstdata.c:
1242         * gst/gstdata.h:
1243         * gst/gstdata_private.h:
1244         * gst/gstevent.c:
1245         * gst/gstinfo.c:
1246         * gst/gstinfo.h:
1247         * gst/gstmessage.c:
1248         * gst/gstobject.c:
1249         * gst/gstobject.h:
1250         * gst/gststructure.c:
1251         * gst/gststructure.h:
1252         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1253         * gst/gstutils.h:
1254
1255 2005-04-24  David Schleef  <ds@schleef.org>
1256
1257         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1258         make the regressions tests work.  Remove some code that is no
1259         longer true.
1260         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1261         Disable warning for pads without templates.
1262
1263 2005-04-24  David Schleef  <ds@schleef.org>
1264
1265         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1266         functions that handle filtered links.
1267         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1268         removed functions.
1269         * gst/gstutils.c: Fix/remove utility functions that handle
1270         filtered caps.
1271         * gst/gstutils.h:
1272         * gst/gstvalue.c: Add serialization/deserialization of caps
1273         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1274         requires fixing so that the filter caps notation creates
1275         a capsfilter element and sets the filter_caps property.  I
1276         think everyone probably wants to keep the shorthand notation.
1277         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1278         * docs/gst/tmpl/gstpad.sgml:
1279
1280         * gst/elements/gstelements.c: Register capsfilter element.
1281         * gst/Makefile.am: fix spacing
1282         * docs/random/ds/0.9-suggested-changes: random
1283
1284 2005-04-23  David Schleef  <ds@schleef.org>
1285
1286         * gst/elements/Makefile.am:
1287         * gst/elements/gstcapsfilter.c: New element that acts like an
1288         identity, but filters caps.  Will eventually replace filtered
1289         caps in pad linking.
1290         * gst/gstutils.c: (gst_element_create_all_pads): New function
1291         to create all the ALWAYS pads that are registered with an
1292         element class.  This functionality should eventually be
1293         merged in with GstElement initialization.
1294         * gst/gstutils.h:
1295         * testsuite/trigger/README: part of trigger test code that should
1296         have been checked in a long time ago.
1297
1298 2005-04-23  David Schleef  <ds@schleef.org>
1299
1300         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1301         needed with new versions of libtool (nobody will confirm this),
1302         and hard to carry around.
1303         * gst/autoplug/Makefile.am:
1304         * gst/base/Makefile.am:
1305         * gst/elements/Makefile.am:
1306         * gst/indexers/Makefile.am:
1307         * gst/schedulers/Makefile.am:
1308         * libs/gst/bytestream/Makefile.am:
1309         * libs/gst/control/Makefile.am:
1310         * libs/gst/dataprotocol/Makefile.am:
1311         * libs/gst/getbits/Makefile.am:
1312
1313 2005-04-21  Wim Taymans  <wim@fluendo.com>
1314
1315         * docs/design/draft-push-pull.txt:
1316         * docs/design/part-MT-refcounting.txt:
1317         * docs/design/part-TODO.txt:
1318         * docs/design/part-caps.txt:
1319         * docs/design/part-events.txt:
1320         * docs/design/part-gstbus.txt:
1321         * docs/design/part-gstpipeline.txt:
1322         * docs/design/part-messages.txt:
1323         * docs/design/part-push-pull.txt:
1324         * docs/design/part-query.txt:
1325         Some more docs.
1326
1327 2005-04-21  Wim Taymans  <wim@fluendo.com>
1328
1329         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1330         (gst_message_new), (gst_message_new_error),
1331         (gst_message_new_warning), (gst_message_new_tag),
1332         (gst_message_new_state_changed), (gst_message_new_application),
1333         (gst_message_get_structure):
1334         * gst/gstmessage.h:
1335         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1336         (gst_structure_copy_conditional):
1337         Use parent refcount in GstMessage to ensure GstStructure
1338         consistency.
1339         Cleaned up headers a bit.
1340         
1341
1342 2005-04-20  Wim Taymans  <wim@fluendo.com>
1343
1344         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1345         (gst_basesink_pad_getcaps), (gst_basesink_init),
1346         (gst_basesink_chain_unlocked):
1347         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1348         (gst_type_find_helper):
1349         * gst/elements/gsttypefindelement.c:
1350         (gst_type_find_element_have_type), (gst_type_find_element_init),
1351         (stop_typefinding), (gst_type_find_element_handle_event),
1352         (find_suggest), (gst_type_find_element_chain),
1353         (gst_type_find_element_checkgetrange),
1354         (gst_type_find_element_getrange), (do_typefind),
1355         (gst_type_find_element_activate):
1356         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1357         (gst_buffer_default_free), (gst_buffer_default_copy),
1358         (gst_buffer_set_caps):
1359         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1360         (gst_caps_replace):
1361         * gst/gstmessage.c: (gst_message_new),
1362         (gst_message_new_state_changed):
1363         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1364         (gst_pad_set_checkgetrange_function),
1365         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1366         (gst_pad_set_caps), (gst_pad_check_pull_range),
1367         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1368         * gst/gstpad.h:
1369         * gst/gsttypefind.c: (gst_type_find_register):
1370         Make gst_caps_replace() work like other _replace() functions.
1371         Use _caps_replace() where possible.
1372         Make sure _message_new() initialises its field.
1373         Add gst_static_pad_template_get_caps()
1374
1375
1376 2005-04-18  Andy Wingo  <wingo@pobox.com>
1377
1378         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1379         on the peer, not the pad. I think that was a typo. Pass an extra
1380         arg to see if random access is possible. Activate the pads as
1381         PULL_RANGE if possible.
1382
1383         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1384
1385         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1386         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1387         to PROP_....
1388
1389 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1390
1391         * docs/faq/using.xml:
1392           Add note on gstreamer-properties (#154996).
1393
1394 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1395
1396         * docs/random/bbb/optional-properties:
1397           Some analysis on optional properties.
1398
1399 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1400
1401         * docs/gst/tmpl/gstelementfactory.sgml:
1402         * gst/gstelement.h:
1403         * gst/gstelementfactory.c: (gst_element_factory_init),
1404         (gst_element_factory_cleanup), (gst_element_register),
1405         (__gst_element_factory_add_static_pad_template),
1406         (gst_element_factory_get_static_pad_templates),
1407         (gst_element_factory_can_src_caps),
1408         (gst_element_factory_can_sink_caps):
1409         * gst/registries/Makefile.am:
1410         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1411         (gst_xml_registry_class_init), (gst_xml_registry_init),
1412         (gst_xml_registry_new), (gst_xml_registry_set_property),
1413         (gst_xml_registry_get_property), (get_time), (make_dir),
1414         (gst_xml_registry_get_perms_func),
1415         (plugin_times_older_than_recurse), (plugin_times_older_than),
1416         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1417         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1418         (add_to_char_array), (read_string), (read_uint), (read_enum),
1419         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1420         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1421         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1422         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1423         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1424         (gst_xml_registry_rebuild):
1425         * gst/registries/gstlibxmlregistry.h:
1426         * tools/gst-compprep.c: (main):
1427         * tools/gst-inspect.c: (print_pad_templates_info):
1428         * tools/gst-xmlinspect.c: (print_element_info):
1429           Use libxml2 for registry parsing, use staticpadtemplates in
1430           elementfactories. Makes gst_init() +/- 10x faster.
1431
1432 2005-04-12  Wim Taymans  <wim@fluendo.com>
1433
1434         * gst/base/Makefile.am:
1435         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1436         (gst_basesink_pad_getcaps), (gst_basesink_init),
1437         (gst_basesink_event), (gst_basesink_change_state):
1438         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1439         (gst_basesrc_init), (gst_basesrc_query),
1440         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1441         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1442         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1443         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1444         (gst_basesrc_stop), (gst_basesrc_activate),
1445         (gst_basesrc_change_state):
1446         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1447         (helper_find_suggest), (gst_type_find_helper):
1448         * gst/base/gsttypefindhelper.h:
1449         * gst/elements/Makefile.am:
1450         * gst/elements/gstelements.c:
1451         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1452         (gst_fakesink_get_times), (gst_fakesink_event),
1453         (gst_fakesink_preroll), (gst_fakesink_render):
1454         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1455         (gst_fakesrc_init), (gst_fakesrc_event_handler),
1456         (gst_fakesrc_get_property), (gst_fakesrc_create),
1457         (gst_fakesrc_start), (gst_fakesrc_stop):
1458         * gst/elements/gstfakesrc.h:
1459         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
1460         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1461         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1462         (gst_filesrc_create_read), (gst_filesrc_create),
1463         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
1464         (gst_filesrc_start):
1465         * gst/elements/gsttypefindelement.c:
1466         (gst_type_find_element_have_type), (gst_type_find_element_init),
1467         (start_typefinding), (stop_typefinding), (push_buffer_store),
1468         (gst_type_find_element_handle_event),
1469         (gst_type_find_element_chain),
1470         (gst_type_find_element_checkgetrange),
1471         (gst_type_find_element_getrange), (do_typefind),
1472         (gst_type_find_element_activate),
1473         (gst_type_find_element_change_state):
1474         * gst/elements/gsttypefindelement.h:
1475         * gst/gstpipeline.c: (pipeline_bus_handler):
1476         Added typefind helper.
1477         Small preroll fix in the base sink.
1478         Disable typefind code in basesrc.
1479         Crude port of typefindelement.
1480         Fakesrc cleanups.
1481
1482
1483 2005-04-11  Wim Taymans  <wim@fluendo.com>
1484
1485         * check/gst/gstbus.c: (gstbus_suite):
1486         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
1487         * check/gstcheck.h:
1488           Fix up the timeout so that the test does not fail.
1489
1490 2005-04-06  Wim Taymans  <wim@fluendo.com>
1491
1492         * gst/base/README:
1493         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1494         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
1495         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1496         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1497         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1498         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1499         (gst_basesrc_stop), (gst_basesrc_activate),
1500         (gst_basesrc_change_state), (basesrc_find_peek),
1501         (basesrc_find_suggest), (gst_basesrc_type_find):
1502         * gst/base/gstbasesrc.h:
1503         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1504         (gst_filesrc_class_init), (gst_filesrc_init),
1505         (gst_filesrc_finalize), (gst_filesrc_set_location),
1506         (gst_filesrc_set_property), (gst_filesrc_get_property),
1507         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1508         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1509         (gst_filesrc_create_read), (gst_filesrc_create),
1510         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
1511         * gst/elements/gstfilesrc.h:
1512         * gst/gstelement.c: (gst_element_get_state_func),
1513         (gst_element_lost_state), (gst_element_pads_activate):
1514         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1515         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1516         (gst_pad_pull_range):
1517         * gst/gstpad.h:
1518         More work on the generic source base class, implement seeking,
1519         query.
1520         Make filesrc extend the base source class.
1521         Added gst_pad_set_checkgetrange_function to GstPad.
1522
1523 2005-04-06  Andy Wingo  <wingo@pobox.com>
1524
1525         * pkgconfig/gstreamer-base.pc.in:
1526         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
1527
1528         * pkgconfig/Makefile.am:
1529         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
1530
1531 2005-04-04  Wim Taymans  <wim@fluendo.com>
1532
1533         * gst/base/Makefile.am:
1534         * gst/base/README:
1535         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1536         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1537         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1538         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
1539         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1540         (gst_basesrc_base_init), (gst_basesrc_class_init),
1541         (gst_basesrc_init), (gst_basesrc_get_formats),
1542         (gst_basesrc_get_query_types), (gst_basesrc_query),
1543         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
1544         (gst_basesrc_set_property), (gst_basesrc_get_property),
1545         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
1546         (gst_basesrc_loop), (gst_basesrc_activate),
1547         (gst_basesrc_change_state):
1548         * gst/base/gstbasesrc.h:
1549         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1550         (gst_fakesrc_class_init), (gst_fakesrc_init),
1551         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
1552         (gst_fakesrc_get_property), (gst_fakesrc_create):
1553         * gst/elements/gstfakesrc.h:
1554         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
1555         (gst_filesrc_open_file), (gst_filesrc_loop),
1556         (gst_filesrc_activate), (filesrc_find_peek),
1557         (gst_filesrc_type_find):
1558         Made base source class, make fakesrc extend it.
1559         Add comments to basesink class.
1560         Some filesrc cleanup.
1561
1562 2005-03-31  David Schleef  <ds@schleef.org>
1563
1564         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
1565         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
1566         expected to link against libgstreamer.
1567         * gst/base/Makefile.am: link against libgstreamer
1568         * gst/elements/Makefile.am: same
1569
1570 2005-03-31  Andy Wingo  <wingo@pobox.com>
1571
1572         * tests/instantiate/Makefile.am:
1573         * tests/instantiate/caps.c: Add test to test speed of caps copy
1574         and free.
1575
1576         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
1577         GMemChunk to be fair.
1578
1579         * gst/gsttrashstack.h: Remove warning about using the fallback
1580         trash stack implementation, it's still faster than malloc.
1581
1582 2005-03-30  Andy Wingo  <wingo@pobox.com>
1583
1584         * tests/complexity.c: Add a copyright.
1585
1586 2005-03-31  Wim Taymans  <wim@fluendo.com>
1587
1588         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
1589         (gst_base_transform_class_init), (gst_base_transform_init),
1590         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1591         (gst_base_transform_get_property),
1592         (gst_base_transform_sink_activate),
1593         (gst_base_transform_src_activate),
1594         (gst_base_transform_change_state):
1595         * gst/base/gstbasetransform.h:
1596         * gst/elements/gstidentity.c: (gst_identity_class_init),
1597         (gst_identity_event), (gst_identity_check_perfect),
1598         (gst_identity_transform), (gst_identity_start),
1599         (gst_identity_stop):
1600         Added start/stop methods to transform base class so subclasses 
1601         don't need to deal with state changes even.
1602
1603 2005-03-31  Wim Taymans  <wim@fluendo.com>
1604
1605         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
1606         (gst_event_new_discontinuous), (gst_event_discont_get_value):
1607         * gst/gstevent.h:
1608         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1609         (gst_pad_pull_range):
1610         Added rate to the discont event to prepare for variable speed
1611         and reverse playback.
1612
1613 2005-03-29  David Schleef  <ds@schleef.org>
1614
1615         * configure.ac:
1616         * testsuite/trigger/Makefile.am:
1617         * testsuite/trigger/trigger.c: A little example program to show
1618         how trigger-based elements can work.
1619
1620 2005-03-29  Wim Taymans  <wim@fluendo.com>
1621
1622         * gst/base/Makefile.am:
1623         * gst/base/README:
1624         * gst/base/gstbasesink.c: (gst_basesink_get_type),
1625         (gst_basesink_base_init), (gst_basesink_class_init),
1626         (gst_basesink_pad_getcaps), (gst_basesink_init),
1627         (gst_basesink_activate), (gst_basesink_change_state):
1628         * gst/base/gstbasesink.h:
1629         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
1630         (gst_base_transform_base_init), (gst_base_transform_finalize),
1631         (gst_base_transform_class_init), (gst_base_transform_init),
1632         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
1633         (gst_base_transform_event), (gst_base_transform_getrange),
1634         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
1635         (gst_base_transform_set_property),
1636         (gst_base_transform_get_property),
1637         (gst_base_transform_sink_activate),
1638         (gst_base_transform_src_activate),
1639         (gst_base_transform_change_state):
1640         * gst/base/gstbasetransform.h:
1641         * gst/elements/gstidentity.c: (gst_identity_finalize),
1642         (gst_identity_class_init), (gst_identity_init),
1643         (gst_identity_event), (gst_identity_check_perfect),
1644         (gst_identity_transform), (gst_identity_set_property),
1645         (gst_identity_get_property), (gst_identity_change_state):
1646         * gst/elements/gstidentity.h:
1647         * gst/gstelement.c: (gst_element_get_state_func),
1648         (gst_element_lost_state), (gst_element_pads_activate):
1649         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1650         (gst_pad_check_pull_range), (gst_pad_pull_range):
1651         * gst/gstpad.h:
1652         Simplify pad activation.
1653         Added function to check if pull_range can be performed.
1654         Error out when pulling inactive or flushing pads.
1655         Removed const from refcounted types as it does not make sense.
1656         Simplify pad templates in basesink
1657         Added base class for simple 1-to-1 transforms.
1658         Make identity subclass the base transform.
1659
1660 2005-03-29  Andy Wingo  <wingo@pobox.com>
1661
1662         * docs/libs/gstreamer-libs-overrides.txt: 
1663         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
1664         really don't understand what's going on, but like whatever. I want
1665         green buildbot!
1666
1667         * docs/gst/Makefile.am:
1668         * docs/libs/Makefile.am: Dist the overrides files.
1669
1670         * check/Makefile.am (clean-local): Remove .libs directories.
1671
1672         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
1673         elements to EXTRA_DIST, so po/ files are happy.
1674
1675         * po/POTFILES.in: Er, remove it here.
1676
1677         * po/POTFILES: Remove gstspider.c.
1678
1679         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
1680
1681         * docs/libs/gstreamer-libs-docs.sgml: 
1682         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
1683         bytestream.
1684
1685         * tests/complexity.c (main): Set the length of the preroll queue
1686         on the sinks to prevent a lockup.
1687
1688         * libs/gst/dataprotocol/Makefile.am: 
1689         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
1690         the same as the one in check/gst-libs/gdp.c.
1691
1692         * po/, docs/gst/: Commit automatic changes to docs and po files.
1693
1694         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
1695         the versioned libgstbase.
1696
1697         * check/Makefile.am: Depend on an unversioned gst-register, seems
1698         to make autoconf happier.
1699
1700         * gst/base/Makefile.am: Make libgstbase a versioned lib.
1701
1702 2005-03-28  Wim Taymans  <wim@fluendo.com>
1703
1704         * configure.ac:
1705         * docs/design/part-gstelement.txt:
1706         * docs/design/part-negotiation.txt:
1707         * docs/design/part-preroll.txt:
1708         * docs/design/part-scheduling.txt:
1709         * docs/design/part-states.txt:
1710         * gst/Makefile.am:
1711         * gst/base/Makefile.am:
1712         * gst/base/README:
1713         * gst/base/gstbasesink.c: (gst_basesink_get_template),
1714         (gst_basesink_base_init), (gst_basesink_class_init),
1715         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1716         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1717         (gst_basesink_set_pad_functions),
1718         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
1719         (gst_basesink_set_property), (gst_basesink_get_property),
1720         (gst_base_sink_get_template), (gst_base_sink_get_caps),
1721         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
1722         (gst_basesink_preroll_queue_push),
1723         (gst_basesink_preroll_queue_empty),
1724         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
1725         (gst_basesink_event), (gst_basesink_get_times),
1726         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
1727         (gst_basesink_chain_unlocked), (gst_basesink_chain),
1728         (gst_basesink_loop), (gst_basesink_activate),
1729         (gst_basesink_change_state):
1730         * gst/base/gstbasesink.h:
1731         * gst/elements/Makefile.am:
1732         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
1733         (gst_fakesink_class_init), (gst_fakesink_init),
1734         (gst_fakesink_set_property), (gst_fakesink_get_property),
1735         (gst_fakesink_get_times), (gst_fakesink_event),
1736         (gst_fakesink_preroll), (gst_fakesink_render),
1737         (gst_fakesink_change_state):
1738         * gst/elements/gstfakesink.h:
1739         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1740         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
1741         * gst/gstelement.c: (gst_element_add_pad),
1742         (gst_element_get_state_func), (gst_element_abort_state),
1743         (gst_element_commit_state), (gst_element_lost_state),
1744         (gst_element_set_state), (gst_element_pads_activate):
1745         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
1746         * gst/gstpipeline.c: (gst_pipeline_send_event),
1747         (gst_pipeline_change_state):
1748         Added state change code.
1749         Added/updated docs.
1750         Added sink base class, make fakesink extend the base class.
1751         Small cleanups in GstPipeline.
1752
1753 2005-03-26  David Schleef  <ds@schleef.org>
1754
1755         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
1756         is broken and should be implemented in a different library.
1757         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
1758         * gst/gst.h: remove gstcpu.h
1759         * gst/gstcpu.c: remove
1760         * gst/gstcpu.h: remove
1761         * gst/Makefile.am.future: Remove this file.  It's ancient.
1762
1763 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1764
1765         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1766         (gst_bin_send_event):
1767           Add default event/set_manager handlers. The set_manager handler
1768           takes care that the manager is distributed over kids that were
1769           already in the bin before the manager was set. The event handler
1770           is a utility virtual function that sends the event over all sinks,
1771           so that gst_element_send_event (bin, event); has the expected
1772           behaviour.
1773         * gst/gstpad.c: (gst_pad_event_default):
1774           Re-install default event handling for discontinuities, so that
1775           seeking works without requiring hacks in applications or extra
1776           code in sinks.
1777         * gst/gstpipeline.c: (gst_pipeline_class_init),
1778         (gst_pipeline_send_event):
1779           Half hack, half utility: set a pipeline to PAUSED for seek events,
1780           since that is the only way we can guarantee a/v sync. Means that
1781           you can do gst_element_seek (pipeline, method, pos); on a pipeline
1782           and it "just works".
1783
1784 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1785
1786         * gst/gstpipeline.c: (gst_pipeline_use_clock):
1787           Lock/unlock mismatch.
1788
1789 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1790
1791         * docs/faq/gst-uninstalled:
1792           add gst-plugins-base
1793         * docs/gst/Makefile.am:
1794           don't error out until docs are fixed
1795         * docs/gst/gstreamer.types:
1796           remove thread
1797
1798 2005-03-22  Wim Taymans  <wim@fluendo.com>
1799
1800         * check/Makefile.am:
1801         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
1802         * gst/gststructure.c: (gst_structure_set_valist),
1803         (gst_structure_copy_conditional):
1804         Activated more tests.
1805         Added message test.
1806         Added G_TYPE_POINTER to GstStructure.
1807         
1808
1809 2005-03-22  Wim Taymans  <wim@fluendo.com>
1810
1811         * docs/design/part-TODO.txt:
1812         * docs/design/part-events.txt:
1813         * docs/design/part-gstbin.txt:
1814         * docs/design/part-gstbus.txt:
1815         * docs/design/part-gstpipeline.txt:
1816         * docs/design/part-messages.txt:
1817         * gst/gstbus.c:
1818         * gst/gstmessage.c:
1819         Docs updates
1820
1821 2005-03-21  Wim Taymans  <wim@fluendo.com>
1822
1823         * gst/gstbus.c: (gst_bus_post):
1824         Fix copy-and-paste error.
1825
1826 2005-03-21  Wim Taymans  <wim@fluendo.com>
1827
1828         * check/Makefile.am:
1829         * gst/Makefile.am:
1830         * gst/elements/Makefile.am:
1831         * gst/elements/gstelements.c:
1832         * gst/elements/gstfakesink.c: (gst_fakesink_init),
1833         (gst_fakesink_event), (gst_fakesink_chain):
1834         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1835         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
1836         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
1837         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
1838         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1839         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
1840         (gst_fakesrc_loop), (gst_fakesrc_activate),
1841         (gst_fakesrc_change_state):
1842         * gst/elements/gstfakesrc.h:
1843         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
1844         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
1845         (gst_filesrc_open_file), (gst_filesrc_loop),
1846         (gst_filesrc_activate), (gst_filesrc_change_state),
1847         (filesrc_find_peek), (filesrc_find_suggest),
1848         (gst_filesrc_type_find):
1849         * gst/elements/gstidentity.c: (gst_identity_finalize),
1850         (gst_identity_class_init), (gst_identity_init),
1851         (gst_identity_proxy_getcaps), (identity_queue_push),
1852         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
1853         (gst_identity_getrange), (gst_identity_chain),
1854         (gst_identity_sink_loop), (gst_identity_src_loop),
1855         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
1856         (gst_identity_set_property), (gst_identity_get_property),
1857         (gst_identity_change_state):
1858         * gst/elements/gstidentity.h:
1859         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
1860         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
1861         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
1862         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
1863         (gst_tee_sink_activate):
1864         * gst/elements/gsttee.h:
1865         * gst/gst.c: (gst_register_core_elements), (init_post):
1866         * gst/gst.h:
1867         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
1868         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
1869         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
1870         (gst_bin_change_state):
1871         * gst/gstbin.h:
1872         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
1873         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
1874         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
1875         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
1876         (gst_bus_set_sync_handler), (gst_bus_create_watch),
1877         (bus_watch_callback), (bus_watch_destroy),
1878         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
1879         (poll_timeout), (gst_bus_poll):
1880         * gst/gstbus.h:
1881         * gst/gstcaps.h:
1882         * gst/gstdata.h:
1883         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
1884         (gst_element_post_message), (gst_element_message_full),
1885         (gst_element_get_state_func), (gst_element_get_state),
1886         (gst_element_abort_state), (gst_element_commit_state),
1887         (gst_element_lost_state), (gst_element_set_state),
1888         (gst_element_pads_activate), (gst_element_change_state),
1889         (gst_element_dispose), (gst_element_set_manager_func),
1890         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
1891         (gst_element_set_manager), (gst_element_get_manager),
1892         (gst_element_set_bus), (gst_element_get_bus),
1893         (gst_element_set_scheduler), (gst_element_get_scheduler):
1894         * gst/gstelement.h:
1895         * gst/gstevent.c: (gst_event_new_segment_seek),
1896         (gst_event_new_flush):
1897         * gst/gstevent.h:
1898         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
1899         (_gst_message_free), (gst_message_get_type), (gst_message_new),
1900         (gst_message_new_eos), (gst_message_new_error),
1901         (gst_message_new_warning), (gst_message_new_tag),
1902         (gst_message_new_state_changed), (gst_message_new_application),
1903         (gst_message_get_structure), (gst_message_parse_tag),
1904         (gst_message_parse_state_changed), (gst_message_parse_error),
1905         (gst_message_parse_warning):
1906         * gst/gstmessage.h:
1907         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
1908         (gst_real_pad_set_property), (gst_pad_set_active),
1909         (gst_pad_is_active), (gst_pad_set_blocked_async),
1910         (gst_pad_set_blocked), (gst_pad_is_blocked),
1911         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
1912         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
1913         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
1914         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
1915         (gst_pad_link_filtered), (gst_pad_relink_filtered),
1916         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
1917         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
1918         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
1919         (gst_pad_set_caps), (gst_pad_configure_sink),
1920         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
1921         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
1922         (gst_real_pad_dispose), (gst_real_pad_finalize),
1923         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
1924         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1925         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
1926         * gst/gstpad.h:
1927         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
1928         (pipeline_bus_handler), (gst_pipeline_change_state),
1929         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
1930         * gst/gstpipeline.h:
1931         * gst/gstprobe.h:
1932         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
1933         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
1934         (gst_queue_link_src), (gst_queue_bufferalloc),
1935         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
1936         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
1937         (gst_queue_loop), (gst_queue_handle_src_event),
1938         (gst_queue_handle_src_query), (gst_queue_src_activate),
1939         (gst_queue_change_state):
1940         * gst/gstqueue.h:
1941         * gst/gstscheduler.c: (gst_scheduler_init),
1942         (gst_scheduler_dispose), (gst_scheduler_create_task),
1943         (gst_scheduler_factory_create):
1944         * gst/gstscheduler.h:
1945         * gst/gststructure.c: (gst_structure_get_type),
1946         (gst_structure_copy_conditional):
1947         * gst/gststructure.h:
1948         * gst/gsttaginterface.h:
1949         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1950         (gst_task_init), (gst_task_dispose), (gst_task_create),
1951         (gst_task_get_state), (gst_task_start), (gst_task_stop),
1952         (gst_task_pause):
1953         * gst/gsttask.h:
1954         * gst/gstthread.c:
1955         * gst/gstthread.h:
1956         * gst/gsttypes.h:
1957         * gst/schedulers/Makefile.am:
1958         * gst/schedulers/cothreads_compat.h:
1959         * gst/schedulers/entryscheduler.c:
1960         * gst/schedulers/faircothreads.c:
1961         * gst/schedulers/faircothreads.h:
1962         * gst/schedulers/fairscheduler.c:
1963         * gst/schedulers/gstbasicscheduler.c:
1964         * gst/schedulers/gstoptimalscheduler.c:
1965         * gst/schedulers/gthread-cothreads.h:
1966         * gst/schedulers/threadscheduler.c:
1967         (gst_thread_scheduler_task_get_type),
1968         (gst_thread_scheduler_task_class_init),
1969         (gst_thread_scheduler_task_init),
1970         (gst_thread_scheduler_task_start),
1971         (gst_thread_scheduler_task_stop),
1972         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
1973         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1974         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
1975         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
1976         (plugin_init):
1977         * libs/gst/Makefile.am:
1978         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
1979         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
1980         (gst_file_pad_parent_set):
1981         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1982         (gst_dp_event_from_packet):
1983         * tests/complexity.c: (main):
1984         * tests/mass_elements.c: (main):
1985         * testsuite/states/locked.c: (message_received), (main):
1986         * testsuite/states/parent.c: (main):
1987         * tools/gst-inspect.c: (print_element_flag_info),
1988         (print_implementation_info), (print_pad_info):
1989         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
1990         (main):
1991         * tools/gst-md5sum.c: (event_loop), (main):
1992         * tools/gst-typefind.c: (main):
1993         * tools/gst-xmlinspect.c: (print_element_info):
1994         Next big merge.
1995         Added GstBus for mainloop integration.
1996         Added GstMessage for sending notifications on the bus.
1997         Added GstTask as an abstraction for pipeline entry points.
1998         Removed GstThread.
1999         Removed Schedulers.
2000         Simplified GstQueue for multithreaded core.
2001         Made _link threadsafe, removed old capsnego.
2002         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2003         Added pad blocking functions.
2004         Reworked scheduling functions in GstPad to prepare for
2005         scheduling updates soon.
2006         Moved events out of data stream.
2007         Simplified GstEvent types.
2008         Added return values to push/pull.
2009         Removed clocking from GstElement.
2010         Added prototypes for state change function for next merge.
2011         Removed iterate from bins and state change management.
2012         Fixed some elements, disabled others for now.
2013         Fixed -inspect and -launch.
2014         Added check for GstBus.
2015
2016 2005-03-10  Wim Taymans  <wim@fluendo.com>
2017
2018         * docs/design/part-MT-refcounting.txt:
2019         * docs/design/part-clocks.txt:
2020         * docs/design/part-gstelement.txt:
2021         * docs/design/part-gstobject.txt:
2022         * docs/design/part-standards.txt:
2023         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2024         (gst_bin_remove_func), (gst_bin_remove):
2025         * gst/gstbin.h:
2026         * gst/gstbuffer.c:
2027         * gst/gstcaps.h:
2028         * testsuite/clock/clock1.c: (main):
2029         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2030         (main):
2031         * testsuite/dlopen/loadgst.c: (do_test):
2032         * testsuite/refcounting/bin.c: (add_remove_test1),
2033         (add_remove_test2), (main):
2034         * testsuite/refcounting/element.c: (main):
2035         * testsuite/refcounting/element_pad.c: (main):
2036         * testsuite/refcounting/pad.c: (main):
2037         * tools/gst-launch.c: (sigint_handler_sighandler):
2038         * tools/gst-typefind.c: (main):
2039         Doc updates.
2040         Added doc about clock.
2041         removed gst_bin_iterate_recurse_up(), marked methods
2042         for removal.
2043         Fix more testsuites.
2044
2045 2005-03-09  Wim Taymans  <wim@fluendo.com>
2046
2047         * gst/gstpad.c: (gst_pad_get_direction),
2048         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2049         (gst_pad_collect_valist):
2050         * testsuite/bins/interface.c: (main):
2051         * testsuite/caps/audioscale.c: (test_caps):
2052         * testsuite/caps/caps.c: (test1), (test2), (test3):
2053         * testsuite/caps/deserialize.c: (main):
2054         * testsuite/caps/enumcaps.c: (main):
2055         * testsuite/caps/filtercaps.c: (main):
2056         * testsuite/caps/intersect2.c: (main):
2057         * testsuite/caps/random.c: (main):
2058         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2059         * testsuite/caps/sets.c: (check_caps):
2060         * testsuite/caps/simplify.c: (check_caps), (main):
2061         * testsuite/caps/subtract.c: (check_caps):
2062         Fix _pad_get_direction wrt ghostpads.
2063         Fix caps testsuite.
2064
2065 2005-03-09  Wim Taymans  <wim@fluendo.com>
2066
2067         * check/Makefile.am:
2068         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2069         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2070         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2071         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2072         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2073         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2074         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2075         (bin_element_is_sink), (gst_bin_iterate_sinks),
2076         (gst_bin_iterate_all_by_interface):
2077         * gst/gstbin.h:
2078         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2079         (gst_element_change_state), (gst_element_dispose),
2080         (gst_element_finalize), (gst_element_set_loop_function):
2081         * gst/gstelement.h:
2082         * gst/gstiterator.c: (find_custom_fold_func):
2083         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2084         (gst_pad_collectv), (gst_pad_collect_valist),
2085         (gst_pad_template_new):
2086         * gst/gstpipeline.c: (gst_pipeline_class_init),
2087         (gst_pipeline_dispose), (gst_pipeline_set_property),
2088         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2089         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2090         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2091         * gst/gstutils.h:
2092         * gst/schedulers/entryscheduler.c:
2093         * gst/schedulers/gstbasicscheduler.c:
2094         (gst_basic_scheduler_cothreaded_chain),
2095         (gst_basic_scheduler_chain_add_element):
2096         * testsuite/bins/interface.c: (main):
2097         Added GstBin test.
2098         Added GstSystemClock test.
2099         Implemented clock distribution code in GstBin.
2100         Implemented iterate sinks method for future use.
2101         Rearranged gstelement.h
2102         Fix GstIterator comparison bug.
2103         Moved some code to GstPipeline, mostly clocking related.
2104
2105 2005-03-09  Wim Taymans  <wim@fluendo.com>
2106
2107         * configure.ac:
2108         * gst/gst_private.h:
2109         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2110         (gst_bin_remove_func), (gst_bin_remove),
2111         (gst_bin_get_by_name_recurse_up):
2112         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2113         (gst_clock_id_compare_func), (gst_clock_id_wait),
2114         (gst_clock_id_wait_async), (gst_clock_init),
2115         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2116         * gst/gstelement.h:
2117         * gst/gstinfo.c: (_gst_debug_init):
2118         * gst/gstobject.h:
2119         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2120         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2121         * gst/gstpad.h:
2122         Bump version number, we're now 0.9.0
2123         Add future debugging category.
2124         Fix NULL _unref() in _get_by_name_recurse_up
2125         Rearrange gstpad.h.
2126         Update some docs.
2127
2128 2005-03-08  Wim Taymans  <wim@fluendo.com>
2129
2130         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2131         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2132         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2133         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2134         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2135         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2136         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2137         * gst/elements/gstidentity.c: (gst_identity_class_init):
2138         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2139         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2140         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2141         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2142         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2143         (gst_tee_link):
2144         * gst/gstelement.c: (gst_element_class_init),
2145         (gst_element_base_class_init), (gst_element_init),
2146         (gst_element_get_random_pad), (gst_element_wait_state_change),
2147         (gst_element_change_state), (gst_element_dispose),
2148         (gst_element_finalize), (gst_element_set_loop_function):
2149         * gst/gstelement.h:
2150         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2151         * gst/gstthread.c: (gst_thread_class_init),
2152         (gst_thread_release_children_locks), (gst_thread_change_state):
2153         * gst/schedulers/gstbasicscheduler.c:
2154         (gst_basic_scheduler_loopfunc_wrapper),
2155         (gst_basic_scheduler_chain_wrapper),
2156         (gst_basic_scheduler_src_wrapper),
2157         (gst_basic_scheduler_remove_element):
2158         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2159         Remove threadsafe properties. Fix elements because GObject
2160         complains when installing a property before declaring a
2161         set/get_property handler.
2162         Rearrange gstelement.h file, use STATE macros for state locks.
2163         Free mutexes in the finalize method instead of dispose.
2164
2165 2005-03-08  Wim Taymans  <wim@fluendo.com>
2166
2167         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2168         * gst/gstthread.c: (gst_thread_release_children_locks):
2169         Added parentage check.
2170         Fix build og GstThread again.
2171
2172 2005-03-08  Wim Taymans  <wim@fluendo.com>
2173
2174         * docs/design/part-MT-refcounting.txt:
2175         * docs/design/part-conventions.txt:
2176         * docs/design/part-gstobject.txt:
2177         * docs/design/part-relations.txt:
2178         * docs/design/part-standards.txt:
2179         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2180         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2181         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2182         (gst_bin_iterate_all_by_interface):
2183         * gst/gstbuffer.h:
2184         * gst/gstclock.h:
2185         * gst/gstelement.c: (gst_element_class_init),
2186         (gst_element_change_state), (gst_element_set_loop_function):
2187         * gst/gstelement.h:
2188         * gst/gstiterator.c:
2189         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2190         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2191         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2192         (gst_object_set_parent), (gst_object_unparent),
2193         (gst_object_check_uniqueness):
2194         * gst/gstobject.h:
2195         Docs updates, clean up some headers.
2196
2197 2005-03-07  Wim Taymans  <wim@fluendo.com>
2198
2199         * check/.cvsignore:
2200         * check/Makefile.am:
2201         * check/gst-libs/.cvsignore:
2202         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2203         * check/gst/.cvsignore:
2204         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2205         (START_TEST), (gstbus_suite), (main):
2206         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2207         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2208         (gst_data_suite), (main):
2209         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2210         (add_fold_func), (gstiterator_suite), (main):
2211         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2212         (thread_name_object), (thread_name_object_default),
2213         (gst_object_name_compare), (gst_object_suite), (main):
2214         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2215         (gst_pad_suite), (main):
2216         * check/gstcheck.c: (gst_check_log_message_func),
2217         (gst_check_log_critical_func), (gst_check_init):
2218         * check/gstcheck.h:
2219         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2220         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2221         Added checks.
2222
2223 2005-03-07  Wim Taymans  <wim@fluendo.com>
2224
2225         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2226         (gst_list_iterator_next), (gst_list_iterator_resync),
2227         (gst_list_iterator_free), (gst_iterator_new_list),
2228         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2229         (gst_iterator_free), (gst_iterator_push), (filter_next),
2230         (filter_resync), (filter_uninit), (filter_free),
2231         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2232         (gst_iterator_foreach), (find_custom_fold_func),
2233         (gst_iterator_find_custom):
2234         * gst/gstiterator.h:
2235         Added missing files.
2236
2237 2005-03-07  Wim Taymans  <wim@fluendo.com>
2238
2239         * Makefile.am:
2240         * configure.ac:
2241         * docs/design/part-MT-refcounting.txt:
2242         * docs/design/part-conventions.txt:
2243         * docs/design/part-gstobject.txt:
2244         * docs/design/part-relations.txt:
2245         * examples/mixer/mixer.c: (main):
2246         * examples/thread/thread.c: (eos), (main):
2247         * gst/Makefile.am:
2248         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2249         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2250         (gst_spider_plug_from_srcpad):
2251         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2252         (gst_spider_identity_change_state),
2253         (gst_spider_identity_sink_loop_type_finding):
2254         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2255         * gst/elements/gstidentity.c: (gst_identity_init):
2256         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2257         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2258         * gst/elements/gsttypefindelement.c: (free_entry):
2259         * gst/gst.c:
2260         * gst/gst.h:
2261         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2262         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2263         (gst_bin_set_index), (gst_bin_set_element_sched),
2264         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2265         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2266         (gst_bin_iterate_elements), (iterate_child_recurse),
2267         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2268         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2269         (compare_interface), (gst_bin_get_by_interface),
2270         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2271         * gst/gstbin.h:
2272         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2273         (gst_buffer_default_free), (gst_buffer_default_copy),
2274         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2275         (gst_buffer_create_sub):
2276         * gst/gstbuffer.h:
2277         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2278         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2279         (gst_caps_unref), (gst_static_caps_get),
2280         (gst_caps_remove_and_get_structure), (gst_caps_append),
2281         (gst_caps_append_structure), (gst_caps_remove_structure),
2282         (gst_caps_copy_nth), (gst_caps_set_simple),
2283         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2284         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2285         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2286         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2287         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2288         (gst_caps_structure_figure_out_union),
2289         (gst_caps_switch_structures), (gst_caps_do_simplify),
2290         (gst_caps_replace), (gst_caps_from_string),
2291         (gst_caps_copy_conditional):
2292         * gst/gstcaps.h:
2293         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2294         (_gst_clock_id_free), (gst_clock_id_unref),
2295         (gst_clock_id_compare_func), (gst_clock_id_wait),
2296         (gst_clock_id_wait_async), (gst_clock_class_init),
2297         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2298         (gst_clock_get_time), (gst_clock_set_time_adjust),
2299         (gst_clock_set_property), (gst_clock_get_property):
2300         * gst/gstclock.h:
2301         * gst/gstcompat.h:
2302         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2303         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2304         * gst/gstdata.h:
2305         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2306         (gst_element_requires_clock), (gst_element_provides_clock),
2307         (gst_element_set_clock), (gst_element_clock_wait),
2308         (gst_element_wait), (gst_element_set_time_delay),
2309         (gst_element_is_indexable), (gst_element_add_pad),
2310         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2311         (pad_compare_name), (gst_element_get_static_pad),
2312         (gst_element_request_pad), (gst_element_get_request_pad),
2313         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2314         (gst_element_class_get_pad_template_list),
2315         (gst_element_class_get_pad_template), (gst_element_error_func),
2316         (gst_element_get_random_pad), (gst_element_get_event_masks),
2317         (gst_element_send_event), (gst_element_seek),
2318         (gst_element_get_query_types), (gst_element_query),
2319         (gst_element_get_formats), (gst_element_convert),
2320         (gst_element_is_locked_state), (gst_element_set_locked_state),
2321         (gst_element_sync_state_with_parent), (gst_element_change_state),
2322         (gst_element_finalize), (gst_element_yield),
2323         (gst_element_interrupt), (gst_element_set_scheduler),
2324         (gst_element_get_scheduler), (gst_element_set_loop_function):
2325         * gst/gstelement.h:
2326         * gst/gstevent.h:
2327         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2328         (gst_format_get_by_nick), (gst_format_get_details),
2329         (gst_format_iterate_definitions):
2330         * gst/gstformat.h:
2331         * gst/gstindex.c: (gst_index_gtype_resolver):
2332         * gst/gstinfo.c:
2333         * gst/gstinfo.h:
2334         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2335         (gst_mem_chunk_free):
2336         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2337         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2338         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2339         (gst_object_dispatch_properties_changed),
2340         (gst_object_set_name_default), (gst_object_set_name),
2341         (gst_object_get_name), (gst_object_set_name_prefix),
2342         (gst_object_get_name_prefix), (gst_object_set_parent),
2343         (gst_object_get_parent), (gst_object_unparent),
2344         (gst_object_check_uniqueness), (gst_object_save_thyself),
2345         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2346         (gst_object_set_property), (gst_object_get_property),
2347         (gst_object_get_path_string):
2348         * gst/gstobject.h:
2349         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2350         (gst_real_pad_init), (gst_real_pad_get_property),
2351         (gst_pad_custom_new), (gst_pad_get_direction),
2352         (gst_pad_set_active), (gst_pad_is_active),
2353         (gst_pad_set_event_function), (gst_pad_is_linked),
2354         (gst_pad_link_free), (gst_pad_link_intersect),
2355         (gst_pad_link_fixate), (gst_pad_set_caps),
2356         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2357         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2358         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2359         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2360         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2361         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2362         (gst_pad_realize), (gst_pad_get_allowed_caps),
2363         (gst_real_pad_dispose), (gst_real_pad_finalize),
2364         (gst_pad_collectv), (gst_pad_collect_valist),
2365         (gst_pad_template_dispose), (gst_pad_template_new),
2366         (gst_pad_get_internal_links):
2367         * gst/gstpad.h:
2368         * gst/gstpipeline.c: (gst_pipeline_dispose),
2369         (gst_pipeline_change_state):
2370         * gst/gstpipeline.h:
2371         * gst/gstplugin.c:
2372         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2373         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2374         * gst/gstpluginfeature.h:
2375         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2376         * gst/gstquery.c: (_gst_query_type_initialize),
2377         (gst_query_type_register), (gst_query_type_get_by_nick),
2378         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2379         * gst/gstquery.h:
2380         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2381         * gst/gstscheduler.c: (gst_scheduler_add_element),
2382         (gst_scheduler_factory_create):
2383         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2384         (gst_structure_free), (gst_structure_set_name),
2385         (gst_structure_id_set_value), (gst_structure_set_value),
2386         (gst_structure_set_valist), (gst_structure_remove_field),
2387         (gst_structure_remove_fields),
2388         (gst_structure_remove_fields_valist),
2389         (gst_structure_remove_all_fields), (gst_structure_foreach),
2390         (gst_structure_map_in_place),
2391         (gst_caps_structure_fixate_field_nearest_int),
2392         (gst_caps_structure_fixate_field_nearest_double):
2393         * gst/gststructure.h:
2394         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2395         (gst_system_clock_init), (gst_system_clock_dispose),
2396         (gst_system_clock_async_thread),
2397         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2398         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2399         * gst/gstsystemclock.h:
2400         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2401         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2402         * gst/gsttaginterface.c:
2403         * gst/gstthread.c: (gst_thread_dispose),
2404         (gst_thread_release_children_locks), (gst_thread_change_state),
2405         (gst_thread_main_loop):
2406         * gst/gsttrashstack.h:
2407         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2408         * gst/gsttypes.h:
2409         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2410         (gst_element_request_pad), (gst_element_get_pad_from_template),
2411         (gst_element_request_compatible_pad),
2412         (gst_element_get_compatible_pad_filtered),
2413         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2414         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2415         (gst_element_link_many), (gst_element_link),
2416         (gst_element_link_pads), (gst_element_unlink_pads),
2417         (gst_element_unlink_many), (gst_element_unlink),
2418         (gst_pad_can_link_filtered), (gst_pad_can_link),
2419         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2420         (gst_object_default_error), (gst_bin_add_many),
2421         (gst_bin_remove_many), (gst_element_populate_std_props),
2422         (gst_element_class_install_std_props), (gst_buffer_merge),
2423         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2424         (link_fold_func), (gst_pad_proxy_setcaps):
2425         * gst/gstutils.h:
2426         * gst/gstvalue.c: (gst_value_deserialize_string):
2427         * gst/parse/grammar.y:
2428         * gst/schedulers/gstbasicscheduler.c:
2429         (gst_basic_scheduler_cothreaded_chain),
2430         (gst_basic_scheduler_chain_recursive_add),
2431         (gst_basic_scheduler_pad_link):
2432         * gst/schedulers/gstoptimalscheduler.c:
2433         (get_group_schedule_function),
2434         (gst_opt_scheduler_state_transition),
2435         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2436         * libs/gst/bytestream/bytestream.c:
2437         * libs/gst/dataprotocol/dataprotocol.c:
2438         (gst_dp_header_from_buffer):
2439         * po/nb.po:
2440         * po/ru.po:
2441         * tests/threadstate/threadstate2.c: (eos):
2442         * tools/gst-compprep.c: (main):
2443         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
2444         (print_pad_info), (print_children_info):
2445         * tools/gst-launch.c: (idle_func), (main):
2446         * tools/gst-md5sum.c: (idle_func), (main):
2447         * tools/gst-xmlinspect.c: (print_element_info):
2448         First THREADED backport attempt, focusing on adding locks and
2449         making sure the API is threadsafe. Needs more work. More docs
2450         follow this week.
2451
2452 2005-02-24  Andy Wingo  <wingo@pobox.com>
2453
2454         * tests/bench-complexity.scm:
2455         * tests/complexity.gnuplot: New files, good for running complexity
2456         benchmarks.
2457
2458         * tests/Makefile.am:
2459         * tests/complexity.c: New test, sets up N elements, at each level
2460         teeing into M streams per element. Eeeenteresting.
2461
2462         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
2463         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
2464         running bench-mass_elements.scm.
2465
2466         * tests/bench-mass_elements.scm: New script, runs mass_elements
2467         for various numbers of identities, outputting the results to a
2468         file. Requires guile 1.6. Just for testing.
2469
2470 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2471
2472         * gst/schedulers/fairscheduler.c:
2473           compile with debug disabled
2474
2475 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2476
2477         * configure.ac:
2478           hunting season on 0.9 is now OPEN
2479
2480 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2481
2482         * docs/libs/tmpl/gstcontrol.sgml:
2483         * docs/libs/tmpl/gstdparam.sgml:
2484         * docs/libs/tmpl/gstdplinint.sgml:
2485         * docs/libs/tmpl/gstdpman.sgml:
2486         * docs/libs/tmpl/gstdpsmooth.sgml:
2487         * docs/libs/tmpl/gstunitconvert.sgml:
2488           more docs for the state of dparams
2489
2490 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2491
2492         * gst/gstelementfactory.c: (gst_element_factory_create):
2493         * gst/gstobject.c: (gst_object_init),
2494         (gst_object_set_name_default), (gst_object_set_name):
2495           name objects by default, not in gst_element_factory_create. Allows
2496           using elements created with g_object_new. (fixes #167283)
2497
2498 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2499
2500         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
2501           make the time that debugging functions print relative to when
2502           gst_init was called
2503
2504 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
2505
2506         * gst/gsttaginterface.c:
2507           Fix inline docs: tag setter vararg functions are NULL-terminated,
2508           GST_TAG_INVALID doesn't exist any more.
2509
2510 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2511
2512         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
2513         Allocate the 1 byte more memory that was forgotten!!!!!
2514         fixes memory corruption on 64bit platforms
2515
2516 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
2517
2518         * docs/pwg/building-pads.xml:
2519         * docs/pwg/intro-basics.xml:
2520           fixed a few typos, relabeled introductionary list of types
2521         * docs/random/ensonic/dparams.txt:
2522           more notes abut dparam changes
2523         * libs/gst/control/dparam.c: (gst_dparam_attach):
2524         * libs/gst/control/dparammanager.c:
2525         * libs/gst/control/dparammanager.h:
2526           - many comments and notes on dparam implementation
2527           - new dparams are were not initialized to the default value
2528             from param spec
2529
2530 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2531
2532         submitted by: Peter Astakhov
2533
2534         * po/LINGUAS:
2535         * po/ru.po:
2536           adding Russian translation
2537
2538 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2539
2540         * configure.ac:
2541         * docs/gst/Makefile.am:
2542         * docs/libs/Makefile.am:
2543           make sure popt is added to gtk-doc flags.  Fixes #147782.
2544
2545 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
2546
2547         * docs/faq/using.xml:
2548           Fix typo in FAQ (artssink => artsdsink)
2549
2550 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2551
2552         * tools/gst-launch.1.in:
2553           Fix typo (#166699).
2554
2555 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
2556
2557         * docs/faq/using.xml:
2558           Add -v argument to fakesrc/fakesink gst-launch line,
2559           so that the promised output will actually show up.
2560
2561 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2562
2563         * gst/gstthread.c: (gst_thread_change_state):
2564           Implement state-change error handling (#166073).
2565
2566 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2567
2568         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2569           Release interrupt after handling (#166250).
2570
2571 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2572
2573         * configure.ac:
2574           back to HEAD
2575
2576 === release 0.8.9 ===
2577
2578 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2579
2580         * NEWS:
2581         * RELEASE:
2582         * configure.ac:
2583           releasing 0.8.9, "Like Eating Glass"
2584
2585 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2586
2587         submitted by: Clytie Siddall
2588
2589         * po/vi.po: Added Vietnamese translation
2590
2591 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2592
2593         patch by: Tim Philipp-Müller
2594
2595         * configure.ac:
2596         * gst/gstpad.c:
2597           unref data when probe function returns FALSE.  Fixes #166362
2598
2599 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2600
2601         * gst/gst.c: (gst_init_get_popt_table):
2602           Fix typo (#166269).
2603
2604 2005-02-04  Andy Wingo  <wingo@pobox.com>
2605
2606         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
2607         the debugging on whether the caps are compatible.
2608
2609 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2610
2611         * docs/manual/basics-elements.xml:
2612           Fix two typos.
2613
2614 2005-02-02  Wim Taymans  <wim@fluendo.com>
2615
2616         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
2617         (schedule_chain), (get_invalid_call), (chain_invalid_call),
2618         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
2619         Remove some FIXMEs after analysing and commenting why they
2620         are not issues.
2621
2622 2005-02-02  Wim Taymans  <wim@fluendo.com>
2623
2624         * gst/schedulers/gstoptimalscheduler.c:
2625         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
2626         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
2627         (get_invalid_call), (chain_invalid_call),
2628         (get_group_schedule_function), (loop_group_schedule_function),
2629         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2630         (gst_opt_scheduler_state_transition),
2631         (gst_opt_scheduler_add_element),
2632         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
2633         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
2634         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
2635         (gst_opt_scheduler_show):
2636         Added lock to protect scheduler data structures.
2637
2638 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2639
2640         * testsuite/threads/threadi.c: (cb_data):
2641           Fix buglet in test.
2642
2643 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2644
2645         * testsuite/threads/Makefile.am:
2646         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
2647           On Wim's request, split the test in three separately-compiled
2648           tests that each test a very specific bug. Two of them still fail,
2649           will create bugs for those. threadi.c indicates why they fail.
2650
2651 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2652
2653         * gst/schedulers/gstoptimalscheduler.c:
2654         (get_group_schedule_function):
2655           Try to work with the threading mess that queue_link is.
2656
2657 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2658
2659         * gst/gstbin.c: (gst_bin_remove_func):
2660           Explicitely make an element release locks in a group when being
2661           remove from a bin.
2662         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2663           If there's no scheduler, always return immediately (similar to
2664           gst_element_interrupt).
2665
2666 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2667
2668         * gst/gstbin.c: (gst_bin_child_state_change_func):
2669           Remove a piece of code that could never be reached.
2670         * docs/gst/gstreamer-sections.txt:
2671         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
2672         (gst_pad_call_get_function):
2673         * gst/gstpad.h:
2674         * testsuite/pad/Makefile.am:
2675           Fix #150546, enable tests.
2676
2677 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2678
2679         * docs/pwg/advanced-types.xml:
2680           Fix description for buffer-frames=0.
2681         * docs/gst/tmpl/gstbin.sgml:
2682         * gst/gstbin.c: (gst_bin_child_state_change_func),
2683         (gst_bin_change_state), (gst_bin_change_state_norecurse):
2684         * gst/gstbin.h:
2685         * testsuite/threads/Makefile.am:
2686         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
2687         (cb_state), (cb_play), (main):
2688           Fix non-recursive state changes to *really* change the state
2689           of the object, and not just call parent_class->state_change.
2690           Fix a lot of lockups caused by this. Fixes #132775. Add test
2691           for the problem. Also enable test to show #142588 (fixed).
2692         * gst/gstthread.c: (gst_thread_change_state),
2693         (gst_thread_child_state_change):
2694           Don't exit the thread if we go to NULL and are inside thread
2695           context. Instead, return control to the main thread context
2696           and exit from there.
2697         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
2698           Don't unset virtual functions, since those may still be used.
2699           That's not necessarily correct, but suffices for now.
2700         * configure.ac:
2701         * testsuite/Makefile.am:
2702         * testsuite/pad/Makefile.am:
2703         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
2704         (gst_test_sink_base_init), (gst_test_sink_chain),
2705         (gst_test_sink_init), (main):
2706         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
2707         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
2708         (main):
2709         * testsuite/pad/link.c: (gst_test_element_class_init),
2710         (gst_test_element_base_init), (gst_test_src_get),
2711         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
2712         (gst_test_filter_loop), (gst_test_filter_init),
2713         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
2714         (cb_error), (main):
2715           Add tests to show #150546. Pass, but should fail (currently
2716           disabled from the testsuite).
2717         * gst/gstscheduler.c: (gst_scheduler_dispose):
2718           Dereference child schedulers on dispose (#94464).
2719         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
2720           Fix typo.
2721         * testsuite/threads/thread.c: (main):
2722           Add more debug.
2723
2724 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2725
2726         * gst/gstpad.c: (gst_pad_push):
2727           Oops, revert previous commit, broke testsuite...
2728
2729 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2730
2731         * gst/gstpad.c: (gst_pad_push):
2732           Add check that the pad on which the push is performed is not a
2733           get-based pad (#150546).
2734
2735 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2736
2737         * gst/elements/gsttypefindelement.c:
2738         (gst_type_find_element_handle_event):
2739           Fix buffer pushing if stream EOSes during typefinding.
2740
2741 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
2742
2743         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2744
2745         * gst/gstvalue.c: (gst_string_wrap):
2746           Allow NULL-strings as argument (#165365).
2747
2748 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
2749
2750         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2751
2752         * gst/schedulers/faircothreads.c:
2753         (gst_fair_scheduler_cothread_queue_show):
2754           Fix build without debug enabled.
2755
2756 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
2757
2758         * docs/gst/gstreamer-sections.txt:
2759         * docs/libs/gstreamer-libs-docs.sgml:
2760         * docs/libs/gstreamer-libs-sections.txt:
2761         * docs/libs/tmpl/gstcontrol.sgml:
2762         * docs/libs/tmpl/gstdparam.sgml:
2763         * docs/libs/tmpl/gstdplinint.sgml:
2764         * docs/libs/tmpl/gstdpman.sgml:
2765         * docs/libs/tmpl/gstdpsmooth.sgml:
2766         * docs/libs/tmpl/gstputbits.sgml:
2767         * docs/libs/tmpl/gstunitconvert.sgml:
2768         * libs/gst/control/dparam.c:
2769         * libs/gst/control/dparam.h:
2770         * libs/gst/control/dparammanager.c:
2771         (gst_dpman_add_required_dparam_callback),
2772         (gst_dpman_add_required_dparam_direct),
2773         (gst_dpman_add_required_dparam_array),
2774         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
2775         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
2776         (gst_dpman_get_manager)
2777           restructured DParam docs
2778
2779 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
2780
2781         * gst-element-check.m4:
2782           Only check for gst-inspect if we haven't already
2783           found it in previous element check runs
2784
2785 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
2786
2787         * docs/gst/Makefile.am:
2788         * docs/libs/Makefile.am:
2789           fixed install rules to treat style.css as optional
2790
2791 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
2792
2793         * docs/gst/Makefile.am:
2794         * docs/libs/Makefile.am:
2795           install style.css along with docs
2796         * docs/gst/tmpl/gstbin.sgml:
2797         * docs/gst/tmpl/gstclock.sgml:
2798         * docs/gst/tmpl/gstdata.sgml:
2799         * docs/gst/tmpl/gstelement.sgml:
2800         * gst/gstbin.h:
2801         * gst/gstelement.c: (gst_element_class_init):
2802         * gst/gstelement.h:
2803           fixing incomplete docs
2804
2805 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
2806
2807         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
2808           Don't unref seek event twice when fflush() fails
2809           
2810 2005-01-22  David Schleef  <ds@schleef.org>
2811
2812         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
2813
2814 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
2815
2816         * docs/gst/Makefile.am:
2817         * docs/libs/Makefile.am:
2818           added params for deprecation guards
2819         * gst/gst.c:
2820         * gst/gst.h:
2821         * gst/gsterror.c: (_gst_resource_errors_init),
2822         (_gst_stream_errors_init):
2823         * gst/gsterror.h:
2824           documented some more enums
2825
2826 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
2827         * gst/autoplug/gstspideridentity.c:
2828         Cosmetic fix - spider_find_peek should be static
2829         * gst/parse/parse.l:
2830         Applying fix for #164261
2831
2832 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
2833
2834         * docs/gst/gstreamer-sections.txt:
2835         * docs/gst/tmpl/gstplugin.sgml:
2836         * docs/libs/gstreamer-libs-sections.txt:
2837         * docs/libs/tmpl/gstcontrol.sgml:
2838         * gst/gstbuffer.h:
2839         * gst/gsttag.h:
2840         * gst/gstvalue.c:
2841           added docs for the TAG defines
2842
2843 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2844
2845         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2846           Only unref entry if there is an entry.
2847
2848 2005-01-17  Wim Taymans  <wim@fluendo.com>
2849
2850         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
2851         (remove_from_group), (schedule_group), (normalize_group),
2852         (gst_opt_scheduler_iterate):
2853         Also ref/unref decoupled elements before iterating the
2854         group since they are not added to the list of elements.
2855
2856 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2857
2858         * docs/manual/highlevel-components.xml:
2859           Add subtitle/streamselection as new features to playbin.
2860
2861 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2862
2863         * docs/manual/manual.xml:
2864           Re-enable dataaccess docs (oops).
2865
2866 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2867
2868         * docs/pwg/advanced-types.xml:
2869         * docs/random/mimetypes:
2870           Add documentation on libsndfile types (#163309), by Steve Baker
2871           <steve@stevebaker.org>.
2872         * gst/gstelement.c: (gst_element_release_request_pad):
2873           If an element has no explicit function, just remove the pad.
2874
2875 2005-01-17  Luca Ognibene  <luogni@tin.it>
2876
2877         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2878
2879         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
2880           Fix memleak (#163801).
2881
2882 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2883
2884         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
2885           I think this is actually more correct...
2886
2887 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2888
2889         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2890           Another workaround for memory access while destroyed in callback.
2891           Please, someone with refcount knowledge, have a look at this.
2892
2893 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2894
2895         * docs/faq/faq.xml:
2896         * docs/faq/legal.xml:
2897           move the legal Q&A here
2898
2899 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2900
2901         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
2902         (gst_tee_request_new_pad):
2903           Fix negotiation.
2904
2905 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2906
2907         * docs/random/omega/caps2:
2908         * testsuite/caps/caps_strings:
2909           replace framerate aproximations by their real value
2910           (24000/1001, 30000/1001, 60000/1001)
2911           Partially fixes bug #164049
2912
2913 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2914
2915         * docs/gst/Makefile.am:
2916           don't fail on the stupid GstPoptOption
2917
2918 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2919
2920         * gst/gstpad.h:
2921         * gst/gstprobe.c:
2922           allow probes to work on ghost pads by realizing the pad
2923           probe debugging
2924
2925 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2926
2927         * docs/gst/gstreamer-sections.txt:
2928         * docs/gst/tmpl/gstpad.sgml:
2929         * gst/gstpad.c: (gst_pad_set_active_recursive):
2930         * gst/gstpad.h:
2931           Add gst_pad_set_active_recursive().
2932
2933 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2934
2935         * docs/random/release:
2936           updates
2937         * gst/gst_private.h:
2938         * gst/gstinfo.c:
2939         * gst/gstobject.c:
2940           move deep_notify logging to a new category
2941         * gst/gstprobe.c:
2942         * gst/gstprobe.h:
2943           add stuff so bindings can wrap probes
2944
2945 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2946
2947         * gst/gstplugin.c: (gst_plugin_load):
2948           Fix plugin loading if plugin/lib was already loaded. Fixes
2949           #163383
2950
2951 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
2952
2953         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2954
2955         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
2956           Protect plugin loading by a mutex so it's threadsafe. Fixes
2957           #163234.
2958
2959 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2960
2961         * gst/gstevent.c: (_gst_event_copy):
2962           Reference source object when copying events, since it'll be
2963           dereferenced on event dereferencing as well.
2964
2965 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2966
2967         * docs/gst/gstreamer-sections.txt:
2968         * docs/gst/tmpl/gstevent.sgml:
2969         * gst/gstevent.c: (gst_event_new_filler_stamped),
2970         (gst_event_filler_get_duration):
2971         * gst/gstevent.h:
2972           Add two new functions for filler events (which are used to
2973           synchronize streams if one of them is not having any data
2974           for a while) without interrupting the actual data-stream.
2975           Basically a no-op.
2976         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2977         (gst_queue_link_sink), (gst_queue_link_src),
2978         (gst_queue_change_state):
2979           Allow for renegotiation while filled. Required for stream
2980           switching while playing.
2981
2982 2005-01-08  Benjamin Otte  <otte@gnome.org>
2983
2984         * gst/gstelement.c: (gst_element_link_many):
2985           fix up g_return_if_fail's
2986         * po/LINGUAS:
2987         * po/de.po:
2988           add German translation, that was somehow not included
2989
2990 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2991
2992         * docs/random/mimetypes:
2993           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
2994           do not add them to riff-lib as they are not common
2995
2996 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2997
2998         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2999           Check for existence of probe after performing the probe before
3000           re-accessing it to prevent segfaults caused by removal of the
3001           probe in the callback.
3002
3003 2005-01-05  David Schleef  <ds@schleef.org>
3004
3005         * testsuite/registry/Makefile.am:
3006         * testsuite/registry/gst-print-formats.c:
3007         (print_pad_templates_info), (print_element_list),
3008         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3009         (g_list_uniqify), (get_pad_templates_info),
3010         (get_element_mime_list), (print_mime_list), (main): A little
3011         program that looks through the registry to find elements of
3012         a given type.  Not particularly interesting as a test, except
3013         that there's no other test covering the same area.
3014
3015 2005-01-05  David Schleef  <ds@schleef.org>
3016
3017         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3018         (fault_handler_sigaction), (fault_spin),
3019         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3020         in signal.h-type signal handlers by not calling forbidden functions,
3021         including gst_element_set_state().
3022
3023 2005-01-05  David Schleef  <ds@schleef.org>
3024
3025         * gst/gstvalue.h: Mark _gst_reserved[] as private
3026
3027 2005-01-05  David Schleef  <ds@schleef.org>
3028
3029         * gst/gstvalue.c: Fix doc build problem.
3030
3031 2005-01-05  David Schleef  <ds@schleef.org>
3032
3033         * gst/gstvalue.c: Add some documentation
3034
3035 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3036
3037         * docs/README:
3038           another shell oneliner for empty return value docs
3039         * gst/gstcaps.c:
3040         * gst/gstvalue.c:
3041         * libs/gst/control/dparam.c:
3042           more doc fixes (parameters and return values)
3043
3044 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3045
3046         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3047
3048         * gst/gstregistry.h:
3049         * gst/registries/gstxmlregistry.c:
3050           Fix macro's for Mingw (fixes #162276).
3051
3052 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3053
3054         * docs/README:
3055           quick shell oneliner to find undocumented members
3056         * docs/gst/tmpl/gstplugin.sgml:
3057         * docs/gst/tmpl/gstscheduler.sgml:
3058         * docs/gst/tmpl/gstthread.sgml:
3059           more enumtypes cleanup
3060         * gst/gsterror.h:
3061           activated documentation comments, now someone needs to document
3062           the enums :(
3063
3064 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3065
3066         * docs/manual/manual.xml:
3067           Add dataaccess part (doh!).
3068
3069 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3070
3071         * docs/manual/advanced-autoplugging.xml:
3072           Fix typo (intiate -> initiate).
3073
3074 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3075
3076         * docs/random/bbb/streamselection:
3077           Add some notes on how to handle multi-subtitle/-audio streams.
3078
3079 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3080
3081         * docs/gst/gstreamer-docs.sgml:
3082         * docs/gst/gstreamer-sections.txt:
3083         * docs/gst/tmpl/gstenumtypes.sgml:
3084         * docs/gst/tmpl/gsterror.sgml:
3085         * docs/gst/tmpl/gstevent.sgml:
3086         * docs/gst/tmpl/gstpad.sgml:
3087         * docs/gst/tmpl/gstpadtemplate.sgml:
3088         * docs/gst/tmpl/gstthread.sgml:
3089           removed gstenumtypes section from docs and put all the enums into
3090           their sections
3091
3092 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3093
3094         * gst/gstplugin.c:
3095           document gst_library_load a bit more (riff special case + return
3096           value if already loaded)
3097         * testsuite/bytestream/filepadsink.c:
3098           plugin name is 'gstbytestream', not 'bytestream'
3099
3100 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3101
3102         * docs/random/bbb/subtitles:
3103           Add some first mind rumblings on proper subtitle support.
3104
3105 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3106
3107         * po/ca.po:
3108         * po/sv.po:
3109           updated translations
3110
3111 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3112
3113         * docs/manual/advanced-dataaccess.xml:
3114           Add section on how to use fakesrc/fakesink/identity in your
3115           application, plus section on how to embed plugins. Also mention
3116           probes.
3117         * docs/manual/appendix-checklist.xml:
3118         * docs/manual/appendix-debugging.xml:
3119         * docs/manual/appendix-gnome.xml:
3120         * docs/manual/appendix-integration.xml:
3121           Debug -> checklist, GNOME -> integration, add sections on Linux,
3122           KDE integration and add other things useful for application
3123           development.
3124         * docs/manual/manual.xml:
3125           Remove some fixmes, update some file pointers.
3126         * docs/pwg/appendix-checklist.xml:
3127           Fix typo.
3128         * docs/pwg/building-boiler.xml:
3129           Remove ugly header and add commented fixme.
3130         * docs/pwg/pwg.xml:
3131           Add fixme.
3132         * examples/manual/Makefile.am:
3133           Add example for added docs.
3134
3135 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3136
3137         * configure.ac:
3138           back to HEAD
3139
3140 === release 0.8.8 ===
3141
3142 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3143
3144         * NEWS:
3145         * RELEASE:
3146         * configure.ac:
3147           Releasing 0.8.8, "I'll Take Care Of You"
3148
3149 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3150
3151         * configure.ac:
3152           second prerelease
3153
3154 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3155
3156         patch by: Wim Taymans
3157
3158         * gst/gstbin.c:
3159           Fix for #159852 - make iterate emission threadsafe
3160
3161 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3162
3163         * docs/faq/cvs.xml:
3164           notes about new fdo account request
3165
3166 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3167
3168         * docs/gst/gstreamer-docs.sgml:
3169         * docs/gst/tmpl/gstenumtypes.sgml:
3170         * docs/gst/tmpl/gstplugin.sgml:
3171         * docs/libs/gstreamer-libs-docs.sgml:
3172           Added missing short docs. Added ids for navigation.
3173
3174 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3175
3176         * docs/manual/advanced-autoplugging.xml:
3177         * docs/manual/advanced-schedulers.xml:
3178         * docs/manual/advanced-threads.xml:
3179           Rewrites. Remove cothreads, go a bit into opt specifically,
3180           document threads and their gotchas, and do some technical stuff
3181           on autoplugging plus add some working examples. Fixes #157395.
3182         * examples/manual/Makefile.am:
3183           Add typefind/autoplugger example (one that actually works).
3184           Remove queue example since it's a duplicate of the thread one.
3185
3186 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3187
3188         * gst/gstvalue.c: (gst_value_deserialize_string):
3189           use deprecated g_value_set_string_take_ownership to keep compatible
3190           with glib 2.2
3191
3192 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3193
3194         * gst/gstvalue.c: (gst_value_deserialize_string):
3195           revert last patch, only dom a g_utf8_validate now before accepting
3196           the string - caps parsing strips " from strings so we can't rely on
3197           them
3198         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3199           disable a test that tested the above and comment it
3200
3201 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3202
3203         Patch reviewed by David Schleef  <ds@schleef.org>
3204
3205         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3206         bug #153882)
3207         * win32/gstenumtypes.h: same
3208
3209 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3210
3211         * gst/gstpad.c: (gst_pad_query):
3212           Do query on realized pad, similar to how convert/send_event handle
3213           this. Also makes sense, since this pad belongs to the function to
3214           which this query will be sent. Fixes #158163.
3215
3216 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3217
3218         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3219
3220 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3221
3222         * docs/faq/general.xml: fix pipeline to actually work
3223
3224 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3225
3226         * gst/gstvalue.c: (gst_value_deserialize_string):
3227           check that a simple string that gets deserialized does not contain
3228           invalid characters
3229         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3230           remove a test that tested a wring behaviour
3231
3232 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3233
3234         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3235
3236         * docs/manual/intro-motivation.xml:
3237           Fix typos.
3238
3239 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3240
3241         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3242
3243         * docs/gst/tmpl/gstprobe.sgml:
3244           Fix documentation of probe callback - it is supposed to return
3245           FALSE, not TRUE, to remove data from the stream (#159087).
3246
3247 2004-12-16  Daniel Gazard  <dany42@free.fr>
3248
3249         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3250
3251         * gst/gstelementfactory.c: (gst_element_factory_create):
3252           Fix compile failure if compiling without libxml2 support (#149936).
3253
3254 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3255
3256         * docs/manual/advanced-autoplugging.xml:
3257         * docs/manual/highlevel-components.xml:
3258           Move spider from autoplugging to components. Autoplugging is for
3259           internals, not for solutions. ;-).
3260
3261 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3262
3263         * docs/random/ds/0.9-suggested-changes:
3264           Make note on device/location/uri property names.
3265
3266 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3267
3268         * docs/manual/advanced-autoplugging.xml:
3269         * docs/manual/advanced-clocks.xml:
3270         * docs/manual/advanced-interfaces.xml:
3271         * docs/manual/advanced-metadata.xml:
3272         * docs/manual/advanced-position.xml:
3273         * docs/manual/advanced-schedulers.xml:
3274         * docs/manual/advanced-threads.xml:
3275         * docs/manual/appendix-gnome.xml:
3276         * docs/manual/appendix-programs.xml:
3277         * docs/manual/appendix-quotes.xml:
3278         * docs/manual/autoplugging.xml:
3279         * docs/manual/basics-bins.xml:
3280         * docs/manual/basics-data.xml:
3281         * docs/manual/basics-elements.xml:
3282         * docs/manual/basics-helloworld.xml:
3283         * docs/manual/basics-init.xml:
3284         * docs/manual/basics-pads.xml:
3285         * docs/manual/basics-plugins.xml:
3286         * docs/manual/bins-api.xml:
3287         * docs/manual/bins.xml:
3288         * docs/manual/buffers-api.xml:
3289         * docs/manual/buffers.xml:
3290         * docs/manual/clocks.xml:
3291         * docs/manual/components.xml:
3292         * docs/manual/cothreads.xml:
3293         * docs/manual/debugging.xml:
3294         * docs/manual/dparams-app.xml:
3295         * docs/manual/dynamic.xml:
3296         * docs/manual/elements-api.xml:
3297         * docs/manual/elements.xml:
3298         * docs/manual/factories.xml:
3299         * docs/manual/gnome.xml:
3300         * docs/manual/goals.xml:
3301         * docs/manual/helloworld.xml:
3302         * docs/manual/helloworld2.xml:
3303         * docs/manual/highlevel-components.xml:
3304         * docs/manual/highlevel-xml.xml:
3305         * docs/manual/init-api.xml:
3306         * docs/manual/intro-basics.xml:
3307         * docs/manual/intro-motivation.xml:
3308         * docs/manual/intro-preface.xml:
3309         * docs/manual/intro.xml:
3310         * docs/manual/links-api.xml:
3311         * docs/manual/links.xml:
3312         * docs/manual/manual.xml:
3313         * docs/manual/motivation.xml:
3314         * docs/manual/pads-api.xml:
3315         * docs/manual/pads.xml:
3316         * docs/manual/plugins-api.xml:
3317         * docs/manual/plugins.xml:
3318         * docs/manual/programs.xml:
3319         * docs/manual/queues.xml:
3320         * docs/manual/quotes.xml:
3321         * docs/manual/schedulers.xml:
3322         * docs/manual/states-api.xml:
3323         * docs/manual/states.xml:
3324         * docs/manual/threads.xml:
3325         * docs/manual/typedetection.xml:
3326         * docs/manual/win32.xml:
3327         * docs/manual/xml.xml:
3328           Try 2. This time, include a short preface as a "general
3329           introduction", also add code blocks around all code samples
3330           so they get compiled. We still need a way to tell readers
3331           the filename of the code sample. In some cases, don't show
3332           all code in the documentation, but do include it in the generated
3333           code. This allows for focussing on specific bits in the docs,
3334           while still having a full test application available.
3335         * examples/manual/Makefile.am:
3336           Fix up examples for new ADM. Add several of the new examples that
3337           were either added or were missing from the build system.
3338         * examples/manual/extract.pl:
3339           Allow nameless blocks.
3340
3341 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3342
3343         * docs/manual/elements-api.xml:
3344         * docs/manual/helloworld.xml:
3345         * examples/manual/extract.pl:
3346           fix last example.  Add example of adding code blocks that are not
3347           shown in docbook output.
3348
3349 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3350
3351         * docs/manual/dynamic.xml:
3352         * docs/manual/elements-api.xml:
3353         * docs/manual/gnome.xml:
3354         * docs/manual/helloworld2.xml:
3355         * docs/manual/init-api.xml:
3356         * docs/manual/queues.xml:
3357         * docs/manual/threads.xml:
3358         * docs/manual/xml.xml:
3359         * examples/manual/extract.pl:
3360           Make it possible to extract example code from separate blocks.
3361           Should make Ronald happy.
3362
3363 2004-12-15  Wim Taymans  <wim@fluendo.com>
3364
3365         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3366         (remove_from_group), (group_elements_set_visited),
3367         (normalize_group), (gst_opt_scheduler_iterate):
3368         Fix bug where a flag was not updated on a decoupled entry point 
3369         because we were just checking the group element list and decoupled
3370         elements are not in that list..
3371
3372 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3373
3374         * docs/manual/advanced-autoplugging.xml:
3375         * docs/manual/advanced-clocks.xml:
3376         * docs/manual/advanced-dparams.xml:
3377         * docs/manual/advanced-interfaces.xml:
3378         * docs/manual/advanced-metadata.xml:
3379         * docs/manual/advanced-position.xml:
3380         * docs/manual/advanced-schedulers.xml:
3381         * docs/manual/advanced-threads.xml:
3382         * docs/manual/appendix-debugging.xml:
3383         * docs/manual/appendix-gnome.xml:
3384         * docs/manual/appendix-programs.xml:
3385         * docs/manual/appendix-quotes.xml:
3386         * docs/manual/appendix-win32.xml:
3387         * docs/manual/autoplugging.xml:
3388         * docs/manual/basics-bins.xml:
3389         * docs/manual/basics-data.xml:
3390         * docs/manual/basics-elements.xml:
3391         * docs/manual/basics-helloworld.xml:
3392         * docs/manual/basics-init.xml:
3393         * docs/manual/basics-pads.xml:
3394         * docs/manual/basics-plugins.xml:
3395         * docs/manual/bins-api.xml:
3396         * docs/manual/bins.xml:
3397         * docs/manual/buffers-api.xml:
3398         * docs/manual/buffers.xml:
3399         * docs/manual/clocks.xml:
3400         * docs/manual/components.xml:
3401         * docs/manual/cothreads.xml:
3402         * docs/manual/debugging.xml:
3403         * docs/manual/dparams-app.xml:
3404         * docs/manual/dynamic.xml:
3405         * docs/manual/elements-api.xml:
3406         * docs/manual/elements.xml:
3407         * docs/manual/factories.xml:
3408         * docs/manual/gnome.xml:
3409         * docs/manual/goals.xml:
3410         * docs/manual/helloworld.xml:
3411         * docs/manual/helloworld2.xml:
3412         * docs/manual/highlevel-components.xml:
3413         * docs/manual/highlevel-xml.xml:
3414         * docs/manual/init-api.xml:
3415         * docs/manual/intro-motivation.xml:
3416         * docs/manual/intro-preface.xml:
3417         * docs/manual/intro.xml:
3418         * docs/manual/links-api.xml:
3419         * docs/manual/links.xml:
3420         * docs/manual/manual.xml:
3421         * docs/manual/motivation.xml:
3422         * docs/manual/pads-api.xml:
3423         * docs/manual/pads.xml:
3424         * docs/manual/plugins-api.xml:
3425         * docs/manual/plugins.xml:
3426         * docs/manual/programs.xml:
3427         * docs/manual/queues.xml:
3428         * docs/manual/quotes.xml:
3429         * docs/manual/schedulers.xml:
3430         * docs/manual/states-api.xml:
3431         * docs/manual/states.xml:
3432         * docs/manual/threads.xml:
3433         * docs/manual/typedetection.xml:
3434         * docs/manual/win32.xml:
3435         * docs/manual/xml.xml:
3436           First try at rewriting the ADM. Needs lotsamore work, but some
3437           parts might already be somewhat useful.
3438         * docs/pwg/advanced-interfaces.xml:
3439           Remove properties interface, it never actually existed (except for
3440           on my HD...).
3441
3442 2004-12-13  David Schleef  <ds@schleef.org>
3443
3444         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
3445         be NULL (bug #160220).
3446
3447 2004-12-13  David Schleef  <ds@schleef.org>
3448
3449         * configure.ac: remove all mmx stuff, because it's not used.
3450         * docs/random/ds/0.9-suggested-changes: additional notes
3451         * include/Makefile.am: we don't use these anymore
3452         * include/mmx.h: remove
3453         * include/sse.h: remove
3454
3455 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3456
3457         * docs/random/mimetypes:
3458           Add FOURCC code for h264 codec (VSSH)
3459           Add alternate FOURCC codes for h263 related codecs
3460
3461 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
3462
3463         * docs/manual/programs.xml:
3464           Added more gst-launch examples.
3465
3466 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3467
3468         * gst/gstqueue.c: (gst_queue_handle_src_query):
3469           Check for availability again.
3470
3471 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3472
3473         * gst/gstcaps.c: (gst_caps_compare_structures):
3474           Simple caps go first. This has the nice side-effect of fixing an
3475           obscure warning.
3476
3477 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3478
3479         * gst/gstversion.h.in:
3480           Protect header.
3481
3482 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3483
3484         * gst/schedulers/gstoptimalscheduler.c:
3485         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
3486         (gst_opt_scheduler_get_wrapper):
3487           When we're recursing into a chain run, only run the directly
3488           related group, not all queued ones. This will fix a possible
3489           deadlock in chains with more than two groups.
3490
3491 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3492
3493         * autogen.sh:
3494           remove patch if autopoint fails
3495
3496 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3497
3498         * docs/gst/gstreamer-sections.txt:
3499           Document Thomas' addition, fix build, make Luis the sheriff happy.
3500
3501 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3502
3503         * gst/gstplugin.c:
3504         * gst/gstplugin.h:
3505           add accessor for version field
3506
3507 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3508
3509         submitted by: Luca Ferretti <elle.uca@infinito.it>
3510
3511         * po/LINGUAS:
3512         * po/it.po:
3513           New tranlation added: Italian
3514
3515 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3516
3517         * gst/gstpad.c: (gst_pad_is_negotiated),
3518         (gst_pad_get_negotiated_caps):
3519           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
3520           it doesn't actually check the contents), so be sure to hand it
3521           a RealPad else we'll crash.
3522
3523 2004-12-03  Wim Taymans  <wim@fluendo.com>
3524
3525         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3526         (gst_queue_link), (gst_queue_handle_src_query):
3527         Reverted to 1.110 until this makes the testsuite and various
3528         apps work.
3529
3530 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
3531
3532         * docs/upload.mak: fix included CVS conflict strings
3533
3534 2004-12-01  William Jon McCann  <mccann@jhu.edu>
3535
3536         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3537
3538         * gst/gstelement.c: (gst_element_error_full):
3539           Use g_error_new_literal because error text may have
3540           percentage signs in it. Fixes #160019.
3541
3542 2004-12-01  Benjamin Otte  <otte@gnome.org>
3543
3544         * gst/elements/gstbufferstore.c:
3545         (gst_buffer_store_add_buffer_func):
3546           don't try to make subbuffers bigger than they can be. (fixes
3547           #159970)
3548
3549 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3550
3551         * docs/gst/gstreamer-sections.txt:
3552         * docs/gst/tmpl/gstvalue.sgml:
3553           Add new function to docs to fix build.
3554
3555 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3556
3557         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
3558         * gst/gstpad.c: (_gst_pad_default_fixate_value),
3559         (_gst_pad_default_fixate_foreach):
3560         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
3561         * gst/gstvalue.h:
3562           Deprecate _type_is_fixed, use _value_is_fixed instead, since
3563           in some cases (arrays), the fixedness depends on the content.
3564         * gst/gstqueue.c: (gst_queue_handle_src_query):
3565           Check for availability before doing something.
3566
3567 2004-11-29  Wim Taymans  <wim@fluendo.com>
3568
3569         * testsuite/threads/Makefile.am:
3570         * testsuite/threads/signals.c: (gst_test_get_type),
3571         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
3572         (gst_test_set_property), (gst_test_get_property),
3573         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
3574         (gst_test_do_prop), (run_thread), (main):
3575         Added a bunch of testcases that show threadsafety bugs in glib.
3576
3577 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
3578
3579         * docs/manual/programs.xml:
3580           Added a first batch of gst-launch examples, as provided by Ronald
3581           and others from the devel-mlist
3582
3583 2004-11-28  Benjamin Otte  <otte@gnome.org>
3584
3585         * gst/gstelement.c: (gst_element_negotiate_pads):
3586           simplify
3587         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
3588         (gst_value_serialize_string), (gst_value_deserialize_string):
3589           add unwrapping of previously wrapped strings. Fix bug in wrapping
3590           while at it.
3591         * testsuite/caps/value_serialize.c: (test1),
3592         (test_string_serialization), (test_string_deserialization), (main):
3593           add tests for string (de)serialization
3594
3595 2004-11-26  Wim Taymans  <wim@fluendo.com>
3596
3597         * testsuite/threads/159566.c: (object_deep_notify), (main):
3598         * testsuite/threads/Makefile.am:
3599         Added testsuite to show bug #159566
3600
3601 2004-11-25  Wim Taymans  <wim@fluendo.com>
3602
3603         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
3604         (gst_thread_child_state_change), (gst_thread_main_loop):
3605         Ref the thread object in the GThread mainloop. Break out of the
3606         thread mainloop if it holds the last ref. This properly exits
3607         the threads when disposing the thread from its own context. It
3608         also avoids possible deadlocks in the dispose function.
3609
3610 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
3611
3612         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
3613         it is necessary to wait.
3614
3615 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3616
3617         * docs/pwg/building-boiler.xml:
3618           Make description somewhat clearer.
3619
3620 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3621
3622         * docs/upload.mak:
3623           Apparently docs changed location on FDO's server.
3624
3625 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3626
3627         * docs/pwg/appendix-checklist.xml:
3628           Add some random notes on things to check when writing an element.
3629           This list can be extended as people see fit.
3630
3631 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
3632
3633         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
3634         (gst_queue_link_src): Allow for renegotiating the caps of the sink
3635         pad. The queue will now wait until it is empty and forward the new
3636         caps to the source.
3637         * gst/gstbin.c (gst_bin_set_element_sched)
3638         (gst_bin_unset_element_sched): Make sure that all elements and
3639         links are registered and unregistered with the scheduler exactly
3640         once. This elaborates on a fix by Benjamin Otte, but
3641         guarantees that decoupled elements are also registered.
3642
3643 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3644
3645         * docs/manual/quotes.xml:
3646           add a quote
3647         * configure.ac:
3648         * gst/gst.c:
3649         * gst/gstinfo.c:
3650           add LIBDIR and move init message higher up so it's at the start
3651
3652 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3653
3654         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
3655         * gstreamer.spec.in: add fair
3656
3657 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3658
3659         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3660         * gst/elements/gstidentity.c: (gst_identity_class_init):
3661           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
3662           <teuf@gnome.org> (#157263).
3663         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3664         (gst_type_find_handle_src_query):
3665           Subtract size of internally stored data from position queries.
3666
3667 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
3668
3669         * gst/schedulers/fairscheduler.c:
3670         * gst/schedulers/faircothreads.c:
3671         * gst/schedulers/faircothreads.h:
3672         New cothread based scheduler: Fair scheduler.
3673         * gst/schedulers/gthread-cothreads.h: 
3674         Add the standard #if around the whole file.
3675         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
3676         compilation of the functions defined in this file. This is
3677         necessary to be able to use this file as a normal header.
3678         * gst/schedulers/Makefile.am: Add compiling support for fair
3679         scheduler.
3680         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
3681         scheduler cothreads layer from documentation generation.
3682
3683 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3684
3685         * gst/autoplug/gstspideridentity.c:
3686         (gst_spider_identity_sink_loop_type_finding):
3687           Don't crash if that function is not implemented.
3688
3689 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3690
3691         * docs/pwg/advanced-types.xml:
3692           Another typo.
3693
3694 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3695
3696         * docs/pwg/intro-preface.xml:
3697           Hm, ok, so the brackets weren't really useful...
3698         * docs/pwg/other-ntoone.xml:
3699           Fix embarassing typo.
3700
3701 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3702
3703         * docs/pwg/intro-preface.xml:
3704           Rewrite preface.
3705
3706 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3707
3708         * docs/pwg/advanced-scheduling.xml:
3709         * docs/pwg/advanced-tagging.xml:
3710         * docs/pwg/advanced-types.xml:
3711         * docs/pwg/building-boiler.xml:
3712         * docs/pwg/building-chainfn.xml:
3713         * docs/pwg/building-signals.xml:
3714         * docs/pwg/building-state.xml:
3715         * docs/pwg/building-testapp.xml:
3716         * docs/pwg/intro-basics.xml:
3717         * docs/pwg/other-manager.xml:
3718         * docs/pwg/other-source.xml:
3719           Typo fixes.
3720         * docs/pwg/other-manager.xml:
3721           Add some first content. No example code yet.
3722         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3723           Remove double newlines.
3724
3725 2004-11-04  Wim Taymans  <wim@fluendo.com>
3726
3727         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3728         (remove_from_group), (normalize_group), (group_migrate_connected),
3729         (gst_opt_scheduler_iterate):
3730         * testsuite/schedulers/.cvsignore:
3731         * testsuite/schedulers/Makefile.am:
3732         * testsuite/schedulers/queue_link.c: (main):
3733         Added testcase for scheduler segfault.
3734         Fix scheduler segfault when removing a decoupled
3735         entry point as the last element from a group.
3736
3737 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3738
3739         * gst/gstmarshal.list: add missing marshaller, fixes build
3740
3741 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3742
3743         * docs/random/signal: added notes about using BOXED for GstBuffer
3744         signal marshallers, not POINTER
3745
3746 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3747
3748         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3749         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
3750         POINTER=>BOXED changes to marshal GstBuffers
3751
3752 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3753
3754         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
3755         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
3756
3757 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
3758
3759         * docs/gst/gstreamer-sections.txt:
3760         * docs/gst/tmpl/gstcaps.sgml:
3761         * docs/gst/tmpl/gsterror.sgml:
3762         * docs/gst/tmpl/gstinfo.sgml:
3763         * docs/gst/tmpl/gstmacros.sgml:
3764         * docs/gst/tmpl/gstutils.sgml:
3765         * docs/random/ensonic/interfaces.txt:
3766         * gst/gstinfo.h:
3767           added some more docs, removed two obsolete defines
3768
3769 2004-11-02  Kjartan Maraas <as at gnome.org>
3770
3771         reviewed by: Wim Taymans, Ronald Bultje.
3772
3773         * gst/cothreads.c: (cothread_create):
3774         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3775         (gst_bin_child_state_change_func):
3776         * gst/gstbuffer.c: (gst_buffer_span):
3777         * gst/gstelement.c: (gst_element_get_index),
3778         (gst_element_get_event_masks), (gst_element_get_query_types),
3779         (gst_element_get_formats):
3780         * gst/gsterror.c: (_gst_core_errors_init),
3781         (_gst_library_errors_init), (_gst_resource_errors_init),
3782         (_gst_stream_errors_init):
3783         * gst/gstobject.c: (gst_object_default_deep_notify):
3784         * gst/gstpad.c: (gst_pad_get_event_masks),
3785         (gst_pad_get_internal_links_default):
3786         * gst/gstplugin.c: (gst_plugin_register_func),
3787         (gst_plugin_get_module):
3788         * gst/gststructure.c: (gst_structure_get_string),
3789         (gst_structure_get_abbrs), (gst_structure_from_abbr),
3790         (gst_structure_to_abbr):
3791         * gst/gstutils.c: (gst_print_element_args):
3792         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3793         (setup_group_scheduler), (gst_opt_scheduler_iterate):
3794         Aplied part of patch #157127: Cleanup of issues reported by 
3795         sparse.
3796         Also do not try to use cothreads when there is no cothread
3797         context yet.
3798
3799 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
3800
3801         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3802         (gst_opt_scheduler_iterate):
3803         Applied patch #154061. Running a pipeline in which an element 
3804         calls GST_ELEMENT_ERROR in the chain function, the opt 
3805         scheduler doesn't unref the chain so it never gets freed.
3806
3807 2004-11-02  Wim Taymans  <wim@fluendo.com>
3808
3809         * gst/gststructure.c: (gst_structure_get_abbrs),
3810         (gst_structure_from_abbr), (gst_structure_to_abbr):
3811         Remove that ugly if-then thing in the code that converts
3812         between strings and types.
3813
3814 2004-11-02  Wim Taymans  <wim@fluendo.com>
3815
3816         * gst/gstscheduler.c: (gst_scheduler_add_element),
3817         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
3818         Aplied clock distribution patch, this should fix bug
3819         #148787.
3820
3821 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3822
3823         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
3824
3825         * po/LINGUAS:
3826         * po/nb.po:
3827           Added Norwegian Bokmaal translation
3828
3829 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3830
3831         * tools/gst-inspect.c: (print_signal_info):
3832           print signal arguments as pointers if they are
3833
3834 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
3835
3836         * docs/pwg/building-boiler.xml:
3837           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
3838
3839 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3840
3841         * gst/parse/parse.l:
3842         * testsuite/parse/parse1.c: (main):
3843         Since parse can do 'element name=a:b' make 'a:b.' work as
3844         well. 
3845         Added testcase to verify fix.
3846
3847 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3848
3849         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
3850         Use the realpad when printing the direction.
3851         Add extra \n when printing extensions of typefind factories.
3852
3853 2004-10-13  David Schleef  <ds@schleef.org>
3854
3855         * examples/manual/Makefile.am: $< isn't portable in Makefile
3856         rules.
3857
3858 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
3859
3860         * docs/gst/tmpl/gstobject.sgml:
3861         * docs/gst/tmpl/gstplugin.sgml:
3862         * docs/gst/tmpl/gstpluginfeature.sgml:
3863         * docs/gst/tmpl/gstregistry.sgml:
3864         * docs/gst/tmpl/gstversion.sgml:
3865         * gst/gstbin.c:
3866           more api documentation
3867         * gst/gstplugin.c: (gst_plugin_register_func),
3868         (gst_plugin_check_file), (gst_plugin_load_file):
3869           better error signaling and logging
3870
3871 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3872
3873         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
3874           Subtract current queue contents from position queries.
3875
3876 2004-10-11  Johan Dahlin  <johan@gnome.org>
3877
3878         * gst/gsturi.c (gst_uri_get_location): unescape string
3879         (gst_uri_construct): escape string.
3880
3881 2004-10-11  Benjamin Otte  <otte@gnome.org>
3882
3883         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
3884         (gst_pad_try_set_caps_nonfixed):
3885           allow renegotiation of unconnected pads (as inside spider). Simply
3886           return OK if unconnected - mimic try_set_caps there.
3887
3888 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3889
3890         * gst/gstbin.c: (gst_bin_sync_children_state):
3891           Add missing break.
3892
3893 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3894
3895         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
3896         Set element to EOS before sending EOS event
3897
3898 2004-10-08  Wim Taymans  <wim at fluendo dot com>
3899
3900         * gst/elements/gsttypefindelement.c:
3901         (gst_type_find_element_handle_event):
3902         Handle EOS events when doing the transition from
3903         typefind to data passing. This should fix the
3904         infinite loops in short files.
3905
3906 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3907
3908         * gst/gstthread.c: (gst_thread_change_state),
3909         (gst_thread_child_state_change):
3910         Make sure no iteration happens while performing
3911         the state change as it could mess up the internal
3912         consistency of the thread state.
3913
3914 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3915
3916         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
3917         (gst_thread_change_state), (gst_thread_child_state_change):
3918         Do not try to grab the iterate lock in the state change method
3919         when we are in the same thread as the iterate or else we
3920         could deadlock. Some other cleanups.
3921
3922 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3923
3924         * configure.ac:
3925           bump nano to cvs
3926
3927 === release 0.8.7 ===
3928
3929 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3930
3931         * configure.ac:
3932         * NEWS:
3933         * RELEASE:
3934         * configure.ac:
3935           releasing 0.8.7, "A Cruise"
3936
3937 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3938
3939         * docs/random/mimetypes:
3940         Add an entry for Sony ATRAC3 audio format with mime-type
3941         used by rmdemux et riff-read
3942
3943 2004-10-06  Wim Taymans  <wim at fluendo dot com>
3944
3945         * gst/elements/gsttypefindelement.c: (stop_typefinding):
3946         Push the buffer store instead of clearing it in case that
3947         the stream is not seekable.
3948
3949 2004-10-06  Wim Taymans  <wim at fluendo dot com>
3950
3951         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
3952         (gst_thread_main_loop):
3953         Lock the iteration and the state change so that automatic
3954         negotiation and fixation does not happen at the same time
3955         as the in stream negotiation.
3956
3957 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3958
3959         * configure.ac:
3960           bump nano to cvs
3961
3962 === release 0.8.6 ===
3963
3964 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3965
3966         * configure.ac:
3967         * NEWS:
3968         * RELEASE:
3969         * configure.ac:
3970           releasing 0.8.6, "Narc"
3971
3972 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3973
3974         * configure.ac:
3975           prerel bump
3976
3977 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3978
3979         patch by: Steve Lhomme
3980
3981         * gst/elements/gstfakesrc.c:
3982         * gst/elements/gstidentity.c:
3983         * gst/gstthread.c:
3984           Fix for #153881
3985
3986 2004-10-01  Wim Taymans  <wim at fluendo dot com>
3987
3988         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
3989         Fix threadsafety of the crc checking function.
3990
3991 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
3992
3993         patch by: Ronald Bultje
3994
3995         * gst/elements/gsttypefindelement.c: (stop_typefinding),
3996         (gst_type_find_element_handle_event),
3997         (gst_type_find_element_chain):
3998         * gst/elements/gsttypefindelement.h:
3999          #153657.
4000          Filter out discont event from seekable sources when typefind
4001          asks them to seek.  Fixes typefind with demuxers for
4002          avi, asf and matroska.
4003
4004 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4005
4006         * docs/gst/gstreamer-sections.txt:
4007         * gst/gstcaps.c:
4008         * gst/gstcaps.h:
4009         * gst/gstpad.c:
4010           Revert preferred caps: (#147789)
4011
4012 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4013
4014         * win32/dirent.c:
4015           fix a memory leak
4016
4017 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4018
4019         * configure.ac:
4020           bump for prerelease
4021
4022 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4023
4024         * docs/Makefile.am:
4025         * docs/manual/elements-api.xml:
4026           restructure so that common stuff is shown first
4027         * docs/manual/init-api.xml:
4028           convert to examples
4029         * docs/manual/manual.xml:
4030         * docs/manuals.mak:
4031         * docs/url.entities:
4032           link to API on the website, possibly override later in build
4033         * examples/manual/.cvsignore:
4034           ignore more
4035         * examples/manual/Makefile.am:
4036           add more examples
4037         * examples/manual/extract.pl:
4038           error out on failure
4039
4040 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4041
4042         * docs/gst/tmpl/gstthread.sgml:
4043         * docs/manual/init-api.xml:
4044         * examples/manual/Makefile.am:
4045           convert two code bits to examples
4046
4047 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4048
4049         * gst/gstelement.c: (gst_element_change_state):
4050           Well, actually, I was about to remove this insane assert when
4051           I noticed Wim already did that. A warning is nice so we can
4052           fix actual ugs (using --g-fatal-warnings and backtraces), so
4053           I added that instead.
4054
4055 2004-09-06  Wim Taymans  <wim@fluendo.com>
4056
4057         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4058         (gst_element_threadsafe_properties_post_run),
4059         (gst_element_set_state), (gst_element_change_state):
4060         Added extra refcounting around various places. 
4061
4062 2004-09-06  Wim Taymans  <wim@fluendo.com>
4063
4064         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4065         Fix debug info.
4066
4067 2004-09-06  Wim Taymans  <wim@fluendo.com>
4068
4069         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4070         (remove_from_group):
4071         Some more debug info.
4072
4073 2004-09-03  Wim Taymans  <wim@fluendo.com>
4074
4075         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4076         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4077         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4078         (gst_fakesrc_get), (gst_fakesrc_change_state):
4079         * gst/elements/gstfakesrc.h:
4080         * gst/elements/gstidentity.c: (gst_identity_class_init),
4081         (gst_identity_init), (gst_identity_chain),
4082         (gst_identity_set_property), (gst_identity_get_property),
4083         (gst_identity_change_state):
4084         * gst/elements/gstidentity.h:
4085         Added datarate properties to limit the datarate.
4086
4087 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4088
4089         * gst/autoplug/gstspider.c: (plugin_init):
4090           don't set a rank. We don't want to autoplug by inserting spiders.
4091
4092 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4093
4094         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4095         (gst_spider_identity_plug):
4096           add a template for spider's sink
4097         * gst/gst.c: (gst_register_core_elements):
4098           queue's rank should be NULL, we don't want spider to add it.
4099
4100 2004-08-18  David Schleef  <ds@schleef.org>
4101
4102         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4103         * docs/libs/Makefile.am: same
4104         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4105         * docs/random/ds/0.9-planning: random additions
4106         * docs/random/ds/0.9-suggested-changes: same
4107         * gst/gstxml.h: remove vestigal GstXMLNs definition
4108
4109         Preferred caps: (#147789)
4110         * docs/gst/gstreamer-sections.txt: Add symbols
4111         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4112         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4113         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4114         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4115         (gst_caps_get_preferred), (gst_caps_set_preferred),
4116         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4117         (gst_caps_use_preferred): Handle caps preferences
4118         * gst/gstcaps.h: Add caps preferences
4119         * gst/gstpad.c: (gst_pad_link_get_preferred),
4120         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4121         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4122         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4123         negotiation.
4124
4125 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4126
4127         * gst/autoplug/gstspideridentity.c:
4128         (gst_spider_identity_request_new_pad):
4129         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4130         (gst_aggregator_init):
4131         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4132         (gst_fakesink_init):
4133         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4134         (gst_fakesrc_init):
4135         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4136         (gst_fdsink_init):
4137         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4138         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4139         (gst_filesink_init):
4140         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4141         (gst_filesrc_init):
4142         * gst/elements/gstidentity.c: (gst_identity_base_init),
4143         (gst_identity_init):
4144         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4145         (gst_multifilesrc_init):
4146         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4147         (gst_pipefilter_init):
4148         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4149         (gst_statistics_init):
4150         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4151         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4152           s/gst_pad_new/&_from_template/
4153           register pad templates in the base_init function
4154           add static pad template definitions
4155
4156 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4157
4158         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4159         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4160         * testsuite/refcounting/pad.c: (main):
4161         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4162           s/gst_pad_new/&_from_template/
4163           prepare deprecation of gst_pad_new
4164
4165 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4166
4167         patch by: Luca Ognibene <skaboy81@virgilio.it>
4168
4169         * gst/gstcaps.c:
4170         * gst/gstelement.c:
4171         * gst/gstpad.c:
4172         * gst/gstxml.c:
4173           fix memleaks.  Fixes #150001
4174
4175 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4176
4177         * docs/random/ds/0.9-suggested-changes:
4178           add notes - mostly about pad templates
4179
4180 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4181
4182         * win32/GStreamer.vcproj:
4183           temporary locale files are .gmo not .mo
4184
4185 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4186
4187         * configure.ac: bump nano to cvs
4188
4189 === release 0.8.5 ===
4190
4191 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4192
4193         * configure.ac:
4194           releasing 0.8.5, "Stuttgart"
4195         * NEWS:
4196         * RELEASE:
4197         * configure.ac:
4198         * docs/random/release:
4199           updates for release
4200
4201 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4202
4203         patch by: Wim Taymans (wim@fluendo.com)
4204
4205         * gst/gstbuffer.c:
4206         * gst/gstindex.h:
4207         * libs/gst/dataprotocol/dataprotocol.c:
4208           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4209
4210 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4211
4212         * Makefile.am:
4213         * win32/MANIFEST:
4214           add win32 dir to the build.  Fixes #149981.
4215
4216 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4217
4218         * configure.ac:
4219           bump libtool versioning
4220         * gst/gststructure.c:
4221           mark function as static
4222         * po/af.po:
4223         * po/az.po:
4224         * po/ca.po:
4225         * po/cs.po:
4226         * po/en_GB.po:
4227         * po/fr.po:
4228         * po/nl.po:
4229         * po/sq.po:
4230         * po/sr.po:
4231         * po/sv.po:
4232         * po/tr.po:
4233         * po/uk.po:
4234           translations update
4235         * win32/README.txt:
4236           trademark protection
4237
4238 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4239
4240         * configure.ac:
4241           fix GST_ORIGIN
4242           set GST_PACKAGE to source, and distinguish between release and other
4243         * tools/gst-inspect.c:
4244           print out plugin an element factory is part of so we see this info
4245
4246 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4247
4248         * docs/gst/gstreamer-sections.txt:
4249         * docs/gst/tmpl/gstbuffer.sgml:
4250         * docs/gst/tmpl/gstschedulerfactory.sgml:
4251           reorder docs a little, make GstBuffer's more sensible.
4252         * gst/gstbuffer.h:
4253           API: added GST_BUFFER_FLAG_DELTA_UNIT
4254         * gst/gstscheduler.c:
4255           comment API addition
4256
4257 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4258
4259         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4260           work with non-regular files that can be mmapped (like /dev/zero)
4261         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4262           get rid of typefinds that require a seek when we can't seek instead
4263           of trying them over and over again
4264         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4265           return non-zero failure value when the pipeline was interrupted or
4266           an error occurred
4267
4268 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4269
4270         * win32/config.h:
4271         * win32/GStreamer.vcproj:
4272           compile and install the locales
4273
4274 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4275
4276         * gst/gstvalue.c:
4277           fix a possible memory leak under Windows
4278
4279 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4280
4281         * win32/GStreamer.vcproj:
4282           fix a memory leak that occured under Windows
4283         * win32/gstreamer.def:
4284           add gst_scheduler_register
4285
4286 2004-08-11  Benjamin Otte  <otte@gnome.org>
4287
4288         * docs/gst/gstreamer-sections.txt:
4289         * gst/gstscheduler.c: (gst_scheduler_register):
4290         * gst/gstscheduler.h:
4291           API:
4292           add gst_scheduler_register shortcut similar to gst_element_register
4293         * gst/schedulers/entryscheduler.c: (plugin_init):
4294         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4295         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4296           use it
4297
4298 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4299
4300         * gst/gstvalue.h:
4301           fix a memory leak that occured under Windows
4302
4303 2004-08-10  Colin Walters  <walters@redhat.com>
4304
4305         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4306         Don't use O_EXCL to open temporary registry.  It will prevent
4307         registry creation if a temporary one already exists, which
4308         is unnecessary.
4309
4310 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4311
4312         * docs/gst/gstreamer-sections.txt:
4313         * docs/gst/tmpl/gstvalue.sgml:
4314           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4315
4316 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4317
4318         * win32/gstbytestream.vcproj:
4319         * win32/gstelements.vcproj:
4320         * win32/gstgetbits.vcproj:
4321         * win32/gst-inspect.vcproj:
4322         * win32/gst-launch.vcproj:
4323         * win32/gstoptimalscheduler.vcproj:
4324         * win32/GStreamer.vcproj:
4325         * win32/gst-register.vcproj:
4326         * win32/gstspider.vcproj:
4327           update the include and lib dirs to fit standard libraries as
4328           described in the Win32 manual
4329
4330 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4331
4332         * win32/config.h:
4333         * win32/gstversion.h:
4334           enable NLS again, push the version number for the coming 0.8.5 release
4335
4336 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4337
4338         * gst/gstvalue.h:
4339           export gst_type_XXX for windows DLLs
4340
4341 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4342
4343         * docs/faq/gst-uninstalled:
4344           fix PKG_CONFIG_PATH and PYTHONPATH
4345         * gst/schedulers/Makefile.am:
4346           cleanup
4347         * libs/gst/bytestream/bytestream.c:
4348           remove newline
4349         * po/LINGUAS:
4350         * po/sq.po:
4351           adding Albanian translation (Laurent Dhima)
4352         * po/cs.po:
4353           updated
4354
4355 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4356
4357         * po/ca.po:
4358         * po/sv.po:
4359           updated translations
4360
4361 2004-08-04  Benjamin Otte  <otte@gnome.org>
4362
4363         * tests/mass_elements.c: (main):
4364           allow specifying src and sink element explicitly, so I can test
4365           videotestsrc instead of fakesrc
4366
4367 2004-08-04  Benjamin Otte  <otte@gnome.org>
4368
4369         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4370         (gst_structure_id_empty_new), (gst_structure_empty_new),
4371         (gst_structure_copy):
4372           add gst_structure_id_empty_new_with_size to allow preallocating
4373           value array sizes. Use this in gst_structure_copy to get rid of
4374           reallocs.
4375           don't do quark=>string=>quark when copying structures
4376
4377 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4378
4379         * docs/manual/win32.xml:
4380         * win32/README.txt:
4381           update documentation with the clean version of dependencies
4382
4383 2004-08-03  Benjamin Otte  <otte@gnome.org>
4384
4385         * gst/schedulers/entryscheduler.c:
4386         (gst_entry_scheduler_remove_element):
4387           fix for GST_DISABLE_DEBUG
4388         * tools/gst-launch.c: (print_tag):
4389           fixes for G_DISABLE_ASSERT
4390
4391 2004-08-03  Benjamin Otte  <otte@gnome.org>
4392
4393         * gst/gst.c: (gst_register_core_elements):
4394           fix for G_DISABLE_ASSERT
4395         * gst/gstinfo.c: (__gst_in_valgrind):
4396           add for GST_DISABLE_DEBUG
4397
4398 2004-08-03  Benjamin Otte  <otte@gnome.org>
4399
4400         * gst/parse/parse.l:
4401           fix for G_DISABLE_ASSERT
4402
4403 2004-08-03  Wim Taymans  <wim@fluendo.com>
4404
4405         * gst/gstbin.c: (gst_bin_get_type),
4406         (gst_bin_child_state_change_func):
4407         * gst/gstthread.c: (gst_thread_change_state):
4408         Backported some debug logging from a reverted patch
4409         Don't try to destroy the thread twice. Added some more
4410         debugging in GstThread. Unlock and signal even if we
4411         are in the thread context.
4412
4413 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4414
4415         * po/uk.po:
4416           updated translation
4417
4418 2004-07-30  David Schleef  <ds@schleef.org>
4419
4420         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4421
4422 2004-07-29  David Schleef  <ds@schleef.org>
4423
4424         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4425         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4426
4427 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4428
4429         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4430         (gst_bin_add_func), (gst_bin_remove_func),
4431         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4432         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4433         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4434         (gst_bin_sync_children_state):
4435         * gst/gstbin.h:
4436         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4437         (gst_thread_change_state):
4438         * testsuite/states/Makefile.am:
4439           revert state change patches as agreed so we can rework them
4440           gradually
4441
4442 2004-07-29  Benjamin Otte  <otte@gnome.org>
4443
4444         * libs/gst/control/Makefile.am:
4445           link to libgstreamer (fixes Debian bug 262019, see
4446           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
4447
4448 2004-07-29  Wim Taymans  <wim@fluendo.com>
4449
4450         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4451         (check_from_fraction_convert), (transform_test), (main):
4452         Make the test less pedantic about float roundoff errors.
4453
4454 2004-07-29  Benjamin Otte  <otte@gnome.org>
4455
4456         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
4457         (gst_filesrc_srcpad_event):
4458           make seek events to before start/after end of file not fail, but
4459           seek to start/end instead
4460         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
4461           add more output
4462
4463 2004-07-29  Benjamin Otte  <otte@gnome.org>
4464
4465         * gst/gstpad.c: (gst_pad_set_explicit_caps):
4466           check that caps are fixed
4467         * gst/gstpad.c: (gst_pad_template_new):
4468           don't try to simplify caps, costs too much time on gst_init
4469         * gst/gstplugin.c: (gst_plugin_add_feature):
4470           G_ERROR if features are added twice
4471         * gst/gsttypefind.c: (gst_type_find_register):
4472         * gst/gstelementfactory.c: (gst_element_register):
4473           don't add features twice
4474         * docs/random/ds/0.9-suggested-changes:
4475           add note about possible gst_init optimization
4476
4477 2004-07-28  David Schleef  <ds@schleef.org>
4478
4479         * testsuite/elements/Makefile.am:
4480         * testsuite/elements/struct_i386.h:
4481         * testsuite/elements/struct_size.c: (main):  A little test
4482         to keep distcheck from working if someone changes a structure
4483         size accidentally.
4484
4485 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4486
4487         * docs/libs/Makefile.am:
4488         * docs/libs/gstreamer-libs-docs.sgml:
4489         * docs/libs/gstreamer-libs-sections.txt:
4490         * docs/libs/tmpl/gstbytestream.sgml:
4491         * docs/libs/tmpl/gstcontrol.sgml:
4492         * docs/libs/tmpl/gstdataprotocol.sgml:
4493         * docs/libs/tmpl/gstgetbits.sgml:
4494         * libs/gst/bytestream/Makefile.am:
4495         * libs/gst/bytestream/bytestream.c:
4496         * libs/gst/bytestream/bytestream.h:
4497         * libs/gst/control/Makefile.am:
4498         * libs/gst/dataprotocol/Makefile.am:
4499         * libs/gst/getbits/Makefile.am:
4500         * libs/gst/getbits/getbits.h:
4501           various doc and style fixes, adding bytestream to libs docs.
4502
4503 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4504
4505         * docs/gst/gstreamer-docs.sgml:
4506         * docs/libs/Makefile.am:
4507         * docs/libs/gstreamer-libs-docs.sgml:
4508         * docs/libs/gstreamer-libs-sections.txt:
4509         * libs/gst/control/dparam.c:
4510           more doc fixes.  gst-libs docs now build the same way as gst.
4511
4512 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4513
4514         * configure.ac:
4515         * testsuite/Makefile.am:
4516         * testsuite/bins/Makefile.am:
4517         * testsuite/caps/Makefile.am:
4518         * testsuite/cleanup/Makefile.am:
4519         * testsuite/clock/Makefile.am:
4520         * testsuite/debug/Makefile.am:
4521         * testsuite/dlopen/Makefile.am:
4522         * testsuite/dynparams/Makefile.am:
4523         * testsuite/elements/.cvsignore:
4524         * testsuite/elements/Makefile.am:
4525         * testsuite/enumcaps/Makefile.am:
4526         * testsuite/enumcaps/enumcaps.c:
4527         * testsuite/ghostpads/Makefile.am:
4528         * testsuite/indexers/Makefile.am:
4529         * testsuite/negotiation/Makefile.am:
4530         * testsuite/parse/Makefile.am:
4531         * testsuite/plugin/Makefile.am:
4532         * testsuite/refcounting/Makefile.am:
4533         * testsuite/schedulers/.cvsignore:
4534         * testsuite/states/Makefile.am:
4535         * testsuite/tags/Makefile.am:
4536         * testsuite/threads/Makefile.am:
4537           fold enumcaps into caps dir
4538           clean up Makefile.am's for testsuite
4539
4540 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4541
4542         * docs/gst/Makefile.am:
4543         * docs/libs/Makefile.am:
4544           clean up docs build.  Fixes needless rebuilding of template files.
4545
4546 2004-07-28  Wim Taymans  <wim@fluendo.com>
4547
4548         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
4549         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
4550         Make sure that a bin state change tries to keep the children
4551         in sync. 
4552         Added debug logging to the thread.
4553
4554 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4555
4556         * win32/GStreamer.vcproj:
4557         * win32/gstreamer.def:
4558           more exports for the plugins
4559
4560 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4561
4562         * win32/gstgetbits.vcproj:
4563         * win32/gstgetbits.def:
4564         * win32/msvc71.sln:
4565           add support for the getbits plugin
4566
4567 2004-07-27  Wim Taymans  <wim@fluendo.com>
4568
4569         * gst/gstvalue.c: (gst_value_transform_double_fraction),
4570         (gst_value_transform_fraction_double), (_gst_value_initialize):
4571         * testsuite/caps/Makefile.am:
4572         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4573         (check_from_fraction_convert), (transform_test), (main):
4574         Added transform functions between double and fraction.
4575         Added testcase to verify transforms
4576
4577 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4578
4579         * win32/GStreamer.vcproj:
4580           rename GStreamer-0.8.lib to libgstreamer.lib
4581
4582 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4583
4584         * win32/gstelements.vcproj:
4585         * win32/gstoptimalscheduler.vcproj:
4586           fixes for the Release build
4587
4588 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4589
4590         * win32/config.h:
4591           update the version number
4592
4593 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4594
4595         * win32/GStreamer.vcproj:
4596           add gstinterface to the build
4597
4598 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4599
4600         * win32/gstreamer.def:
4601           add many definitions needed by plugins,
4602           GST_CAT_DEFAULT only available in the Debug build ?
4603
4604 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4605
4606         * gst/gstelement.c: (gst_element_set_eos_recursive):
4607           various whitespace fixes.
4608           doc fix, fixes #148497
4609
4610 2004-07-25  Benjamin Otte  <otte@gnome.org>
4611
4612         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
4613           don't delay links on the sink elements, it causes unnegotiated
4614           links.
4615         * gst/elements/gsttypefindelement.c:
4616         (gst_type_find_element_base_init):
4617           add our padtemplates, we indeed do have some.
4618         * gst/elements/gsttypefindelement.c:
4619         (gst_type_find_element_handle_event),
4620         (gst_type_find_element_chain):
4621           don't push data when typefinding failed.
4622         * gst/gstpad.c: (gst_pad_link_fixate):
4623           check that no fixate function returns empty caps.
4624         * gst/gstpad.c: (gst_pad_push):
4625           check that the link is negotiated before data gets pushed.
4626         * tools/gst-register.c: (main):
4627           don't assert (fixes #148283)
4628
4629 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4630
4631         * docs/gst/gstreamer-sections.txt:
4632         * docs/gst/tmpl/gstconfig.sgml:
4633           add GST_PLUGIN_EXPORT definition
4634
4635 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4636
4637         * gst/gstplugin.h:
4638         * gst/gstconfig.h.in:
4639         * win32/gstconfig.h:
4640         * win32/gstelements.def:
4641         * win32/gstelements.vcproj:
4642         * win32/gstoptimalscheduler.def:
4643         * win32/gstoptimalscheduler.vcproj:
4644         * win32/gstspider.def:
4645         * win32/gstspider.vcproj:
4646           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
4647
4648 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4649
4650         * docs/gst/gstreamer-sections.txt:
4651           remove GST_CAT_DEFAULT because the type has changed
4652
4653 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4654
4655         * win32/gstbytestream.vcproj:
4656         * win32/gstelements.vcproj:
4657         * win32/gst-inspect.vcproj:
4658         * win32/gst-launch.vcproj:
4659         * win32/gstoptimalscheduler.vcproj:
4660         * win32/GStreamer.vcproj:
4661         * win32/gst-register.vcproj:
4662         * win32/gstspider.vcproj:
4663         * win32/msvc71.sln:
4664           Copy the files where needed after building, The testsuite will be
4665           built separately
4666
4667 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4668
4669         * win32/config.h:
4670         * win32/README.txt:
4671         * docs/manual/win32.xml:
4672         Fixed the plugin and GStreamer location
4673
4674 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4675
4676         * win32/gstreamer.def:
4677         More exports for the plugins
4678
4679 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4680
4681         * gst/gstinfo.h:
4682         Marc was right, we need to export literally GST_CAT_DEFAULT
4683
4684 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4685
4686         * win32/config.h:
4687         NLS crashes in gettext, disabled until this is solved
4688
4689 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4690
4691         * win32/gst-inspect.vcproj:
4692         * win32/gst-launch.vcproj:
4693         Should use NLS when available
4694
4695 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4696
4697         * gst/registries/gstxmlregistry.c:
4698         removing the file doesn't seem to be a good idea on Linux
4699
4700 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4701
4702         * gst/registries/gstxmlregistry.c:
4703         Remove the registry before renaming the tempfile (needed for Windows)
4704
4705 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4706
4707         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
4708         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
4709         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
4710         * gst/elements/gstmultifilesrc.h:
4711         Added newmedia property so it generates newmedia events between each
4712         file when property is set, as well as fixed eos handling
4713
4714 2004-07-22  David Schleef  <ds@schleef.org>
4715
4716         * gst/gststructure.c: (gst_structure_id_empty_new),
4717         (gst_structure_empty_new):  Set type field correctly.
4718         * gst/gststructure.h: Check type field correctly.
4719         * testsuite/caps/Makefile.am:
4720         * testsuite/caps/structure.c: (test1), (main): Add a very small
4721         test for structures.
4722
4723 2004-07-22  David Schleef  <ds@schleef.org>
4724
4725         * docs/random/ds/0.9-suggested-changes: more comments
4726         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
4727
4728 2004-07-22  Benjamin Otte  <otte@gnome.org>
4729
4730         * gst/gstelementfactory.c: (gst_element_register):
4731           set the factory in the class struct, so gst_element_get_factory
4732           actually works
4733         * gst/parse/grammar.y:
4734           set element to playing when it gets unlocked as we can't rely on the
4735           bin state - all elements in the bin state might still be locked in
4736           NULL)
4737
4738 2004-07-22  Benjamin Otte  <otte@gnome.org>
4739
4740         * gst/gstelement.c: (gst_element_set_state_func):
4741           make this a static function
4742
4743 2004-07-22  Wim Taymans  <wim@fluendo.com>
4744
4745         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
4746         (gst_opt_scheduler_pad_link):
4747         fix 147894-2 and the group_link problem.
4748
4749 2004-07-22  Wim Taymans  <wim@fluendo.com>
4750
4751         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4752         (handoff_identity), (main):
4753         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4754         (handoff_identity), (main):
4755         * testsuite/schedulers/Makefile.am:
4756         * testsuite/schedulers/group_link.c: (main):
4757         Show bug in scheduler when linking chain and loop based element 
4758         where the chain based element was not yet in a group.
4759
4760 2004-07-21  Benjamin Otte  <otte@gnome.org>
4761
4762         * gst/.cvsignore:
4763         * gst/autoplug/.cvsignore:
4764         * gst/elements/.cvsignore:
4765         * gst/indexers/.cvsignore:
4766         * libs/gst/bytestream/.cvsignore:
4767         * libs/gst/control/.cvsignore:
4768         * libs/gst/getbits/.cvsignore:
4769         * testsuite/states/.cvsignore:
4770         * testsuite/threads/.cvsignore:
4771           keep this up to date, since I seem to be the only one who cares
4772           about not missing files on commits (editor's note: no you don't,
4773           but feel free to change them at the time you add stuff instead
4774           of later on)
4775
4776 2004-07-21  Benjamin Otte  <otte@gnome.org>
4777
4778         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4779         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
4780         (gst_bin_child_state_change_func), (set_kid_state_func),
4781         (gst_bin_set_state), (gst_bin_change_state_norecurse):
4782           make state changes work correctly and reentrant (so removing
4783           elements from bins during state changes of bins doesn't cause
4784           segfaults or even wrong states)
4785           add debugging category and debugging output to print children states
4786         * gst/gstbin.c: (gst_bin_dispose): 
4787           add some assertion checks
4788         * gst/gstbin.h:
4789         * gst/gstbin.c: (gst_bin_sync_children_state):
4790           deprecate this function - it just does gst_bin_set_state (bin,
4791           GST_STATE (bin)) 
4792         * testsuite/threads/queue.c: (main):
4793           don't use gst_bin_sync_children_state anymore
4794         * testsuite/states/Makefile.am:
4795         * testsuite/states/bin.c:
4796           test that the state changes of bins work as expected
4797         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
4798           some adjustments to change states correctly, too
4799         * gst/gstthread.c: (gst_thread_change_state):
4800           don't enable/disable "threadsafe" properties, they're unused and
4801           cause random segfaults
4802         * testsuite/threads/Makefile.am:
4803           the queue check randomly passes now, ignore it
4804
4805 2004-07-21  Benjamin Otte  <otte@gnome.org>
4806
4807         * gst/gstpad.c:
4808           check if data is NULL before outputting debug info. (fixes #145100)
4809
4810 2004-07-21  Benjamin Otte  <otte@gnome.org>
4811
4812         * gst/schedulers/entryscheduler.c:
4813         (gst_entry_scheduler_loop_wrapper),
4814         (gst_entry_scheduler_chain_wrapper),
4815         (gst_entry_scheduler_get_wrapper):
4816           reset the state when the cothread starts, so we don't get assertion
4817           failures on restarting of cothreads
4818
4819 2004-07-20  Benjamin Otte  <otte@gnome.org>
4820
4821         * gst/gstelement.c: (gst_element_link_pads_filtered):
4822           use correct sinkpad, if only sinkpad is specified, but not srcpad
4823           (fixes #147889)
4824         * gst/gstelement.c: (gst_element_set_state_func),
4825         (gst_element_change_state): ref/unref the element, signal handlers
4826         could get rid of the element otherwise
4827
4828 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4829
4830         * docs/random/ds/0.9-suggested-changes:
4831           Make note about renaming fixed-list to array.
4832         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
4833         (_gst_value_initialize):
4834           Add array intersections.
4835         * testsuite/caps/intersect2.c: (main):
4836           Add test for array intersections.
4837
4838 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4839
4840         * configure.ac: back to cvs
4841
4842 === release 0.8.4 ===
4843
4844 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4845
4846         * configure.ac:
4847           releasing 0.8.4, "Paella"
4848           bump libtool versioning
4849
4850 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4851
4852         * po/LINGUAS:
4853         * po/ca.po:
4854           adding Catalan translation (Jordi Mallach)
4855
4856 2004-07-20  Wim Taymans  <wim@fluendo.com>
4857
4858         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4859         (handoff_identity), (main):
4860         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4861         (handoff_identity), (main):
4862         * testsuite/schedulers/Makefile.am:
4863         Added failing testcase for variant of #147894
4864
4865 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4866
4867         patch by: David Moore
4868
4869         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4870         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
4871         (group_migrate_connected):
4872         * testsuite/schedulers/Makefile.am:
4873           fix for #142813 (Deadlock in optimal scheduler)
4874
4875 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4876
4877         patch by: Wim Taymans
4878
4879         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4880         (gst_opt_scheduler_schedule_run_queue),
4881         (gst_opt_scheduler_get_wrapper), (get_group),
4882         (group_migrate_connected):
4883         * testsuite/schedulers/Makefile.am:
4884           fix for #147819 (Add some checks in the opt scheduler)
4885
4886 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4887
4888         patch by: Benjamin Otte
4889
4890         * gst/gstelementfactory.c: (__gst_element_details_set):
4891           fix for #147929: running gst-register in non-utf8 locale can cause
4892           invalid registry
4893
4894 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4895
4896         patch by: Wim Taymans
4897
4898         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
4899         (group_has_element), (element_get_reachables_func),
4900         (group_migrate_connected):
4901           fix for #147894 (opt scheduler decoupled elements mismanagement)
4902         * testsuite/schedulers/Makefile.am:
4903           testsuite app now passes
4904
4905 2004-07-19  Wim Taymans  <wim@fluendo.com>
4906
4907         * testsuite/schedulers/147819.c: (handoff_identity1),
4908         (handoff_identity2), (main):
4909         * testsuite/schedulers/Makefile.am:
4910         Added testcase for bug 147819
4911
4912 2004-07-19  Wim Taymans  <wim@fluendo.com>
4913
4914         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4915         (handoff_identity), (main):
4916         * testsuite/schedulers/Makefile.am:
4917         Added testcase for bug 147894
4918
4919 2004-07-16  Wim Taymans  <wim@fluendo.com>
4920
4921         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
4922         * testsuite/schedulers/142183.c: (handoff_identity), (main):
4923         * testsuite/schedulers/Makefile.am:
4924         Added testsuite for bug 142183 in its two incarnations. Refcount
4925         is not increased for scheduled elements and threadsafe properties
4926         mutexes are not properly unlocked.
4927
4928 2004-07-16  Wim Taymans  <wim@fluendo.com>
4929
4930         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
4931         (create_chain), (destroy_chain), (create_group), (destroy_group),
4932         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
4933         (group_dec_link), (gst_opt_scheduler_pad_link),
4934         (group_inc_links_for_element), (group_migrate_connected):
4935         Call group_inc_link with the proper src->sink ordering -- 
4936         break this, and we break sort_chain. patch from wingo for bug
4937         147713.
4938         Partially revert patch 1.89. When adding a loop based element to 
4939         the scheduler, the links to other groups are automatically followed
4940         and incremented. This should not happen because the bin will call
4941         pad_link explicitly for those connection, resulting in them counted 
4942         twice. Results in assertion failure on pipeline cleanup.
4943
4944 2004-07-16  Wim Taymans  <wim@fluendo.com>
4945
4946         * testsuite/schedulers/143777-2.c: (main):
4947         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
4948         (main):
4949         * testsuite/schedulers/Makefile.am:
4950         Added cleanup code to testcase 143777-2.
4951         Added testcase to show bug 147713, does not really show the
4952         deadlock as I can't figure out how to trigger it, but it does
4953         demonstrate bad ordering in the scheduler.
4954
4955 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4956
4957         * gst/gstvalue.c: (gst_value_deserialize_fraction):
4958           change strndup to g_strndup.  Fixes #147707
4959
4960 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4961
4962         * po/af.po:
4963         * po/az.po:
4964         * po/cs.po:
4965         * po/en_GB.po:
4966         * po/fr.po:
4967         * po/nl.po:
4968         * po/sr.po:
4969         * po/sv.po:
4970         * po/tr.po:
4971         * po/uk.po:
4972           updated translations
4973
4974 2004-07-16  Benjamin Otte  <otte@gnome.org>
4975
4976         * gst/gstvalue.c: (gst_greatest_common_divisor):
4977           use ints and return ints, fractions only use ints, too, so this
4978           avoids accidently casting multiplications to unsigned
4979         (gst_value_lcopy_fraction): it's ints, not uint32
4980         (gst_value_set_fraction): disallow minint, multiplying and negation
4981           are broken with it
4982         (gst_value_fraction_multiply): fix to make large numbers work and get
4983         rid of the assumption that the multiplication of two ints fits an
4984         int64 - dunno if that's true for all systems
4985         * testsuite/caps/Makefile.am:
4986         * testsuite/caps/fraction-multiply-and-zero.c:
4987         (check_multiplication), (check_equal), (zero_test), (main):
4988           add tests for all the stuff above
4989         * testsuite/caps/value_compare.c: (test1):
4990           fix comment
4991         * tests/.cvsignore:
4992         * testsuite/caps/.cvsignore:
4993         * testsuite/debug/.cvsignore:
4994         * testsuite/dlopen/.cvsignore:
4995         * testsuite/states/.cvsignore:
4996           get up to date
4997
4998 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4999
5000         * docs/manual/bins-api.xml:
5001         * docs/manual/factories.xml:
5002         * docs/manual/helloworld.xml:
5003         * docs/manual/links-api.xml: 
5004           fixes for out of date info, incorrect info and grammar
5005
5006 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5007
5008         * docs/manual/pads.xml:
5009         * docs/manual/pads-api.xml: grammar fix
5010
5011 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5012
5013         * docs/manual/pads-api.xml: typo + grammar fix
5014
5015 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5016
5017         * docs/gst/gstreamer-sections.txt:
5018           add new symbols
5019         * docs/gst/tmpl/gstelement.sgml:
5020         * docs/gst/tmpl/gstpad.sgml:
5021         * docs/gst/tmpl/gsttypes.sgml:
5022         * docs/gst/tmpl/gstvalue.sgml:
5023           update docs
5024         * gst/gststructure.c: (gst_structure_set_valist),
5025         (gst_structure_from_abbr), (gst_structure_to_abbr):
5026         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5027         (gst_greatest_common_divisor), (gst_value_init_fraction),
5028         (gst_value_copy_fraction), (gst_value_collect_fraction),
5029         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5030         (gst_value_get_fraction_numerator),
5031         (gst_value_get_fraction_denominator),
5032         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5033         (gst_value_deserialize_fraction),
5034         (gst_value_transform_fraction_string),
5035         (gst_value_transform_string_fraction),
5036         (gst_value_compare_fraction), (_gst_value_initialize):
5037         * gst/gstvalue.h:
5038           adding GstFraction GValue type, get/set, and multiply
5039         * testsuite/caps/Makefile.am:
5040         * testsuite/caps/fraction.c: (test), (main):
5041         * testsuite/caps/string-conversions.c: (main):
5042         * testsuite/caps/value_compare.c: (test1), (main):
5043           add regression tests for GstFraction
5044
5045 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5046         
5047         * docs/manual/init-api.xml: Grammar fix
5048
5049 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5050
5051         * docs/manual/states.xml: Fix inconsistent information
5052
5053 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5054
5055         * gst/gstelement.c: (gst_element_set_state):
5056         * gst/gstpad.c: (gst_pad_try_set_caps):
5057         * gst/gststructure.c:
5058         * gst/gstthread.c: (gst_thread_child_state_change):
5059         * gst/gstvalue.c: (gst_value_compare_double):
5060         * gst/gstvalue.h:
5061         * testsuite/parse/parse1.c: (main):
5062           debugging additions and style cleanups
5063
5064 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5065
5066         * docs/manual/states.xml: Grammar fix
5067
5068 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5069
5070         * docs/manual/pads.xml: Grammar fix
5071
5072 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5073
5074         * docs/manual/elements.xml: Fixed image reference
5075
5076 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5077
5078         * docs/manual/goals.xml: Grammar fix
5079
5080 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5081
5082         * docs/manual/motivation.xml:
5083         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5084
5085 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5086
5087         * docs/manual/motivation.xml: Fix spelling
5088
5089 2004-07-15  Benjamin Otte  <otte@gnome.org>
5090
5091         * gst/gstelement.h: 
5092           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5093           strings.
5094         * gst/gstelement.c (gst_element_class_init):
5095           GError's are boxed, not objects
5096         * gst/gstmarshal.list:
5097           update list for the fixed error signal
5098
5099 2004-07-14  Andy Wingo  <wingo@pobox.com>
5100
5101         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5102         there all along, but the function wasn't. (guile-gstreamer's build
5103         system uses the address of the function -- I wasn't actually
5104         trying to use this.)
5105
5106 2004-07-14  Andy Wingo  <wingo@pobox.com>
5107
5108         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5109         as gst_pad_proxy_pad_link) just link to every other pad when they
5110         are called. In the case where the graph has cycles, this will mean
5111         that a call to try_set_caps will recurse. Allow this recursion
5112         and return OK, while we wait for the first try_set_caps to give a
5113         proper return value.
5114         (gst_pad_link_call_link_functions): Since this function is the
5115         only one to set the NEGOTIATING flag on a pad, if the flag is set
5116         it means that the link functions have indirectly recursed. If this
5117         happens, error out to avoid infinite recursion and an eventual
5118         SEGV.
5119         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5120         (gst_pad_proxy_getcaps): Intersect the result with the template
5121         caps to ensure that the return value is valid.
5122
5123 2004-07-14  Andy Wingo  <wingo@pobox.com>
5124
5125         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5126         one refcount, the calling function is the owner of the buffer.
5127
5128 2004-07-14  Wim Taymans  <wim@fluendo.com>
5129
5130         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5131         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5132         Fix stupid warning when an element is to be migrated but
5133         is already migrated.
5134
5135 2004-07-14  Wim Taymans  <wim@fluendo.com>
5136
5137         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5138         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5139         Make sure that a single non-loop-based element does not 
5140         end up in a group. This fixes the testsuite again.
5141
5142 2004-07-14  Wim Taymans  <wim@fluendo.com>
5143
5144         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5145         (add_to_group), (merge_groups), (schedule_group),
5146         (gst_opt_scheduler_get_wrapper), (group_elements),
5147         (group_dec_link), (gst_opt_scheduler_pad_link),
5148         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5149         (gst_opt_scheduler_iterate):
5150         move isolated groups to a new chain.
5151         Emit a warning instead of segfaulting in some error cases.
5152         Fix a bug where the link count between groups was not calculated 
5153         correctly. Fixes #144510.
5154
5155 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5156         * gst/elements/gstfilesrc.c:
5157           Binary files support under Windows now OK
5158       
5159 2004-07-13  Benjamin Otte  <otte@gnome.org>
5160
5161           compatibility fixes for Solaris 8/gcc 2.95
5162         * configure.ac:
5163           include libintl libs in LDFLAGS
5164         * gstvalue.c (gst_value_deserialize_buffer):
5165           cast isxdigit stuff to int to silence compiler warning
5166
5167 2004-07-12  Benjamin Otte  <otte@gnome.org>
5168
5169         * gst/gsttypes.h:
5170           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5171           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5172           just causes support madness
5173         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5174           make it work without this
5175         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5176         (gst_file_index_commit):
5177           glib IO channels don't want binary mode
5178         * testsuite/bytestream/filepadsink.c: (main):
5179         * testsuite/bytestream/test1.c: (read_param_file):
5180           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5181
5182 2004-07-12  Benjamin Otte  <otte@gnome.org>
5183
5184         * gst/gstelement.c: (gst_element_class_init),
5185         (gst_element_set_state), (gst_element_set_state_func):
5186           virutalize gst_element_set_state, use set_state member in class
5187           struct that was already added in 0.7 for this.
5188         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5189         (gst_bin_change_state):
5190           make gst_bin_foreach works similar to other foreach functions, plug
5191           memleaks in it. Make functions using it work with the new approach.
5192           Document gst_bin_foreach, so it can be exported if we want to
5193         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5194           use virtualized set_state to make set_state on bins set the state of
5195           all its children.
5196
5197 2004-07-12  Benjamin Otte  <otte@gnome.org>
5198
5199         * configure.ac:
5200           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5201           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5202         * gst/gstpad.c: (gst_pad_alloc_buffer):
5203           allow buffer_alloc functions to return NULL and allocate a normal
5204           buffer in that case
5205
5206 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5207         * gst/elements/gstfilesink.c:
5208         * gst/elements/gstfilesrc.c:
5209         * gst/indexers/gstfileindex.c:
5210         * gst/gsttypes.h:
5211         * testsuite/bytestream/filepadsink.c:
5212         * testsuite/bytestream/test1.c:
5213           Handle binary files under Windows
5214
5215 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5216         * docs/manual/win32.xml:
5217         * win32/config.h:
5218         * win32/gst-register.vcproj:
5219         * win32/gstreamer.def:
5220           Update to another gettext public build
5221
5222 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5223         * gst/gstplugin.c:
5224           Fix an impossible C syntax
5225         * win32/config.h:
5226           Disable i18n under Windows for the moment
5227         * win32/gst-register.vcproj:
5228           Use this configuration
5229
5230 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5231         * docs/manual/quotes.xml:
5232           Keep the quotes file alive
5233         * docs/random/ds/0.9-suggested-changes:
5234           Add the suggestion of including a 'rowstride' as part of video
5235           format caps
5236
5237 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5238
5239         * gst/gstelement.c: (gst_element_set_state),
5240         (gst_element_change_state):
5241           d'oh.  Set PENDING state correctly before forcing bin to change.
5242         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5243         (gst_structure_parse_fixed_list):
5244         * gst/schedulers/gstoptimalscheduler.c:
5245         (gst_opt_scheduler_state_transition):
5246         * testsuite/states/parent.c: (main):
5247           remove comment now that it's fixed.
5248
5249 2004-07-11  Benjamin Otte  <otte@gnome.org>
5250
5251         * gst/gstclock.h:
5252           GST_SECOND shouldn't cause a conversion to unsigned.
5253         * testsuite/clock/.cvsignore:
5254         * testsuite/clock/Makefile.am:
5255         * testsuite/clock/signedness.c: (main):
5256           make sure it never will again
5257
5258 2004-07-11  Andy Wingo  <wingo@pobox.com>
5259
5260         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5261         whose state is higher than the bin state, raise the bin state to
5262         ensure that bin state := highest child state.
5263         
5264 2004-07-11  Andy Wingo  <wingo@pobox.com>
5265
5266         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5267         procedure on the children of a bin. Assumes that the procedure can
5268         change the set of children.
5269         (set_kid_state_func): New static function.
5270         (gst_bin_change_state): Use gst_bin_foreach to call
5271         set_kid_state_func. Fixes a bug: if a child had a state-change
5272         handler that removes it from the bin, there would be a segfault.
5273         Hopefully it should also work in the case where the state-change
5274         handler on one child adds or removes other children. In any case,
5275         fixes should go to gst_bin_foreach.
5276
5277 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5278
5279         * gst/gstelement.c: (gst_element_set_state):
5280           compatibility fix for latest plugins release.  Change loop back
5281           to while {}
5282
5283 2004-07-09  Wim Taymans  <wim@fluendo.com>
5284
5285         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5286         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5287         (gst_thread_main_loop):
5288         Since remove is virtual in GstBin we must not assume the 
5289         elements GList to have anothing useful.
5290         Add some more logging to GstThread and be a bit more paranoid
5291         when resetting the scheduler.
5292         Set the state of the bin to NULL before removing the children.
5293
5294 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5295
5296         * testsuite/threads/Makefile.am:
5297         * testsuite/threads/threadg.c:
5298           added test to check if problem when removing all elements from a
5299           GstThread before setting GstThread state to NULL
5300
5301 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5302
5303         * docs/gst/tmpl/gstelement.sgml:
5304         * docs/gst/tmpl/gsttypes.sgml:
5305         * gst/gstbin.c: (gst_bin_change_state):
5306         * gst/gstelement.c: (gst_element_set_state),
5307         (gst_element_change_state):
5308           rework so that for bins we try to set the state on all children
5309           as well even if the bin is in the correct state already.
5310           change while to do so at least one iteration is done.
5311           For regular elements, we fall back to the previous behaviour for
5312           now since we first need a new plugins release.
5313         * testsuite/states/parent.c: (main):
5314           test for this case
5315           Fixes #123774
5316
5317 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5318
5319         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5320         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5321         (gst_queue_release_locks), (gst_queue_change_state),
5322         (gst_queue_set_property):
5323           add proper lock debugging.  Change dispose to finalize, since
5324           we're freeing mutexes and other stuff which should happen only once.
5325
5326 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5327
5328         * docs/gst/tmpl/gstelement.sgml:
5329         * docs/gst/tmpl/gstplugin.sgml:
5330         * docs/gst/tmpl/gsttypes.sgml:
5331         * docs/pwg/building-state.xml:
5332         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5333         * gst/gstelement.c: (gst_element_change_state):
5334         * gst/gstthread.c: (gst_thread_change_state):
5335           catch wrong state changes in element base class.
5336
5337 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5338
5339         * gst/gstinfo.h:
5340           clean up layout a little.
5341
5342 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5343
5344         * configure.ac:
5345         * testsuite/Makefile.am:
5346         * testsuite/states/Makefile.am:
5347         * testsuite/states/parent.c: (main):
5348           re-enable states testsuite dir.  Add test for state changes and
5349           parent behaviour
5350
5351 2004-07-09  Wim Taymans  <wim@fluendo.com>
5352
5353         * gst/schedulers/gstoptimalscheduler.c:
5354         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5355         (element_get_reachables_func), (element_get_reachables),
5356         (debug_element), (rechain_group), (group_migrate_connected),
5357         (gst_opt_scheduler_pad_unlink):
5358         Do not try to migrate decoupled elements to a new group since
5359         they are not added to groups.
5360
5361 2004-07-08  Benjamin Otte  <otte@gnome.org>
5362
5363         * gst/gstelement.c: (gst_element_error_func):
5364           make reentrant (= allow removing elements in error handler)
5365
5366 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5367
5368         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5369         (gst_pad_send_event), (gst_pad_call_chain_function):
5370           events sent to elements below PAUSED cannot be handled, so
5371           don't try to
5372
5373 2004-07-08  Wim Taymans  <wim@fluendo.com>
5374
5375         * gst/schedulers/gstoptimalscheduler.c:
5376         (chain_recursively_migrate_group), (create_group),
5377         (schedule_group), (gst_opt_scheduler_pad_link),
5378         (group_elements_set_visited), (element_get_reachables_func),
5379         (element_get_reachables), (group_can_reach_group), (debug_element),
5380         (rechain_group), (group_migrate_connected),
5381         (gst_opt_scheduler_pad_unlink):
5382         * testsuite/schedulers/Makefile.am:
5383         Implemented group splitting and rechaining.
5384         Fixes 143777 and 143777-2 in the testsuite.
5385
5386 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5387
5388         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5389           extra debugging
5390         * gst/gstevent.h:
5391         * gst/gstinfo.c: (gst_debug_log_default):
5392           print time nicely.  add thread pointer until someone figures out
5393           a completely portable way of getting at thread id's.
5394         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5395         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5396         (gst_pad_call_chain_function):
5397           extra debugging
5398         * gst/schedulers/gstoptimalscheduler.c:
5399         (get_group_schedule_function), (loop_group_schedule_function),
5400         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5401         (pad_clear_queued), (gst_opt_scheduler_iterate):
5402           rename BUFPEN and friends to DATAPEN since that's what they are.
5403
5404 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5405
5406         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5407         * gst/gstbuffer.h:
5408         * gst/gstpad.c:
5409           cleanups and debugging
5410
5411 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5412
5413         * configure.ac:
5414         * gst/gstvalue.c: (gst_value_compare_enum),
5415         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5416         (gst_value_can_compare), (gst_value_compare):
5417         * testsuite/Makefile.am:
5418         * testsuite/enumcaps/Makefile.am:
5419         * testsuite/enumcaps/enumcaps.c:
5420           Fix enum serialization, deserialization, comparison in caps, add
5421           a test to ensure that this continues working in the future.
5422
5423 2004-07-06  David Schleef  <ds@schleef.org>
5424
5425         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5426         Fix memleak.
5427
5428 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5429
5430         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5431         * gst/gstplugin.h:
5432         * gst/registries/gstxmlregistry.c:
5433         (plugin_times_older_than_recurse), (plugin_times_older_than),
5434         (gst_xml_registry_parse_padtemplate):
5435           only rebuild registry when actual plugins have a newer time than
5436           the registry.  Fixes #145520
5437
5438 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5439
5440         * docs/manual/manual.xml:
5441         * docs/manual/win32.xml:
5442           add chapter on win32 building.  fixes #142422
5443
5444 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5445
5446         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
5447
5448         * gst/autoplug/gstspider.c: (gst_spider_init),
5449         (gst_spider_dispose):
5450           fix spider memleaks.  fixes #137863
5451
5452 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5453
5454         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
5455
5456         * gst/schedulers/gstoptimalscheduler.c:
5457         (gst_opt_scheduler_pad_unlink):
5458           fix SIGBUS error, fixes #145338
5459
5460 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5461
5462         * gst/gstobject.c: (gst_object_replace):
5463         * gst/gstscheduler.c: (gst_scheduler_get_clock):
5464         * gst/gstsystemclock.c: (gst_system_clock_obtain):
5465           clean up clock lifecycle.  Fixes #109831
5466
5467 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5468
5469         * po/LINGUAS:
5470         * po/cs.po:
5471           added Czech translation (Miloslav Trmac)
5472
5473 2004-07-04  David Schleef  <ds@schleef.org>
5474
5475         * tools/Makefile.am:
5476         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5477
5478 2004-07-04  David Schleef  <ds@schleef.org>
5479
5480         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5481
5482 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5483
5484         * gst/gstbin.c: (gst_bin_restore_thyself):
5485           chain to parent restore so the bins get restored correctly
5486           in the editor
5487
5488 2004-07-03  David Schleef  <ds@schleef.org>
5489
5490         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5491         Actually do something in these functions, like before the big
5492         caps change.  (bug #145137)
5493
5494 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5495
5496         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
5497         (gst_element_get_compatible_pad_filtered):
5498         * gst/gstthread.c: (gst_thread_main_loop):
5499           more debugging
5500
5501 2004-07-02  David Schleef  <ds@schleef.org>
5502
5503         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
5504         * gst/gstobject.h:
5505         * gst/gstparse.h:
5506         * gst/gsttrace.h:
5507         * gst/gstxml.h:
5508
5509 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5510
5511         * gst/gstpad.c: (gst_pad_check_schedulers),
5512         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5513         (gst_pad_link_prepare):
5514           revert until testsuite is fixed
5515
5516 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5517
5518         * testsuite/Makefile.am:
5519         * testsuite/caps/filtercaps.c: (main):
5520         * testsuite/clock/clock1.c: (main):
5521         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
5522           fix some more tests
5523
5524 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5525
5526         * testsuite/cleanup/cleanup1.c: (create_pipeline):
5527         * testsuite/cleanup/cleanup2.c: (create_pipeline):
5528         * testsuite/cleanup/cleanup4.c: (main):
5529           fix testsuite
5530
5531 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5532
5533         * libs/gst/control/control.c:
5534         * libs/gst/control/dparam.c:
5535         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
5536         * libs/gst/control/dparammanager.c:
5537         * libs/gst/control/dparammanager.h:
5538         * testsuite/dynparams/Makefile.am:
5539         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
5540         (gst_dptest_change_state), (gst_dptest_chain), (main):
5541           fix testcase for dparams
5542           add debugging category
5543
5544 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5545
5546         * testsuite/Rules:
5547           change path
5548
5549 2004-07-02  Benjamin Otte  <otte@gnome.org>
5550
5551         * tests/.cvsignore:
5552         * tests/Makefile.am:
5553         * tests/mass_elements.c: (gst_get_current_time), (main):
5554           add simple benchmark to test various speeds of fakesrc ! identity !
5555           identity ! ... ! fakesink.
5556           Usage: mass_elements [num_identities] [num_buffers]
5557           If not specified they default to 1000.
5558
5559 2004-07-02  Benjamin Otte  <otte@gnome.org>
5560
5561         * gst/gstpad.c: (gst_pad_check_schedulers),
5562         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5563         (gst_pad_link_prepare):
5564           check that pads that get linked belong to the same manager. The old
5565           code allowed linking elements before putting them into bins, so it
5566           worked to link them and then put them in different threads, which
5567           lead to weird behaviour.
5568           Since this effectively disallows linking elements before putting
5569           them in a bin, some applications might not work after this and error
5570           out. If these applications are too critical, we might need to revert
5571           that patch. Please test this before the next release...
5572
5573 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5574
5575         * gst/gstpad.c: (gst_pad_get_caps):
5576           throw an error if the getcaps function does not return a subset of
5577           the template caps.
5578         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
5579           make disconts without position info an error in debugging
5580         * tests/spidey_bench.c: (handoff), (main):
5581           don't count first try when averaging
5582
5583 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5584
5585         * gst/gstplugin.c: (gst_plugin_load_file):
5586           figure out problem with dynamic test
5587
5588 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5589
5590         * docs/gst/Makefile.am:
5591           fix docs build
5592
5593 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5594
5595         * po/POTFILES.in:
5596         * po/af.po:
5597         * po/az.po:
5598         * po/en_GB.po:
5599         * po/fr.po:
5600         * po/nl.po:
5601         * po/sr.po:
5602         * po/sv.po:
5603         * po/tr.po:
5604         * po/uk.po:
5605         * tools/gst-register.c: (plugin_added_func), (main):
5606           i18n-ize -register, fix plural
5607
5608 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5609
5610         * gst/elements/gstidentity.c: (gst_identity_class_init),
5611         (gst_identity_init), (gst_identity_chain),
5612         (gst_identity_set_property), (gst_identity_get_property):
5613         * gst/elements/gstidentity.h:
5614           check for perfect stream
5615
5616 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5617
5618         * gst/elements/gstidentity.c: (gst_identity_chain):
5619           print offset_end
5620
5621 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5622
5623         * docs/gst/Makefile.am:
5624         * docs/gst/gstreamer-docs.sgml:
5625           doc fixes
5626
5627 2004-06-24  David Schleef  <ds@schleef.org>
5628
5629         * autogen.sh:  Remove call to env, since the buildbot isn't
5630         broken anymore.
5631
5632 2004-06-24  Wim Taymans  <wim@fluendo.com>
5633
5634         * gst/elements/Makefile.am:
5635         * gst/elements/gstelements.c:
5636         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
5637         (gst_multifdsink_class_init), (gst_multifdsink_init),
5638         (gst_multifdsink_add), (gst_multifdsink_remove),
5639         (gst_multifdsink_clear), (gst_multifdsink_chain),
5640         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
5641         * gst/elements/gstmultifdsink.h:
5642         Added an element that writes to multiple filedescriptors at once.
5643
5644 2004-06-24  Benjamin Otte  <otte@gnome.org>
5645
5646         * gst/parse/grammar.y:
5647           don't try to link elements before they have been added to bins
5648
5649 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5650
5651         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
5652         (gst_file_pad_get_length):
5653         * libs/gst/bytestream/filepad.h:
5654           add 2 new functions
5655
5656 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5657
5658         * docs/gst/gstreamer-sections.txt:
5659         remove from docs, the define that Benjamin removed from gstelement.h
5660
5661 2004-06-22  Benjamin Otte  <otte@gnome.org>
5662
5663         * gst/gstelement.h:
5664           remove define that referenced a nonexisting GstElement struct member
5665
5666 2004-06-20  Benjamin Otte  <otte@gnome.org>
5667
5668         * gst/gstdata.c: (gst_data_is_writable):
5669           whoops, return values were wrong, so writable data was marked as
5670           non-writable and vice versa. (fixes #143953, spotted by Francis
5671           Labonte)
5672           Shows how rarely we need to copy data ;)
5673
5674 2004-06-20  Benjamin Otte  <otte@gnome.org>
5675
5676         * testsuite/schedulers/.cvsignore:
5677         * testsuite/schedulers/Makefile.am:
5678         * testsuite/schedulers/143777-2.c: (main):
5679           add test for opt breakage in bug #143777
5680
5681 2004-06-20  Benjamin Otte  <otte@gnome.org>
5682
5683         * gst/gstpad.c: (gst_pad_call_chain_function):
5684           check for if we were unlinked while inside the chainfunction (fixes
5685           entrygthread having issues with #143777)
5686         * testsuite/schedulers/143777.c: (main):
5687         * testsuite/schedulers/Makefile.am:
5688           add a test for that fix
5689
5690 2004-06-20  Benjamin Otte  <otte@gnome.org>
5691
5692         * gst/gstvalue.c: (gst_value_set_int_range):
5693           test that start is smaller then end
5694         * libs/gst/bytestream/Makefile.am:
5695         * libs/gst/bytestream/filepad.c: 
5696         * libs/gst/bytestream/filepad.h:
5697           add GstFilePad - a pad that behaves like a FILE*
5698         * testsuite/bytestream/.cvsignore:
5699         * testsuite/bytestream/Makefile.am:
5700         * testsuite/bytestream/filepadsink.c: 
5701           test for the GstFilePad
5702
5703 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5704
5705         * gst/elements/gstidentity.c: (gst_identity_class_init),
5706         (gst_identity_init), (gst_identity_set_clock),
5707         (gst_identity_chain), (gst_identity_set_property),
5708         (gst_identity_get_property):
5709         * gst/elements/gstidentity.h:
5710         * gst/gstclock.c: (gst_clock_id_wait):
5711           add a "sync" property to sync to the clock
5712
5713 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5714
5715         * gst/gstelementfactory.c: (gst_element_factory_create):
5716           make the freakin "elementfactory bla has no type" message more
5717           useful. So we actually can do something when someone shows up
5718           complaining about it.
5719
5720 2004-06-15  Johan Dahlin  <johan@gnome.org>
5721
5722         * tools/gst-inspect.c (main): Fallback to plugin if no element is
5723         found. This matches the old behavior better. Thanks to Thomas for
5724         pointing out.
5725
5726 2004-06-14  David Schleef  <ds@schleef.org>
5727
5728         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
5729         -fomit-frame-pointer.  Appears to generate correct code in
5730         other cases as well.
5731
5732 2004-06-14  Johan Dahlin  <johan@gnome.org>
5733
5734         * tools/gst-inspect.c (main): Add two new command line options: -a
5735         to print all elements and -n to print the name on each line. Also
5736         fix some error reporting.
5737         (main): Simplify, remove -n and always print names if -a is specified
5738
5739 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
5740
5741         * win32/gstconfig.h:
5742         * win32/GSTreamer.vcproj:
5743         * win32/Makefile:
5744         * gst/gstconfig.h.in:
5745         * gst/gst.h:
5746         * gst/gstbin.h:
5747         * gst/gstelement.h:
5748         * gst/gstevent.h:
5749         * gst/gstobject.h:
5750         * gst/gstpad.h:
5751         * docs/gst/gstreamer-sections.txt:
5752         * docs/gst/tmpl/gstconfig.sgml:
5753           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
5754
5755 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5756         * docs/gst/gstreamer-sections.txt:
5757         * docs/gst/tmpl/gstconfig.sgml:
5758         Add the GSTREAMER_EXPORT macro to the docs
5759
5760 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5761
5762         * tools/gst-compprep.c: (handle_xmlerror), (main):
5763         Add a check for the version that introduced SetStructuredError to fix
5764         the build on FC1
5765
5766 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5767
5768         * win32/msvc71.sln:
5769         * win32/testsuite/:
5770           prepare to compile the testsuite with MSVC
5771
5772 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5773
5774         * docs/manual/win32.xml:
5775           attempt to transform the Win32 README into an XML doc
5776
5777 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5778
5779         * gst/gst.c:
5780         * gst/gstbin.*:
5781         * gst/config.h.in:
5782         * gst/gstelement.*:
5783         * gst/gstevent.h:
5784         * gst/gstobject.*:
5785         * gst/gstpad.h:
5786         * tools/gst-register.c:
5787         * win32/gstreamer.def:
5788           extern symbols are now exported for the Windows DLL
5789
5790 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5791
5792         * gst/gstinfo.h:
5793           fix a problem to enable/disable DEBUG under MSVC
5794
5795 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5796
5797         * win32/:
5798           enable more debug code in DEBUG build
5799
5800 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5801
5802         * win32/config.h:
5803         * gst/gst-i18n-app.h:
5804           enable NLS under Windows
5805
5806 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
5807         * tools/gst-compprep.c: (handle_xmlerror), (main):
5808           Make an error that baffled me a bit clearer
5809
5810 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5811
5812         * gst/gstqueue.c:
5813           don't use g_queue_get_length () because it's 2.4, use ->length
5814
5815 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
5816
5817         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
5818
5819         * tools/gst-inspect.c: (print_signal_info):
5820           don't free random data twice. (fixes #144185)
5821
5822 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5823
5824         * gst/gstqueue.c:
5825         * gst/gstqueue.h:
5826           fix removing from the wrong queue on event timeout
5827           fix disposing of the event queue by casting correctly
5828           add mutexes for handling the event queue
5829           someone was sleeping when fixing queue last time around :)
5830
5831 2004-06-10  Johan Dahlin  <johan@gnome.org>
5832
5833         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
5834         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
5835
5836 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5837
5838         * docs/random/gdp:
5839         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
5840         * libs/gst/dataprotocol/dataprotocol.c:
5841         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5842         (gst_dp_buffer_from_header):
5843         * libs/gst/dataprotocol/dataprotocol.h:
5844         * libs/gst/dataprotocol/dp-private.h:
5845           rev version to 0.1, add buffer flags and copy them
5846
5847 2004-06-09  Johan Dahlin  <johan@gnome.org>
5848
5849         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
5850         the flags from the buffer we're copying.
5851
5852 2004-06-09  Wim Taymans  <wim@fluendo.com>
5853
5854         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
5855         * gst/elements/gstidentity.c: (gst_identity_init),
5856         (gst_identity_chain):
5857         Print more buffer info in fakesink.
5858         Make identity output similar to fakesink.
5859
5860 2004-06-07  Daniel Gazard  <dany42@free.fr>
5861
5862         reviewed by Benjamin Otte  <otte@gnome.org>
5863
5864         * configure.ac:
5865           fix cross compiling not working. (fixes #143741)
5866
5867 2004-06-07  Benjamin Otte  <otte@gnome.org>
5868
5869         * gst/gstelement.c: (gst_element_set_time_delay):
5870           add failure check
5871         * gst/gstinfo.h:
5872           put brackets around macro arguments of GST_TIME_ARGS, add note to
5873           move it to correct header in 0.9
5874
5875 2004-06-07  Benjamin Otte  <otte@gnome.org>
5876
5877         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
5878         (gst_file_index_load), (_file_index_id_save_entries),
5879         (gst_file_index_commit), (gst_file_index_add_association),
5880         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
5881         (gst_file_index_plugin_init):
5882           make debugging use a default category
5883
5884 2004-06-06  David Moore  <dcm@acm.org>
5885
5886         reviewed by Benjamin Otte  <otte@gnome.org>
5887
5888         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
5889         (gst_fdsrc_change_state):
5890           reset offset counter when going READY => PAUSED. (fixes #142903)
5891
5892 2004-06-06  ed@catmur.co.uk
5893
5894         reviewed by Benjamin Otte  <otte@gnome.org>
5895
5896         * gst/registries/gstxmlregistry.c:
5897         (gst_xml_registry_rebuild_recurse):
5898           don't rely on g_dir_open to figure out if a file is a directory, use
5899           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
5900           directories. (fixes #142850)
5901
5902 2004-06-06  Benjamin Otte  <otte@gnome.org>
5903
5904         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
5905           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
5906         * libs/gst/bytestream/adapter.c:
5907         * libs/gst/bytestream/adapter.h:
5908           fix copyright in header and typo in debugging category name
5909
5910 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5911
5912         * configure.ac:
5913           bump nano to cvs
5914
5915 === release 0.8.3 ===
5916
5917 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5918
5919         * configure.ac:
5920           update libtool versioning
5921           do a new release
5922         * docs/gst/tmpl/gstelement.sgml:
5923         * docs/gst/tmpl/gsttypes.sgml:
5924         * gst/gstinfo.c: (_gst_debug_init):
5925           put back GST_CAT_DATAFLOW to fix API breakage
5926
5927 2004-06-04  David Schleef  <ds@schleef.org>
5928
5929         * autogen.sh: Add a temporary 'env' to test buildbot problems.
5930
5931 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5932
5933         * configure.ac:
5934           bump nano to cvs
5935
5936 === release 0.8.2 ===
5937
5938 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5939
5940         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
5941           check GST_DEBUG environment variable which is parsed the same way
5942           as --gst-debug=
5943
5944 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
5945
5946         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
5947                             gstmd5sink.c gstshaper.c gsttee.c
5948                             gsttypefindelement.c
5949         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
5950
5951           - removing trailing commas at end of enums
5952             it is correct C99 code but C90 compilers would complain
5953             (AIX, Forte, ...)
5954             ('should' fix #143290, at least partially)
5955
5956 2004-05-27  Wim Taymans  <wim@fluendo.com>
5957
5958         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
5959         (chain_group_set_enabled), (create_group), (add_to_group),
5960         (merge_groups), (setup_group_scheduler), (group_elements),
5961         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
5962         Don't try to follow the pad connections with other groups
5963         when a loop based element is added to the scheduler because
5964         the bin will inform the scheduler about the pad links a little
5965         later.
5966
5967 2004-05-27  Wim Taymans  <wim@fluendo.com>
5968
5969         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
5970         (remove_from_chain), (chain_group_set_enabled),
5971         (setup_group_scheduler), (group_element_set_enabled),
5972         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
5973         (gst_opt_scheduler_show):
5974         Elements without a group can do a state change as well, just wait
5975         with the setup of the scheduling function when it is added to a
5976         chain.
5977
5978 2004-05-27  Wim Taymans  <wim@fluendo.com>
5979
5980         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
5981         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
5982         (merge_groups), (setup_group_scheduler),
5983         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
5984         (gst_opt_scheduler_show):
5985         Fixes to maintain internal consistency of the scheduler data
5986         structures. 
5987          - adding an enabled group to a chain should increment the
5988            number of enabled elements in that chain.
5989          - removing an enabled group from a chain could disable the
5990            chain.
5991          - removing a disabled group from a chain could enable the
5992            chain.
5993          - add g_assert when internal inconsistency is detected.
5994          - adding an element to a group could increase the number of
5995            links this group has with other groups.
5996          - merging two groups also merges the chains.
5997          - also show group links in the _show method.
5998            
5999
6000 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6001
6002         * gst/gstcaps.c: (gst_caps_structure_simplify):
6003           don't print error messages when there is no error
6004         * gst/gstvalue.c: (gst_value_compare_int_range):
6005           compare the second value, too
6006         * testsuite/caps/Makefile.am:
6007         * testsuite/caps/random.c: (assert_on_error), (main):
6008           add tests to make sure the two things above are checked for
6009
6010 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6011
6012         * configure.ac:
6013         * libs/gst/dataprotocol/Makefile.am:
6014         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6015         * libs/gst/dataprotocol/dataprotocol.h:
6016           wrap header in GST_ENABLE_NEW.  make code use it
6017
6018 2004-05-23  Johan Dahlin  <johan@gnome.org>
6019
6020         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6021         so verbose and print GstElement signal names all the time.
6022
6023 2004-05-22  David Schleef  <ds@schleef.org>
6024
6025         * gst/registries/gstxmlregistry.c:
6026         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6027         (bug #142957)
6028
6029 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6030
6031         * configure.ac:
6032           scrub cflags for glib2 so gcc doesn't complain when glib is in
6033           /usr/local
6034
6035 2004-05-21  Johan Dahlin  <johan@gnome.org>
6036
6037         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6038         __GNUC__, patch from Brian Cameron, fixes bug #142804
6039
6040 2004-05-20  David Schleef  <ds@schleef.org>
6041
6042         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6043         comparison code.  (bug #142819)
6044
6045 2004-05-20  Wim Taymans  <wim@fluendo.com>
6046
6047         * gst/gstbuffer.c: (gst_buffer_default_copy):
6048         * gst/gstbuffer.h:
6049         Added Comment to a flag.
6050         copy relevant flags in _buffer_copy.
6051
6052 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6053
6054         reviewed by: Wim Taymans <wim at fluendo dot com>
6055
6056         * gst/gstbuffer.h:
6057           add GST_BUFFER_IN_CAPS buffer flag
6058         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6059         (gst_structure_parse_any_list), (gst_structure_parse_list),
6060         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6061         * gst/gstvalue.c: (gst_value_serialize_any_list),
6062         (gst_value_transform_any_list_string),
6063         (gst_value_list_prepend_value), (gst_value_list_append_value),
6064         (gst_value_list_get_size), (gst_value_list_get_value),
6065         (gst_value_transform_list_string),
6066         (gst_value_transform_fixed_list_string),
6067         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6068         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6069         (_gst_value_initialize):
6070         * gst/gstvalue.h:
6071           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6072           < , > as a format.
6073         * testsuite/caps/string-conversions.c: (main):
6074           add regression tests for < >
6075
6076 2004-05-20  Johan Dahlin  <johan@gnome.org>
6077
6078         * docs/gst/Makefile.am (all-local): Re-add
6079
6080 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6081
6082         * docs/gst/Makefile.am:
6083         * docs/gst/gstreamer-docs.sgml:
6084         * docs/libs/Makefile.am:
6085         * docs/libs/gstreamer-libs-docs.sgml:
6086           fix distcheck issues
6087
6088 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6089
6090         * libs/gst/dataprotocol/Makefile.am:
6091           add to autotest
6092
6093 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6094
6095         * libs/gst/dataprotocol/Makefile.am:
6096         * libs/gst/dataprotocol/dataprotocol.c:
6097         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6098         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6099         * libs/gst/dataprotocol/dp-private.h:
6100           use GST macros to read/write fixed length ints
6101           add some more asserts
6102
6103 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6104
6105         * docs/libs/gstreamer-libs-docs.sgml:
6106         * docs/libs/gstreamer-libs-sections.txt:
6107           remove idct and putbits
6108         * configure.ac:
6109         * docs/libs/tmpl/gstdataprotocol.sgml:
6110         * libs/gst/Makefile.am:
6111         * libs/gst/dataprotocol/Makefile.am:
6112         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6113         (buffer_test), (caps_test), (event_test), (main):
6114         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6115         (gst_dp_dump_byte_array), (gst_dp_init),
6116         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6117         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6118         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6119         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6120         (gst_dp_validate_header), (gst_dp_validate_payload),
6121         (gst_dp_validate_packet), (plugin_init):
6122         * libs/gst/dataprotocol/dataprotocol.h:
6123         * libs/gst/dataprotocol/dp-private.h:
6124           add dataprotocol
6125
6126 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6127
6128         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6129           fix int variable deserialization and add a helper so we can actually
6130           debug this.
6131
6132 2004-05-18  David Schleef  <ds@schleef.org>
6133
6134         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6135           argv[0].  Calling yourself is probably not the best way to
6136           construct a test like this, btw.
6137
6138 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6139
6140         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6141           don't claim to be more intelligent than a scheduler when the
6142           scheduler claims the pipeline is stopped
6143         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6144         (safe_cothread_destroy),
6145         (gst_entry_scheduler_remove_all_cothreads),
6146         (gst_entry_scheduler_reset), (_remove_cothread),
6147         (gst_entry_scheduler_state_transition):
6148           hold off cothread destruction if we're not in main cothread
6149         * configure.ac:
6150         * testsuite/Makefile.am:
6151           add new test dir
6152         * testsuite/schedulers/.cvsignore:
6153         * testsuite/schedulers/Makefile.am:
6154           add tests
6155         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6156           check relinking and adding/removing elements from a running pipeline
6157         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6158           check unlinking in a running pipeline
6159         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6160           check unreffing a running pipeline
6161         * testsuite/schedulers/useless_iteration.c: (main):
6162           check iterating a pipeline that contains running threads works
6163
6164 2004-05-18  David Schleef  <ds@schleef.org>
6165
6166         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6167           is false.
6168
6169 2004-05-18  Wim Taymans  <wim@fluendo.com>
6170
6171         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6172         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6173         Fixed an error introduced with patch for 1.63. When setting
6174         a get based element as the entry point in a group, make sure
6175         to mark the group as GET based.
6176
6177 2004-05-18  Wim Taymans  <wim@fluendo.com>
6178
6179         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6180         (setup_group_scheduler), (loop_group_schedule_function),
6181         (gst_opt_scheduler_pad_link):
6182         Added some more debug info and fixed a bug where the group
6183         type was set to LOOP but it was in fact unknown.
6184
6185 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6186
6187         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6188           make resetting scheduler work twice in a row
6189
6190 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6191
6192         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6193         (CREATE_USERIALIZATION), (_gst_value_initialize),
6194         (gst_value_compare_float), (gst_value_serialize_float),
6195         (gst_value_deserialize_float), (gst_value_compare_enum),
6196         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6197           add serialization and comparison functions for long, int64, enum and
6198           float values
6199         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6200           use best serialization function in type hierarchy instead of only a
6201           matching one. This is required for enums to work.
6202         * gst/parse/grammar.y:
6203           use gst_caps_deserialize
6204         * testsuite/parse/Makefile.am:
6205           parse1 now works
6206         * testsuite/parse/parse1.c: (main):
6207           remove aggregator check, aggregator is broken, this test works now
6208           but fails because of bug #138012
6209         * testsuite/parse/parse2.c: (main):
6210           s/xvideosink/xvimagesink - this test looks a lot like we should
6211           disable it
6212
6213 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6214
6215         * gst/gstelement.c: (gst_element_class_init):
6216           whoops, store the signal id correctly
6217         * gst/schedulers/gstbasicscheduler.c:
6218         (gst_basic_scheduler_chain_wrapper):
6219           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6220           chain function isn't linked
6221
6222 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6223         * configure.ac:
6224         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6225         support until we decide where the flags should be used
6226         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6227         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6228         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6229         Output refused caps in the debug info
6230
6231 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6232
6233         * gst/elements/gstidentity.c: (gst_identity_chain):
6234           add duration debug
6235         * gst/gstinfo.c: (gst_debug_log_default):
6236           add timestamp
6237
6238 2004-05-13  Benjamin Otte  <otte@gnome.org>
6239
6240         * gst/gstpipeline.c: (gst_pipeline_dispose),
6241         (gst_pipeline_change_state):
6242           call gst_scheduler_reset on dispose (fixes #141416)
6243
6244 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6245
6246         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6247           compute mapsize correctly
6248         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6249           use correct datatypes when calling a varargs function
6250         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6251           push a DISCONT event as first thing
6252         * gst/gst_private.h:
6253         * gst/gstinfo.c: (_gst_debug_init):
6254           remove GST_DATAFLOW debugging category
6255         * gst/gstbin.c: (gst_bin_iterate):
6256           use GST_SCHEDULING category
6257         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6258         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6259         (gst_pad_call_get_function):
6260           add GST_DATAFLOW to easily track flow of buffers or events.
6261         * gst/gstqueue.c: (gst_queue_get_type),
6262         (gst_queue_handle_pending_events), (gst_queue_chain),
6263         (gst_queue_get), (gst_queue_handle_src_event):
6264           use own static debugging category GST_DATAFLOW for dataflow,
6265           use DEBUG category for showing which path events go, use LOG
6266           category for buffers.
6267
6268 2004-05-10  David Schleef  <ds@schleef.org>
6269
6270         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6271
6272 2004-05-10  David Schleef  <ds@schleef.org>
6273
6274         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6275         symbols, because otherwise we don't know what they are.  Thanks,
6276         the GStreamer team.
6277         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6278
6279 2004-05-10  David Schleef  <ds@schleef.org>
6280
6281         (from Steve Lhomme)
6282         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6283         are deleted.  Fix.
6284         * win32/Makefile.inspect:
6285         * win32/Makefile.launch:
6286         * win32/Makefile.register:
6287
6288 2004-05-10  David Schleef  <ds@schleef.org>
6289
6290         * gst/gstinfo.h: Add missing inline function.
6291         * gst/gsttrace.c: add include
6292         * gst/parse/grammar.y: remove unused code
6293         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6294         more portable.
6295         * tools/gst-register.c: wrap unistd.h
6296         
6297         More additions/fixes from Steve for the MSVC build.
6298         * win32/GStreamer.vcproj:
6299         * win32/Makefile:
6300         * win32/Makefile.inspect:
6301         * win32/Makefile.launch:
6302         * win32/Makefile.register:
6303         * win32/README.txt:
6304         * win32/gst-inspect.vcproj:
6305         * win32/gst-launch.vcproj:
6306         * win32/gst-register.vcproj:
6307         * win32/gstbytestream.def:
6308         * win32/gstbytestream.vcproj:
6309         * win32/gstconfig.h:
6310         * win32/gstelements.def:
6311         * win32/gstelements.vcproj:
6312         * win32/gstenumtypes.c:
6313         * win32/gstenumtypes.h:
6314         * win32/gstoptimalscheduler.def:
6315         * win32/gstoptimalscheduler.vcproj:
6316         * win32/gstreamer.def:
6317         * win32/gstspider.def:
6318         * win32/gstspider.vcproj:
6319         * win32/gstversion.h:
6320         * win32/msvc71.sln:
6321
6322 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6323
6324         * gst/gstelement.c: (gst_element_class_init),
6325         (gst_element_no_more_pads):
6326         * gst/gstelement.h:
6327           add gst_element_no_more_pads and the "no-more-pads" signal
6328
6329 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6330
6331         * gst/gstregistry.c: (gst_registry_add_plugin):
6332           refuse to add plugins when a plugin with same name is already
6333           registered. Fixes a bunch of "How to remove plugins?" issues.
6334           May lead to other problems though, let's test
6335
6336 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6337
6338         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6339         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6340         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6341
6342 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6343
6344         * tests/Makefile.am: fix am16 issue
6345
6346 2004-05-09  Benjamin Otte  <otte@gnome.org>
6347
6348         * libs/gst/bytestream/Makefile.am:
6349           we should indeed add .c files to makefiles or they won't be built
6350           (d'oh)
6351
6352 2004-05-08  Benjamin Otte  <otte@gnome.org>
6353
6354         * gst/gstpad.c: (gst_pad_proxy_fixate):
6355           really reduce the set of caps
6356
6357 2004-05-08  Benjamin Otte  <otte@gnome.org>
6358
6359         * tests/Makefile.am:
6360         * tests/spidey_bench.c: (handoff), (main):
6361           add benchmark to test how long spider needs to create a pipeline
6362
6363 2004-05-08  Benjamin Otte  <otte@gnome.org>
6364
6365         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6366           mark links as unengaged when unnegotiating instead of deactivating.
6367           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6368
6369 2004-05-08  Benjamin Otte  <otte@gnome.org>
6370
6371         * docs/manual/helloworld.xml:
6372           s/audiosink/osssink (patch by Patrick Guimond)
6373
6374 2004-05-07  David Schleef  <ds@schleef.org>
6375
6376         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6377         since it contains important stuff.
6378
6379 2004-05-07  David Schleef  <ds@schleef.org>
6380
6381         * testsuite/caps/caps.c: (test3), (main): A check for appending
6382         ANY caps.
6383
6384 2004-05-07  David Schleef  <ds@schleef.org>
6385
6386         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6387         which may contain commas.  Fixes detection of -Wa,-mregnames
6388
6389 2004-05-06  David Schleef  <ds@schleef.org>
6390
6391         Changes to handle compilers that don't have variadic macro
6392         support.  In particular, glib headers define some inlines
6393         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6394         builds.
6395         * gst/Makefile.am:
6396         * gst/cothreads.c:
6397         * gst/elements/gstfdsink.c:
6398         * gst/elements/gstfdsrc.c:
6399         * gst/elements/gstfilesink.c:
6400         * gst/elements/gstfilesrc.c:
6401         * gst/gst_private.h:
6402         * gst/gstatomic.c:
6403         * gst/gstcaps.c: (gst_caps_append):
6404         * gst/gstcpu.c: (gst_cpuid_i386):
6405         * gst/gstelement.c:
6406         * gst/gsterror.c:
6407         * gst/gstfilter.c:
6408         * gst/gstinfo.h:
6409         * gst/gstprobe.c:
6410         * gst/gstquery.c:
6411         * gst/gstregistry.c:
6412         * gst/gststructure.c:
6413         * gst/gsttaginterface.c:
6414         * gst/gsttrace.c: (gst_trace_new):
6415         * gst/gsttrashstack.c:
6416         * gst/gsturi.c:
6417         * gst/gstvalue.c:
6418         * gst/parse/grammar.y:
6419         * gst/parse/parse.l:
6420         * tools/gst-inspect.c: (main):
6421         * tools/gst-launch.c: (main):
6422         * tools/gst-xmlinspect.c: (PUT_STRING):
6423
6424 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6425
6426         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6427         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6428         * gst/elements/gstfilesrc.h:
6429           send NEW_MEDIA events correctly
6430         * gst/elements/gsttypefindelement.c: (start_typefinding),
6431         (gst_type_find_element_handle_event):
6432           restart typefinding when we get a NEW_MEDIA event
6433         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6434         (gst_bin_dispose):
6435           don't die when someone removes elements in callbacks
6436         * gst/gstelement.c: (gst_element_change_state):
6437           improve debugging
6438         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
6439           we need a NEW_MEDIA event to engage a link
6440         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
6441           don't g_print debugging stuff
6442         * testsuite/caps/simplify.c: (check_caps):
6443
6444 2004-05-04  Benjamin Otte  <otte@gnome.org>
6445
6446         * gst/parse/grammar.y:
6447           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
6448
6449 2004-05-04  Benjamin Otte  <otte@gnome.org>
6450
6451         * testsuite/caps/renegotiate.c: (main):
6452           improve output in error case
6453
6454 2004-05-04  Benjamin Otte  <otte@gnome.org>
6455
6456         * gst/parse/grammar.y:
6457           fix assert to not trigger when there's no error argument
6458         * gst/parse/parse.l:
6459           fix definition of caps to allow more than two structures
6460         * testsuite/caps/Makefile.am:
6461         * testsuite/caps/renegotiate.c: (main):
6462           it's sinesrc and works in that case
6463
6464 2004-05-04  Wim Taymans  <wim@fluendo.com>
6465
6466         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6467         (group_dec_link), (gst_opt_scheduler_pad_unlink):
6468         when removing an element from a group, we always need to
6469         decrement the link count that this group had with other 
6470         groups through the element.
6471         added an extra assert to catch inconsistencies when decrementing
6472         the link count.
6473
6474 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6475
6476         * configure.ac:
6477         * docs/gst/Makefile.am:
6478         * docs/gst/gstreamer-sections.txt:
6479         * docs/gst/tmpl/gstcompat.sgml:
6480         * examples/appreader/Makefile.am:
6481         * examples/cutter/Makefile.am:
6482         * examples/events/Makefile.am:
6483         * examples/helloworld/Makefile.am:
6484         * examples/helloworld2/Makefile.am:
6485         * examples/launch/Makefile.am:
6486         * examples/manual/Makefile.am:
6487         * examples/mixer/Makefile.am:
6488         * examples/pingpong/Makefile.am:
6489         * examples/plugins/Makefile.am:
6490         * examples/queue/Makefile.am:
6491         * examples/queue2/Makefile.am:
6492         * examples/queue3/Makefile.am:
6493         * examples/queue4/Makefile.am:
6494         * examples/retag/Makefile.am:
6495         * examples/thread/Makefile.am:
6496         * examples/typefind/Makefile.am:
6497         * examples/xml/Makefile.am:
6498         * gst/Makefile.am:
6499         * gst/autoplug/Makefile.am:
6500         * gst/elements/Makefile.am:
6501         * gst/gstcompat.h:
6502         * gst/indexers/Makefile.am:
6503         * gst/parse/Makefile.am:
6504         * gst/registries/Makefile.am:
6505         * gst/schedulers/Makefile.am:
6506         * libs/gst/bytestream/Makefile.am:
6507         * libs/gst/control/Makefile.am:
6508         * libs/gst/getbits/Makefile.am:
6509         * po/af.po:
6510         * po/az.po:
6511         * po/en_GB.po:
6512         * po/fr.po:
6513         * po/nl.po:
6514         * po/sr.po:
6515         * po/sv.po:
6516         * po/tr.po:
6517         * po/uk.po:
6518         * tests/Makefile.am:
6519         * tests/bufspeed/Makefile.am:
6520         * tests/instantiate/Makefile.am:
6521         * tests/memchunk/Makefile.am:
6522         * tests/muxing/Makefile.am:
6523         * tests/negotiation/Makefile.am:
6524         * tests/probes/Makefile.am:
6525         * tests/sched/Makefile.am:
6526         * tests/seeking/Makefile.am:
6527         * tests/threadstate/Makefile.am:
6528         * testsuite/caps/Makefile.am:
6529         * testsuite/cleanup/Makefile.am:
6530         * testsuite/dlopen/Makefile.am:
6531         * testsuite/dynparams/Makefile.am:
6532         * testsuite/plugin/Makefile.am:
6533         * testsuite/states/Makefile.am:
6534         * tools/Makefile.am:
6535           reorganize compile/link flags to be consistent
6536           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
6537
6538 2004-05-04  David Schleef  <ds@schleef.org>
6539
6540         The "once more, with feeling" check-in.
6541         * testsuite/caps/Makefile.am: dist caps_strings
6542         * testsuite/caps/renegotiate.c: (main): This test triggers a
6543           segfault in the core.  Marking as failing.
6544
6545 2004-05-03  David Schleef  <ds@schleef.org>
6546
6547         * testsuite/caps/deserialize.c: (main): Fix problems noticed
6548           by the build bots.
6549         * testsuite/caps/renegotiate.c: (main): Same.
6550
6551 2004-05-03  David Schleef  <ds@schleef.org>
6552
6553         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
6554
6555 2004-05-03  David Schleef  <ds@schleef.org>
6556
6557         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
6558           variable to find our source file.
6559
6560 2004-05-03  David Schleef  <ds@schleef.org>
6561
6562         * configure.ac:  Link plugins with libgstreamer and dependent
6563           libraries
6564         * testsuite/caps/Makefile.am:
6565         * testsuite/caps/caps_strings:
6566         * testsuite/caps/deserialize.c: (main): Add a little test to slog
6567           through a file of caps strings and test each one
6568
6569 2004-05-04  Benjamin Otte  <otte@gnome.org>
6570
6571         * libs/gst/bytestream/Makefile.am:
6572         * libs/gst/bytestream/adapter.c: 
6573         * libs/gst/bytestream/adapter.h:
6574           add GstAdapter, similar to bytestream, but doesn't require ugly event
6575           handling or uglier loopbased elements
6576
6577 2004-05-03  David Schleef  <ds@schleef.org>
6578
6579         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
6580         * testsuite/caps/erathostenes.c:
6581         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
6582
6583 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6584
6585         * docs/pwg/pwg.xml:
6586           remove hardcoded stylesheet path (duh)
6587         * docs/random/release:
6588         * docs/gst/gstreamer-sections.txt:
6589         * gst/Makefile.am:
6590         * gst/gst.h:
6591         * gst/gst_private.h:
6592         * gst/gstcaps.c:
6593         * gst/gstevent.c:
6594         * gst/gstformat.c:
6595         * gst/gstinfo.c:
6596         * gst/gstinfo.h:
6597         * gst/gstinterface.c:
6598         * gst/gstmemchunk.c:
6599         * gst/gstprobe.c:
6600         * gst/gstquery.c:
6601         * gst/gstregistry.c:
6602         * gst/gstregistrypool.c:
6603         * gst/gststructure.c:
6604         * gst/gsttaginterface.c:
6605         * gst/gstthread.c:
6606         * gst/gsttrace.c:
6607         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
6608         * gst/gsturi.c:
6609         * gst/gstvalue.c:
6610           deprecate gst_info; remove gstlog.h
6611    
6612
6613 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6614
6615         * Makefile.am:
6616         * po/en_GB.po:
6617         * po/sv.po:
6618         * po/uk.po:
6619           updated translations
6620
6621 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6622
6623         * gst/gstbin.c: (gst_bin_dispose):
6624           better debugging
6625
6626 2004-05-03  Johan Dahlin  <johan@gnome.org>
6627
6628         * gst/schedulers/gstoptimalscheduler.c
6629         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
6630         really is a GstElement. Avoids critical when running gst-launch -v
6631         and a oggdemux/decoding pipeline.
6632
6633 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6634
6635         * docs/gst/tmpl/gstpipeline.sgml :
6636         * docs/manual/elements-api.xml :
6637                 doc fix by Patrick Guimond (Protector) from devel ML
6638                 reviewed by ronald
6639
6640 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6641
6642         * docs/gst/Makefile.am :
6643         * docs/libs/Makefile.am :
6644                 apply a patch from Arwed v. Merkatz so that gtk-doc
6645                 generated docs install (same for .devhelp file)
6646                 (fixes part 1 of #138836)
6647
6648 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6649
6650         * docs/faq/dependencies.xml: typo
6651         * docs/faq/getting.xml :
6652             - fix download URL for new gstreamer site
6653             - hide sf.net download page as latest version aren't there
6654             - fix apt URLs
6655             - fill "get via CVS" paragraph (link to dev page on the site)
6656         * docs/faq/general.xml:
6657             hide status tables as they no more exists
6658             change case on plugins license file to reflect reality
6659         * docs/faq/troubleshooting.xml:
6660             remove the wiki question/answer as there is no more wiki
6661
6662 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6663
6664         * gst/gsterror.h:
6665           include the headers needed for declarations used in this header
6666
6667 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6668
6669         * docs/random/uraeus/gstreamer_and_midi.txt :
6670           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
6671           (fixes #132288)
6672
6673 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
6674
6675         reviewed by Benjamin Otte  <otte@gnome.org>
6676
6677         * gst/schedulers/gthread-cothreads.h:
6678           free allocated data for main cothread, too when destroying context
6679           (fixes #141417)
6680
6681 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6682
6683         * docs/manual/goals.xml : remove duplicated paragraph at end 
6684         of doc page (fixes #141448)
6685
6686 2004-04-29  David Schleef  <ds@schleef.org>
6687
6688         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6689         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
6690
6691 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6692
6693         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6694           fix property
6695         * gst/gstcaps.c:
6696           fix doc string
6697         * po/POTFILES.in:
6698           rename typefind source file
6699
6700 2004-04-28  David Schleef  <ds@schleef.org>
6701
6702         Several new files from Steve Lhomme's MSVC patch (bug #141317):
6703         * win32/GStreamer.vcproj:
6704         * win32/Makefile:
6705         * win32/config.h:
6706         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
6707         (_trewinddir), (_ttelldir), (_tseekdir):
6708         * win32/dirent.h:
6709         * win32/gst-inspect.vcproj:
6710         * win32/gst-launch.vcproj:
6711         * win32/gst-register.vcproj:
6712         * win32/gstbytestream.vcproj:
6713         * win32/gstelements.vcproj:
6714         * win32/gstoptimalscheduler.vcproj:
6715         * win32/gstspider.vcproj:
6716         * win32/gtchar.h:
6717         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
6718         * win32/mman.h:
6719         * win32/mman.inl:
6720         * win32/msvc71.sln:
6721
6722 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6723
6724         * gst/gst.c: (init_post):
6725         * gst/gstinfo.c:
6726           remove useless _gst_progname stuff
6727         * tools/gst-inspect.c: (print_field), (print_caps):
6728           improve caps output
6729
6730 2004-04-28  David Schleef  <ds@schleef.org>
6731
6732         Disable parsing of a lot of files that aren't part of the
6733         exported API.  Move corresponding template files to old/,
6734         waiting for removal when they don't contain anything
6735         interesting.
6736         * docs/gst/Makefile.am:
6737         * docs/gst/gstreamer-sections.txt:
6738         * docs/gst/tmpl/cothreads.sgml:
6739         * docs/gst/tmpl/cothreads_compat.sgml:
6740         * docs/gst/tmpl/gettext.sgml:
6741         * docs/gst/tmpl/gobject2gtk.sgml:
6742         * docs/gst/tmpl/grammar.tab.sgml:
6743         * docs/gst/tmpl/gst-i18n-app.sgml:
6744         * docs/gst/tmpl/gst-i18n-lib.sgml:
6745         * docs/gst/tmpl/gst_private.sgml:
6746         * docs/gst/tmpl/gstaggregator.sgml:
6747         * docs/gst/tmpl/gstarch.sgml:
6748         * docs/gst/tmpl/gstatomic_impl.sgml:
6749         * docs/gst/tmpl/gstbufferstore.sgml:
6750         * docs/gst/tmpl/gstdata_private.sgml:
6751         * docs/gst/tmpl/gstdisksink.sgml:
6752         * docs/gst/tmpl/gstdisksrc.sgml:
6753         * docs/gst/tmpl/gstelementfactory.sgml:
6754         * docs/gst/tmpl/gstextratypes.sgml:
6755         * docs/gst/tmpl/gstfakesink.sgml:
6756         * docs/gst/tmpl/gstfakesrc.sgml:
6757         * docs/gst/tmpl/gstfdsink.sgml:
6758         * docs/gst/tmpl/gstfdsrc.sgml:
6759         * docs/gst/tmpl/gstfilesink.sgml:
6760         * docs/gst/tmpl/gstfilesrc.sgml:
6761         * docs/gst/tmpl/gsthttpsrc.sgml:
6762         * docs/gst/tmpl/gstidentity.sgml:
6763         * docs/gst/tmpl/gstindexfactory.sgml:
6764         * docs/gst/tmpl/gstmarshal.sgml:
6765         * docs/gst/tmpl/gstmd5sink.sgml:
6766         * docs/gst/tmpl/gstmultidisksrc.sgml:
6767         * docs/gst/tmpl/gstmultifilesrc.sgml:
6768         * docs/gst/tmpl/gstpadtemplate.sgml:
6769         * docs/gst/tmpl/gstpipefilter.sgml:
6770         * docs/gst/tmpl/gstschedulerfactory.sgml:
6771         * docs/gst/tmpl/gstsearchfuncs.sgml:
6772         * docs/gst/tmpl/gstshaper.sgml:
6773         * docs/gst/tmpl/gstspider.sgml:
6774         * docs/gst/tmpl/gstspideridentity.sgml:
6775         * docs/gst/tmpl/gststatistics.sgml:
6776         * docs/gst/tmpl/gsttee.sgml:
6777         * docs/gst/tmpl/gsttimecache.sgml:
6778         * docs/gst/tmpl/gsttypefind.sgml:
6779         * docs/gst/tmpl/gsttypefindfactory.sgml:
6780         * docs/gst/tmpl/gstxmlregistry.sgml:
6781         * docs/gst/tmpl/gthread-cothreads.sgml:
6782         * docs/gst/tmpl/old/cothreads.sgml:
6783         * docs/gst/tmpl/old/cothreads_compat.sgml:
6784         * docs/gst/tmpl/old/gettext.sgml:
6785         * docs/gst/tmpl/old/gobject2gtk.sgml:
6786         * docs/gst/tmpl/old/grammar.tab.sgml:
6787         * docs/gst/tmpl/old/gst-i18n-app.sgml:
6788         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
6789         * docs/gst/tmpl/old/gst_private.sgml:
6790         * docs/gst/tmpl/old/gstaggregator.sgml:
6791         * docs/gst/tmpl/old/gstarch.sgml:
6792         * docs/gst/tmpl/old/gstatomic_impl.sgml:
6793         * docs/gst/tmpl/old/gstbufferstore.sgml:
6794         * docs/gst/tmpl/old/gstdata_private.sgml:
6795         * docs/gst/tmpl/old/gstdisksink.sgml:
6796         * docs/gst/tmpl/old/gstdisksrc.sgml:
6797         * docs/gst/tmpl/old/gstelementfactory.sgml:
6798         * docs/gst/tmpl/old/gstextratypes.sgml:
6799         * docs/gst/tmpl/old/gstfakesink.sgml:
6800         * docs/gst/tmpl/old/gstfakesrc.sgml:
6801         * docs/gst/tmpl/old/gstfdsink.sgml:
6802         * docs/gst/tmpl/old/gstfdsrc.sgml:
6803         * docs/gst/tmpl/old/gstfilesink.sgml:
6804         * docs/gst/tmpl/old/gstfilesrc.sgml:
6805         * docs/gst/tmpl/old/gsthttpsrc.sgml:
6806         * docs/gst/tmpl/old/gstidentity.sgml:
6807         * docs/gst/tmpl/old/gstindexfactory.sgml:
6808         * docs/gst/tmpl/old/gstmarshal.sgml:
6809         * docs/gst/tmpl/old/gstmd5sink.sgml:
6810         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
6811         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
6812         * docs/gst/tmpl/old/gstpadtemplate.sgml:
6813         * docs/gst/tmpl/old/gstpipefilter.sgml:
6814         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
6815         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
6816         * docs/gst/tmpl/old/gstshaper.sgml:
6817         * docs/gst/tmpl/old/gstspider.sgml:
6818         * docs/gst/tmpl/old/gstspideridentity.sgml:
6819         * docs/gst/tmpl/old/gststatistics.sgml:
6820         * docs/gst/tmpl/old/gsttee.sgml:
6821         * docs/gst/tmpl/old/gsttimecache.sgml:
6822         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
6823         * docs/gst/tmpl/old/gstxmlregistry.sgml:
6824         * docs/gst/tmpl/old/gthread-cothreads.sgml:
6825         * docs/gst/tmpl/old/types.sgml:
6826         * docs/gst/tmpl/types.sgml:
6827
6828         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
6829         gtkdoc-scan doesn't like files with the same name in different
6830         directories.
6831         * gst/elements/Makefile.am:
6832         * gst/elements/gstelements.c:
6833         * gst/elements/gsttypefind.c: 
6834         * gst/elements/gsttypefind.h:
6835         * gst/elements/gsttypefindelement.c:
6836         * gst/elements/gsttypefindelement.h:
6837
6838 2004-04-28  David Schleef  <ds@schleef.org>
6839
6840         A bunch of portability fixes, derived from Steve Lhomme's MSVC
6841         patch (bug #141317):
6842         * gst/gst-i18n-lib.h: Allow disabling gettext.
6843         * gst/gstatomic_impl.h: disable warning when it's dumb.
6844         * gst/gstclock.c: fix include
6845         * gst/gstcompat.h: fix variadic macro
6846         * gst/gstinfo.c: fix include
6847         * gst/gstmacros.h: add defines for inlines on MSVC
6848         * gst/gstplugin.c: fix includes
6849         * gst/gstregistry.c: fix includes
6850         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
6851         * gst/gstsystemclock.c: fix include
6852         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
6853         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
6854         * gst/registries/gstxmlregistry.c:
6855         (gst_xml_registry_parse_element_factory): fix use of non-portable
6856         functions
6857         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
6858         * libs/gst/control/dparammanager.h: same
6859
6860 2004-04-28  David Schleef  <ds@schleef.org>
6861
6862         Move a bunch of unused files to old/ with names that are
6863         not case-insensitive-unique.  These files still contain some
6864         useful information that needs to be merged into gstbin.sgml,
6865         etc., so they shouldn't be deleted yet.
6866         * docs/gst/tmpl/GstBin.sgml:
6867         * docs/gst/tmpl/GstBuffer.sgml:
6868         * docs/gst/tmpl/GstCaps.sgml:
6869         * docs/gst/tmpl/GstClock.sgml:
6870         * docs/gst/tmpl/GstCompat.sgml:
6871         * docs/gst/tmpl/GstData.sgml:
6872         * docs/gst/tmpl/GstElement.sgml:
6873         * docs/gst/tmpl/GstEvent.sgml:
6874         * docs/gst/tmpl/GstIndex.sgml:
6875         * docs/gst/tmpl/GstStructure.sgml:
6876         * docs/gst/tmpl/GstTag.sgml:
6877         * docs/gst/tmpl/old/GstBin.sgml:
6878         * docs/gst/tmpl/old/GstBuffer.sgml:
6879         * docs/gst/tmpl/old/GstCaps.sgml:
6880         * docs/gst/tmpl/old/GstClock.sgml:
6881         * docs/gst/tmpl/old/GstCompat.sgml:
6882         * docs/gst/tmpl/old/GstData.sgml:
6883         * docs/gst/tmpl/old/GstElement.sgml:
6884         * docs/gst/tmpl/old/GstEvent.sgml:
6885         * docs/gst/tmpl/old/GstIndex.sgml:
6886         * docs/gst/tmpl/old/GstStructure.sgml:
6887         * docs/gst/tmpl/old/GstTag.sgml:
6888
6889 2004-04-28  David Schleef  <ds@schleef.org>
6890
6891         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6892         (gst_caps_append), (gst_caps_append_structure),
6893         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
6894         (gst_caps_set_simple), (gst_caps_set_simple_valist),
6895         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
6896         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
6897         (gst_caps_intersect), (gst_caps_normalize),
6898         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
6899         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
6900         * gst/gstcaps.h: use GST_IS_CAPS().
6901
6902 2004-04-26  David Schleef  <ds@schleef.org>
6903
6904         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
6905         assembly.  gcc doesn't handle it correctly. (bug #141083)
6906         * gst/gsttrashstack.h: same
6907
6908 2004-04-25  Benjamin Otte  <otte@gnome.org>
6909
6910         * gst/gstelement.c: (gst_element_change_state):
6911           fix assertion to do an int comparison
6912
6913 2004-04-25  Benjamin Otte  <otte@gnome.org>
6914
6915         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6916           better debugging output on error
6917
6918 2004-04-25  Benjamin Otte  <otte@gnome.org>
6919
6920         * gst/gstcaps.c: (gst_caps_subtract):
6921           fix memleak
6922
6923 2004-04-23  Benjamin Otte  <otte@gnome.org>
6924
6925         * gst/gstvalue.c: (gst_value_compare_buffer),
6926         (_gst_value_initialize):
6927           add comparison function for buffers
6928
6929 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6930
6931         * docs/pwg/pwg.xml:
6932           Just found out that this so-called "ima-wav" format is really
6933           just "dvi adpcm" (according to the MS WAV documentation). So
6934           renaming it. We didn't use it yet anyway.
6935
6936 2004-04-23  Benjamin Otte  <otte@gnome.org>
6937
6938         * gst/gstcaps.c: (gst_caps_is_always_compatible):
6939           call gst_caps_is_subset
6940
6941 2004-04-23  Benjamin Otte  <otte@gnome.org>
6942
6943         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
6944         (gst_caps_is_subset):
6945           add documentation
6946
6947 2004-04-23  Benjamin Otte  <otte@gnome.org>
6948           
6949         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
6950         (gst_caps_structure_subtract), (gst_caps_subtract),
6951         (gst_caps_structure_figure_out_union),
6952         (gst_caps_structure_simplify), (gst_caps_do_simplify):
6953           fix simplifying and subtracting not working correctly with optional
6954           properties
6955           solve assorted problems that make it now simplify ebven more
6956         * docs/gst/tmpl/gstcaps.sgml:
6957         * gst/gstcaps.h:
6958           make gst_caps_do_simplify return a bool to indicate if it simplified
6959         * testsuite/caps/simplify.c: (main):
6960           add more checks. The tests is quite a bit useless right now because
6961           the core is heavily simplifying itself.
6962         * testsuite/caps/caps.h:
6963           fix caps to contain all optional properties
6964
6965 2004-04-22  Benjamin Otte  <otte@gnome.org>
6966
6967         * docs/gst/tmpl/gstcaps.sgml:
6968         * docs/gst/tmpl/gstfilesrc.sgml:
6969         * docs/gst/tmpl/gststructure.sgml:
6970         * docs/gst/tmpl/gstvalue.sgml:
6971           update for recent API changes
6972         * gst/gstcaps.c: (gst_caps_do_simplify):
6973           fix to stop trying with a freed structure
6974         * gst/gstpad.c: (gst_pad_link_fixate):
6975           simplify caps
6976         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
6977           remove C++ comment
6978         * gst/gstpad.h:
6979           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
6980         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6981         (gst_structure_to_string):
6982           keep the correct type when using lists of ranges
6983         * gst/gstvalue.c: (gst_value_list_prepend_value),
6984         (gst_value_list_append_value):
6985           copy the value before adding to the list (d'oh)
6986         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
6987         (gst_value_subtract_int_range_int_range):
6988           handle overflows correctly
6989         * gst/gstvalue.c: (gst_value_subtract_from_list):
6990           fix memleak
6991         * testsuite/caps/caps.h:
6992           add a caps that caused segfaults
6993
6994 2004-04-22  Benjamin Otte  <otte@gnome.org>
6995
6996         * testsuite/refcounting/pad.c: (main):
6997           fix test
6998
6999 2004-04-22  Benjamin Otte  <otte@gnome.org>
7000
7001         * gst/gstcaps.c: (gst_caps_subtract):
7002           allow subtracting ANY and EMPTY from ANY caps
7003
7004 2004-04-22  Benjamin Otte  <otte@gnome.org>
7005
7006         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7007         (gst_caps_union):
7008           only simplify in functions that create new caps. Simplifying in
7009           gst_caps_append breaks tests.
7010
7011 2004-04-22  Benjamin Otte  <otte@gnome.org>
7012
7013         * gst/gstcaps.c: (gst_caps_structure_simplify):
7014           unset GValue after use
7015         * gst/gstcaps.c: (gst_caps_append), 
7016         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7017           use gst_caps_simplify (reduces registry size by 30%)
7018         * gst/gstpad.c: (gst_pad_template_new):
7019           don't allow NULL caps
7020
7021 2004-04-22  Benjamin Otte  <otte@gnome.org>
7022
7023         * docs/gst/gstreamer-sections.txt:
7024           add gst_caps_do_simplify
7025         * gst/gstcaps.c:
7026           add documentation for gst_caps_do_simplify
7027         * gst/gstvalue.h:
7028           fix typo in gst_value_register_subtract_func declaration for gst-doc
7029
7030 2004-04-22  Benjamin Otte  <otte@gnome.org>
7031
7032         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7033           fix bug when converting from empty string.
7034         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7035         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7036           use gst_caps_new_empty to allocate a new caps. Only that function
7037           allocates memory for caps now.
7038         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7039         (gst_caps_remove_structure):
7040           add ability to remove one structure (but not to header yet)
7041         * gst/gstcaps.c: (gst_caps_compare_structures),
7042         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7043         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7044         * gst/gstcaps.h:
7045           add gst_caps_do_simplify that tries to simplify a caps in place.
7046           Deprecate old gst_caps_simplify function.
7047         * testsuite/caps/caps.h:
7048           add caps.h containing a common set of caps to test against.
7049         * testsuite/caps/sets.c: (check_caps), (main):
7050           use it.
7051         * testsuite/caps/.cvsignore:
7052         * testsuite/caps/Makefile.am:
7053         * testsuite/caps/simplify.c: (check_caps), (main):
7054           add test to check correctness and efficency of caps simplification.
7055
7056 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7057
7058         reviewed by Benjamin Otte  <otte@gnome.org>
7059
7060         * gst/gstparse.c: (_gst_parse_escape):
7061           Free the GString used in _gst_parse_escape()
7062
7063 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7064
7065         * gst/gstpad.c: (gst_pad_link_negotiate):
7066           refuse to link if the link is not possible
7067         * configure.ac:
7068         * testsuite/Makefile.am:
7069         * testsuite/negotiation/.cvsignore:
7070         * testsuite/negotiation/Makefile.am:
7071         * testsuite/negotiation/pad_link.c: (main):
7072           add test that checks the above behaviour
7073
7074 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7075
7076         * docs/gst/gstreamer-sections.txt:
7077           add newly added API
7078
7079 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7080
7081         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7082         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7083         (gst_filesrc_open_file), (gst_filesrc_close_file),
7084         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7085         * gst/elements/gstfilesrc.h:
7086           add support for non-regular files (#140734)
7087
7088 2004-04-21  Benjamin Otte  <otte@gnome.org>
7089
7090         * gst/gstpad.c: (gst_pad_link_fixate):
7091           add sophisticated error checking code to see if fixation functions
7092           did their fixation right
7093
7094 2004-04-21  Benjamin Otte  <otte@gnome.org>
7095
7096         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7097           check for ANY caps before appending/unioning
7098         * gst/gstcaps.c: (gst_caps_is_subset),
7099         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7100         (gst_caps_structure_subtract), (gst_caps_subtract):
7101         * gst/gstcaps.h:
7102           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7103           the API. deprecate gst_caps_is_equal_fixed
7104         * gst/gstpad.c: (gst_pad_try_set_caps):
7105         * gst/gstqueue.c: (gst_queue_link):
7106           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7107         * gst/gststructure.c: (gst_structure_get_name_id):
7108         * gst/gststructure.h:
7109           add function gst_structure_get_name_id
7110         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7111         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7112         (gst_value_subtract_int_range_int_range),
7113         (gst_value_subtract_double_double_range),
7114         (gst_value_subtract_double_range_double),
7115         (gst_value_subtract_double_range_double_range),
7116         (gst_value_subtract_from_list), (gst_value_subtract_list),
7117         (gst_value_can_intersect), (gst_value_subtract),
7118         (gst_value_can_subtract), (gst_value_register_subtract_func),
7119         (_gst_value_initialize):
7120         * gst/gstvalue.h:
7121           add support for subtracting values from each other. Note that
7122           subtracting means subtracting as in set theory. Required for caps
7123           stuff above.
7124         * testsuite/caps/.cvsignore:
7125         * testsuite/caps/Makefile.am:
7126         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7127         * testsuite/caps/sets.c: (check_caps), (main):
7128         * testsuite/caps/subtract.c: (check_caps), (main):
7129           add tests for subtraction and equality code.
7130
7131 2004-04-20  David Schleef  <ds@schleef.org>
7132
7133         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7134         * gst/indexers/Makefile.am:
7135         * gst/schedulers/Makefile.am:
7136         * libs/gst/bytestream/Makefile.am:
7137         * libs/gst/control/Makefile.am:
7138         * libs/gst/getbits/Makefile.am:
7139
7140 2004-04-20  David Schleef  <ds@schleef.org>
7141
7142         * common/as-libtool.mak: Fine-tune DLL building.
7143         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7144         (like gst-plugins)
7145         * examples/plugins/Makefile.am: remove plugindir
7146         * gst/autoplug/Makefile.am: DLL building fixes
7147         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7148         Windows.
7149         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7150         * gst/indexers/Makefile.am: DLL building fixes
7151         * gst/schedulers/Makefile.am: DLL building fixes.
7152         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7153         * libs/gst/control/Makefile.am: same
7154         * libs/gst/getbits/Makefile.am: same
7155         * testsuite/Makefile.am: New dlopen directory
7156         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7157         when dlopened.
7158         * testsuite/dlopen/dlopen_gst.c: (main): same
7159         * testsuite/dlopen/loadgst.c: (do_test): same
7160
7161 2004-04-20  David Schleef  <ds@schleef.org>
7162
7163         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7164         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7165
7166 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7167
7168         * gst/gstelement.c: (gst_element_wait),
7169         (gst_element_set_time_delay), (gst_element_change_state):
7170           Use GST_TIME_*
7171
7172 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7173
7174         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7175         (gst_spider_identity_plug):
7176           improve debugging messages
7177         * gst/gstbin.c: (gst_bin_remove_func):
7178           make sure the state_change function is only called with simple state
7179           transitions
7180
7181 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7182
7183         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7184         (gst_fakesink_set_property), (gst_fakesink_chain):
7185         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7186         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7187         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7188         * gst/elements/gstidentity.c: (gst_identity_chain),
7189         (gst_identity_set_property):
7190         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7191         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7192           add warnings to _set_property for unknown arguments
7193           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7194
7195 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7196
7197         * Makefile.am:
7198         * docs/manuals.mak:
7199           add .po file download snippet
7200           fix a bug in the doc makefile
7201
7202 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7203
7204         * Makefile.am:
7205         * po/LINGUAS:
7206         * po/en_GB.po:
7207           Added en_GB translation (Gareth Owen)
7208
7209 2004-04-20  Johan Dahlin  <johan@gnome.org>
7210
7211         * gst/gstpad.c (_invent_event): Clean up
7212
7213 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7214
7215         * testsuite/caps/filtercaps.c: (main):
7216           fix test to test things correctly (caps are complicated)
7217
7218 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7219
7220         * testsuite/caps/Makefile.am:
7221         * testsuite/caps/filtercaps.c: (main):
7222           add test (that doesn't work right now, but should)
7223
7224 2004-04-19  David Schleef  <ds@schleef.org>
7225
7226         * configure.ac: Add test for allowing unaligned access.  Add define
7227         to put in gstconfig.h.
7228         * docs/gst/gstreamer-sections.txt: New symbols
7229         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7230         * docs/gst/tmpl/gstfilesrc.sgml:
7231         * docs/gst/tmpl/gstparse.sgml:
7232         * docs/gst/tmpl/gsttypes.sgml:
7233         * docs/gst/tmpl/gstutils.sgml:
7234         * docs/gst/tmpl/gstvalue.sgml:
7235         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7236         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7237         on most !i386/!powerpc architectures.  From Daniel Gazard
7238         <daniel.gazard@free.fr>.  (bug #140156)
7239         * po/af.po: Check in changes made by gettext.
7240         * po/az.po:
7241         * po/fr.po:
7242         * po/nl.po:
7243         * po/sr.po:
7244         * po/sv.po:
7245
7246 2004-04-20  Benjamin Otte  <otte@gnome.org>
7247
7248         * gst/schedulers/entryscheduler.c: 
7249         (gst_entry_scheduler_yield):
7250           refuse to yield when decoupled elements insist on doing that.
7251           At least it's better than crashing
7252
7253 2004-04-19  David Schleef  <ds@schleef.org>
7254
7255         * docs/libs/Makefile.am: Change sinclude to include
7256         * docs/gst/Makefile.am: same
7257         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7258
7259 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7260
7261         * po/LINGUAS:
7262         * po/uk.po:
7263           Added Ukrainian translation (Maxim V. Dziumanenko)
7264
7265 2004-04-19  Johan Dahlin  <johan@gnome.org>
7266
7267         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7268         checking here, do it before calling the function.
7269         Clean up, use for loops instead of while loops while iterating
7270         over lists.
7271
7272         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7273         in debug message.
7274         (gst_spider_create_and_plug): Improve debug message.
7275         General: Replace while loops which iterates over GLists with for
7276         loops. Which are much cleaner, improves readability, especially
7277         for gst_spider_identity_plug
7278
7279         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7280         fixes bug 140477
7281
7282 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7283
7284         * po/LINGUAS:
7285         * po/tr.po:
7286           Added Turkish translation (Baris Cicek)
7287
7288 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7289
7290         * docs/faq/troubleshooting.xml:
7291           Mention gst-register in the FAQ (fixes 139045).
7292
7293 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7294
7295         * docs/gst/gstreamer-sections.txt:
7296
7297 2004-04-17  Benjamin Otte  <otte@gnome.org>
7298
7299         * gst/gstelement.c: (gst_element_dispose):
7300           simplify
7301         * gst/gstpad.c: (gst_pad_call_chain_function):
7302           don't create loads of events due to bad macro usage
7303
7304 2004-04-16  David Schleef  <ds@schleef.org>
7305
7306         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7307         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7308         * gst/gstvalue.c: (gst_value_serialize_buffer),
7309         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7310         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7311         to indicate types that are fixed wrt caps or not.  Switching to
7312         this function fixes (bug #140298).
7313         * gst/gstvalue.h:
7314
7315 2004-04-16  David Schleef  <ds@schleef.org>
7316
7317         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7318         for GST_UNALIGNED_ACESS, since we essentially know which archs
7319         are ok.
7320
7321 2004-04-17  Benjamin Otte  <otte@gnome.org>
7322
7323         * docs/gst/Makefile.am:
7324           ignore gst/parse directory when building docs (fixes #140205)
7325
7326 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7327
7328         * testsuite/refcounting/mem.c: (vmsize):
7329           do error checking
7330
7331 2004-04-16  Johan Dahlin  <johan@gnome.org>
7332
7333         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7334         and gst_pad_call_get_function.
7335
7336 2004-04-15  David Schleef  <ds@schleef.org>
7337
7338         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7339         checks if we can access unaligned memory.
7340         * configure.ac: Use it.
7341
7342 2004-04-16  Benjamin Otte  <otte@gnome.org>
7343
7344         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7345         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7346         * gst/elements/gstfilesrc.h:
7347           s/seek_happened/need_discont/ and require discont before sending any
7348           data
7349
7350 2004-04-15  David Schleef  <ds@schleef.org>
7351
7352         * gst/gstvalue.c: (gst_value_serialize_buffer),
7353         (gst_value_deserialize_buffer), (_gst_value_initialize):
7354         Register these types as fundamental types. (bug #140015)
7355
7356 2004-04-16  Benjamin Otte  <otte@gnome.org>
7357
7358         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7359         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7360         (gst_pad_pull):
7361           implement enforcing discont events before buffers are passed. This
7362           allows state changes of only some elements and later correctly going
7363           on where they left off (or in short: you can now set audio sinks to
7364           NULL to release the device when the pipeline is paused)
7365         * gst/gstpad.c: (gst_pad_call_chain_function),
7366         (gst_pad_call_get_function):
7367         * gst/gstpad.h:
7368           add gst_pad_call_chain_function and gst_pad_call_get_function for
7369           scheduler interaction. They are required because of the changes
7370           above.
7371         * gst/schedulers/entryscheduler.c: (get_buffer),
7372         (gst_entry_scheduler_chain_wrapper),
7373         (gst_entry_scheduler_get_wrapper),
7374         (gst_entry_scheduler_state_transition),
7375         (gst_entry_scheduler_pad_link):
7376         * gst/schedulers/gstbasicscheduler.c:
7377         (gst_basic_scheduler_chain_wrapper),
7378         (gst_basic_scheduler_src_wrapper),
7379         (gst_basic_scheduler_chainhandler_proxy),
7380         (gst_basic_scheduler_gethandler_proxy),
7381         (gst_basic_scheduler_cothreaded_chain),
7382         (gst_basic_scheduler_chain_elements):
7383         * gst/schedulers/gstoptimalscheduler.c:
7384         (get_group_schedule_function), (pad_clear_queued),
7385         (gst_opt_scheduler_pad_link):
7386           use the new functions instead of calling get/chain-functions
7387           directly.
7388
7389 2004-04-15  David Schleef  <ds@schleef.org>
7390
7391         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7392         * docs/gst/tmpl/gstinfo.sgml: same
7393         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7394         gtk-doc put here.
7395         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7396         * examples/queue/queue.c: (main):  We iterate pipelines, not
7397         bins.  (bug #139996)
7398
7399 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7400
7401         * docs/pwg/advanced-types.xml:
7402           Add MS RLE support. Also document Qt RLE although I have no sample
7403           files for that yet. And document an extra property for ADPCM.
7404
7405 2004-04-15  David Schleef  <ds@schleef.org>
7406
7407         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7408         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7409         Windows.
7410
7411 2004-04-15  David Schleef  <ds@schleef.org>
7412
7413         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7414         symbol names to not conflict with new gstinfo.h symbols.
7415         * gst/gstinfo.h: Add inline functions for all those crazy
7416         compilers that don't know how to handle variadic macros (MSVC).
7417
7418 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7419
7420         * configure.ac: bump nano to 1
7421
7422 === release 0.8.1 ===
7423
7424 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7425
7426         * NEWS:
7427         * RELEASE:
7428         * configure.ac:
7429           releasing 0.8.1, "Snow Brigade"
7430
7431 2004-04-14  David Schleef  <ds@schleef.org>
7432
7433         * testsuite/Makefile.am: define tests_ignore
7434         * testsuite/Rules: Added new tests_ignore, which get compiled,
7435         but not run (generally because they're inconsistent or have
7436         heisenbugs).  Now we can ensure all the .c files compile in
7437         testsuite/.
7438         * testsuite/bins/Makefile.am: define tests_ignore
7439         * testsuite/bytestream/Makefile.am:
7440         * testsuite/caps/Makefile.am:
7441         * testsuite/clock/Makefile.am:
7442         * testsuite/debug/Makefile.am:
7443         * testsuite/debug/global.c: (gst_debug_log_one),
7444         (gst_debug_log_two): Fix compilation problem.
7445         * testsuite/dynparams/Makefile.am:
7446         * testsuite/elements/Makefile.am:
7447         * testsuite/ghostpads/Makefile.am:
7448         * testsuite/indexers/Makefile.am:
7449         * testsuite/parse/Makefile.am:
7450         * testsuite/plugin/Makefile.am:
7451         * testsuite/refcounting/Makefile.am:
7452         * testsuite/refcounting/element_pad.c: (main): Don't return leak
7453         results, because it's not calculated correctly.
7454         * testsuite/refcounting/pad.c: (main): same
7455         * testsuite/states/Makefile.am:
7456         * testsuite/tags/Makefile.am:
7457         * testsuite/threads/Makefile.am:
7458
7459 2004-04-14  David Schleef  <ds@schleef.org>
7460
7461         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
7462         generating bad code around the cpu detection asm code.
7463
7464 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7465
7466         * tools/gst-inspect.c: (print_element_info):
7467           print numeric version of rank as well, since we added some - 1
7468           rank values to elements
7469
7470 2004-04-13  David Schleef  <ds@schleef.org>
7471
7472         * configure.ac:  Disable various code when compiling for MinGW.
7473         * gst/elements/Makefile.am:
7474         * gst/elements/gstelements.c:
7475         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7476         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7477         * gst/registries/gstxmlregistry.c: (make_dir):
7478
7479 2004-04-13  David Schleef  <ds@schleef.org>
7480
7481         * gst/Makefile.am:
7482         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7483         assembly.
7484         * gst/gstcpuid_i386.s: remove
7485
7486 2004-04-13  David Schleef  <ds@schleef.org>
7487
7488         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
7489         seems to think it needs to be done.
7490         * docs/gst/tmpl/gstfakesink.sgml:
7491         * docs/gst/tmpl/gstfakesrc.sgml:
7492         * docs/gst/tmpl/gstfdsink.sgml:
7493         * docs/gst/tmpl/gstfdsrc.sgml:
7494         * docs/gst/tmpl/gstfilesink.sgml:
7495         * docs/gst/tmpl/gstfilesrc.sgml:
7496         * docs/gst/tmpl/gstidentity.sgml:
7497         * docs/gst/tmpl/gstmd5sink.sgml:
7498         * docs/gst/tmpl/gstmultifilesrc.sgml:
7499         * docs/gst/tmpl/gstpipefilter.sgml:
7500         * docs/gst/tmpl/gstshaper.sgml:
7501         * docs/gst/tmpl/gstspider.sgml:
7502         * docs/gst/tmpl/gstspideridentity.sgml:
7503         * docs/gst/tmpl/gststatistics.sgml:
7504         * docs/gst/tmpl/gsttee.sgml:
7505         * docs/gst/tmpl/gsttypefind.sgml:
7506         * docs/gst/tmpl/gstutils.sgml:
7507
7508 2004-04-13  David Schleef  <ds@schleef.org>
7509
7510         * configure.ac: Changes to remove POSIXisms (mmap in this case)
7511         and to build DLLs on Windows.
7512         * gst/Makefile.am:
7513         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7514         (gst_filesrc_open_file):
7515         * gst/schedulers/Makefile.am:
7516
7517 2004-04-13  David Schleef  <ds@schleef.org>
7518
7519         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
7520         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
7521         fixating lists.
7522
7523 2004-04-12  David Schleef  <ds@schleef.org>
7524
7525         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
7526         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
7527         to using it.
7528         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
7529         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
7530         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
7531         * gst/gststructure.c: (gst_structure_set_valist),
7532         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
7533         support for buffers.
7534         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
7535         intended to be const.
7536         * gst/gsttag.h: same
7537         * gst/gstvalue.c: (gst_value_serialize_buffer),
7538         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
7539         to (de)serialize buffers.
7540         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
7541         * testsuite/caps/string-conversions.c: (main):
7542         * testsuite/caps/value_serialize.c: add new test
7543
7544 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7545
7546         * docs/pwg/advanced-types.xml:
7547           Document MS video 1 (video/x-msvideocodec) mimetype/format.
7548
7549 2004-04-11  Benjamin Otte  <otte@gnome.org>
7550
7551         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7552           rename categories to basic_*
7553         * gst/schedulers/gstbasicscheduler.c: 
7554         (gst_basic_scheduler_chain_wrapper),
7555         (gst_basic_scheduler_chainhandler_proxy),
7556         (gst_basic_scheduler_gethandler_proxy),
7557         (gst_basic_scheduler_eventhandler_proxy):
7558           debugging category fixes - put common stuff in log category
7559         * gst/schedulers/gstbasicscheduler.c: 
7560         (gst_basic_scheduler_chain_elements):
7561           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
7562           active and linking two active chains
7563
7564 2004-04-10  Benjamin Otte  <otte@gnome.org>
7565
7566         * docs/pwg/intro-preface.xml:
7567           fix dead links and remove reference to Wiki
7568
7569 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7570
7571         * gst/schedulers/gstbasicscheduler.c:
7572           make sure we can switch back to the main function if we're still in
7573           the main function (supposed to fix #139617)
7574         * gst/schedulers/gthread-cothreads.h:
7575           don't throw an error when switching to the same cothread
7576
7577 2004-04-09  Benjamin Otte  <otte@gnome.org>
7578
7579         * gst/gstbin.c: (gst_bin_get_type):
7580         * gst/gstclock.c: (gst_clock_get_type):
7581         * gst/gstindex.c: (gst_index_get_type):
7582         * gst/gstobject.c: (gst_object_get_type),
7583         (gst_signal_object_get_type):
7584         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
7585         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
7586         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
7587         * gst/gstqueue.c: (gst_queue_get_type):
7588         * gst/gstregistry.c: (gst_registry_get_type):
7589         * gst/gstsystemclock.c: (gst_system_clock_get_type):
7590         * gst/gstthread.c: (gst_thread_get_type):
7591           don't use memchunks for these objects, use malloc instead
7592
7593 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7594
7595         * docs/gst/.cvsignore:
7596         * docs/gst/Makefile.am:
7597         * docs/gst/gstreamer-sections.txt:
7598         * docs/gst/tmpl/gstaggregator.sgml:
7599         * docs/gst/tmpl/gstbuffer.sgml:
7600         * docs/gst/tmpl/gstclock.sgml:
7601         * docs/gst/tmpl/gstelement.sgml:
7602         * docs/gst/tmpl/gstfakesink.sgml:
7603         * docs/gst/tmpl/gstfakesrc.sgml:
7604         * docs/gst/tmpl/gstfdsink.sgml:
7605         * docs/gst/tmpl/gstfdsrc.sgml:
7606         * docs/gst/tmpl/gstfilesink.sgml:
7607         * docs/gst/tmpl/gstfilesrc.sgml:
7608         * docs/gst/tmpl/gstidentity.sgml:
7609         * docs/gst/tmpl/gstindex.sgml:
7610         * docs/gst/tmpl/gstinfo.sgml:
7611         * docs/gst/tmpl/gstmd5sink.sgml:
7612         * docs/gst/tmpl/gstmultifilesrc.sgml:
7613         * docs/gst/tmpl/gstpad.sgml:
7614         * docs/gst/tmpl/gstpipefilter.sgml:
7615         * docs/gst/tmpl/gstpipeline.sgml:
7616         * docs/gst/tmpl/gstpluginfeature.sgml:
7617         * docs/gst/tmpl/gstqueue.sgml:
7618         * docs/gst/tmpl/gstregistry.sgml:
7619         * docs/gst/tmpl/gstscheduler.sgml:
7620         * docs/gst/tmpl/gstshaper.sgml:
7621         * docs/gst/tmpl/gstspider.sgml:
7622         * docs/gst/tmpl/gstspideridentity.sgml:
7623         * docs/gst/tmpl/gststatistics.sgml:
7624         * docs/gst/tmpl/gstsystemclock.sgml:
7625         * docs/gst/tmpl/gsttee.sgml:
7626         * docs/gst/tmpl/gstthread.sgml:
7627         * docs/gst/tmpl/gsttypefind.sgml:
7628         * docs/gst/tmpl/gstutils.sgml:
7629           further doc build fixes
7630
7631 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7632
7633         * docs/gst/Makefile.am:
7634           make docs exit on scanning problems
7635           fix nonsrcdir build issues
7636         * docs/gst/gstreamer-sections.txt:
7637           adding stuff from -unused
7638         * gst/gstqueue.h:
7639           create GstQueueSize
7640         * gst/schedulers/cothreads_compat.h:
7641           fix cothread warnings
7642
7643 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7644
7645         * docs/gst/gstreamer-sections.txt:
7646           remove defines deprecated by Benjamin
7647
7648 2004-04-07  Benjamin Otte  <otte@gnome.org>
7649
7650         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7651           when the buffer is complete, don't check if other buffers are needed
7652         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
7653           check that the offset is >0 so we don't try to read before the
7654           beginning of the file
7655         * gst/gstpad.c: (gst_pad_set_pad_template):
7656           sink the template, so we don't end up with 130k pad templates
7657
7658 2004-04-06  Benjamin Otte  <otte@gnome.org>
7659
7660         * gst/autoplug/gstspider.c: (gst_spider_link_add):
7661           don't ref the element, adding already reffed it. And we didn't unref
7662           it later anyway... (huge memleak when you used many spider elements)
7663         * gst/gstelement.c: (gst_element_base_class_finalize):
7664         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
7665         (gst_element_register):
7666         * gst/gsturi.c: (gst_element_make_from_uri):
7667           use gst_object_(un)ref instead of g_object(un)ref
7668
7669 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7670
7671         * gst/gstbuffer.h:
7672           remove macro that wouldn't work anymore because struct member has
7673           been removed.
7674         * gst/schedulers/entryscheduler.c: (schedule_forward):
7675           fix segfault for unconnected pads
7676         
7677 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7678
7679         reviewed by David Schleef <ds@schleef.org>
7680
7681         * gst/gstinfo.h:
7682           *_FORMAT modifiers should require putting a % in front of them for
7683           consistency reasons.
7684
7685 2004-04-05  Colin Walters  <walters@redhat.com>
7686
7687         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
7688         space.
7689
7690 2004-04-05  Benjamin Otte  <otte@gnome.org>
7691
7692         * configure.ac:
7693         * gst/Makefile.am:
7694         * gst/gst_private.h:
7695         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
7696           add support for detecting if GStreamer runs inside valgrind.
7697           requires valgrind (d'oh) and --enable-debug for correct cdetection.
7698           print a big message in valgrind that GStreamer has detected it's
7699           running inside and might now use different code.
7700         * gst/gstmemchunk.c: (populate), (free_area),
7701         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
7702         (gst_mem_chunk_free):
7703           flag memchunks for valgrind, so it can detect leaking of chunks.
7704           This allows detecting leaks of GstBuffer and GstEvent correctly
7705           inside valgrind.
7706
7707 2004-04-05  David Schleef  <ds@schleef.org>
7708
7709         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
7710           jensgr@gmx.net (Jens Granseuer)
7711
7712 2004-04-05  David Schleef  <ds@schleef.org>
7713
7714         * gst/gstbuffer.c: (_gst_buffer_sub_free),
7715         (gst_buffer_default_free), (gst_buffer_default_copy),
7716         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
7717         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
7718         structures in one place.
7719
7720 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7721
7722         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
7723           (GST_TIME_FORMAT, GST_TIME_ARGS)
7724
7725 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7726
7727         * testsuite/elements/Makefile.am:
7728           disable test until it stops breaking make distcheck
7729
7730 2004-04-05  Johan Dahlin  <johan@gnome.org>
7731
7732         * po/sv.po: Updated translation
7733
7734 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7735
7736         * gst/gstplugin.c: (gst_plugin_load_file):
7737           fix segfault for when original plugin was loaded statically
7738
7739 2004-04-05  Benjamin Otte  <otte@gnome.org>
7740
7741         * testsuite/debug/category.c: (main):
7742         * testsuite/debug/commandline.c: (main):
7743         * testsuite/debug/output.c: (main):
7744           fix tests to work again with debugging enabled
7745
7746 2004-04-05  Benjamin Otte  <otte@gnome.org>
7747
7748         * gst/schedulers/gstbasicscheduler.c:
7749         (gst_basic_scheduler_pad_link):
7750           fix to work with recent scheduling changes
7751
7752 2004-04-05  Benjamin Otte  <otte@gnome.org>
7753
7754         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
7755         prepareChangeLog doesn't work when cvs indents):
7756           don't throw an error when no element can be scheduled, there's too
7757           many weird reasons why it doesn't work. Return STOPPED instead.
7758           decoupled elemts' schedulability doesn't depend on bufpens.
7759
7760 2004-04-04  Benjamin Otte  <otte@gnome.org>
7761
7762         * gst/schedulers/gstbasicscheduler.c:
7763         (gst_basic_scheduler_pad_select):
7764           fix uninitialized variable warnings
7765
7766 2004-04-04  Benjamin Otte  <otte@gnome.org>
7767
7768         * gst/gstpad.c: (gst_pad_collect_valist):
7769           fix uninitialized variable warning
7770         * gst/schedulers/entryscheduler.c: (schedule_forward):
7771           fix shadowed variable
7772
7773 2004-04-04  Benjamin Otte  <otte@gnome.org>
7774
7775         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
7776         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
7777         (gst_pad_select):
7778         * gst/gstpad.h:
7779         * gst/gstscheduler.c: (gst_scheduler_pad_select),
7780         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
7781         * gst/gstscheduler.h:
7782           implement gst_pad_collect as replacement for gst_pad_select.
7783           deprecate gst_pad_select and gst_scheduler_(un)lock_element
7784           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
7785           new pad_select, lock and unlock calls.
7786         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
7787         * gst/cothreads.h:
7788         * gst/schedulers/cothreads_compat.h:
7789         * gst/schedulers/gthread-cothreads.h:
7790           remove unused cothread_lock and cothread_unlock calls
7791         * gst/schedulers/entryscheduler.c:
7792         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
7793         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
7794         (gst_entry_scheduler_pad_select):
7795           update to new API
7796         * gst/schedulers/gstbasicscheduler.c:
7797         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
7798         (gst_basic_scheduler_pad_select):
7799           remove useless lock and unlock calls, update pad_select to new API
7800           (untested)
7801         * gst/schedulers/gstoptimalscheduler.c:
7802         (gst_opt_scheduler_class_init):
7803           remove useless select, lock and unlock function calls
7804         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
7805           use gst_pad_collect instead of gst_pad_select
7806
7807 2004-04-04  Benjamin Otte  <otte@gnome.org>
7808
7809         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
7810         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
7811         (schedule_next_element), (print_entry):
7812           add can_schedule_pad to handle element states.
7813           add schedule_forward to select the correct entry to schedule next
7814
7815 2004-04-03  Benjamin Otte  <otte@gnome.org>
7816
7817         * gst/schedulers/entryscheduler.c: 
7818           remove unused variable, fix error inside Rb, fix compile warning in
7819           unreachable code
7820
7821 2004-04-03  Benjamin Otte  <otte@gnome.org>
7822
7823         * gst/schedulers/entryscheduler.c:
7824           completely revamp the inner workings, so it's a lot easier to
7825           understand and extend
7826
7827 2004-04-03  Andy Wingo  <wingo@pobox.com>
7828
7829         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
7830         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
7831         This allows better introspection of pipeline topology.
7832         (add_to_chain): Don't do trickery to put loop elements first;
7833         rather, queue a chain sort by marking the chain as dirty.
7834         (remove_from_chain): Mark the chain dirty.
7835         (sort_chain): New function. Sorts the group list so that terminal
7836         sinks are first. This means elements on the sink side will be
7837         preferentially sscheduled before elements on the src side of the
7838         pipeline.
7839         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
7840         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
7841         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
7842         (group_inc_link): Change argument and variable names to match the
7843         new link structure member names (src and sink).
7844         (group_dec_link): Add some description
7845
7846 2004-04-03  Benjamin Otte  <otte@gnome.org>
7847
7848         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
7849         * gst/gstinfo.h:
7850         * testsuite/debug/category.c: (main):
7851         * testsuite/debug/commandline.c: (main):
7852         * testsuite/debug/output.c: (main):
7853         * testsuite/debug/printf_extension.c: (main):
7854           fix to successfully build and test with --disable-gst-debug
7855           configure switch (fixes #138705)
7856
7857 2004-04-03  Benjamin Otte  <otte@gnome.org>
7858
7859         * docs/pwg/building-boiler.xml:
7860           add cvs login line and s/anonymous/anoncvs/
7861
7862 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
7863
7864         reviewed by Benjamin Otte  <otte@gnome.org>
7865
7866         * gst/gststructure.c: (gst_structure_free):
7867           memleak fix: free fields array (partial fix for #134839)
7868
7869 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7870
7871         * docs/random/ds/0.9-suggested-changes:
7872           Add a note to change handoff use in fakesrc to be usable in
7873           a more generic way (fakesrc should be renamed to appsrc or so).
7874         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7875           Change signal type to scope, so we can fill the buffer in the
7876           handoff handler (that's the whole use of this signal...).
7877
7878 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7879
7880         * docs/pwg/other-ntoone.xml:
7881           Document muxers and n-to-1 elements.
7882
7883 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
7884
7885         * gst/registries/gstxmlregistry.c
7886         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
7887         determine if a file is a G_MODULE. The old one discards paths
7888         containing "so" somewhere in the middle. My home directory is
7889         called "soto". Go figure...
7890
7891 2004-03-31  David Schleef  <ds@schleef.org>
7892
7893         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
7894         to eventually deprecate gst_buffer_merge().  (bug: #136408)
7895         * gst/gstbuffer.h:
7896
7897 2004-03-31  David Schleef  <ds@schleef.org>
7898
7899         * gst/gstvalue.c: (gst_value_union_int_int_range),
7900         (gst_value_union_int_range_int_range), (gst_value_can_union),
7901         (gst_value_union), (_gst_value_initialize):  Add some union
7902         implementations.  We didn't have any previously.
7903         * testsuite/caps/Makefile.am:
7904         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
7905         (gst_audioscale_getcaps), (test_caps), (main): A little test
7906         that is the same as the caps manipulation in audioscale.
7907
7908 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7909
7910         * docs/faq/general.xml:
7911           add entry about "does gst support format X?"
7912
7913 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7914
7915         * gst/gstthread.c:
7916           fix docs
7917         * gst/gstutils.h:
7918           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
7919
7920 2004-03-30  Benjamin Otte  <otte@gnome.org>
7921
7922         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7923           set the offset of the buffer to the requested offset
7924         * gst/elements/gsttypefind.c: (stop_typefinding):
7925           revert patch 1.18 (which I unfortunately don't know the reason for).
7926           This is needed to allow downstream elements to seek. Otherwise
7927           typefind might overwrite a previous seek by downstream elements.
7928           This lead to errors with id3tag and typefind on some mp3s.
7929         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
7930         (gst_entry_scheduler_iterate):
7931           be more verbose when debugging
7932
7933 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7934
7935         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7936           make sure we don't get NULL strings
7937
7938 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7939
7940         * gst/gstcaps.c:
7941         * gst/gstelement.c:
7942         * gst/gstelementfactory.c: (gst_element_factory_get_type):
7943         * gst/gstindex.c: (gst_index_resolver_get_type),
7944         (gst_index_get_type), (gst_index_factory_get_type):
7945         * gst/gstinfo.c:
7946         * gst/gstpad.c:
7947         * gst/gstplugin.c:
7948         * gst/gsturi.c: (gst_uri_handler_get_type):
7949         * gst/gstvalue.c:
7950           first batch of documentation fixes
7951
7952 2004-03-29  David Schleef  <ds@schleef.org>
7953
7954         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
7955         * docs/gst/gstreamer-docs.sgml:  More hacking
7956         * docs/gst/gstreamer-sections.txt:
7957         * docs/gst/tmpl/cothreads_compat.sgml:
7958         * docs/gst/tmpl/gstcaps.sgml:
7959         * docs/gst/tmpl/gstclock.sgml:
7960         * docs/gst/tmpl/gstelement.sgml:
7961         * docs/gst/tmpl/gstevent.sgml:
7962         * docs/gst/tmpl/gstpad.sgml:
7963         * docs/gst/tmpl/gstutils.sgml:
7964         * docs/gst/tmpl/gstxml.sgml:
7965         * docs/gst/tmpl/gthread-cothreads.sgml:
7966         * docs/random/ds/0.9-suggested-changes:
7967         * gst/elements/gstfakesink.h: doc fixes
7968         * gst/elements/gstfakesrc.h: doc fixes
7969         * gst/gstcaps.c: doc fixes
7970         * gst/gstcaps.h: doc fixes
7971         * gst/gstelement.c: doc fixes
7972         * gst/gstelement.h: doc fixes
7973         * gst/gstindex.c: doc fixes
7974         * gst/gstinfo.c: doc fixes
7975         * gst/gstpad.c: doc fixes
7976         * gst/gstpad.h: doc fixes
7977         * gst/gstplugin.c: doc fixes
7978         * gst/gsttypefind.h: doc fixes
7979         * gst/gsturi.c: doc fixes
7980         * gst/gstvalue.c: doc fixes
7981
7982 2004-03-29  Colin Walters  <walters@redhat.com>
7983
7984         * gst/registries/gstxmlregistry.c (get_time)
7985         (plugin_times_older_than_recurse):
7986         Use the result of stat to determine whether a path is a file,
7987         so we don't attempt to opendir() files.
7988
7989 2004-03-29  Benjamin Otte  <otte@gnome.org>
7990
7991         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7992           print caps in debugging output when setting caps failed
7993         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
7994         (schedule_next_element), (get_buffer), (run_chainhandler),
7995         (element_may_start), (gst_entry_scheduler_chain_handler),
7996         (gst_entry_scheduler_get_handler),
7997         (gst_entry_scheduler_state_transition),
7998         (gst_entry_scheduler_pad_link):
7999           make this scheduler a testcase for mandatory
8000           discont-before-first-buffer which is needed if we want to allow apps
8001           to release the sound device.
8002           add SCHED_ASSERT macro to print scheduler state before an assertion
8003           triggers.
8004
8005 2004-03-29  Benjamin Otte  <otte@gnome.org>
8006
8007         * COPYING:
8008           replace by LGPL (former COPYING.LIB). The core is completely
8009           licensed LGPL.
8010         * COPYING.LIB:
8011           remove
8012
8013 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8014
8015         * po/af.po:
8016         * po/sv.po:
8017           updated Afrikaans and Swedish
8018
8019 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8020
8021         * po/LINGUAS:
8022         * po/az.po:
8023           adding Azerbaijani (Mətin Əmirov)
8024
8025 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8026
8027         * gst/gstelement.h: 
8028         * gst/gstelement.c (gst_element_set_time_delay): New function for
8029         setting element time taking into account a hardware buffering
8030         delay.
8031         (gst_element_set_time): Now just an invocation of
8032         gst_element_set_time_delay.
8033         * gst/gstclock.h: 
8034         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8035         allowing to set event times in the future.
8036         (gst_clock_get_event_time): Now just an invocation of
8037         gst_clock_get_event_time_delay.
8038
8039 2004-03-28  Benjamin Otte  <otte@gnome.org>
8040
8041         * gst/gstbin.c: (gst_bin_set_element_sched),
8042         (gst_bin_unset_element_sched):
8043           don't add decoupled elements to schedulers - otherwise it's
8044           impossible to control if a link to a decoupled element was already
8045           removed from a scheduler or not.
8046         * gst/schedulers/cothreads_compat.h:
8047         * gst/schedulers/gthread-cothreads.h:
8048           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8049           is no "unused" warning.
8050         * gst/schedulers/Makefile.am:
8051         * gst/schedulers/entryscheduler.c:
8052           add new scheduler, based on ideas from talking to David and Martin.
8053           It's supposed to be small and correct. Currently it's also slow (but
8054           it's not noticable)
8055         * examples/retag/retag.c: (main):
8056         * testsuite/bytestream/test1.c: (main):
8057           fix missing NULLs at end of variadic functions
8058         * testsuite/elements/.cvsignore:
8059           update
8060
8061 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8062
8063         * gst/gstevent.h:
8064         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8065
8066 2004-03-25  David Schleef  <ds@schleef.org>
8067
8068         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8069         * docs/gst/tmpl/gstaggregator.sgml:
8070         * docs/gst/tmpl/gstautoplugfactory.sgml:
8071         * docs/gst/tmpl/gstbin.sgml:
8072         * docs/gst/tmpl/gstbuffer.sgml:
8073         * docs/gst/tmpl/gstbufferstore.sgml:
8074         * docs/gst/tmpl/gstfakesink.sgml:
8075         * docs/gst/tmpl/gstfakesrc.sgml:
8076         * docs/gst/tmpl/gstmd5sink.sgml:
8077         * docs/gst/tmpl/gstreamer-unused.sgml:
8078         * docs/gst/tmpl/gstsearchfuncs.sgml:
8079         * docs/gst/tmpl/gstshaper.sgml:
8080         * docs/gst/tmpl/gstspider.sgml:
8081         * docs/gst/tmpl/gsttee.sgml:
8082         * docs/gst/tmpl/gstutils.sgml:
8083         * docs/gst/tmpl/gstvalue.sgml:
8084         * docs/gst/tmpl/gstxml.sgml:
8085         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8086         and we don't support it.
8087         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8088         (gst_use_threads), (gst_has_threads): same
8089         * gst/gstthreaddummy.c: same
8090         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8091         * gst/autoplug/gstspider.h: same
8092         * gst/elements/gstaggregator.h: Remove bogus function from header
8093         * gst/elements/gstfakesink.h: same
8094         * gst/elements/gstfakesrc.h: same
8095         * gst/elements/gstmd5sink.h: same
8096         * gst/elements/gstshaper.h: same
8097         * gst/elements/gsttee.h: same
8098         * gst/gstbin.c: doc fixes
8099         * gst/gstbin.h: Remove unused definition.
8100         * gst/gstbuffer.c: doc fixes
8101         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8102         * gst/gstfilter.c: doc fixes
8103         * gst/gsttag.c: doc fixes
8104         * gst/gstvalue.c: doc fixes
8105
8106 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8107
8108         * docs/pwg/advanced-types.xml:
8109           Document typefinding.
8110         * docs/pwg/other-oneton.xml:
8111           Document one-to-n elements, demuxers and parsers.
8112
8113 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8114
8115         reviewed by: David Schleef  <ds@schleef.org>
8116
8117         * configure.ac: Check bison version (bug #127838)
8118
8119 2004-03-25  David Schleef  <ds@schleef.org>
8120
8121         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8122         * docs/gst/gstreamer-sections.txt:
8123         * docs/gst/tmpl/gstautoplug.sgml:
8124         * docs/gst/tmpl/gststaticautoplug.sgml:
8125         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8126         * docs/gst/tmpl/gstutils.sgml:
8127         * docs/gst/tmpl/gstxml.sgml:
8128
8129 2004-03-24  David Schleef  <ds@schleef.org>
8130
8131         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8132         manual being such complete crap, that I decided to do major
8133         hacking of it.  This checkin replaces any fine tuning that
8134         may have been done previously, with the benefit of actually
8135         being complete for much of the API that was changed since
8136         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8137         * docs/gst/gstreamer-sections.txt:
8138         * docs/gst/tmpl/GstBin.sgml:
8139         * docs/gst/tmpl/GstBuffer.sgml:
8140         * docs/gst/tmpl/GstCaps.sgml:
8141         * docs/gst/tmpl/GstClock.sgml:
8142         * docs/gst/tmpl/GstCompat.sgml:
8143         * docs/gst/tmpl/GstData.sgml:
8144         * docs/gst/tmpl/GstElement.sgml:
8145         * docs/gst/tmpl/GstEvent.sgml:
8146         * docs/gst/tmpl/GstIndex.sgml:
8147         * docs/gst/tmpl/GstStructure.sgml:
8148         * docs/gst/tmpl/GstTag.sgml:
8149         * docs/gst/tmpl/cothreads.sgml:
8150         * docs/gst/tmpl/cothreads_compat.sgml:
8151         * docs/gst/tmpl/gettext.sgml:
8152         * docs/gst/tmpl/grammar.tab.sgml:
8153         * docs/gst/tmpl/gst-i18n-app.sgml:
8154         * docs/gst/tmpl/gst-i18n-lib.sgml:
8155         * docs/gst/tmpl/gst.sgml:
8156         * docs/gst/tmpl/gst_private.sgml:
8157         * docs/gst/tmpl/gstaggregator.sgml:
8158         * docs/gst/tmpl/gstarch.sgml:
8159         * docs/gst/tmpl/gstatomic.sgml:
8160         * docs/gst/tmpl/gstatomic_impl.sgml:
8161         * docs/gst/tmpl/gstbin.sgml:
8162         * docs/gst/tmpl/gstbuffer.sgml:
8163         * docs/gst/tmpl/gstbufferstore.sgml:
8164         * docs/gst/tmpl/gstcaps.sgml:
8165         * docs/gst/tmpl/gstclock.sgml:
8166         * docs/gst/tmpl/gstcompat.sgml:
8167         * docs/gst/tmpl/gstconfig.sgml:
8168         * docs/gst/tmpl/gstcpu.sgml:
8169         * docs/gst/tmpl/gstdata.sgml:
8170         * docs/gst/tmpl/gstdata_private.sgml:
8171         * docs/gst/tmpl/gstelement.sgml:
8172         * docs/gst/tmpl/gstenumtypes.sgml:
8173         * docs/gst/tmpl/gsterror.sgml:
8174         * docs/gst/tmpl/gstevent.sgml:
8175         * docs/gst/tmpl/gstfakesink.sgml:
8176         * docs/gst/tmpl/gstfakesrc.sgml:
8177         * docs/gst/tmpl/gstfilesink.sgml:
8178         * docs/gst/tmpl/gstfilter.sgml:
8179         * docs/gst/tmpl/gstindex.sgml:
8180         * docs/gst/tmpl/gstinfo.sgml:
8181         * docs/gst/tmpl/gstinterface.sgml:
8182         * docs/gst/tmpl/gstlog.sgml:
8183         * docs/gst/tmpl/gstmacros.sgml:
8184         * docs/gst/tmpl/gstmarshal.sgml:
8185         * docs/gst/tmpl/gstmd5sink.sgml:
8186         * docs/gst/tmpl/gstmultifilesrc.sgml:
8187         * docs/gst/tmpl/gstobject.sgml:
8188         * docs/gst/tmpl/gstpad.sgml:
8189         * docs/gst/tmpl/gstparse.sgml:
8190         * docs/gst/tmpl/gstpipeline.sgml:
8191         * docs/gst/tmpl/gstplugin.sgml:
8192         * docs/gst/tmpl/gstpluginfeature.sgml:
8193         * docs/gst/tmpl/gstqueue.sgml:
8194         * docs/gst/tmpl/gstreamer-unused.sgml:
8195         * docs/gst/tmpl/gstregistry.sgml:
8196         * docs/gst/tmpl/gstregistrypool.sgml:
8197         * docs/gst/tmpl/gstscheduler.sgml:
8198         * docs/gst/tmpl/gstsearchfuncs.sgml:
8199         * docs/gst/tmpl/gstshaper.sgml:
8200         * docs/gst/tmpl/gstspider.sgml:
8201         * docs/gst/tmpl/gstspideridentity.sgml:
8202         * docs/gst/tmpl/gststructure.sgml:
8203         * docs/gst/tmpl/gstsystemclock.sgml:
8204         * docs/gst/tmpl/gsttag.sgml:
8205         * docs/gst/tmpl/gsttaginterface.sgml:
8206         * docs/gst/tmpl/gsttee.sgml:
8207         * docs/gst/tmpl/gstthread.sgml:
8208         * docs/gst/tmpl/gsttrace.sgml:
8209         * docs/gst/tmpl/gsttrashstack.sgml:
8210         * docs/gst/tmpl/gsttypefind.sgml:
8211         * docs/gst/tmpl/gsttypes.sgml:
8212         * docs/gst/tmpl/gsturi.sgml:
8213         * docs/gst/tmpl/gsturitype.sgml:
8214         * docs/gst/tmpl/gstutils.sgml:
8215         * docs/gst/tmpl/gstvalue.sgml:
8216         * docs/gst/tmpl/gstversion.sgml:
8217         * docs/gst/tmpl/gstxml.sgml:
8218         * docs/gst/tmpl/gstxmlregistry.sgml:
8219         * docs/gst/tmpl/gthread-cothreads.sgml:
8220         * docs/gst/tmpl/types.sgml:
8221
8222 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8223
8224         * docs/pwg/other-sink.xml:
8225         * docs/pwg/other-source.xml:
8226           Documentation on how to write source and sink elements. Other
8227           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8228           manager, autoplugger) are all still pending.
8229
8230 2004-03-25  Benjamin Otte  <otte@gnome.org>
8231
8232         * testsuite/elements/Makefile.am:
8233         * testsuite/elements/gst-compprep-check:
8234           add check to make sure gst-compprep works
8235         * testsuite/elements/gst-inspect-check.in:
8236           improve initialization output
8237         * testsuite/Makefile.am:
8238         * testsuite/gst-inspect-check:
8239           remove old file
8240
8241 2004-03-24  David Schleef  <ds@schleef.org>
8242
8243         * testsuite/elements/Makefile.am:
8244         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8245         to the testsuite.
8246
8247 2004-03-24  Benjamin Otte  <otte@gnome.org>
8248
8249         * libs/gst/control/dparam.c: (gst_dparam_attach),
8250         (gst_dparam_detach):
8251         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8252           fix lvalue casts for real
8253
8254 2004-03-24  Benjamin Otte  <otte@gnome.org>
8255
8256         * gst/schedulers/gstbasicscheduler.c:
8257         (gst_basic_scheduler_src_wrapper):
8258         * gst/schedulers/gstoptimalscheduler.c:
8259         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8260         (pad_clear_queued), (gst_opt_scheduler_add_element),
8261         (gst_opt_scheduler_remove_element):
8262           fix GStreamer to not have issues with lvalue casts anymore (fixes
8263           #136841)
8264
8265 2004-03-24  Benjamin Otte  <otte@gnome.org>
8266
8267         * gst/gstelement.c:
8268           add documentation about a gobject quirk where the object hasn't the
8269           correct class pointer set on initialization
8270         * gst/schedulers/gstbasicscheduler.c:
8271         (gst_basic_scheduler_src_wrapper):
8272           make sure to not run into an infinite loop
8273
8274 2004-03-22  Benjamin Otte  <otte@gnome.org>
8275
8276         * gst/gstutils.c: (gst_util_dump_mem):
8277         * gst/gstutils.h:
8278           first argument of gst_util_dump_mem should be const
8279
8280 2004-03-22  Johan Dahlin  <johan@gnome.org>
8281
8282         * gst/gstvalue.h: Clean up a little bit.
8283
8284 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8285
8286         reviewed by Benjamin Otte  <otte@gnome.org>
8287
8288         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8289         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8290         (gst_aggregator_class_init), (gst_aggregator_init):
8291         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8292         (gst_filesrc_dispose), (gst_filesrc_set_location):
8293         * gst/elements/gstidentity.c: (gst_identity_finalize),
8294         (gst_identity_class_init), (gst_identity_chain):
8295         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8296         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8297         (gst_statistics_class_init):
8298         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8299         (gst_tee_get_property):
8300           clean up used memory in this elements correctly on teardown (closes
8301           #137279)
8302
8303 2004-03-20  Colin Walters  <walters@redhat.com>
8304
8305         * gst/registries/gstxmlregistry.c:
8306         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8307         registry saving atomic.
8308
8309 2004-03-20  Colin Walters  <walters@redhat.com>
8310
8311         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8312         Just use
8313         access() instead of actually creating and deleting files.
8314
8315 2004-03-18  David Schleef  <ds@schleef.org>
8316
8317         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8318         (bug #137625)
8319
8320 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8321
8322         * po/sv.po: updated translation (Christian Rose)
8323
8324 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8325
8326         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8327         (gst_filesink_get_query_types), (_do_init),
8328         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8329           return FALSE silently
8330         * po/af.po: updated translation (Petri Jooste)
8331
8332 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8333
8334         * Makefile.am:
8335         * configure.ac:
8336           dist common properly
8337         * po/af.po:
8338         * po/fr.po:
8339         * po/nl.po:
8340         * po/sr.po:
8341         * po/sv.po:
8342           refreshing translations
8343
8344 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8345
8346         * po/LINGUAS:
8347         * po/sv.po:
8348         * po/af.po:
8349           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8350
8351 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8352
8353         * Makefile.am: use common/release.mak
8354
8355 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8356
8357         * docs/faq/gst-uninstalled:
8358           adding gst-monkeysaudio to the list of possible plugin dirs
8359
8360 2004-03-16  David Schleef  <ds@schleef.org>
8361
8362         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8363         (gst_init_check_with_popt_table):  Fix some gettext strings to
8364         make them easier to translate.  Required making the strings
8365         non-const.
8366
8367 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8368
8369         * configure.ac: bump nano to 1
8370
8371 === release 0.8.0 ===
8372
8373 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8374
8375         * configure.ac: release 0.8.0, "Executive Slacks"
8376
8377 2004-03-16  Johan Dahlin  <johan@gnome.org>
8378
8379         * gst/schedulers/gstoptimalscheduler.c
8380         (gst_opt_scheduler_pad_unlink): Remove double ;,
8381         spotted by Scott Wheeler
8382
8383 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8384
8385         * configure.ac: bump libtool version
8386
8387 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8388
8389         * gst/gstcaps.h:
8390         * gst/gststructure.h:
8391           add reserved padding
8392
8393 2004-03-15  Benjamin Otte  <otte@gnome.org>
8394
8395         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8396           set the first parameter for select call correctly.
8397           (fixes #137230)
8398
8399 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8400
8401         * *.c,*.h: don't mix tabs and spaces
8402
8403 2004-03-15  Johan Dahlin  <johan@gnome.org>
8404
8405         * gst/schedulers/gstoptimalscheduler.c
8406         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8407         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8408
8409         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8410         
8411 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8412
8413         * testsuite/Rules:
8414           fix gst-register rules
8415
8416 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8417
8418         * testsuite/Rules:
8419           use versioned gst-register
8420
8421 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8422
8423         * docs/libs/gstreamer-libs-sections.txt:
8424           remove </SUBSECTION>
8425         * gst/gstplugin.c:
8426         * gst/gstregistry.c: (gst_registry_add_plugin):
8427         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8428         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8429           add debugging and fix some comment blocks
8430
8431 2004-03-15  Johan Dahlin  <johan@gnome.org>
8432
8433         * *.h: Revert indent changes.
8434         
8435 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8436
8437         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8438           g_error_free the g_error
8439         * tools/gst-feedback-m.m:
8440           check for other versions of gstreamer
8441         * tools/gst-indent:
8442           use sh, not bash
8443
8444 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8445
8446         * tools/gst-register.c: do not spill paths when registries are not
8447           writable, until we fix the "user running gst-register" case.
8448
8449 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8450
8451         * *.c, *.h: commit of gst-indent run on core
8452
8453 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8454
8455         * tools/gst-indent:
8456         * tools/Makefile.am:
8457           add our indentation style as a script
8458
8459 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8460
8461         * po/sr.po:
8462         * po/LINGUAS:
8463           added Serbian translation
8464
8465 2004-03-13  Benjamin Otte  <otte@gnome.org>
8466
8467         * gst/gstelement.c:
8468           add documentation note about gst_element_found_tags_for_pad not
8469           being usable in getfunctions. (see #137042)
8470
8471 2004-03-12  David Schleef  <ds@schleef.org>
8472
8473         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8474         change API right now!  Readd gst_caps_is_simple() macro.
8475         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8476         uninitialized variable.  I'd bet this caused crashes.
8477         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8478
8479 2004-03-12  Johan Dahlin  <johan@gnome.org>
8480
8481         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8482         * gst/gstcaps.h: Clean up
8483
8484         * gst/gst.c (init_post): call gst_caps_get_type() instead of
8485         _gst_caps_initalize()
8486
8487         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
8488         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
8489
8490         * gst/gststructure.c (gst_structure_get_type): Ditto
8491
8492         * gst/gststructure.h: Ditto
8493         
8494 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8495
8496         * gst/gstqueue.c: (gst_queue_init):
8497           Reset default max. values in queues. Reason is simply to avoid
8498           braindead use. If you want wider values, use the properties. The
8499           default is supposed to always work. Wider values would make this
8500           beast a memory hog by default (250 full-PAL RGB32 video frames?
8501           That's 440 MB! No thank you).
8502
8503 2004-03-10  David Schleef  <ds@schleef.org>
8504
8505         * tools/gst-run.c: (main):  Fix crash when no relevant tools
8506         were found.  (bug #136793)
8507
8508 2004-03-10  Johan Dahlin  <johan@gnome.org>
8509
8510         * gst/schedulers/gstoptimalscheduler.c
8511         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
8512         links to elements within the same group, so we can finally remove
8513         that annoying warning. Refactor the code a little bit
8514         (group_dec_links_for_element): Split out
8515
8516 2004-03-09  David Schleef  <ds@schleef.org>
8517
8518         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
8519         (bug #134863)
8520
8521 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8522
8523         * configure.ac: first bug fix due to major/minor bump
8524
8525 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8526
8527         * configure.ac: bump nano to 1
8528
8529 === release 0.7.6 ===
8530
8531 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8532
8533         * NEWS:
8534         * RELEASE:
8535         * configure.ac:
8536           releasing 0.7.6, "Almost"
8537         * po/fr.po:
8538         * po/nl.po:
8539         * tools/Makefile.am:
8540         * tools/gst-feedback-m.m:
8541           unversioned source
8542
8543 2004-03-09  Johan Dahlin  <johan@gnome.org>
8544
8545         Reviewed by: Thomas Vander Stichele
8546
8547         * gst/gstelement.c (gst_element_class_init): register second
8548         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
8549         language bindings can (de)marshall correctly.
8550
8551         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
8552
8553         * gst/gsterror.c (gst_g_error_get_type): New function
8554
8555         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
8556         with VOID:OBJECT,OBJECT,STRING 
8557
8558 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
8559
8560         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
8561         Free a leaked g_timer on early returns.
8562
8563 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8564
8565         * docs/pwg/advanced-types.xml:
8566           Add cinepak description.
8567
8568 2004-03-07  David Schleef  <ds@schleef.org>
8569
8570         * docs/random/mimetypes:  Added cinepak description
8571
8572 2004-03-07  Andy Wingo  <wingo@pobox.com>
8573
8574         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
8575
8576         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
8577         there are no links to other groups when a group is destroyed.
8578         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
8579         removed from a group, make sure the link count to elements linked
8580         to other pads is appropriately decremented. This really fixes
8581         #135672.
8582
8583         The 1.60->1.61 patch has been reapplied in light of this fix.
8584
8585         * gst/gstelement.c (gst_element_dispose): Really protect against
8586         multiple invocations this time.
8587
8588 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8589
8590         * docs/gst/gstreamer-sections.txt:
8591         * docs/gst/tmpl/gsttag.sgml:
8592           remove some deprecated functions, document some existing ones
8593         * gst/gsttag.c: (gst_tag_get_flag):
8594         * gst/gsttag.h:
8595           add accessor function
8596
8597 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8598
8599         * docs/gst/gstreamer-sections.txt:
8600         * docs/gst/tmpl/gsttag.sgml:
8601         * docs/gst/tmpl/gstxml.sgml:
8602         * gst/gsttag.c: (gst_tag_get_flag):
8603         * gst/gsttag.h:
8604
8605 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
8606
8607         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
8608         leak
8609
8610 2004-03-05  David Schleef  <ds@schleef.org>
8611
8612         * REQUIREMENTS: Add bison and flex.
8613         * configure.ac: Fix comment about bison.
8614         * docs/random/ds/0.9-suggested-changes: yer ma
8615         * tools/gst-inspect.c: (print_element_info):  Fix warning.
8616
8617 2004-03-05  Benjamin Otte  <otte@gnome.org>
8618
8619         * gst/gstelement.c: (gst_element_error_full):
8620           revert recent recursive state changing commit - messing with other
8621           elements' states is evil and should be done by apps only.
8622
8623 2004-03-05  Benjamin Otte  <otte@gnome.org>
8624
8625         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
8626           check for empty intersection instead of NULL caps
8627         (gst_element_get_compatible_pad_filtered):
8628           remove old workaround that is only a bug nowadays
8629
8630 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8631
8632         * gst/gstelement.c: (gst_element_error_full):
8633           make elements try to recursively change state to PAUSED on all
8634           parents after an error to suppress ensuing warnings
8635         * gst/parse/grammar.y:
8636           make it check if it was able to sync the state, and throw an error
8637           if not, so stuff like
8638           oggdemux ! vorbisdec ! osssink gets caught
8639
8640 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8641
8642         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
8643           it contains lib64; use AS_AC_EXPAND to handle it properly
8644
8645 2004-03-05  David Schleef  <ds@schleef.org>
8646
8647         * gst/gstcpuid_i386.s:  Remove unused code
8648         * libs/gst/getbits/getbits.c: (gst_getbits_init),
8649         (gst_getbits_newbuf): Remove MMX code
8650         * libs/gst/getbits/getbits.h: Remove MMX code
8651
8652 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
8653
8654         * debian/.cvsignore:
8655         * debian/README.Debian:
8656         * debian/changelog:
8657         * debian/control:
8658         * debian/control.in:
8659         * debian/copyright:
8660         * debian/gstreamer-core-libs-dev.files:
8661         * debian/gstreamer-core-libs.files:
8662         * debian/gstreamer-core.files:
8663         * debian/gstreamer-core.postinst:
8664         * debian/gstreamer-core.postrm:
8665         * debian/gstreamer-doc.files:
8666         * debian/gstreamer-doc.links:
8667         * debian/gstreamer-doc.lintian:
8668         * debian/gstreamer-runtime.files:
8669         * debian/gstreamer-runtime.manpages:
8670         * debian/gstreamer-runtime.postinst:
8671         * debian/gstreamer-runtime.postrm:
8672         * debian/gstreamer-tools.files:
8673         * debian/gstreamer-tools.manpages:
8674         * debian/libgstreamer-dev.files:
8675         * debian/libgstreamer0.4.1.files:
8676         * debian/libgstreamerVERSION.files:
8677         * debian/rules:
8678         Debian package info not maintained here.
8679
8680 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8681
8682         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8683         * gst/gstbin.c: (gst_bin_class_init):
8684         * gst/gstelement.c: (gst_element_class_init):
8685         * gst/gstindex.c: (gst_index_class_init):
8686         * gst/gstobject.c: (gst_object_class_init),
8687         (gst_signal_object_class_init):
8688         * gst/gstpad.c: (gst_pad_template_class_init):
8689         * gst/gstregistry.c: (gst_registry_class_init):
8690         * gst/gsturi.c: (gst_uri_handler_base_init):
8691         * gst/gstxml.c: (gst_xml_class_init):
8692         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8693         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
8694           make all signal names use dashes instead of underscore
8695
8696 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8697
8698         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
8699
8700 2004-03-03  Benjamin Otte  <otte@gnome.org>
8701
8702         * gst/schedulers/gstoptimalscheduler.c:
8703           revert last commit by Andy Wingo. It causes segfaults on unreffing
8704           in Rhythmbox. (see bug #135672)
8705
8706 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8707
8708         * po/fr.po: fix typo
8709
8710 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8711
8712         * tools/gst-inspect.c: (main): 
8713         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
8714
8715 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8716
8717         * configure.ac:
8718           get GLIB_ONLY and POPT flags for the nonversioned binaries
8719         * tools/Makefile.am:
8720           use them
8721
8722 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8723
8724         * gst/gst.c: (init_post):
8725           change so that GST_REGISTRY now is where the global registry gets
8726           saved, since that is where plugins now get attached to first, and
8727           spilled over to the user registry.  Note that in the case of using
8728           GST_REGISTRY env var, we don't want to affect any real registries
8729           beyond the one given by this var, and thus we don't set a user
8730           registry to spill to.  So make sure GST_REGISTRY is writable.
8731
8732 2004-03-01  David Schleef  <ds@schleef.org>
8733
8734         * AUTHORS:  Added some names.  Add yourself if you're missing.
8735
8736 2004-03-01  David Schleef  <ds@schleef.org>
8737
8738         * MAINTAINERS: Add
8739
8740 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
8741
8742         * configure.ac:
8743           remove whitespace
8744         * docs/gst/tmpl/gstbuffer.sgml:
8745         * docs/gst/tmpl/gstdata.sgml:
8746         * docs/gst/tmpl/gstreamer-unused.sgml:
8747         * docs/gst/tmpl/gstxml.sgml:
8748           doc update
8749         * docs/manuals.mak:
8750           add a FIXME
8751         * docs/pwg/intro-preface.xml:
8752         * docs/pwg/pwg.xml:
8753           remove GNOME
8754         * gst/gst.c: (init_post):
8755           try GST_PLUGIN_PATH paths for the _global_registry first
8756         * gst/gstelement.h:
8757           add the error message as well, otherwise (null) debug info doesn't
8758           make much sense
8759         * tools/gst-register.c: (main):
8760           spill paths to next registry if this registry is not writable
8761         * po/fr.po:
8762         * po/nl.po:
8763           translation updates
8764
8765 2004-03-01  Johan Dahlin  <johan@gnome.org>
8766
8767         * gst/gstbuffer.c (_gst_buffer_initialize): 
8768         * gst/gstdata.c (gst_data_get_type): 
8769         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
8770         instead of ref, since some applications that uses GBoxed
8771         routines depends on a function that actually returns a copy.
8772
8773 2004-02-27  Benjamin Otte  <otte@gnome.org>
8774
8775         * gst/gstbuffer.h:
8776           remove gst_buffer_free, use gst_data_unref
8777         * gst/gstdata.c: (gst_data_get_type):
8778           use refcounting in GstData GBoxed registration
8779         * gst/gstdata.h:
8780           remove gst_data_free, use gst_data_unref
8781
8782 2004-02-27  Johan Dahlin  <johan@gnome.org>
8783
8784         * gst/gstdata.c (gst_data_get_type): New function, register
8785         GstData as a GBoxed type.
8786
8787         * gst/gstdata.h (GST_TYPE_DATA): New macro
8788
8789 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
8790
8791         * Makefile.am:
8792         * gstreamer.spec.in:
8793           put back RELEASE
8794         * gst/Makefile.am:
8795           clean up non-disting of built files
8796         * testsuite/debug/commandline.c:
8797           test fix for option rename
8798
8799 2004-02-26  David Schleef  <ds@schleef.org>
8800
8801         * configure.ac:  We don't really need glib-2.3.  Also remove
8802         some unneeded checks for library functions.
8803         * gst/Makefile.am:  Instead, we need to not dist files created
8804         by glib-genmarshal.
8805
8806 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8807
8808         * configure.ac:
8809           bump glib required version to 2.3.0 for g_value_takes_boxed
8810
8811  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
8812
8813         * common/m4/gst-docs.m4
8814         change flavour text from enable to disable as enable is our default
8815         closes bug Bug 135304
8816
8817 === release 0.7.5 ===
8818  
8819  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8820  
8821         * NEWS:
8822           instate NEWS file
8823         * Makefile.am:
8824         * gstreamer.spec.in:
8825         * RELEASE:
8826           put back release
8827         * configure.ac:
8828         * docs/random/release:
8829           more updates
8830
8831 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8832
8833         * gst/gsttag.c: (_gst_tag_initialize):
8834         * po/fr.po:
8835         * po/nl.po:
8836           remove hyphen from codec tags
8837
8838 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8839
8840         * gst/parse/Makefile.am:
8841           fix dependency so that a make from a clean build works the first
8842           time
8843
8844 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8845
8846         * docs/random/release:
8847           update release strategy
8848         * po/fr.po:
8849           auto-update po file
8850         * po/nl.po:
8851           update dutch translation
8852
8853 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8854
8855         * docs/manual/debugging.xml:
8856         fix manual for new debugging system
8857
8858 2004-02-25  Andy Wingo  <wingo@pobox.com>
8859
8860         * gst/gstpad.c (gst_pad_link_prepare): Re-add
8861         gst_pad_link_prepare. Please email the list with specific reasons
8862         for reverting.
8863
8864 2004-02-24  Andy Wingo  <wingo@pobox.com>
8865
8866         * gst/gstelement.c (gst_element_dispose): Protect against multiple
8867         invocations.
8868
8869         * gst/schedulers/gstoptimalscheduler.c:
8870         I added a mess of prototypes at the top of the file by way of
8871         documentation. Some of the operations on chains and groups were
8872         re-organized.
8873
8874         (create_group): Added a type argument so if the group is enabled,
8875         the setup_group_scheduler knows what to do.
8876         (group_elements): Added a type argument here, too, to be passed on
8877         to create_group.
8878         (group_element_set_enabled): If an unlinked PLAYING element is
8879         added to a bin, we have to create a new group to hold the element,
8880         and this function will be called before the group is added to the
8881         chain. Thus we have a valid case for group->chain==NULL. Instead
8882         of calling chain_group_set_enabled, just set the flag on the group
8883         (the chain's status will be set when the group is added to it).
8884         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
8885         Setup the group scheduler when the group is enabled, not
8886         specifically when an element goes PAUSED->PLAYING. This means
8887         PLAYING elements can be added, linked, and scheduled into a
8888         PLAYING pipeline, as was intended.
8889         (add_to_group): Don't ref the group twice. I don't know when this
8890         double-ref got in here. Removing it has the potential to cause
8891         segfaults if other parts of the scheduler are buggy. If you find
8892         that the scheduler is segfaulting for you, put in an extra ref
8893         here and see if that hacks over the underlying issue. Of course,
8894         then find out what code is unreffing a group it doesn't own...
8895         (create_group): Make the extra refcount floating, and remove it
8896         after adding the element. This means that...
8897         (unref_group): Destroy when the refcount reaches 0, not 1, like
8898         every other refcounted object in the known universe.
8899         (remove_from_group): When a group becomes empty, set it to be not
8900         active, and remove it from its chain. Don't unref it again,
8901         there's no floating reference any more.
8902         (destroy_group): We have to remove the group from the chain in
8903         remove_from_group (rather than here) to break refcounting cycles
8904         (the chain always has a ref on the group). So assert that
8905         group->chain==NULL.
8906         (ref_group_by_count): Removed, it was commented out anyway.
8907         (merge_chains): Use the remove_from_chain and add_to_chain
8908         primitives to do the reparenting, instead of rolling our own
8909         implementation.
8910         (add_to_chain): The first non-disabled group in the chain's group
8911         list will be the entry point for the chain. Because buffers can
8912         accumulate in loop elements' peer bufpens, we preferentially
8913         schedule loop groups before get groups to avoid unnecessary
8914         execution of get-based groups when the bufpens are already full.
8915         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
8916         (get_group_schedule_function): Ditto.
8917         (loop_group_schedule_function): Ditto.
8918         (gst_opt_scheduler_loop_wrapper): Ditto.
8919         (gst_opt_scheduler_iterate): Ditto.
8920
8921         I understand the opt scheduler now, yippee!
8922
8923         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
8924         (gst_pad_get_name, gst_pad_set_chain_function) 
8925         (gst_pad_set_get_function, gst_pad_set_event_function) 
8926         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
8927         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
8928         (gst_pad_set_query_function, gst_pad_get_query_types) 
8929         (gst_pad_get_query_types_default) 
8930         (gst_pad_set_internal_link_function) 
8931         (gst_pad_set_formats_function, gst_pad_set_link_function) 
8932         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
8933         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
8934         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
8935         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
8936         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
8937         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
8938         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
8939         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
8940         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
8941         (gst_pad_event_default_dispatch, gst_pad_event_default) 
8942         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
8943         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
8944         (gst_pad_get_formats_default, gst_pad_get_formats): Better
8945         argument checks, and some doc fixes.
8946
8947         (gst_pad_custom_new_from_template): Um, does anyone
8948         use these functions? Actually make a custom pad instead of a
8949         normal one.
8950         (gst_pad_try_set_caps): Transpose some checks.
8951         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
8952         the pad is in negotiation.
8953         (gst_pad_try_relink_filtered): Use pad_link_prepare.
8954         
8955         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
8956
8957         * gst/gstelement.h: 
8958         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
8959         on the list.
8960
8961 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8962
8963         * gst/gstbin.c: (gst_bin_add):
8964           add error for not being able to add elements
8965
8966 2004-02-22  Julien MOUTTE <julien@moutte.net>
8967
8968         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
8969         audio-codec and video-codec.
8970
8971 2004-02-22  Benjamin Otte  <otte@gnome.org>
8972
8973         reported by: Padraig O'Briain <padraig.obriain@sun.com>
8974
8975         * autogen.sh:
8976           replace test -e with test -x for mkinstalldirs to be more portable.
8977           (fixes #134816)
8978
8979 2004-02-22  Benjamin Otte  <otte@gnome.org>
8980
8981         * gst/gstpad.c:
8982           revert last patch from Andy, it makes gst_pad_can_link_filtered much
8983           too noisy
8984         * gst/gsttag.c: (_gst_tag_initialize):
8985         * gst/gsttag.h:
8986           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
8987         * libs/gst/control/dparam.c: (gst_dparam_attach):
8988         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
8989           check that types for attached dparams match
8990
8991 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8992
8993         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
8994         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8995         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8996           fix errors
8997
8998 2004-02-20  Andy Wingo  <wingo@pobox.com>
8999
9000         * gst/gstbin.c:
9001         * gst/gstbuffer.c:
9002         * gst/gstplugin.c:
9003         * gst/registries/gstxmlregistry.c: 
9004         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9005
9006         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9007         (gst_element_add_pad): DEBUG->INFO, some fixes.
9008         (gst_element_get_compatible_pad_template): Just see if the
9009         templates' caps intersect, not if one is a strict subset of the
9010         other. This conforms more to what gst_pad_link_intersect() does.
9011         (gst_element_class_add_pad_template): Don't memcpy the pad
9012         template, just ref it.
9013         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9014
9015         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9016         (gst_pad_link_filtered): Debug changes.
9017         (gst_pad_link_prepare): New function, consolidated from
9018         can_link_filtered and link_filtered.
9019
9020         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9021         look more like that of the functions in gstelement.c
9022
9023         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9024         object, and return the empty string if object is NULL.
9025
9026         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9027         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9028         LOG, not DEBUG. We still get flex info on debug.
9029
9030         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9031         debug string more verbose.
9032         (plugin_times_older_than): DEBUG->LOG.
9033
9034 2004-02-20  Julien MOUTTE <julien@moutte.net>
9035
9036         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9037         will emit found_tag for each stream they demux with the codec.
9038
9039 2004-02-20  Benjamin Otte  <otte@gnome.org>
9040
9041         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9042           copy navigation event correctly. Check freeing tag lists. 
9043         * gst/gstthread.c: (gst_thread_change_state):
9044           don't abort() on state changing mess - it might happen because of
9045           bugs.
9046         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9047           use boxed functions
9048         * gst/gstvalue.h:
9049           fix GST_VALUE_HOLDS_CAPS
9050
9051 2004-02-19  David Schleef  <ds@schleef.org>
9052
9053         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9054         and use it for GST_FUNCTION.  (bug #134750)
9055
9056 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9057
9058         * po/fr.po:
9059         * po/nl.po:
9060           updating translations
9061
9062 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9063
9064         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9065
9066 2004-02-18  kost@imn.htwk-leipzig.de
9067
9068         reviewed by: David Schleef  <ds@schleef.org>
9069
9070         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9071         for libgstcontrol.
9072
9073 2004-02-18  David Schleef  <ds@schleef.org>
9074
9075         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9076         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9077         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9078         * tools/gst-inspect.c: (print_element_info): Support dumping of
9079         double dparam information.
9080
9081 2004-02-17  David Schleef  <ds@schleef.org>
9082
9083         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9084         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9085         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9086         Use GST_TYPE_CAPS in signal prototype.
9087         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9088         Convert GST_TYPE_CAPS to boxed.
9089         * gst/gstelement.c: (gst_element_class_init):
9090         Use GST_TYPE_TAG_LIST in signal prototype.
9091         * gst/gstindex.c: (gst_index_class_init):
9092         * gst/gstindex.h:
9093         Add GST_TYPE_INDEX_ENTRY type.
9094         * gst/gstmarshal.list:
9095         Add necessary marshal types.
9096         * gst/gstpad.c: (gst_real_pad_class_init),
9097         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9098         (gst_pad_recover_caps_error):
9099         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9100         * gst/gststructure.c: (_gst_structure_initialize),
9101         (gst_structure_copy), (_gst_structure_copy_conditional):
9102         * gst/gststructure.h:
9103         Convert GST_TYPE_STRUCTURE to boxed.
9104         * gst/gsttag.c: (gst_tag_list_get_type):
9105         * gst/gsttag.h:
9106         Add GST_TYPE_TAG_LIST type.
9107
9108 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9109
9110         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9111         to what we agreed with david.
9112         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9113
9114 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9115
9116         * po/nl.po: update translation
9117
9118 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9119
9120         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9121           throw an error if spider is trying to play a mime type there is
9122           no decoder for
9123         * po/POTFILES.in:
9124           add gst/autoplug/gstspider.c for translation
9125
9126 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9127
9128         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9129         silently when the pad is negotiating.
9130
9131 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9132
9133         * docs/faq/Makefile.am:
9134           add script to run gstreamer uninstalled 
9135         * docs/faq/faq.xml:
9136         * docs/faq/developing.xml:
9137         * docs/faq/gst-uninstalled:
9138           extract script to run gstreamer uninstalled
9139         * docs/manuals.mak:
9140           add EXTRA_SOURCES variable for Makefile.am's to set to
9141           use additional SOURCE files for the doc build
9142
9143 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9144
9145         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9146
9147 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9148
9149         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9150         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9151         an error was thrown by osssink. Basically a state change failure for
9152         an element in a different scheduling group was considered as
9153         successful, which means that caps nego was going on and weird stuff
9154         happened. Like I wrote in the comment there, if someone wants to
9155         revert that please drop me a mail explaining why because I really see
9156         no point in keeping that broken behaviour there.
9157         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9158         be empty, we then return NULL which will trigger a nice error when 
9159         pulling from the pad.
9160
9161 2004-02-13  David Schleef  <ds@schleef.org>
9162
9163         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9164         (gst_dparam_get_property), (gst_dparam_set_property),
9165         (gst_dparam_do_update_default):
9166         * libs/gst/control/dparam.h:
9167         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9168         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9169         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9170         (gst_dpsmooth_do_update_double):
9171         * libs/gst/control/dparam_smooth.h:
9172         * libs/gst/control/dparammanager.c:
9173         (gst_dpman_inline_direct_update):
9174         Add support for double dparams.
9175
9176 2004-02-13  David Schleef  <ds@schleef.org>
9177
9178         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9179         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9180
9181 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9182
9183         reviewed by: David Schleef  <ds@schleef.org>
9184
9185         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9186         (gst_fdsrc_init), (gst_fdsrc_set_property),
9187         (gst_fdsrc_get_property), (gst_fdsrc_get):
9188         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9189         and sends an EOS event if file descriptor reading times out.
9190
9191 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9192
9193         * configure.ac:
9194           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9195
9196 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9197
9198         * configure.ac: pass required libxml version as argument
9199         (bug reported by Christophe Fergeau)
9200
9201 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9202   
9203         * docs/gst/gstreamer-docs.sgml:
9204         * docs/gst/tmpl/gstxml.sgml:
9205         * docs/libs/gstreamer-libs-docs.sgml:
9206           version API docs
9207
9208 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9209
9210         * gst/gstinfo.c:
9211         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9212         (gst_registry_pool_feature_filter):
9213         * gst/gstthread.c: (gst_thread_class_init):
9214         * gst/gstvalue.c:
9215           add includes exposed by building without libxml
9216         * gst/indexers/Makefile.am:
9217           do not build fileindex when LOADSAVE disabled; we should have
9218           a better libxml check later since fileindex depends on xml, not
9219           LOADSAVE or REGISTRY
9220         * libs/gst/control/Makefile.am:
9221           link with m
9222         * tools/Makefile.am:
9223           fix wrong source code for gst-xmlinspect
9224
9225 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9226
9227         * configure.ac:
9228           fix gcov help output
9229           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9230         * docs/random/release:
9231           some updated releasing notes
9232         * gstreamer.spec.in:
9233           more updates
9234
9235 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9236
9237         * docs/faq/faq.xml:
9238         * docs/manual/manual.xml:
9239         * docs/pwg/pwg.xml:
9240         * docs/pwg/titlepage.xml:
9241           put version in documentation
9242
9243 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9244
9245         * tools/Makefile.am: fix man page installation
9246
9247 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9248
9249         * configure.ac:
9250           don't check for libxml when load/save and registry disabled (#105844)
9251         * gstreamer.spec.in:
9252           sync with fedora candidate spec
9253
9254 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9255
9256         * po/fr.po:
9257         * po/nl.po:
9258           replace multidisksrc with multifilesrc
9259
9260 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9261
9262         * po/POTFILES.in:
9263           update to multidisksrc => multifilesrc file renaming (#134145)
9264
9265 2004-02-11  David Schleef  <ds@schleef.org>
9266
9267         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9268         * docs/gst/tmpl/gstpadtemplate.sgml: same
9269         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9270         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9271         fixing dance.
9272         * gst/gstutils.c: Remove disabled code that uses GstProps.
9273         * gst/registries/gstxmlregistry.h: same
9274         * docs/random/ds/0.9-suggested-changes: random notes
9275
9276 2004-02-11  kost@imn.htwk-leipzig.de
9277
9278         reviewed by: David Schleef  <ds@schleef.org>
9279
9280         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9281         initialisation of clock (bug #134128)
9282
9283 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9284
9285         * configure.ac:
9286         * gst/elements/Makefile.am:
9287         * gst/elements/gstelements.c:
9288         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9289         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9290         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9291         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9292         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9293         * gst/elements/gstmultifilesrc.h:
9294           rename multidisksrc to multifilesrc (part of #122200)
9295
9296 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9297
9298         * docs/manuals.mak:
9299           fix automake complaints
9300         * gst-element-check.m4:
9301           fix unquotedness
9302
9303 2004-02-11  David Schleef  <ds@schleef.org>
9304
9305         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9306         * gst/gstatomic_impl.h: Disable sparc implementation.
9307
9308 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9309
9310         * gst-element-check.m4:
9311           fix underquoted macros as reported by automake 1.8.x (#133800)
9312         * configure.ac:
9313           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9314           by autopoint (fixes #132996)
9315
9316 2004-02-10  Andy Wingo  <wingo@pobox.com>
9317
9318         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9319         way to do inheritance.
9320         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9321         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9322         Routine docs.
9323         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9324         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9325         doc.
9326         (gst_pad_unlink, gst_pad_is_linked): Docs.
9327         (gst_pad_renegotiate): A brief description of capsnego.
9328         (gst_pad_try_set_caps): Document.
9329         (gst_pad_try_set_caps_nonfixed): Document.
9330         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9331         (gst_pad_set_parent): Deprecated (although not out of the API).
9332         (gst_pad_get_parent): Deprecated, although many plugins use this.
9333         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9334         are private and will go away in 0.9.
9335         (gst_pad_perform_negotiate): Doc.
9336         (gst_pad_link_unnegotiate): I think this is meant to be static.
9337         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9338         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9339         (gst_pad_get_peer): Doc updates.
9340         (gst_pad_caps_change_notify): Doc.
9341         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9342         (gst_ghost_pad_new): Doc fixes.
9343
9344         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9345         (gst_object_check_uniqueness): 
9346
9347         * gst/gstelement.c (gst_element_add_pad) 
9348         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9349         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9350         (gst_element_get_static_pad, gst_element_get_pad_list) 
9351         (gst_element_class_get_pad_template_list) 
9352         (gst_element_class_get_pad_template): Work on the docs.
9353         (gst_element_get_pad_template_list): Uses the class method.
9354         (gst_element_get_compatible_pad_template): Docs, and consolidate
9355         some test conditions. 
9356         (gst_element_get_pad_from_template): New static function.
9357         (gst_element_request_compatible_pad): Docs, and work with
9358         non-request compatible templates. 
9359         (gst_element_get_compatible_pad_filtered): Docs and remove
9360         redundant checks.
9361         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9362         (gst_element_link_filtered, gst_element_link_many) 
9363         (gst_element_link, gst_element_link_pads) 
9364         (gst_element_unlink_many): Docs.
9365
9366 2004-02-05  Andy Wingo  <wingo@pobox.com>
9367
9368         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9369         s/pointer/boxed/.
9370
9371         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9372
9373         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9374         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9375         with the type=GST_TYPE_CAPS. This allows language bindings to know
9376         what kind of data they're dealing with.
9377
9378         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9379         to NULL when g_value_init is called. GstCaps, which rolls its own
9380         type implementation, now does the same instead of allocating empty
9381         caps.
9382         (_gst_caps_initialize, _gst_caps_collect_value,
9383         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9384         table methods. This allows G_VALUE_COLLECT to work.
9385
9386 2004-02-05  Andy Wingo  <wingo@pobox.com>
9387
9388         * configure.ac:
9389         * testsuite/Makefile.am (SUBDIRS): 
9390         * testsuite/ghostpads/Makefile.am: 
9391         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9392
9393         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9394         These two routines are the only ones that set
9395         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9396         pad template. They should be made static, depending on ABI needs.
9397         (gst_real_pad_dispose): Handle the case of ghost pads without a
9398         parent. Assert after dealing with ghost pads that the ghost pad
9399         list is empty.
9400         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9401         set after creation.
9402         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9403         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9404         functions. set_property will call add_ghost_pad/remove_ghost_pad
9405         as appropriate.
9406         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9407
9408         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9409         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9410         (gst_element_remove_pad): Handle ghost pads as well.
9411         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9412         depending on API-stability needs).
9413
9414 2004-02-05  Andy Wingo  <wingo@pobox.com>
9415
9416         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9417         of course they're const
9418
9419 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9420
9421         * tools/Makefile.am:
9422         * tools/gst-feedback:
9423         * tools/gst-feedback-0.7:
9424           make gst-feedback versioned too for consistency
9425
9426 2004-02-11  David Schleef  <ds@schleef.org>
9427
9428         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9429         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9430
9431 2004-02-10  Julien MOUTTE <julien@moutte.net>
9432
9433         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9434         the structure does not contain a valid tag list. Adding a safety check
9435         to remove a noisy warning in that case.
9436
9437 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9438
9439         * gst/gst.c: fix name to be in line with others
9440
9441 2004-02-09  Julien MOUTTE <julien@moutte.net>
9442
9443         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
9444         not shout that loud when len is 0. Just return 0 silently.
9445
9446 2004-02-09  Julien MOUTTE  <julien@moutte.net>
9447
9448         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
9449         because data_unref has one and I prefer the debug to be symetric.
9450         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
9451         were refed when added to the queue and unrefed only once when the queue
9452         was flushed. Now the flush handler unref the buffers two times : first
9453         unref for the ref added when pushing in the queue's tail and second
9454         unref to destroy the flushed buffer.
9455
9456 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9457
9458         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
9459
9460 2004-02-06  David Schleef  <ds@schleef.org>
9461
9462         * docs/random/ds/0.9-suggested-changes: Random ramblings
9463         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
9464         to int before printing.
9465         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
9466         * gst/parse/parse.l: same.  See bug #129600
9467
9468 2004-02-06  David Schleef  <ds@schleef.org>
9469
9470         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
9471         (gst_index_add_entry), (gst_index_add_associationv),
9472         (gst_index_add_association): Add gst_index_add_associationv()
9473         and clean up gst_index_add_association(). #127133
9474
9475 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9476
9477         * autogen.sh: check out common with right tag if CVS/Tag exists
9478
9479 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9480
9481         * testsuite/ghostpads/ghostpads.c: (main):
9482           fix testsuite from segfaulting
9483
9484 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9485
9486         * Makefile.am: add release target
9487         * configure.ac: bump nano to 1
9488         * docs/random/release:
9489
9490 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9491
9492         * gst/gstcaps.h:
9493         * gst/gstelement.c: (gst_element_base_class_init),
9494         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9495         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9496         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9497         (gst_real_pad_dispose):
9498         * gst/gststructure.c: (gst_structure_free),
9499         (gst_structure_from_string):
9500           put reverted patch back in
9501         * gst/gstelement.c: (gst_element_remove_pad):
9502           free explicit caps if they're set
9503         * gst/gstpad.c: (_gst_pad_default_fixate_func):
9504           copy the structure when fixating
9505
9506 2004-02-05  David Schleef  <ds@schleef.org>
9507
9508         * gst/gstmarshal.list:
9509         * gst/gstpad.c: (gst_real_pad_class_init),
9510         (_gst_real_pad_fixate_accumulator):
9511         Revert POINTER->BOXED change in signal marshaller.
9512
9513 === release 0.7.4 ===
9514                                                                                 
9515 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9516                                                                                 
9517         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
9518         * configure.ac: changed for release
9519
9520 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9521
9522         * gstreamer.spec.in:
9523           bump required version of gtk-doc
9524
9525 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9526
9527         * gst/gstcaps.h:
9528         * gst/gstelement.c: (gst_element_base_class_init),
9529         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9530         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9531         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9532         (gst_real_pad_dispose):
9533         * gst/gststructure.c: (gst_structure_free),
9534         (gst_structure_from_string):
9535           revert patch that breaks applications, reapply after release
9536           to get this fixed properly
9537
9538 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9539
9540         * gst/gsttag.c: (_gst_tag_initialize):
9541         * gst/gsttag.h:
9542           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
9543
9544 2004-02-04  David Schleef  <ds@schleef.org>
9545
9546         Fix some memleaks:
9547         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
9548         (gst_spider_plug_from_srcpad):
9549         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
9550
9551 2004-02-04  David Schleef  <ds@schleef.org>
9552
9553         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
9554         a GstRealPad before accessing its structure members.
9555
9556 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9557
9558         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
9559         (gst_clock_get_speed):
9560         * gst/gstclock.h:
9561           reset padding, remove unused fields
9562
9563 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9564
9565         * gst/autoplug/gstspideridentity.c:
9566         (gst_spider_identity_sink_loop_type_finding):
9567           use get_allowed_caps, not get_caps (fixes #132519)
9568         * gst/elements/gsttypefind.c: (stop_typefinding):
9569           use correct order when sending buffers and seeking
9570
9571 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9572
9573         * configure.ac:
9574         * gst/gstelement.h:
9575         * gst/gstpad.h:
9576         * gst/gstqueue.h:
9577           upgrade libtool CURRENT, reset padding
9578
9579 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9580
9581         * configure.ac:
9582           bump to prerelease
9583           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
9584
9585 2004-02-04  David Schleef  <ds@schleef.org>
9586
9587         * docs/random/ds/0.9-suggested-changes: random notes
9588         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
9589         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
9590         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
9591         expansion.
9592         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9593         (gst_filesink_get_query_types): same
9594         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
9595         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
9596         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
9597         to use new GST_PTR_FORMAT.
9598         * gst/gstelement.h: deprecate function factory macros
9599         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
9600         These are our last variadic macros that can't be replaced with
9601         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
9602         attempting to deprecate gst_element_clock_wait().
9603         * gst/gstevent.h: same
9604         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9605         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
9606         * gst/gstpad.h: deprecate function factory macros similar to above.
9607
9608 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9609
9610         * configure.ac:
9611         * tools/Makefile.am:
9612         * tools/gst-run.c: (popt_callback), (hash_print_key),
9613         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
9614         (get_candidates), (main):
9615           add new source file to generate non-versioned wrapper binaries
9616           for our tools.
9617
9618 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9619
9620         * gst/gstevent.c: (_gst_event_free):
9621           actually break; inside the switch statement
9622         * gst/parse/grammar.y:
9623           fix memleak where GValues weren't unset
9624
9625 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9626
9627         * gst/gststructure.c: (gst_structure_from_string):
9628           fix huge memleak
9629         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9630         (new_entry), (gst_type_find_element_chain):
9631         * gst/gstelement.c: (gst_element_base_class_init),
9632         (gst_element_class_set_details):
9633         * gst/gstpad.c: (gst_pad_can_link_filtered):
9634           fix smaller memleaks
9635         * gst/gstpad.c: (gst_real_pad_dispose):
9636           check that explicit caps are gone
9637         * gst/gststructure.c: (gst_structure_free):
9638           actually free the structure
9639         * gst/gstelement.c: (gst_element_clear_pad_caps):
9640           unset explicit caps
9641
9642 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9643
9644         * tools/Makefile.am:
9645           use AM_CFLAGS since all the CFLAGS are the same
9646           use AM_LDFAGS
9647
9648 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9649
9650         * docs/manual/gnome.xml:
9651           expand example a little
9652         * gst/gst.c: (gst_init_with_popt_table),
9653         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
9654           make sure popt option displays are done with right textdomain
9655           use GstPoptOption type
9656         * gst/gst.h:
9657           create GstPoptOption type
9658
9659 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9660
9661         * gst/gsterror.c: (_gst_stream_errors_init):
9662         * gst/gsterror.h:
9663           adding error type for no codec
9664         * po/POTFILES.in:
9665           add gst-inspect
9666         * po/nl.po:
9667           update dutch translation
9668         * tools/gst-inspect.c: (print_element_list), (main):
9669           do proper internationalization
9670         * tools/gst-launch.c: (idle_func):
9671           remove commented out function call
9672
9673 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9674
9675         * docs/README:
9676           add some error fixing notes
9677         * docs/gst/gstreamer-sections.txt:
9678           remove double entries
9679         * docs/gst/tmpl/gstbin.sgml:
9680         * docs/gst/tmpl/gstclock.sgml:
9681           remove override
9682         * docs/gst/tmpl/gstelement.sgml:
9683         * docs/gst/tmpl/gstindex.sgml:
9684         * docs/gst/tmpl/gstobject.sgml:
9685         * docs/gst/tmpl/gstpadtemplate.sgml:
9686         * docs/gst/tmpl/gstreamer-unused.sgml:
9687         * docs/gst/tmpl/gsttag.sgml:
9688         * docs/gst/tmpl/gstthread.sgml:
9689         * docs/gst/tmpl/gstxml.sgml:
9690         * gst/gsttag.h:
9691           sync header prototypes with c decls
9692         * gst/gsttaginterface.c:
9693           fix doc headers
9694
9695 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9696
9697         * gst/parse/Makefile.am:
9698         * gst/gstobject.h:
9699           get rid of gstmarshal.h dependency. It's not needed.
9700         * gst/gst.h:
9701         * gst/elements/gstfakesink.c:
9702         * gst/elements/gstfakesrc.c:
9703         * gst/elements/gstidentity.c:
9704         * gst/gstbin.c:
9705         * gst/gstelement.c:
9706         * gst/gstindex.c:
9707         * gst/gstobject.c:
9708         * gst/gstpad.c:
9709         * gst/gstthread.c:
9710         * gst/gstxml.c:
9711         * libs/gst/control/dparam.c:
9712         * libs/gst/control/dparammanager.c:
9713           include gstmarshal.h.
9714         Fixes #132045
9715
9716 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9717
9718         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9719         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
9720         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
9721         * gst/elements/gstfilesrc.h:
9722           don't ref the filesrc when creating mmaped buffers. Don't keep a
9723           list of not-yet-destroyed buffers.
9724         * gst/gstbuffer.h:
9725           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
9726
9727 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9728
9729         * gst/gst.c: (init_pre):
9730           remove textdomain
9731
9732 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9733
9734         * docs/pwg/advanced-events.xml:
9735         * docs/pwg/advanced-scheduling.xml:
9736         * docs/pwg/intro-basics.xml:
9737         * docs/pwg/other-manager.xml:
9738         * docs/pwg/other-nton.xml:
9739         * docs/pwg/other-ntoone.xml:
9740         * docs/pwg/other-oneton.xml:
9741         * docs/pwg/pwg.xml:
9742           All sort of documentation... Forgot what. Point is that I want this
9743           in before I leave. The 'other-*' will be the last section and will
9744           explain issues specific to these type of elements.
9745
9746 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9747
9748         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9749         (gst_filesrc_get_read):
9750           set all the values on buffers that we can
9751
9752 2004-02-02  David Schleef  <ds@schleef.org>
9753
9754         Change usage of isblah() to g_ascii_isblah() to be more locale
9755         independent.  (#133076)
9756         * gst/gsturi.c: (gst_uri_protocol_check_internal):
9757         * gst/gstutils.c:
9758         * gst/parse/parse.l:
9759
9760 2004-02-02  Jon Trowbridge  <trow@gnu.org>
9761
9762         reviewed by: David Schleef  <ds@schleef.org>
9763
9764         Fix memory leaks:
9765         * gst/gstcaps.c: (gst_caps_to_string):
9766         * gst/registries/gstxmlregistry.c:
9767         (gst_xml_registry_add_path_list_func),
9768         (gst_xml_registry_parse_padtemplate):
9769
9770 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9771
9772         * gst/gstelement.c: (gst_element_default_error):
9773           suffix error messages with period
9774
9775 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9776
9777         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9778         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9779         * gst/gsterror.c: (gst_error_get_message):
9780           Suffix with dots
9781         * po/fr.po:
9782         * po/nl.po:
9783           Update translation files
9784
9785 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9786
9787         * gst/autoplug/gstspideridentity.c:
9788         (gst_spider_identity_sink_loop_type_finding):
9789         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9790         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9791         (gst_filesink_close_file), (gst_filesink_handle_event),
9792         (gst_filesink_chain):
9793         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9794         (gst_filesrc_get_read), (gst_filesrc_open_file):
9795         * gst/elements/gstidentity.c: (gst_identity_chain):
9796         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9797         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9798         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9799         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9800         * gst/gsterror.c: (_gst_core_errors_init),
9801         (_gst_library_errors_init), (_gst_resource_errors_init),
9802         (_gst_stream_errors_init), (gst_error_get_message):
9803         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9804         (gst_pad_recover_caps_error), (gst_pad_pull):
9805         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9806         * gst/schedulers/gstbasicscheduler.c:
9807         (gst_basic_scheduler_chainhandler_proxy),
9808         (gst_basic_scheduler_gethandler_proxy),
9809         (gst_basic_scheduler_cothreaded_chain):
9810           Suffix error messages with period.
9811           Use (NULL) instead of NULL
9812
9813 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9814
9815         * docs/gst/tmpl/gstelement.sgml:
9816         * docs/gst/tmpl/gstxml.sgml:
9817         * gst/gstelement.c: (gst_element_error_full):
9818           add element path to error
9819
9820 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9821
9822         * docs/random/mimetypes:
9823           update raw int/float info
9824         * gst/gsttag.c: (_gst_tag_initialize):
9825         * gst/gsttag.h:
9826           add GST_TAG_ENCODER
9827
9828 2004-01-30  David Schleef  <ds@schleef.org>
9829
9830         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
9831           missing (#132991)
9832
9833 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
9834
9835         reviewed by Benjamin Otte 
9836           parts of the patch submitted in bug #113913
9837
9838         * configure.ac:
9839           use AC_C_INLINE. Use = instead of == with test
9840         * examples/plugins/example.c:
9841         * gst/autoplug/gstspideridentity.c:
9842         * gst/elements/gstfdsrc.c:
9843         * gst/elements/gstfilesrc.c:
9844         * gst/elements/gstidentity.c:
9845         * gst/elements/gstmultidisksrc.c:
9846         * gst/elements/gststatistics.c:
9847         * gst/gstelement.c:
9848         * gst/gstobject.c:
9849         * gst/gstpad.c:
9850         * gst/gstpipeline.c:
9851         * gst/gstthread.c:
9852           don't end enums with a comma
9853         * gst/gstindex.c: (gst_index_compare_func):
9854           do explicit casting to gint
9855         * gst/gsttrace.c: (gst_trace_text_flush):
9856           #define strsize as a macro
9857
9858 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9859
9860         * docs/README:
9861         * docs/gst/gstreamer-docs.sgml:
9862         * docs/gst/gstreamer-sections.txt:
9863         * docs/gst/tmpl/gstelement.sgml:
9864         * docs/gst/tmpl/gsterror.sgml:
9865         * docs/gst/tmpl/gstinterface.sgml:
9866         * docs/gst/tmpl/gstreamer-unused.sgml:
9867         * docs/gst/tmpl/gststructure.sgml:
9868         * docs/gst/tmpl/gsttag.sgml:
9869         * docs/gst/tmpl/gsttaginterface.sgml:
9870         * docs/gst/tmpl/gstvalue.sgml:
9871         make sure all API ends up in the built docs
9872         * gst/gstinterface.c:
9873         * gst/gststructure.c: (gst_structure_id_set_value),
9874         (gst_structure_set_value), (gst_structure_id_get_value):
9875         * gst/gststructure.h:
9876         * gst/gstvalue.h:
9877         sync .h with .c declarations
9878
9879 2004-01-30  Julien Moutte  <julien@moutte.net>
9880
9881         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
9882         Ronald will fix riffread.
9883
9884 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9885
9886         * docs/pwg/advanced-interfaces.xml:
9887           Added tuner interface docs.
9888
9889 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9890
9891         * docs/random/mimetypes:
9892           correct Theora information
9893         * gst/gstelement.h:
9894           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
9895
9896 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9897
9898         * gst/gstelement.c: (gst_element_error_full):
9899         * gst/gstelement.h:
9900           GST_ELEMENT_ERROR in enum -> _IN_ERROR
9901
9902 2004-01-29  Julien MOUTTE  <julien@moutte.net>
9903
9904         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9905         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
9906         again and even before DISCONT.
9907         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
9908         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
9909         bytestream so that it's not stopping to fill the bytestream if events
9910         different than EOS or DISCONT are received. Instead it process them so
9911         that they go downstream.
9912
9913 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9914
9915         * docs/gst/tmpl/gstelement.sgml:
9916         * docs/gst/tmpl/gstreamer-unused.sgml:
9917         * docs/gst/tmpl/gstxml.sgml:
9918         * gst/autoplug/gstspideridentity.c:
9919         (gst_spider_identity_sink_loop_type_finding):
9920         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9921         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9922         (gst_filesink_close_file), (gst_filesink_handle_event),
9923         (gst_filesink_chain):
9924         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9925         (gst_filesrc_get_read), (gst_filesrc_open_file):
9926         * gst/elements/gstidentity.c: (gst_identity_chain):
9927         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9928         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9929         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9930         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9931         * gst/gstelement.h:
9932         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9933         (gst_pad_recover_caps_error), (gst_pad_pull):
9934         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9935         * gst/schedulers/gstbasicscheduler.c:
9936         (gst_basic_scheduler_chainhandler_proxy),
9937         (gst_basic_scheduler_gethandler_proxy),
9938         (gst_basic_scheduler_cothreaded_chain):
9939           gst_element_error -> GST_ELEMENT_ERROR
9940
9941 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9942
9943         * docs/Makefile.am:
9944         * docs/gst/tmpl/gstelement.sgml:
9945         * docs/gst/tmpl/gstxml.sgml:
9946         * docs/manuals.mak:
9947         * docs/pwg/advanced-request.xml:
9948         * docs/pwg/advanced-scheduling.xml:
9949         * docs/pwg/advanced-tagging.xml:
9950           fix non-validating docbook using CDATA
9951           make sure make check-local gets run first to check if it validates
9952
9953 2004-01-29  Julien MOUTTE <julien@moutte.net>
9954
9955         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
9956         handling (up and downstream).
9957         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
9958         my_filter thing.
9959
9960 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9961
9962         * docs/pwg/advanced-tagging.xml:
9963           Add docs about tag writing.
9964
9965 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9966
9967         * docs/pwg/advanced-tagging.xml:
9968           Add a part about tag reading and application signalling... Tag
9969           writing still needs to be documented.
9970         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
9971           We can set file locations in READY, too.
9972
9973 2004-01-29  Julien MOUTTE <julien@moutte.net>
9974
9975         * docs/random/ds/element-checklist: Adding some notes about src
9976         events.
9977
9978 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9979
9980         * docs/random/mimetypes:
9981           Update docs to point to correct elements for various mimetypes, and
9982           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
9983           <stephane.loeuillet@tiscali.fr>.
9984
9985 2004-01-28  David Schleef  <ds@schleef.org>
9986
9987         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
9988
9989 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9990
9991         * docs/random/mimetypes:
9992           update docs for audio/x-raw-float. Add "buffer-frames=0 means
9993           undefined"
9994         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
9995           make it only work in NULL.
9996         * gst/gstcaps.c:
9997           don't posion NULL caps
9998         * gst/gstelement.c: (gst_element_set_time):
9999           add debugging statement
10000         * gst/gstelement.c: (gst_element_emit_found_tag),
10001         (gst_element_found_tag_func), (gst_element_found_tags):
10002         * gst/gstelement.h:
10003           These functions take const taglists
10004         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10005           fix memleak
10006         * gst/gstpad.c: (gst_pad_event_default):
10007           make more effort on handling discont and clocks, g_warn if everything
10008           fails
10009         * gst/gststructure.c: (gst_structure_remove_fields),
10010         (gst_structure_remove_fields_valist):
10011         * gst/gststructure.h:
10012           add gst_structure_remove_fields(_valist)
10013         * gst/gsttag.c:
10014           fix doc glitch
10015
10016 2004-01-28  David Schleef  <ds@schleef.org>
10017
10018         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10019         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10020         Fix memory leakage of gst_caps_to_string().
10021
10022         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10023         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10024         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10025         (gst_spider_identity_sink_loop_type_finding):
10026         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10027         (find_suggest):
10028         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10029         (gst_pad_set_explicit_caps):
10030         * gst/parse/grammar.y:
10031
10032 2004-01-28  David Schleef  <ds@schleef.org>
10033
10034         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10035         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10036         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10037         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10038         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10039         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10040         (gst_debug_log_default), (_gst_info_printf_extension),
10041         (_gst_info_printf_extension_arginfo):  Add printf extension.
10042         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10043         * gst/gststructure.c: (gst_structure_to_string),
10044         (_gst_structure_parse_value): Use gst_value_deserialize() and
10045         remove old code.
10046         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10047         (gst_value_deserialize_boolean), (gst_strtoi),
10048         (gst_value_deserialize_int), (gst_value_deserialize_double),
10049         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10050         a bunch of deserialize functions and gst_value_deserialize.
10051         * gst/gstvalue.h: er, _de_serialize, not unserialize
10052         * testsuite/caps/string-conversions.c: (main): We don't currently
10053         handle (float) in caps, so convert these to (double).
10054         * testsuite/debug/Makefile.am: Add new test for the printf extension
10055         * testsuite/debug/printf_extension.c: (main): same
10056
10057 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10058
10059         * docs/random/company/time:
10060           Add some docs about clocking and time
10061
10062 2004-01-28  Julien MOUTTE <julien@moutte.net>
10063
10064         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10065
10066 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10067
10068         * docs/pwg/advanced-clock.xml:
10069         * docs/pwg/advanced-dparams.xml:
10070         * docs/pwg/advanced-events.xml:
10071         * docs/pwg/advanced-interfaces.xml:
10072         * docs/pwg/advanced-midi.xml:
10073         * docs/pwg/advanced-request.xml:
10074         * docs/pwg/advanced-scheduling.xml:
10075         * docs/pwg/advanced-tagging.xml:
10076         * docs/pwg/advanced-types.xml:
10077         * docs/pwg/appendix-checklist.xml:
10078         * docs/pwg/building-boiler.xml:
10079         * docs/pwg/building-chainfn.xml:
10080         * docs/pwg/building-filterfactory.xml:
10081         * docs/pwg/building-pads.xml:
10082         * docs/pwg/building-props.xml:
10083         * docs/pwg/building-signals.xml:
10084         * docs/pwg/building-state.xml:
10085         * docs/pwg/building-testapp.xml:
10086         * docs/pwg/intro-basics.xml:
10087         * docs/pwg/intro-preface.xml:
10088         * docs/pwg/other-autoplugger.xml:
10089         * docs/pwg/other-sink.xml:
10090         * docs/pwg/other-source.xml:
10091         * docs/pwg/titlepage.xml:
10092           fix up id's
10093
10094 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10095
10096         * docs/95NonPath:
10097         * docs/HACKING:
10098         * docs/README:
10099         * docs/building-the-docs-on-debian:
10100           collect relevant bits of doc info
10101
10102 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10103
10104         * docs/pwg/advanced_tagging.xml:
10105           Half-assed commit so Thomas can re-arrange document IDs here to be
10106           consistent, too.
10107
10108 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10109
10110         * docs/manual/autoplugging.xml:
10111         * docs/manual/bins-api.xml:
10112         * docs/manual/bins.xml:
10113         * docs/manual/buffers-api.xml:
10114         * docs/manual/buffers.xml:
10115         * docs/manual/clocks.xml:
10116         * docs/manual/components.xml:
10117         * docs/manual/cothreads.xml:
10118         * docs/manual/debugging.xml:
10119         * docs/manual/dparams-app.xml:
10120         * docs/manual/dynamic.xml:
10121         * docs/manual/elements-api.xml:
10122         * docs/manual/elements.xml:
10123         * docs/manual/factories.xml:
10124         * docs/manual/gnome.xml:
10125         * docs/manual/goals.xml:
10126         * docs/manual/helloworld.xml:
10127         * docs/manual/helloworld2.xml:
10128         * docs/manual/init-api.xml:
10129         * docs/manual/intro.xml:
10130         * docs/manual/links-api.xml:
10131         * docs/manual/links.xml:
10132         * docs/manual/manual.xml:
10133         * docs/manual/motivation.xml:
10134         * docs/manual/pads-api.xml:
10135         * docs/manual/pads.xml:
10136         * docs/manual/plugins-api.xml:
10137         * docs/manual/plugins.xml:
10138         * docs/manual/programs.xml:
10139         * docs/manual/queues.xml:
10140         * docs/manual/quotes.xml:
10141         * docs/manual/schedulers.xml:
10142         * docs/manual/states-api.xml:
10143         * docs/manual/states.xml:
10144         * docs/manual/threads.xml:
10145         * docs/manual/typedetection.xml:
10146         * docs/manual/xml.xml:
10147           use chapter, part, section or misc as id starts for all bits
10148
10149 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10150
10151         * docs/gst/gstreamer-sections.txt:
10152           Fix up TITLE of the sections
10153
10154 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10155
10156         * docs/pwg/advanced_interfaces.xml:
10157           Add documentation on propertyprobing.
10158         * docs/pwg/advanced_events.xml:
10159         * docs/pwg/advanced_tagging.xml:
10160         * docs/pwg/building_boiler.xml:
10161         * docs/pwg/building_filterfactory.xml:
10162         * docs/pwg/pwg.xml:
10163           Move filterfactory and tagging into their own chapter, add a chapter
10164           on events. all these are empty placeholders that will be filled in
10165           some day.
10166
10167 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10168
10169         * docs/pwg/advanced_interfaces.xml:
10170           Docs for mixer interface. Also a check for website uploading.
10171
10172 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10173
10174         * docs/HACKING:
10175         * docs/Makefile.am:
10176         * docs/faq/Makefile.am:
10177         * docs/gst/Makefile.am:
10178         * docs/gst/tmpl/gstelement.sgml:
10179         * docs/gst/tmpl/gstplugin.sgml:
10180         * docs/gst/tmpl/gstreamer-unused.sgml:
10181         * docs/libs/Makefile.am:
10182         * docs/manual/Makefile.am:
10183         * docs/manuals.mak:
10184         * docs/pwg/Makefile.am:
10185         * docs/upload.mak:
10186           Separate out upload target and make it similar for
10187           both docbook and gtk-doc docs
10188
10189 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10190
10191         * docs/manuals.mak:
10192           Fix upload target to work with freedesktop
10193
10194 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10195
10196         * docs/pwg/advanced_types.xml:
10197           Add notes on creating your own types.
10198         * docs/pwg/building_boiler.xml:
10199         * docs/pwg/building_pads.xml:
10200         * docs/pwg/building_state.xml:
10201           Add some stuff about how to retrieve values from structures, how
10202           that relates to types and change layout slightly again to be almost
10203           perfect.
10204
10205 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10206
10207         * docs/pwg/advanced_dparams.xml:
10208         * docs/pwg/advanced_scheduling.xml:
10209           Change index layout slightly.
10210
10211 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10212
10213         * docs/pwg/advanced_clock.xml:
10214         * docs/pwg/advanced_interfaces.xml:
10215         * docs/pwg/advanced_midi.xml:
10216           General placeholders for now.
10217         * docs/pwg/advanced_request.xml:
10218           Explanation about sometimes and request pads.
10219         * docs/pwg/advanced_scheduling.xml:
10220           Concept of bytestream, loopfunctions and schedulers.
10221         * docs/pwg/building_boiler.xml:
10222           Add something about plugin-init.
10223
10224 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10225
10226         * docs/pwg/building_pads.xml:
10227           Fix broken docbook
10228
10229 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10230
10231         * docs/pwg/advanced_interfaces.xml:
10232         * docs/pwg/pwg.xml:
10233           Add as a placeholder for future filling-in.
10234         * docs/pwg/basics_autoplugging.xml:
10235         * docs/pwg/basics_buffers.xml:
10236         * docs/pwg/basics_elements.xml:
10237         * docs/pwg/basics_events.xml:
10238         * docs/pwg/basics_plugins.xml:
10239         * docs/pwg/basics_types.xml:
10240           Remove, because unused (this is all in intro_basics.xml).
10241         * docs/pwg/building_signals.xml:
10242           Short intro to signals + reference to GObject docs - we really
10243           shouldn't go into these sort of things to deply because we don't
10244           use them that extensively anyway.
10245         * docs/pwg/building_state.xml:
10246           Explanation of states. Benjamin, please check.
10247         * docs/pwg/building_testapp.xml:
10248           Put everything in one page - putting only a few lines of content
10249           per page doesn't really make sense.
10250
10251           Time to get into the advanced topics. ;).
10252
10253 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10254
10255         * docs/pwg/advanced_types.xml:
10256           Finish documenting the current state of mimetypes.
10257         * docs/pwg/building_boiler.xml:
10258         * docs/pwg/building_chainfn.xml:
10259         * docs/pwg/building_pads.xml:
10260         * docs/pwg/building_props.xml:
10261         * docs/pwg/building_testapp.xml:
10262           Start documenting the "how to build a simple audio filter" part
10263           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10264           states and (maybe?) a short introduction to capsnego in the chapter
10265           on pads (building_pads.xml). Capsnego should probably be explained
10266           fully in advanced_capsnego.xml or so.
10267
10268 2004-01-26  David Schleef  <ds@schleef.org>
10269
10270         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10271         * gst/gstpad.h: Add new function to allow element to (somewhat)
10272         specify non-fixed caps on a pad.
10273         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10274         that I added a few weeks ago.
10275
10276 2004-01-26  David Schleef  <ds@schleef.org>
10277
10278         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10279           making try_set_caps() work with non-fixed caps.
10280
10281 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10282
10283         * docs/pwg/advanced_types.xml:
10284         * docs/pwg/intro_basics.xml:
10285         * docs/pwg/intro_preface.xml:
10286         * docs/pwg/pwg.xml:
10287         * docs/pwg/titlepage.xml:
10288           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10289           in here (docs/random/mimetypes), and will from there on work on both
10290           updating outdated parts and adding missing parts.
10291           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10292
10293 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10294
10295         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10296           policy is set
10297
10298 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10299
10300         * gst/gstelement.h:
10301           remove gst_element_factory_get_version. It doesn't exist anymore.
10302         * gst/gstplugin.c:
10303         * gst/gstplugin.h:
10304           remove gst_plugin_set_name and change gst_plugin_get_longname to
10305           gst_plugin_get_description to match code.
10306         * gst/gsterror.h:
10307           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10308         * gst/gstpad.c: (gst_pad_try_set_caps):
10309           make it work with nonfixed caps.
10310           Note that even in the nonfixed case the link function of the pad
10311           that tries to set caps isn't called.
10312
10313 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10314
10315         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10316           fix bug where buffer was not assembled correctly
10317         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10318           silence by default
10319         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10320           only seek if there's no more buffers that could work without seeking
10321
10322 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10323
10324         * gst/gsttag.c: (_gst_tag_initialize):
10325         * gst/gsttag.h:
10326           Add application tag (for encoding/muxing app).
10327
10328 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10329
10330         * autogen.sh:
10331           make autopoint force, and libtoolize not copy
10332         * common/m4/as-docbook.m4:
10333           added docbook xml catalog setup check
10334         * common/m4/gst-doc.m4:
10335           use docbook check
10336
10337 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10338
10339         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10340         * gst/gsttag.h:
10341           add GstTagFlag
10342
10343 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10344
10345         * docs/gst/gstreamer-sections.txt:
10346         * docs/gst/tmpl/gst.sgml:
10347         * docs/gst/tmpl/gstbuffer.sgml:
10348         * docs/gst/tmpl/gstclock.sgml:
10349         * docs/gst/tmpl/gstelement.sgml:
10350         * docs/gst/tmpl/gstreamer-unused.sgml:
10351         * docs/gst/tmpl/gstxml.sgml:
10352           sync latest API changes to docs
10353
10354 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10355
10356         * gst/gstpluginfeature.c:
10357           fix doc snippet
10358         * tools/gst-inspect.c: (print_element_list):
10359           fix output of typefind
10360           add GPL header
10361         * tools/gst-launch.c:
10362           add GPL header
10363
10364 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10365
10366         * gst/elements/Makefile.am:
10367         * gst/elements/gstelements.c:
10368         * gst/elements/gsttypefindelement.c:
10369         * gst/elements/gsttypefindelement.h:
10370         * po/POTFILES.in:
10371         * po/fr.po:
10372         * po/nl.po:
10373           renamed gsttypefindelement to gsttypefind, conserving CVS history
10374
10375 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10376
10377         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10378         * gst/gsttag.h:
10379           add some tags used in ogg as well
10380           fix _ in replaygain tags
10381
10382 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10383
10384         * gst/gsterror.h:
10385           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10386
10387 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10388
10389         * gst/gstelement.c: (gst_element_error_full):
10390         * gst/gstelement.h:
10391           change _extended to _full
10392
10393 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10394
10395         reviewed by: <delete if not using a buddy>
10396
10397         * docs/gst/tmpl/gst.sgml:
10398         * docs/gst/tmpl/gstbuffer.sgml:
10399         * docs/gst/tmpl/gstclock.sgml:
10400         * docs/gst/tmpl/gstelement.sgml:
10401         * docs/gst/tmpl/gstreamer-unused.sgml:
10402         * docs/gst/tmpl/gstxml.sgml:
10403         * gst/gstelement.c: (gst_element_error_full):
10404         * gst/gstelement.h:
10405
10406 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10407
10408         * gst/gstelement.h: fix _gst_element_error_printf prototype
10409
10410 2004-01-20  David Schleef  <ds@schleef.org>
10411
10412         * gst/gststructure.c: (gst_structure_to_string):
10413         Convert function to use gst_value_serialize().
10414         * gst/gstvalue.c: (gst_value_serialize_list),
10415         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10416         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10417         (gst_value_serialize_int), (gst_value_serialize_double),
10418         (gst_string_wrap), (gst_value_serialize_string),
10419         (gst_value_serialize), (gst_value_deserialize):
10420         * gst/gstvalue.h:
10421         Add implementations for serialize.
10422
10423 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10424
10425         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10426         we want to keep that one in the future or change xvidenc.c to use 
10427         another error.
10428
10429 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10430
10431         * gst/gstelement.c: (_gst_element_error_printf):
10432         * gst/gstelement.h:
10433           privatise function
10434
10435 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10436
10437         * docs/random/error:
10438           doc explaining error system
10439         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10440           cleanup
10441
10442 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10443
10444         * gst/gst-i18n-app.h:
10445         * gst/gst-i18n-lib.h:
10446           remove inclusion of config.h
10447         * po/POTFILES.in:
10448         * po/nl.po:
10449           add gst/gstelement.c
10450
10451 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10452
10453         * po/nl.po: updated Dutch translation
10454
10455 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10456
10457         * gst/gsterror.c: (_gst_core_errors_init),
10458         (_gst_library_errors_init), (_gst_resource_errors_init),
10459         (_gst_stream_errors_init):
10460         remove ending punctuation dots
10461
10462 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10463
10464         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10465         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
10466         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10467         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10468         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10469         use GST_ERROR_SYSTEM
10470
10471 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10472
10473         * gst/gstelement.c: (gst_element_error_printf),
10474         (gst_element_error_extended):
10475         * gst/gstelement.h:
10476           add a helper printf function so we can have NULL values passed.
10477
10478 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10479
10480         * gst/gstelement.h:
10481           add G_STMT macros to gst_element_error, which isn't strictly
10482           necessary but people tell me to anyway.
10483
10484 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10485
10486         * gst/Makefile.am:
10487         * gst/autoplug/gstspideridentity.c:
10488         (gst_spider_identity_sink_loop_type_finding):
10489         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10490         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10491         (gst_filesink_close_file), (gst_filesink_handle_event),
10492         (gst_filesink_chain):
10493         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
10494         (gst_filesrc_map_region), (gst_filesrc_get_read),
10495         (gst_filesrc_open_file):
10496         * gst/elements/gstidentity.c: (gst_identity_chain):
10497         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10498         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10499         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10500         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
10501         * gst/gst.h:
10502         * gst/gst_private.h:
10503         * gst/gstelement.c: (gst_element_class_init),
10504         (gst_element_default_error), (gst_element_error_func),
10505         (gst_element_error_extended):
10506         * gst/gstelement.h:
10507         * gst/gsterror.c: (_gst_core_errors_init),
10508         (_gst_library_errors_init), (_gst_resource_errors_init),
10509         (_gst_stream_errors_init), (gst_error_get_message):
10510         * gst/gsterror.h:
10511         * gst/gstinfo.c: (_gst_debug_init):
10512         * gst/gstmarshal.list:
10513         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10514         (gst_pad_recover_caps_error), (gst_pad_pull):
10515         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10516         * gst/schedulers/gstbasicscheduler.c:
10517         (gst_basic_scheduler_chainhandler_proxy),
10518         (gst_basic_scheduler_gethandler_proxy),
10519         (gst_basic_scheduler_cothreaded_chain):
10520         * po/POTFILES.in:
10521         * po/fr.po:
10522         * po/nl.po:
10523           change error signal
10524           add error categories
10525
10526 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
10527
10528         * gst/gsttag.c: (_gst_tag_initialize):
10529         * gst/gsttag.h:
10530         Add replaygain tag
10531
10532 2004-01-18  Colin Walters  <walters@verbum.org>
10533
10534         * examples/retag/retag.c: Call gst_init before processing
10535         program args.  Add g_assert to _link_many call.
10536
10537 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10538
10539         * gst/gstpad.c: (gst_pad_alloc_buffer):
10540           Return a newly allocated buffer when the pad has no peer.
10541
10542 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10543
10544         * gst/gstclock.c: (gst_clock_get_time):
10545           make it compile with gcc 2.95 again.
10546           Patch by Scott Wheeler
10547
10548 2004-01-15  David Schleef  <ds@schleef.org>
10549
10550         * gst/gstcaps.h:
10551         Added gst_caps_is_simple() macro.
10552         * testsuite/caps/caps.c: (test1):
10553         * testsuite/caps/intersect2.c: (main):
10554         * testsuite/caps/intersection.c: (main):
10555         Fixes to make 'make check' work again after removing
10556         gst_caps_is_chained().
10557
10558 2004-01-15  Leif Johnson <leif@ambient.2y.net>
10559
10560         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
10561         and additions to the MIDI document.
10562
10563 2004-01-15  David Schleef  <ds@schleef.org>
10564
10565         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
10566         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
10567         of GST_RPAD_, since we don't know if it's a real or ghost pad.
10568
10569 2004-01-15  David Schleef  <ds@schleef.org>
10570
10571         * gst/gstqueue.c:
10572         * gst/gstqueue.h:
10573         Fix the spelling of "treshold" and make min_threshold actually
10574         affect the queue.
10575
10576 2004-01-15  David Schleef  <ds@schleef.org>
10577
10578         * gst/gstcaps.c:
10579         Add lots of documentation.
10580         * gst/gstcaps.h:
10581         Deprecate a few functions.
10582         * gst/gstpad.c:
10583         Removed use of deprecated functions.
10584
10585 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10586
10587         * gst/gstpad.c: (gst_pad_is_linked):
10588         * gst/gstpad.h:
10589           implement gst_pad_is_linked
10590         * gst/gstelement.h:
10591           reserve space for initiate_state_change
10592
10593 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10594
10595         * gst/autoplug/gstspideridentity.c:
10596         (gst_spider_identity_sink_loop_type_finding):
10597           break infinite loop by just returning instead of looping
10598         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
10599           set event time difference correctly. Set it to 1 second instead
10600           of 100ms to be more tolerant
10601         * gst/gstelement.c: (gst_element_set_time):
10602           add debugging output
10603
10604 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10605
10606         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
10607           query if buffers are inside the pool, ignore events
10608
10609 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10610
10611         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
10612         (gst_clock_set_speed), (gst_clock_set_active),
10613         (gst_clock_is_active), (gst_clock_reset),
10614         (gst_clock_handle_discont):
10615         * gst/gstclock.h:
10616           deprecate old interface and disable functions that aren't in use
10617           anymore.
10618         * gst/gstelement.h:
10619         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
10620         (gst_element_set_time), (gst_element_adjust_time):
10621           add concept of "element time" and functions to get/set this time.
10622         * gst/gstelement.c: (gst_element_change_state):
10623           update element time correctly.
10624         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10625           This is a debug message, not a g_critical.
10626         * gst/gstpad.c: (gst_pad_event_default):
10627           handle discontinuous events right with element time.
10628         * gst/gstscheduler.c: (gst_scheduler_state_transition):
10629           update to clocking fixes.
10630           set clocks on elements in READY=>PAUSED. The old behaviour caused
10631           a wrong element time on the first element that started playing.
10632         * gst/schedulers/gstbasicscheduler.c:
10633         (gst_basic_scheduler_class_init):
10634         * gst/schedulers/gstoptimalscheduler.c:
10635         (gst_opt_scheduler_class_init):
10636           remove code that just implements the default behaviour.
10637         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
10638           update to use new clocking functions
10639         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
10640         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
10641           update to test new element time.
10642         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
10643           use _get_allowed_caps instead of _get_caps. This catches filtered
10644           caps correctly.
10645         * testsuite/debug/commandline.c:
10646           update for new GST_DEBUG syntax.
10647         * testsuite/threads/Makefile.am:
10648           disable a test that only works sometimes.
10649
10650 2004-01-13  Julien MOUTTE <julien@moutte.net>
10651
10652         * po/LINGUAS: Adding fr.
10653         * po/fr.po: Adding french translation.
10654
10655 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10656
10657         * gst/parse/grammar.y:
10658         * po/POTFILES.in:
10659         * po/nl.po:
10660         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
10661           translate parsing error messages
10662
10663 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10664
10665         * po/POTFILES.in: adding gst-launch
10666         * po/nl.po: updated translation, all 99 strings translated
10667         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
10668         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
10669           fix strings for translation
10670
10671 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10672
10673         * gst/gst.c:
10674           - capitalize beginnings of popt options
10675           - fix strings for translation
10676           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
10677
10678 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10679
10680         * po/README: add some notes on how to update translations
10681
10682 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10683
10684         * ABOUT-NLS: removed, is autogenerated from autopoint
10685         * autogen.sh: add autopoint stuff
10686         * configure.ac: fix up gettext stuff
10687         * gst/Makefile.am: add i18n headers to noinst_HEADERS
10688         * gst/elements/gsttypefindelement.c: add header include
10689         * gst/gettext.h: add header, copy from system-installed header
10690         * gst/gst-i18n-app.h: to be included by each app having translations
10691         * gst/gst-i18n-lib.h: to be included by each lib having translations
10692         * gst/gst.c: (init_pre): fix up gettext calls
10693         * gst/gst_private.h: remove i18n stuff, moving to separate headers
10694         * po/LINGUAS: the new way to specify translations present
10695         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
10696         * po/Makevars: the variables filled in for GStreamer
10697         * po/POTFILES.in: added new files with translations
10698         * po/de.po: has new strings
10699         * po/nl.po: readded, has new strings
10700
10701 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10702
10703         * gst/gsttag.c: fix some strings marked for translation
10704
10705 2004-01-13  Iain <iain@prettypeople.org>
10706
10707         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
10708         group when we add an element to it, cos we unref it when we remove one
10709
10710 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10711
10712         * testsuite/debug/commandline.c: (debug_not_reached):
10713         * testsuite/debug/output.c: (check_message):
10714           fix testsuite
10715
10716 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10717
10718         * examples/cutter/.cvsignore:
10719         * examples/helloworld/.cvsignore:
10720         * examples/launch/.cvsignore:
10721         * examples/manual/.cvsignore:
10722         * examples/mixer/.cvsignore:
10723         * examples/pingpong/.cvsignore:
10724         * examples/plugins/.cvsignore:
10725         * examples/queue/.cvsignore:
10726         * examples/queue2/.cvsignore:
10727         * examples/queue3/.cvsignore:
10728         * examples/queue4/.cvsignore:
10729         * examples/retag/.cvsignore:
10730         * examples/thread/.cvsignore:
10731         * examples/typefind/.cvsignore:
10732         * examples/xml/.cvsignore:
10733         * gst/.cvsignore:
10734         * gst/autoplug/.cvsignore:
10735         * gst/elements/.cvsignore:
10736         * gst/indexers/.cvsignore:
10737         * gst/parse/.cvsignore:
10738         * gst/registries/.cvsignore:
10739         * gst/schedulers/.cvsignore:
10740         * libs/gst/bytestream/.cvsignore:
10741         * libs/gst/control/.cvsignore:
10742         * libs/gst/getbits/.cvsignore:
10743         * tests/.cvsignore:
10744         * tests/bufspeed/.cvsignore:
10745         * tests/instantiate/.cvsignore:
10746         * tests/memchunk/.cvsignore:
10747         * tests/muxing/.cvsignore:
10748         * tests/sched/.cvsignore:
10749         * tests/seeking/.cvsignore:
10750         * tests/threadstate/.cvsignore:
10751         * testsuite/.cvsignore:
10752         * testsuite/caps/.cvsignore:
10753         * testsuite/cleanup/.cvsignore:
10754         * testsuite/dynparams/.cvsignore:
10755         * testsuite/plugin/.cvsignore:
10756         * tools/.cvsignore:
10757           update - this is huge, because it includes *.bb, *.bbg and *.da files
10758           which are generated for gcov.
10759
10760 2004-01-11  David Schleef  <ds@schleef.org>
10761
10762         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
10763         a function to parse integers in ways that strto[u]l() does not.
10764
10765 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10766
10767         * tools/gst-inspect.c: (print_caps):
10768           improve output of caps a bit
10769
10770 2004-01-11  David Schleef  <ds@schleef.org>
10771
10772         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
10773         inherit correct flags (READONLY and DONTKEEP).
10774
10775 2004-01-11  David Schleef  <ds@schleef.org>
10776
10777         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
10778         (gst_filesrc_map_region):
10779         * gst/gstbuffer.c: (_gst_buffer_initialize),
10780         (_gst_buffer_sub_free), (gst_buffer_default_copy),
10781         (gst_buffer_new), (gst_buffer_create_sub),
10782         (gst_buffer_is_span_fast), (gst_buffer_span):
10783         * gst/gstbuffer.h:
10784         Change GstBuffer private structure element names. (all files)
10785         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
10786         (gst_queue_link):
10787         * gst/gstqueue.h:
10788         Implement getcaps/pad_link functions that handle the case where
10789         there are data in the queue.
10790
10791 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10792
10793         * gst/elements/gstbufferstore.c:
10794           initialize debugging structure correctly
10795         * gst/elements/gsttee.c: (gst_tee_set_property):
10796           g_object_notify when property was changed
10797         * gst/elements/gsttypefindelement.c:
10798         (gst_type_find_element_change_state):
10799           clear caps correctly
10800
10801 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10802
10803         * gst/gstqueue.c: (gst_queue_init):
10804           Use better defaults for when a queue should block. This
10805           gets rid of jerky playback for quite a few files.
10806           It takes more memory.
10807
10808 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10809
10810         (gst_xml_registry_parse_padtemplate):
10811           make critical message slightly more useful
10812
10813 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10814
10815         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
10816         (gst_debug_message_get), (gst_debug_log_default):
10817         * gst/gstinfo.h:
10818           Change gst_debug_log(_valist) to take a const format string.
10819           Change prototype of log function and functions using those to 
10820           take a GstDebugMessage instead of a string that requires using
10821           gst_debug_message_get.
10822
10823 2004-01-08  David Schleef  <ds@schleef.org>
10824
10825         * Makefile.am:
10826         * configure.ac:
10827         Add option --enable-gcov to build GStreamer with -fprofile-arcs
10828         and -ftest-coverage, which allows gcov to show information about
10829         testsuite coverage.
10830
10831 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10832
10833         * gst/gstutils.h:
10834           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
10835           GST_PARENT_CALL_WITH_DEFAULT
10836         * gst/elements/gstaggregator.c: 
10837         * gst/elements/gstbufferstore.c: 
10838         * gst/elements/gstfakesink.c: 
10839         * gst/elements/gstfakesrc.c: 
10840         * gst/elements/gstfdsink.c: 
10841         * gst/elements/gstfdsrc.c: 
10842         * gst/elements/gstfilesink.c: 
10843         * gst/elements/gstfilesrc.c: 
10844         * gst/elements/gstidentity.c: 
10845         * gst/elements/gstmd5sink.c: 
10846         * gst/elements/gstmultidisksrc.c:
10847         * gst/elements/gstpipefilter.c: 
10848         * gst/elements/gstshaper.c:
10849         * gst/elements/gststatistics.c:
10850         * gst/elements/gsttee.c:
10851         * gst/elements/gsttypefindelement.c:
10852           use them.
10853
10854 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10855
10856         * docs/gst/gstreamer-docs.sgml: remove props
10857         * docs/gst/gstreamer-sections.txt: remove props
10858         * docs/gst/tmpl/gst.sgml:
10859         * docs/gst/tmpl/gstbin.sgml:
10860         * docs/gst/tmpl/gstbuffer.sgml:
10861         * docs/gst/tmpl/gstcaps.sgml:
10862         * docs/gst/tmpl/gstclock.sgml:
10863         * docs/gst/tmpl/gstelement.sgml:
10864         * docs/gst/tmpl/gstindex.sgml:
10865         * docs/gst/tmpl/gstobject.sgml:
10866         * docs/gst/tmpl/gstpad.sgml:
10867         * docs/gst/tmpl/gstpadtemplate.sgml:
10868         * docs/gst/tmpl/gstreamer-unused.sgml:
10869         * docs/gst/tmpl/gstthread.sgml:
10870         * docs/gst/tmpl/gstxml.sgml:
10871           sync with code reorganization
10872
10873 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
10874
10875         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10876         Make the 'Could not find compatible pad' message more informative.
10877
10878 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10879                                                                                 
10880         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
10881           Fix for if we pass NULL as property to location.
10882         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
10883         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
10884           Fix for instantiate-test (see below).
10885         * gst/gststructure.c: (_gst_structure_parse_value):
10886           Fix compile error on gcc-2.96.
10887         * configure.ac:
10888         * tests/Makefile.am:
10889         * tests/instantiate/Makefile.am:
10890         * tests/instantiate/create.c: (create_all_elements), (main):
10891           Add a test that instantiates all elements. This makes it easy to
10892           track dead code for old API/design (like setting event functions
10893           on sink pads and so on).
10894
10895 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
10896
10897         * gst/gstcaps.c: (gst_caps_append_structure):
10898           Move the poisoning to allow a NULL structure
10899         * gst/gstevent.c: (_gst_event_free):
10900           When freeing a navigation event, free the structure
10901           also
10902
10903 2004-01-04  David Schleef  <ds@schleef.org>
10904
10905         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10906         Remove usage of gst_pad_proxy_fixate.
10907         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
10908         (gst_caps_split_one), (gst_caps_replace):
10909         Add poisoning code.
10910         * gst/gstmarshal.list:
10911         Add pointer__pointer for fixate signal
10912         * gst/gstpad.c: (gst_real_pad_class_init),
10913         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10914         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
10915         (gst_pad_set_explicit_caps), (gst_pad_template_new):
10916         Add poisoning code. Add fixate signal on RealPad. Change
10917         set_explicit_caps() to take const GstCaps, like try_set_caps().
10918         * gst/gstpad.h:
10919         * testsuite/caps/Makefile.am:
10920         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
10921
10922 2004-01-03  David Schleef  <ds@schleef.org>
10923
10924         * gst/elements/gsttypefindelement.c:
10925         (gst_type_find_element_have_type), (gst_type_find_element_init):
10926         Use gst_pad_use_explicit_caps for src pad.
10927         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
10928         before using it.
10929
10930 2004-01-03  David Schleef  <ds@schleef.org>
10931
10932         * gst/gstelement.c: (gst_element_link_pads_filtered),
10933         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
10934         that linking was successful.
10935         * gst/gstpad.c: (gst_pad_link_free),
10936         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
10937         (gst_pad_link_try), (gst_pad_link_unnegotiate),
10938         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
10939         GstPadLinkReturn correctly between functions, and don't fail
10940         when DELAYED is used (DELAYED is very important).  Better
10941         cleanup on unlinking and unnegotiation.  Should fix some spider
10942         bugs.
10943
10944 2004-01-02  David Schleef  <ds@schleef.org>
10945
10946         * gst/gstelement.c: (gst_element_class_init),
10947         (gst_element_base_class_init): ->padtemplates should be cleared
10948         in base_init, since we need to have a fresh list for every
10949         class.  (Alternately, we chould copy the list and share the
10950         actual pad templates (not the list), but that would require
10951         changing every plugin to move pad template registration from
10952         base_init to class_init.)
10953
10954 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10955
10956         * gst/gstelement.c: (gst_element_class_add_pad_template):
10957           Refuse registering a pad template if another pad template
10958           with the same name already exists (#114715).
10959
10960 2004-01-02  David Schleef  <ds@schleef.org>
10961
10962         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
10963         (gst_caps_is_equal_fixed): Add new function.
10964         * gst/gstcaps.h: ditto.
10965         * gst/gstpad.c: (gst_real_pad_class_init),
10966         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
10967         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
10968         check new caps against existing caps -- if they're the same, return
10969         OK without renegotiating.  caps-nego-failed signal fixed so that
10970         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
10971         to save an extra caps copy.  Don't complete negotiation if a pad
10972         link function returns DELAYED.
10973
10974 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10975
10976         * gst/gstpad.c: (gst_pad_try_relink_filtered):
10977           Fix wrong g_return_if_fail
10978
10979 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
10980
10981         * gst/gstbin.c: (gst_bin_class_init):
10982         Change the marshalling of element_added/element_removed
10983         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
10984         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
10985
10986 2004-01-01  David Schleef  <ds@schleef.org>
10987
10988         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10989         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
10990         (gst_pad_use_explicit_caps):
10991         * gst/gstpad.h:
10992         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
10993         to use an internal getcaps and link fuction so that negotiation
10994         always results in the explicitly set caps.
10995         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
10996         are particularly useful for decoders.
10997
10998 2003-12-31  David Schleef  <ds@schleef.org>
10999
11000         * gst/elements/gstidentity.c: (gst_identity_class_init),
11001         (gst_identity_init), (gst_identity_chain),
11002         (gst_identity_set_property), (gst_identity_get_property):
11003         * gst/elements/gstidentity.h:
11004         * gst/gstqueue.c: (gst_queue_init):
11005           Negotiation fixes.
11006
11007 2003-12-31  David Schleef  <ds@schleef.org>
11008
11009         * gst/gstcaps.c: (gst_caps_intersect),
11010         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11011           Implement gst_caps_normalize().
11012         * testsuite/caps/normalisation.c: (main):
11013           Add an additional test
11014
11015 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11016
11017         * gst/gstqueue.c: (gst_queue_init):
11018           use gst_pad_proxy_getcaps()
11019
11020 2003-12-31  David Schleef  <ds@schleef.org>
11021
11022         * gst/elements/gstshaper.c: (gst_shaper_link):
11023         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11024         * gst/gstqueue.c: (gst_queue_link):
11025           Negotiation fixes.
11026
11027 2003-12-31  David Schleef  <ds@schleef.org>
11028
11029         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11030         * gst/gstpad.h: Add functions that are useful as default pad
11031         link and fixate functions for elements.
11032
11033 2003-12-30  David Schleef  <ds@schleef.org>
11034
11035         * gst/gstpad.c: (gst_pad_link_try):
11036           Fix segfault when attempting to return to old caps
11037
11038 2003-12-29  David Schleef  <ds@schleef.org>
11039
11040         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11041         (gst_caps_structure_simplify), (gst_caps_simplify):
11042         * gst/gstcaps.h:
11043           Add simplify function
11044         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11045         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11046         * gst/gstpad.h:
11047           Copy over srcnotify, sinknotify when calling old pad_link
11048           functions.  Add new is_negotiated() function.
11049         * gst/gststructure.c: (gst_structure_copy):
11050           Fix an incredibly stupid bug that should have been noticed
11051           weeks ago.  _copy() returned the argument, not the new copy.
11052
11053 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11054
11055         * gst/gstcaps.c: (gst_caps_append):
11056           add sanity checks
11057         * gst/gstcaps.h: (gst_caps_debug):
11058           remove, it doesn't exist anymore.
11059         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11060         (gst_element_threadsafe_properties_post_run):
11061           make debugging messages not clutter up THREAD debug category
11062         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11063         (gst_element_change_state):
11064           update to new caps API
11065         * gst/gstinterface.c: (gst_implements_interface_cast):
11066           don't put vital code in g_return_if_fail
11067         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11068         (gst_pad_link_filtered):
11069           add pst_pad_try_link and use it.
11070         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11071           implement correctly, deprecate first one.
11072         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11073           add and implement.
11074         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11075           implement.
11076         (gst_pad_get_negotiated_caps):
11077           add and implement. Make GST_PAD_CAPS call this function.
11078         (gst_pad_get_caps):
11079           remove unneeded check..
11080         (gst_pad_recover_caps_error):
11081           disable, always return FALSE.
11082         (gst_real_pad_dispose):
11083           don't free caps and appfilter anymore, they're unused.
11084         * gst/gstpad.h:
11085           Reflect changes mentioned above.
11086         * gst/gstsystemclock.c: (gst_system_clock_wait):
11087           Make 'clock is way behind' a debugging message.
11088         * gst/gstthread.c: (gst_thread_change_state):
11089           Fix debugging message
11090
11091 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11092
11093         * gst/gstinfo.h:
11094           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11095         * docs/gst/tmpl/gstreamer-unused.sgml:
11096           removed all traces of cvs conflicts
11097
11098 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11099
11100         * configure.ac:
11101         * gst/schedulers/cothreads_compat.h:
11102         * libs/Makefile.am:
11103           remove last instances of wingo cothread usage
11104
11105 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11106
11107         * gst/gstplugin.c:
11108         * gst/gstversion.h.in:
11109         * gst/parse/grammar.y:
11110           change comment block from /** to /* when not gtk-doc comments
11111
11112 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11113
11114         * gst/gst.c: whitespace and doc style fixes
11115
11116 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11117
11118         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11119
11120 2003-12-24  Colin Walters  <walters@verbum.org>
11121
11122         * gst/elements/gsttypefindelement.c:
11123           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11124           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11125           Don't double-free caps.
11126
11127 2003-12-23  David Schleef  <ds@schleef.org>
11128
11129         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11130           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11131           Many little fixes and additions of debug statements to
11132           get rhythmbox working.
11133
11134 2003-12-23  Colin Walters  <walters@verbum.org>
11135
11136         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11137         Use GST_PAD_LINK_SUCCESSFUL.
11138
11139 2003-12-23  David Schleef  <ds@schleef.org>
11140
11141         * gst/elements/gstaggregator.c:
11142         * gst/elements/gsttee.c:
11143           Use gst_pad_proxy_getcaps().
11144         * gst/gstpad.c:
11145         * gst/gstpad.h:
11146           Add gst_pad_proxy_getcaps(), which filter elements can use
11147           as a generic getcaps implementation.
11148           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11149           was advertised.
11150
11151 2003-12-23  David Schleef  <ds@schleef.org>
11152
11153         * gst/gstpad.c:
11154           Rearrange/rewrite much of the pad negotiation code, since it
11155           resembled pasta.  This actually changes the way some
11156           negotiation works, since the previous code was inconsistent
11157           depending on how it was invoked.  Add (internal) structure
11158           GstPadLink, which is used to hold some information (more in
11159           the future) about the link between two pads.  Fixes a number
11160           of bugs, including random lossage of filter caps when the
11161           initial negotiation is delayed.  A few functions are still
11162           unimplemented.
11163         * gst/gstpad.h:
11164           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11165           these when testing GstPadLinkReturn values instead of comparing
11166           directly.
11167
11168 2003-12-23  David Schleef  <ds@schleef.org>
11169
11170         * gst/gstvalue.c: 
11171         * gst/gstvalue.h:
11172           Rearrange lots of code.  Change registration of compare function
11173           into registration of compare/serialize/deserialize functions.
11174           Doesn't include implementation of gst_value_[de]serialize(),
11175           but that should be easy.
11176
11177 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11178
11179         * docs/gst/gstreamer-sections.txt:
11180         * docs/gst/tmpl/gstprops.sgml: removed
11181         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11182           David removed props and caps code, so let's remove their docs as well.
11183           Removed all no longer existing symbols from gstreamer-sections.txt
11184           
11185 2003-12-22  Colin Walters  <walters@verbum.org>
11186
11187         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11188           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11189           of tags directly.
11190
11191 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11192
11193         * gst/elements/gstelements.c:
11194           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11195         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11196           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11197           gst_caps (peer).
11198
11199 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11200
11201         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11202         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11203         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11204         (gst_spider_identity_sink_loop_type_finding):
11205         * gst/autoplug/gstspideridentity.h:
11206           Fix autoplugging in spider element, so it works with new caps.
11207           This was mainly caused by identifying empty caps incorrectly.
11208
11209 2003-12-22  David Schleef  <ds@schleef.org>
11210
11211         * gststructure.c, gstvalue.c, gstvalue.h: Add
11212           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11213           using g_value_copy()
11214
11215 2003-12-21  David Schleef  <ds@schleef.org>
11216
11217         * many, many files: Merge CAPS branch.  This includes:
11218           - implemention of GstValue and several GstValue types
11219           - implemention of GstStructure
11220           - entire rewrite of GstCaps
11221           - removal of GstProps
11222           - many changes to GstPad to compensate for new caps paradigm
11223           - removal of GstBufferpool
11224         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11225         gstvalue.h, gst/gstcaps[2]*.[ch]:
11226           - rename gstcaps2.[ch] to gstcaps.[ch]
11227
11228 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11229
11230         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11231         (gst_queue_chain), (gst_queue_handle_src_event):
11232           implement timeout for sending events. Workaround for if the
11233           pipeline on this queue is not passing any data.
11234
11235 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11236                                                                                 
11237         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11238         * moved CVS to freedesktop.org
11239