add a GstBuffer unit test
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2
3         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
4           add a testsuite for GstBuffer
5
6 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7
8         * gst/gstminiobject.h:
9           add defines for accessing the refcount
10
11 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
12
13         * Makefile.am: added support for html unit test coverage reports
14
15 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
16
17         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
18           Free existing caps if the capsfilter changes. Add a FIXME about
19           setting those caps on the pads.
20
21         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
22           Before adding a ghost pad to a parent bin, check that there isn't
23           already one for the element on the bin. Prevents infinite recursion
24           when using decodebin in parse pipelines. Andy says he'll rewrite the
25           way this works anyway, so ignore the hack.
26
27 2005-06-02  Andy Wingo  <wingo@pobox.com>
28
29         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
30         file size, pass it on to the type find helper.
31
32         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
33         segment_start and segment_end properly according to the seek
34         method. Segment_end is still a bit flaky because offset can be
35         negative for CUR and END cases, but it takes -1 as an "unset"
36         value.
37
38 2005-06-02  Wim Taymans  <wim@fluendo.com>
39
40         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
41         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
42         (gst_basesink_activate):
43         * gst/base/gstbasesink.h:
44         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
45         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
46         (gst_pad_query), (gst_pad_start_task):
47         * gst/gstpad.h:
48         * gst/gstqueue.c: (gst_queue_bufferalloc),
49         (gst_queue_handle_sink_event), (gst_queue_chain):
50         Bufferalloc: return GstFlowReturn to more accuratly report
51         why allocation failed.
52
53 2005-06-02  Wim Taymans  <wim@fluendo.com>
54
55         * gst/gstpipeline.c: (gst_pipeline_send_event):
56         Take snapshot of state without blocking.
57
58 2005-06-02  Wim Taymans  <wim@fluendo.com>
59
60         * docs/design/part-TODO.txt:
61         * docs/design/part-caps.txt:
62         * docs/design/part-clocks.txt:
63         * docs/design/part-negotiation.txt:
64         * docs/design/part-preroll.txt:
65         Small doc updates 
66
67 2005-05-30  Wim Taymans  <wim@fluendo.com>
68
69         * gst/elements/gstidentity.c: (gst_identity_event),
70         (gst_identity_transform), (gst_identity_get_property):
71         Protect last_message property as it is accessed from
72         multiple threads.
73
74 2005-05-30  Wim Taymans  <wim@fluendo.com>
75
76         * gst/gstelement.c: (gst_element_init),
77         (gst_element_pads_activate), (gst_element_change_state):
78         Slicker pad activation code.
79
80 2005-05-30  Wim Taymans  <wim@fluendo.com>
81
82         * gst/Makefile.am:
83         * gst/gstelement.h:
84         * gst/gstelementfactory.h:
85         * gst/gsttypes.h:
86         Move elementfactory methods to separate .h file.
87
88 2005-05-30  Wim Taymans  <wim@fluendo.com>
89
90         * docs/design/part-overview.txt:
91         * gst/gstsystemclock.h:
92         Small typo fixes, doc updates.
93
94 2005-05-30  Wim Taymans  <wim@fluendo.com>
95
96         * gst/gst.c: (gst_init_get_popt_table), (init_post),
97         (init_popt_callback):
98         Remove cpu-opt flag.
99
100 2005-05-30  Wim Taymans  <wim@fluendo.com>
101
102         * gst/gstbuffer.c: (gst_subbuffer_finalize),
103         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
104         * gst/gstbuffer.h:
105         Avoid typechecking in places where not needed.
106         Added accessor for malloc_data.
107
108 2005-05-30  Wim Taymans  <wim@fluendo.com>
109
110         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
111         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
112         (gst_pad_configure_sink), (gst_pad_configure_src),
113         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
114         (gst_pad_start_task):
115         Propagate errors from _set_caps() in configure_src/sink
116         functions instead of returning TRUE.
117         FLUSH events can travel up and downstream
118
119
120 2005-05-30  Wim Taymans  <wim@fluendo.com>
121
122         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
123         (gst_basesink_activate):
124         Handle EOS in preroll.
125
126 2005-05-30  Wim Taymans  <wim@fluendo.com>
127
128         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
129         (gst_queue_loop), (gst_queue_handle_src_event):
130         Remove old pieces of code
131         Flushing the queue in an upstream event is a very bad idea.
132
133 2005-05-26  Andy Wingo  <wingo@pobox.com>
134
135         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
136         gst_value_set_mini_object so as to add a ref on the object (which
137         will be removed when the value is unset).
138
139         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
140         arg type in ::handoff.
141
142         * gst/gstelement.c (gst_element_change_state): Also deactivate
143         pads in READY->NULL, just in case the element didn't make it to
144         PAUSED. Wingo tested, Wim approved.
145
146 2005-05-26  Wim Taymans  <wim@fluendo.com>
147
148         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
149         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
150         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
151         A flushing pad cannot be used to alloc_buffer from.
152
153 2005-05-26  Wim Taymans  <wim@fluendo.com>
154
155         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
156         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
157         (gst_bus_source_dispatch), (gst_bus_source_finalize),
158         (gst_bus_create_watch), (gst_bus_add_watch_full):
159         * gst/gstbus.h:
160         Implement a real GSource and use g_main_context_wakeup() to
161         signal new messages instead of the socketpair.
162
163 2005-05-25  Wim Taymans  <wim@fluendo.com>
164
165         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
166         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
167         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
168         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
169         (gst_pad_send_event), (gst_pad_start_task):
170         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
171         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
172         (gst_queue_sink_activate), (gst_queue_src_activate),
173         (gst_queue_change_state):
174         * gst/gstqueue.h:
175         Fix state changes for non sinks. We now change sinks, then elements
176         with unconnected srcpads, then the rest.
177         More efficient queue unlocking in flush and state changes.
178         Set the pad activate mode even if it does not have an activate
179         function.
180
181 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
182
183         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
184           Don't go in pull mode for non-seekable sources.
185         * gst/elements/gsttypefindelement.h:
186         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
187         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
188         (free_entry), (stop_typefinding),
189         (gst_type_find_element_handle_event), (find_peek),
190         (gst_type_find_element_chain), (do_pull_typefind),
191         (gst_type_find_element_change_state):
192           Allow typefinding (w/o seeking) in push-mode, simplified version
193           of what was in 0.8.
194         * gst/gstutils.c: (gst_buffer_join):
195         * gst/gstutils.h:
196           gst_buffer_join() from 0.8.
197
198 2005-05-25  Wim Taymans  <wim@fluendo.com>
199
200         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
201         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
202         (gst_pad_send_event), (gst_pad_start_task):
203         Disable attempt at mode switching until it is figured out.
204
205 2005-05-25  Wim Taymans  <wim@fluendo.com>
206
207         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
208         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
209         (gst_basesink_finish_preroll), (gst_basesink_chain),
210         (gst_basesink_loop), (gst_basesink_activate),
211         (gst_basesink_change_state):
212         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
213         (gst_basesrc_get_range), (gst_basesrc_loop),
214         (gst_basesrc_activate):
215         * gst/elements/gsttee.c: (gst_tee_sink_activate):
216         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
217         (gst_real_pad_init), (gst_real_pad_set_property),
218         (gst_real_pad_get_property), (gst_pad_set_active),
219         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
220         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
221         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
222         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
223         (gst_pad_event_default_dispatch), (gst_pad_event_default),
224         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
225         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
226         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
227         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
228         (gst_pad_stop_task):
229         * gst/gstpad.h:
230         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
231         (gst_queue_loop), (gst_queue_src_activate):
232         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
233         (gst_task_get_state):
234         * gst/gsttask.h:
235         * gst/schedulers/threadscheduler.c:
236         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
237         Implement gst_pad_pause/start/stop_task(), take STREAM lock
238         in task function.
239         Remove ACTIVE pad flag, use FLUSHING everywhere
240         Added _pad_chain(), _pad_get_range() to call chain/getrange 
241         functions.
242         Add locks around IS_FLUSHING when reading.
243         Take STREAM lock in chain(), get_range() functions so plugins
244         don't need to take it anymore.
245         
246
247
248 2005-05-25  Wim Taymans  <wim@fluendo.com>
249
250         * tools/gst-launch.c: (event_loop):
251         Unref message after using its contents instead of
252         before.
253
254 2005-05-24  Wim Taymans  <wim@fluendo.com>
255
256         * docs/design/draft-ghostpads.txt:
257         * docs/design/draft-push-pull.txt:
258         * docs/design/draft-query.txt:
259         * docs/design/part-overview.txt:
260         Docs updates, added general overview doc.
261
262 2005-05-21  David Schleef  <ds@schleef.org>
263
264         * docs/gst/tmpl/old/GstBin.sgml:
265         * docs/gst/tmpl/old/GstBuffer.sgml:
266         * docs/gst/tmpl/old/GstCaps.sgml:
267         * docs/gst/tmpl/old/GstClock.sgml:
268         * docs/gst/tmpl/old/GstCompat.sgml:
269         * docs/gst/tmpl/old/GstData.sgml:
270         * docs/gst/tmpl/old/GstElement.sgml:
271         * docs/gst/tmpl/old/GstEvent.sgml:
272         * docs/gst/tmpl/old/GstIndex.sgml:
273         * docs/gst/tmpl/old/GstStructure.sgml:
274         * docs/gst/tmpl/old/GstTag.sgml:
275         * docs/gst/tmpl/old/cothreads.sgml:
276         * docs/gst/tmpl/old/cothreads_compat.sgml:
277         * docs/gst/tmpl/old/gettext.sgml:
278         * docs/gst/tmpl/old/gobject2gtk.sgml:
279         * docs/gst/tmpl/old/grammar.tab.sgml:
280         * docs/gst/tmpl/old/gst-i18n-app.sgml:
281         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
282         * docs/gst/tmpl/old/gst_private.sgml:
283         * docs/gst/tmpl/old/gstaggregator.sgml:
284         * docs/gst/tmpl/old/gstarch.sgml:
285         * docs/gst/tmpl/old/gstatomic_impl.sgml:
286         * docs/gst/tmpl/old/gstbufferstore.sgml:
287         * docs/gst/tmpl/old/gstdata_private.sgml:
288         * docs/gst/tmpl/old/gstdisksink.sgml:
289         * docs/gst/tmpl/old/gstdisksrc.sgml:
290         * docs/gst/tmpl/old/gstelementfactory.sgml:
291         * docs/gst/tmpl/old/gstextratypes.sgml:
292         * docs/gst/tmpl/old/gstfakesink.sgml:
293         * docs/gst/tmpl/old/gstfakesrc.sgml:
294         * docs/gst/tmpl/old/gstfdsink.sgml:
295         * docs/gst/tmpl/old/gstfdsrc.sgml:
296         * docs/gst/tmpl/old/gstfilesink.sgml:
297         * docs/gst/tmpl/old/gstfilesrc.sgml:
298         * docs/gst/tmpl/old/gsthttpsrc.sgml:
299         * docs/gst/tmpl/old/gstidentity.sgml:
300         * docs/gst/tmpl/old/gstindexfactory.sgml:
301         * docs/gst/tmpl/old/gstmarshal.sgml:
302         * docs/gst/tmpl/old/gstmd5sink.sgml:
303         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
304         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
305         * docs/gst/tmpl/old/gstpadtemplate.sgml:
306         * docs/gst/tmpl/old/gstpipefilter.sgml:
307         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
308         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
309         * docs/gst/tmpl/old/gstshaper.sgml:
310         * docs/gst/tmpl/old/gstspider.sgml:
311         * docs/gst/tmpl/old/gstspideridentity.sgml:
312         * docs/gst/tmpl/old/gststatistics.sgml:
313         * docs/gst/tmpl/old/gsttee.sgml:
314         * docs/gst/tmpl/old/gsttimecache.sgml:
315         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
316         * docs/gst/tmpl/old/gstxmlregistry.sgml:
317         * docs/gst/tmpl/old/gthread-cothreads.sgml:
318         * docs/gst/tmpl/old/types.sgml:
319           I didn't intend to add these or check them in.
320
321 2005-05-19  David Schleef  <ds@schleef.org>
322
323         * configure.ac: Use -no-common everywhere.  In a sane world, it
324           would be the default in libtool, because without it, you can't
325           build DLLs on Windows.
326         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
327         * docs/gst/gstreamer-sections.txt:
328         * docs/gst/tmpl/gstcpu.sgml:
329         * docs/gst/tmpl/gstdata.sgml:
330         * docs/gst/tmpl/gstthread.sgml:
331
332 2005-05-19  David Schleef  <ds@schleef.org>
333
334         * gst/gstminiobject.c: (gst_value_set_mini_object),
335         (gst_value_take_mini_object), (gst_value_get_mini_object):
336         * gst/gstminiobject.h: Add GValue set/get functions.
337
338 2005-05-19  Wim Taymans  <wim@fluendo.com>
339
340         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
341         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
342         (gst_subbuffer_init), (gst_buffer_is_span_fast):
343         * gst/gstbuffer.h:
344         * gst/gstbus.c: (gst_bus_post):
345         * gst/gstelement.c: (gst_element_get_random_pad):
346         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
347         Make subbufer unref the parent in finalize.
348         some more debugging info.
349
350
351 2005-05-19  Wim Taymans  <wim@fluendo.com>
352
353         * gst/base/gstbasesink.c: (gst_basesink_class_init),
354         (gst_basesink_init), (gst_basesink_finalize),
355         (gst_basesink_activate), (gst_basesink_change_state):
356         Don't free preroll queue too early.
357
358 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
359
360         * gst/Makefile.am:
361         * gst/ROADMAP:
362           Hi, I'm outdated. Please shoot me.
363
364 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
365
366         * gst/gstpipeline.c: (gst_pipeline_send_event):
367           Do not access variables after they have been deleted.
368
369 2005-05-19  Wim Taymans  <wim@fluendo.com>
370
371         * tools/gst-inspect.c: (print_plugin_features):
372         A plugin feature does unfortunatly not use the
373         object name yet...
374
375 2005-05-18  Wim Taymans  <wim@fluendo.com>
376
377         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
378         Port _span() functions to new subbuffers.
379
380 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
381
382         * gst/gstbin.c: (gst_bin_add_func):
383           Fix clock settery in bins when adding kids after the clock has
384           been selected.
385
386 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
387
388         * gst/elements/gstidentity.c: (gst_identity_class_init):
389           Workaround until signals support GstMiniObject.
390
391 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
392
393         * gst/gstbuffer.c:
394         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
395
396 2005-05-18  Wim Taymans  <wim@fluendo.com>
397
398         * gst/base/Makefile.am:
399         * gst/base/gstadapter.c: (gst_adapter_base_init),
400         (gst_adapter_class_init), (gst_adapter_init),
401         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
402         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
403         (gst_adapter_flush), (gst_adapter_available),
404         (gst_adapter_available_fast):
405         * gst/base/gstadapter.h:
406         Ported and added adapter to the base classes.
407
408 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
409
410         * gst/gst.c:
411         * gst/gstmessage.c:
412           Make sure the class is reffed/unreffed once before threads can be
413           used.  Fixes #304551.
414
415 2005-05-17  Wim Taymans  <wim@fluendo.com>
416
417         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
418         (gst_basesink_chain_unlocked), (gst_basesink_activate):
419         * gst/gstminiobject.c: (gst_mini_object_get_type),
420         (gst_mini_object_free):
421         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
422         (gst_pad_push), (gst_pad_push_event):
423         * gst/gstqueue.c: (gst_queue_change_state):
424         Don't queue buffers in basesink when we are flushing.
425         Unref buffer when flushing in basesink.
426         Flush queue when going to READY
427         Unref buffer when _push() returns an error.
428         Don't free MiniObject instance when refcount is incremented
429         in _finalize() so that we can recover objects.
430
431 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
432
433         * docs/manual/advanced-schedulers.xml:
434         * docs/manual/appendix-checklist.xml:
435         * docs/pwg/advanced-clock.xml:
436         * docs/pwg/advanced-interfaces.xml:
437         * docs/pwg/advanced-request.xml:
438         * docs/pwg/advanced-types.xml:
439         * docs/pwg/intro-preface.xml:
440         * examples/plugins/example.c: (gst_example_get_type),
441         (gst_example_class_init), (gst_example_chain),
442         (gst_example_set_property), (gst_example_get_property),
443         (gst_example_change_state), (plugin_init):
444         * examples/plugins/example.h:
445           small doc fixes
446
447 2005-05-17  Wim Taymans  <wim@fluendo.com>
448
449         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
450         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
451         * gst/gstqueue.c: (gst_queue_change_state):
452         Clear queue when going to READY.
453         Remove IN_SETCAPS flag too.
454
455 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
456
457         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
458           Remove implicit cast from gboolean to GstElementStateReturn;
459           make sure we still return failure in paused => ready case if
460           the parent class fails to change state and our own stop 
461           vfunc succeeds.
462
463 2005-05-17  Wim Taymans  <wim@fluendo.com>
464
465         * tools/gst-launch.c: (event_loop):
466         Message was unreffed too soon.
467
468 2005-05-16  Andy Wingo  <wingo@pobox.com>
469
470         * gst/gstbin.c (sink_iterator_filter): Err... um...
471
472         * check/gst/gstbin.c (test_ghost_pads): New test for the
473         ghosting-if-elements-not-in-same-bin behavior.
474
475 2005-05-16  David Schleef  <ds@schleef.org>
476
477         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
478         accessing refcount directly.
479
480 2005-05-15  David Schleef  <ds@schleef.org>
481
482         * check/Makefile.am: remove GstData checks
483         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
484         * gst/Makefile.am: add miniobject, remove data
485         * gst/gst.h: add miniobject, remove data
486         * gst/gstdata.c: remove
487         * gst/gstdata.h: remove
488         * gst/gstdata_private.h: remove
489         * gst/gsttypes.h: remove GstEvent and GstMessage
490         * gst/gstelement.c: (gst_element_post_message): fix for API changes
491         * gst/gstmarshal.list: change BOXED -> OBJECT
492
493         Implement GstMiniObject.
494         * gst/gstminiobject.c:
495         * gst/gstminiobject.h:
496
497         Modify to be subclasses of GstMiniObject.
498         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
499         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
500         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
501         (gst_subbuffer_get_type), (gst_subbuffer_init),
502         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
503         (gst_buffer_span):
504         * gst/gstbuffer.h:
505         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
506         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
507         (_gst_event_copy), (gst_event_new):
508         * gst/gstevent.h:
509         * gst/gstmessage.c: (_gst_message_initialize),
510         (gst_message_get_type), (gst_message_class_init),
511         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
512         (gst_message_new), (gst_message_new_error),
513         (gst_message_new_warning), (gst_message_new_tag),
514         (gst_message_new_state_changed), (gst_message_new_application):
515         * gst/gstmessage.h:
516         * gst/gstprobe.c: (gst_probe_perform),
517         (gst_probe_dispatcher_dispatch):
518         * gst/gstprobe.h:
519         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
520         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
521         (_gst_query_copy), (gst_query_new):
522
523         Update elements for GstData -> GstMiniObject changes
524         * gst/gstquery.h:
525         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
526         (gst_queue_chain), (gst_queue_loop):
527         * gst/elements/gstbufferstore.c:
528         (gst_buffer_store_add_buffer_func),
529         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
530         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
531         (gst_fakesink_render):
532         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
533         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
534         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
535         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
536         (gst_filesrc_create_read):
537         * gst/elements/gstidentity.c: (gst_identity_class_init):
538         * gst/elements/gsttypefindelement.c:
539         (gst_type_find_element_src_event), (free_entry_buffers),
540         (gst_type_find_element_handle_event):
541         * libs/gst/dataprotocol/dataprotocol.c:
542         (gst_dp_header_from_buffer):
543         * libs/gst/dataprotocol/dataprotocol.h:
544         * libs/gst/dataprotocol/dp-private.h:
545
546 2005-05-15  David Schleef  <ds@schleef.org>
547
548         * gst/elements/gstelements.c: Don't include headers that were
549         just removed.
550
551 2005-05-15  David Schleef  <ds@schleef.org>
552
553         * gst/elements/Makefile.am: Remove some elements that don't
554         need to be in the core (or even exist at all).
555         * gst/elements/gstaggregator.c:
556         * gst/elements/gstaggregator.h:
557         * gst/elements/gstmd5sink.c:
558         * gst/elements/gstmd5sink.h:
559         * gst/elements/gstmultifilesrc.c:
560         * gst/elements/gstmultifilesrc.h:
561         * gst/elements/gstpipefilter.c:
562         * gst/elements/gstpipefilter.h:
563         * gst/elements/gstshaper.c:
564         * gst/elements/gstshaper.h:
565         * gst/elements/gststatistics.c:
566         * gst/elements/gststatistics.h:
567         * po/POTFILES.in: Remove above files.
568
569 2005-05-14  Andy Wingo  <wingo@pobox.com>
570
571         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
572         so as to get the refs right.
573         (sink_iterator_filter): New function, wraps bin_element_is_sink,
574         unreffing objects that don't pass the filter.
575
576         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
577         gst_element_set_bus.
578         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
579         normal cases, this will destroy the bus.
580
581         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
582         object.
583
584         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
585         has no sinks.
586
587 2005-05-13  Andy Wingo  <wingo@pobox.com>
588
589         * gst/gstutils.c (gst_element_link_pads): Instead of calling
590         gst_pad_link, call pad_link_maybe_ghosting,
591         (pad_link_maybe_ghosting): Links pads, making sure that the
592         elements being linked are in the same bin.
593         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
594         Helpers for pad_link_maybe_ghosting.
595
596 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
597
598         * configure.ac:
599           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
600
601 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
602
603         * docs/design/part-element-source.txt:
604           Mention GstPushSrc
605
606 2005-05-12  Wim Taymans  <wim@fluendo.com>
607
608         * gst/base/gstbasesink.c: (gst_basesink_init),
609         (gst_basesink_activate):
610         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
611         (gst_basesrc_is_seekable):
612         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
613         (bin_element_is_sink), (gst_bin_change_state):
614         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
615         * gst/gstelement.h:
616         Identify sinks by their flag to avoid overly complicated
617         checks (fow now).
618         Do state changes even for elements not reachable from the
619         sinks.
620         BaseSink is a sink now :)
621         Some more debugging info in the basesrc.
622
623
624 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
625
626         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
627           Implement _query on a bin, similar to _send_event.
628
629 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
630
631         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
632           Discont event offset format should be GST_FORMAT_BYTES,
633           not GST_FORMAT_TIME.
634
635 2005-05-12  Wim Taymans  <wim@fluendo.com>
636
637         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
638         Same fix as Ronald's but without the signal. 
639
640 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
641
642         * gst/gstutils.c: (gst_element_query_position):
643           No, an element is not a pad.
644
645 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
646
647         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
648         (gst_bin_get_state):
649           If a child is removed from a bin while we remove the child from
650           the bin and while we're retrieving its state, signal this to the
651           get_state function so we abort the wait (instead of waiting for
652           a timeout) and can immediately re-iterate over all other elements.
653
654 2005-05-12  Wim Taymans  <wim@fluendo.com>
655
656         * gst/base/Makefile.am:
657         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
658         (gst_basesrc_start):
659         * gst/base/gstbasesrc.h:
660         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
661         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
662         (gst_pushsrc_init), (gst_pushsrc_create):
663         * gst/base/gstpushsrc.h:
664         Added is_seekable to BaseSrc
665         Added simple PushSrc.
666
667 2005-05-11  Wim Taymans  <wim@fluendo.com>
668
669         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
670         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
671         (gst_element_link_pads), (gst_element_query_position),
672         (gst_element_query_convert), (intersect_caps_func),
673         (gst_pad_query_position), (gst_pad_query_convert):
674         Fix refcounting in utils function.
675         No point in trying to activate a pad when it's added, it could
676         be added from the state change function and then we deadlock, the
677         element has to decide what to do.
678
679 2005-05-10  Andy Wingo  <wingo@pobox.com>
680
681         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
682         *all* the arguments.
683
684         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
685         stream lock if it's a FLUSH_DONE; normal flushes don't get the
686         lock (according to the docs -- if this is wrong change the docs).
687
688         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
689         flush messages in the NULL state.
690
691         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
692         message immediately and return.
693         (gst_bus_set_flushing): New function. If a bus is flushing, it
694         flushes out any queued messages and immediately unrefs new
695         messages. This is so when an element goes to NULL, all of the
696         unhandled messages coming from it can be freed, and their
697         references to the element dropped. In other words: message source
698         ref considered harmful :P
699
700         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
701         we're finished with it.
702
703         * gst/gstmessage.c (gst_message_new_state_changed): 
704
705 2005-05-10  Wim Taymans  <wim@fluendo.com>
706
707         * gst/gstvalue.c: (gst_value_compare_flags),
708         (gst_value_serialize_flags), (gst_value_deserialize_flags),
709         (_gst_value_initialize):
710         Added flags serialize/deserialize/compare code.
711
712 2005-05-09  Andy Wingo  <wingo@pobox.com>
713
714         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
715         Intersect the peer's caps with our caps.
716
717 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
718
719         * gst/base/gsttypefindhelper.c: (helper_find_peek):
720         * gst/elements/gsttypefindelement.c: (find_peek):
721           Handle negative offsets better. Fixes decodebin.
722
723 2005-05-09  Wim Taymans  <wim@fluendo.com>
724
725         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
726         (gst_base_transform_event):
727         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
728         Implement accept_caps.
729         Fix silly lock/unlock mismatch in base class.
730
731 2005-05-09  Wim Taymans  <wim@fluendo.com>
732
733         * docs/design/draft-push-pull.txt:
734         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
735         * gst/elements/gstfilesink.c: (gst_filesink_init),
736         (gst_filesink_query):
737         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
738         (gst_type_find_handle_src_query), (find_element_get_length):
739         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
740         * gst/gstelement.h:
741         * gst/gstmessage.c:
742         * gst/gstmessage.h:
743         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
744         (gst_real_pad_get_caps_unlocked),
745         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
746         (gst_pad_event_default_dispatch), (gst_pad_event_default),
747         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
748         (gst_real_pad_dispose), (gst_real_pad_finalize),
749         (gst_pad_load_and_link), (gst_pad_save_thyself),
750         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
751         (gst_pad_check_pull_range), (gst_pad_pull_range),
752         (gst_pad_template_get_type), (gst_pad_template_class_init),
753         (gst_pad_template_init), (gst_pad_template_dispose),
754         (name_is_valid), (gst_static_pad_template_get),
755         (gst_pad_template_new), (gst_static_pad_template_get_caps),
756         (gst_pad_template_get_caps), (gst_pad_set_element_private),
757         (gst_pad_get_element_private), (gst_pad_start_task),
758         (gst_pad_pause_task), (gst_pad_stop_task),
759         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
760         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
761         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
762         (gst_ghost_pad_new):
763         * gst/gstpad.h:
764         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
765         (gst_query_new_position), (gst_query_set_position),
766         (gst_query_parse_position), (gst_query_new_convert),
767         (gst_query_set_convert), (gst_query_parse_convert):
768         * gst/gstquery.h:
769         * gst/gstqueryutils.c:
770         * gst/gstqueryutils.h:
771         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
772         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
773         (gst_queue_handle_src_query):
774         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
775         (gst_element_query_position), (gst_element_query_convert),
776         (intersect_caps_func), (gst_pad_query_position),
777         (gst_pad_query_convert):
778         * gst/gstutils.h:
779         * tools/gst-inspect.c: (print_pad_info):
780         * tools/gst-xmlinspect.c: (print_element_info):
781         Remove old query functions. Ported old code.
782         Added position/convert helper functions to gstutils.
783         Reordered gstpad.c code, grouping relevant things.
784         Remove gst_message_new(), always need to speficy a specific
785         message.
786
787
788 2005-05-09  Andy Wingo  <wingo@pobox.com>
789
790         * gst/gstiterator.h: Add some includes.
791
792         * gst/gstqueryutils.h: Include more headers.
793
794         * gst/gstpad.h:
795         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
796         some uses of gst_pad_query.
797
798         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
799         NULL out parameters.
800         (gst_query_new_position): New proc, allocates a new position
801         query.
802
803         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
804         gstqueryutils.c to the build.
805
806         * gst/gststructure.c (gst_structure_set_valist): Implement with
807         the generic G_VALUE_COLLECT.
808         
809 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
810
811         * gst/Makefile.am: (gst_headers):
812         Added gstqueryutils.h to the list of headers to install, that was
813         a 'nachty' move wingo :)
814
815 2005-05-06  Andy Wingo  <wingo@pobox.com>
816
817         * gst/gstquery.h
818         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
819         GstData, init a memchunk.
820         (standard_definitions): Add a few query types, deprecate a few.
821         (gst_query_get_type): New proc.
822         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
823         implementation.
824         (gst_query_new_application, gst_query_get_structure): New public
825         procs.
826
827         * docs/design/draft-query.txt: Removed LINKS from the query types,
828         because all the rest can be dispatched to other pads -- seemed
829         ugly to have a query that couldn't be dispatched. internal_links
830         is fine as a pad method.
831
832         * gst/gstpad.h: Add query2 as a pad method, add the new functions
833         in gstpad.c, but maintain binary compatibility for the moment.
834         Will fix before 0.9 is out.
835
836         * gst/gstqueryutils.c: 
837         * gst/gstqueryutils.h: New files, implement 3 methods for each
838         query type: parse_query, parse_response, and set. Probably need an
839         allocator as well.
840
841         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
842
843         * gst/elements/gstfilesink.c (gst_filesink_query2):
844         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
845         query_types, and formats methods.
846
847         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
848         (gst_pad_set_query2_function): New functions.
849         (gst_real_pad_init): Set query2_default as the default query2
850         function. Basically just dispatches to internally linked pads.
851
852         Needs review!
853         
854         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
855         without using the atomic operations. Only one thread can possibly
856         be accessing the data at this point. Changed so as to avoid
857         gst_atomic operations.
858
859 2005-05-06  Wim Taymans  <wim@fluendo.com>
860
861         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
862         Also set caps if we use the fallback buffer alloc.
863
864 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
865
866         * docs/gst/Makefile.am:
867         * docs/gst/gstreamer-docs.sgml:
868         * docs/gst/gstreamer-sections.txt:
869         * docs/gst/tmpl/gstatomic.sgml:
870         * docs/gst/tmpl/gstmemchunk.sgml:
871         * testsuite/elements/struct_i386.h:
872         * win32/GStreamer.vcproj:
873         * win32/Makefile:
874           Purge GstAtomic stuff from docs and win32 makefiles as well
875
876 2005-05-06  Wim Taymans  <wim@fluendo.com>
877
878         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
879         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
880         * gst/gstpad.c: (gst_pad_peer_get_caps):
881         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
882         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
883         (gst_queue_src_activate), (gst_queue_change_state):
884         * gst/gstqueue.h:
885         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
886         (intersect_caps_func):
887         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
888         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
889         Some fixes for the peer_get_caps() change.
890
891 2005-05-06  Wim Taymans  <wim@fluendo.com>
892
893         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
894         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
895         (gst_basesink_activate):
896         Actually do something with error codes returned from the push
897         functions.
898
899 2005-05-06  Wim Taymans  <wim@fluendo.com>
900
901         * docs/design/part-element-sink.txt:
902         * docs/design/part-element-source.txt:
903         * gst/base/gstbasesink.c: (gst_basesink_class_init),
904         (gst_basesink_event), (gst_basesink_activate):
905         * gst/base/gstbasesink.h:
906         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
907         (gst_basesrc_activate):
908         * gst/base/gstbasesrc.h:
909         * gst/gstelement.c: (gst_element_pads_activate):
910         Some more documentation.
911         Fixed scheduling decision in _pads_activate().
912
913 2005-05-05  Andy Wingo  <wingo@pobox.com>
914
915         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
916         the test suite.
917
918 2005-05-05  Wim Taymans  <wim@fluendo.com>
919
920         * gst/base/Makefile.am:
921         * gst/base/gstbasesink.h:
922         * gst/base/gstbasesrc.c: (gst_basesrc_init),
923         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
924         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
925         (gst_collectpads_class_init), (gst_collectpads_init),
926         (gst_collectpads_finalize), (gst_collectpads_new),
927         (gst_collectpads_set_function), (gst_collectpads_add_pad),
928         (find_pad), (gst_collectpads_remove_pad),
929         (gst_collectpads_is_active), (gst_collectpads_collect),
930         (gst_collectpads_collect_range), (gst_collectpads_start),
931         (gst_collectpads_stop), (gst_collectpads_peek),
932         (gst_collectpads_pop), (gst_collectpads_available),
933         (gst_collectpads_read), (gst_collectpads_flush),
934         (gst_collectpads_chain):
935         * gst/base/gstcollectpads.h:
936         * gst/elements/Makefile.am:
937         * gst/elements/gstelements.c:
938         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
939         (gst_fakesink_get_times), (gst_fakesink_event),
940         (gst_fakesink_preroll), (gst_fakesink_render):
941         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
942         (gst_filesink_init), (gst_filesink_set_location),
943         (gst_filesink_open_file), (gst_filesink_close_file),
944         (gst_filesink_pad_query), (gst_filesink_event),
945         (gst_filesink_render), (gst_filesink_change_state):
946         * gst/elements/gstfilesink.h:
947         Added object to help in making collect pad based elements.
948         Ported filesink.
949         Make event function in sink baseclass return gboolean.
950
951 2005-05-05  Wim Taymans  <wim@fluendo.com>
952
953         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
954         (gst_bin_get_by_name):
955         * gst/gstbuffer.h:
956         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
957         (gst_clock_finalize):
958         * gst/gstdata.c: (gst_data_replace):
959         * gst/gstdata.h:
960         * gst/gstelement.c: (gst_element_request_pad),
961         (gst_element_pads_activate):
962         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
963         (gst_object_unref):
964         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
965         (gst_pad_set_checkgetrange_function),
966         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
967         (gst_pad_check_pull_range), (gst_pad_pull_range),
968         (gst_static_pad_template_get_caps), (gst_pad_start_task),
969         (gst_pad_pause_task), (gst_pad_stop_task):
970         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
971         (gst_element_request_pad), (gst_pad_proxy_getcaps):
972         Fix name lookup in GstBin.
973         Added _data_replace() function and _buffer_replace()
974         Use finalize method to clean up clock.
975         Fix refcounting on request pads.
976         Fix pad schedule mode error.
977         Some more object refcounting debug info,
978
979
980 2005-05-04  Andy Wingo <wingo@pobox.com>
981
982         * check/Makefile.am:
983         * docs/gst/tmpl/gstatomic.sgml:
984         * docs/gst/tmpl/gstplugin.sgml:
985         * gst/base/gstbasesink.c: (gst_basesink_activate):
986         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
987         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
988         (gst_basesrc_query), (gst_basesrc_set_property),
989         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
990         (gst_basesrc_activate):
991         * gst/base/gstbasesrc.h:
992         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
993         (gst_base_transform_src_activate):
994         * gst/elements/gstelements.c:
995         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
996         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
997         * gst/elements/gsttee.c: (gst_tee_sink_activate):
998         * gst/elements/gsttypefindelement.c: (find_element_get_length),
999         (gst_type_find_element_checkgetrange),
1000         (gst_type_find_element_activate):
1001         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1002         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1003         (gst_caps_load_thyself):
1004         * gst/gstelement.c: (gst_element_pads_activate),
1005         (gst_element_save_thyself), (gst_element_restore_thyself):
1006         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1007         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1008         * gst/gstpad.h:
1009         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1010         (gst_xml_parse_file), (gst_xml_parse_memory),
1011         (gst_xml_get_element), (gst_xml_make_element):
1012         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1013         (_file_index_id_save_xml), (gst_file_index_commit):
1014         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1015         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1016         (load_paths):
1017         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1018         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1019         * tools/gst-complete.c: (main):
1020         * tools/gst-compprep.c: (main):
1021         * tools/gst-inspect.c: (print_element_properties_info):
1022         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1023         * tools/gst-xmlinspect.c: (print_element_properties):
1024         GCC 4 fixen.
1025         
1026 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1027
1028         * gst/gstplugin.c: (gst_plugin_check_module),
1029         (gst_plugin_check_file), (gst_plugin_load_file):
1030             apply patch from #172526 to make register work on MacOSX
1031
1032 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1033
1034         * docs/gst/tmpl/gstconfig.sgml:
1035         * gst/gstconfig.h.in:
1036           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1037         * testsuite/debug/printf_extension.c: (main):
1038           Do not use GST_PTR_FORMAT on pointers to types with
1039           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1040         * testsuite/elements/property.h:
1041           use correct printf format
1042
1043 2005-05-02  Wim Taymans  <wim@fluendo.com>
1044
1045         * docs/design/draft-push-pull.txt:
1046         * docs/design/draft-query.txt:
1047         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1048         (gst_basesrc_start):
1049         Added draft for new query API.
1050         Added draft for better selecting scheduling methods.
1051         Make basesrc ignore length if the subclass does not support
1052         it.
1053
1054 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1055
1056         * gst/Makefile.am:
1057           possible fixes for automake-1.5 - _LIBADD is reserved
1058
1059 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1060
1061         * docs/faq/Makefile.am:
1062         * docs/manual/Makefile.am:
1063         * docs/manuals.mak:
1064         * docs/pwg/Makefile.am:
1065         * gst/Makefile.am:
1066           possible fixes for automake-1.5
1067
1068 2005-04-28  Wim Taymans  <wim@fluendo.com>
1069
1070         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1071         (gst_basesink_pad_getcaps), (gst_basesink_init),
1072         (gst_basesink_do_sync):
1073         * gst/gstclock.c: (gst_clock_entry_new):
1074         * gst/gstevent.c: (gst_event_discont_get_value):
1075         * gst/gstpipeline.c: (pipeline_bus_handler),
1076         (gst_pipeline_change_state):
1077         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1078         Better debugging of clocking info.
1079         Allow NULL values when getting discont values.
1080
1081 2005-04-27  Wim Taymans  <wim@fluendo.com>
1082
1083         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1084         * check/gst/gstpad.c: (gst_pad_suite):
1085         Increase timeout for checks.
1086
1087 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1088
1089         * check/Makefile.am:
1090           fix the broken rule for cleanup.  Apparently this rule is
1091           only needed on FC2, so maybe this warrants further autotool
1092           inspection.
1093
1094 2005-04-26  Wim Taymans  <wim@fluendo.com>
1095
1096         * gst/gsttrashstack.h:
1097         Ooohh. a nasty one! After having a failed pop() from the stack,
1098         it's possible that the stack is empty. In that case, don't
1099         follow the NULL pointer.
1100
1101 2005-04-25  Wim Taymans  <wim@fluendo.com>
1102
1103         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1104         (gst_pad_set_checkgetrange_function),
1105         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1106         (gst_pad_check_pull_range), (gst_pad_pull_range),
1107         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1108         (gst_pad_pause_task), (gst_pad_stop_task):
1109         * gst/gstplugin.c: (gst_plugin_load):
1110         * gst/gstplugin.h:
1111         Remove gst_library_load as it does more harm than good with
1112         the new g_module flags.
1113         Revert bogus caps template check in pad linking, pad caps
1114         are important when linking not the template, which is more
1115         general than the current caps.
1116
1117 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1118
1119         * gst/autoplug/.cvsignore:
1120         * gst/autoplug/Makefile.am:
1121         * gst/autoplug/gstsearchfuncs.c:
1122         * gst/autoplug/gstsearchfuncs.h:
1123         * gst/autoplug/gstspider.c:
1124         * gst/autoplug/gstspider.h:
1125         * gst/autoplug/gstspideridentity.c:
1126         * gst/autoplug/gstspideridentity.h:
1127         * gst/autoplug/spidertest.c:
1128           Die, spider, die.
1129
1130 2005-04-25  Wim Taymans  <wim@fluendo.com>
1131
1132         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1133         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1134         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1135         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1136         * gst/gstpad.h:
1137         Added stubs for unimplemented functions. 
1138
1139 2005-04-24  David Schleef  <ds@schleef.org>
1140
1141         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1142         please fix.
1143
1144 2005-04-24  David Schleef  <ds@schleef.org>
1145
1146         Convert everything from GstAtomicInt to g_atomic_int_*, and
1147         remove gstatomic.
1148         * gst/Makefile.am:
1149         * gst/gstatomic.c:
1150         * gst/gstatomic.h:
1151         * gst/gstatomic_impl.h:
1152         * gst/gstbuffer.c:
1153         * gst/gstcaps.c:
1154         * gst/gstcaps.h:
1155         * gst/gstclock.c:
1156         * gst/gstclock.h:
1157         * gst/gstdata.c:
1158         * gst/gstdata.h:
1159         * gst/gstdata_private.h:
1160         * gst/gstevent.c:
1161         * gst/gstinfo.c:
1162         * gst/gstinfo.h:
1163         * gst/gstmessage.c:
1164         * gst/gstobject.c:
1165         * gst/gstobject.h:
1166         * gst/gststructure.c:
1167         * gst/gststructure.h:
1168         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1169         * gst/gstutils.h:
1170
1171 2005-04-24  David Schleef  <ds@schleef.org>
1172
1173         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1174         make the regressions tests work.  Remove some code that is no
1175         longer true.
1176         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1177         Disable warning for pads without templates.
1178
1179 2005-04-24  David Schleef  <ds@schleef.org>
1180
1181         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1182         functions that handle filtered links.
1183         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1184         removed functions.
1185         * gst/gstutils.c: Fix/remove utility functions that handle
1186         filtered caps.
1187         * gst/gstutils.h:
1188         * gst/gstvalue.c: Add serialization/deserialization of caps
1189         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1190         requires fixing so that the filter caps notation creates
1191         a capsfilter element and sets the filter_caps property.  I
1192         think everyone probably wants to keep the shorthand notation.
1193         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1194         * docs/gst/tmpl/gstpad.sgml:
1195
1196         * gst/elements/gstelements.c: Register capsfilter element.
1197         * gst/Makefile.am: fix spacing
1198         * docs/random/ds/0.9-suggested-changes: random
1199
1200 2005-04-23  David Schleef  <ds@schleef.org>
1201
1202         * gst/elements/Makefile.am:
1203         * gst/elements/gstcapsfilter.c: New element that acts like an
1204         identity, but filters caps.  Will eventually replace filtered
1205         caps in pad linking.
1206         * gst/gstutils.c: (gst_element_create_all_pads): New function
1207         to create all the ALWAYS pads that are registered with an
1208         element class.  This functionality should eventually be
1209         merged in with GstElement initialization.
1210         * gst/gstutils.h:
1211         * testsuite/trigger/README: part of trigger test code that should
1212         have been checked in a long time ago.
1213
1214 2005-04-23  David Schleef  <ds@schleef.org>
1215
1216         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1217         needed with new versions of libtool (nobody will confirm this),
1218         and hard to carry around.
1219         * gst/autoplug/Makefile.am:
1220         * gst/base/Makefile.am:
1221         * gst/elements/Makefile.am:
1222         * gst/indexers/Makefile.am:
1223         * gst/schedulers/Makefile.am:
1224         * libs/gst/bytestream/Makefile.am:
1225         * libs/gst/control/Makefile.am:
1226         * libs/gst/dataprotocol/Makefile.am:
1227         * libs/gst/getbits/Makefile.am:
1228
1229 2005-04-21  Wim Taymans  <wim@fluendo.com>
1230
1231         * docs/design/draft-push-pull.txt:
1232         * docs/design/part-MT-refcounting.txt:
1233         * docs/design/part-TODO.txt:
1234         * docs/design/part-caps.txt:
1235         * docs/design/part-events.txt:
1236         * docs/design/part-gstbus.txt:
1237         * docs/design/part-gstpipeline.txt:
1238         * docs/design/part-messages.txt:
1239         * docs/design/part-push-pull.txt:
1240         * docs/design/part-query.txt:
1241         Some more docs.
1242
1243 2005-04-21  Wim Taymans  <wim@fluendo.com>
1244
1245         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1246         (gst_message_new), (gst_message_new_error),
1247         (gst_message_new_warning), (gst_message_new_tag),
1248         (gst_message_new_state_changed), (gst_message_new_application),
1249         (gst_message_get_structure):
1250         * gst/gstmessage.h:
1251         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1252         (gst_structure_copy_conditional):
1253         Use parent refcount in GstMessage to ensure GstStructure
1254         consistency.
1255         Cleaned up headers a bit.
1256         
1257
1258 2005-04-20  Wim Taymans  <wim@fluendo.com>
1259
1260         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1261         (gst_basesink_pad_getcaps), (gst_basesink_init),
1262         (gst_basesink_chain_unlocked):
1263         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1264         (gst_type_find_helper):
1265         * gst/elements/gsttypefindelement.c:
1266         (gst_type_find_element_have_type), (gst_type_find_element_init),
1267         (stop_typefinding), (gst_type_find_element_handle_event),
1268         (find_suggest), (gst_type_find_element_chain),
1269         (gst_type_find_element_checkgetrange),
1270         (gst_type_find_element_getrange), (do_typefind),
1271         (gst_type_find_element_activate):
1272         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1273         (gst_buffer_default_free), (gst_buffer_default_copy),
1274         (gst_buffer_set_caps):
1275         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1276         (gst_caps_replace):
1277         * gst/gstmessage.c: (gst_message_new),
1278         (gst_message_new_state_changed):
1279         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1280         (gst_pad_set_checkgetrange_function),
1281         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1282         (gst_pad_set_caps), (gst_pad_check_pull_range),
1283         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1284         * gst/gstpad.h:
1285         * gst/gsttypefind.c: (gst_type_find_register):
1286         Make gst_caps_replace() work like other _replace() functions.
1287         Use _caps_replace() where possible.
1288         Make sure _message_new() initialises its field.
1289         Add gst_static_pad_template_get_caps()
1290
1291
1292 2005-04-18  Andy Wingo  <wingo@pobox.com>
1293
1294         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1295         on the peer, not the pad. I think that was a typo. Pass an extra
1296         arg to see if random access is possible. Activate the pads as
1297         PULL_RANGE if possible.
1298
1299         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1300
1301         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1302         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1303         to PROP_....
1304
1305 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1306
1307         * docs/faq/using.xml:
1308           Add note on gstreamer-properties (#154996).
1309
1310 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1311
1312         * docs/random/bbb/optional-properties:
1313           Some analysis on optional properties.
1314
1315 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1316
1317         * docs/gst/tmpl/gstelementfactory.sgml:
1318         * gst/gstelement.h:
1319         * gst/gstelementfactory.c: (gst_element_factory_init),
1320         (gst_element_factory_cleanup), (gst_element_register),
1321         (__gst_element_factory_add_static_pad_template),
1322         (gst_element_factory_get_static_pad_templates),
1323         (gst_element_factory_can_src_caps),
1324         (gst_element_factory_can_sink_caps):
1325         * gst/registries/Makefile.am:
1326         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1327         (gst_xml_registry_class_init), (gst_xml_registry_init),
1328         (gst_xml_registry_new), (gst_xml_registry_set_property),
1329         (gst_xml_registry_get_property), (get_time), (make_dir),
1330         (gst_xml_registry_get_perms_func),
1331         (plugin_times_older_than_recurse), (plugin_times_older_than),
1332         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1333         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1334         (add_to_char_array), (read_string), (read_uint), (read_enum),
1335         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1336         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1337         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1338         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1339         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1340         (gst_xml_registry_rebuild):
1341         * gst/registries/gstlibxmlregistry.h:
1342         * tools/gst-compprep.c: (main):
1343         * tools/gst-inspect.c: (print_pad_templates_info):
1344         * tools/gst-xmlinspect.c: (print_element_info):
1345           Use libxml2 for registry parsing, use staticpadtemplates in
1346           elementfactories. Makes gst_init() +/- 10x faster.
1347
1348 2005-04-12  Wim Taymans  <wim@fluendo.com>
1349
1350         * gst/base/Makefile.am:
1351         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1352         (gst_basesink_pad_getcaps), (gst_basesink_init),
1353         (gst_basesink_event), (gst_basesink_change_state):
1354         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1355         (gst_basesrc_init), (gst_basesrc_query),
1356         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1357         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1358         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1359         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1360         (gst_basesrc_stop), (gst_basesrc_activate),
1361         (gst_basesrc_change_state):
1362         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1363         (helper_find_suggest), (gst_type_find_helper):
1364         * gst/base/gsttypefindhelper.h:
1365         * gst/elements/Makefile.am:
1366         * gst/elements/gstelements.c:
1367         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1368         (gst_fakesink_get_times), (gst_fakesink_event),
1369         (gst_fakesink_preroll), (gst_fakesink_render):
1370         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1371         (gst_fakesrc_init), (gst_fakesrc_event_handler),
1372         (gst_fakesrc_get_property), (gst_fakesrc_create),
1373         (gst_fakesrc_start), (gst_fakesrc_stop):
1374         * gst/elements/gstfakesrc.h:
1375         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
1376         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1377         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1378         (gst_filesrc_create_read), (gst_filesrc_create),
1379         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
1380         (gst_filesrc_start):
1381         * gst/elements/gsttypefindelement.c:
1382         (gst_type_find_element_have_type), (gst_type_find_element_init),
1383         (start_typefinding), (stop_typefinding), (push_buffer_store),
1384         (gst_type_find_element_handle_event),
1385         (gst_type_find_element_chain),
1386         (gst_type_find_element_checkgetrange),
1387         (gst_type_find_element_getrange), (do_typefind),
1388         (gst_type_find_element_activate),
1389         (gst_type_find_element_change_state):
1390         * gst/elements/gsttypefindelement.h:
1391         * gst/gstpipeline.c: (pipeline_bus_handler):
1392         Added typefind helper.
1393         Small preroll fix in the base sink.
1394         Disable typefind code in basesrc.
1395         Crude port of typefindelement.
1396         Fakesrc cleanups.
1397
1398
1399 2005-04-11  Wim Taymans  <wim@fluendo.com>
1400
1401         * check/gst/gstbus.c: (gstbus_suite):
1402         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
1403         * check/gstcheck.h:
1404         Fix up the timeout so that the test does not fail.
1405
1406 2005-04-06  Wim Taymans  <wim@fluendo.com>
1407
1408         * gst/base/README:
1409         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1410         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
1411         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1412         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1413         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1414         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1415         (gst_basesrc_stop), (gst_basesrc_activate),
1416         (gst_basesrc_change_state), (basesrc_find_peek),
1417         (basesrc_find_suggest), (gst_basesrc_type_find):
1418         * gst/base/gstbasesrc.h:
1419         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1420         (gst_filesrc_class_init), (gst_filesrc_init),
1421         (gst_filesrc_finalize), (gst_filesrc_set_location),
1422         (gst_filesrc_set_property), (gst_filesrc_get_property),
1423         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1424         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1425         (gst_filesrc_create_read), (gst_filesrc_create),
1426         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
1427         * gst/elements/gstfilesrc.h:
1428         * gst/gstelement.c: (gst_element_get_state_func),
1429         (gst_element_lost_state), (gst_element_pads_activate):
1430         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1431         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1432         (gst_pad_pull_range):
1433         * gst/gstpad.h:
1434         More work on the generic source base class, implement seeking,
1435         query.
1436         Make filesrc extend the base source class.
1437         Added gst_pad_set_checkgetrange_function to GstPad.
1438
1439 2005-04-06  Andy Wingo  <wingo@pobox.com>
1440
1441         * pkgconfig/gstreamer-base.pc.in:
1442         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
1443
1444         * pkgconfig/Makefile.am:
1445         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
1446
1447 2005-04-04  Wim Taymans  <wim@fluendo.com>
1448
1449         * gst/base/Makefile.am:
1450         * gst/base/README:
1451         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1452         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1453         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1454         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
1455         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1456         (gst_basesrc_base_init), (gst_basesrc_class_init),
1457         (gst_basesrc_init), (gst_basesrc_get_formats),
1458         (gst_basesrc_get_query_types), (gst_basesrc_query),
1459         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
1460         (gst_basesrc_set_property), (gst_basesrc_get_property),
1461         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
1462         (gst_basesrc_loop), (gst_basesrc_activate),
1463         (gst_basesrc_change_state):
1464         * gst/base/gstbasesrc.h:
1465         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1466         (gst_fakesrc_class_init), (gst_fakesrc_init),
1467         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
1468         (gst_fakesrc_get_property), (gst_fakesrc_create):
1469         * gst/elements/gstfakesrc.h:
1470         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
1471         (gst_filesrc_open_file), (gst_filesrc_loop),
1472         (gst_filesrc_activate), (filesrc_find_peek),
1473         (gst_filesrc_type_find):
1474         Made base source class, make fakesrc extend it.
1475         Add comments to basesink class.
1476         Some filesrc cleanup.
1477
1478 2005-03-31  David Schleef  <ds@schleef.org>
1479
1480         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
1481         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
1482         expected to link against libgstreamer.
1483         * gst/base/Makefile.am: link against libgstreamer
1484         * gst/elements/Makefile.am: same
1485
1486 2005-03-31  Andy Wingo  <wingo@pobox.com>
1487
1488         * tests/instantiate/Makefile.am:
1489         * tests/instantiate/caps.c: Add test to test speed of caps copy
1490         and free.
1491
1492         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
1493         GMemChunk to be fair.
1494
1495         * gst/gsttrashstack.h: Remove warning about using the fallback
1496         trash stack implementation, it's still faster than malloc.
1497
1498 2005-03-30  Andy Wingo  <wingo@pobox.com>
1499
1500         * tests/complexity.c: Add a copyright.
1501
1502 2005-03-31  Wim Taymans  <wim@fluendo.com>
1503
1504         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
1505         (gst_base_transform_class_init), (gst_base_transform_init),
1506         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1507         (gst_base_transform_get_property),
1508         (gst_base_transform_sink_activate),
1509         (gst_base_transform_src_activate),
1510         (gst_base_transform_change_state):
1511         * gst/base/gstbasetransform.h:
1512         * gst/elements/gstidentity.c: (gst_identity_class_init),
1513         (gst_identity_event), (gst_identity_check_perfect),
1514         (gst_identity_transform), (gst_identity_start),
1515         (gst_identity_stop):
1516         Added start/stop methods to transform base class so subclasses 
1517         don't need to deal with state changes even.
1518
1519 2005-03-31  Wim Taymans  <wim@fluendo.com>
1520
1521         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
1522         (gst_event_new_discontinuous), (gst_event_discont_get_value):
1523         * gst/gstevent.h:
1524         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1525         (gst_pad_pull_range):
1526         Added rate to the discont event to prepare for variable speed
1527         and reverse playback.
1528
1529 2005-03-29  David Schleef  <ds@schleef.org>
1530
1531         * configure.ac:
1532         * testsuite/trigger/Makefile.am:
1533         * testsuite/trigger/trigger.c: A little example program to show
1534         how trigger-based elements can work.
1535
1536 2005-03-29  Wim Taymans  <wim@fluendo.com>
1537
1538         * gst/base/Makefile.am:
1539         * gst/base/README:
1540         * gst/base/gstbasesink.c: (gst_basesink_get_type),
1541         (gst_basesink_base_init), (gst_basesink_class_init),
1542         (gst_basesink_pad_getcaps), (gst_basesink_init),
1543         (gst_basesink_activate), (gst_basesink_change_state):
1544         * gst/base/gstbasesink.h:
1545         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
1546         (gst_base_transform_base_init), (gst_base_transform_finalize),
1547         (gst_base_transform_class_init), (gst_base_transform_init),
1548         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
1549         (gst_base_transform_event), (gst_base_transform_getrange),
1550         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
1551         (gst_base_transform_set_property),
1552         (gst_base_transform_get_property),
1553         (gst_base_transform_sink_activate),
1554         (gst_base_transform_src_activate),
1555         (gst_base_transform_change_state):
1556         * gst/base/gstbasetransform.h:
1557         * gst/elements/gstidentity.c: (gst_identity_finalize),
1558         (gst_identity_class_init), (gst_identity_init),
1559         (gst_identity_event), (gst_identity_check_perfect),
1560         (gst_identity_transform), (gst_identity_set_property),
1561         (gst_identity_get_property), (gst_identity_change_state):
1562         * gst/elements/gstidentity.h:
1563         * gst/gstelement.c: (gst_element_get_state_func),
1564         (gst_element_lost_state), (gst_element_pads_activate):
1565         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1566         (gst_pad_check_pull_range), (gst_pad_pull_range):
1567         * gst/gstpad.h:
1568         Simplify pad activation.
1569         Added function to check if pull_range can be performed.
1570         Error out when pulling inactive or flushing pads.
1571         Removed const from refcounted types as it does not make sense.
1572         Simplify pad templates in basesink
1573         Added base class for simple 1-to-1 transforms.
1574         Make identity subclass the base transform.
1575
1576 2005-03-29  Andy Wingo  <wingo@pobox.com>
1577
1578         * docs/libs/gstreamer-libs-overrides.txt: 
1579         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
1580         really don't understand what's going on, but like whatever. I want
1581         green buildbot!
1582
1583         * docs/gst/Makefile.am:
1584         * docs/libs/Makefile.am: Dist the overrides files.
1585
1586         * check/Makefile.am (clean-local): Remove .libs directories.
1587
1588         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
1589         elements to EXTRA_DIST, so po/ files are happy.
1590
1591         * po/POTFILES.in: Er, remove it here.
1592
1593         * po/POTFILES: Remove gstspider.c.
1594
1595         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
1596
1597         * docs/libs/gstreamer-libs-docs.sgml: 
1598         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
1599         bytestream.
1600
1601         * tests/complexity.c (main): Set the length of the preroll queue
1602         on the sinks to prevent a lockup.
1603
1604         * libs/gst/dataprotocol/Makefile.am: 
1605         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
1606         the same as the one in check/gst-libs/gdp.c.
1607
1608         * po/, docs/gst/: Commit automatic changes to docs and po files.
1609
1610         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
1611         the versioned libgstbase.
1612
1613         * check/Makefile.am: Depend on an unversioned gst-register, seems
1614         to make autoconf happier.
1615
1616         * gst/base/Makefile.am: Make libgstbase a versioned lib.
1617
1618 2005-03-28  Wim Taymans  <wim@fluendo.com>
1619
1620         * configure.ac:
1621         * docs/design/part-gstelement.txt:
1622         * docs/design/part-negotiation.txt:
1623         * docs/design/part-preroll.txt:
1624         * docs/design/part-scheduling.txt:
1625         * docs/design/part-states.txt:
1626         * gst/Makefile.am:
1627         * gst/base/Makefile.am:
1628         * gst/base/README:
1629         * gst/base/gstbasesink.c: (gst_basesink_get_template),
1630         (gst_basesink_base_init), (gst_basesink_class_init),
1631         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1632         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1633         (gst_basesink_set_pad_functions),
1634         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
1635         (gst_basesink_set_property), (gst_basesink_get_property),
1636         (gst_base_sink_get_template), (gst_base_sink_get_caps),
1637         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
1638         (gst_basesink_preroll_queue_push),
1639         (gst_basesink_preroll_queue_empty),
1640         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
1641         (gst_basesink_event), (gst_basesink_get_times),
1642         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
1643         (gst_basesink_chain_unlocked), (gst_basesink_chain),
1644         (gst_basesink_loop), (gst_basesink_activate),
1645         (gst_basesink_change_state):
1646         * gst/base/gstbasesink.h:
1647         * gst/elements/Makefile.am:
1648         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
1649         (gst_fakesink_class_init), (gst_fakesink_init),
1650         (gst_fakesink_set_property), (gst_fakesink_get_property),
1651         (gst_fakesink_get_times), (gst_fakesink_event),
1652         (gst_fakesink_preroll), (gst_fakesink_render),
1653         (gst_fakesink_change_state):
1654         * gst/elements/gstfakesink.h:
1655         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1656         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
1657         * gst/gstelement.c: (gst_element_add_pad),
1658         (gst_element_get_state_func), (gst_element_abort_state),
1659         (gst_element_commit_state), (gst_element_lost_state),
1660         (gst_element_set_state), (gst_element_pads_activate):
1661         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
1662         * gst/gstpipeline.c: (gst_pipeline_send_event),
1663         (gst_pipeline_change_state):
1664         Added state change code.
1665         Added/updated docs.
1666         Added sink base class, make fakesink extend the base class.
1667         Small cleanups in GstPipeline.
1668
1669 2005-03-26  David Schleef  <ds@schleef.org>
1670
1671         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
1672         is broken and should be implemented in a different library.
1673         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
1674         * gst/gst.h: remove gstcpu.h
1675         * gst/gstcpu.c: remove
1676         * gst/gstcpu.h: remove
1677         * gst/Makefile.am.future: Remove this file.  It's ancient.
1678
1679 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1680
1681         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1682         (gst_bin_send_event):
1683           Add default event/set_manager handlers. The set_manager handler
1684           takes care that the manager is distributed over kids that were
1685           already in the bin before the manager was set. The event handler
1686           is a utility virtual function that sends the event over all sinks,
1687           so that gst_element_send_event (bin, event); has the expected
1688           behaviour.
1689         * gst/gstpad.c: (gst_pad_event_default):
1690           Re-install default event handling for discontinuities, so that
1691           seeking works without requiring hacks in applications or extra
1692           code in sinks.
1693         * gst/gstpipeline.c: (gst_pipeline_class_init),
1694         (gst_pipeline_send_event):
1695           Half hack, half utility: set a pipeline to PAUSED for seek events,
1696           since that is the only way we can guarantee a/v sync. Means that
1697           you can do gst_element_seek (pipeline, method, pos); on a pipeline
1698           and it "just works".
1699
1700 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1701
1702         * gst/gstpipeline.c: (gst_pipeline_use_clock):
1703           Lock/unlock mismatch.
1704
1705 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1706
1707         * docs/faq/gst-uninstalled:
1708           add gst-plugins-base
1709         * docs/gst/Makefile.am:
1710           don't error out until docs are fixed
1711         * docs/gst/gstreamer.types:
1712           remove thread
1713
1714 2005-03-22  Wim Taymans  <wim@fluendo.com>
1715
1716         * check/Makefile.am:
1717         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
1718         * gst/gststructure.c: (gst_structure_set_valist),
1719         (gst_structure_copy_conditional):
1720         Activated more tests.
1721         Added message test.
1722         Added G_TYPE_POINTER to GstStructure.
1723         
1724
1725 2005-03-22  Wim Taymans  <wim@fluendo.com>
1726
1727         * docs/design/part-TODO.txt:
1728         * docs/design/part-events.txt:
1729         * docs/design/part-gstbin.txt:
1730         * docs/design/part-gstbus.txt:
1731         * docs/design/part-gstpipeline.txt:
1732         * docs/design/part-messages.txt:
1733         * gst/gstbus.c:
1734         * gst/gstmessage.c:
1735         Docs updates
1736
1737 2005-03-21  Wim Taymans  <wim@fluendo.com>
1738
1739         * gst/gstbus.c: (gst_bus_post):
1740         Fix copy-and-paste error.
1741
1742 2005-03-21  Wim Taymans  <wim@fluendo.com>
1743
1744         * check/Makefile.am:
1745         * gst/Makefile.am:
1746         * gst/elements/Makefile.am:
1747         * gst/elements/gstelements.c:
1748         * gst/elements/gstfakesink.c: (gst_fakesink_init),
1749         (gst_fakesink_event), (gst_fakesink_chain):
1750         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1751         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
1752         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
1753         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
1754         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1755         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
1756         (gst_fakesrc_loop), (gst_fakesrc_activate),
1757         (gst_fakesrc_change_state):
1758         * gst/elements/gstfakesrc.h:
1759         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
1760         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
1761         (gst_filesrc_open_file), (gst_filesrc_loop),
1762         (gst_filesrc_activate), (gst_filesrc_change_state),
1763         (filesrc_find_peek), (filesrc_find_suggest),
1764         (gst_filesrc_type_find):
1765         * gst/elements/gstidentity.c: (gst_identity_finalize),
1766         (gst_identity_class_init), (gst_identity_init),
1767         (gst_identity_proxy_getcaps), (identity_queue_push),
1768         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
1769         (gst_identity_getrange), (gst_identity_chain),
1770         (gst_identity_sink_loop), (gst_identity_src_loop),
1771         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
1772         (gst_identity_set_property), (gst_identity_get_property),
1773         (gst_identity_change_state):
1774         * gst/elements/gstidentity.h:
1775         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
1776         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
1777         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
1778         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
1779         (gst_tee_sink_activate):
1780         * gst/elements/gsttee.h:
1781         * gst/gst.c: (gst_register_core_elements), (init_post):
1782         * gst/gst.h:
1783         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
1784         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
1785         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
1786         (gst_bin_change_state):
1787         * gst/gstbin.h:
1788         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
1789         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
1790         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
1791         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
1792         (gst_bus_set_sync_handler), (gst_bus_create_watch),
1793         (bus_watch_callback), (bus_watch_destroy),
1794         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
1795         (poll_timeout), (gst_bus_poll):
1796         * gst/gstbus.h:
1797         * gst/gstcaps.h:
1798         * gst/gstdata.h:
1799         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
1800         (gst_element_post_message), (gst_element_message_full),
1801         (gst_element_get_state_func), (gst_element_get_state),
1802         (gst_element_abort_state), (gst_element_commit_state),
1803         (gst_element_lost_state), (gst_element_set_state),
1804         (gst_element_pads_activate), (gst_element_change_state),
1805         (gst_element_dispose), (gst_element_set_manager_func),
1806         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
1807         (gst_element_set_manager), (gst_element_get_manager),
1808         (gst_element_set_bus), (gst_element_get_bus),
1809         (gst_element_set_scheduler), (gst_element_get_scheduler):
1810         * gst/gstelement.h:
1811         * gst/gstevent.c: (gst_event_new_segment_seek),
1812         (gst_event_new_flush):
1813         * gst/gstevent.h:
1814         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
1815         (_gst_message_free), (gst_message_get_type), (gst_message_new),
1816         (gst_message_new_eos), (gst_message_new_error),
1817         (gst_message_new_warning), (gst_message_new_tag),
1818         (gst_message_new_state_changed), (gst_message_new_application),
1819         (gst_message_get_structure), (gst_message_parse_tag),
1820         (gst_message_parse_state_changed), (gst_message_parse_error),
1821         (gst_message_parse_warning):
1822         * gst/gstmessage.h:
1823         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
1824         (gst_real_pad_set_property), (gst_pad_set_active),
1825         (gst_pad_is_active), (gst_pad_set_blocked_async),
1826         (gst_pad_set_blocked), (gst_pad_is_blocked),
1827         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
1828         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
1829         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
1830         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
1831         (gst_pad_link_filtered), (gst_pad_relink_filtered),
1832         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
1833         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
1834         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
1835         (gst_pad_set_caps), (gst_pad_configure_sink),
1836         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
1837         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
1838         (gst_real_pad_dispose), (gst_real_pad_finalize),
1839         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
1840         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1841         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
1842         * gst/gstpad.h:
1843         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
1844         (pipeline_bus_handler), (gst_pipeline_change_state),
1845         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
1846         * gst/gstpipeline.h:
1847         * gst/gstprobe.h:
1848         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
1849         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
1850         (gst_queue_link_src), (gst_queue_bufferalloc),
1851         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
1852         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
1853         (gst_queue_loop), (gst_queue_handle_src_event),
1854         (gst_queue_handle_src_query), (gst_queue_src_activate),
1855         (gst_queue_change_state):
1856         * gst/gstqueue.h:
1857         * gst/gstscheduler.c: (gst_scheduler_init),
1858         (gst_scheduler_dispose), (gst_scheduler_create_task),
1859         (gst_scheduler_factory_create):
1860         * gst/gstscheduler.h:
1861         * gst/gststructure.c: (gst_structure_get_type),
1862         (gst_structure_copy_conditional):
1863         * gst/gststructure.h:
1864         * gst/gsttaginterface.h:
1865         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1866         (gst_task_init), (gst_task_dispose), (gst_task_create),
1867         (gst_task_get_state), (gst_task_start), (gst_task_stop),
1868         (gst_task_pause):
1869         * gst/gsttask.h:
1870         * gst/gstthread.c:
1871         * gst/gstthread.h:
1872         * gst/gsttypes.h:
1873         * gst/schedulers/Makefile.am:
1874         * gst/schedulers/cothreads_compat.h:
1875         * gst/schedulers/entryscheduler.c:
1876         * gst/schedulers/faircothreads.c:
1877         * gst/schedulers/faircothreads.h:
1878         * gst/schedulers/fairscheduler.c:
1879         * gst/schedulers/gstbasicscheduler.c:
1880         * gst/schedulers/gstoptimalscheduler.c:
1881         * gst/schedulers/gthread-cothreads.h:
1882         * gst/schedulers/threadscheduler.c:
1883         (gst_thread_scheduler_task_get_type),
1884         (gst_thread_scheduler_task_class_init),
1885         (gst_thread_scheduler_task_init),
1886         (gst_thread_scheduler_task_start),
1887         (gst_thread_scheduler_task_stop),
1888         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
1889         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1890         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
1891         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
1892         (plugin_init):
1893         * libs/gst/Makefile.am:
1894         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
1895         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
1896         (gst_file_pad_parent_set):
1897         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1898         (gst_dp_event_from_packet):
1899         * tests/complexity.c: (main):
1900         * tests/mass_elements.c: (main):
1901         * testsuite/states/locked.c: (message_received), (main):
1902         * testsuite/states/parent.c: (main):
1903         * tools/gst-inspect.c: (print_element_flag_info),
1904         (print_implementation_info), (print_pad_info):
1905         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
1906         (main):
1907         * tools/gst-md5sum.c: (event_loop), (main):
1908         * tools/gst-typefind.c: (main):
1909         * tools/gst-xmlinspect.c: (print_element_info):
1910         Next big merge.
1911         Added GstBus for mainloop integration.
1912         Added GstMessage for sending notifications on the bus.
1913         Added GstTask as an abstraction for pipeline entry points.
1914         Removed GstThread.
1915         Removed Schedulers.
1916         Simplified GstQueue for multithreaded core.
1917         Made _link threadsafe, removed old capsnego.
1918         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
1919         Added pad blocking functions.
1920         Reworked scheduling functions in GstPad to prepare for
1921         scheduling updates soon.
1922         Moved events out of data stream.
1923         Simplified GstEvent types.
1924         Added return values to push/pull.
1925         Removed clocking from GstElement.
1926         Added prototypes for state change function for next merge.
1927         Removed iterate from bins and state change management.
1928         Fixed some elements, disabled others for now.
1929         Fixed -inspect and -launch.
1930         Added check for GstBus.
1931
1932 2005-03-10  Wim Taymans  <wim@fluendo.com>
1933
1934         * docs/design/part-MT-refcounting.txt:
1935         * docs/design/part-clocks.txt:
1936         * docs/design/part-gstelement.txt:
1937         * docs/design/part-gstobject.txt:
1938         * docs/design/part-standards.txt:
1939         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
1940         (gst_bin_remove_func), (gst_bin_remove):
1941         * gst/gstbin.h:
1942         * gst/gstbuffer.c:
1943         * gst/gstcaps.h:
1944         * testsuite/clock/clock1.c: (main):
1945         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
1946         (main):
1947         * testsuite/dlopen/loadgst.c: (do_test):
1948         * testsuite/refcounting/bin.c: (add_remove_test1),
1949         (add_remove_test2), (main):
1950         * testsuite/refcounting/element.c: (main):
1951         * testsuite/refcounting/element_pad.c: (main):
1952         * testsuite/refcounting/pad.c: (main):
1953         * tools/gst-launch.c: (sigint_handler_sighandler):
1954         * tools/gst-typefind.c: (main):
1955         Doc updates.
1956         Added doc about clock.
1957         removed gst_bin_iterate_recurse_up(), marked methods
1958         for removal.
1959         Fix more testsuites.
1960
1961 2005-03-09  Wim Taymans  <wim@fluendo.com>
1962
1963         * gst/gstpad.c: (gst_pad_get_direction),
1964         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
1965         (gst_pad_collect_valist):
1966         * testsuite/bins/interface.c: (main):
1967         * testsuite/caps/audioscale.c: (test_caps):
1968         * testsuite/caps/caps.c: (test1), (test2), (test3):
1969         * testsuite/caps/deserialize.c: (main):
1970         * testsuite/caps/enumcaps.c: (main):
1971         * testsuite/caps/filtercaps.c: (main):
1972         * testsuite/caps/intersect2.c: (main):
1973         * testsuite/caps/random.c: (main):
1974         * testsuite/caps/renegotiate.c: (my_fixate), (main):
1975         * testsuite/caps/sets.c: (check_caps):
1976         * testsuite/caps/simplify.c: (check_caps), (main):
1977         * testsuite/caps/subtract.c: (check_caps):
1978         Fix _pad_get_direction wrt ghostpads.
1979         Fix caps testsuite.
1980
1981 2005-03-09  Wim Taymans  <wim@fluendo.com>
1982
1983         * check/Makefile.am:
1984         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
1985         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
1986         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
1987         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
1988         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
1989         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
1990         (gst_bin_remove), (gst_bin_iterate_recurse_up),
1991         (bin_element_is_sink), (gst_bin_iterate_sinks),
1992         (gst_bin_iterate_all_by_interface):
1993         * gst/gstbin.h:
1994         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
1995         (gst_element_change_state), (gst_element_dispose),
1996         (gst_element_finalize), (gst_element_set_loop_function):
1997         * gst/gstelement.h:
1998         * gst/gstiterator.c: (find_custom_fold_func):
1999         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2000         (gst_pad_collectv), (gst_pad_collect_valist),
2001         (gst_pad_template_new):
2002         * gst/gstpipeline.c: (gst_pipeline_class_init),
2003         (gst_pipeline_dispose), (gst_pipeline_set_property),
2004         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2005         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2006         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2007         * gst/gstutils.h:
2008         * gst/schedulers/entryscheduler.c:
2009         * gst/schedulers/gstbasicscheduler.c:
2010         (gst_basic_scheduler_cothreaded_chain),
2011         (gst_basic_scheduler_chain_add_element):
2012         * testsuite/bins/interface.c: (main):
2013         Added GstBin test.
2014         Added GstSystemClock test.
2015         Implemented clock distribution code in GstBin.
2016         Implemented iterate sinks method for future use.
2017         Rearranged gstelement.h
2018         Fix GstIterator comparison bug.
2019         Moved some code to GstPipeline, mostly clocking related.
2020
2021 2005-03-09  Wim Taymans  <wim@fluendo.com>
2022
2023         * configure.ac:
2024         * gst/gst_private.h:
2025         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2026         (gst_bin_remove_func), (gst_bin_remove),
2027         (gst_bin_get_by_name_recurse_up):
2028         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2029         (gst_clock_id_compare_func), (gst_clock_id_wait),
2030         (gst_clock_id_wait_async), (gst_clock_init),
2031         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2032         * gst/gstelement.h:
2033         * gst/gstinfo.c: (_gst_debug_init):
2034         * gst/gstobject.h:
2035         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2036         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2037         * gst/gstpad.h:
2038         Bump version number, we're now 0.9.0
2039         Add future debugging category.
2040         Fix NULL _unref() in _get_by_name_recurse_up
2041         Rearrange gstpad.h.
2042         Update some docs.
2043
2044 2005-03-08  Wim Taymans  <wim@fluendo.com>
2045
2046         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2047         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2048         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2049         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2050         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2051         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2052         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2053         * gst/elements/gstidentity.c: (gst_identity_class_init):
2054         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2055         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2056         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2057         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2058         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2059         (gst_tee_link):
2060         * gst/gstelement.c: (gst_element_class_init),
2061         (gst_element_base_class_init), (gst_element_init),
2062         (gst_element_get_random_pad), (gst_element_wait_state_change),
2063         (gst_element_change_state), (gst_element_dispose),
2064         (gst_element_finalize), (gst_element_set_loop_function):
2065         * gst/gstelement.h:
2066         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2067         * gst/gstthread.c: (gst_thread_class_init),
2068         (gst_thread_release_children_locks), (gst_thread_change_state):
2069         * gst/schedulers/gstbasicscheduler.c:
2070         (gst_basic_scheduler_loopfunc_wrapper),
2071         (gst_basic_scheduler_chain_wrapper),
2072         (gst_basic_scheduler_src_wrapper),
2073         (gst_basic_scheduler_remove_element):
2074         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2075         Remove threadsafe properties. Fix elements because GObject
2076         complains when installing a property before declaring a
2077         set/get_property handler.
2078         Rearrange gstelement.h file, use STATE macros for state locks.
2079         Free mutexes in the finalize method instead of dispose.
2080
2081 2005-03-08  Wim Taymans  <wim@fluendo.com>
2082
2083         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2084         * gst/gstthread.c: (gst_thread_release_children_locks):
2085         Added parentage check.
2086         Fix build og GstThread again.
2087
2088 2005-03-08  Wim Taymans  <wim@fluendo.com>
2089
2090         * docs/design/part-MT-refcounting.txt:
2091         * docs/design/part-conventions.txt:
2092         * docs/design/part-gstobject.txt:
2093         * docs/design/part-relations.txt:
2094         * docs/design/part-standards.txt:
2095         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2096         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2097         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2098         (gst_bin_iterate_all_by_interface):
2099         * gst/gstbuffer.h:
2100         * gst/gstclock.h:
2101         * gst/gstelement.c: (gst_element_class_init),
2102         (gst_element_change_state), (gst_element_set_loop_function):
2103         * gst/gstelement.h:
2104         * gst/gstiterator.c:
2105         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2106         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2107         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2108         (gst_object_set_parent), (gst_object_unparent),
2109         (gst_object_check_uniqueness):
2110         * gst/gstobject.h:
2111         Docs updates, clean up some headers.
2112
2113 2005-03-07  Wim Taymans  <wim@fluendo.com>
2114
2115         * check/.cvsignore:
2116         * check/Makefile.am:
2117         * check/gst-libs/.cvsignore:
2118         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2119         * check/gst/.cvsignore:
2120         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2121         (START_TEST), (gstbus_suite), (main):
2122         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2123         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2124         (gst_data_suite), (main):
2125         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2126         (add_fold_func), (gstiterator_suite), (main):
2127         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2128         (thread_name_object), (thread_name_object_default),
2129         (gst_object_name_compare), (gst_object_suite), (main):
2130         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2131         (gst_pad_suite), (main):
2132         * check/gstcheck.c: (gst_check_log_message_func),
2133         (gst_check_log_critical_func), (gst_check_init):
2134         * check/gstcheck.h:
2135         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2136         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2137         Added checks.
2138
2139 2005-03-07  Wim Taymans  <wim@fluendo.com>
2140
2141         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2142         (gst_list_iterator_next), (gst_list_iterator_resync),
2143         (gst_list_iterator_free), (gst_iterator_new_list),
2144         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2145         (gst_iterator_free), (gst_iterator_push), (filter_next),
2146         (filter_resync), (filter_uninit), (filter_free),
2147         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2148         (gst_iterator_foreach), (find_custom_fold_func),
2149         (gst_iterator_find_custom):
2150         * gst/gstiterator.h:
2151         Added missing files.
2152
2153 2005-03-07  Wim Taymans  <wim@fluendo.com>
2154
2155         * Makefile.am:
2156         * configure.ac:
2157         * docs/design/part-MT-refcounting.txt:
2158         * docs/design/part-conventions.txt:
2159         * docs/design/part-gstobject.txt:
2160         * docs/design/part-relations.txt:
2161         * examples/mixer/mixer.c: (main):
2162         * examples/thread/thread.c: (eos), (main):
2163         * gst/Makefile.am:
2164         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2165         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2166         (gst_spider_plug_from_srcpad):
2167         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2168         (gst_spider_identity_change_state),
2169         (gst_spider_identity_sink_loop_type_finding):
2170         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2171         * gst/elements/gstidentity.c: (gst_identity_init):
2172         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2173         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2174         * gst/elements/gsttypefindelement.c: (free_entry):
2175         * gst/gst.c:
2176         * gst/gst.h:
2177         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2178         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2179         (gst_bin_set_index), (gst_bin_set_element_sched),
2180         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2181         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2182         (gst_bin_iterate_elements), (iterate_child_recurse),
2183         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2184         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2185         (compare_interface), (gst_bin_get_by_interface),
2186         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2187         * gst/gstbin.h:
2188         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2189         (gst_buffer_default_free), (gst_buffer_default_copy),
2190         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2191         (gst_buffer_create_sub):
2192         * gst/gstbuffer.h:
2193         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2194         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2195         (gst_caps_unref), (gst_static_caps_get),
2196         (gst_caps_remove_and_get_structure), (gst_caps_append),
2197         (gst_caps_append_structure), (gst_caps_remove_structure),
2198         (gst_caps_copy_nth), (gst_caps_set_simple),
2199         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2200         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2201         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2202         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2203         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2204         (gst_caps_structure_figure_out_union),
2205         (gst_caps_switch_structures), (gst_caps_do_simplify),
2206         (gst_caps_replace), (gst_caps_from_string),
2207         (gst_caps_copy_conditional):
2208         * gst/gstcaps.h:
2209         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2210         (_gst_clock_id_free), (gst_clock_id_unref),
2211         (gst_clock_id_compare_func), (gst_clock_id_wait),
2212         (gst_clock_id_wait_async), (gst_clock_class_init),
2213         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2214         (gst_clock_get_time), (gst_clock_set_time_adjust),
2215         (gst_clock_set_property), (gst_clock_get_property):
2216         * gst/gstclock.h:
2217         * gst/gstcompat.h:
2218         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2219         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2220         * gst/gstdata.h:
2221         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2222         (gst_element_requires_clock), (gst_element_provides_clock),
2223         (gst_element_set_clock), (gst_element_clock_wait),
2224         (gst_element_wait), (gst_element_set_time_delay),
2225         (gst_element_is_indexable), (gst_element_add_pad),
2226         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2227         (pad_compare_name), (gst_element_get_static_pad),
2228         (gst_element_request_pad), (gst_element_get_request_pad),
2229         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2230         (gst_element_class_get_pad_template_list),
2231         (gst_element_class_get_pad_template), (gst_element_error_func),
2232         (gst_element_get_random_pad), (gst_element_get_event_masks),
2233         (gst_element_send_event), (gst_element_seek),
2234         (gst_element_get_query_types), (gst_element_query),
2235         (gst_element_get_formats), (gst_element_convert),
2236         (gst_element_is_locked_state), (gst_element_set_locked_state),
2237         (gst_element_sync_state_with_parent), (gst_element_change_state),
2238         (gst_element_finalize), (gst_element_yield),
2239         (gst_element_interrupt), (gst_element_set_scheduler),
2240         (gst_element_get_scheduler), (gst_element_set_loop_function):
2241         * gst/gstelement.h:
2242         * gst/gstevent.h:
2243         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2244         (gst_format_get_by_nick), (gst_format_get_details),
2245         (gst_format_iterate_definitions):
2246         * gst/gstformat.h:
2247         * gst/gstindex.c: (gst_index_gtype_resolver):
2248         * gst/gstinfo.c:
2249         * gst/gstinfo.h:
2250         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2251         (gst_mem_chunk_free):
2252         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2253         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2254         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2255         (gst_object_dispatch_properties_changed),
2256         (gst_object_set_name_default), (gst_object_set_name),
2257         (gst_object_get_name), (gst_object_set_name_prefix),
2258         (gst_object_get_name_prefix), (gst_object_set_parent),
2259         (gst_object_get_parent), (gst_object_unparent),
2260         (gst_object_check_uniqueness), (gst_object_save_thyself),
2261         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2262         (gst_object_set_property), (gst_object_get_property),
2263         (gst_object_get_path_string):
2264         * gst/gstobject.h:
2265         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2266         (gst_real_pad_init), (gst_real_pad_get_property),
2267         (gst_pad_custom_new), (gst_pad_get_direction),
2268         (gst_pad_set_active), (gst_pad_is_active),
2269         (gst_pad_set_event_function), (gst_pad_is_linked),
2270         (gst_pad_link_free), (gst_pad_link_intersect),
2271         (gst_pad_link_fixate), (gst_pad_set_caps),
2272         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2273         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2274         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2275         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2276         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2277         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2278         (gst_pad_realize), (gst_pad_get_allowed_caps),
2279         (gst_real_pad_dispose), (gst_real_pad_finalize),
2280         (gst_pad_collectv), (gst_pad_collect_valist),
2281         (gst_pad_template_dispose), (gst_pad_template_new),
2282         (gst_pad_get_internal_links):
2283         * gst/gstpad.h:
2284         * gst/gstpipeline.c: (gst_pipeline_dispose),
2285         (gst_pipeline_change_state):
2286         * gst/gstpipeline.h:
2287         * gst/gstplugin.c:
2288         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2289         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2290         * gst/gstpluginfeature.h:
2291         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2292         * gst/gstquery.c: (_gst_query_type_initialize),
2293         (gst_query_type_register), (gst_query_type_get_by_nick),
2294         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2295         * gst/gstquery.h:
2296         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2297         * gst/gstscheduler.c: (gst_scheduler_add_element),
2298         (gst_scheduler_factory_create):
2299         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2300         (gst_structure_free), (gst_structure_set_name),
2301         (gst_structure_id_set_value), (gst_structure_set_value),
2302         (gst_structure_set_valist), (gst_structure_remove_field),
2303         (gst_structure_remove_fields),
2304         (gst_structure_remove_fields_valist),
2305         (gst_structure_remove_all_fields), (gst_structure_foreach),
2306         (gst_structure_map_in_place),
2307         (gst_caps_structure_fixate_field_nearest_int),
2308         (gst_caps_structure_fixate_field_nearest_double):
2309         * gst/gststructure.h:
2310         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2311         (gst_system_clock_init), (gst_system_clock_dispose),
2312         (gst_system_clock_async_thread),
2313         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2314         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2315         * gst/gstsystemclock.h:
2316         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2317         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2318         * gst/gsttaginterface.c:
2319         * gst/gstthread.c: (gst_thread_dispose),
2320         (gst_thread_release_children_locks), (gst_thread_change_state),
2321         (gst_thread_main_loop):
2322         * gst/gsttrashstack.h:
2323         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2324         * gst/gsttypes.h:
2325         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2326         (gst_element_request_pad), (gst_element_get_pad_from_template),
2327         (gst_element_request_compatible_pad),
2328         (gst_element_get_compatible_pad_filtered),
2329         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2330         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2331         (gst_element_link_many), (gst_element_link),
2332         (gst_element_link_pads), (gst_element_unlink_pads),
2333         (gst_element_unlink_many), (gst_element_unlink),
2334         (gst_pad_can_link_filtered), (gst_pad_can_link),
2335         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2336         (gst_object_default_error), (gst_bin_add_many),
2337         (gst_bin_remove_many), (gst_element_populate_std_props),
2338         (gst_element_class_install_std_props), (gst_buffer_merge),
2339         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2340         (link_fold_func), (gst_pad_proxy_setcaps):
2341         * gst/gstutils.h:
2342         * gst/gstvalue.c: (gst_value_deserialize_string):
2343         * gst/parse/grammar.y:
2344         * gst/schedulers/gstbasicscheduler.c:
2345         (gst_basic_scheduler_cothreaded_chain),
2346         (gst_basic_scheduler_chain_recursive_add),
2347         (gst_basic_scheduler_pad_link):
2348         * gst/schedulers/gstoptimalscheduler.c:
2349         (get_group_schedule_function),
2350         (gst_opt_scheduler_state_transition),
2351         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2352         * libs/gst/bytestream/bytestream.c:
2353         * libs/gst/dataprotocol/dataprotocol.c:
2354         (gst_dp_header_from_buffer):
2355         * po/nb.po:
2356         * po/ru.po:
2357         * tests/threadstate/threadstate2.c: (eos):
2358         * tools/gst-compprep.c: (main):
2359         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
2360         (print_pad_info), (print_children_info):
2361         * tools/gst-launch.c: (idle_func), (main):
2362         * tools/gst-md5sum.c: (idle_func), (main):
2363         * tools/gst-xmlinspect.c: (print_element_info):
2364         First THREADED backport attempt, focusing on adding locks and
2365         making sure the API is threadsafe. Needs more work. More docs
2366         follow this week.
2367
2368 2005-02-24  Andy Wingo  <wingo@pobox.com>
2369
2370         * tests/bench-complexity.scm:
2371         * tests/complexity.gnuplot: New files, good for running complexity
2372         benchmarks.
2373
2374         * tests/Makefile.am:
2375         * tests/complexity.c: New test, sets up N elements, at each level
2376         teeing into M streams per element. Eeeenteresting.
2377
2378         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
2379         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
2380         running bench-mass_elements.scm.
2381
2382         * tests/bench-mass_elements.scm: New script, runs mass_elements
2383         for various numbers of identities, outputting the results to a
2384         file. Requires guile 1.6. Just for testing.
2385
2386 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2387
2388         * gst/schedulers/fairscheduler.c:
2389           compile with debug disabled
2390
2391 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2392
2393         * configure.ac:
2394           hunting season on 0.9 is now OPEN
2395
2396 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2397
2398         * docs/libs/tmpl/gstcontrol.sgml:
2399         * docs/libs/tmpl/gstdparam.sgml:
2400         * docs/libs/tmpl/gstdplinint.sgml:
2401         * docs/libs/tmpl/gstdpman.sgml:
2402         * docs/libs/tmpl/gstdpsmooth.sgml:
2403         * docs/libs/tmpl/gstunitconvert.sgml:
2404           more docs for the state of dparams
2405
2406 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2407
2408         * gst/gstelementfactory.c: (gst_element_factory_create):
2409         * gst/gstobject.c: (gst_object_init),
2410         (gst_object_set_name_default), (gst_object_set_name):
2411           name objects by default, not in gst_element_factory_create. Allows
2412           using elements created with g_object_new. (fixes #167283)
2413
2414 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2415
2416         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
2417           make the time that debugging functions print relative to when
2418           gst_init was called
2419
2420 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
2421
2422         * gst/gsttaginterface.c:
2423           Fix inline docs: tag setter vararg functions are NULL-terminated,
2424           GST_TAG_INVALID doesn't exist any more.
2425
2426 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2427
2428         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
2429         Allocate the 1 byte more memory that was forgotten!!!!!
2430         fixes memory corruption on 64bit platforms
2431
2432 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
2433
2434         * docs/pwg/building-pads.xml:
2435         * docs/pwg/intro-basics.xml:
2436       fixed a few typos, relabeled introductionary list of types
2437         * docs/random/ensonic/dparams.txt:
2438       more notes abut dparam changes
2439         * libs/gst/control/dparam.c: (gst_dparam_attach):
2440         * libs/gst/control/dparammanager.c:
2441         * libs/gst/control/dparammanager.h:
2442       - many comments and notes on dparam implementation
2443       - new dparams are were not initialized to the default value
2444         from param spec
2445
2446 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2447
2448         submitted by: Peter Astakhov
2449
2450         * po/LINGUAS:
2451         * po/ru.po:
2452           adding Russian translation
2453
2454 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2455
2456         * configure.ac:
2457         * docs/gst/Makefile.am:
2458         * docs/libs/Makefile.am:
2459           make sure popt is added to gtk-doc flags.  Fixes #147782.
2460
2461 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
2462
2463         * docs/faq/using.xml:
2464           Fix typo in FAQ (artssink => artsdsink)
2465
2466 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2467
2468         * tools/gst-launch.1.in:
2469           Fix typo (#166699).
2470
2471 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
2472
2473         * docs/faq/using.xml:
2474           Add -v argument to fakesrc/fakesink gst-launch line,
2475           so that the promised output will actually show up.
2476
2477 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2478
2479         * gst/gstthread.c: (gst_thread_change_state):
2480           Implement state-change error handling (#166073).
2481
2482 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2483
2484         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2485           Release interrupt after handling (#166250).
2486
2487 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2488
2489         * configure.ac:
2490           back to HEAD
2491
2492 === release 0.8.9 ===
2493
2494 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2495
2496         * NEWS:
2497         * RELEASE:
2498         * configure.ac:
2499           releasing 0.8.9, "Like Eating Glass"
2500
2501 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2502
2503         submitted by: Clytie Siddall
2504
2505         * po/vi.po: Added Vietnamese translation
2506
2507 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2508
2509         patch by: Tim Philipp-Müller
2510
2511         * configure.ac:
2512         * gst/gstpad.c:
2513           unref data when probe function returns FALSE.  Fixes #166362
2514
2515 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2516
2517         * gst/gst.c: (gst_init_get_popt_table):
2518           Fix typo (#166269).
2519
2520 2005-02-04  Andy Wingo  <wingo@pobox.com>
2521
2522         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
2523         the debugging on whether the caps are compatible.
2524
2525 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2526
2527         * docs/manual/basics-elements.xml:
2528           Fix two typos.
2529
2530 2005-02-02  Wim Taymans  <wim@fluendo.com>
2531
2532         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
2533         (schedule_chain), (get_invalid_call), (chain_invalid_call),
2534         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
2535         Remove some FIXMEs after analysing and commenting why they
2536         are not issues.
2537
2538 2005-02-02  Wim Taymans  <wim@fluendo.com>
2539
2540         * gst/schedulers/gstoptimalscheduler.c:
2541         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
2542         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
2543         (get_invalid_call), (chain_invalid_call),
2544         (get_group_schedule_function), (loop_group_schedule_function),
2545         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2546         (gst_opt_scheduler_state_transition),
2547         (gst_opt_scheduler_add_element),
2548         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
2549         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
2550         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
2551         (gst_opt_scheduler_show):
2552         Added lock to protect scheduler data structures.
2553
2554 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2555
2556         * testsuite/threads/threadi.c: (cb_data):
2557           Fix buglet in test.
2558
2559 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2560
2561         * testsuite/threads/Makefile.am:
2562         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
2563           On Wim's request, split the test in three separately-compiled
2564           tests that each test a very specific bug. Two of them still fail,
2565           will create bugs for those. threadi.c indicates why they fail.
2566
2567 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2568
2569         * gst/schedulers/gstoptimalscheduler.c:
2570         (get_group_schedule_function):
2571           Try to work with the threading mess that queue_link is.
2572
2573 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2574
2575         * gst/gstbin.c: (gst_bin_remove_func):
2576           Explicitely make an element release locks in a group when being
2577           remove from a bin.
2578         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2579           If there's no scheduler, always return immediately (similar to
2580           gst_element_interrupt).
2581
2582 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2583
2584         * gst/gstbin.c: (gst_bin_child_state_change_func):
2585           Remove a piece of code that could never be reached.
2586         * docs/gst/gstreamer-sections.txt:
2587         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
2588         (gst_pad_call_get_function):
2589         * gst/gstpad.h:
2590         * testsuite/pad/Makefile.am:
2591           Fix #150546, enable tests.
2592
2593 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2594
2595         * docs/pwg/advanced-types.xml:
2596           Fix description for buffer-frames=0.
2597         * docs/gst/tmpl/gstbin.sgml:
2598         * gst/gstbin.c: (gst_bin_child_state_change_func),
2599         (gst_bin_change_state), (gst_bin_change_state_norecurse):
2600         * gst/gstbin.h:
2601         * testsuite/threads/Makefile.am:
2602         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
2603         (cb_state), (cb_play), (main):
2604           Fix non-recursive state changes to *really* change the state
2605           of the object, and not just call parent_class->state_change.
2606           Fix a lot of lockups caused by this. Fixes #132775. Add test
2607           for the problem. Also enable test to show #142588 (fixed).
2608         * gst/gstthread.c: (gst_thread_change_state),
2609         (gst_thread_child_state_change):
2610           Don't exit the thread if we go to NULL and are inside thread
2611           context. Instead, return control to the main thread context
2612           and exit from there.
2613         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
2614           Don't unset virtual functions, since those may still be used.
2615           That's not necessarily correct, but suffices for now.
2616         * configure.ac:
2617         * testsuite/Makefile.am:
2618         * testsuite/pad/Makefile.am:
2619         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
2620         (gst_test_sink_base_init), (gst_test_sink_chain),
2621         (gst_test_sink_init), (main):
2622         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
2623         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
2624         (main):
2625         * testsuite/pad/link.c: (gst_test_element_class_init),
2626         (gst_test_element_base_init), (gst_test_src_get),
2627         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
2628         (gst_test_filter_loop), (gst_test_filter_init),
2629         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
2630         (cb_error), (main):
2631           Add tests to show #150546. Pass, but should fail (currently
2632           disabled from the testsuite).
2633         * gst/gstscheduler.c: (gst_scheduler_dispose):
2634           Dereference child schedulers on dispose (#94464).
2635         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
2636           Fix typo.
2637         * testsuite/threads/thread.c: (main):
2638           Add more debug.
2639
2640 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2641
2642         * gst/gstpad.c: (gst_pad_push):
2643           Oops, revert previous commit, broke testsuite...
2644
2645 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2646
2647         * gst/gstpad.c: (gst_pad_push):
2648           Add check that the pad on which the push is performed is not a
2649           get-based pad (#150546).
2650
2651 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2652
2653         * gst/elements/gsttypefindelement.c:
2654         (gst_type_find_element_handle_event):
2655           Fix buffer pushing if stream EOSes during typefinding.
2656
2657 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
2658
2659         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2660
2661         * gst/gstvalue.c: (gst_string_wrap):
2662           Allow NULL-strings as argument (#165365).
2663
2664 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
2665
2666         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2667
2668         * gst/schedulers/faircothreads.c:
2669         (gst_fair_scheduler_cothread_queue_show):
2670           Fix build without debug enabled.
2671
2672 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
2673
2674         * docs/gst/gstreamer-sections.txt:
2675         * docs/libs/gstreamer-libs-docs.sgml:
2676         * docs/libs/gstreamer-libs-sections.txt:
2677         * docs/libs/tmpl/gstcontrol.sgml:
2678         * docs/libs/tmpl/gstdparam.sgml:
2679         * docs/libs/tmpl/gstdplinint.sgml:
2680         * docs/libs/tmpl/gstdpman.sgml:
2681         * docs/libs/tmpl/gstdpsmooth.sgml:
2682         * docs/libs/tmpl/gstputbits.sgml:
2683         * docs/libs/tmpl/gstunitconvert.sgml:
2684         * libs/gst/control/dparam.c:
2685         * libs/gst/control/dparam.h:
2686         * libs/gst/control/dparammanager.c:
2687         (gst_dpman_add_required_dparam_callback),
2688         (gst_dpman_add_required_dparam_direct),
2689         (gst_dpman_add_required_dparam_array),
2690         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
2691         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
2692         (gst_dpman_get_manager)
2693           restructured DParam docs
2694
2695 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
2696
2697         * gst-element-check.m4:
2698           Only check for gst-inspect if we haven't already
2699           found it in previous element check runs
2700
2701 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
2702
2703         * docs/gst/Makefile.am:
2704         * docs/libs/Makefile.am:
2705           fixed install rules to treat style.css as optional
2706
2707 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
2708
2709         * docs/gst/Makefile.am:
2710         * docs/libs/Makefile.am:
2711           install style.css along with docs
2712         * docs/gst/tmpl/gstbin.sgml:
2713         * docs/gst/tmpl/gstclock.sgml:
2714         * docs/gst/tmpl/gstdata.sgml:
2715         * docs/gst/tmpl/gstelement.sgml:
2716         * gst/gstbin.h:
2717         * gst/gstelement.c: (gst_element_class_init):
2718         * gst/gstelement.h:
2719           fixing incomplete docs
2720
2721 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
2722
2723         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
2724           Don't unref seek event twice when fflush() fails
2725           
2726 2005-01-22  David Schleef  <ds@schleef.org>
2727
2728         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
2729
2730 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
2731
2732         * docs/gst/Makefile.am:
2733         * docs/libs/Makefile.am:
2734           added params for deprecation guards
2735         * gst/gst.c:
2736         * gst/gst.h:
2737         * gst/gsterror.c: (_gst_resource_errors_init),
2738         (_gst_stream_errors_init):
2739         * gst/gsterror.h:
2740           documented some more enums
2741
2742 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
2743         * gst/autoplug/gstspideridentity.c:
2744         Cosmetic fix - spider_find_peek should be static
2745         * gst/parse/parse.l:
2746         Applying fix for #164261
2747
2748 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
2749
2750         * docs/gst/gstreamer-sections.txt:
2751         * docs/gst/tmpl/gstplugin.sgml:
2752         * docs/libs/gstreamer-libs-sections.txt:
2753         * docs/libs/tmpl/gstcontrol.sgml:
2754         * gst/gstbuffer.h:
2755         * gst/gsttag.h:
2756         * gst/gstvalue.c:
2757           added docs for the TAG defines
2758
2759 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2760
2761         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2762           Only unref entry if there is an entry.
2763
2764 2005-01-17  Wim Taymans  <wim@fluendo.com>
2765
2766         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
2767         (remove_from_group), (schedule_group), (normalize_group),
2768         (gst_opt_scheduler_iterate):
2769         Also ref/unref decoupled elements before iterating the
2770         group since they are not added to the list of elements.
2771
2772 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2773
2774         * docs/manual/highlevel-components.xml:
2775           Add subtitle/streamselection as new features to playbin.
2776
2777 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2778
2779         * docs/manual/manual.xml:
2780           Re-enable dataaccess docs (oops).
2781
2782 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2783
2784         * docs/pwg/advanced-types.xml:
2785         * docs/random/mimetypes:
2786           Add documentation on libsndfile types (#163309), by Steve Baker
2787           <steve@stevebaker.org>.
2788         * gst/gstelement.c: (gst_element_release_request_pad):
2789           If an element has no explicit function, just remove the pad.
2790
2791 2005-01-17  Luca Ognibene  <luogni@tin.it>
2792
2793         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2794
2795         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
2796           Fix memleak (#163801).
2797
2798 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2799
2800         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
2801           I think this is actually more correct...
2802
2803 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2804
2805         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2806           Another workaround for memory access while destroyed in callback.
2807           Please, someone with refcount knowledge, have a look at this.
2808
2809 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2810
2811         * docs/faq/faq.xml:
2812         * docs/faq/legal.xml:
2813           move the legal Q&A here
2814
2815 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2816
2817         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
2818         (gst_tee_request_new_pad):
2819           Fix negotiation.
2820
2821 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2822
2823         * docs/random/omega/caps2:
2824         * testsuite/caps/caps_strings:
2825           replace framerate aproximations by their real value
2826           (24000/1001, 30000/1001, 60000/1001)
2827           Partially fixes bug #164049
2828
2829 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2830
2831         * docs/gst/Makefile.am:
2832           don't fail on the stupid GstPoptOption
2833
2834 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2835
2836         * gst/gstpad.h:
2837         * gst/gstprobe.c:
2838           allow probes to work on ghost pads by realizing the pad
2839           probe debugging
2840
2841 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2842
2843         * docs/gst/gstreamer-sections.txt:
2844         * docs/gst/tmpl/gstpad.sgml:
2845         * gst/gstpad.c: (gst_pad_set_active_recursive):
2846         * gst/gstpad.h:
2847           Add gst_pad_set_active_recursive().
2848
2849 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2850
2851         * docs/random/release:
2852           updates
2853         * gst/gst_private.h:
2854         * gst/gstinfo.c:
2855         * gst/gstobject.c:
2856           move deep_notify logging to a new category
2857         * gst/gstprobe.c:
2858         * gst/gstprobe.h:
2859           add stuff so bindings can wrap probes
2860
2861 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2862
2863         * gst/gstplugin.c: (gst_plugin_load):
2864           Fix plugin loading if plugin/lib was already loaded. Fixes
2865           #163383
2866
2867 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
2868
2869         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2870
2871         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
2872           Protect plugin loading by a mutex so it's threadsafe. Fixes
2873           #163234.
2874
2875 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2876
2877         * gst/gstevent.c: (_gst_event_copy):
2878           Reference source object when copying events, since it'll be
2879           dereferenced on event dereferencing as well.
2880
2881 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2882
2883         * docs/gst/gstreamer-sections.txt:
2884         * docs/gst/tmpl/gstevent.sgml:
2885         * gst/gstevent.c: (gst_event_new_filler_stamped),
2886         (gst_event_filler_get_duration):
2887         * gst/gstevent.h:
2888           Add two new functions for filler events (which are used to
2889           synchronize streams if one of them is not having any data
2890           for a while) without interrupting the actual data-stream.
2891           Basically a no-op.
2892         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2893         (gst_queue_link_sink), (gst_queue_link_src),
2894         (gst_queue_change_state):
2895           Allow for renegotiation while filled. Required for stream
2896           switching while playing.
2897
2898 2005-01-08  Benjamin Otte  <otte@gnome.org>
2899
2900         * gst/gstelement.c: (gst_element_link_many):
2901           fix up g_return_if_fail's
2902         * po/LINGUAS:
2903         * po/de.po:
2904           add German translation, that was somehow not included
2905
2906 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2907
2908         * docs/random/mimetypes:
2909           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
2910           do not add them to riff-lib as they are not common
2911
2912 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2913
2914         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2915           Check for existence of probe after performing the probe before
2916           re-accessing it to prevent segfaults caused by removal of the
2917           probe in the callback.
2918
2919 2005-01-05  David Schleef  <ds@schleef.org>
2920
2921         * testsuite/registry/Makefile.am:
2922         * testsuite/registry/gst-print-formats.c:
2923         (print_pad_templates_info), (print_element_list),
2924         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
2925         (g_list_uniqify), (get_pad_templates_info),
2926         (get_element_mime_list), (print_mime_list), (main): A little
2927         program that looks through the registry to find elements of
2928         a given type.  Not particularly interesting as a test, except
2929         that there's no other test covering the same area.
2930
2931 2005-01-05  David Schleef  <ds@schleef.org>
2932
2933         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
2934         (fault_handler_sigaction), (fault_spin),
2935         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
2936         in signal.h-type signal handlers by not calling forbidden functions,
2937         including gst_element_set_state().
2938
2939 2005-01-05  David Schleef  <ds@schleef.org>
2940
2941         * gst/gstvalue.h: Mark _gst_reserved[] as private
2942
2943 2005-01-05  David Schleef  <ds@schleef.org>
2944
2945         * gst/gstvalue.c: Fix doc build problem.
2946
2947 2005-01-05  David Schleef  <ds@schleef.org>
2948
2949         * gst/gstvalue.c: Add some documentation
2950
2951 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
2952
2953         * docs/README:
2954           another shell oneliner for empty return value docs
2955         * gst/gstcaps.c:
2956         * gst/gstvalue.c:
2957         * libs/gst/control/dparam.c:
2958           more doc fixes (parameters and return values)
2959
2960 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
2961
2962         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2963
2964         * gst/gstregistry.h:
2965         * gst/registries/gstxmlregistry.c:
2966           Fix macro's for Mingw (fixes #162276).
2967
2968 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
2969
2970         * docs/README:
2971           quick shell oneliner to find undocumented members
2972         * docs/gst/tmpl/gstplugin.sgml:
2973         * docs/gst/tmpl/gstscheduler.sgml:
2974         * docs/gst/tmpl/gstthread.sgml:
2975           more enumtypes cleanup
2976         * gst/gsterror.h:
2977           activated documentation comments, now someone needs to document
2978           the enums :(
2979
2980 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2981
2982         * docs/manual/manual.xml:
2983           Add dataaccess part (doh!).
2984
2985 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2986
2987         * docs/manual/advanced-autoplugging.xml:
2988           Fix typo (intiate -> initiate).
2989
2990 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2991
2992         * docs/random/bbb/streamselection:
2993           Add some notes on how to handle multi-subtitle/-audio streams.
2994
2995 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
2996
2997         * docs/gst/gstreamer-docs.sgml:
2998         * docs/gst/gstreamer-sections.txt:
2999         * docs/gst/tmpl/gstenumtypes.sgml:
3000         * docs/gst/tmpl/gsterror.sgml:
3001         * docs/gst/tmpl/gstevent.sgml:
3002         * docs/gst/tmpl/gstpad.sgml:
3003         * docs/gst/tmpl/gstpadtemplate.sgml:
3004         * docs/gst/tmpl/gstthread.sgml:
3005           removed gstenumtypes section from docs and put all the enums into
3006           their sections
3007
3008 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3009
3010         * gst/gstplugin.c:
3011           document gst_library_load a bit more (riff special case + return
3012           value if already loaded)
3013         * testsuite/bytestream/filepadsink.c:
3014           plugin name is 'gstbytestream', not 'bytestream'
3015
3016 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3017
3018         * docs/random/bbb/subtitles:
3019           Add some first mind rumblings on proper subtitle support.
3020
3021 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3022
3023         * po/ca.po:
3024         * po/sv.po:
3025           updated translations
3026
3027 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3028
3029         * docs/manual/advanced-dataaccess.xml:
3030           Add section on how to use fakesrc/fakesink/identity in your
3031           application, plus section on how to embed plugins. Also mention
3032           probes.
3033         * docs/manual/appendix-checklist.xml:
3034         * docs/manual/appendix-debugging.xml:
3035         * docs/manual/appendix-gnome.xml:
3036         * docs/manual/appendix-integration.xml:
3037           Debug -> checklist, GNOME -> integration, add sections on Linux,
3038           KDE integration and add other things useful for application
3039           development.
3040         * docs/manual/manual.xml:
3041           Remove some fixmes, update some file pointers.
3042         * docs/pwg/appendix-checklist.xml:
3043           Fix typo.
3044         * docs/pwg/building-boiler.xml:
3045           Remove ugly header and add commented fixme.
3046         * docs/pwg/pwg.xml:
3047           Add fixme.
3048         * examples/manual/Makefile.am:
3049           Add example for added docs.
3050
3051 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3052
3053         * configure.ac:
3054           back to HEAD
3055
3056 === release 0.8.8 ===
3057
3058 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3059
3060         * NEWS:
3061         * RELEASE:
3062         * configure.ac:
3063           Releasing 0.8.8, "I'll Take Care Of You"
3064
3065 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3066
3067         * configure.ac:
3068           second prerelease
3069
3070 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3071
3072         patch by: Wim Taymans
3073
3074         * gst/gstbin.c:
3075           Fix for #159852 - make iterate emission threadsafe
3076
3077 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3078
3079         * docs/faq/cvs.xml:
3080           notes about new fdo account request
3081
3082 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3083
3084         * docs/gst/gstreamer-docs.sgml:
3085         * docs/gst/tmpl/gstenumtypes.sgml:
3086         * docs/gst/tmpl/gstplugin.sgml:
3087         * docs/libs/gstreamer-libs-docs.sgml:
3088           Added missing short docs. Added ids for navigation.
3089
3090 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3091
3092         * docs/manual/advanced-autoplugging.xml:
3093         * docs/manual/advanced-schedulers.xml:
3094         * docs/manual/advanced-threads.xml:
3095           Rewrites. Remove cothreads, go a bit into opt specifically,
3096           document threads and their gotchas, and do some technical stuff
3097           on autoplugging plus add some working examples. Fixes #157395.
3098         * examples/manual/Makefile.am:
3099           Add typefind/autoplugger example (one that actually works).
3100           Remove queue example since it's a duplicate of the thread one.
3101
3102 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3103
3104         * gst/gstvalue.c: (gst_value_deserialize_string):
3105           use deprecated g_value_set_string_take_ownership to keep compatible
3106           with glib 2.2
3107
3108 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3109
3110         * gst/gstvalue.c: (gst_value_deserialize_string):
3111           revert last patch, only dom a g_utf8_validate now before accepting
3112           the string - caps parsing strips " from strings so we can't rely on
3113           them
3114         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3115           disable a test that tested the above and comment it
3116
3117 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3118
3119         Patch reviewed by David Schleef  <ds@schleef.org>
3120
3121         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3122         bug #153882)
3123         * win32/gstenumtypes.h: same
3124
3125 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3126
3127         * gst/gstpad.c: (gst_pad_query):
3128           Do query on realized pad, similar to how convert/send_event handle
3129           this. Also makes sense, since this pad belongs to the function to
3130           which this query will be sent. Fixes #158163.
3131
3132 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3133
3134         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3135
3136 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3137
3138         * docs/faq/general.xml: fix pipeline to actually work
3139
3140 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3141
3142         * gst/gstvalue.c: (gst_value_deserialize_string):
3143           check that a simple string that gets deserialized does not contain
3144           invalid characters
3145         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3146           remove a test that tested a wring behaviour
3147
3148 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3149
3150         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3151
3152         * docs/manual/intro-motivation.xml:
3153           Fix typos.
3154
3155 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3156
3157         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3158
3159         * docs/gst/tmpl/gstprobe.sgml:
3160           Fix documentation of probe callback - it is supposed to return
3161           FALSE, not TRUE, to remove data from the stream (#159087).
3162
3163 2004-12-16  Daniel Gazard  <dany42@free.fr>
3164
3165         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3166
3167         * gst/gstelementfactory.c: (gst_element_factory_create):
3168           Fix compile failure if compiling without libxml2 support (#149936).
3169
3170 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3171
3172         * docs/manual/advanced-autoplugging.xml:
3173         * docs/manual/highlevel-components.xml:
3174           Move spider from autoplugging to components. Autoplugging is for
3175           internals, not for solutions. ;-).
3176
3177 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3178
3179         * docs/random/ds/0.9-suggested-changes:
3180           Make note on device/location/uri property names.
3181
3182 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3183
3184         * docs/manual/advanced-autoplugging.xml:
3185         * docs/manual/advanced-clocks.xml:
3186         * docs/manual/advanced-interfaces.xml:
3187         * docs/manual/advanced-metadata.xml:
3188         * docs/manual/advanced-position.xml:
3189         * docs/manual/advanced-schedulers.xml:
3190         * docs/manual/advanced-threads.xml:
3191         * docs/manual/appendix-gnome.xml:
3192         * docs/manual/appendix-programs.xml:
3193         * docs/manual/appendix-quotes.xml:
3194         * docs/manual/autoplugging.xml:
3195         * docs/manual/basics-bins.xml:
3196         * docs/manual/basics-data.xml:
3197         * docs/manual/basics-elements.xml:
3198         * docs/manual/basics-helloworld.xml:
3199         * docs/manual/basics-init.xml:
3200         * docs/manual/basics-pads.xml:
3201         * docs/manual/basics-plugins.xml:
3202         * docs/manual/bins-api.xml:
3203         * docs/manual/bins.xml:
3204         * docs/manual/buffers-api.xml:
3205         * docs/manual/buffers.xml:
3206         * docs/manual/clocks.xml:
3207         * docs/manual/components.xml:
3208         * docs/manual/cothreads.xml:
3209         * docs/manual/debugging.xml:
3210         * docs/manual/dparams-app.xml:
3211         * docs/manual/dynamic.xml:
3212         * docs/manual/elements-api.xml:
3213         * docs/manual/elements.xml:
3214         * docs/manual/factories.xml:
3215         * docs/manual/gnome.xml:
3216         * docs/manual/goals.xml:
3217         * docs/manual/helloworld.xml:
3218         * docs/manual/helloworld2.xml:
3219         * docs/manual/highlevel-components.xml:
3220         * docs/manual/highlevel-xml.xml:
3221         * docs/manual/init-api.xml:
3222         * docs/manual/intro-basics.xml:
3223         * docs/manual/intro-motivation.xml:
3224         * docs/manual/intro-preface.xml:
3225         * docs/manual/intro.xml:
3226         * docs/manual/links-api.xml:
3227         * docs/manual/links.xml:
3228         * docs/manual/manual.xml:
3229         * docs/manual/motivation.xml:
3230         * docs/manual/pads-api.xml:
3231         * docs/manual/pads.xml:
3232         * docs/manual/plugins-api.xml:
3233         * docs/manual/plugins.xml:
3234         * docs/manual/programs.xml:
3235         * docs/manual/queues.xml:
3236         * docs/manual/quotes.xml:
3237         * docs/manual/schedulers.xml:
3238         * docs/manual/states-api.xml:
3239         * docs/manual/states.xml:
3240         * docs/manual/threads.xml:
3241         * docs/manual/typedetection.xml:
3242         * docs/manual/win32.xml:
3243         * docs/manual/xml.xml:
3244           Try 2. This time, include a short preface as a "general
3245           introduction", also add code blocks around all code samples
3246           so they get compiled. We still need a way to tell readers
3247           the filename of the code sample. In some cases, don't show
3248           all code in the documentation, but do include it in the generated
3249           code. This allows for focussing on specific bits in the docs,
3250           while still having a full test application available.
3251         * examples/manual/Makefile.am:
3252           Fix up examples for new ADM. Add several of the new examples that
3253           were either added or were missing from the build system.
3254         * examples/manual/extract.pl:
3255           Allow nameless blocks.
3256
3257 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3258
3259         * docs/manual/elements-api.xml:
3260         * docs/manual/helloworld.xml:
3261         * examples/manual/extract.pl:
3262           fix last example.  Add example of adding code blocks that are not
3263           shown in docbook output.
3264
3265 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3266
3267         * docs/manual/dynamic.xml:
3268         * docs/manual/elements-api.xml:
3269         * docs/manual/gnome.xml:
3270         * docs/manual/helloworld2.xml:
3271         * docs/manual/init-api.xml:
3272         * docs/manual/queues.xml:
3273         * docs/manual/threads.xml:
3274         * docs/manual/xml.xml:
3275         * examples/manual/extract.pl:
3276           Make it possible to extract example code from separate blocks.
3277           Should make Ronald happy.
3278
3279 2004-12-15  Wim Taymans  <wim@fluendo.com>
3280
3281         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3282         (remove_from_group), (group_elements_set_visited),
3283         (normalize_group), (gst_opt_scheduler_iterate):
3284         Fix bug where a flag was not updated on a decoupled entry point 
3285         because we were just checking the group element list and decoupled
3286         elements are not in that list..
3287
3288 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3289
3290         * docs/manual/advanced-autoplugging.xml:
3291         * docs/manual/advanced-clocks.xml:
3292         * docs/manual/advanced-dparams.xml:
3293         * docs/manual/advanced-interfaces.xml:
3294         * docs/manual/advanced-metadata.xml:
3295         * docs/manual/advanced-position.xml:
3296         * docs/manual/advanced-schedulers.xml:
3297         * docs/manual/advanced-threads.xml:
3298         * docs/manual/appendix-debugging.xml:
3299         * docs/manual/appendix-gnome.xml:
3300         * docs/manual/appendix-programs.xml:
3301         * docs/manual/appendix-quotes.xml:
3302         * docs/manual/appendix-win32.xml:
3303         * docs/manual/autoplugging.xml:
3304         * docs/manual/basics-bins.xml:
3305         * docs/manual/basics-data.xml:
3306         * docs/manual/basics-elements.xml:
3307         * docs/manual/basics-helloworld.xml:
3308         * docs/manual/basics-init.xml:
3309         * docs/manual/basics-pads.xml:
3310         * docs/manual/basics-plugins.xml:
3311         * docs/manual/bins-api.xml:
3312         * docs/manual/bins.xml:
3313         * docs/manual/buffers-api.xml:
3314         * docs/manual/buffers.xml:
3315         * docs/manual/clocks.xml:
3316         * docs/manual/components.xml:
3317         * docs/manual/cothreads.xml:
3318         * docs/manual/debugging.xml:
3319         * docs/manual/dparams-app.xml:
3320         * docs/manual/dynamic.xml:
3321         * docs/manual/elements-api.xml:
3322         * docs/manual/elements.xml:
3323         * docs/manual/factories.xml:
3324         * docs/manual/gnome.xml:
3325         * docs/manual/goals.xml:
3326         * docs/manual/helloworld.xml:
3327         * docs/manual/helloworld2.xml:
3328         * docs/manual/highlevel-components.xml:
3329         * docs/manual/highlevel-xml.xml:
3330         * docs/manual/init-api.xml:
3331         * docs/manual/intro-motivation.xml:
3332         * docs/manual/intro-preface.xml:
3333         * docs/manual/intro.xml:
3334         * docs/manual/links-api.xml:
3335         * docs/manual/links.xml:
3336         * docs/manual/manual.xml:
3337         * docs/manual/motivation.xml:
3338         * docs/manual/pads-api.xml:
3339         * docs/manual/pads.xml:
3340         * docs/manual/plugins-api.xml:
3341         * docs/manual/plugins.xml:
3342         * docs/manual/programs.xml:
3343         * docs/manual/queues.xml:
3344         * docs/manual/quotes.xml:
3345         * docs/manual/schedulers.xml:
3346         * docs/manual/states-api.xml:
3347         * docs/manual/states.xml:
3348         * docs/manual/threads.xml:
3349         * docs/manual/typedetection.xml:
3350         * docs/manual/win32.xml:
3351         * docs/manual/xml.xml:
3352           First try at rewriting the ADM. Needs lotsamore work, but some
3353           parts might already be somewhat useful.
3354         * docs/pwg/advanced-interfaces.xml:
3355           Remove properties interface, it never actually existed (except for
3356           on my HD...).
3357
3358 2004-12-13  David Schleef  <ds@schleef.org>
3359
3360         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
3361         be NULL (bug #160220).
3362
3363 2004-12-13  David Schleef  <ds@schleef.org>
3364
3365         * configure.ac: remove all mmx stuff, because it's not used.
3366         * docs/random/ds/0.9-suggested-changes: additional notes
3367         * include/Makefile.am: we don't use these anymore
3368         * include/mmx.h: remove
3369         * include/sse.h: remove
3370
3371 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3372
3373         * docs/random/mimetypes:
3374           Add FOURCC code for h264 codec (VSSH)
3375           Add alternate FOURCC codes for h263 related codecs
3376
3377 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
3378
3379         * docs/manual/programs.xml:
3380           Added more gst-launch examples.
3381
3382 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3383
3384         * gst/gstqueue.c: (gst_queue_handle_src_query):
3385           Check for availability again.
3386
3387 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3388
3389         * gst/gstcaps.c: (gst_caps_compare_structures):
3390           Simple caps go first. This has the nice side-effect of fixing an
3391           obscure warning.
3392
3393 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3394
3395         * gst/gstversion.h.in:
3396           Protect header.
3397
3398 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3399
3400         * gst/schedulers/gstoptimalscheduler.c:
3401         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
3402         (gst_opt_scheduler_get_wrapper):
3403           When we're recursing into a chain run, only run the directly
3404           related group, not all queued ones. This will fix a possible
3405           deadlock in chains with more than two groups.
3406
3407 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3408
3409         * autogen.sh:
3410           remove patch if autopoint fails
3411
3412 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3413
3414         * docs/gst/gstreamer-sections.txt:
3415           Document Thomas' addition, fix build, make Luis the sheriff happy.
3416
3417 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3418
3419         * gst/gstplugin.c:
3420         * gst/gstplugin.h:
3421           add accessor for version field
3422
3423 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3424
3425         submitted by: Luca Ferretti <elle.uca@infinito.it>
3426
3427         * po/LINGUAS:
3428         * po/it.po:
3429           New tranlation added: Italian
3430
3431 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3432
3433         * gst/gstpad.c: (gst_pad_is_negotiated),
3434         (gst_pad_get_negotiated_caps):
3435           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
3436           it doesn't actually check the contents), so be sure to hand it
3437           a RealPad else we'll crash.
3438
3439 2004-12-03  Wim Taymans  <wim@fluendo.com>
3440
3441         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3442         (gst_queue_link), (gst_queue_handle_src_query):
3443         Reverted to 1.110 until this makes the testsuite and various
3444         apps work.
3445
3446 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
3447
3448         * docs/upload.mak: fix included CVS conflict strings
3449
3450 2004-12-01  William Jon McCann  <mccann@jhu.edu>
3451
3452         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3453
3454         * gst/gstelement.c: (gst_element_error_full):
3455           Use g_error_new_literal because error text may have
3456           percentage signs in it. Fixes #160019.
3457
3458 2004-12-01  Benjamin Otte  <otte@gnome.org>
3459
3460         * gst/elements/gstbufferstore.c:
3461         (gst_buffer_store_add_buffer_func):
3462           don't try to make subbuffers bigger than they can be. (fixes
3463           #159970)
3464
3465 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3466
3467         * docs/gst/gstreamer-sections.txt:
3468         * docs/gst/tmpl/gstvalue.sgml:
3469           Add new function to docs to fix build.
3470
3471 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3472
3473         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
3474         * gst/gstpad.c: (_gst_pad_default_fixate_value),
3475         (_gst_pad_default_fixate_foreach):
3476         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
3477         * gst/gstvalue.h:
3478           Deprecate _type_is_fixed, use _value_is_fixed instead, since
3479           in some cases (arrays), the fixedness depends on the content.
3480         * gst/gstqueue.c: (gst_queue_handle_src_query):
3481           Check for availability before doing something.
3482
3483 2004-11-29  Wim Taymans  <wim@fluendo.com>
3484
3485         * testsuite/threads/Makefile.am:
3486         * testsuite/threads/signals.c: (gst_test_get_type),
3487         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
3488         (gst_test_set_property), (gst_test_get_property),
3489         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
3490         (gst_test_do_prop), (run_thread), (main):
3491         Added a bunch of testcases that show threadsafety bugs in glib.
3492
3493 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
3494
3495         * docs/manual/programs.xml:
3496           Added a first batch of gst-launch examples, as provided by Ronald
3497           and others from the devel-mlist
3498
3499 2004-11-28  Benjamin Otte  <otte@gnome.org>
3500
3501         * gst/gstelement.c: (gst_element_negotiate_pads):
3502           simplify
3503         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
3504         (gst_value_serialize_string), (gst_value_deserialize_string):
3505           add unwrapping of previously wrapped strings. Fix bug in wrapping
3506           while at it.
3507         * testsuite/caps/value_serialize.c: (test1),
3508         (test_string_serialization), (test_string_deserialization), (main):
3509           add tests for string (de)serialization
3510
3511 2004-11-26  Wim Taymans  <wim@fluendo.com>
3512
3513         * testsuite/threads/159566.c: (object_deep_notify), (main):
3514         * testsuite/threads/Makefile.am:
3515         Added testsuite to show bug #159566
3516
3517 2004-11-25  Wim Taymans  <wim@fluendo.com>
3518
3519         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
3520         (gst_thread_child_state_change), (gst_thread_main_loop):
3521         Ref the thread object in the GThread mainloop. Break out of the
3522         thread mainloop if it holds the last ref. This properly exits
3523         the threads when disposing the thread from its own context. It
3524         also avoids possible deadlocks in the dispose function.
3525
3526 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
3527
3528         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
3529         it is necessary to wait.
3530
3531 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3532
3533         * docs/pwg/building-boiler.xml:
3534           Make description somewhat clearer.
3535
3536 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3537
3538         * docs/upload.mak:
3539           Apparently docs changed location on FDO's server.
3540
3541 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3542
3543         * docs/pwg/appendix-checklist.xml:
3544           Add some random notes on things to check when writing an element.
3545           This list can be extended as people see fit.
3546
3547 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
3548
3549         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
3550         (gst_queue_link_src): Allow for renegotiating the caps of the sink
3551         pad. The queue will now wait until it is empty and forward the new
3552         caps to the source.
3553         * gst/gstbin.c (gst_bin_set_element_sched)
3554         (gst_bin_unset_element_sched): Make sure that all elements and
3555         links are registered and unregistered with the scheduler exactly
3556         once. This elaborates on a fix by Benjamin Otte, but
3557         guarantees that decoupled elements are also registered.
3558
3559 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3560
3561         * docs/manual/quotes.xml:
3562           add a quote
3563         * configure.ac:
3564         * gst/gst.c:
3565         * gst/gstinfo.c:
3566           add LIBDIR and move init message higher up so it's at the start
3567
3568 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3569
3570         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
3571         * gstreamer.spec.in: add fair
3572
3573 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3574
3575         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3576         * gst/elements/gstidentity.c: (gst_identity_class_init):
3577           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
3578           <teuf@gnome.org> (#157263).
3579         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3580         (gst_type_find_handle_src_query):
3581           Subtract size of internally stored data from position queries.
3582
3583 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
3584
3585         * gst/schedulers/fairscheduler.c:
3586         * gst/schedulers/faircothreads.c:
3587         * gst/schedulers/faircothreads.h:
3588         New cothread based scheduler: Fair scheduler.
3589         * gst/schedulers/gthread-cothreads.h: 
3590         Add the standard #if around the whole file.
3591         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
3592         compilation of the functions defined in this file. This is
3593         necessary to be able to use this file as a normal header.
3594         * gst/schedulers/Makefile.am: Add compiling support for fair
3595         scheduler.
3596         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
3597         scheduler cothreads layer from documentation generation.
3598
3599 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3600
3601         * gst/autoplug/gstspideridentity.c:
3602         (gst_spider_identity_sink_loop_type_finding):
3603           Don't crash if that function is not implemented.
3604
3605 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3606
3607         * docs/pwg/advanced-types.xml:
3608           Another typo.
3609
3610 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3611
3612         * docs/pwg/intro-preface.xml:
3613           Hm, ok, so the brackets weren't really useful...
3614         * docs/pwg/other-ntoone.xml:
3615           Fix embarassing typo.
3616
3617 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3618
3619         * docs/pwg/intro-preface.xml:
3620           Rewrite preface.
3621
3622 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3623
3624         * docs/pwg/advanced-scheduling.xml:
3625         * docs/pwg/advanced-tagging.xml:
3626         * docs/pwg/advanced-types.xml:
3627         * docs/pwg/building-boiler.xml:
3628         * docs/pwg/building-chainfn.xml:
3629         * docs/pwg/building-signals.xml:
3630         * docs/pwg/building-state.xml:
3631         * docs/pwg/building-testapp.xml:
3632         * docs/pwg/intro-basics.xml:
3633         * docs/pwg/other-manager.xml:
3634         * docs/pwg/other-source.xml:
3635           Typo fixes.
3636         * docs/pwg/other-manager.xml:
3637           Add some first content. No example code yet.
3638         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3639           Remove double newlines.
3640
3641 2004-11-04  Wim Taymans  <wim@fluendo.com>
3642
3643         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3644         (remove_from_group), (normalize_group), (group_migrate_connected),
3645         (gst_opt_scheduler_iterate):
3646         * testsuite/schedulers/.cvsignore:
3647         * testsuite/schedulers/Makefile.am:
3648         * testsuite/schedulers/queue_link.c: (main):
3649         Added testcase for scheduler segfault.
3650         Fix scheduler segfault when removing a decoupled
3651         entry point as the last element from a group.
3652
3653 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3654
3655         * gst/gstmarshal.list: add missing marshaller, fixes build
3656
3657 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3658
3659         * docs/random/signal: added notes about using BOXED for GstBuffer
3660         signal marshallers, not POINTER
3661
3662 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3663
3664         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3665         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
3666         POINTER=>BOXED changes to marshal GstBuffers
3667
3668 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3669
3670         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
3671         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
3672
3673 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
3674
3675         * docs/gst/gstreamer-sections.txt:
3676         * docs/gst/tmpl/gstcaps.sgml:
3677         * docs/gst/tmpl/gsterror.sgml:
3678         * docs/gst/tmpl/gstinfo.sgml:
3679         * docs/gst/tmpl/gstmacros.sgml:
3680         * docs/gst/tmpl/gstutils.sgml:
3681         * docs/random/ensonic/interfaces.txt:
3682         * gst/gstinfo.h:
3683           added some more docs, removed two obsolete defines
3684
3685 2004-11-02  Kjartan Maraas <as at gnome.org>
3686
3687         reviewed by: Wim Taymans, Ronald Bultje.
3688
3689         * gst/cothreads.c: (cothread_create):
3690         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3691         (gst_bin_child_state_change_func):
3692         * gst/gstbuffer.c: (gst_buffer_span):
3693         * gst/gstelement.c: (gst_element_get_index),
3694         (gst_element_get_event_masks), (gst_element_get_query_types),
3695         (gst_element_get_formats):
3696         * gst/gsterror.c: (_gst_core_errors_init),
3697         (_gst_library_errors_init), (_gst_resource_errors_init),
3698         (_gst_stream_errors_init):
3699         * gst/gstobject.c: (gst_object_default_deep_notify):
3700         * gst/gstpad.c: (gst_pad_get_event_masks),
3701         (gst_pad_get_internal_links_default):
3702         * gst/gstplugin.c: (gst_plugin_register_func),
3703         (gst_plugin_get_module):
3704         * gst/gststructure.c: (gst_structure_get_string),
3705         (gst_structure_get_abbrs), (gst_structure_from_abbr),
3706         (gst_structure_to_abbr):
3707         * gst/gstutils.c: (gst_print_element_args):
3708         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3709         (setup_group_scheduler), (gst_opt_scheduler_iterate):
3710         Aplied part of patch #157127: Cleanup of issues reported by 
3711         sparse.
3712         Also do not try to use cothreads when there is no cothread
3713         context yet.
3714
3715 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
3716
3717         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3718         (gst_opt_scheduler_iterate):
3719         Applied patch #154061. Running a pipeline in which an element 
3720         calls GST_ELEMENT_ERROR in the chain function, the opt 
3721         scheduler doesn't unref the chain so it never gets freed.
3722
3723 2004-11-02  Wim Taymans  <wim@fluendo.com>
3724
3725         * gst/gststructure.c: (gst_structure_get_abbrs),
3726         (gst_structure_from_abbr), (gst_structure_to_abbr):
3727         Remove that ugly if-then thing in the code that converts
3728         between strings and types.
3729
3730 2004-11-02  Wim Taymans  <wim@fluendo.com>
3731
3732         * gst/gstscheduler.c: (gst_scheduler_add_element),
3733         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
3734         Aplied clock distribution patch, this should fix bug
3735         #148787.
3736
3737 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3738
3739         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
3740
3741         * po/LINGUAS:
3742         * po/nb.po:
3743           Added Norwegian Bokmaal translation
3744
3745 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3746
3747         * tools/gst-inspect.c: (print_signal_info):
3748           print signal arguments as pointers if they are
3749
3750 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
3751
3752         * docs/pwg/building-boiler.xml:
3753           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
3754
3755 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3756
3757         * gst/parse/parse.l:
3758         * testsuite/parse/parse1.c: (main):
3759         Since parse can do 'element name=a:b' make 'a:b.' work as
3760         well. 
3761         Added testcase to verify fix.
3762
3763 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3764
3765         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
3766         Use the realpad when printing the direction.
3767         Add extra \n when printing extensions of typefind factories.
3768
3769 2004-10-13  David Schleef  <ds@schleef.org>
3770
3771         * examples/manual/Makefile.am: $< isn't portable in Makefile
3772         rules.
3773
3774 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
3775
3776         * docs/gst/tmpl/gstobject.sgml:
3777         * docs/gst/tmpl/gstplugin.sgml:
3778         * docs/gst/tmpl/gstpluginfeature.sgml:
3779         * docs/gst/tmpl/gstregistry.sgml:
3780         * docs/gst/tmpl/gstversion.sgml:
3781         * gst/gstbin.c:
3782           more api documentation
3783         * gst/gstplugin.c: (gst_plugin_register_func),
3784         (gst_plugin_check_file), (gst_plugin_load_file):
3785           better error signaling and logging
3786
3787 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3788
3789         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
3790           Subtract current queue contents from position queries.
3791
3792 2004-10-11  Johan Dahlin  <johan@gnome.org>
3793
3794         * gst/gsturi.c (gst_uri_get_location): unescape string
3795         (gst_uri_construct): escape string.
3796
3797 2004-10-11  Benjamin Otte  <otte@gnome.org>
3798
3799         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
3800         (gst_pad_try_set_caps_nonfixed):
3801           allow renegotiation of unconnected pads (as inside spider). Simply
3802           return OK if unconnected - mimic try_set_caps there.
3803
3804 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3805
3806         * gst/gstbin.c: (gst_bin_sync_children_state):
3807           Add missing break.
3808
3809 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3810
3811         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
3812         Set element to EOS before sending EOS event
3813
3814 2004-10-08  Wim Taymans  <wim at fluendo dot com>
3815
3816         * gst/elements/gsttypefindelement.c:
3817         (gst_type_find_element_handle_event):
3818         Handle EOS events when doing the transition from
3819         typefind to data passing. This should fix the
3820         infinite loops in short files.
3821
3822 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3823
3824         * gst/gstthread.c: (gst_thread_change_state),
3825         (gst_thread_child_state_change):
3826         Make sure no iteration happens while performing
3827         the state change as it could mess up the internal
3828         consistency of the thread state.
3829
3830 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3831
3832         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
3833         (gst_thread_change_state), (gst_thread_child_state_change):
3834         Do not try to grab the iterate lock in the state change method
3835         when we are in the same thread as the iterate or else we
3836         could deadlock. Some other cleanups.
3837
3838 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3839
3840         * configure.ac:
3841           bump nano to cvs
3842
3843 === release 0.8.7 ===
3844
3845 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3846
3847         * configure.ac:
3848         * NEWS:
3849         * RELEASE:
3850         * configure.ac:
3851           releasing 0.8.7, "A Cruise"
3852
3853 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3854
3855         * docs/random/mimetypes:
3856         Add an entry for Sony ATRAC3 audio format with mime-type
3857         used by rmdemux et riff-read
3858
3859 2004-10-06  Wim Taymans  <wim at fluendo dot com>
3860
3861         * gst/elements/gsttypefindelement.c: (stop_typefinding):
3862         Push the buffer store instead of clearing it in case that
3863         the stream is not seekable.
3864
3865 2004-10-06  Wim Taymans  <wim at fluendo dot com>
3866
3867         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
3868         (gst_thread_main_loop):
3869         Lock the iteration and the state change so that automatic
3870         negotiation and fixation does not happen at the same time
3871         as the in stream negotiation.
3872
3873 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3874
3875         * configure.ac:
3876           bump nano to cvs
3877
3878 === release 0.8.6 ===
3879
3880 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3881
3882         * configure.ac:
3883         * NEWS:
3884         * RELEASE:
3885         * configure.ac:
3886           releasing 0.8.6, "Narc"
3887
3888 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3889
3890         * configure.ac:
3891           prerel bump
3892
3893 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3894
3895         patch by: Steve Lhomme
3896
3897         * gst/elements/gstfakesrc.c:
3898         * gst/elements/gstidentity.c:
3899         * gst/gstthread.c:
3900           Fix for #153881
3901
3902 2004-10-01  Wim Taymans  <wim at fluendo dot com>
3903
3904         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
3905         Fix threadsafety of the crc checking function.
3906
3907 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
3908
3909         patch by: Ronald Bultje
3910
3911         * gst/elements/gsttypefindelement.c: (stop_typefinding),
3912         (gst_type_find_element_handle_event),
3913         (gst_type_find_element_chain):
3914         * gst/elements/gsttypefindelement.h:
3915          #153657.
3916          Filter out discont event from seekable sources when typefind
3917          asks them to seek.  Fixes typefind with demuxers for
3918          avi, asf and matroska.
3919
3920 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
3921
3922         * docs/gst/gstreamer-sections.txt:
3923         * gst/gstcaps.c:
3924         * gst/gstcaps.h:
3925         * gst/gstpad.c:
3926           Revert preferred caps: (#147789)
3927
3928 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
3929
3930         * win32/dirent.c:
3931           fix a memory leak
3932
3933 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3934
3935         * configure.ac:
3936           bump for prerelease
3937
3938 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3939
3940         * docs/Makefile.am:
3941         * docs/manual/elements-api.xml:
3942           restructure so that common stuff is shown first
3943         * docs/manual/init-api.xml:
3944           convert to examples
3945         * docs/manual/manual.xml:
3946         * docs/manuals.mak:
3947         * docs/url.entities:
3948           link to API on the website, possibly override later in build
3949         * examples/manual/.cvsignore:
3950           ignore more
3951         * examples/manual/Makefile.am:
3952           add more examples
3953         * examples/manual/extract.pl:
3954           error out on failure
3955
3956 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3957
3958         * docs/gst/tmpl/gstthread.sgml:
3959         * docs/manual/init-api.xml:
3960         * examples/manual/Makefile.am:
3961           convert two code bits to examples
3962
3963 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3964
3965         * gst/gstelement.c: (gst_element_change_state):
3966           Well, actually, I was about to remove this insane assert when
3967           I noticed Wim already did that. A warning is nice so we can
3968           fix actual ugs (using --g-fatal-warnings and backtraces), so
3969           I added that instead.
3970
3971 2004-09-06  Wim Taymans  <wim@fluendo.com>
3972
3973         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
3974         (gst_element_threadsafe_properties_post_run),
3975         (gst_element_set_state), (gst_element_change_state):
3976         Added extra refcounting around various places. 
3977
3978 2004-09-06  Wim Taymans  <wim@fluendo.com>
3979
3980         * gst/gstpad.c: (gst_pad_link_call_link_functions):
3981         Fix debug info.
3982
3983 2004-09-06  Wim Taymans  <wim@fluendo.com>
3984
3985         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3986         (remove_from_group):
3987         Some more debug info.
3988
3989 2004-09-03  Wim Taymans  <wim@fluendo.com>
3990
3991         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3992         (gst_fakesrc_init), (gst_fakesrc_set_clock),
3993         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3994         (gst_fakesrc_get), (gst_fakesrc_change_state):
3995         * gst/elements/gstfakesrc.h:
3996         * gst/elements/gstidentity.c: (gst_identity_class_init),
3997         (gst_identity_init), (gst_identity_chain),
3998         (gst_identity_set_property), (gst_identity_get_property),
3999         (gst_identity_change_state):
4000         * gst/elements/gstidentity.h:
4001         Added datarate properties to limit the datarate.
4002
4003 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4004
4005         * gst/autoplug/gstspider.c: (plugin_init):
4006           don't set a rank. We don't want to autoplug by inserting spiders.
4007
4008 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4009
4010         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4011         (gst_spider_identity_plug):
4012           add a template for spider's sink
4013         * gst/gst.c: (gst_register_core_elements):
4014           queue's rank should be NULL, we don't want spider to add it.
4015
4016 2004-08-18  David Schleef  <ds@schleef.org>
4017
4018         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4019         * docs/libs/Makefile.am: same
4020         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4021         * docs/random/ds/0.9-planning: random additions
4022         * docs/random/ds/0.9-suggested-changes: same
4023         * gst/gstxml.h: remove vestigal GstXMLNs definition
4024
4025         Preferred caps: (#147789)
4026         * docs/gst/gstreamer-sections.txt: Add symbols
4027         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4028         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4029         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4030         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4031         (gst_caps_get_preferred), (gst_caps_set_preferred),
4032         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4033         (gst_caps_use_preferred): Handle caps preferences
4034         * gst/gstcaps.h: Add caps preferences
4035         * gst/gstpad.c: (gst_pad_link_get_preferred),
4036         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4037         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4038         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4039         negotiation.
4040
4041 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4042
4043         * gst/autoplug/gstspideridentity.c:
4044         (gst_spider_identity_request_new_pad):
4045         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4046         (gst_aggregator_init):
4047         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4048         (gst_fakesink_init):
4049         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4050         (gst_fakesrc_init):
4051         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4052         (gst_fdsink_init):
4053         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4054         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4055         (gst_filesink_init):
4056         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4057         (gst_filesrc_init):
4058         * gst/elements/gstidentity.c: (gst_identity_base_init),
4059         (gst_identity_init):
4060         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4061         (gst_multifilesrc_init):
4062         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4063         (gst_pipefilter_init):
4064         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4065         (gst_statistics_init):
4066         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4067         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4068           s/gst_pad_new/&_from_template/
4069           register pad templates in the base_init function
4070           add static pad template definitions
4071
4072 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4073
4074         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4075         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4076         * testsuite/refcounting/pad.c: (main):
4077         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4078           s/gst_pad_new/&_from_template/
4079           prepare deprecation of gst_pad_new
4080
4081 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4082
4083         patch by: Luca Ognibene <skaboy81@virgilio.it>
4084
4085         * gst/gstcaps.c:
4086         * gst/gstelement.c:
4087         * gst/gstpad.c:
4088         * gst/gstxml.c:
4089           fix memleaks.  Fixes #150001
4090
4091 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4092
4093         * docs/random/ds/0.9-suggested-changes:
4094           add notes - mostly about pad templates
4095
4096 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4097
4098         * win32/GStreamer.vcproj:
4099           temporary locale files are .gmo not .mo
4100
4101 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4102
4103         * configure.ac: bump nano to cvs
4104
4105 === release 0.8.5 ===
4106
4107 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4108
4109         * configure.ac:
4110           releasing 0.8.5, "Stuttgart"
4111         * NEWS:
4112         * RELEASE:
4113         * configure.ac:
4114         * docs/random/release:
4115           updates for release
4116
4117 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4118
4119         patch by: Wim Taymans (wim@fluendo.com)
4120
4121         * gst/gstbuffer.c:
4122         * gst/gstindex.h:
4123         * libs/gst/dataprotocol/dataprotocol.c:
4124           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4125
4126 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4127
4128         * Makefile.am:
4129         * win32/MANIFEST:
4130           add win32 dir to the build.  Fixes #149981.
4131
4132 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4133
4134         * configure.ac:
4135           bump libtool versioning
4136         * gst/gststructure.c:
4137           mark function as static
4138         * po/af.po:
4139         * po/az.po:
4140         * po/ca.po:
4141         * po/cs.po:
4142         * po/en_GB.po:
4143         * po/fr.po:
4144         * po/nl.po:
4145         * po/sq.po:
4146         * po/sr.po:
4147         * po/sv.po:
4148         * po/tr.po:
4149         * po/uk.po:
4150           translations update
4151         * win32/README.txt:
4152           trademark protection
4153
4154 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4155
4156         * configure.ac:
4157           fix GST_ORIGIN
4158           set GST_PACKAGE to source, and distinguish between release and other
4159         * tools/gst-inspect.c:
4160           print out plugin an element factory is part of so we see this info
4161
4162 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4163
4164         * docs/gst/gstreamer-sections.txt:
4165         * docs/gst/tmpl/gstbuffer.sgml:
4166         * docs/gst/tmpl/gstschedulerfactory.sgml:
4167           reorder docs a little, make GstBuffer's more sensible.
4168         * gst/gstbuffer.h:
4169           API: added GST_BUFFER_FLAG_DELTA_UNIT
4170         * gst/gstscheduler.c:
4171           comment API addition
4172
4173 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4174
4175         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4176           work with non-regular files that can be mmapped (like /dev/zero)
4177         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4178           get rid of typefinds that require a seek when we can't seek instead
4179           of trying them over and over again
4180         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4181           return non-zero failure value when the pipeline was interrupted or
4182           an error occurred
4183
4184 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4185
4186         * win32/config.h:
4187         * win32/GStreamer.vcproj:
4188           compile and install the locales
4189
4190 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4191
4192         * gst/gstvalue.c:
4193           fix a possible memory leak under Windows
4194
4195 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4196
4197         * win32/GStreamer.vcproj:
4198           fix a memory leak that occured under Windows
4199         * win32/gstreamer.def:
4200           add gst_scheduler_register
4201
4202 2004-08-11  Benjamin Otte  <otte@gnome.org>
4203
4204         * docs/gst/gstreamer-sections.txt:
4205         * gst/gstscheduler.c: (gst_scheduler_register):
4206         * gst/gstscheduler.h:
4207           API:
4208           add gst_scheduler_register shortcut similar to gst_element_register
4209         * gst/schedulers/entryscheduler.c: (plugin_init):
4210         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4211         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4212           use it
4213
4214 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4215
4216         * gst/gstvalue.h:
4217           fix a memory leak that occured under Windows
4218
4219 2004-08-10  Colin Walters  <walters@redhat.com>
4220
4221         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4222         Don't use O_EXCL to open temporary registry.  It will prevent
4223         registry creation if a temporary one already exists, which
4224         is unnecessary.
4225
4226 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4227
4228         * docs/gst/gstreamer-sections.txt:
4229         * docs/gst/tmpl/gstvalue.sgml:
4230           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4231
4232 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4233
4234         * win32/gstbytestream.vcproj:
4235         * win32/gstelements.vcproj:
4236         * win32/gstgetbits.vcproj:
4237         * win32/gst-inspect.vcproj:
4238         * win32/gst-launch.vcproj:
4239         * win32/gstoptimalscheduler.vcproj:
4240         * win32/GStreamer.vcproj:
4241         * win32/gst-register.vcproj:
4242         * win32/gstspider.vcproj:
4243           update the include and lib dirs to fit standard libraries as
4244           described in the Win32 manual
4245
4246 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4247
4248         * win32/config.h:
4249         * win32/gstversion.h:
4250           enable NLS again, push the version number for the coming 0.8.5 release
4251
4252 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4253
4254         * gst/gstvalue.h:
4255           export gst_type_XXX for windows DLLs
4256
4257 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4258
4259         * docs/faq/gst-uninstalled:
4260           fix PKG_CONFIG_PATH and PYTHONPATH
4261         * gst/schedulers/Makefile.am:
4262           cleanup
4263         * libs/gst/bytestream/bytestream.c:
4264           remove newline
4265         * po/LINGUAS:
4266         * po/sq.po:
4267           adding Albanian translation (Laurent Dhima)
4268         * po/cs.po:
4269           updated
4270
4271 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4272
4273         * po/ca.po:
4274         * po/sv.po:
4275           updated translations
4276
4277 2004-08-04  Benjamin Otte  <otte@gnome.org>
4278
4279         * tests/mass_elements.c: (main):
4280           allow specifying src and sink element explicitly, so I can test
4281           videotestsrc instead of fakesrc
4282
4283 2004-08-04  Benjamin Otte  <otte@gnome.org>
4284
4285         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4286         (gst_structure_id_empty_new), (gst_structure_empty_new),
4287         (gst_structure_copy):
4288           add gst_structure_id_empty_new_with_size to allow preallocating
4289           value array sizes. Use this in gst_structure_copy to get rid of
4290           reallocs.
4291           don't do quark=>string=>quark when copying structures
4292
4293 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4294
4295         * docs/manual/win32.xml:
4296         * win32/README.txt:
4297           update documentation with the clean version of dependencies
4298
4299 2004-08-03  Benjamin Otte  <otte@gnome.org>
4300
4301         * gst/schedulers/entryscheduler.c:
4302         (gst_entry_scheduler_remove_element):
4303           fix for GST_DISABLE_DEBUG
4304         * tools/gst-launch.c: (print_tag):
4305           fixes for G_DISABLE_ASSERT
4306
4307 2004-08-03  Benjamin Otte  <otte@gnome.org>
4308
4309         * gst/gst.c: (gst_register_core_elements):
4310           fix for G_DISABLE_ASSERT
4311         * gst/gstinfo.c: (__gst_in_valgrind):
4312           add for GST_DISABLE_DEBUG
4313
4314 2004-08-03  Benjamin Otte  <otte@gnome.org>
4315
4316         * gst/parse/parse.l:
4317           fix for G_DISABLE_ASSERT
4318
4319 2004-08-03  Wim Taymans  <wim@fluendo.com>
4320
4321         * gst/gstbin.c: (gst_bin_get_type),
4322         (gst_bin_child_state_change_func):
4323         * gst/gstthread.c: (gst_thread_change_state):
4324         Backported some debug logging from a reverted patch
4325         Don't try to destroy the thread twice. Added some more
4326         debugging in GstThread. Unlock and signal even if we
4327         are in the thread context.
4328
4329 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4330
4331         * po/uk.po:
4332           updated translation
4333
4334 2004-07-30  David Schleef  <ds@schleef.org>
4335
4336         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4337
4338 2004-07-29  David Schleef  <ds@schleef.org>
4339
4340         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4341         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4342
4343 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4344
4345         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4346         (gst_bin_add_func), (gst_bin_remove_func),
4347         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4348         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4349         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4350         (gst_bin_sync_children_state):
4351         * gst/gstbin.h:
4352         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4353         (gst_thread_change_state):
4354         * testsuite/states/Makefile.am:
4355           revert state change patches as agreed so we can rework them
4356           gradually
4357
4358 2004-07-29  Benjamin Otte  <otte@gnome.org>
4359
4360         * libs/gst/control/Makefile.am:
4361           link to libgstreamer (fixes Debian bug 262019, see
4362           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
4363
4364 2004-07-29  Wim Taymans  <wim@fluendo.com>
4365
4366         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4367         (check_from_fraction_convert), (transform_test), (main):
4368         Make the test less pedantic about float roundoff errors.
4369
4370 2004-07-29  Benjamin Otte  <otte@gnome.org>
4371
4372         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
4373         (gst_filesrc_srcpad_event):
4374           make seek events to before start/after end of file not fail, but
4375           seek to start/end instead
4376         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
4377           add more output
4378
4379 2004-07-29  Benjamin Otte  <otte@gnome.org>
4380
4381         * gst/gstpad.c: (gst_pad_set_explicit_caps):
4382           check that caps are fixed
4383         * gst/gstpad.c: (gst_pad_template_new):
4384           don't try to simplify caps, costs too much time on gst_init
4385         * gst/gstplugin.c: (gst_plugin_add_feature):
4386           G_ERROR if features are added twice
4387         * gst/gsttypefind.c: (gst_type_find_register):
4388         * gst/gstelementfactory.c: (gst_element_register):
4389           don't add features twice
4390         * docs/random/ds/0.9-suggested-changes:
4391           add note about possible gst_init optimization
4392
4393 2004-07-28  David Schleef  <ds@schleef.org>
4394
4395         * testsuite/elements/Makefile.am:
4396         * testsuite/elements/struct_i386.h:
4397         * testsuite/elements/struct_size.c: (main):  A little test
4398         to keep distcheck from working if someone changes a structure
4399         size accidentally.
4400
4401 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4402
4403         * docs/libs/Makefile.am:
4404         * docs/libs/gstreamer-libs-docs.sgml:
4405         * docs/libs/gstreamer-libs-sections.txt:
4406         * docs/libs/tmpl/gstbytestream.sgml:
4407         * docs/libs/tmpl/gstcontrol.sgml:
4408         * docs/libs/tmpl/gstdataprotocol.sgml:
4409         * docs/libs/tmpl/gstgetbits.sgml:
4410         * libs/gst/bytestream/Makefile.am:
4411         * libs/gst/bytestream/bytestream.c:
4412         * libs/gst/bytestream/bytestream.h:
4413         * libs/gst/control/Makefile.am:
4414         * libs/gst/dataprotocol/Makefile.am:
4415         * libs/gst/getbits/Makefile.am:
4416         * libs/gst/getbits/getbits.h:
4417           various doc and style fixes, adding bytestream to libs docs.
4418
4419 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4420
4421         * docs/gst/gstreamer-docs.sgml:
4422         * docs/libs/Makefile.am:
4423         * docs/libs/gstreamer-libs-docs.sgml:
4424         * docs/libs/gstreamer-libs-sections.txt:
4425         * libs/gst/control/dparam.c:
4426           more doc fixes.  gst-libs docs now build the same way as gst.
4427
4428 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4429
4430         * configure.ac:
4431         * testsuite/Makefile.am:
4432         * testsuite/bins/Makefile.am:
4433         * testsuite/caps/Makefile.am:
4434         * testsuite/cleanup/Makefile.am:
4435         * testsuite/clock/Makefile.am:
4436         * testsuite/debug/Makefile.am:
4437         * testsuite/dlopen/Makefile.am:
4438         * testsuite/dynparams/Makefile.am:
4439         * testsuite/elements/.cvsignore:
4440         * testsuite/elements/Makefile.am:
4441         * testsuite/enumcaps/Makefile.am:
4442         * testsuite/enumcaps/enumcaps.c:
4443         * testsuite/ghostpads/Makefile.am:
4444         * testsuite/indexers/Makefile.am:
4445         * testsuite/negotiation/Makefile.am:
4446         * testsuite/parse/Makefile.am:
4447         * testsuite/plugin/Makefile.am:
4448         * testsuite/refcounting/Makefile.am:
4449         * testsuite/schedulers/.cvsignore:
4450         * testsuite/states/Makefile.am:
4451         * testsuite/tags/Makefile.am:
4452         * testsuite/threads/Makefile.am:
4453           fold enumcaps into caps dir
4454           clean up Makefile.am's for testsuite
4455
4456 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4457
4458         * docs/gst/Makefile.am:
4459         * docs/libs/Makefile.am:
4460           clean up docs build.  Fixes needless rebuilding of template files.
4461
4462 2004-07-28  Wim Taymans  <wim@fluendo.com>
4463
4464         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
4465         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
4466         Make sure that a bin state change tries to keep the children
4467         in sync. 
4468         Added debug logging to the thread.
4469
4470 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4471
4472         * win32/GStreamer.vcproj:
4473         * win32/gstreamer.def:
4474           more exports for the plugins
4475
4476 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4477
4478         * win32/gstgetbits.vcproj:
4479         * win32/gstgetbits.def:
4480         * win32/msvc71.sln:
4481           add support for the getbits plugin
4482
4483 2004-07-27  Wim Taymans  <wim@fluendo.com>
4484
4485         * gst/gstvalue.c: (gst_value_transform_double_fraction),
4486         (gst_value_transform_fraction_double), (_gst_value_initialize):
4487         * testsuite/caps/Makefile.am:
4488         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4489         (check_from_fraction_convert), (transform_test), (main):
4490         Added transform functions between double and fraction.
4491         Added testcase to verify transforms
4492
4493 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4494
4495         * win32/GStreamer.vcproj:
4496           rename GStreamer-0.8.lib to libgstreamer.lib
4497
4498 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4499
4500         * win32/gstelements.vcproj:
4501         * win32/gstoptimalscheduler.vcproj:
4502           fixes for the Release build
4503
4504 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4505
4506         * win32/config.h:
4507           update the version number
4508
4509 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4510
4511         * win32/GStreamer.vcproj:
4512           add gstinterface to the build
4513
4514 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4515
4516         * win32/gstreamer.def:
4517           add many definitions needed by plugins,
4518           GST_CAT_DEFAULT only available in the Debug build ?
4519
4520 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4521
4522         * gst/gstelement.c: (gst_element_set_eos_recursive):
4523           various whitespace fixes.
4524           doc fix, fixes #148497
4525
4526 2004-07-25  Benjamin Otte  <otte@gnome.org>
4527
4528         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
4529           don't delay links on the sink elements, it causes unnegotiated
4530           links.
4531         * gst/elements/gsttypefindelement.c:
4532         (gst_type_find_element_base_init):
4533           add our padtemplates, we indeed do have some.
4534         * gst/elements/gsttypefindelement.c:
4535         (gst_type_find_element_handle_event),
4536         (gst_type_find_element_chain):
4537           don't push data when typefinding failed.
4538         * gst/gstpad.c: (gst_pad_link_fixate):
4539           check that no fixate function returns empty caps.
4540         * gst/gstpad.c: (gst_pad_push):
4541           check that the link is negotiated before data gets pushed.
4542         * tools/gst-register.c: (main):
4543           don't assert (fixes #148283)
4544
4545 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4546
4547         * docs/gst/gstreamer-sections.txt:
4548         * docs/gst/tmpl/gstconfig.sgml:
4549           add GST_PLUGIN_EXPORT definition
4550
4551 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4552
4553         * gst/gstplugin.h:
4554         * gst/gstconfig.h.in:
4555         * win32/gstconfig.h:
4556         * win32/gstelements.def:
4557         * win32/gstelements.vcproj:
4558         * win32/gstoptimalscheduler.def:
4559         * win32/gstoptimalscheduler.vcproj:
4560         * win32/gstspider.def:
4561         * win32/gstspider.vcproj:
4562           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
4563
4564 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4565
4566         * docs/gst/gstreamer-sections.txt:
4567           remove GST_CAT_DEFAULT because the type has changed
4568
4569 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4570
4571         * win32/gstbytestream.vcproj:
4572         * win32/gstelements.vcproj:
4573         * win32/gst-inspect.vcproj:
4574         * win32/gst-launch.vcproj:
4575         * win32/gstoptimalscheduler.vcproj:
4576         * win32/GStreamer.vcproj:
4577         * win32/gst-register.vcproj:
4578         * win32/gstspider.vcproj:
4579         * win32/msvc71.sln:
4580           Copy the files where needed after building, The testsuite will be
4581           built separately
4582
4583 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4584
4585         * win32/config.h:
4586         * win32/README.txt:
4587         * docs/manual/win32.xml:
4588         Fixed the plugin and GStreamer location
4589
4590 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4591
4592         * win32/gstreamer.def:
4593         More exports for the plugins
4594
4595 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4596
4597         * gst/gstinfo.h:
4598         Marc was right, we need to export literally GST_CAT_DEFAULT
4599
4600 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4601
4602         * win32/config.h:
4603         NLS crashes in gettext, disabled until this is solved
4604
4605 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4606
4607         * win32/gst-inspect.vcproj:
4608         * win32/gst-launch.vcproj:
4609         Should use NLS when available
4610
4611 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4612
4613         * gst/registries/gstxmlregistry.c:
4614         removing the file doesn't seem to be a good idea on Linux
4615
4616 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4617
4618         * gst/registries/gstxmlregistry.c:
4619         Remove the registry before renaming the tempfile (needed for Windows)
4620
4621 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4622
4623         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
4624         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
4625         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
4626         * gst/elements/gstmultifilesrc.h:
4627         Added newmedia property so it generates newmedia events between each
4628         file when property is set, as well as fixed eos handling
4629
4630 2004-07-22  David Schleef  <ds@schleef.org>
4631
4632         * gst/gststructure.c: (gst_structure_id_empty_new),
4633         (gst_structure_empty_new):  Set type field correctly.
4634         * gst/gststructure.h: Check type field correctly.
4635         * testsuite/caps/Makefile.am:
4636         * testsuite/caps/structure.c: (test1), (main): Add a very small
4637         test for structures.
4638
4639 2004-07-22  David Schleef  <ds@schleef.org>
4640
4641         * docs/random/ds/0.9-suggested-changes: more comments
4642         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
4643
4644 2004-07-22  Benjamin Otte  <otte@gnome.org>
4645
4646         * gst/gstelementfactory.c: (gst_element_register):
4647           set the factory in the class struct, so gst_element_get_factory
4648           actually works
4649         * gst/parse/grammar.y:
4650           set element to playing when it gets unlocked as we can't rely on the
4651           bin state - all elements in the bin state might still be locked in
4652           NULL)
4653
4654 2004-07-22  Benjamin Otte  <otte@gnome.org>
4655
4656         * gst/gstelement.c: (gst_element_set_state_func):
4657           make this a static function
4658
4659 2004-07-22  Wim Taymans  <wim@fluendo.com>
4660
4661         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
4662         (gst_opt_scheduler_pad_link):
4663         fix 147894-2 and the group_link problem.
4664
4665 2004-07-22  Wim Taymans  <wim@fluendo.com>
4666
4667         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4668         (handoff_identity), (main):
4669         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4670         (handoff_identity), (main):
4671         * testsuite/schedulers/Makefile.am:
4672         * testsuite/schedulers/group_link.c: (main):
4673         Show bug in scheduler when linking chain and loop based element 
4674         where the chain based element was not yet in a group.
4675
4676 2004-07-21  Benjamin Otte  <otte@gnome.org>
4677
4678         * gst/.cvsignore:
4679         * gst/autoplug/.cvsignore:
4680         * gst/elements/.cvsignore:
4681         * gst/indexers/.cvsignore:
4682         * libs/gst/bytestream/.cvsignore:
4683         * libs/gst/control/.cvsignore:
4684         * libs/gst/getbits/.cvsignore:
4685         * testsuite/states/.cvsignore:
4686         * testsuite/threads/.cvsignore:
4687           keep this up to date, since I seem to be the only one who cares
4688           about not missing files on commits (editor's note: no you don't,
4689           but feel free to change them at the time you add stuff instead
4690           of later on)
4691
4692 2004-07-21  Benjamin Otte  <otte@gnome.org>
4693
4694         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4695         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
4696         (gst_bin_child_state_change_func), (set_kid_state_func),
4697         (gst_bin_set_state), (gst_bin_change_state_norecurse):
4698           make state changes work correctly and reentrant (so removing
4699           elements from bins during state changes of bins doesn't cause
4700           segfaults or even wrong states)
4701           add debugging category and debugging output to print children states
4702         * gst/gstbin.c: (gst_bin_dispose): 
4703           add some assertion checks
4704         * gst/gstbin.h:
4705         * gst/gstbin.c: (gst_bin_sync_children_state):
4706           deprecate this function - it just does gst_bin_set_state (bin,
4707           GST_STATE (bin)) 
4708         * testsuite/threads/queue.c: (main):
4709           don't use gst_bin_sync_children_state anymore
4710         * testsuite/states/Makefile.am:
4711         * testsuite/states/bin.c:
4712           test that the state changes of bins work as expected
4713         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
4714           some adjustments to change states correctly, too
4715         * gst/gstthread.c: (gst_thread_change_state):
4716           don't enable/disable "threadsafe" properties, they're unused and
4717           cause random segfaults
4718         * testsuite/threads/Makefile.am:
4719           the queue check randomly passes now, ignore it
4720
4721 2004-07-21  Benjamin Otte  <otte@gnome.org>
4722
4723         * gst/gstpad.c:
4724           check if data is NULL before outputting debug info. (fixes #145100)
4725
4726 2004-07-21  Benjamin Otte  <otte@gnome.org>
4727
4728         * gst/schedulers/entryscheduler.c:
4729         (gst_entry_scheduler_loop_wrapper),
4730         (gst_entry_scheduler_chain_wrapper),
4731         (gst_entry_scheduler_get_wrapper):
4732           reset the state when the cothread starts, so we don't get assertion
4733           failures on restarting of cothreads
4734
4735 2004-07-20  Benjamin Otte  <otte@gnome.org>
4736
4737         * gst/gstelement.c: (gst_element_link_pads_filtered):
4738           use correct sinkpad, if only sinkpad is specified, but not srcpad
4739           (fixes #147889)
4740         * gst/gstelement.c: (gst_element_set_state_func),
4741         (gst_element_change_state): ref/unref the element, signal handlers
4742         could get rid of the element otherwise
4743
4744 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4745
4746         * docs/random/ds/0.9-suggested-changes:
4747           Make note about renaming fixed-list to array.
4748         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
4749         (_gst_value_initialize):
4750           Add array intersections.
4751         * testsuite/caps/intersect2.c: (main):
4752           Add test for array intersections.
4753
4754 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4755
4756         * configure.ac: back to cvs
4757
4758 === release 0.8.4 ===
4759
4760 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4761
4762         * configure.ac:
4763           releasing 0.8.4, "Paella"
4764           bump libtool versioning
4765
4766 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4767
4768         * po/LINGUAS:
4769         * po/ca.po:
4770           adding Catalan translation (Jordi Mallach)
4771
4772 2004-07-20  Wim Taymans  <wim@fluendo.com>
4773
4774         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4775         (handoff_identity), (main):
4776         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4777         (handoff_identity), (main):
4778         * testsuite/schedulers/Makefile.am:
4779         Added failing testcase for variant of #147894
4780
4781 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4782
4783         patch by: David Moore
4784
4785         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4786         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
4787         (group_migrate_connected):
4788         * testsuite/schedulers/Makefile.am:
4789           fix for #142813 (Deadlock in optimal scheduler)
4790
4791 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4792
4793         patch by: Wim Taymans
4794
4795         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4796         (gst_opt_scheduler_schedule_run_queue),
4797         (gst_opt_scheduler_get_wrapper), (get_group),
4798         (group_migrate_connected):
4799         * testsuite/schedulers/Makefile.am:
4800           fix for #147819 (Add some checks in the opt scheduler)
4801
4802 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4803
4804         patch by: Benjamin Otte
4805
4806         * gst/gstelementfactory.c: (__gst_element_details_set):
4807           fix for #147929: running gst-register in non-utf8 locale can cause
4808           invalid registry
4809
4810 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4811
4812         patch by: Wim Taymans
4813
4814         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
4815         (group_has_element), (element_get_reachables_func),
4816         (group_migrate_connected):
4817           fix for #147894 (opt scheduler decoupled elements mismanagement)
4818         * testsuite/schedulers/Makefile.am:
4819           testsuite app now passes
4820
4821 2004-07-19  Wim Taymans  <wim@fluendo.com>
4822
4823         * testsuite/schedulers/147819.c: (handoff_identity1),
4824         (handoff_identity2), (main):
4825         * testsuite/schedulers/Makefile.am:
4826         Added testcase for bug 147819
4827
4828 2004-07-19  Wim Taymans  <wim@fluendo.com>
4829
4830         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4831         (handoff_identity), (main):
4832         * testsuite/schedulers/Makefile.am:
4833         Added testcase for bug 147894
4834
4835 2004-07-16  Wim Taymans  <wim@fluendo.com>
4836
4837         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
4838         * testsuite/schedulers/142183.c: (handoff_identity), (main):
4839         * testsuite/schedulers/Makefile.am:
4840         Added testsuite for bug 142183 in its two incarnations. Refcount
4841         is not increased for scheduled elements and threadsafe properties
4842         mutexes are not properly unlocked.
4843
4844 2004-07-16  Wim Taymans  <wim@fluendo.com>
4845
4846         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
4847         (create_chain), (destroy_chain), (create_group), (destroy_group),
4848         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
4849         (group_dec_link), (gst_opt_scheduler_pad_link),
4850         (group_inc_links_for_element), (group_migrate_connected):
4851         Call group_inc_link with the proper src->sink ordering -- 
4852         break this, and we break sort_chain. patch from wingo for bug
4853         147713.
4854         Partially revert patch 1.89. When adding a loop based element to 
4855         the scheduler, the links to other groups are automatically followed
4856         and incremented. This should not happen because the bin will call
4857         pad_link explicitly for those connection, resulting in them counted 
4858         twice. Results in assertion failure on pipeline cleanup.
4859
4860 2004-07-16  Wim Taymans  <wim@fluendo.com>
4861
4862         * testsuite/schedulers/143777-2.c: (main):
4863         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
4864         (main):
4865         * testsuite/schedulers/Makefile.am:
4866         Added cleanup code to testcase 143777-2.
4867         Added testcase to show bug 147713, does not really show the
4868         deadlock as I can't figure out how to trigger it, but it does
4869         demonstrate bad ordering in the scheduler.
4870
4871 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4872
4873         * gst/gstvalue.c: (gst_value_deserialize_fraction):
4874           change strndup to g_strndup.  Fixes #147707
4875
4876 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4877
4878         * po/af.po:
4879         * po/az.po:
4880         * po/cs.po:
4881         * po/en_GB.po:
4882         * po/fr.po:
4883         * po/nl.po:
4884         * po/sr.po:
4885         * po/sv.po:
4886         * po/tr.po:
4887         * po/uk.po:
4888           updated translations
4889
4890 2004-07-16  Benjamin Otte  <otte@gnome.org>
4891
4892         * gst/gstvalue.c: (gst_greatest_common_divisor):
4893           use ints and return ints, fractions only use ints, too, so this
4894           avoids accidently casting multiplications to unsigned
4895         (gst_value_lcopy_fraction): it's ints, not uint32
4896         (gst_value_set_fraction): disallow minint, multiplying and negation
4897           are broken with it
4898         (gst_value_fraction_multiply): fix to make large numbers work and get
4899         rid of the assumption that the multiplication of two ints fits an
4900         int64 - dunno if that's true for all systems
4901         * testsuite/caps/Makefile.am:
4902         * testsuite/caps/fraction-multiply-and-zero.c:
4903         (check_multiplication), (check_equal), (zero_test), (main):
4904           add tests for all the stuff above
4905         * testsuite/caps/value_compare.c: (test1):
4906           fix comment
4907         * tests/.cvsignore:
4908         * testsuite/caps/.cvsignore:
4909         * testsuite/debug/.cvsignore:
4910         * testsuite/dlopen/.cvsignore:
4911         * testsuite/states/.cvsignore:
4912           get up to date
4913
4914 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4915
4916         * docs/manual/bins-api.xml:
4917         * docs/manual/factories.xml:
4918         * docs/manual/helloworld.xml:
4919         * docs/manual/links-api.xml: 
4920           fixes for out of date info, incorrect info and grammar
4921
4922 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4923
4924         * docs/manual/pads.xml:
4925         * docs/manual/pads-api.xml: grammar fix
4926
4927 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4928
4929         * docs/manual/pads-api.xml: typo + grammar fix
4930
4931 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4932
4933         * docs/gst/gstreamer-sections.txt:
4934           add new symbols
4935         * docs/gst/tmpl/gstelement.sgml:
4936         * docs/gst/tmpl/gstpad.sgml:
4937         * docs/gst/tmpl/gsttypes.sgml:
4938         * docs/gst/tmpl/gstvalue.sgml:
4939           update docs
4940         * gst/gststructure.c: (gst_structure_set_valist),
4941         (gst_structure_from_abbr), (gst_structure_to_abbr):
4942         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
4943         (gst_greatest_common_divisor), (gst_value_init_fraction),
4944         (gst_value_copy_fraction), (gst_value_collect_fraction),
4945         (gst_value_lcopy_fraction), (gst_value_set_fraction),
4946         (gst_value_get_fraction_numerator),
4947         (gst_value_get_fraction_denominator),
4948         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
4949         (gst_value_deserialize_fraction),
4950         (gst_value_transform_fraction_string),
4951         (gst_value_transform_string_fraction),
4952         (gst_value_compare_fraction), (_gst_value_initialize):
4953         * gst/gstvalue.h:
4954           adding GstFraction GValue type, get/set, and multiply
4955         * testsuite/caps/Makefile.am:
4956         * testsuite/caps/fraction.c: (test), (main):
4957         * testsuite/caps/string-conversions.c: (main):
4958         * testsuite/caps/value_compare.c: (test1), (main):
4959           add regression tests for GstFraction
4960
4961 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4962         
4963         * docs/manual/init-api.xml: Grammar fix
4964
4965 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4966
4967         * docs/manual/states.xml: Fix inconsistent information
4968
4969 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4970
4971         * gst/gstelement.c: (gst_element_set_state):
4972         * gst/gstpad.c: (gst_pad_try_set_caps):
4973         * gst/gststructure.c:
4974         * gst/gstthread.c: (gst_thread_child_state_change):
4975         * gst/gstvalue.c: (gst_value_compare_double):
4976         * gst/gstvalue.h:
4977         * testsuite/parse/parse1.c: (main):
4978           debugging additions and style cleanups
4979
4980 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4981
4982         * docs/manual/states.xml: Grammar fix
4983
4984 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4985
4986         * docs/manual/pads.xml: Grammar fix
4987
4988 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4989
4990         * docs/manual/elements.xml: Fixed image reference
4991
4992 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4993
4994         * docs/manual/goals.xml: Grammar fix
4995
4996 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4997
4998         * docs/manual/motivation.xml:
4999         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5000
5001 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5002
5003         * docs/manual/motivation.xml: Fix spelling
5004
5005 2004-07-15  Benjamin Otte  <otte@gnome.org>
5006
5007         * gst/gstelement.h: 
5008           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5009           strings.
5010         * gst/gstelement.c (gst_element_class_init):
5011           GError's are boxed, not objects
5012         * gst/gstmarshal.list:
5013           update list for the fixed error signal
5014
5015 2004-07-14  Andy Wingo  <wingo@pobox.com>
5016
5017         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5018         there all along, but the function wasn't. (guile-gstreamer's build
5019         system uses the address of the function -- I wasn't actually
5020         trying to use this.)
5021
5022 2004-07-14  Andy Wingo  <wingo@pobox.com>
5023
5024         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5025         as gst_pad_proxy_pad_link) just link to every other pad when they
5026         are called. In the case where the graph has cycles, this will mean
5027         that a call to try_set_caps will recurse. Allow this recursion
5028         and return OK, while we wait for the first try_set_caps to give a
5029         proper return value.
5030         (gst_pad_link_call_link_functions): Since this function is the
5031         only one to set the NEGOTIATING flag on a pad, if the flag is set
5032         it means that the link functions have indirectly recursed. If this
5033         happens, error out to avoid infinite recursion and an eventual
5034         SEGV.
5035         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5036         (gst_pad_proxy_getcaps): Intersect the result with the template
5037         caps to ensure that the return value is valid.
5038
5039 2004-07-14  Andy Wingo  <wingo@pobox.com>
5040
5041         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5042         one refcount, the calling function is the owner of the buffer.
5043
5044 2004-07-14  Wim Taymans  <wim@fluendo.com>
5045
5046         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5047         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5048         Fix stupid warning when an element is to be migrated but
5049         is already migrated.
5050
5051 2004-07-14  Wim Taymans  <wim@fluendo.com>
5052
5053         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5054         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5055         Make sure that a single non-loop-based element does not 
5056         end up in a group. This fixes the testsuite again.
5057
5058 2004-07-14  Wim Taymans  <wim@fluendo.com>
5059
5060         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5061         (add_to_group), (merge_groups), (schedule_group),
5062         (gst_opt_scheduler_get_wrapper), (group_elements),
5063         (group_dec_link), (gst_opt_scheduler_pad_link),
5064         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5065         (gst_opt_scheduler_iterate):
5066         move isolated groups to a new chain.
5067         Emit a warning instead of segfaulting in some error cases.
5068         Fix a bug where the link count between groups was not calculated 
5069         correctly. Fixes #144510.
5070
5071 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5072         * gst/elements/gstfilesrc.c:
5073           Binary files support under Windows now OK
5074       
5075 2004-07-13  Benjamin Otte  <otte@gnome.org>
5076
5077           compatibility fixes for Solaris 8/gcc 2.95
5078         * configure.ac:
5079           include libintl libs in LDFLAGS
5080         * gstvalue.c (gst_value_deserialize_buffer):
5081           cast isxdigit stuff to int to silence compiler warning
5082
5083 2004-07-12  Benjamin Otte  <otte@gnome.org>
5084
5085         * gst/gsttypes.h:
5086           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5087           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5088           just causes support madness
5089         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5090           make it work without this
5091         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5092         (gst_file_index_commit):
5093           glib IO channels don't want binary mode
5094         * testsuite/bytestream/filepadsink.c: (main):
5095         * testsuite/bytestream/test1.c: (read_param_file):
5096           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5097
5098 2004-07-12  Benjamin Otte  <otte@gnome.org>
5099
5100         * gst/gstelement.c: (gst_element_class_init),
5101         (gst_element_set_state), (gst_element_set_state_func):
5102           virutalize gst_element_set_state, use set_state member in class
5103           struct that was already added in 0.7 for this.
5104         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5105         (gst_bin_change_state):
5106           make gst_bin_foreach works similar to other foreach functions, plug
5107           memleaks in it. Make functions using it work with the new approach.
5108           Document gst_bin_foreach, so it can be exported if we want to
5109         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5110           use virtualized set_state to make set_state on bins set the state of
5111           all its children.
5112
5113 2004-07-12  Benjamin Otte  <otte@gnome.org>
5114
5115         * configure.ac:
5116           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5117           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5118         * gst/gstpad.c: (gst_pad_alloc_buffer):
5119           allow buffer_alloc functions to return NULL and allocate a normal
5120           buffer in that case
5121
5122 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5123         * gst/elements/gstfilesink.c:
5124         * gst/elements/gstfilesrc.c:
5125         * gst/indexers/gstfileindex.c:
5126         * gst/gsttypes.h:
5127         * testsuite/bytestream/filepadsink.c:
5128         * testsuite/bytestream/test1.c:
5129           Handle binary files under Windows
5130
5131 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5132         * docs/manual/win32.xml:
5133         * win32/config.h:
5134         * win32/gst-register.vcproj:
5135         * win32/gstreamer.def:
5136           Update to another gettext public build
5137
5138 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5139         * gst/gstplugin.c:
5140           Fix an impossible C syntax
5141         * win32/config.h:
5142           Disable i18n under Windows for the moment
5143         * win32/gst-register.vcproj:
5144           Use this configuration
5145
5146 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5147         * docs/manual/quotes.xml:
5148           Keep the quotes file alive
5149         * docs/random/ds/0.9-suggested-changes:
5150           Add the suggestion of including a 'rowstride' as part of video
5151           format caps
5152
5153 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5154
5155         * gst/gstelement.c: (gst_element_set_state),
5156         (gst_element_change_state):
5157           d'oh.  Set PENDING state correctly before forcing bin to change.
5158         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5159         (gst_structure_parse_fixed_list):
5160         * gst/schedulers/gstoptimalscheduler.c:
5161         (gst_opt_scheduler_state_transition):
5162         * testsuite/states/parent.c: (main):
5163           remove comment now that it's fixed.
5164
5165 2004-07-11  Benjamin Otte  <otte@gnome.org>
5166
5167         * gst/gstclock.h:
5168           GST_SECOND shouldn't cause a conversion to unsigned.
5169         * testsuite/clock/.cvsignore:
5170         * testsuite/clock/Makefile.am:
5171         * testsuite/clock/signedness.c: (main):
5172           make sure it never will again
5173
5174 2004-07-11  Andy Wingo  <wingo@pobox.com>
5175
5176         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5177         whose state is higher than the bin state, raise the bin state to
5178         ensure that bin state := highest child state.
5179         
5180 2004-07-11  Andy Wingo  <wingo@pobox.com>
5181
5182         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5183         procedure on the children of a bin. Assumes that the procedure can
5184         change the set of children.
5185         (set_kid_state_func): New static function.
5186         (gst_bin_change_state): Use gst_bin_foreach to call
5187         set_kid_state_func. Fixes a bug: if a child had a state-change
5188         handler that removes it from the bin, there would be a segfault.
5189         Hopefully it should also work in the case where the state-change
5190         handler on one child adds or removes other children. In any case,
5191         fixes should go to gst_bin_foreach.
5192
5193 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5194
5195         * gst/gstelement.c: (gst_element_set_state):
5196           compatibility fix for latest plugins release.  Change loop back
5197           to while {}
5198
5199 2004-07-09  Wim Taymans  <wim@fluendo.com>
5200
5201         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5202         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5203         (gst_thread_main_loop):
5204         Since remove is virtual in GstBin we must not assume the 
5205         elements GList to have anothing useful.
5206         Add some more logging to GstThread and be a bit more paranoid
5207         when resetting the scheduler.
5208         Set the state of the bin to NULL before removing the children.
5209
5210 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5211
5212         * testsuite/threads/Makefile.am:
5213         * testsuite/threads/threadg.c:
5214           added test to check if problem when removing all elements from a
5215           GstThread before setting GstThread state to NULL
5216
5217 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5218
5219         * docs/gst/tmpl/gstelement.sgml:
5220         * docs/gst/tmpl/gsttypes.sgml:
5221         * gst/gstbin.c: (gst_bin_change_state):
5222         * gst/gstelement.c: (gst_element_set_state),
5223         (gst_element_change_state):
5224           rework so that for bins we try to set the state on all children
5225           as well even if the bin is in the correct state already.
5226           change while to do so at least one iteration is done.
5227           For regular elements, we fall back to the previous behaviour for
5228           now since we first need a new plugins release.
5229         * testsuite/states/parent.c: (main):
5230           test for this case
5231           Fixes #123774
5232
5233 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5234
5235         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5236         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5237         (gst_queue_release_locks), (gst_queue_change_state),
5238         (gst_queue_set_property):
5239           add proper lock debugging.  Change dispose to finalize, since
5240           we're freeing mutexes and other stuff which should happen only once.
5241
5242 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5243
5244         * docs/gst/tmpl/gstelement.sgml:
5245         * docs/gst/tmpl/gstplugin.sgml:
5246         * docs/gst/tmpl/gsttypes.sgml:
5247         * docs/pwg/building-state.xml:
5248         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5249         * gst/gstelement.c: (gst_element_change_state):
5250         * gst/gstthread.c: (gst_thread_change_state):
5251           catch wrong state changes in element base class.
5252
5253 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5254
5255         * gst/gstinfo.h:
5256           clean up layout a little.
5257
5258 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5259
5260         * configure.ac:
5261         * testsuite/Makefile.am:
5262         * testsuite/states/Makefile.am:
5263         * testsuite/states/parent.c: (main):
5264           re-enable states testsuite dir.  Add test for state changes and
5265           parent behaviour
5266
5267 2004-07-09  Wim Taymans  <wim@fluendo.com>
5268
5269         * gst/schedulers/gstoptimalscheduler.c:
5270         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5271         (element_get_reachables_func), (element_get_reachables),
5272         (debug_element), (rechain_group), (group_migrate_connected),
5273         (gst_opt_scheduler_pad_unlink):
5274         Do not try to migrate decoupled elements to a new group since
5275         they are not added to groups.
5276
5277 2004-07-08  Benjamin Otte  <otte@gnome.org>
5278
5279         * gst/gstelement.c: (gst_element_error_func):
5280           make reentrant (= allow removing elements in error handler)
5281
5282 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5283
5284         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5285         (gst_pad_send_event), (gst_pad_call_chain_function):
5286           events sent to elements below PAUSED cannot be handled, so
5287           don't try to
5288
5289 2004-07-08  Wim Taymans  <wim@fluendo.com>
5290
5291         * gst/schedulers/gstoptimalscheduler.c:
5292         (chain_recursively_migrate_group), (create_group),
5293         (schedule_group), (gst_opt_scheduler_pad_link),
5294         (group_elements_set_visited), (element_get_reachables_func),
5295         (element_get_reachables), (group_can_reach_group), (debug_element),
5296         (rechain_group), (group_migrate_connected),
5297         (gst_opt_scheduler_pad_unlink):
5298         * testsuite/schedulers/Makefile.am:
5299         Implemented group splitting and rechaining.
5300         Fixes 143777 and 143777-2 in the testsuite.
5301
5302 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5303
5304         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5305           extra debugging
5306         * gst/gstevent.h:
5307         * gst/gstinfo.c: (gst_debug_log_default):
5308           print time nicely.  add thread pointer until someone figures out
5309           a completely portable way of getting at thread id's.
5310         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5311         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5312         (gst_pad_call_chain_function):
5313           extra debugging
5314         * gst/schedulers/gstoptimalscheduler.c:
5315         (get_group_schedule_function), (loop_group_schedule_function),
5316         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5317         (pad_clear_queued), (gst_opt_scheduler_iterate):
5318           rename BUFPEN and friends to DATAPEN since that's what they are.
5319
5320 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5321
5322         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5323         * gst/gstbuffer.h:
5324         * gst/gstpad.c:
5325           cleanups and debugging
5326
5327 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5328
5329         * configure.ac:
5330         * gst/gstvalue.c: (gst_value_compare_enum),
5331         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5332         (gst_value_can_compare), (gst_value_compare):
5333         * testsuite/Makefile.am:
5334         * testsuite/enumcaps/Makefile.am:
5335         * testsuite/enumcaps/enumcaps.c:
5336           Fix enum serialization, deserialization, comparison in caps, add
5337           a test to ensure that this continues working in the future.
5338
5339 2004-07-06  David Schleef  <ds@schleef.org>
5340
5341         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5342         Fix memleak.
5343
5344 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5345
5346         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5347         * gst/gstplugin.h:
5348         * gst/registries/gstxmlregistry.c:
5349         (plugin_times_older_than_recurse), (plugin_times_older_than),
5350         (gst_xml_registry_parse_padtemplate):
5351           only rebuild registry when actual plugins have a newer time than
5352           the registry.  Fixes #145520
5353
5354 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5355
5356         * docs/manual/manual.xml:
5357         * docs/manual/win32.xml:
5358           add chapter on win32 building.  fixes #142422
5359
5360 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5361
5362         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
5363
5364         * gst/autoplug/gstspider.c: (gst_spider_init),
5365         (gst_spider_dispose):
5366           fix spider memleaks.  fixes #137863
5367
5368 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5369
5370         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
5371
5372         * gst/schedulers/gstoptimalscheduler.c:
5373         (gst_opt_scheduler_pad_unlink):
5374           fix SIGBUS error, fixes #145338
5375
5376 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5377
5378         * gst/gstobject.c: (gst_object_replace):
5379         * gst/gstscheduler.c: (gst_scheduler_get_clock):
5380         * gst/gstsystemclock.c: (gst_system_clock_obtain):
5381           clean up clock lifecycle.  Fixes #109831
5382
5383 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5384
5385         * po/LINGUAS:
5386         * po/cs.po:
5387           added Czech translation (Miloslav Trmac)
5388
5389 2004-07-04  David Schleef  <ds@schleef.org>
5390
5391         * tools/Makefile.am:
5392         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5393
5394 2004-07-04  David Schleef  <ds@schleef.org>
5395
5396         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5397
5398 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5399
5400         * gst/gstbin.c: (gst_bin_restore_thyself):
5401           chain to parent restore so the bins get restored correctly
5402           in the editor
5403
5404 2004-07-03  David Schleef  <ds@schleef.org>
5405
5406         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5407         Actually do something in these functions, like before the big
5408         caps change.  (bug #145137)
5409
5410 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5411
5412         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
5413         (gst_element_get_compatible_pad_filtered):
5414         * gst/gstthread.c: (gst_thread_main_loop):
5415           more debugging
5416
5417 2004-07-02  David Schleef  <ds@schleef.org>
5418
5419         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
5420         * gst/gstobject.h:
5421         * gst/gstparse.h:
5422         * gst/gsttrace.h:
5423         * gst/gstxml.h:
5424
5425 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5426
5427         * gst/gstpad.c: (gst_pad_check_schedulers),
5428         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5429         (gst_pad_link_prepare):
5430           revert until testsuite is fixed
5431
5432 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5433
5434         * testsuite/Makefile.am:
5435         * testsuite/caps/filtercaps.c: (main):
5436         * testsuite/clock/clock1.c: (main):
5437         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
5438           fix some more tests
5439
5440 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5441
5442         * testsuite/cleanup/cleanup1.c: (create_pipeline):
5443         * testsuite/cleanup/cleanup2.c: (create_pipeline):
5444         * testsuite/cleanup/cleanup4.c: (main):
5445           fix testsuite
5446
5447 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5448
5449         * libs/gst/control/control.c:
5450         * libs/gst/control/dparam.c:
5451         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
5452         * libs/gst/control/dparammanager.c:
5453         * libs/gst/control/dparammanager.h:
5454         * testsuite/dynparams/Makefile.am:
5455         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
5456         (gst_dptest_change_state), (gst_dptest_chain), (main):
5457           fix testcase for dparams
5458           add debugging category
5459
5460 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5461
5462         * testsuite/Rules:
5463           change path
5464
5465 2004-07-02  Benjamin Otte  <otte@gnome.org>
5466
5467         * tests/.cvsignore:
5468         * tests/Makefile.am:
5469         * tests/mass_elements.c: (gst_get_current_time), (main):
5470           add simple benchmark to test various speeds of fakesrc ! identity !
5471           identity ! ... ! fakesink.
5472           Usage: mass_elements [num_identities] [num_buffers]
5473           If not specified they default to 1000.
5474
5475 2004-07-02  Benjamin Otte  <otte@gnome.org>
5476
5477         * gst/gstpad.c: (gst_pad_check_schedulers),
5478         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5479         (gst_pad_link_prepare):
5480           check that pads that get linked belong to the same manager. The old
5481           code allowed linking elements before putting them into bins, so it
5482           worked to link them and then put them in different threads, which
5483           lead to weird behaviour.
5484           Since this effectively disallows linking elements before putting
5485           them in a bin, some applications might not work after this and error
5486           out. If these applications are too critical, we might need to revert
5487           that patch. Please test this before the next release...
5488
5489 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5490
5491         * gst/gstpad.c: (gst_pad_get_caps):
5492           throw an error if the getcaps function does not return a subset of
5493           the template caps.
5494         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
5495           make disconts without position info an error in debugging
5496         * tests/spidey_bench.c: (handoff), (main):
5497           don't count first try when averaging
5498
5499 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5500
5501         * gst/gstplugin.c: (gst_plugin_load_file):
5502           figure out problem with dynamic test
5503
5504 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5505
5506         * docs/gst/Makefile.am:
5507           fix docs build
5508
5509 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5510
5511         * po/POTFILES.in:
5512         * po/af.po:
5513         * po/az.po:
5514         * po/en_GB.po:
5515         * po/fr.po:
5516         * po/nl.po:
5517         * po/sr.po:
5518         * po/sv.po:
5519         * po/tr.po:
5520         * po/uk.po:
5521         * tools/gst-register.c: (plugin_added_func), (main):
5522           i18n-ize -register, fix plural
5523
5524 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5525
5526         * gst/elements/gstidentity.c: (gst_identity_class_init),
5527         (gst_identity_init), (gst_identity_chain),
5528         (gst_identity_set_property), (gst_identity_get_property):
5529         * gst/elements/gstidentity.h:
5530           check for perfect stream
5531
5532 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5533
5534         * gst/elements/gstidentity.c: (gst_identity_chain):
5535           print offset_end
5536
5537 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5538
5539         * docs/gst/Makefile.am:
5540         * docs/gst/gstreamer-docs.sgml:
5541           doc fixes
5542
5543 2004-06-24  David Schleef  <ds@schleef.org>
5544
5545         * autogen.sh:  Remove call to env, since the buildbot isn't
5546         broken anymore.
5547
5548 2004-06-24  Wim Taymans  <wim@fluendo.com>
5549
5550         * gst/elements/Makefile.am:
5551         * gst/elements/gstelements.c:
5552         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
5553         (gst_multifdsink_class_init), (gst_multifdsink_init),
5554         (gst_multifdsink_add), (gst_multifdsink_remove),
5555         (gst_multifdsink_clear), (gst_multifdsink_chain),
5556         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
5557         * gst/elements/gstmultifdsink.h:
5558         Added an element that writes to multiple filedescriptors at once.
5559
5560 2004-06-24  Benjamin Otte  <otte@gnome.org>
5561
5562         * gst/parse/grammar.y:
5563           don't try to link elements before they have been added to bins
5564
5565 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5566
5567         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
5568         (gst_file_pad_get_length):
5569         * libs/gst/bytestream/filepad.h:
5570           add 2 new functions
5571
5572 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5573
5574         * docs/gst/gstreamer-sections.txt:
5575         remove from docs, the define that Benjamin removed from gstelement.h
5576
5577 2004-06-22  Benjamin Otte  <otte@gnome.org>
5578
5579         * gst/gstelement.h:
5580           remove define that referenced a nonexisting GstElement struct member
5581
5582 2004-06-20  Benjamin Otte  <otte@gnome.org>
5583
5584         * gst/gstdata.c: (gst_data_is_writable):
5585           whoops, return values were wrong, so writable data was marked as
5586           non-writable and vice versa. (fixes #143953, spotted by Francis
5587           Labonte)
5588           Shows how rarely we need to copy data ;)
5589
5590 2004-06-20  Benjamin Otte  <otte@gnome.org>
5591
5592         * testsuite/schedulers/.cvsignore:
5593         * testsuite/schedulers/Makefile.am:
5594         * testsuite/schedulers/143777-2.c: (main):
5595           add test for opt breakage in bug #143777
5596
5597 2004-06-20  Benjamin Otte  <otte@gnome.org>
5598
5599         * gst/gstpad.c: (gst_pad_call_chain_function):
5600           check for if we were unlinked while inside the chainfunction (fixes
5601           entrygthread having issues with #143777)
5602         * testsuite/schedulers/143777.c: (main):
5603         * testsuite/schedulers/Makefile.am:
5604           add a test for that fix
5605
5606 2004-06-20  Benjamin Otte  <otte@gnome.org>
5607
5608         * gst/gstvalue.c: (gst_value_set_int_range):
5609           test that start is smaller then end
5610         * libs/gst/bytestream/Makefile.am:
5611         * libs/gst/bytestream/filepad.c: 
5612         * libs/gst/bytestream/filepad.h:
5613           add GstFilePad - a pad that behaves like a FILE*
5614         * testsuite/bytestream/.cvsignore:
5615         * testsuite/bytestream/Makefile.am:
5616         * testsuite/bytestream/filepadsink.c: 
5617           test for the GstFilePad
5618
5619 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5620
5621         * gst/elements/gstidentity.c: (gst_identity_class_init),
5622         (gst_identity_init), (gst_identity_set_clock),
5623         (gst_identity_chain), (gst_identity_set_property),
5624         (gst_identity_get_property):
5625         * gst/elements/gstidentity.h:
5626         * gst/gstclock.c: (gst_clock_id_wait):
5627           add a "sync" property to sync to the clock
5628
5629 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5630
5631         * gst/gstelementfactory.c: (gst_element_factory_create):
5632           make the freakin "elementfactory bla has no type" message more
5633           useful. So we actually can do something when someone shows up
5634           complaining about it.
5635
5636 2004-06-15  Johan Dahlin  <johan@gnome.org>
5637
5638         * tools/gst-inspect.c (main): Fallback to plugin if no element is
5639         found. This matches the old behavior better. Thanks to Thomas for
5640         pointing out.
5641
5642 2004-06-14  David Schleef  <ds@schleef.org>
5643
5644         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
5645         -fomit-frame-pointer.  Appears to generate correct code in
5646         other cases as well.
5647
5648 2004-06-14  Johan Dahlin  <johan@gnome.org>
5649
5650         * tools/gst-inspect.c (main): Add two new command line options: -a
5651         to print all elements and -n to print the name on each line. Also
5652         fix some error reporting.
5653         (main): Simplify, remove -n and always print names if -a is specified
5654
5655 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
5656
5657         * win32/gstconfig.h:
5658         * win32/GSTreamer.vcproj:
5659         * win32/Makefile:
5660         * gst/gstconfig.h.in:
5661         * gst/gst.h:
5662         * gst/gstbin.h:
5663         * gst/gstelement.h:
5664         * gst/gstevent.h:
5665         * gst/gstobject.h:
5666         * gst/gstpad.h:
5667         * docs/gst/gstreamer-sections.txt:
5668         * docs/gst/tmpl/gstconfig.sgml:
5669           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
5670
5671 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5672         * docs/gst/gstreamer-sections.txt:
5673         * docs/gst/tmpl/gstconfig.sgml:
5674         Add the GSTREAMER_EXPORT macro to the docs
5675
5676 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5677
5678         * tools/gst-compprep.c: (handle_xmlerror), (main):
5679         Add a check for the version that introduced SetStructuredError to fix
5680         the build on FC1
5681
5682 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5683
5684         * win32/msvc71.sln:
5685         * win32/testsuite/:
5686           prepare to compile the testsuite with MSVC
5687
5688 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5689
5690         * docs/manual/win32.xml:
5691           attempt to transform the Win32 README into an XML doc
5692
5693 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5694
5695         * gst/gst.c:
5696         * gst/gstbin.*:
5697         * gst/config.h.in:
5698         * gst/gstelement.*:
5699         * gst/gstevent.h:
5700         * gst/gstobject.*:
5701         * gst/gstpad.h:
5702         * tools/gst-register.c:
5703         * win32/gstreamer.def:
5704           extern symbols are now exported for the Windows DLL
5705
5706 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5707
5708         * gst/gstinfo.h:
5709           fix a problem to enable/disable DEBUG under MSVC
5710
5711 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5712
5713         * win32/:
5714           enable more debug code in DEBUG build
5715
5716 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5717
5718         * win32/config.h:
5719         * gst/gst-i18n-app.h:
5720           enable NLS under Windows
5721
5722 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
5723         * tools/gst-compprep.c: (handle_xmlerror), (main):
5724           Make an error that baffled me a bit clearer
5725
5726 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5727
5728         * gst/gstqueue.c:
5729           don't use g_queue_get_length () because it's 2.4, use ->length
5730
5731 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
5732
5733         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
5734
5735         * tools/gst-inspect.c: (print_signal_info):
5736           don't free random data twice. (fixes #144185)
5737
5738 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5739
5740         * gst/gstqueue.c:
5741         * gst/gstqueue.h:
5742           fix removing from the wrong queue on event timeout
5743           fix disposing of the event queue by casting correctly
5744           add mutexes for handling the event queue
5745           someone was sleeping when fixing queue last time around :)
5746
5747 2004-06-10  Johan Dahlin  <johan@gnome.org>
5748
5749         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
5750         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
5751
5752 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5753
5754         * docs/random/gdp:
5755         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
5756         * libs/gst/dataprotocol/dataprotocol.c:
5757         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5758         (gst_dp_buffer_from_header):
5759         * libs/gst/dataprotocol/dataprotocol.h:
5760         * libs/gst/dataprotocol/dp-private.h:
5761           rev version to 0.1, add buffer flags and copy them
5762
5763 2004-06-09  Johan Dahlin  <johan@gnome.org>
5764
5765         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
5766         the flags from the buffer we're copying.
5767
5768 2004-06-09  Wim Taymans  <wim@fluendo.com>
5769
5770         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
5771         * gst/elements/gstidentity.c: (gst_identity_init),
5772         (gst_identity_chain):
5773         Print more buffer info in fakesink.
5774         Make identity output similar to fakesink.
5775
5776 2004-06-07  Daniel Gazard  <dany42@free.fr>
5777
5778         reviewed by Benjamin Otte  <otte@gnome.org>
5779
5780         * configure.ac:
5781           fix cross compiling not working. (fixes #143741)
5782
5783 2004-06-07  Benjamin Otte  <otte@gnome.org>
5784
5785         * gst/gstelement.c: (gst_element_set_time_delay):
5786           add failure check
5787         * gst/gstinfo.h:
5788           put brackets around macro arguments of GST_TIME_ARGS, add note to
5789           move it to correct header in 0.9
5790
5791 2004-06-07  Benjamin Otte  <otte@gnome.org>
5792
5793         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
5794         (gst_file_index_load), (_file_index_id_save_entries),
5795         (gst_file_index_commit), (gst_file_index_add_association),
5796         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
5797         (gst_file_index_plugin_init):
5798           make debugging use a default category
5799
5800 2004-06-06  David Moore  <dcm@acm.org>
5801
5802         reviewed by Benjamin Otte  <otte@gnome.org>
5803
5804         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
5805         (gst_fdsrc_change_state):
5806           reset offset counter when going READY => PAUSED. (fixes #142903)
5807
5808 2004-06-06  ed@catmur.co.uk
5809
5810         reviewed by Benjamin Otte  <otte@gnome.org>
5811
5812         * gst/registries/gstxmlregistry.c:
5813         (gst_xml_registry_rebuild_recurse):
5814           don't rely on g_dir_open to figure out if a file is a directory, use
5815           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
5816           directories. (fixes #142850)
5817
5818 2004-06-06  Benjamin Otte  <otte@gnome.org>
5819
5820         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
5821           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
5822         * libs/gst/bytestream/adapter.c:
5823         * libs/gst/bytestream/adapter.h:
5824           fix copyright in header and typo in debugging category name
5825
5826 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5827
5828         * configure.ac:
5829           bump nano to cvs
5830
5831 === release 0.8.3 ===
5832
5833 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5834
5835         * configure.ac:
5836           update libtool versioning
5837           do a new release
5838         * docs/gst/tmpl/gstelement.sgml:
5839         * docs/gst/tmpl/gsttypes.sgml:
5840         * gst/gstinfo.c: (_gst_debug_init):
5841           put back GST_CAT_DATAFLOW to fix API breakage
5842
5843 2004-06-04  David Schleef  <ds@schleef.org>
5844
5845         * autogen.sh: Add a temporary 'env' to test buildbot problems.
5846
5847 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5848
5849         * configure.ac:
5850           bump nano to cvs
5851
5852 === release 0.8.2 ===
5853
5854 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5855
5856         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
5857           check GST_DEBUG environment variable which is parsed the same way
5858           as --gst-debug=
5859
5860 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
5861
5862         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
5863                             gstmd5sink.c gstshaper.c gsttee.c
5864                             gsttypefindelement.c
5865         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
5866
5867           - removing trailing commas at end of enums
5868             it is correct C99 code but C90 compilers would complain
5869             (AIX, Forte, ...)
5870             ('should' fix #143290, at least partially)
5871
5872 2004-05-27  Wim Taymans  <wim@fluendo.com>
5873
5874         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
5875         (chain_group_set_enabled), (create_group), (add_to_group),
5876         (merge_groups), (setup_group_scheduler), (group_elements),
5877         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
5878         Don't try to follow the pad connections with other groups
5879         when a loop based element is added to the scheduler because
5880         the bin will inform the scheduler about the pad links a little
5881         later.
5882
5883 2004-05-27  Wim Taymans  <wim@fluendo.com>
5884
5885         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
5886         (remove_from_chain), (chain_group_set_enabled),
5887         (setup_group_scheduler), (group_element_set_enabled),
5888         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
5889         (gst_opt_scheduler_show):
5890         Elements without a group can do a state change as well, just wait
5891         with the setup of the scheduling function when it is added to a
5892         chain.
5893
5894 2004-05-27  Wim Taymans  <wim@fluendo.com>
5895
5896         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
5897         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
5898         (merge_groups), (setup_group_scheduler),
5899         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
5900         (gst_opt_scheduler_show):
5901         Fixes to maintain internal consistency of the scheduler data
5902         structures. 
5903          - adding an enabled group to a chain should increment the
5904            number of enabled elements in that chain.
5905          - removing an enabled group from a chain could disable the
5906            chain.
5907          - removing a disabled group from a chain could enable the
5908            chain.
5909          - add g_assert when internal inconsistency is detected.
5910          - adding an element to a group could increase the number of
5911            links this group has with other groups.
5912          - merging two groups also merges the chains.
5913          - also show group links in the _show method.
5914            
5915
5916 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5917
5918         * gst/gstcaps.c: (gst_caps_structure_simplify):
5919           don't print error messages when there is no error
5920         * gst/gstvalue.c: (gst_value_compare_int_range):
5921           compare the second value, too
5922         * testsuite/caps/Makefile.am:
5923         * testsuite/caps/random.c: (assert_on_error), (main):
5924           add tests to make sure the two things above are checked for
5925
5926 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5927
5928         * configure.ac:
5929         * libs/gst/dataprotocol/Makefile.am:
5930         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
5931         * libs/gst/dataprotocol/dataprotocol.h:
5932           wrap header in GST_ENABLE_NEW.  make code use it
5933
5934 2004-05-23  Johan Dahlin  <johan@gnome.org>
5935
5936         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
5937         so verbose and print GstElement signal names all the time.
5938
5939 2004-05-22  David Schleef  <ds@schleef.org>
5940
5941         * gst/registries/gstxmlregistry.c:
5942         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
5943         (bug #142957)
5944
5945 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5946
5947         * configure.ac:
5948           scrub cflags for glib2 so gcc doesn't complain when glib is in
5949           /usr/local
5950
5951 2004-05-21  Johan Dahlin  <johan@gnome.org>
5952
5953         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
5954         __GNUC__, patch from Brian Cameron, fixes bug #142804
5955
5956 2004-05-20  David Schleef  <ds@schleef.org>
5957
5958         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
5959         comparison code.  (bug #142819)
5960
5961 2004-05-20  Wim Taymans  <wim@fluendo.com>
5962
5963         * gst/gstbuffer.c: (gst_buffer_default_copy):
5964         * gst/gstbuffer.h:
5965         Added Comment to a flag.
5966         copy relevant flags in _buffer_copy.
5967
5968 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5969
5970         reviewed by: Wim Taymans <wim at fluendo dot com>
5971
5972         * gst/gstbuffer.h:
5973           add GST_BUFFER_IN_CAPS buffer flag
5974         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5975         (gst_structure_parse_any_list), (gst_structure_parse_list),
5976         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
5977         * gst/gstvalue.c: (gst_value_serialize_any_list),
5978         (gst_value_transform_any_list_string),
5979         (gst_value_list_prepend_value), (gst_value_list_append_value),
5980         (gst_value_list_get_size), (gst_value_list_get_value),
5981         (gst_value_transform_list_string),
5982         (gst_value_transform_fixed_list_string),
5983         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
5984         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
5985         (_gst_value_initialize):
5986         * gst/gstvalue.h:
5987           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
5988           < , > as a format.
5989         * testsuite/caps/string-conversions.c: (main):
5990           add regression tests for < >
5991
5992 2004-05-20  Johan Dahlin  <johan@gnome.org>
5993
5994         * docs/gst/Makefile.am (all-local): Re-add
5995
5996 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5997
5998         * docs/gst/Makefile.am:
5999         * docs/gst/gstreamer-docs.sgml:
6000         * docs/libs/Makefile.am:
6001         * docs/libs/gstreamer-libs-docs.sgml:
6002           fix distcheck issues
6003
6004 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6005
6006         * libs/gst/dataprotocol/Makefile.am:
6007           add to autotest
6008
6009 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6010
6011         * libs/gst/dataprotocol/Makefile.am:
6012         * libs/gst/dataprotocol/dataprotocol.c:
6013         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6014         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6015         * libs/gst/dataprotocol/dp-private.h:
6016           use GST macros to read/write fixed length ints
6017           add some more asserts
6018
6019 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6020
6021         * docs/libs/gstreamer-libs-docs.sgml:
6022         * docs/libs/gstreamer-libs-sections.txt:
6023           remove idct and putbits
6024         * configure.ac:
6025         * docs/libs/tmpl/gstdataprotocol.sgml:
6026         * libs/gst/Makefile.am:
6027         * libs/gst/dataprotocol/Makefile.am:
6028         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6029         (buffer_test), (caps_test), (event_test), (main):
6030         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6031         (gst_dp_dump_byte_array), (gst_dp_init),
6032         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6033         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6034         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6035         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6036         (gst_dp_validate_header), (gst_dp_validate_payload),
6037         (gst_dp_validate_packet), (plugin_init):
6038         * libs/gst/dataprotocol/dataprotocol.h:
6039         * libs/gst/dataprotocol/dp-private.h:
6040           add dataprotocol
6041
6042 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6043
6044         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6045           fix int variable deserialization and add a helper so we can actually
6046           debug this.
6047
6048 2004-05-18  David Schleef  <ds@schleef.org>
6049
6050         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6051           argv[0].  Calling yourself is probably not the best way to
6052           construct a test like this, btw.
6053
6054 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6055
6056         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6057           don't claim to be more intelligent than a scheduler when the
6058           scheduler claims the pipeline is stopped
6059         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6060         (safe_cothread_destroy),
6061         (gst_entry_scheduler_remove_all_cothreads),
6062         (gst_entry_scheduler_reset), (_remove_cothread),
6063         (gst_entry_scheduler_state_transition):
6064           hold off cothread destruction if we're not in main cothread
6065         * configure.ac:
6066         * testsuite/Makefile.am:
6067           add new test dir
6068         * testsuite/schedulers/.cvsignore:
6069         * testsuite/schedulers/Makefile.am:
6070           add tests
6071         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6072           check relinking and adding/removing elements from a running pipeline
6073         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6074           check unlinking in a running pipeline
6075         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6076           check unreffing a running pipeline
6077         * testsuite/schedulers/useless_iteration.c: (main):
6078           check iterating a pipeline that contains running threads works
6079
6080 2004-05-18  David Schleef  <ds@schleef.org>
6081
6082         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6083           is false.
6084
6085 2004-05-18  Wim Taymans  <wim@fluendo.com>
6086
6087         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6088         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6089         Fixed an error introduced with patch for 1.63. When setting
6090         a get based element as the entry point in a group, make sure
6091         to mark the group as GET based.
6092
6093 2004-05-18  Wim Taymans  <wim@fluendo.com>
6094
6095         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6096         (setup_group_scheduler), (loop_group_schedule_function),
6097         (gst_opt_scheduler_pad_link):
6098         Added some more debug info and fixed a bug where the group
6099         type was set to LOOP but it was in fact unknown.
6100
6101 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6102
6103         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6104           make resetting scheduler work twice in a row
6105
6106 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6107
6108         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6109         (CREATE_USERIALIZATION), (_gst_value_initialize),
6110         (gst_value_compare_float), (gst_value_serialize_float),
6111         (gst_value_deserialize_float), (gst_value_compare_enum),
6112         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6113           add serialization and comparison functions for long, int64, enum and
6114           float values
6115         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6116           use best serialization function in type hierarchy instead of only a
6117           matching one. This is required for enums to work.
6118         * gst/parse/grammar.y:
6119           use gst_caps_deserialize
6120         * testsuite/parse/Makefile.am:
6121           parse1 now works
6122         * testsuite/parse/parse1.c: (main):
6123           remove aggregator check, aggregator is broken, this test works now
6124           but fails because of bug #138012
6125         * testsuite/parse/parse2.c: (main):
6126           s/xvideosink/xvimagesink - this test looks a lot like we should
6127           disable it
6128
6129 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6130
6131         * gst/gstelement.c: (gst_element_class_init):
6132           whoops, store the signal id correctly
6133         * gst/schedulers/gstbasicscheduler.c:
6134         (gst_basic_scheduler_chain_wrapper):
6135           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6136           chain function isn't linked
6137
6138 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6139         * configure.ac:
6140         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6141         support until we decide where the flags should be used
6142         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6143         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6144         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6145         Output refused caps in the debug info
6146
6147 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6148
6149         * gst/elements/gstidentity.c: (gst_identity_chain):
6150           add duration debug
6151         * gst/gstinfo.c: (gst_debug_log_default):
6152           add timestamp
6153
6154 2004-05-13  Benjamin Otte  <otte@gnome.org>
6155
6156         * gst/gstpipeline.c: (gst_pipeline_dispose),
6157         (gst_pipeline_change_state):
6158           call gst_scheduler_reset on dispose (fixes #141416)
6159
6160 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6161
6162         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6163           compute mapsize correctly
6164         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6165           use correct datatypes when calling a varargs function
6166         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6167           push a DISCONT event as first thing
6168         * gst/gst_private.h:
6169         * gst/gstinfo.c: (_gst_debug_init):
6170           remove GST_DATAFLOW debugging category
6171         * gst/gstbin.c: (gst_bin_iterate):
6172           use GST_SCHEDULING category
6173         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6174         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6175         (gst_pad_call_get_function):
6176           add GST_DATAFLOW to easily track flow of buffers or events.
6177         * gst/gstqueue.c: (gst_queue_get_type),
6178         (gst_queue_handle_pending_events), (gst_queue_chain),
6179         (gst_queue_get), (gst_queue_handle_src_event):
6180           use own static debugging category GST_DATAFLOW for dataflow,
6181           use DEBUG category for showing which path events go, use LOG
6182           category for buffers.
6183
6184 2004-05-10  David Schleef  <ds@schleef.org>
6185
6186         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6187
6188 2004-05-10  David Schleef  <ds@schleef.org>
6189
6190         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6191         symbols, because otherwise we don't know what they are.  Thanks,
6192         the GStreamer team.
6193         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6194
6195 2004-05-10  David Schleef  <ds@schleef.org>
6196
6197         (from Steve Lhomme)
6198         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6199         are deleted.  Fix.
6200         * win32/Makefile.inspect:
6201         * win32/Makefile.launch:
6202         * win32/Makefile.register:
6203
6204 2004-05-10  David Schleef  <ds@schleef.org>
6205
6206         * gst/gstinfo.h: Add missing inline function.
6207         * gst/gsttrace.c: add include
6208         * gst/parse/grammar.y: remove unused code
6209         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6210         more portable.
6211         * tools/gst-register.c: wrap unistd.h
6212         
6213         More additions/fixes from Steve for the MSVC build.
6214         * win32/GStreamer.vcproj:
6215         * win32/Makefile:
6216         * win32/Makefile.inspect:
6217         * win32/Makefile.launch:
6218         * win32/Makefile.register:
6219         * win32/README.txt:
6220         * win32/gst-inspect.vcproj:
6221         * win32/gst-launch.vcproj:
6222         * win32/gst-register.vcproj:
6223         * win32/gstbytestream.def:
6224         * win32/gstbytestream.vcproj:
6225         * win32/gstconfig.h:
6226         * win32/gstelements.def:
6227         * win32/gstelements.vcproj:
6228         * win32/gstenumtypes.c:
6229         * win32/gstenumtypes.h:
6230         * win32/gstoptimalscheduler.def:
6231         * win32/gstoptimalscheduler.vcproj:
6232         * win32/gstreamer.def:
6233         * win32/gstspider.def:
6234         * win32/gstspider.vcproj:
6235         * win32/gstversion.h:
6236         * win32/msvc71.sln:
6237
6238 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6239
6240         * gst/gstelement.c: (gst_element_class_init),
6241         (gst_element_no_more_pads):
6242         * gst/gstelement.h:
6243           add gst_element_no_more_pads and the "no-more-pads" signal
6244
6245 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6246
6247         * gst/gstregistry.c: (gst_registry_add_plugin):
6248           refuse to add plugins when a plugin with same name is already
6249           registered. Fixes a bunch of "How to remove plugins?" issues.
6250           May lead to other problems though, let's test
6251
6252 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6253
6254         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6255         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6256         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6257
6258 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6259
6260         * tests/Makefile.am: fix am16 issue
6261
6262 2004-05-09  Benjamin Otte  <otte@gnome.org>
6263
6264         * libs/gst/bytestream/Makefile.am:
6265           we should indeed add .c files to makefiles or they won't be built
6266           (d'oh)
6267
6268 2004-05-08  Benjamin Otte  <otte@gnome.org>
6269
6270         * gst/gstpad.c: (gst_pad_proxy_fixate):
6271           really reduce the set of caps
6272
6273 2004-05-08  Benjamin Otte  <otte@gnome.org>
6274
6275         * tests/Makefile.am:
6276         * tests/spidey_bench.c: (handoff), (main):
6277           add benchmark to test how long spider needs to create a pipeline
6278
6279 2004-05-08  Benjamin Otte  <otte@gnome.org>
6280
6281         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6282           mark links as unengaged when unnegotiating instead of deactivating.
6283           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6284
6285 2004-05-08  Benjamin Otte  <otte@gnome.org>
6286
6287         * docs/manual/helloworld.xml:
6288           s/audiosink/osssink (patch by Patrick Guimond)
6289
6290 2004-05-07  David Schleef  <ds@schleef.org>
6291
6292         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6293         since it contains important stuff.
6294
6295 2004-05-07  David Schleef  <ds@schleef.org>
6296
6297         * testsuite/caps/caps.c: (test3), (main): A check for appending
6298         ANY caps.
6299
6300 2004-05-07  David Schleef  <ds@schleef.org>
6301
6302         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6303         which may contain commas.  Fixes detection of -Wa,-mregnames
6304
6305 2004-05-06  David Schleef  <ds@schleef.org>
6306
6307         Changes to handle compilers that don't have variadic macro
6308         support.  In particular, glib headers define some inlines
6309         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6310         builds.
6311         * gst/Makefile.am:
6312         * gst/cothreads.c:
6313         * gst/elements/gstfdsink.c:
6314         * gst/elements/gstfdsrc.c:
6315         * gst/elements/gstfilesink.c:
6316         * gst/elements/gstfilesrc.c:
6317         * gst/gst_private.h:
6318         * gst/gstatomic.c:
6319         * gst/gstcaps.c: (gst_caps_append):
6320         * gst/gstcpu.c: (gst_cpuid_i386):
6321         * gst/gstelement.c:
6322         * gst/gsterror.c:
6323         * gst/gstfilter.c:
6324         * gst/gstinfo.h:
6325         * gst/gstprobe.c:
6326         * gst/gstquery.c:
6327         * gst/gstregistry.c:
6328         * gst/gststructure.c:
6329         * gst/gsttaginterface.c:
6330         * gst/gsttrace.c: (gst_trace_new):
6331         * gst/gsttrashstack.c:
6332         * gst/gsturi.c:
6333         * gst/gstvalue.c:
6334         * gst/parse/grammar.y:
6335         * gst/parse/parse.l:
6336         * tools/gst-inspect.c: (main):
6337         * tools/gst-launch.c: (main):
6338         * tools/gst-xmlinspect.c: (PUT_STRING):
6339
6340 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6341
6342         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6343         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6344         * gst/elements/gstfilesrc.h:
6345           send NEW_MEDIA events correctly
6346         * gst/elements/gsttypefindelement.c: (start_typefinding),
6347         (gst_type_find_element_handle_event):
6348           restart typefinding when we get a NEW_MEDIA event
6349         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6350         (gst_bin_dispose):
6351           don't die when someone removes elements in callbacks
6352         * gst/gstelement.c: (gst_element_change_state):
6353           improve debugging
6354         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
6355           we need a NEW_MEDIA event to engage a link
6356         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
6357           don't g_print debugging stuff
6358         * testsuite/caps/simplify.c: (check_caps):
6359
6360 2004-05-04  Benjamin Otte  <otte@gnome.org>
6361
6362         * gst/parse/grammar.y:
6363           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
6364
6365 2004-05-04  Benjamin Otte  <otte@gnome.org>
6366
6367         * testsuite/caps/renegotiate.c: (main):
6368           improve output in error case
6369
6370 2004-05-04  Benjamin Otte  <otte@gnome.org>
6371
6372         * gst/parse/grammar.y:
6373           fix assert to not trigger when there's no error argument
6374         * gst/parse/parse.l:
6375           fix definition of caps to allow more than two structures
6376         * testsuite/caps/Makefile.am:
6377         * testsuite/caps/renegotiate.c: (main):
6378           it's sinesrc and works in that case
6379
6380 2004-05-04  Wim Taymans  <wim@fluendo.com>
6381
6382         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6383         (group_dec_link), (gst_opt_scheduler_pad_unlink):
6384         when removing an element from a group, we always need to
6385         decrement the link count that this group had with other 
6386         groups through the element.
6387         added an extra assert to catch inconsistencies when decrementing
6388         the link count.
6389
6390 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6391
6392         * configure.ac:
6393         * docs/gst/Makefile.am:
6394         * docs/gst/gstreamer-sections.txt:
6395         * docs/gst/tmpl/gstcompat.sgml:
6396         * examples/appreader/Makefile.am:
6397         * examples/cutter/Makefile.am:
6398         * examples/events/Makefile.am:
6399         * examples/helloworld/Makefile.am:
6400         * examples/helloworld2/Makefile.am:
6401         * examples/launch/Makefile.am:
6402         * examples/manual/Makefile.am:
6403         * examples/mixer/Makefile.am:
6404         * examples/pingpong/Makefile.am:
6405         * examples/plugins/Makefile.am:
6406         * examples/queue/Makefile.am:
6407         * examples/queue2/Makefile.am:
6408         * examples/queue3/Makefile.am:
6409         * examples/queue4/Makefile.am:
6410         * examples/retag/Makefile.am:
6411         * examples/thread/Makefile.am:
6412         * examples/typefind/Makefile.am:
6413         * examples/xml/Makefile.am:
6414         * gst/Makefile.am:
6415         * gst/autoplug/Makefile.am:
6416         * gst/elements/Makefile.am:
6417         * gst/gstcompat.h:
6418         * gst/indexers/Makefile.am:
6419         * gst/parse/Makefile.am:
6420         * gst/registries/Makefile.am:
6421         * gst/schedulers/Makefile.am:
6422         * libs/gst/bytestream/Makefile.am:
6423         * libs/gst/control/Makefile.am:
6424         * libs/gst/getbits/Makefile.am:
6425         * po/af.po:
6426         * po/az.po:
6427         * po/en_GB.po:
6428         * po/fr.po:
6429         * po/nl.po:
6430         * po/sr.po:
6431         * po/sv.po:
6432         * po/tr.po:
6433         * po/uk.po:
6434         * tests/Makefile.am:
6435         * tests/bufspeed/Makefile.am:
6436         * tests/instantiate/Makefile.am:
6437         * tests/memchunk/Makefile.am:
6438         * tests/muxing/Makefile.am:
6439         * tests/negotiation/Makefile.am:
6440         * tests/probes/Makefile.am:
6441         * tests/sched/Makefile.am:
6442         * tests/seeking/Makefile.am:
6443         * tests/threadstate/Makefile.am:
6444         * testsuite/caps/Makefile.am:
6445         * testsuite/cleanup/Makefile.am:
6446         * testsuite/dlopen/Makefile.am:
6447         * testsuite/dynparams/Makefile.am:
6448         * testsuite/plugin/Makefile.am:
6449         * testsuite/states/Makefile.am:
6450         * tools/Makefile.am:
6451           reorganize compile/link flags to be consistent
6452           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
6453
6454 2004-05-04  David Schleef  <ds@schleef.org>
6455
6456         The "once more, with feeling" check-in.
6457         * testsuite/caps/Makefile.am: dist caps_strings
6458         * testsuite/caps/renegotiate.c: (main): This test triggers a
6459           segfault in the core.  Marking as failing.
6460
6461 2004-05-03  David Schleef  <ds@schleef.org>
6462
6463         * testsuite/caps/deserialize.c: (main): Fix problems noticed
6464           by the build bots.
6465         * testsuite/caps/renegotiate.c: (main): Same.
6466
6467 2004-05-03  David Schleef  <ds@schleef.org>
6468
6469         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
6470
6471 2004-05-03  David Schleef  <ds@schleef.org>
6472
6473         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
6474           variable to find our source file.
6475
6476 2004-05-03  David Schleef  <ds@schleef.org>
6477
6478         * configure.ac:  Link plugins with libgstreamer and dependent
6479           libraries
6480         * testsuite/caps/Makefile.am:
6481         * testsuite/caps/caps_strings:
6482         * testsuite/caps/deserialize.c: (main): Add a little test to slog
6483           through a file of caps strings and test each one
6484
6485 2004-05-04  Benjamin Otte  <otte@gnome.org>
6486
6487         * libs/gst/bytestream/Makefile.am:
6488         * libs/gst/bytestream/adapter.c: 
6489         * libs/gst/bytestream/adapter.h:
6490           add GstAdapter, similar to bytestream, but doesn't require ugly event
6491           handling or uglier loopbased elements
6492
6493 2004-05-03  David Schleef  <ds@schleef.org>
6494
6495         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
6496         * testsuite/caps/erathostenes.c:
6497         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
6498
6499 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6500
6501         * docs/pwg/pwg.xml:
6502           remove hardcoded stylesheet path (duh)
6503         * docs/random/release:
6504         * docs/gst/gstreamer-sections.txt:
6505         * gst/Makefile.am:
6506         * gst/gst.h:
6507         * gst/gst_private.h:
6508         * gst/gstcaps.c:
6509         * gst/gstevent.c:
6510         * gst/gstformat.c:
6511         * gst/gstinfo.c:
6512         * gst/gstinfo.h:
6513         * gst/gstinterface.c:
6514         * gst/gstmemchunk.c:
6515         * gst/gstprobe.c:
6516         * gst/gstquery.c:
6517         * gst/gstregistry.c:
6518         * gst/gstregistrypool.c:
6519         * gst/gststructure.c:
6520         * gst/gsttaginterface.c:
6521         * gst/gstthread.c:
6522         * gst/gsttrace.c:
6523         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
6524         * gst/gsturi.c:
6525         * gst/gstvalue.c:
6526           deprecate gst_info; remove gstlog.h
6527    
6528
6529 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6530
6531         * Makefile.am:
6532         * po/en_GB.po:
6533         * po/sv.po:
6534         * po/uk.po:
6535           updated translations
6536
6537 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6538
6539         * gst/gstbin.c: (gst_bin_dispose):
6540           better debugging
6541
6542 2004-05-03  Johan Dahlin  <johan@gnome.org>
6543
6544         * gst/schedulers/gstoptimalscheduler.c
6545         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
6546         really is a GstElement. Avoids critical when running gst-launch -v
6547         and a oggdemux/decoding pipeline.
6548
6549 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6550
6551         * docs/gst/tmpl/gstpipeline.sgml :
6552         * docs/manual/elements-api.xml :
6553                 doc fix by Patrick Guimond (Protector) from devel ML
6554                 reviewed by ronald
6555
6556 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6557
6558         * docs/gst/Makefile.am :
6559         * docs/libs/Makefile.am :
6560                 apply a patch from Arwed v. Merkatz so that gtk-doc
6561                 generated docs install (same for .devhelp file)
6562                 (fixes part 1 of #138836)
6563
6564 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6565
6566         * docs/faq/dependencies.xml: typo
6567         * docs/faq/getting.xml :
6568             - fix download URL for new gstreamer site
6569             - hide sf.net download page as latest version aren't there
6570             - fix apt URLs
6571             - fill "get via CVS" paragraph (link to dev page on the site)
6572         * docs/faq/general.xml:
6573             hide status tables as they no more exists
6574             change case on plugins license file to reflect reality
6575         * docs/faq/troubleshooting.xml:
6576             remove the wiki question/answer as there is no more wiki
6577
6578 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6579
6580         * gst/gsterror.h:
6581           include the headers needed for declarations used in this header
6582
6583 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6584
6585         * docs/random/uraeus/gstreamer_and_midi.txt :
6586           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
6587           (fixes #132288)
6588
6589 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
6590
6591         reviewed by Benjamin Otte  <otte@gnome.org>
6592
6593         * gst/schedulers/gthread-cothreads.h:
6594           free allocated data for main cothread, too when destroying context
6595           (fixes #141417)
6596
6597 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6598
6599         * docs/manual/goals.xml : remove duplicated paragraph at end 
6600         of doc page (fixes #141448)
6601
6602 2004-04-29  David Schleef  <ds@schleef.org>
6603
6604         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6605         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
6606
6607 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6608
6609         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6610           fix property
6611         * gst/gstcaps.c:
6612           fix doc string
6613         * po/POTFILES.in:
6614           rename typefind source file
6615
6616 2004-04-28  David Schleef  <ds@schleef.org>
6617
6618         Several new files from Steve Lhomme's MSVC patch (bug #141317):
6619         * win32/GStreamer.vcproj:
6620         * win32/Makefile:
6621         * win32/config.h:
6622         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
6623         (_trewinddir), (_ttelldir), (_tseekdir):
6624         * win32/dirent.h:
6625         * win32/gst-inspect.vcproj:
6626         * win32/gst-launch.vcproj:
6627         * win32/gst-register.vcproj:
6628         * win32/gstbytestream.vcproj:
6629         * win32/gstelements.vcproj:
6630         * win32/gstoptimalscheduler.vcproj:
6631         * win32/gstspider.vcproj:
6632         * win32/gtchar.h:
6633         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
6634         * win32/mman.h:
6635         * win32/mman.inl:
6636         * win32/msvc71.sln:
6637
6638 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6639
6640         * gst/gst.c: (init_post):
6641         * gst/gstinfo.c:
6642           remove useless _gst_progname stuff
6643         * tools/gst-inspect.c: (print_field), (print_caps):
6644           improve caps output
6645
6646 2004-04-28  David Schleef  <ds@schleef.org>
6647
6648         Disable parsing of a lot of files that aren't part of the
6649         exported API.  Move corresponding template files to old/,
6650         waiting for removal when they don't contain anything
6651         interesting.
6652         * docs/gst/Makefile.am:
6653         * docs/gst/gstreamer-sections.txt:
6654         * docs/gst/tmpl/cothreads.sgml:
6655         * docs/gst/tmpl/cothreads_compat.sgml:
6656         * docs/gst/tmpl/gettext.sgml:
6657         * docs/gst/tmpl/gobject2gtk.sgml:
6658         * docs/gst/tmpl/grammar.tab.sgml:
6659         * docs/gst/tmpl/gst-i18n-app.sgml:
6660         * docs/gst/tmpl/gst-i18n-lib.sgml:
6661         * docs/gst/tmpl/gst_private.sgml:
6662         * docs/gst/tmpl/gstaggregator.sgml:
6663         * docs/gst/tmpl/gstarch.sgml:
6664         * docs/gst/tmpl/gstatomic_impl.sgml:
6665         * docs/gst/tmpl/gstbufferstore.sgml:
6666         * docs/gst/tmpl/gstdata_private.sgml:
6667         * docs/gst/tmpl/gstdisksink.sgml:
6668         * docs/gst/tmpl/gstdisksrc.sgml:
6669         * docs/gst/tmpl/gstelementfactory.sgml:
6670         * docs/gst/tmpl/gstextratypes.sgml:
6671         * docs/gst/tmpl/gstfakesink.sgml:
6672         * docs/gst/tmpl/gstfakesrc.sgml:
6673         * docs/gst/tmpl/gstfdsink.sgml:
6674         * docs/gst/tmpl/gstfdsrc.sgml:
6675         * docs/gst/tmpl/gstfilesink.sgml:
6676         * docs/gst/tmpl/gstfilesrc.sgml:
6677         * docs/gst/tmpl/gsthttpsrc.sgml:
6678         * docs/gst/tmpl/gstidentity.sgml:
6679         * docs/gst/tmpl/gstindexfactory.sgml:
6680         * docs/gst/tmpl/gstmarshal.sgml:
6681         * docs/gst/tmpl/gstmd5sink.sgml:
6682         * docs/gst/tmpl/gstmultidisksrc.sgml:
6683         * docs/gst/tmpl/gstmultifilesrc.sgml:
6684         * docs/gst/tmpl/gstpadtemplate.sgml:
6685         * docs/gst/tmpl/gstpipefilter.sgml:
6686         * docs/gst/tmpl/gstschedulerfactory.sgml:
6687         * docs/gst/tmpl/gstsearchfuncs.sgml:
6688         * docs/gst/tmpl/gstshaper.sgml:
6689         * docs/gst/tmpl/gstspider.sgml:
6690         * docs/gst/tmpl/gstspideridentity.sgml:
6691         * docs/gst/tmpl/gststatistics.sgml:
6692         * docs/gst/tmpl/gsttee.sgml:
6693         * docs/gst/tmpl/gsttimecache.sgml:
6694         * docs/gst/tmpl/gsttypefind.sgml:
6695         * docs/gst/tmpl/gsttypefindfactory.sgml:
6696         * docs/gst/tmpl/gstxmlregistry.sgml:
6697         * docs/gst/tmpl/gthread-cothreads.sgml:
6698         * docs/gst/tmpl/old/cothreads.sgml:
6699         * docs/gst/tmpl/old/cothreads_compat.sgml:
6700         * docs/gst/tmpl/old/gettext.sgml:
6701         * docs/gst/tmpl/old/gobject2gtk.sgml:
6702         * docs/gst/tmpl/old/grammar.tab.sgml:
6703         * docs/gst/tmpl/old/gst-i18n-app.sgml:
6704         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
6705         * docs/gst/tmpl/old/gst_private.sgml:
6706         * docs/gst/tmpl/old/gstaggregator.sgml:
6707         * docs/gst/tmpl/old/gstarch.sgml:
6708         * docs/gst/tmpl/old/gstatomic_impl.sgml:
6709         * docs/gst/tmpl/old/gstbufferstore.sgml:
6710         * docs/gst/tmpl/old/gstdata_private.sgml:
6711         * docs/gst/tmpl/old/gstdisksink.sgml:
6712         * docs/gst/tmpl/old/gstdisksrc.sgml:
6713         * docs/gst/tmpl/old/gstelementfactory.sgml:
6714         * docs/gst/tmpl/old/gstextratypes.sgml:
6715         * docs/gst/tmpl/old/gstfakesink.sgml:
6716         * docs/gst/tmpl/old/gstfakesrc.sgml:
6717         * docs/gst/tmpl/old/gstfdsink.sgml:
6718         * docs/gst/tmpl/old/gstfdsrc.sgml:
6719         * docs/gst/tmpl/old/gstfilesink.sgml:
6720         * docs/gst/tmpl/old/gstfilesrc.sgml:
6721         * docs/gst/tmpl/old/gsthttpsrc.sgml:
6722         * docs/gst/tmpl/old/gstidentity.sgml:
6723         * docs/gst/tmpl/old/gstindexfactory.sgml:
6724         * docs/gst/tmpl/old/gstmarshal.sgml:
6725         * docs/gst/tmpl/old/gstmd5sink.sgml:
6726         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
6727         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
6728         * docs/gst/tmpl/old/gstpadtemplate.sgml:
6729         * docs/gst/tmpl/old/gstpipefilter.sgml:
6730         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
6731         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
6732         * docs/gst/tmpl/old/gstshaper.sgml:
6733         * docs/gst/tmpl/old/gstspider.sgml:
6734         * docs/gst/tmpl/old/gstspideridentity.sgml:
6735         * docs/gst/tmpl/old/gststatistics.sgml:
6736         * docs/gst/tmpl/old/gsttee.sgml:
6737         * docs/gst/tmpl/old/gsttimecache.sgml:
6738         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
6739         * docs/gst/tmpl/old/gstxmlregistry.sgml:
6740         * docs/gst/tmpl/old/gthread-cothreads.sgml:
6741         * docs/gst/tmpl/old/types.sgml:
6742         * docs/gst/tmpl/types.sgml:
6743
6744         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
6745         gtkdoc-scan doesn't like files with the same name in different
6746         directories.
6747         * gst/elements/Makefile.am:
6748         * gst/elements/gstelements.c:
6749         * gst/elements/gsttypefind.c: 
6750         * gst/elements/gsttypefind.h:
6751         * gst/elements/gsttypefindelement.c:
6752         * gst/elements/gsttypefindelement.h:
6753
6754 2004-04-28  David Schleef  <ds@schleef.org>
6755
6756         A bunch of portability fixes, derived from Steve Lhomme's MSVC
6757         patch (bug #141317):
6758         * gst/gst-i18n-lib.h: Allow disabling gettext.
6759         * gst/gstatomic_impl.h: disable warning when it's dumb.
6760         * gst/gstclock.c: fix include
6761         * gst/gstcompat.h: fix variadic macro
6762         * gst/gstinfo.c: fix include
6763         * gst/gstmacros.h: add defines for inlines on MSVC
6764         * gst/gstplugin.c: fix includes
6765         * gst/gstregistry.c: fix includes
6766         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
6767         * gst/gstsystemclock.c: fix include
6768         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
6769         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
6770         * gst/registries/gstxmlregistry.c:
6771         (gst_xml_registry_parse_element_factory): fix use of non-portable
6772         functions
6773         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
6774         * libs/gst/control/dparammanager.h: same
6775
6776 2004-04-28  David Schleef  <ds@schleef.org>
6777
6778         Move a bunch of unused files to old/ with names that are
6779         not case-insensitive-unique.  These files still contain some
6780         useful information that needs to be merged into gstbin.sgml,
6781         etc., so they shouldn't be deleted yet.
6782         * docs/gst/tmpl/GstBin.sgml:
6783         * docs/gst/tmpl/GstBuffer.sgml:
6784         * docs/gst/tmpl/GstCaps.sgml:
6785         * docs/gst/tmpl/GstClock.sgml:
6786         * docs/gst/tmpl/GstCompat.sgml:
6787         * docs/gst/tmpl/GstData.sgml:
6788         * docs/gst/tmpl/GstElement.sgml:
6789         * docs/gst/tmpl/GstEvent.sgml:
6790         * docs/gst/tmpl/GstIndex.sgml:
6791         * docs/gst/tmpl/GstStructure.sgml:
6792         * docs/gst/tmpl/GstTag.sgml:
6793         * docs/gst/tmpl/old/GstBin.sgml:
6794         * docs/gst/tmpl/old/GstBuffer.sgml:
6795         * docs/gst/tmpl/old/GstCaps.sgml:
6796         * docs/gst/tmpl/old/GstClock.sgml:
6797         * docs/gst/tmpl/old/GstCompat.sgml:
6798         * docs/gst/tmpl/old/GstData.sgml:
6799         * docs/gst/tmpl/old/GstElement.sgml:
6800         * docs/gst/tmpl/old/GstEvent.sgml:
6801         * docs/gst/tmpl/old/GstIndex.sgml:
6802         * docs/gst/tmpl/old/GstStructure.sgml:
6803         * docs/gst/tmpl/old/GstTag.sgml:
6804
6805 2004-04-28  David Schleef  <ds@schleef.org>
6806
6807         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6808         (gst_caps_append), (gst_caps_append_structure),
6809         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
6810         (gst_caps_set_simple), (gst_caps_set_simple_valist),
6811         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
6812         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
6813         (gst_caps_intersect), (gst_caps_normalize),
6814         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
6815         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
6816         * gst/gstcaps.h: use GST_IS_CAPS().
6817
6818 2004-04-26  David Schleef  <ds@schleef.org>
6819
6820         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
6821         assembly.  gcc doesn't handle it correctly. (bug #141083)
6822         * gst/gsttrashstack.h: same
6823
6824 2004-04-25  Benjamin Otte  <otte@gnome.org>
6825
6826         * gst/gstelement.c: (gst_element_change_state):
6827           fix assertion to do an int comparison
6828
6829 2004-04-25  Benjamin Otte  <otte@gnome.org>
6830
6831         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6832           better debugging output on error
6833
6834 2004-04-25  Benjamin Otte  <otte@gnome.org>
6835
6836         * gst/gstcaps.c: (gst_caps_subtract):
6837           fix memleak
6838
6839 2004-04-23  Benjamin Otte  <otte@gnome.org>
6840
6841         * gst/gstvalue.c: (gst_value_compare_buffer),
6842         (_gst_value_initialize):
6843           add comparison function for buffers
6844
6845 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6846
6847         * docs/pwg/pwg.xml:
6848           Just found out that this so-called "ima-wav" format is really
6849           just "dvi adpcm" (according to the MS WAV documentation). So
6850           renaming it. We didn't use it yet anyway.
6851
6852 2004-04-23  Benjamin Otte  <otte@gnome.org>
6853
6854         * gst/gstcaps.c: (gst_caps_is_always_compatible):
6855           call gst_caps_is_subset
6856
6857 2004-04-23  Benjamin Otte  <otte@gnome.org>
6858
6859         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
6860         (gst_caps_is_subset):
6861           add documentation
6862
6863 2004-04-23  Benjamin Otte  <otte@gnome.org>
6864           
6865         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
6866         (gst_caps_structure_subtract), (gst_caps_subtract),
6867         (gst_caps_structure_figure_out_union),
6868         (gst_caps_structure_simplify), (gst_caps_do_simplify):
6869           fix simplifying and subtracting not working correctly with optional
6870           properties
6871           solve assorted problems that make it now simplify ebven more
6872         * docs/gst/tmpl/gstcaps.sgml:
6873         * gst/gstcaps.h:
6874           make gst_caps_do_simplify return a bool to indicate if it simplified
6875         * testsuite/caps/simplify.c: (main):
6876           add more checks. The tests is quite a bit useless right now because
6877           the core is heavily simplifying itself.
6878         * testsuite/caps/caps.h:
6879           fix caps to contain all optional properties
6880
6881 2004-04-22  Benjamin Otte  <otte@gnome.org>
6882
6883         * docs/gst/tmpl/gstcaps.sgml:
6884         * docs/gst/tmpl/gstfilesrc.sgml:
6885         * docs/gst/tmpl/gststructure.sgml:
6886         * docs/gst/tmpl/gstvalue.sgml:
6887           update for recent API changes
6888         * gst/gstcaps.c: (gst_caps_do_simplify):
6889           fix to stop trying with a freed structure
6890         * gst/gstpad.c: (gst_pad_link_fixate):
6891           simplify caps
6892         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
6893           remove C++ comment
6894         * gst/gstpad.h:
6895           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
6896         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6897         (gst_structure_to_string):
6898           keep the correct type when using lists of ranges
6899         * gst/gstvalue.c: (gst_value_list_prepend_value),
6900         (gst_value_list_append_value):
6901           copy the value before adding to the list (d'oh)
6902         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
6903         (gst_value_subtract_int_range_int_range):
6904           handle overflows correctly
6905         * gst/gstvalue.c: (gst_value_subtract_from_list):
6906           fix memleak
6907         * testsuite/caps/caps.h:
6908           add a caps that caused segfaults
6909
6910 2004-04-22  Benjamin Otte  <otte@gnome.org>
6911
6912         * testsuite/refcounting/pad.c: (main):
6913           fix test
6914
6915 2004-04-22  Benjamin Otte  <otte@gnome.org>
6916
6917         * gst/gstcaps.c: (gst_caps_subtract):
6918           allow subtracting ANY and EMPTY from ANY caps
6919
6920 2004-04-22  Benjamin Otte  <otte@gnome.org>
6921
6922         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
6923         (gst_caps_union):
6924           only simplify in functions that create new caps. Simplifying in
6925           gst_caps_append breaks tests.
6926
6927 2004-04-22  Benjamin Otte  <otte@gnome.org>
6928
6929         * gst/gstcaps.c: (gst_caps_structure_simplify):
6930           unset GValue after use
6931         * gst/gstcaps.c: (gst_caps_append), 
6932         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
6933           use gst_caps_simplify (reduces registry size by 30%)
6934         * gst/gstpad.c: (gst_pad_template_new):
6935           don't allow NULL caps
6936
6937 2004-04-22  Benjamin Otte  <otte@gnome.org>
6938
6939         * docs/gst/gstreamer-sections.txt:
6940           add gst_caps_do_simplify
6941         * gst/gstcaps.c:
6942           add documentation for gst_caps_do_simplify
6943         * gst/gstvalue.h:
6944           fix typo in gst_value_register_subtract_func declaration for gst-doc
6945
6946 2004-04-22  Benjamin Otte  <otte@gnome.org>
6947
6948         * gst/gstcaps.c: (gst_caps_from_string_inplace):
6949           fix bug when converting from empty string.
6950         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
6951         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
6952           use gst_caps_new_empty to allocate a new caps. Only that function
6953           allocates memory for caps now.
6954         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
6955         (gst_caps_remove_structure):
6956           add ability to remove one structure (but not to header yet)
6957         * gst/gstcaps.c: (gst_caps_compare_structures),
6958         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
6959         (gst_caps_structure_simplify), (gst_caps_do_simplify),
6960         * gst/gstcaps.h:
6961           add gst_caps_do_simplify that tries to simplify a caps in place.
6962           Deprecate old gst_caps_simplify function.
6963         * testsuite/caps/caps.h:
6964           add caps.h containing a common set of caps to test against.
6965         * testsuite/caps/sets.c: (check_caps), (main):
6966           use it.
6967         * testsuite/caps/.cvsignore:
6968         * testsuite/caps/Makefile.am:
6969         * testsuite/caps/simplify.c: (check_caps), (main):
6970           add test to check correctness and efficency of caps simplification.
6971
6972 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
6973
6974         reviewed by Benjamin Otte  <otte@gnome.org>
6975
6976         * gst/gstparse.c: (_gst_parse_escape):
6977           Free the GString used in _gst_parse_escape()
6978
6979 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6980
6981         * gst/gstpad.c: (gst_pad_link_negotiate):
6982           refuse to link if the link is not possible
6983         * configure.ac:
6984         * testsuite/Makefile.am:
6985         * testsuite/negotiation/.cvsignore:
6986         * testsuite/negotiation/Makefile.am:
6987         * testsuite/negotiation/pad_link.c: (main):
6988           add test that checks the above behaviour
6989
6990 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6991
6992         * docs/gst/gstreamer-sections.txt:
6993           add newly added API
6994
6995 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6996
6997         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
6998         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
6999         (gst_filesrc_open_file), (gst_filesrc_close_file),
7000         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7001         * gst/elements/gstfilesrc.h:
7002           add support for non-regular files (#140734)
7003
7004 2004-04-21  Benjamin Otte  <otte@gnome.org>
7005
7006         * gst/gstpad.c: (gst_pad_link_fixate):
7007           add sophisticated error checking code to see if fixation functions
7008           did their fixation right
7009
7010 2004-04-21  Benjamin Otte  <otte@gnome.org>
7011
7012         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7013           check for ANY caps before appending/unioning
7014         * gst/gstcaps.c: (gst_caps_is_subset),
7015         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7016         (gst_caps_structure_subtract), (gst_caps_subtract):
7017         * gst/gstcaps.h:
7018           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7019           the API. deprecate gst_caps_is_equal_fixed
7020         * gst/gstpad.c: (gst_pad_try_set_caps):
7021         * gst/gstqueue.c: (gst_queue_link):
7022           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7023         * gst/gststructure.c: (gst_structure_get_name_id):
7024         * gst/gststructure.h:
7025           add function gst_structure_get_name_id
7026         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7027         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7028         (gst_value_subtract_int_range_int_range),
7029         (gst_value_subtract_double_double_range),
7030         (gst_value_subtract_double_range_double),
7031         (gst_value_subtract_double_range_double_range),
7032         (gst_value_subtract_from_list), (gst_value_subtract_list),
7033         (gst_value_can_intersect), (gst_value_subtract),
7034         (gst_value_can_subtract), (gst_value_register_subtract_func),
7035         (_gst_value_initialize):
7036         * gst/gstvalue.h:
7037           add support for subtracting values from each other. Note that
7038           subtracting means subtracting as in set theory. Required for caps
7039           stuff above.
7040         * testsuite/caps/.cvsignore:
7041         * testsuite/caps/Makefile.am:
7042         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7043         * testsuite/caps/sets.c: (check_caps), (main):
7044         * testsuite/caps/subtract.c: (check_caps), (main):
7045           add tests for subtraction and equality code.
7046
7047 2004-04-20  David Schleef  <ds@schleef.org>
7048
7049         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7050         * gst/indexers/Makefile.am:
7051         * gst/schedulers/Makefile.am:
7052         * libs/gst/bytestream/Makefile.am:
7053         * libs/gst/control/Makefile.am:
7054         * libs/gst/getbits/Makefile.am:
7055
7056 2004-04-20  David Schleef  <ds@schleef.org>
7057
7058         * common/as-libtool.mak: Fine-tune DLL building.
7059         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7060         (like gst-plugins)
7061         * examples/plugins/Makefile.am: remove plugindir
7062         * gst/autoplug/Makefile.am: DLL building fixes
7063         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7064         Windows.
7065         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7066         * gst/indexers/Makefile.am: DLL building fixes
7067         * gst/schedulers/Makefile.am: DLL building fixes.
7068         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7069         * libs/gst/control/Makefile.am: same
7070         * libs/gst/getbits/Makefile.am: same
7071         * testsuite/Makefile.am: New dlopen directory
7072         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7073         when dlopened.
7074         * testsuite/dlopen/dlopen_gst.c: (main): same
7075         * testsuite/dlopen/loadgst.c: (do_test): same
7076
7077 2004-04-20  David Schleef  <ds@schleef.org>
7078
7079         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7080         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7081
7082 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7083
7084         * gst/gstelement.c: (gst_element_wait),
7085         (gst_element_set_time_delay), (gst_element_change_state):
7086           Use GST_TIME_*
7087
7088 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7089
7090         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7091         (gst_spider_identity_plug):
7092           improve debugging messages
7093         * gst/gstbin.c: (gst_bin_remove_func):
7094           make sure the state_change function is only called with simple state
7095           transitions
7096
7097 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7098
7099         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7100         (gst_fakesink_set_property), (gst_fakesink_chain):
7101         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7102         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7103         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7104         * gst/elements/gstidentity.c: (gst_identity_chain),
7105         (gst_identity_set_property):
7106         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7107         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7108           add warnings to _set_property for unknown arguments
7109           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7110
7111 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7112
7113         * Makefile.am:
7114         * docs/manuals.mak:
7115           add .po file download snippet
7116           fix a bug in the doc makefile
7117
7118 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7119
7120         * Makefile.am:
7121         * po/LINGUAS:
7122         * po/en_GB.po:
7123           Added en_GB translation (Gareth Owen)
7124
7125 2004-04-20  Johan Dahlin  <johan@gnome.org>
7126
7127         * gst/gstpad.c (_invent_event): Clean up
7128
7129 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7130
7131         * testsuite/caps/filtercaps.c: (main):
7132           fix test to test things correctly (caps are complicated)
7133
7134 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7135
7136         * testsuite/caps/Makefile.am:
7137         * testsuite/caps/filtercaps.c: (main):
7138           add test (that doesn't work right now, but should)
7139
7140 2004-04-19  David Schleef  <ds@schleef.org>
7141
7142         * configure.ac: Add test for allowing unaligned access.  Add define
7143         to put in gstconfig.h.
7144         * docs/gst/gstreamer-sections.txt: New symbols
7145         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7146         * docs/gst/tmpl/gstfilesrc.sgml:
7147         * docs/gst/tmpl/gstparse.sgml:
7148         * docs/gst/tmpl/gsttypes.sgml:
7149         * docs/gst/tmpl/gstutils.sgml:
7150         * docs/gst/tmpl/gstvalue.sgml:
7151         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7152         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7153         on most !i386/!powerpc architectures.  From Daniel Gazard
7154         <daniel.gazard@free.fr>.  (bug #140156)
7155         * po/af.po: Check in changes made by gettext.
7156         * po/az.po:
7157         * po/fr.po:
7158         * po/nl.po:
7159         * po/sr.po:
7160         * po/sv.po:
7161
7162 2004-04-20  Benjamin Otte  <otte@gnome.org>
7163
7164         * gst/schedulers/entryscheduler.c: 
7165         (gst_entry_scheduler_yield):
7166           refuse to yield when decoupled elements insist on doing that.
7167           At least it's better than crashing
7168
7169 2004-04-19  David Schleef  <ds@schleef.org>
7170
7171         * docs/libs/Makefile.am: Change sinclude to include
7172         * docs/gst/Makefile.am: same
7173         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7174
7175 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7176
7177         * po/LINGUAS:
7178         * po/uk.po:
7179           Added Ukrainian translation (Maxim V. Dziumanenko)
7180
7181 2004-04-19  Johan Dahlin  <johan@gnome.org>
7182
7183         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7184         checking here, do it before calling the function.
7185         Clean up, use for loops instead of while loops while iterating
7186         over lists.
7187
7188         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7189         in debug message.
7190         (gst_spider_create_and_plug): Improve debug message.
7191         General: Replace while loops which iterates over GLists with for
7192         loops. Which are much cleaner, improves readability, especially
7193         for gst_spider_identity_plug
7194
7195         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7196         fixes bug 140477
7197
7198 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7199
7200         * po/LINGUAS:
7201         * po/tr.po:
7202           Added Turkish translation (Baris Cicek)
7203
7204 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7205
7206         * docs/faq/troubleshooting.xml:
7207           Mention gst-register in the FAQ (fixes 139045).
7208
7209 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7210
7211         * docs/gst/gstreamer-sections.txt:
7212
7213 2004-04-17  Benjamin Otte  <otte@gnome.org>
7214
7215         * gst/gstelement.c: (gst_element_dispose):
7216           simplify
7217         * gst/gstpad.c: (gst_pad_call_chain_function):
7218           don't create loads of events due to bad macro usage
7219
7220 2004-04-16  David Schleef  <ds@schleef.org>
7221
7222         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7223         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7224         * gst/gstvalue.c: (gst_value_serialize_buffer),
7225         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7226         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7227         to indicate types that are fixed wrt caps or not.  Switching to
7228         this function fixes (bug #140298).
7229         * gst/gstvalue.h:
7230
7231 2004-04-16  David Schleef  <ds@schleef.org>
7232
7233         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7234         for GST_UNALIGNED_ACESS, since we essentially know which archs
7235         are ok.
7236
7237 2004-04-17  Benjamin Otte  <otte@gnome.org>
7238
7239         * docs/gst/Makefile.am:
7240           ignore gst/parse directory when building docs (fixes #140205)
7241
7242 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7243
7244         * testsuite/refcounting/mem.c: (vmsize):
7245           do error checking
7246
7247 2004-04-16  Johan Dahlin  <johan@gnome.org>
7248
7249         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7250         and gst_pad_call_get_function.
7251
7252 2004-04-15  David Schleef  <ds@schleef.org>
7253
7254         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7255         checks if we can access unaligned memory.
7256         * configure.ac: Use it.
7257
7258 2004-04-16  Benjamin Otte  <otte@gnome.org>
7259
7260         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7261         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7262         * gst/elements/gstfilesrc.h:
7263           s/seek_happened/need_discont/ and require discont before sending any
7264           data
7265
7266 2004-04-15  David Schleef  <ds@schleef.org>
7267
7268         * gst/gstvalue.c: (gst_value_serialize_buffer),
7269         (gst_value_deserialize_buffer), (_gst_value_initialize):
7270         Register these types as fundamental types. (bug #140015)
7271
7272 2004-04-16  Benjamin Otte  <otte@gnome.org>
7273
7274         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7275         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7276         (gst_pad_pull):
7277           implement enforcing discont events before buffers are passed. This
7278           allows state changes of only some elements and later correctly going
7279           on where they left off (or in short: you can now set audio sinks to
7280           NULL to release the device when the pipeline is paused)
7281         * gst/gstpad.c: (gst_pad_call_chain_function),
7282         (gst_pad_call_get_function):
7283         * gst/gstpad.h:
7284           add gst_pad_call_chain_function and gst_pad_call_get_function for
7285           scheduler interaction. They are required because of the changes
7286           above.
7287         * gst/schedulers/entryscheduler.c: (get_buffer),
7288         (gst_entry_scheduler_chain_wrapper),
7289         (gst_entry_scheduler_get_wrapper),
7290         (gst_entry_scheduler_state_transition),
7291         (gst_entry_scheduler_pad_link):
7292         * gst/schedulers/gstbasicscheduler.c:
7293         (gst_basic_scheduler_chain_wrapper),
7294         (gst_basic_scheduler_src_wrapper),
7295         (gst_basic_scheduler_chainhandler_proxy),
7296         (gst_basic_scheduler_gethandler_proxy),
7297         (gst_basic_scheduler_cothreaded_chain),
7298         (gst_basic_scheduler_chain_elements):
7299         * gst/schedulers/gstoptimalscheduler.c:
7300         (get_group_schedule_function), (pad_clear_queued),
7301         (gst_opt_scheduler_pad_link):
7302           use the new functions instead of calling get/chain-functions
7303           directly.
7304
7305 2004-04-15  David Schleef  <ds@schleef.org>
7306
7307         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7308         * docs/gst/tmpl/gstinfo.sgml: same
7309         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7310         gtk-doc put here.
7311         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7312         * examples/queue/queue.c: (main):  We iterate pipelines, not
7313         bins.  (bug #139996)
7314
7315 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7316
7317         * docs/pwg/advanced-types.xml:
7318           Add MS RLE support. Also document Qt RLE although I have no sample
7319           files for that yet. And document an extra property for ADPCM.
7320
7321 2004-04-15  David Schleef  <ds@schleef.org>
7322
7323         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7324         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7325         Windows.
7326
7327 2004-04-15  David Schleef  <ds@schleef.org>
7328
7329         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7330         symbol names to not conflict with new gstinfo.h symbols.
7331         * gst/gstinfo.h: Add inline functions for all those crazy
7332         compilers that don't know how to handle variadic macros (MSVC).
7333
7334 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7335
7336         * configure.ac: bump nano to 1
7337
7338 === release 0.8.1 ===
7339
7340 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7341
7342         * NEWS:
7343         * RELEASE:
7344         * configure.ac:
7345           releasing 0.8.1, "Snow Brigade"
7346
7347 2004-04-14  David Schleef  <ds@schleef.org>
7348
7349         * testsuite/Makefile.am: define tests_ignore
7350         * testsuite/Rules: Added new tests_ignore, which get compiled,
7351         but not run (generally because they're inconsistent or have
7352         heisenbugs).  Now we can ensure all the .c files compile in
7353         testsuite/.
7354         * testsuite/bins/Makefile.am: define tests_ignore
7355         * testsuite/bytestream/Makefile.am:
7356         * testsuite/caps/Makefile.am:
7357         * testsuite/clock/Makefile.am:
7358         * testsuite/debug/Makefile.am:
7359         * testsuite/debug/global.c: (gst_debug_log_one),
7360         (gst_debug_log_two): Fix compilation problem.
7361         * testsuite/dynparams/Makefile.am:
7362         * testsuite/elements/Makefile.am:
7363         * testsuite/ghostpads/Makefile.am:
7364         * testsuite/indexers/Makefile.am:
7365         * testsuite/parse/Makefile.am:
7366         * testsuite/plugin/Makefile.am:
7367         * testsuite/refcounting/Makefile.am:
7368         * testsuite/refcounting/element_pad.c: (main): Don't return leak
7369         results, because it's not calculated correctly.
7370         * testsuite/refcounting/pad.c: (main): same
7371         * testsuite/states/Makefile.am:
7372         * testsuite/tags/Makefile.am:
7373         * testsuite/threads/Makefile.am:
7374
7375 2004-04-14  David Schleef  <ds@schleef.org>
7376
7377         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
7378         generating bad code around the cpu detection asm code.
7379
7380 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7381
7382         * tools/gst-inspect.c: (print_element_info):
7383           print numeric version of rank as well, since we added some - 1
7384           rank values to elements
7385
7386 2004-04-13  David Schleef  <ds@schleef.org>
7387
7388         * configure.ac:  Disable various code when compiling for MinGW.
7389         * gst/elements/Makefile.am:
7390         * gst/elements/gstelements.c:
7391         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7392         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7393         * gst/registries/gstxmlregistry.c: (make_dir):
7394
7395 2004-04-13  David Schleef  <ds@schleef.org>
7396
7397         * gst/Makefile.am:
7398         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7399         assembly.
7400         * gst/gstcpuid_i386.s: remove
7401
7402 2004-04-13  David Schleef  <ds@schleef.org>
7403
7404         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
7405         seems to think it needs to be done.
7406         * docs/gst/tmpl/gstfakesink.sgml:
7407         * docs/gst/tmpl/gstfakesrc.sgml:
7408         * docs/gst/tmpl/gstfdsink.sgml:
7409         * docs/gst/tmpl/gstfdsrc.sgml:
7410         * docs/gst/tmpl/gstfilesink.sgml:
7411         * docs/gst/tmpl/gstfilesrc.sgml:
7412         * docs/gst/tmpl/gstidentity.sgml:
7413         * docs/gst/tmpl/gstmd5sink.sgml:
7414         * docs/gst/tmpl/gstmultifilesrc.sgml:
7415         * docs/gst/tmpl/gstpipefilter.sgml:
7416         * docs/gst/tmpl/gstshaper.sgml:
7417         * docs/gst/tmpl/gstspider.sgml:
7418         * docs/gst/tmpl/gstspideridentity.sgml:
7419         * docs/gst/tmpl/gststatistics.sgml:
7420         * docs/gst/tmpl/gsttee.sgml:
7421         * docs/gst/tmpl/gsttypefind.sgml:
7422         * docs/gst/tmpl/gstutils.sgml:
7423
7424 2004-04-13  David Schleef  <ds@schleef.org>
7425
7426         * configure.ac: Changes to remove POSIXisms (mmap in this case)
7427         and to build DLLs on Windows.
7428         * gst/Makefile.am:
7429         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7430         (gst_filesrc_open_file):
7431         * gst/schedulers/Makefile.am:
7432
7433 2004-04-13  David Schleef  <ds@schleef.org>
7434
7435         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
7436         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
7437         fixating lists.
7438
7439 2004-04-12  David Schleef  <ds@schleef.org>
7440
7441         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
7442         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
7443         to using it.
7444         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
7445         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
7446         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
7447         * gst/gststructure.c: (gst_structure_set_valist),
7448         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
7449         support for buffers.
7450         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
7451         intended to be const.
7452         * gst/gsttag.h: same
7453         * gst/gstvalue.c: (gst_value_serialize_buffer),
7454         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
7455         to (de)serialize buffers.
7456         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
7457         * testsuite/caps/string-conversions.c: (main):
7458         * testsuite/caps/value_serialize.c: add new test
7459
7460 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7461
7462         * docs/pwg/advanced-types.xml:
7463           Document MS video 1 (video/x-msvideocodec) mimetype/format.
7464
7465 2004-04-11  Benjamin Otte  <otte@gnome.org>
7466
7467         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7468           rename categories to basic_*
7469         * gst/schedulers/gstbasicscheduler.c: 
7470         (gst_basic_scheduler_chain_wrapper),
7471         (gst_basic_scheduler_chainhandler_proxy),
7472         (gst_basic_scheduler_gethandler_proxy),
7473         (gst_basic_scheduler_eventhandler_proxy):
7474           debugging category fixes - put common stuff in log category
7475         * gst/schedulers/gstbasicscheduler.c: 
7476         (gst_basic_scheduler_chain_elements):
7477           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
7478           active and linking two active chains
7479
7480 2004-04-10  Benjamin Otte  <otte@gnome.org>
7481
7482         * docs/pwg/intro-preface.xml:
7483           fix dead links and remove reference to Wiki
7484
7485 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7486
7487         * gst/schedulers/gstbasicscheduler.c:
7488           make sure we can switch back to the main function if we're still in
7489           the main function (supposed to fix #139617)
7490         * gst/schedulers/gthread-cothreads.h:
7491           don't throw an error when switching to the same cothread
7492
7493 2004-04-09  Benjamin Otte  <otte@gnome.org>
7494
7495         * gst/gstbin.c: (gst_bin_get_type):
7496         * gst/gstclock.c: (gst_clock_get_type):
7497         * gst/gstindex.c: (gst_index_get_type):
7498         * gst/gstobject.c: (gst_object_get_type),
7499         (gst_signal_object_get_type):
7500         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
7501         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
7502         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
7503         * gst/gstqueue.c: (gst_queue_get_type):
7504         * gst/gstregistry.c: (gst_registry_get_type):
7505         * gst/gstsystemclock.c: (gst_system_clock_get_type):
7506         * gst/gstthread.c: (gst_thread_get_type):
7507           don't use memchunks for these objects, use malloc instead
7508
7509 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7510
7511         * docs/gst/.cvsignore:
7512         * docs/gst/Makefile.am:
7513         * docs/gst/gstreamer-sections.txt:
7514         * docs/gst/tmpl/gstaggregator.sgml:
7515         * docs/gst/tmpl/gstbuffer.sgml:
7516         * docs/gst/tmpl/gstclock.sgml:
7517         * docs/gst/tmpl/gstelement.sgml:
7518         * docs/gst/tmpl/gstfakesink.sgml:
7519         * docs/gst/tmpl/gstfakesrc.sgml:
7520         * docs/gst/tmpl/gstfdsink.sgml:
7521         * docs/gst/tmpl/gstfdsrc.sgml:
7522         * docs/gst/tmpl/gstfilesink.sgml:
7523         * docs/gst/tmpl/gstfilesrc.sgml:
7524         * docs/gst/tmpl/gstidentity.sgml:
7525         * docs/gst/tmpl/gstindex.sgml:
7526         * docs/gst/tmpl/gstinfo.sgml:
7527         * docs/gst/tmpl/gstmd5sink.sgml:
7528         * docs/gst/tmpl/gstmultifilesrc.sgml:
7529         * docs/gst/tmpl/gstpad.sgml:
7530         * docs/gst/tmpl/gstpipefilter.sgml:
7531         * docs/gst/tmpl/gstpipeline.sgml:
7532         * docs/gst/tmpl/gstpluginfeature.sgml:
7533         * docs/gst/tmpl/gstqueue.sgml:
7534         * docs/gst/tmpl/gstregistry.sgml:
7535         * docs/gst/tmpl/gstscheduler.sgml:
7536         * docs/gst/tmpl/gstshaper.sgml:
7537         * docs/gst/tmpl/gstspider.sgml:
7538         * docs/gst/tmpl/gstspideridentity.sgml:
7539         * docs/gst/tmpl/gststatistics.sgml:
7540         * docs/gst/tmpl/gstsystemclock.sgml:
7541         * docs/gst/tmpl/gsttee.sgml:
7542         * docs/gst/tmpl/gstthread.sgml:
7543         * docs/gst/tmpl/gsttypefind.sgml:
7544         * docs/gst/tmpl/gstutils.sgml:
7545           further doc build fixes
7546
7547 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7548
7549         * docs/gst/Makefile.am:
7550           make docs exit on scanning problems
7551           fix nonsrcdir build issues
7552         * docs/gst/gstreamer-sections.txt:
7553           adding stuff from -unused
7554         * gst/gstqueue.h:
7555           create GstQueueSize
7556         * gst/schedulers/cothreads_compat.h:
7557           fix cothread warnings
7558
7559 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7560
7561         * docs/gst/gstreamer-sections.txt:
7562           remove defines deprecated by Benjamin
7563
7564 2004-04-07  Benjamin Otte  <otte@gnome.org>
7565
7566         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7567           when the buffer is complete, don't check if other buffers are needed
7568         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
7569           check that the offset is >0 so we don't try to read before the
7570           beginning of the file
7571         * gst/gstpad.c: (gst_pad_set_pad_template):
7572           sink the template, so we don't end up with 130k pad templates
7573
7574 2004-04-06  Benjamin Otte  <otte@gnome.org>
7575
7576         * gst/autoplug/gstspider.c: (gst_spider_link_add):
7577           don't ref the element, adding already reffed it. And we didn't unref
7578           it later anyway... (huge memleak when you used many spider elements)
7579         * gst/gstelement.c: (gst_element_base_class_finalize):
7580         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
7581         (gst_element_register):
7582         * gst/gsturi.c: (gst_element_make_from_uri):
7583           use gst_object_(un)ref instead of g_object(un)ref
7584
7585 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7586
7587         * gst/gstbuffer.h:
7588           remove macro that wouldn't work anymore because struct member has
7589           been removed.
7590         * gst/schedulers/entryscheduler.c: (schedule_forward):
7591           fix segfault for unconnected pads
7592         
7593 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7594
7595         reviewed by David Schleef <ds@schleef.org>
7596
7597         * gst/gstinfo.h:
7598           *_FORMAT modifiers should require putting a % in front of them for
7599           consistency reasons.
7600
7601 2004-04-05  Colin Walters  <walters@redhat.com>
7602
7603         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
7604         space.
7605
7606 2004-04-05  Benjamin Otte  <otte@gnome.org>
7607
7608         * configure.ac:
7609         * gst/Makefile.am:
7610         * gst/gst_private.h:
7611         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
7612           add support for detecting if GStreamer runs inside valgrind.
7613           requires valgrind (d'oh) and --enable-debug for correct cdetection.
7614           print a big message in valgrind that GStreamer has detected it's
7615           running inside and might now use different code.
7616         * gst/gstmemchunk.c: (populate), (free_area),
7617         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
7618         (gst_mem_chunk_free):
7619           flag memchunks for valgrind, so it can detect leaking of chunks.
7620           This allows detecting leaks of GstBuffer and GstEvent correctly
7621           inside valgrind.
7622
7623 2004-04-05  David Schleef  <ds@schleef.org>
7624
7625         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
7626           jensgr@gmx.net (Jens Granseuer)
7627
7628 2004-04-05  David Schleef  <ds@schleef.org>
7629
7630         * gst/gstbuffer.c: (_gst_buffer_sub_free),
7631         (gst_buffer_default_free), (gst_buffer_default_copy),
7632         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
7633         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
7634         structures in one place.
7635
7636 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7637
7638         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
7639           (GST_TIME_FORMAT, GST_TIME_ARGS)
7640
7641 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7642
7643         * testsuite/elements/Makefile.am:
7644           disable test until it stops breaking make distcheck
7645
7646 2004-04-05  Johan Dahlin  <johan@gnome.org>
7647
7648         * po/sv.po: Updated translation
7649
7650 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7651
7652         * gst/gstplugin.c: (gst_plugin_load_file):
7653           fix segfault for when original plugin was loaded statically
7654
7655 2004-04-05  Benjamin Otte  <otte@gnome.org>
7656
7657         * testsuite/debug/category.c: (main):
7658         * testsuite/debug/commandline.c: (main):
7659         * testsuite/debug/output.c: (main):
7660           fix tests to work again with debugging enabled
7661
7662 2004-04-05  Benjamin Otte  <otte@gnome.org>
7663
7664         * gst/schedulers/gstbasicscheduler.c:
7665         (gst_basic_scheduler_pad_link):
7666           fix to work with recent scheduling changes
7667
7668 2004-04-05  Benjamin Otte  <otte@gnome.org>
7669
7670         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
7671         prepareChangeLog doesn't work when cvs indents):
7672           don't throw an error when no element can be scheduled, there's too
7673           many weird reasons why it doesn't work. Return STOPPED instead.
7674           decoupled elemts' schedulability doesn't depend on bufpens.
7675
7676 2004-04-04  Benjamin Otte  <otte@gnome.org>
7677
7678         * gst/schedulers/gstbasicscheduler.c:
7679         (gst_basic_scheduler_pad_select):
7680           fix uninitialized variable warnings
7681
7682 2004-04-04  Benjamin Otte  <otte@gnome.org>
7683
7684         * gst/gstpad.c: (gst_pad_collect_valist):
7685           fix uninitialized variable warning
7686         * gst/schedulers/entryscheduler.c: (schedule_forward):
7687           fix shadowed variable
7688
7689 2004-04-04  Benjamin Otte  <otte@gnome.org>
7690
7691         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
7692         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
7693         (gst_pad_select):
7694         * gst/gstpad.h:
7695         * gst/gstscheduler.c: (gst_scheduler_pad_select),
7696         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
7697         * gst/gstscheduler.h:
7698           implement gst_pad_collect as replacement for gst_pad_select.
7699           deprecate gst_pad_select and gst_scheduler_(un)lock_element
7700           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
7701           new pad_select, lock and unlock calls.
7702         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
7703         * gst/cothreads.h:
7704         * gst/schedulers/cothreads_compat.h:
7705         * gst/schedulers/gthread-cothreads.h:
7706           remove unused cothread_lock and cothread_unlock calls
7707         * gst/schedulers/entryscheduler.c:
7708         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
7709         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
7710         (gst_entry_scheduler_pad_select):
7711           update to new API
7712         * gst/schedulers/gstbasicscheduler.c:
7713         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
7714         (gst_basic_scheduler_pad_select):
7715           remove useless lock and unlock calls, update pad_select to new API
7716           (untested)
7717         * gst/schedulers/gstoptimalscheduler.c:
7718         (gst_opt_scheduler_class_init):
7719           remove useless select, lock and unlock function calls
7720         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
7721           use gst_pad_collect instead of gst_pad_select
7722
7723 2004-04-04  Benjamin Otte  <otte@gnome.org>
7724
7725         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
7726         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
7727         (schedule_next_element), (print_entry):
7728           add can_schedule_pad to handle element states.
7729           add schedule_forward to select the correct entry to schedule next
7730
7731 2004-04-03  Benjamin Otte  <otte@gnome.org>
7732
7733         * gst/schedulers/entryscheduler.c: 
7734           remove unused variable, fix error inside Rb, fix compile warning in
7735           unreachable code
7736
7737 2004-04-03  Benjamin Otte  <otte@gnome.org>
7738
7739         * gst/schedulers/entryscheduler.c:
7740           completely revamp the inner workings, so it's a lot easier to
7741           understand and extend
7742
7743 2004-04-03  Andy Wingo  <wingo@pobox.com>
7744
7745         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
7746         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
7747         This allows better introspection of pipeline topology.
7748         (add_to_chain): Don't do trickery to put loop elements first;
7749         rather, queue a chain sort by marking the chain as dirty.
7750         (remove_from_chain): Mark the chain dirty.
7751         (sort_chain): New function. Sorts the group list so that terminal
7752         sinks are first. This means elements on the sink side will be
7753         preferentially sscheduled before elements on the src side of the
7754         pipeline.
7755         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
7756         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
7757         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
7758         (group_inc_link): Change argument and variable names to match the
7759         new link structure member names (src and sink).
7760         (group_dec_link): Add some description
7761
7762 2004-04-03  Benjamin Otte  <otte@gnome.org>
7763
7764         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
7765         * gst/gstinfo.h:
7766         * testsuite/debug/category.c: (main):
7767         * testsuite/debug/commandline.c: (main):
7768         * testsuite/debug/output.c: (main):
7769         * testsuite/debug/printf_extension.c: (main):
7770           fix to successfully build and test with --disable-gst-debug
7771           configure switch (fixes #138705)
7772
7773 2004-04-03  Benjamin Otte  <otte@gnome.org>
7774
7775         * docs/pwg/building-boiler.xml:
7776           add cvs login line and s/anonymous/anoncvs/
7777
7778 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
7779
7780         reviewed by Benjamin Otte  <otte@gnome.org>
7781
7782         * gst/gststructure.c: (gst_structure_free):
7783           memleak fix: free fields array (partial fix for #134839)
7784
7785 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7786
7787         * docs/random/ds/0.9-suggested-changes:
7788           Add a note to change handoff use in fakesrc to be usable in
7789           a more generic way (fakesrc should be renamed to appsrc or so).
7790         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7791           Change signal type to scope, so we can fill the buffer in the
7792           handoff handler (that's the whole use of this signal...).
7793
7794 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7795
7796         * docs/pwg/other-ntoone.xml:
7797           Document muxers and n-to-1 elements.
7798
7799 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
7800
7801         * gst/registries/gstxmlregistry.c
7802         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
7803         determine if a file is a G_MODULE. The old one discards paths
7804         containing "so" somewhere in the middle. My home directory is
7805         called "soto". Go figure...
7806
7807 2004-03-31  David Schleef  <ds@schleef.org>
7808
7809         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
7810         to eventually deprecate gst_buffer_merge().  (bug: #136408)
7811         * gst/gstbuffer.h:
7812
7813 2004-03-31  David Schleef  <ds@schleef.org>
7814
7815         * gst/gstvalue.c: (gst_value_union_int_int_range),
7816         (gst_value_union_int_range_int_range), (gst_value_can_union),
7817         (gst_value_union), (_gst_value_initialize):  Add some union
7818         implementations.  We didn't have any previously.
7819         * testsuite/caps/Makefile.am:
7820         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
7821         (gst_audioscale_getcaps), (test_caps), (main): A little test
7822         that is the same as the caps manipulation in audioscale.
7823
7824 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7825
7826         * docs/faq/general.xml:
7827           add entry about "does gst support format X?"
7828
7829 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7830
7831         * gst/gstthread.c:
7832           fix docs
7833         * gst/gstutils.h:
7834           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
7835
7836 2004-03-30  Benjamin Otte  <otte@gnome.org>
7837
7838         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7839           set the offset of the buffer to the requested offset
7840         * gst/elements/gsttypefind.c: (stop_typefinding):
7841           revert patch 1.18 (which I unfortunately don't know the reason for).
7842           This is needed to allow downstream elements to seek. Otherwise
7843           typefind might overwrite a previous seek by downstream elements.
7844           This lead to errors with id3tag and typefind on some mp3s.
7845         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
7846         (gst_entry_scheduler_iterate):
7847           be more verbose when debugging
7848
7849 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7850
7851         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7852           make sure we don't get NULL strings
7853
7854 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7855
7856         * gst/gstcaps.c:
7857         * gst/gstelement.c:
7858         * gst/gstelementfactory.c: (gst_element_factory_get_type):
7859         * gst/gstindex.c: (gst_index_resolver_get_type),
7860         (gst_index_get_type), (gst_index_factory_get_type):
7861         * gst/gstinfo.c:
7862         * gst/gstpad.c:
7863         * gst/gstplugin.c:
7864         * gst/gsturi.c: (gst_uri_handler_get_type):
7865         * gst/gstvalue.c:
7866           first batch of documentation fixes
7867
7868 2004-03-29  David Schleef  <ds@schleef.org>
7869
7870         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
7871         * docs/gst/gstreamer-docs.sgml:  More hacking
7872         * docs/gst/gstreamer-sections.txt:
7873         * docs/gst/tmpl/cothreads_compat.sgml:
7874         * docs/gst/tmpl/gstcaps.sgml:
7875         * docs/gst/tmpl/gstclock.sgml:
7876         * docs/gst/tmpl/gstelement.sgml:
7877         * docs/gst/tmpl/gstevent.sgml:
7878         * docs/gst/tmpl/gstpad.sgml:
7879         * docs/gst/tmpl/gstutils.sgml:
7880         * docs/gst/tmpl/gstxml.sgml:
7881         * docs/gst/tmpl/gthread-cothreads.sgml:
7882         * docs/random/ds/0.9-suggested-changes:
7883         * gst/elements/gstfakesink.h: doc fixes
7884         * gst/elements/gstfakesrc.h: doc fixes
7885         * gst/gstcaps.c: doc fixes
7886         * gst/gstcaps.h: doc fixes
7887         * gst/gstelement.c: doc fixes
7888         * gst/gstelement.h: doc fixes
7889         * gst/gstindex.c: doc fixes
7890         * gst/gstinfo.c: doc fixes
7891         * gst/gstpad.c: doc fixes
7892         * gst/gstpad.h: doc fixes
7893         * gst/gstplugin.c: doc fixes
7894         * gst/gsttypefind.h: doc fixes
7895         * gst/gsturi.c: doc fixes
7896         * gst/gstvalue.c: doc fixes
7897
7898 2004-03-29  Colin Walters  <walters@redhat.com>
7899
7900         * gst/registries/gstxmlregistry.c (get_time)
7901         (plugin_times_older_than_recurse):
7902         Use the result of stat to determine whether a path is a file,
7903         so we don't attempt to opendir() files.
7904
7905 2004-03-29  Benjamin Otte  <otte@gnome.org>
7906
7907         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7908           print caps in debugging output when setting caps failed
7909         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
7910         (schedule_next_element), (get_buffer), (run_chainhandler),
7911         (element_may_start), (gst_entry_scheduler_chain_handler),
7912         (gst_entry_scheduler_get_handler),
7913         (gst_entry_scheduler_state_transition),
7914         (gst_entry_scheduler_pad_link):
7915           make this scheduler a testcase for mandatory
7916           discont-before-first-buffer which is needed if we want to allow apps
7917           to release the sound device.
7918           add SCHED_ASSERT macro to print scheduler state before an assertion
7919           triggers.
7920
7921 2004-03-29  Benjamin Otte  <otte@gnome.org>
7922
7923         * COPYING:
7924           replace by LGPL (former COPYING.LIB). The core is completely
7925           licensed LGPL.
7926         * COPYING.LIB:
7927           remove
7928
7929 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7930
7931         * po/af.po:
7932         * po/sv.po:
7933           updated Afrikaans and Swedish
7934
7935 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7936
7937         * po/LINGUAS:
7938         * po/az.po:
7939           adding Azerbaijani (Mətin Əmirov)
7940
7941 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
7942
7943         * gst/gstelement.h: 
7944         * gst/gstelement.c (gst_element_set_time_delay): New function for
7945         setting element time taking into account a hardware buffering
7946         delay.
7947         (gst_element_set_time): Now just an invocation of
7948         gst_element_set_time_delay.
7949         * gst/gstclock.h: 
7950         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
7951         allowing to set event times in the future.
7952         (gst_clock_get_event_time): Now just an invocation of
7953         gst_clock_get_event_time_delay.
7954
7955 2004-03-28  Benjamin Otte  <otte@gnome.org>
7956
7957         * gst/gstbin.c: (gst_bin_set_element_sched),
7958         (gst_bin_unset_element_sched):
7959           don't add decoupled elements to schedulers - otherwise it's
7960           impossible to control if a link to a decoupled element was already
7961           removed from a scheduler or not.
7962         * gst/schedulers/cothreads_compat.h:
7963         * gst/schedulers/gthread-cothreads.h:
7964           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
7965           is no "unused" warning.
7966         * gst/schedulers/Makefile.am:
7967         * gst/schedulers/entryscheduler.c:
7968           add new scheduler, based on ideas from talking to David and Martin.
7969           It's supposed to be small and correct. Currently it's also slow (but
7970           it's not noticable)
7971         * examples/retag/retag.c: (main):
7972         * testsuite/bytestream/test1.c: (main):
7973           fix missing NULLs at end of variadic functions
7974         * testsuite/elements/.cvsignore:
7975           update
7976
7977 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
7978
7979         * gst/gstevent.h:
7980         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
7981
7982 2004-03-25  David Schleef  <ds@schleef.org>
7983
7984         * docs/gst/gstreamer-sections.txt:  More doc hacking.
7985         * docs/gst/tmpl/gstaggregator.sgml:
7986         * docs/gst/tmpl/gstautoplugfactory.sgml:
7987         * docs/gst/tmpl/gstbin.sgml:
7988         * docs/gst/tmpl/gstbuffer.sgml:
7989         * docs/gst/tmpl/gstbufferstore.sgml:
7990         * docs/gst/tmpl/gstfakesink.sgml:
7991         * docs/gst/tmpl/gstfakesrc.sgml:
7992         * docs/gst/tmpl/gstmd5sink.sgml:
7993         * docs/gst/tmpl/gstreamer-unused.sgml:
7994         * docs/gst/tmpl/gstsearchfuncs.sgml:
7995         * docs/gst/tmpl/gstshaper.sgml:
7996         * docs/gst/tmpl/gstspider.sgml:
7997         * docs/gst/tmpl/gsttee.sgml:
7998         * docs/gst/tmpl/gstutils.sgml:
7999         * docs/gst/tmpl/gstvalue.sgml:
8000         * docs/gst/tmpl/gstxml.sgml:
8001         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8002         and we don't support it.
8003         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8004         (gst_use_threads), (gst_has_threads): same
8005         * gst/gstthreaddummy.c: same
8006         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8007         * gst/autoplug/gstspider.h: same
8008         * gst/elements/gstaggregator.h: Remove bogus function from header
8009         * gst/elements/gstfakesink.h: same
8010         * gst/elements/gstfakesrc.h: same
8011         * gst/elements/gstmd5sink.h: same
8012         * gst/elements/gstshaper.h: same
8013         * gst/elements/gsttee.h: same
8014         * gst/gstbin.c: doc fixes
8015         * gst/gstbin.h: Remove unused definition.
8016         * gst/gstbuffer.c: doc fixes
8017         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8018         * gst/gstfilter.c: doc fixes
8019         * gst/gsttag.c: doc fixes
8020         * gst/gstvalue.c: doc fixes
8021
8022 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8023
8024         * docs/pwg/advanced-types.xml:
8025           Document typefinding.
8026         * docs/pwg/other-oneton.xml:
8027           Document one-to-n elements, demuxers and parsers.
8028
8029 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8030
8031         reviewed by: David Schleef  <ds@schleef.org>
8032
8033         * configure.ac: Check bison version (bug #127838)
8034
8035 2004-03-25  David Schleef  <ds@schleef.org>
8036
8037         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8038         * docs/gst/gstreamer-sections.txt:
8039         * docs/gst/tmpl/gstautoplug.sgml:
8040         * docs/gst/tmpl/gststaticautoplug.sgml:
8041         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8042         * docs/gst/tmpl/gstutils.sgml:
8043         * docs/gst/tmpl/gstxml.sgml:
8044
8045 2004-03-24  David Schleef  <ds@schleef.org>
8046
8047         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8048         manual being such complete crap, that I decided to do major
8049         hacking of it.  This checkin replaces any fine tuning that
8050         may have been done previously, with the benefit of actually
8051         being complete for much of the API that was changed since
8052         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8053         * docs/gst/gstreamer-sections.txt:
8054         * docs/gst/tmpl/GstBin.sgml:
8055         * docs/gst/tmpl/GstBuffer.sgml:
8056         * docs/gst/tmpl/GstCaps.sgml:
8057         * docs/gst/tmpl/GstClock.sgml:
8058         * docs/gst/tmpl/GstCompat.sgml:
8059         * docs/gst/tmpl/GstData.sgml:
8060         * docs/gst/tmpl/GstElement.sgml:
8061         * docs/gst/tmpl/GstEvent.sgml:
8062         * docs/gst/tmpl/GstIndex.sgml:
8063         * docs/gst/tmpl/GstStructure.sgml:
8064         * docs/gst/tmpl/GstTag.sgml:
8065         * docs/gst/tmpl/cothreads.sgml:
8066         * docs/gst/tmpl/cothreads_compat.sgml:
8067         * docs/gst/tmpl/gettext.sgml:
8068         * docs/gst/tmpl/grammar.tab.sgml:
8069         * docs/gst/tmpl/gst-i18n-app.sgml:
8070         * docs/gst/tmpl/gst-i18n-lib.sgml:
8071         * docs/gst/tmpl/gst.sgml:
8072         * docs/gst/tmpl/gst_private.sgml:
8073         * docs/gst/tmpl/gstaggregator.sgml:
8074         * docs/gst/tmpl/gstarch.sgml:
8075         * docs/gst/tmpl/gstatomic.sgml:
8076         * docs/gst/tmpl/gstatomic_impl.sgml:
8077         * docs/gst/tmpl/gstbin.sgml:
8078         * docs/gst/tmpl/gstbuffer.sgml:
8079         * docs/gst/tmpl/gstbufferstore.sgml:
8080         * docs/gst/tmpl/gstcaps.sgml:
8081         * docs/gst/tmpl/gstclock.sgml:
8082         * docs/gst/tmpl/gstcompat.sgml:
8083         * docs/gst/tmpl/gstconfig.sgml:
8084         * docs/gst/tmpl/gstcpu.sgml:
8085         * docs/gst/tmpl/gstdata.sgml:
8086         * docs/gst/tmpl/gstdata_private.sgml:
8087         * docs/gst/tmpl/gstelement.sgml:
8088         * docs/gst/tmpl/gstenumtypes.sgml:
8089         * docs/gst/tmpl/gsterror.sgml:
8090         * docs/gst/tmpl/gstevent.sgml:
8091         * docs/gst/tmpl/gstfakesink.sgml:
8092         * docs/gst/tmpl/gstfakesrc.sgml:
8093         * docs/gst/tmpl/gstfilesink.sgml:
8094         * docs/gst/tmpl/gstfilter.sgml:
8095         * docs/gst/tmpl/gstindex.sgml:
8096         * docs/gst/tmpl/gstinfo.sgml:
8097         * docs/gst/tmpl/gstinterface.sgml:
8098         * docs/gst/tmpl/gstlog.sgml:
8099         * docs/gst/tmpl/gstmacros.sgml:
8100         * docs/gst/tmpl/gstmarshal.sgml:
8101         * docs/gst/tmpl/gstmd5sink.sgml:
8102         * docs/gst/tmpl/gstmultifilesrc.sgml:
8103         * docs/gst/tmpl/gstobject.sgml:
8104         * docs/gst/tmpl/gstpad.sgml:
8105         * docs/gst/tmpl/gstparse.sgml:
8106         * docs/gst/tmpl/gstpipeline.sgml:
8107         * docs/gst/tmpl/gstplugin.sgml:
8108         * docs/gst/tmpl/gstpluginfeature.sgml:
8109         * docs/gst/tmpl/gstqueue.sgml:
8110         * docs/gst/tmpl/gstreamer-unused.sgml:
8111         * docs/gst/tmpl/gstregistry.sgml:
8112         * docs/gst/tmpl/gstregistrypool.sgml:
8113         * docs/gst/tmpl/gstscheduler.sgml:
8114         * docs/gst/tmpl/gstsearchfuncs.sgml:
8115         * docs/gst/tmpl/gstshaper.sgml:
8116         * docs/gst/tmpl/gstspider.sgml:
8117         * docs/gst/tmpl/gstspideridentity.sgml:
8118         * docs/gst/tmpl/gststructure.sgml:
8119         * docs/gst/tmpl/gstsystemclock.sgml:
8120         * docs/gst/tmpl/gsttag.sgml:
8121         * docs/gst/tmpl/gsttaginterface.sgml:
8122         * docs/gst/tmpl/gsttee.sgml:
8123         * docs/gst/tmpl/gstthread.sgml:
8124         * docs/gst/tmpl/gsttrace.sgml:
8125         * docs/gst/tmpl/gsttrashstack.sgml:
8126         * docs/gst/tmpl/gsttypefind.sgml:
8127         * docs/gst/tmpl/gsttypes.sgml:
8128         * docs/gst/tmpl/gsturi.sgml:
8129         * docs/gst/tmpl/gsturitype.sgml:
8130         * docs/gst/tmpl/gstutils.sgml:
8131         * docs/gst/tmpl/gstvalue.sgml:
8132         * docs/gst/tmpl/gstversion.sgml:
8133         * docs/gst/tmpl/gstxml.sgml:
8134         * docs/gst/tmpl/gstxmlregistry.sgml:
8135         * docs/gst/tmpl/gthread-cothreads.sgml:
8136         * docs/gst/tmpl/types.sgml:
8137
8138 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8139
8140         * docs/pwg/other-sink.xml:
8141         * docs/pwg/other-source.xml:
8142           Documentation on how to write source and sink elements. Other
8143           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8144           manager, autoplugger) are all still pending.
8145
8146 2004-03-25  Benjamin Otte  <otte@gnome.org>
8147
8148         * testsuite/elements/Makefile.am:
8149         * testsuite/elements/gst-compprep-check:
8150           add check to make sure gst-compprep works
8151         * testsuite/elements/gst-inspect-check.in:
8152           improve initialization output
8153         * testsuite/Makefile.am:
8154         * testsuite/gst-inspect-check:
8155           remove old file
8156
8157 2004-03-24  David Schleef  <ds@schleef.org>
8158
8159         * testsuite/elements/Makefile.am:
8160         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8161         to the testsuite.
8162
8163 2004-03-24  Benjamin Otte  <otte@gnome.org>
8164
8165         * libs/gst/control/dparam.c: (gst_dparam_attach),
8166         (gst_dparam_detach):
8167         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8168           fix lvalue casts for real
8169
8170 2004-03-24  Benjamin Otte  <otte@gnome.org>
8171
8172         * gst/schedulers/gstbasicscheduler.c:
8173         (gst_basic_scheduler_src_wrapper):
8174         * gst/schedulers/gstoptimalscheduler.c:
8175         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8176         (pad_clear_queued), (gst_opt_scheduler_add_element),
8177         (gst_opt_scheduler_remove_element):
8178           fix GStreamer to not have issues with lvalue casts anymore (fixes
8179           #136841)
8180
8181 2004-03-24  Benjamin Otte  <otte@gnome.org>
8182
8183         * gst/gstelement.c:
8184           add documentation about a gobject quirk where the object hasn't the
8185           correct class pointer set on initialization
8186         * gst/schedulers/gstbasicscheduler.c:
8187         (gst_basic_scheduler_src_wrapper):
8188           make sure to not run into an infinite loop
8189
8190 2004-03-22  Benjamin Otte  <otte@gnome.org>
8191
8192         * gst/gstutils.c: (gst_util_dump_mem):
8193         * gst/gstutils.h:
8194           first argument of gst_util_dump_mem should be const
8195
8196 2004-03-22  Johan Dahlin  <johan@gnome.org>
8197
8198         * gst/gstvalue.h: Clean up a little bit.
8199
8200 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8201
8202         reviewed by Benjamin Otte  <otte@gnome.org>
8203
8204         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8205         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8206         (gst_aggregator_class_init), (gst_aggregator_init):
8207         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8208         (gst_filesrc_dispose), (gst_filesrc_set_location):
8209         * gst/elements/gstidentity.c: (gst_identity_finalize),
8210         (gst_identity_class_init), (gst_identity_chain):
8211         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8212         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8213         (gst_statistics_class_init):
8214         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8215         (gst_tee_get_property):
8216           clean up used memory in this elements correctly on teardown (closes
8217           #137279)
8218
8219 2004-03-20  Colin Walters  <walters@redhat.com>
8220
8221         * gst/registries/gstxmlregistry.c:
8222         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8223         registry saving atomic.
8224
8225 2004-03-20  Colin Walters  <walters@redhat.com>
8226
8227         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8228         Just use
8229         access() instead of actually creating and deleting files.
8230
8231 2004-03-18  David Schleef  <ds@schleef.org>
8232
8233         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8234         (bug #137625)
8235
8236 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8237
8238         * po/sv.po: updated translation (Christian Rose)
8239
8240 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8241
8242         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8243         (gst_filesink_get_query_types), (_do_init),
8244         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8245           return FALSE silently
8246         * po/af.po: updated translation (Petri Jooste)
8247
8248 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8249
8250         * Makefile.am:
8251         * configure.ac:
8252           dist common properly
8253         * po/af.po:
8254         * po/fr.po:
8255         * po/nl.po:
8256         * po/sr.po:
8257         * po/sv.po:
8258           refreshing translations
8259
8260 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8261
8262         * po/LINGUAS:
8263         * po/sv.po:
8264         * po/af.po:
8265           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8266
8267 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8268
8269         * Makefile.am: use common/release.mak
8270
8271 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8272
8273         * docs/faq/gst-uninstalled:
8274           adding gst-monkeysaudio to the list of possible plugin dirs
8275
8276 2004-03-16  David Schleef  <ds@schleef.org>
8277
8278         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8279         (gst_init_check_with_popt_table):  Fix some gettext strings to
8280         make them easier to translate.  Required making the strings
8281         non-const.
8282
8283 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8284
8285         * configure.ac: bump nano to 1
8286
8287 === release 0.8.0 ===
8288
8289 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8290
8291         * configure.ac: release 0.8.0, "Executive Slacks"
8292
8293 2004-03-16  Johan Dahlin  <johan@gnome.org>
8294
8295         * gst/schedulers/gstoptimalscheduler.c
8296         (gst_opt_scheduler_pad_unlink): Remove double ;,
8297         spotted by Scott Wheeler
8298
8299 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8300
8301         * configure.ac: bump libtool version
8302
8303 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8304
8305         * gst/gstcaps.h:
8306         * gst/gststructure.h:
8307           add reserved padding
8308
8309 2004-03-15  Benjamin Otte  <otte@gnome.org>
8310
8311         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8312           set the first parameter for select call correctly.
8313           (fixes #137230)
8314
8315 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8316
8317         * *.c,*.h: don't mix tabs and spaces
8318
8319 2004-03-15  Johan Dahlin  <johan@gnome.org>
8320
8321         * gst/schedulers/gstoptimalscheduler.c
8322         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8323         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8324
8325         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8326         
8327 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8328
8329         * testsuite/Rules:
8330           fix gst-register rules
8331
8332 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8333
8334         * testsuite/Rules:
8335           use versioned gst-register
8336
8337 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8338
8339         * docs/libs/gstreamer-libs-sections.txt:
8340           remove </SUBSECTION>
8341         * gst/gstplugin.c:
8342         * gst/gstregistry.c: (gst_registry_add_plugin):
8343         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8344         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8345           add debugging and fix some comment blocks
8346
8347 2004-03-15  Johan Dahlin  <johan@gnome.org>
8348
8349         * *.h: Revert indent changes.
8350         
8351 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8352
8353         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8354           g_error_free the g_error
8355         * tools/gst-feedback-m.m:
8356           check for other versions of gstreamer
8357         * tools/gst-indent:
8358           use sh, not bash
8359
8360 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8361
8362         * tools/gst-register.c: do not spill paths when registries are not
8363           writable, until we fix the "user running gst-register" case.
8364
8365 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8366
8367         * *.c, *.h: commit of gst-indent run on core
8368
8369 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8370
8371         * tools/gst-indent:
8372         * tools/Makefile.am:
8373           add our indentation style as a script
8374
8375 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8376
8377         * po/sr.po:
8378         * po/LINGUAS:
8379           added Serbian translation
8380
8381 2004-03-13  Benjamin Otte  <otte@gnome.org>
8382
8383         * gst/gstelement.c:
8384           add documentation note about gst_element_found_tags_for_pad not
8385           being usable in getfunctions. (see #137042)
8386
8387 2004-03-12  David Schleef  <ds@schleef.org>
8388
8389         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8390         change API right now!  Readd gst_caps_is_simple() macro.
8391         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8392         uninitialized variable.  I'd bet this caused crashes.
8393         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8394
8395 2004-03-12  Johan Dahlin  <johan@gnome.org>
8396
8397         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8398         * gst/gstcaps.h: Clean up
8399
8400         * gst/gst.c (init_post): call gst_caps_get_type() instead of
8401         _gst_caps_initalize()
8402
8403         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
8404         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
8405
8406         * gst/gststructure.c (gst_structure_get_type): Ditto
8407
8408         * gst/gststructure.h: Ditto
8409         
8410 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8411
8412         * gst/gstqueue.c: (gst_queue_init):
8413           Reset default max. values in queues. Reason is simply to avoid
8414           braindead use. If you want wider values, use the properties. The
8415           default is supposed to always work. Wider values would make this
8416           beast a memory hog by default (250 full-PAL RGB32 video frames?
8417           That's 440 MB! No thank you).
8418
8419 2004-03-10  David Schleef  <ds@schleef.org>
8420
8421         * tools/gst-run.c: (main):  Fix crash when no relevant tools
8422         were found.  (bug #136793)
8423
8424 2004-03-10  Johan Dahlin  <johan@gnome.org>
8425
8426         * gst/schedulers/gstoptimalscheduler.c
8427         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
8428         links to elements within the same group, so we can finally remove
8429         that annoying warning. Refactor the code a little bit
8430         (group_dec_links_for_element): Split out
8431
8432 2004-03-09  David Schleef  <ds@schleef.org>
8433
8434         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
8435         (bug #134863)
8436
8437 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8438
8439         * configure.ac: first bug fix due to major/minor bump
8440
8441 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8442
8443         * configure.ac: bump nano to 1
8444
8445 === release 0.7.6 ===
8446
8447 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8448
8449         * NEWS:
8450         * RELEASE:
8451         * configure.ac:
8452           releasing 0.7.6, "Almost"
8453         * po/fr.po:
8454         * po/nl.po:
8455         * tools/Makefile.am:
8456         * tools/gst-feedback-m.m:
8457           unversioned source
8458
8459 2004-03-09  Johan Dahlin  <johan@gnome.org>
8460
8461         Reviewed by: Thomas Vander Stichele
8462
8463         * gst/gstelement.c (gst_element_class_init): register second
8464         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
8465         language bindings can (de)marshall correctly.
8466
8467         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
8468
8469         * gst/gsterror.c (gst_g_error_get_type): New function
8470
8471         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
8472         with VOID:OBJECT,OBJECT,STRING 
8473
8474 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
8475
8476         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
8477         Free a leaked g_timer on early returns.
8478
8479 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8480
8481         * docs/pwg/advanced-types.xml:
8482           Add cinepak description.
8483
8484 2004-03-07  David Schleef  <ds@schleef.org>
8485
8486         * docs/random/mimetypes:  Added cinepak description
8487
8488 2004-03-07  Andy Wingo  <wingo@pobox.com>
8489
8490         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
8491
8492         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
8493         there are no links to other groups when a group is destroyed.
8494         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
8495         removed from a group, make sure the link count to elements linked
8496         to other pads is appropriately decremented. This really fixes
8497         #135672.
8498
8499         The 1.60->1.61 patch has been reapplied in light of this fix.
8500
8501         * gst/gstelement.c (gst_element_dispose): Really protect against
8502         multiple invocations this time.
8503
8504 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8505
8506         * docs/gst/gstreamer-sections.txt:
8507         * docs/gst/tmpl/gsttag.sgml:
8508           remove some deprecated functions, document some existing ones
8509         * gst/gsttag.c: (gst_tag_get_flag):
8510         * gst/gsttag.h:
8511           add accessor function
8512
8513 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8514
8515         * docs/gst/gstreamer-sections.txt:
8516         * docs/gst/tmpl/gsttag.sgml:
8517         * docs/gst/tmpl/gstxml.sgml:
8518         * gst/gsttag.c: (gst_tag_get_flag):
8519         * gst/gsttag.h:
8520
8521 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
8522
8523         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
8524         leak
8525
8526 2004-03-05  David Schleef  <ds@schleef.org>
8527
8528         * REQUIREMENTS: Add bison and flex.
8529         * configure.ac: Fix comment about bison.
8530         * docs/random/ds/0.9-suggested-changes: yer ma
8531         * tools/gst-inspect.c: (print_element_info):  Fix warning.
8532
8533 2004-03-05  Benjamin Otte  <otte@gnome.org>
8534
8535         * gst/gstelement.c: (gst_element_error_full):
8536           revert recent recursive state changing commit - messing with other
8537           elements' states is evil and should be done by apps only.
8538
8539 2004-03-05  Benjamin Otte  <otte@gnome.org>
8540
8541         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
8542           check for empty intersection instead of NULL caps
8543         (gst_element_get_compatible_pad_filtered):
8544           remove old workaround that is only a bug nowadays
8545
8546 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8547
8548         * gst/gstelement.c: (gst_element_error_full):
8549           make elements try to recursively change state to PAUSED on all
8550           parents after an error to suppress ensuing warnings
8551         * gst/parse/grammar.y:
8552           make it check if it was able to sync the state, and throw an error
8553           if not, so stuff like
8554           oggdemux ! vorbisdec ! osssink gets caught
8555
8556 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8557
8558         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
8559           it contains lib64; use AS_AC_EXPAND to handle it properly
8560
8561 2004-03-05  David Schleef  <ds@schleef.org>
8562
8563         * gst/gstcpuid_i386.s:  Remove unused code
8564         * libs/gst/getbits/getbits.c: (gst_getbits_init),
8565         (gst_getbits_newbuf): Remove MMX code
8566         * libs/gst/getbits/getbits.h: Remove MMX code
8567
8568 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
8569
8570         * debian/.cvsignore:
8571         * debian/README.Debian:
8572         * debian/changelog:
8573         * debian/control:
8574         * debian/control.in:
8575         * debian/copyright:
8576         * debian/gstreamer-core-libs-dev.files:
8577         * debian/gstreamer-core-libs.files:
8578         * debian/gstreamer-core.files:
8579         * debian/gstreamer-core.postinst:
8580         * debian/gstreamer-core.postrm:
8581         * debian/gstreamer-doc.files:
8582         * debian/gstreamer-doc.links:
8583         * debian/gstreamer-doc.lintian:
8584         * debian/gstreamer-runtime.files:
8585         * debian/gstreamer-runtime.manpages:
8586         * debian/gstreamer-runtime.postinst:
8587         * debian/gstreamer-runtime.postrm:
8588         * debian/gstreamer-tools.files:
8589         * debian/gstreamer-tools.manpages:
8590         * debian/libgstreamer-dev.files:
8591         * debian/libgstreamer0.4.1.files:
8592         * debian/libgstreamerVERSION.files:
8593         * debian/rules:
8594         Debian package info not maintained here.
8595
8596 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8597
8598         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8599         * gst/gstbin.c: (gst_bin_class_init):
8600         * gst/gstelement.c: (gst_element_class_init):
8601         * gst/gstindex.c: (gst_index_class_init):
8602         * gst/gstobject.c: (gst_object_class_init),
8603         (gst_signal_object_class_init):
8604         * gst/gstpad.c: (gst_pad_template_class_init):
8605         * gst/gstregistry.c: (gst_registry_class_init):
8606         * gst/gsturi.c: (gst_uri_handler_base_init):
8607         * gst/gstxml.c: (gst_xml_class_init):
8608         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8609         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
8610           make all signal names use dashes instead of underscore
8611
8612 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8613
8614         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
8615
8616 2004-03-03  Benjamin Otte  <otte@gnome.org>
8617
8618         * gst/schedulers/gstoptimalscheduler.c:
8619           revert last commit by Andy Wingo. It causes segfaults on unreffing
8620           in Rhythmbox. (see bug #135672)
8621
8622 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8623
8624         * po/fr.po: fix typo
8625
8626 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8627
8628         * tools/gst-inspect.c: (main): 
8629         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
8630
8631 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8632
8633         * configure.ac:
8634           get GLIB_ONLY and POPT flags for the nonversioned binaries
8635         * tools/Makefile.am:
8636           use them
8637
8638 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8639
8640         * gst/gst.c: (init_post):
8641           change so that GST_REGISTRY now is where the global registry gets
8642           saved, since that is where plugins now get attached to first, and
8643           spilled over to the user registry.  Note that in the case of using
8644           GST_REGISTRY env var, we don't want to affect any real registries
8645           beyond the one given by this var, and thus we don't set a user
8646           registry to spill to.  So make sure GST_REGISTRY is writable.
8647
8648 2004-03-01  David Schleef  <ds@schleef.org>
8649
8650         * AUTHORS:  Added some names.  Add yourself if you're missing.
8651
8652 2004-03-01  David Schleef  <ds@schleef.org>
8653
8654         * MAINTAINERS: Add
8655
8656 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
8657
8658         * configure.ac:
8659           remove whitespace
8660         * docs/gst/tmpl/gstbuffer.sgml:
8661         * docs/gst/tmpl/gstdata.sgml:
8662         * docs/gst/tmpl/gstreamer-unused.sgml:
8663         * docs/gst/tmpl/gstxml.sgml:
8664           doc update
8665         * docs/manuals.mak:
8666           add a FIXME
8667         * docs/pwg/intro-preface.xml:
8668         * docs/pwg/pwg.xml:
8669           remove GNOME
8670         * gst/gst.c: (init_post):
8671           try GST_PLUGIN_PATH paths for the _global_registry first
8672         * gst/gstelement.h:
8673           add the error message as well, otherwise (null) debug info doesn't
8674           make much sense
8675         * tools/gst-register.c: (main):
8676           spill paths to next registry if this registry is not writable
8677         * po/fr.po:
8678         * po/nl.po:
8679           translation updates
8680
8681 2004-03-01  Johan Dahlin  <johan@gnome.org>
8682
8683         * gst/gstbuffer.c (_gst_buffer_initialize): 
8684         * gst/gstdata.c (gst_data_get_type): 
8685         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
8686         instead of ref, since some applications that uses GBoxed
8687         routines depends on a function that actually returns a copy.
8688
8689 2004-02-27  Benjamin Otte  <otte@gnome.org>
8690
8691         * gst/gstbuffer.h:
8692           remove gst_buffer_free, use gst_data_unref
8693         * gst/gstdata.c: (gst_data_get_type):
8694           use refcounting in GstData GBoxed registration
8695         * gst/gstdata.h:
8696           remove gst_data_free, use gst_data_unref
8697
8698 2004-02-27  Johan Dahlin  <johan@gnome.org>
8699
8700         * gst/gstdata.c (gst_data_get_type): New function, register
8701         GstData as a GBoxed type.
8702
8703         * gst/gstdata.h (GST_TYPE_DATA): New macro
8704
8705 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
8706
8707         * Makefile.am:
8708         * gstreamer.spec.in:
8709           put back RELEASE
8710         * gst/Makefile.am:
8711           clean up non-disting of built files
8712         * testsuite/debug/commandline.c:
8713           test fix for option rename
8714
8715 2004-02-26  David Schleef  <ds@schleef.org>
8716
8717         * configure.ac:  We don't really need glib-2.3.  Also remove
8718         some unneeded checks for library functions.
8719         * gst/Makefile.am:  Instead, we need to not dist files created
8720         by glib-genmarshal.
8721
8722 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8723
8724         * configure.ac:
8725           bump glib required version to 2.3.0 for g_value_takes_boxed
8726
8727  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
8728
8729         * common/m4/gst-docs.m4
8730         change flavour text from enable to disable as enable is our default
8731         closes bug Bug 135304
8732
8733 === release 0.7.5 ===
8734  
8735  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8736  
8737         * NEWS:
8738           instate NEWS file
8739         * Makefile.am:
8740         * gstreamer.spec.in:
8741         * RELEASE:
8742           put back release
8743         * configure.ac:
8744         * docs/random/release:
8745           more updates
8746
8747 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8748
8749         * gst/gsttag.c: (_gst_tag_initialize):
8750         * po/fr.po:
8751         * po/nl.po:
8752           remove hyphen from codec tags
8753
8754 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8755
8756         * gst/parse/Makefile.am:
8757           fix dependency so that a make from a clean build works the first
8758           time
8759
8760 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8761
8762         * docs/random/release:
8763           update release strategy
8764         * po/fr.po:
8765           auto-update po file
8766         * po/nl.po:
8767           update dutch translation
8768
8769 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8770
8771         * docs/manual/debugging.xml:
8772         fix manual for new debugging system
8773
8774 2004-02-25  Andy Wingo  <wingo@pobox.com>
8775
8776         * gst/gstpad.c (gst_pad_link_prepare): Re-add
8777         gst_pad_link_prepare. Please email the list with specific reasons
8778         for reverting.
8779
8780 2004-02-24  Andy Wingo  <wingo@pobox.com>
8781
8782         * gst/gstelement.c (gst_element_dispose): Protect against multiple
8783         invocations.
8784
8785         * gst/schedulers/gstoptimalscheduler.c:
8786         I added a mess of prototypes at the top of the file by way of
8787         documentation. Some of the operations on chains and groups were
8788         re-organized.
8789
8790         (create_group): Added a type argument so if the group is enabled,
8791         the setup_group_scheduler knows what to do.
8792         (group_elements): Added a type argument here, too, to be passed on
8793         to create_group.
8794         (group_element_set_enabled): If an unlinked PLAYING element is
8795         added to a bin, we have to create a new group to hold the element,
8796         and this function will be called before the group is added to the
8797         chain. Thus we have a valid case for group->chain==NULL. Instead
8798         of calling chain_group_set_enabled, just set the flag on the group
8799         (the chain's status will be set when the group is added to it).
8800         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
8801         Setup the group scheduler when the group is enabled, not
8802         specifically when an element goes PAUSED->PLAYING. This means
8803         PLAYING elements can be added, linked, and scheduled into a
8804         PLAYING pipeline, as was intended.
8805         (add_to_group): Don't ref the group twice. I don't know when this
8806         double-ref got in here. Removing it has the potential to cause
8807         segfaults if other parts of the scheduler are buggy. If you find
8808         that the scheduler is segfaulting for you, put in an extra ref
8809         here and see if that hacks over the underlying issue. Of course,
8810         then find out what code is unreffing a group it doesn't own...
8811         (create_group): Make the extra refcount floating, and remove it
8812         after adding the element. This means that...
8813         (unref_group): Destroy when the refcount reaches 0, not 1, like
8814         every other refcounted object in the known universe.
8815         (remove_from_group): When a group becomes empty, set it to be not
8816         active, and remove it from its chain. Don't unref it again,
8817         there's no floating reference any more.
8818         (destroy_group): We have to remove the group from the chain in
8819         remove_from_group (rather than here) to break refcounting cycles
8820         (the chain always has a ref on the group). So assert that
8821         group->chain==NULL.
8822         (ref_group_by_count): Removed, it was commented out anyway.
8823         (merge_chains): Use the remove_from_chain and add_to_chain
8824         primitives to do the reparenting, instead of rolling our own
8825         implementation.
8826         (add_to_chain): The first non-disabled group in the chain's group
8827         list will be the entry point for the chain. Because buffers can
8828         accumulate in loop elements' peer bufpens, we preferentially
8829         schedule loop groups before get groups to avoid unnecessary
8830         execution of get-based groups when the bufpens are already full.
8831         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
8832         (get_group_schedule_function): Ditto.
8833         (loop_group_schedule_function): Ditto.
8834         (gst_opt_scheduler_loop_wrapper): Ditto.
8835         (gst_opt_scheduler_iterate): Ditto.
8836
8837         I understand the opt scheduler now, yippee!
8838
8839         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
8840         (gst_pad_get_name, gst_pad_set_chain_function) 
8841         (gst_pad_set_get_function, gst_pad_set_event_function) 
8842         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
8843         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
8844         (gst_pad_set_query_function, gst_pad_get_query_types) 
8845         (gst_pad_get_query_types_default) 
8846         (gst_pad_set_internal_link_function) 
8847         (gst_pad_set_formats_function, gst_pad_set_link_function) 
8848         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
8849         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
8850         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
8851         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
8852         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
8853         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
8854         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
8855         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
8856         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
8857         (gst_pad_event_default_dispatch, gst_pad_event_default) 
8858         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
8859         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
8860         (gst_pad_get_formats_default, gst_pad_get_formats): Better
8861         argument checks, and some doc fixes.
8862
8863         (gst_pad_custom_new_from_template): Um, does anyone
8864         use these functions? Actually make a custom pad instead of a
8865         normal one.
8866         (gst_pad_try_set_caps): Transpose some checks.
8867         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
8868         the pad is in negotiation.
8869         (gst_pad_try_relink_filtered): Use pad_link_prepare.
8870         
8871         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
8872
8873         * gst/gstelement.h: 
8874         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
8875         on the list.
8876
8877 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8878
8879         * gst/gstbin.c: (gst_bin_add):
8880           add error for not being able to add elements
8881
8882 2004-02-22  Julien MOUTTE <julien@moutte.net>
8883
8884         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
8885         audio-codec and video-codec.
8886
8887 2004-02-22  Benjamin Otte  <otte@gnome.org>
8888
8889         reported by: Padraig O'Briain <padraig.obriain@sun.com>
8890
8891         * autogen.sh:
8892           replace test -e with test -x for mkinstalldirs to be more portable.
8893           (fixes #134816)
8894
8895 2004-02-22  Benjamin Otte  <otte@gnome.org>
8896
8897         * gst/gstpad.c:
8898           revert last patch from Andy, it makes gst_pad_can_link_filtered much
8899           too noisy
8900         * gst/gsttag.c: (_gst_tag_initialize):
8901         * gst/gsttag.h:
8902           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
8903         * libs/gst/control/dparam.c: (gst_dparam_attach):
8904         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
8905           check that types for attached dparams match
8906
8907 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8908
8909         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
8910         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8911         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8912           fix errors
8913
8914 2004-02-20  Andy Wingo  <wingo@pobox.com>
8915
8916         * gst/gstbin.c:
8917         * gst/gstbuffer.c:
8918         * gst/gstplugin.c:
8919         * gst/registries/gstxmlregistry.c: 
8920         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
8921
8922         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
8923         (gst_element_add_pad): DEBUG->INFO, some fixes.
8924         (gst_element_get_compatible_pad_template): Just see if the
8925         templates' caps intersect, not if one is a strict subset of the
8926         other. This conforms more to what gst_pad_link_intersect() does.
8927         (gst_element_class_add_pad_template): Don't memcpy the pad
8928         template, just ref it.
8929         (gst_element_get_compatible_pad_filtered): Clean up debug messages
8930
8931         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
8932         (gst_pad_link_filtered): Debug changes.
8933         (gst_pad_link_prepare): New function, consolidated from
8934         can_link_filtered and link_filtered.
8935
8936         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
8937         look more like that of the functions in gstelement.c
8938
8939         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
8940         object, and return the empty string if object is NULL.
8941
8942         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
8943         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
8944         LOG, not DEBUG. We still get flex info on debug.
8945
8946         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
8947         debug string more verbose.
8948         (plugin_times_older_than): DEBUG->LOG.
8949
8950 2004-02-20  Julien MOUTTE <julien@moutte.net>
8951
8952         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
8953         will emit found_tag for each stream they demux with the codec.
8954
8955 2004-02-20  Benjamin Otte  <otte@gnome.org>
8956
8957         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
8958           copy navigation event correctly. Check freeing tag lists. 
8959         * gst/gstthread.c: (gst_thread_change_state):
8960           don't abort() on state changing mess - it might happen because of
8961           bugs.
8962         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
8963           use boxed functions
8964         * gst/gstvalue.h:
8965           fix GST_VALUE_HOLDS_CAPS
8966
8967 2004-02-19  David Schleef  <ds@schleef.org>
8968
8969         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
8970         and use it for GST_FUNCTION.  (bug #134750)
8971
8972 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8973
8974         * po/fr.po:
8975         * po/nl.po:
8976           updating translations
8977
8978 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8979
8980         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
8981
8982 2004-02-18  kost@imn.htwk-leipzig.de
8983
8984         reviewed by: David Schleef  <ds@schleef.org>
8985
8986         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
8987         for libgstcontrol.
8988
8989 2004-02-18  David Schleef  <ds@schleef.org>
8990
8991         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8992         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
8993         (gst_dpsmooth_new): Additional fixes to get double dparams working.
8994         * tools/gst-inspect.c: (print_element_info): Support dumping of
8995         double dparam information.
8996
8997 2004-02-17  David Schleef  <ds@schleef.org>
8998
8999         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9000         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9001         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9002         Use GST_TYPE_CAPS in signal prototype.
9003         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9004         Convert GST_TYPE_CAPS to boxed.
9005         * gst/gstelement.c: (gst_element_class_init):
9006         Use GST_TYPE_TAG_LIST in signal prototype.
9007         * gst/gstindex.c: (gst_index_class_init):
9008         * gst/gstindex.h:
9009         Add GST_TYPE_INDEX_ENTRY type.
9010         * gst/gstmarshal.list:
9011         Add necessary marshal types.
9012         * gst/gstpad.c: (gst_real_pad_class_init),
9013         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9014         (gst_pad_recover_caps_error):
9015         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9016         * gst/gststructure.c: (_gst_structure_initialize),
9017         (gst_structure_copy), (_gst_structure_copy_conditional):
9018         * gst/gststructure.h:
9019         Convert GST_TYPE_STRUCTURE to boxed.
9020         * gst/gsttag.c: (gst_tag_list_get_type):
9021         * gst/gsttag.h:
9022         Add GST_TYPE_TAG_LIST type.
9023
9024 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9025
9026         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9027         to what we agreed with david.
9028         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9029
9030 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9031
9032         * po/nl.po: update translation
9033
9034 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9035
9036         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9037           throw an error if spider is trying to play a mime type there is
9038           no decoder for
9039         * po/POTFILES.in:
9040           add gst/autoplug/gstspider.c for translation
9041
9042 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9043
9044         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9045         silently when the pad is negotiating.
9046
9047 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9048
9049         * docs/faq/Makefile.am:
9050           add script to run gstreamer uninstalled 
9051         * docs/faq/faq.xml:
9052         * docs/faq/developing.xml:
9053         * docs/faq/gst-uninstalled:
9054           extract script to run gstreamer uninstalled
9055         * docs/manuals.mak:
9056           add EXTRA_SOURCES variable for Makefile.am's to set to
9057           use additional SOURCE files for the doc build
9058
9059 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9060
9061         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9062
9063 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9064
9065         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9066         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9067         an error was thrown by osssink. Basically a state change failure for
9068         an element in a different scheduling group was considered as
9069         successful, which means that caps nego was going on and weird stuff
9070         happened. Like I wrote in the comment there, if someone wants to
9071         revert that please drop me a mail explaining why because I really see
9072         no point in keeping that broken behaviour there.
9073         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9074         be empty, we then return NULL which will trigger a nice error when 
9075         pulling from the pad.
9076
9077 2004-02-13  David Schleef  <ds@schleef.org>
9078
9079         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9080         (gst_dparam_get_property), (gst_dparam_set_property),
9081         (gst_dparam_do_update_default):
9082         * libs/gst/control/dparam.h:
9083         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9084         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9085         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9086         (gst_dpsmooth_do_update_double):
9087         * libs/gst/control/dparam_smooth.h:
9088         * libs/gst/control/dparammanager.c:
9089         (gst_dpman_inline_direct_update):
9090         Add support for double dparams.
9091
9092 2004-02-13  David Schleef  <ds@schleef.org>
9093
9094         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9095         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9096
9097 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9098
9099         reviewed by: David Schleef  <ds@schleef.org>
9100
9101         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9102         (gst_fdsrc_init), (gst_fdsrc_set_property),
9103         (gst_fdsrc_get_property), (gst_fdsrc_get):
9104         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9105         and sends an EOS event if file descriptor reading times out.
9106
9107 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9108
9109         * configure.ac:
9110           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9111
9112 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9113
9114         * configure.ac: pass required libxml version as argument
9115         (bug reported by Christophe Fergeau)
9116
9117 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9118   
9119         * docs/gst/gstreamer-docs.sgml:
9120         * docs/gst/tmpl/gstxml.sgml:
9121         * docs/libs/gstreamer-libs-docs.sgml:
9122           version API docs
9123
9124 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9125
9126         * gst/gstinfo.c:
9127         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9128         (gst_registry_pool_feature_filter):
9129         * gst/gstthread.c: (gst_thread_class_init):
9130         * gst/gstvalue.c:
9131           add includes exposed by building without libxml
9132         * gst/indexers/Makefile.am:
9133           do not build fileindex when LOADSAVE disabled; we should have
9134           a better libxml check later since fileindex depends on xml, not
9135           LOADSAVE or REGISTRY
9136         * libs/gst/control/Makefile.am:
9137           link with m
9138         * tools/Makefile.am:
9139           fix wrong source code for gst-xmlinspect
9140
9141 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9142
9143         * configure.ac:
9144           fix gcov help output
9145           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9146         * docs/random/release:
9147           some updated releasing notes
9148         * gstreamer.spec.in:
9149           more updates
9150
9151 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9152
9153         * docs/faq/faq.xml:
9154         * docs/manual/manual.xml:
9155         * docs/pwg/pwg.xml:
9156         * docs/pwg/titlepage.xml:
9157           put version in documentation
9158
9159 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9160
9161         * tools/Makefile.am: fix man page installation
9162
9163 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9164
9165         * configure.ac:
9166           don't check for libxml when load/save and registry disabled (#105844)
9167         * gstreamer.spec.in:
9168           sync with fedora candidate spec
9169
9170 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9171
9172         * po/fr.po:
9173         * po/nl.po:
9174           replace multidisksrc with multifilesrc
9175
9176 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9177
9178         * po/POTFILES.in:
9179           update to multidisksrc => multifilesrc file renaming (#134145)
9180
9181 2004-02-11  David Schleef  <ds@schleef.org>
9182
9183         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9184         * docs/gst/tmpl/gstpadtemplate.sgml: same
9185         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9186         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9187         fixing dance.
9188         * gst/gstutils.c: Remove disabled code that uses GstProps.
9189         * gst/registries/gstxmlregistry.h: same
9190         * docs/random/ds/0.9-suggested-changes: random notes
9191
9192 2004-02-11  kost@imn.htwk-leipzig.de
9193
9194         reviewed by: David Schleef  <ds@schleef.org>
9195
9196         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9197         initialisation of clock (bug #134128)
9198
9199 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9200
9201         * configure.ac:
9202         * gst/elements/Makefile.am:
9203         * gst/elements/gstelements.c:
9204         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9205         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9206         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9207         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9208         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9209         * gst/elements/gstmultifilesrc.h:
9210           rename multidisksrc to multifilesrc (part of #122200)
9211
9212 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9213
9214         * docs/manuals.mak:
9215           fix automake complaints
9216         * gst-element-check.m4:
9217           fix unquotedness
9218
9219 2004-02-11  David Schleef  <ds@schleef.org>
9220
9221         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9222         * gst/gstatomic_impl.h: Disable sparc implementation.
9223
9224 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9225
9226         * gst-element-check.m4:
9227           fix underquoted macros as reported by automake 1.8.x (#133800)
9228         * configure.ac:
9229           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9230           by autopoint (fixes #132996)
9231
9232 2004-02-10  Andy Wingo  <wingo@pobox.com>
9233
9234         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9235         way to do inheritance.
9236         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9237         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9238         Routine docs.
9239         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9240         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9241         doc.
9242         (gst_pad_unlink, gst_pad_is_linked): Docs.
9243         (gst_pad_renegotiate): A brief description of capsnego.
9244         (gst_pad_try_set_caps): Document.
9245         (gst_pad_try_set_caps_nonfixed): Document.
9246         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9247         (gst_pad_set_parent): Deprecated (although not out of the API).
9248         (gst_pad_get_parent): Deprecated, although many plugins use this.
9249         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9250         are private and will go away in 0.9.
9251         (gst_pad_perform_negotiate): Doc.
9252         (gst_pad_link_unnegotiate): I think this is meant to be static.
9253         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9254         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9255         (gst_pad_get_peer): Doc updates.
9256         (gst_pad_caps_change_notify): Doc.
9257         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9258         (gst_ghost_pad_new): Doc fixes.
9259
9260         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9261         (gst_object_check_uniqueness): 
9262
9263         * gst/gstelement.c (gst_element_add_pad) 
9264         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9265         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9266         (gst_element_get_static_pad, gst_element_get_pad_list) 
9267         (gst_element_class_get_pad_template_list) 
9268         (gst_element_class_get_pad_template): Work on the docs.
9269         (gst_element_get_pad_template_list): Uses the class method.
9270         (gst_element_get_compatible_pad_template): Docs, and consolidate
9271         some test conditions. 
9272         (gst_element_get_pad_from_template): New static function.
9273         (gst_element_request_compatible_pad): Docs, and work with
9274         non-request compatible templates. 
9275         (gst_element_get_compatible_pad_filtered): Docs and remove
9276         redundant checks.
9277         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9278         (gst_element_link_filtered, gst_element_link_many) 
9279         (gst_element_link, gst_element_link_pads) 
9280         (gst_element_unlink_many): Docs.
9281
9282 2004-02-05  Andy Wingo  <wingo@pobox.com>
9283
9284         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9285         s/pointer/boxed/.
9286
9287         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9288
9289         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9290         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9291         with the type=GST_TYPE_CAPS. This allows language bindings to know
9292         what kind of data they're dealing with.
9293
9294         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9295         to NULL when g_value_init is called. GstCaps, which rolls its own
9296         type implementation, now does the same instead of allocating empty
9297         caps.
9298         (_gst_caps_initialize, _gst_caps_collect_value,
9299         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9300         table methods. This allows G_VALUE_COLLECT to work.
9301
9302 2004-02-05  Andy Wingo  <wingo@pobox.com>
9303
9304         * configure.ac:
9305         * testsuite/Makefile.am (SUBDIRS): 
9306         * testsuite/ghostpads/Makefile.am: 
9307         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9308
9309         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9310         These two routines are the only ones that set
9311         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9312         pad template. They should be made static, depending on ABI needs.
9313         (gst_real_pad_dispose): Handle the case of ghost pads without a
9314         parent. Assert after dealing with ghost pads that the ghost pad
9315         list is empty.
9316         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9317         set after creation.
9318         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9319         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9320         functions. set_property will call add_ghost_pad/remove_ghost_pad
9321         as appropriate.
9322         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9323
9324         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9325         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9326         (gst_element_remove_pad): Handle ghost pads as well.
9327         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9328         depending on API-stability needs).
9329
9330 2004-02-05  Andy Wingo  <wingo@pobox.com>
9331
9332         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9333         of course they're const
9334
9335 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9336
9337         * tools/Makefile.am:
9338         * tools/gst-feedback:
9339         * tools/gst-feedback-0.7:
9340           make gst-feedback versioned too for consistency
9341
9342 2004-02-11  David Schleef  <ds@schleef.org>
9343
9344         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9345         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9346
9347 2004-02-10  Julien MOUTTE <julien@moutte.net>
9348
9349         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9350         the structure does not contain a valid tag list. Adding a safety check
9351         to remove a noisy warning in that case.
9352
9353 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9354
9355         * gst/gst.c: fix name to be in line with others
9356
9357 2004-02-09  Julien MOUTTE <julien@moutte.net>
9358
9359         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
9360         not shout that loud when len is 0. Just return 0 silently.
9361
9362 2004-02-09  Julien MOUTTE  <julien@moutte.net>
9363
9364         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
9365         because data_unref has one and I prefer the debug to be symetric.
9366         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
9367         were refed when added to the queue and unrefed only once when the queue
9368         was flushed. Now the flush handler unref the buffers two times : first
9369         unref for the ref added when pushing in the queue's tail and second
9370         unref to destroy the flushed buffer.
9371
9372 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9373
9374         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
9375
9376 2004-02-06  David Schleef  <ds@schleef.org>
9377
9378         * docs/random/ds/0.9-suggested-changes: Random ramblings
9379         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
9380         to int before printing.
9381         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
9382         * gst/parse/parse.l: same.  See bug #129600
9383
9384 2004-02-06  David Schleef  <ds@schleef.org>
9385
9386         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
9387         (gst_index_add_entry), (gst_index_add_associationv),
9388         (gst_index_add_association): Add gst_index_add_associationv()
9389         and clean up gst_index_add_association(). #127133
9390
9391 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9392
9393         * autogen.sh: check out common with right tag if CVS/Tag exists
9394
9395 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9396
9397         * testsuite/ghostpads/ghostpads.c: (main):
9398           fix testsuite from segfaulting
9399
9400 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9401
9402         * Makefile.am: add release target
9403         * configure.ac: bump nano to 1
9404         * docs/random/release:
9405
9406 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9407
9408         * gst/gstcaps.h:
9409         * gst/gstelement.c: (gst_element_base_class_init),
9410         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9411         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9412         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9413         (gst_real_pad_dispose):
9414         * gst/gststructure.c: (gst_structure_free),
9415         (gst_structure_from_string):
9416           put reverted patch back in
9417         * gst/gstelement.c: (gst_element_remove_pad):
9418           free explicit caps if they're set
9419         * gst/gstpad.c: (_gst_pad_default_fixate_func):
9420           copy the structure when fixating
9421
9422 2004-02-05  David Schleef  <ds@schleef.org>
9423
9424         * gst/gstmarshal.list:
9425         * gst/gstpad.c: (gst_real_pad_class_init),
9426         (_gst_real_pad_fixate_accumulator):
9427         Revert POINTER->BOXED change in signal marshaller.
9428
9429 === release 0.7.4 ===
9430                                                                                 
9431 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9432                                                                                 
9433         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
9434         * configure.ac: changed for release
9435
9436 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9437
9438         * gstreamer.spec.in:
9439           bump required version of gtk-doc
9440
9441 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9442
9443         * gst/gstcaps.h:
9444         * gst/gstelement.c: (gst_element_base_class_init),
9445         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9446         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9447         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9448         (gst_real_pad_dispose):
9449         * gst/gststructure.c: (gst_structure_free),
9450         (gst_structure_from_string):
9451           revert patch that breaks applications, reapply after release
9452           to get this fixed properly
9453
9454 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9455
9456         * gst/gsttag.c: (_gst_tag_initialize):
9457         * gst/gsttag.h:
9458           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
9459
9460 2004-02-04  David Schleef  <ds@schleef.org>
9461
9462         Fix some memleaks:
9463         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
9464         (gst_spider_plug_from_srcpad):
9465         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
9466
9467 2004-02-04  David Schleef  <ds@schleef.org>
9468
9469         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
9470         a GstRealPad before accessing its structure members.
9471
9472 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9473
9474         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
9475         (gst_clock_get_speed):
9476         * gst/gstclock.h:
9477           reset padding, remove unused fields
9478
9479 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9480
9481         * gst/autoplug/gstspideridentity.c:
9482         (gst_spider_identity_sink_loop_type_finding):
9483           use get_allowed_caps, not get_caps (fixes #132519)
9484         * gst/elements/gsttypefind.c: (stop_typefinding):
9485           use correct order when sending buffers and seeking
9486
9487 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9488
9489         * configure.ac:
9490         * gst/gstelement.h:
9491         * gst/gstpad.h:
9492         * gst/gstqueue.h:
9493           upgrade libtool CURRENT, reset padding
9494
9495 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9496
9497         * configure.ac:
9498           bump to prerelease
9499           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
9500
9501 2004-02-04  David Schleef  <ds@schleef.org>
9502
9503         * docs/random/ds/0.9-suggested-changes: random notes
9504         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
9505         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
9506         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
9507         expansion.
9508         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9509         (gst_filesink_get_query_types): same
9510         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
9511         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
9512         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
9513         to use new GST_PTR_FORMAT.
9514         * gst/gstelement.h: deprecate function factory macros
9515         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
9516         These are our last variadic macros that can't be replaced with
9517         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
9518         attempting to deprecate gst_element_clock_wait().
9519         * gst/gstevent.h: same
9520         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9521         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
9522         * gst/gstpad.h: deprecate function factory macros similar to above.
9523
9524 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9525
9526         * configure.ac:
9527         * tools/Makefile.am:
9528         * tools/gst-run.c: (popt_callback), (hash_print_key),
9529         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
9530         (get_candidates), (main):
9531           add new source file to generate non-versioned wrapper binaries
9532           for our tools.
9533
9534 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9535
9536         * gst/gstevent.c: (_gst_event_free):
9537           actually break; inside the switch statement
9538         * gst/parse/grammar.y:
9539           fix memleak where GValues weren't unset
9540
9541 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9542
9543         * gst/gststructure.c: (gst_structure_from_string):
9544           fix huge memleak
9545         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9546         (new_entry), (gst_type_find_element_chain):
9547         * gst/gstelement.c: (gst_element_base_class_init),
9548         (gst_element_class_set_details):
9549         * gst/gstpad.c: (gst_pad_can_link_filtered):
9550           fix smaller memleaks
9551         * gst/gstpad.c: (gst_real_pad_dispose):
9552           check that explicit caps are gone
9553         * gst/gststructure.c: (gst_structure_free):
9554           actually free the structure
9555         * gst/gstelement.c: (gst_element_clear_pad_caps):
9556           unset explicit caps
9557
9558 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9559
9560         * tools/Makefile.am:
9561           use AM_CFLAGS since all the CFLAGS are the same
9562           use AM_LDFAGS
9563
9564 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9565
9566         * docs/manual/gnome.xml:
9567           expand example a little
9568         * gst/gst.c: (gst_init_with_popt_table),
9569         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
9570           make sure popt option displays are done with right textdomain
9571           use GstPoptOption type
9572         * gst/gst.h:
9573           create GstPoptOption type
9574
9575 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9576
9577         * gst/gsterror.c: (_gst_stream_errors_init):
9578         * gst/gsterror.h:
9579           adding error type for no codec
9580         * po/POTFILES.in:
9581           add gst-inspect
9582         * po/nl.po:
9583           update dutch translation
9584         * tools/gst-inspect.c: (print_element_list), (main):
9585           do proper internationalization
9586         * tools/gst-launch.c: (idle_func):
9587           remove commented out function call
9588
9589 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9590
9591         * docs/README:
9592           add some error fixing notes
9593         * docs/gst/gstreamer-sections.txt:
9594           remove double entries
9595         * docs/gst/tmpl/gstbin.sgml:
9596         * docs/gst/tmpl/gstclock.sgml:
9597           remove override
9598         * docs/gst/tmpl/gstelement.sgml:
9599         * docs/gst/tmpl/gstindex.sgml:
9600         * docs/gst/tmpl/gstobject.sgml:
9601         * docs/gst/tmpl/gstpadtemplate.sgml:
9602         * docs/gst/tmpl/gstreamer-unused.sgml:
9603         * docs/gst/tmpl/gsttag.sgml:
9604         * docs/gst/tmpl/gstthread.sgml:
9605         * docs/gst/tmpl/gstxml.sgml:
9606         * gst/gsttag.h:
9607           sync header prototypes with c decls
9608         * gst/gsttaginterface.c:
9609           fix doc headers
9610
9611 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9612
9613         * gst/parse/Makefile.am:
9614         * gst/gstobject.h:
9615           get rid of gstmarshal.h dependency. It's not needed.
9616         * gst/gst.h:
9617         * gst/elements/gstfakesink.c:
9618         * gst/elements/gstfakesrc.c:
9619         * gst/elements/gstidentity.c:
9620         * gst/gstbin.c:
9621         * gst/gstelement.c:
9622         * gst/gstindex.c:
9623         * gst/gstobject.c:
9624         * gst/gstpad.c:
9625         * gst/gstthread.c:
9626         * gst/gstxml.c:
9627         * libs/gst/control/dparam.c:
9628         * libs/gst/control/dparammanager.c:
9629           include gstmarshal.h.
9630         Fixes #132045
9631
9632 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9633
9634         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9635         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
9636         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
9637         * gst/elements/gstfilesrc.h:
9638           don't ref the filesrc when creating mmaped buffers. Don't keep a
9639           list of not-yet-destroyed buffers.
9640         * gst/gstbuffer.h:
9641           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
9642
9643 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9644
9645         * gst/gst.c: (init_pre):
9646           remove textdomain
9647
9648 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9649
9650         * docs/pwg/advanced-events.xml:
9651         * docs/pwg/advanced-scheduling.xml:
9652         * docs/pwg/intro-basics.xml:
9653         * docs/pwg/other-manager.xml:
9654         * docs/pwg/other-nton.xml:
9655         * docs/pwg/other-ntoone.xml:
9656         * docs/pwg/other-oneton.xml:
9657         * docs/pwg/pwg.xml:
9658           All sort of documentation... Forgot what. Point is that I want this
9659           in before I leave. The 'other-*' will be the last section and will
9660           explain issues specific to these type of elements.
9661
9662 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9663
9664         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9665         (gst_filesrc_get_read):
9666           set all the values on buffers that we can
9667
9668 2004-02-02  David Schleef  <ds@schleef.org>
9669
9670         Change usage of isblah() to g_ascii_isblah() to be more locale
9671         independent.  (#133076)
9672         * gst/gsturi.c: (gst_uri_protocol_check_internal):
9673         * gst/gstutils.c:
9674         * gst/parse/parse.l:
9675
9676 2004-02-02  Jon Trowbridge  <trow@gnu.org>
9677
9678         reviewed by: David Schleef  <ds@schleef.org>
9679
9680         Fix memory leaks:
9681         * gst/gstcaps.c: (gst_caps_to_string):
9682         * gst/registries/gstxmlregistry.c:
9683         (gst_xml_registry_add_path_list_func),
9684         (gst_xml_registry_parse_padtemplate):
9685
9686 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9687
9688         * gst/gstelement.c: (gst_element_default_error):
9689           suffix error messages with period
9690
9691 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9692
9693         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9694         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9695         * gst/gsterror.c: (gst_error_get_message):
9696           Suffix with dots
9697         * po/fr.po:
9698         * po/nl.po:
9699           Update translation files
9700
9701 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9702
9703         * gst/autoplug/gstspideridentity.c:
9704         (gst_spider_identity_sink_loop_type_finding):
9705         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9706         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9707         (gst_filesink_close_file), (gst_filesink_handle_event),
9708         (gst_filesink_chain):
9709         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9710         (gst_filesrc_get_read), (gst_filesrc_open_file):
9711         * gst/elements/gstidentity.c: (gst_identity_chain):
9712         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9713         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9714         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9715         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9716         * gst/gsterror.c: (_gst_core_errors_init),
9717         (_gst_library_errors_init), (_gst_resource_errors_init),
9718         (_gst_stream_errors_init), (gst_error_get_message):
9719         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9720         (gst_pad_recover_caps_error), (gst_pad_pull):
9721         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9722         * gst/schedulers/gstbasicscheduler.c:
9723         (gst_basic_scheduler_chainhandler_proxy),
9724         (gst_basic_scheduler_gethandler_proxy),
9725         (gst_basic_scheduler_cothreaded_chain):
9726           Suffix error messages with period.
9727           Use (NULL) instead of NULL
9728
9729 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9730
9731         * docs/gst/tmpl/gstelement.sgml:
9732         * docs/gst/tmpl/gstxml.sgml:
9733         * gst/gstelement.c: (gst_element_error_full):
9734           add element path to error
9735
9736 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9737
9738         * docs/random/mimetypes:
9739           update raw int/float info
9740         * gst/gsttag.c: (_gst_tag_initialize):
9741         * gst/gsttag.h:
9742           add GST_TAG_ENCODER
9743
9744 2004-01-30  David Schleef  <ds@schleef.org>
9745
9746         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
9747           missing (#132991)
9748
9749 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
9750
9751         reviewed by Benjamin Otte 
9752           parts of the patch submitted in bug #113913
9753
9754         * configure.ac:
9755           use AC_C_INLINE. Use = instead of == with test
9756         * examples/plugins/example.c:
9757         * gst/autoplug/gstspideridentity.c:
9758         * gst/elements/gstfdsrc.c:
9759         * gst/elements/gstfilesrc.c:
9760         * gst/elements/gstidentity.c:
9761         * gst/elements/gstmultidisksrc.c:
9762         * gst/elements/gststatistics.c:
9763         * gst/gstelement.c:
9764         * gst/gstobject.c:
9765         * gst/gstpad.c:
9766         * gst/gstpipeline.c:
9767         * gst/gstthread.c:
9768           don't end enums with a comma
9769         * gst/gstindex.c: (gst_index_compare_func):
9770           do explicit casting to gint
9771         * gst/gsttrace.c: (gst_trace_text_flush):
9772           #define strsize as a macro
9773
9774 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9775
9776         * docs/README:
9777         * docs/gst/gstreamer-docs.sgml:
9778         * docs/gst/gstreamer-sections.txt:
9779         * docs/gst/tmpl/gstelement.sgml:
9780         * docs/gst/tmpl/gsterror.sgml:
9781         * docs/gst/tmpl/gstinterface.sgml:
9782         * docs/gst/tmpl/gstreamer-unused.sgml:
9783         * docs/gst/tmpl/gststructure.sgml:
9784         * docs/gst/tmpl/gsttag.sgml:
9785         * docs/gst/tmpl/gsttaginterface.sgml:
9786         * docs/gst/tmpl/gstvalue.sgml:
9787         make sure all API ends up in the built docs
9788         * gst/gstinterface.c:
9789         * gst/gststructure.c: (gst_structure_id_set_value),
9790         (gst_structure_set_value), (gst_structure_id_get_value):
9791         * gst/gststructure.h:
9792         * gst/gstvalue.h:
9793         sync .h with .c declarations
9794
9795 2004-01-30  Julien Moutte  <julien@moutte.net>
9796
9797         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
9798         Ronald will fix riffread.
9799
9800 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9801
9802         * docs/pwg/advanced-interfaces.xml:
9803           Added tuner interface docs.
9804
9805 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9806
9807         * docs/random/mimetypes:
9808           correct Theora information
9809         * gst/gstelement.h:
9810           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
9811
9812 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9813
9814         * gst/gstelement.c: (gst_element_error_full):
9815         * gst/gstelement.h:
9816           GST_ELEMENT_ERROR in enum -> _IN_ERROR
9817
9818 2004-01-29  Julien MOUTTE  <julien@moutte.net>
9819
9820         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9821         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
9822         again and even before DISCONT.
9823         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
9824         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
9825         bytestream so that it's not stopping to fill the bytestream if events
9826         different than EOS or DISCONT are received. Instead it process them so
9827         that they go downstream.
9828
9829 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9830
9831         * docs/gst/tmpl/gstelement.sgml:
9832         * docs/gst/tmpl/gstreamer-unused.sgml:
9833         * docs/gst/tmpl/gstxml.sgml:
9834         * gst/autoplug/gstspideridentity.c:
9835         (gst_spider_identity_sink_loop_type_finding):
9836         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9837         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9838         (gst_filesink_close_file), (gst_filesink_handle_event),
9839         (gst_filesink_chain):
9840         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9841         (gst_filesrc_get_read), (gst_filesrc_open_file):
9842         * gst/elements/gstidentity.c: (gst_identity_chain):
9843         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9844         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9845         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9846         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9847         * gst/gstelement.h:
9848         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9849         (gst_pad_recover_caps_error), (gst_pad_pull):
9850         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9851         * gst/schedulers/gstbasicscheduler.c:
9852         (gst_basic_scheduler_chainhandler_proxy),
9853         (gst_basic_scheduler_gethandler_proxy),
9854         (gst_basic_scheduler_cothreaded_chain):
9855           gst_element_error -> GST_ELEMENT_ERROR
9856
9857 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9858
9859         * docs/Makefile.am:
9860         * docs/gst/tmpl/gstelement.sgml:
9861         * docs/gst/tmpl/gstxml.sgml:
9862         * docs/manuals.mak:
9863         * docs/pwg/advanced-request.xml:
9864         * docs/pwg/advanced-scheduling.xml:
9865         * docs/pwg/advanced-tagging.xml:
9866           fix non-validating docbook using CDATA
9867           make sure make check-local gets run first to check if it validates
9868
9869 2004-01-29  Julien MOUTTE <julien@moutte.net>
9870
9871         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
9872         handling (up and downstream).
9873         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
9874         my_filter thing.
9875
9876 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9877
9878         * docs/pwg/advanced-tagging.xml:
9879           Add docs about tag writing.
9880
9881 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9882
9883         * docs/pwg/advanced-tagging.xml:
9884           Add a part about tag reading and application signalling... Tag
9885           writing still needs to be documented.
9886         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
9887           We can set file locations in READY, too.
9888
9889 2004-01-29  Julien MOUTTE <julien@moutte.net>
9890
9891         * docs/random/ds/element-checklist: Adding some notes about src
9892         events.
9893
9894 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9895
9896         * docs/random/mimetypes:
9897           Update docs to point to correct elements for various mimetypes, and
9898           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
9899           <stephane.loeuillet@tiscali.fr>.
9900
9901 2004-01-28  David Schleef  <ds@schleef.org>
9902
9903         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
9904
9905 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9906
9907         * docs/random/mimetypes:
9908           update docs for audio/x-raw-float. Add "buffer-frames=0 means
9909           undefined"
9910         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
9911           make it only work in NULL.
9912         * gst/gstcaps.c:
9913           don't posion NULL caps
9914         * gst/gstelement.c: (gst_element_set_time):
9915           add debugging statement
9916         * gst/gstelement.c: (gst_element_emit_found_tag),
9917         (gst_element_found_tag_func), (gst_element_found_tags):
9918         * gst/gstelement.h:
9919           These functions take const taglists
9920         * gst/gstpad.c: (gst_pad_proxy_getcaps):
9921           fix memleak
9922         * gst/gstpad.c: (gst_pad_event_default):
9923           make more effort on handling discont and clocks, g_warn if everything
9924           fails
9925         * gst/gststructure.c: (gst_structure_remove_fields),
9926         (gst_structure_remove_fields_valist):
9927         * gst/gststructure.h:
9928           add gst_structure_remove_fields(_valist)
9929         * gst/gsttag.c:
9930           fix doc glitch
9931
9932 2004-01-28  David Schleef  <ds@schleef.org>
9933
9934         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
9935         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
9936         Fix memory leakage of gst_caps_to_string().
9937
9938         Use GST_PTR_FORMAT instead of gst_caps_to_string():
9939         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
9940         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
9941         (gst_spider_identity_sink_loop_type_finding):
9942         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9943         (find_suggest):
9944         * gst/gstpad.c: (gst_pad_try_relink_filtered),
9945         (gst_pad_set_explicit_caps):
9946         * gst/parse/grammar.y:
9947
9948 2004-01-28  David Schleef  <ds@schleef.org>
9949
9950         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
9951         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
9952         * docs/random/ds/0.9-suggested-changes: Notes from Company.
9953         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
9954         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
9955         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
9956         (gst_debug_log_default), (_gst_info_printf_extension),
9957         (_gst_info_printf_extension_arginfo):  Add printf extension.
9958         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
9959         * gst/gststructure.c: (gst_structure_to_string),
9960         (_gst_structure_parse_value): Use gst_value_deserialize() and
9961         remove old code.
9962         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
9963         (gst_value_deserialize_boolean), (gst_strtoi),
9964         (gst_value_deserialize_int), (gst_value_deserialize_double),
9965         (gst_value_deserialize_string), (gst_value_deserialize): Implement
9966         a bunch of deserialize functions and gst_value_deserialize.
9967         * gst/gstvalue.h: er, _de_serialize, not unserialize
9968         * testsuite/caps/string-conversions.c: (main): We don't currently
9969         handle (float) in caps, so convert these to (double).
9970         * testsuite/debug/Makefile.am: Add new test for the printf extension
9971         * testsuite/debug/printf_extension.c: (main): same
9972
9973 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9974
9975         * docs/random/company/time:
9976           Add some docs about clocking and time
9977
9978 2004-01-28  Julien MOUTTE <julien@moutte.net>
9979
9980         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
9981
9982 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9983
9984         * docs/pwg/advanced-clock.xml:
9985         * docs/pwg/advanced-dparams.xml:
9986         * docs/pwg/advanced-events.xml:
9987         * docs/pwg/advanced-interfaces.xml:
9988         * docs/pwg/advanced-midi.xml:
9989         * docs/pwg/advanced-request.xml:
9990         * docs/pwg/advanced-scheduling.xml:
9991         * docs/pwg/advanced-tagging.xml:
9992         * docs/pwg/advanced-types.xml:
9993         * docs/pwg/appendix-checklist.xml:
9994         * docs/pwg/building-boiler.xml:
9995         * docs/pwg/building-chainfn.xml:
9996         * docs/pwg/building-filterfactory.xml:
9997         * docs/pwg/building-pads.xml:
9998         * docs/pwg/building-props.xml:
9999         * docs/pwg/building-signals.xml:
10000         * docs/pwg/building-state.xml:
10001         * docs/pwg/building-testapp.xml:
10002         * docs/pwg/intro-basics.xml:
10003         * docs/pwg/intro-preface.xml:
10004         * docs/pwg/other-autoplugger.xml:
10005         * docs/pwg/other-sink.xml:
10006         * docs/pwg/other-source.xml:
10007         * docs/pwg/titlepage.xml:
10008           fix up id's
10009
10010 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10011
10012         * docs/95NonPath:
10013         * docs/HACKING:
10014         * docs/README:
10015         * docs/building-the-docs-on-debian:
10016           collect relevant bits of doc info
10017
10018 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10019
10020         * docs/pwg/advanced_tagging.xml:
10021           Half-assed commit so Thomas can re-arrange document IDs here to be
10022           consistent, too.
10023
10024 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10025
10026         * docs/manual/autoplugging.xml:
10027         * docs/manual/bins-api.xml:
10028         * docs/manual/bins.xml:
10029         * docs/manual/buffers-api.xml:
10030         * docs/manual/buffers.xml:
10031         * docs/manual/clocks.xml:
10032         * docs/manual/components.xml:
10033         * docs/manual/cothreads.xml:
10034         * docs/manual/debugging.xml:
10035         * docs/manual/dparams-app.xml:
10036         * docs/manual/dynamic.xml:
10037         * docs/manual/elements-api.xml:
10038         * docs/manual/elements.xml:
10039         * docs/manual/factories.xml:
10040         * docs/manual/gnome.xml:
10041         * docs/manual/goals.xml:
10042         * docs/manual/helloworld.xml:
10043         * docs/manual/helloworld2.xml:
10044         * docs/manual/init-api.xml:
10045         * docs/manual/intro.xml:
10046         * docs/manual/links-api.xml:
10047         * docs/manual/links.xml:
10048         * docs/manual/manual.xml:
10049         * docs/manual/motivation.xml:
10050         * docs/manual/pads-api.xml:
10051         * docs/manual/pads.xml:
10052         * docs/manual/plugins-api.xml:
10053         * docs/manual/plugins.xml:
10054         * docs/manual/programs.xml:
10055         * docs/manual/queues.xml:
10056         * docs/manual/quotes.xml:
10057         * docs/manual/schedulers.xml:
10058         * docs/manual/states-api.xml:
10059         * docs/manual/states.xml:
10060         * docs/manual/threads.xml:
10061         * docs/manual/typedetection.xml:
10062         * docs/manual/xml.xml:
10063           use chapter, part, section or misc as id starts for all bits
10064
10065 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10066
10067         * docs/gst/gstreamer-sections.txt:
10068           Fix up TITLE of the sections
10069
10070 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10071
10072         * docs/pwg/advanced_interfaces.xml:
10073           Add documentation on propertyprobing.
10074         * docs/pwg/advanced_events.xml:
10075         * docs/pwg/advanced_tagging.xml:
10076         * docs/pwg/building_boiler.xml:
10077         * docs/pwg/building_filterfactory.xml:
10078         * docs/pwg/pwg.xml:
10079           Move filterfactory and tagging into their own chapter, add a chapter
10080           on events. all these are empty placeholders that will be filled in
10081           some day.
10082
10083 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10084
10085         * docs/pwg/advanced_interfaces.xml:
10086           Docs for mixer interface. Also a check for website uploading.
10087
10088 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10089
10090         * docs/HACKING:
10091         * docs/Makefile.am:
10092         * docs/faq/Makefile.am:
10093         * docs/gst/Makefile.am:
10094         * docs/gst/tmpl/gstelement.sgml:
10095         * docs/gst/tmpl/gstplugin.sgml:
10096         * docs/gst/tmpl/gstreamer-unused.sgml:
10097         * docs/libs/Makefile.am:
10098         * docs/manual/Makefile.am:
10099         * docs/manuals.mak:
10100         * docs/pwg/Makefile.am:
10101         * docs/upload.mak:
10102           Separate out upload target and make it similar for
10103           both docbook and gtk-doc docs
10104
10105 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10106
10107         * docs/manuals.mak:
10108           Fix upload target to work with freedesktop
10109
10110 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10111
10112         * docs/pwg/advanced_types.xml:
10113           Add notes on creating your own types.
10114         * docs/pwg/building_boiler.xml:
10115         * docs/pwg/building_pads.xml:
10116         * docs/pwg/building_state.xml:
10117           Add some stuff about how to retrieve values from structures, how
10118           that relates to types and change layout slightly again to be almost
10119           perfect.
10120
10121 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10122
10123         * docs/pwg/advanced_dparams.xml:
10124         * docs/pwg/advanced_scheduling.xml:
10125           Change index layout slightly.
10126
10127 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10128
10129         * docs/pwg/advanced_clock.xml:
10130         * docs/pwg/advanced_interfaces.xml:
10131         * docs/pwg/advanced_midi.xml:
10132           General placeholders for now.
10133         * docs/pwg/advanced_request.xml:
10134           Explanation about sometimes and request pads.
10135         * docs/pwg/advanced_scheduling.xml:
10136           Concept of bytestream, loopfunctions and schedulers.
10137         * docs/pwg/building_boiler.xml:
10138           Add something about plugin-init.
10139
10140 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10141
10142         * docs/pwg/building_pads.xml:
10143           Fix broken docbook
10144
10145 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10146
10147         * docs/pwg/advanced_interfaces.xml:
10148         * docs/pwg/pwg.xml:
10149           Add as a placeholder for future filling-in.
10150         * docs/pwg/basics_autoplugging.xml:
10151         * docs/pwg/basics_buffers.xml:
10152         * docs/pwg/basics_elements.xml:
10153         * docs/pwg/basics_events.xml:
10154         * docs/pwg/basics_plugins.xml:
10155         * docs/pwg/basics_types.xml:
10156           Remove, because unused (this is all in intro_basics.xml).
10157         * docs/pwg/building_signals.xml:
10158           Short intro to signals + reference to GObject docs - we really
10159           shouldn't go into these sort of things to deply because we don't
10160           use them that extensively anyway.
10161         * docs/pwg/building_state.xml:
10162           Explanation of states. Benjamin, please check.
10163         * docs/pwg/building_testapp.xml:
10164           Put everything in one page - putting only a few lines of content
10165           per page doesn't really make sense.
10166
10167           Time to get into the advanced topics. ;).
10168
10169 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10170
10171         * docs/pwg/advanced_types.xml:
10172           Finish documenting the current state of mimetypes.
10173         * docs/pwg/building_boiler.xml:
10174         * docs/pwg/building_chainfn.xml:
10175         * docs/pwg/building_pads.xml:
10176         * docs/pwg/building_props.xml:
10177         * docs/pwg/building_testapp.xml:
10178           Start documenting the "how to build a simple audio filter" part
10179           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10180           states and (maybe?) a short introduction to capsnego in the chapter
10181           on pads (building_pads.xml). Capsnego should probably be explained
10182           fully in advanced_capsnego.xml or so.
10183
10184 2004-01-26  David Schleef  <ds@schleef.org>
10185
10186         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10187         * gst/gstpad.h: Add new function to allow element to (somewhat)
10188         specify non-fixed caps on a pad.
10189         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10190         that I added a few weeks ago.
10191
10192 2004-01-26  David Schleef  <ds@schleef.org>
10193
10194         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10195           making try_set_caps() work with non-fixed caps.
10196
10197 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10198
10199         * docs/pwg/advanced_types.xml:
10200         * docs/pwg/intro_basics.xml:
10201         * docs/pwg/intro_preface.xml:
10202         * docs/pwg/pwg.xml:
10203         * docs/pwg/titlepage.xml:
10204           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10205           in here (docs/random/mimetypes), and will from there on work on both
10206           updating outdated parts and adding missing parts.
10207           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10208
10209 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10210
10211         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10212           policy is set
10213
10214 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10215
10216         * gst/gstelement.h:
10217           remove gst_element_factory_get_version. It doesn't exist anymore.
10218         * gst/gstplugin.c:
10219         * gst/gstplugin.h:
10220           remove gst_plugin_set_name and change gst_plugin_get_longname to
10221           gst_plugin_get_description to match code.
10222         * gst/gsterror.h:
10223           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10224         * gst/gstpad.c: (gst_pad_try_set_caps):
10225           make it work with nonfixed caps.
10226           Note that even in the nonfixed case the link function of the pad
10227           that tries to set caps isn't called.
10228
10229 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10230
10231         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10232           fix bug where buffer was not assembled correctly
10233         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10234           silence by default
10235         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10236           only seek if there's no more buffers that could work without seeking
10237
10238 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10239
10240         * gst/gsttag.c: (_gst_tag_initialize):
10241         * gst/gsttag.h:
10242           Add application tag (for encoding/muxing app).
10243
10244 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10245
10246         * autogen.sh:
10247           make autopoint force, and libtoolize not copy
10248         * common/m4/as-docbook.m4:
10249           added docbook xml catalog setup check
10250         * common/m4/gst-doc.m4:
10251           use docbook check
10252
10253 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10254
10255         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10256         * gst/gsttag.h:
10257           add GstTagFlag
10258
10259 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10260
10261         * docs/gst/gstreamer-sections.txt:
10262         * docs/gst/tmpl/gst.sgml:
10263         * docs/gst/tmpl/gstbuffer.sgml:
10264         * docs/gst/tmpl/gstclock.sgml:
10265         * docs/gst/tmpl/gstelement.sgml:
10266         * docs/gst/tmpl/gstreamer-unused.sgml:
10267         * docs/gst/tmpl/gstxml.sgml:
10268           sync latest API changes to docs
10269
10270 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10271
10272         * gst/gstpluginfeature.c:
10273           fix doc snippet
10274         * tools/gst-inspect.c: (print_element_list):
10275           fix output of typefind
10276           add GPL header
10277         * tools/gst-launch.c:
10278           add GPL header
10279
10280 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10281
10282         * gst/elements/Makefile.am:
10283         * gst/elements/gstelements.c:
10284         * gst/elements/gsttypefindelement.c:
10285         * gst/elements/gsttypefindelement.h:
10286         * po/POTFILES.in:
10287         * po/fr.po:
10288         * po/nl.po:
10289           renamed gsttypefindelement to gsttypefind, conserving CVS history
10290
10291 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10292
10293         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10294         * gst/gsttag.h:
10295           add some tags used in ogg as well
10296           fix _ in replaygain tags
10297
10298 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10299
10300         * gst/gsterror.h:
10301           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10302
10303 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10304
10305         * gst/gstelement.c: (gst_element_error_full):
10306         * gst/gstelement.h:
10307           change _extended to _full
10308
10309 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10310
10311         reviewed by: <delete if not using a buddy>
10312
10313         * docs/gst/tmpl/gst.sgml:
10314         * docs/gst/tmpl/gstbuffer.sgml:
10315         * docs/gst/tmpl/gstclock.sgml:
10316         * docs/gst/tmpl/gstelement.sgml:
10317         * docs/gst/tmpl/gstreamer-unused.sgml:
10318         * docs/gst/tmpl/gstxml.sgml:
10319         * gst/gstelement.c: (gst_element_error_full):
10320         * gst/gstelement.h:
10321
10322 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10323
10324         * gst/gstelement.h: fix _gst_element_error_printf prototype
10325
10326 2004-01-20  David Schleef  <ds@schleef.org>
10327
10328         * gst/gststructure.c: (gst_structure_to_string):
10329         Convert function to use gst_value_serialize().
10330         * gst/gstvalue.c: (gst_value_serialize_list),
10331         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10332         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10333         (gst_value_serialize_int), (gst_value_serialize_double),
10334         (gst_string_wrap), (gst_value_serialize_string),
10335         (gst_value_serialize), (gst_value_deserialize):
10336         * gst/gstvalue.h:
10337         Add implementations for serialize.
10338
10339 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10340
10341         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10342         we want to keep that one in the future or change xvidenc.c to use 
10343         another error.
10344
10345 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10346
10347         * gst/gstelement.c: (_gst_element_error_printf):
10348         * gst/gstelement.h:
10349           privatise function
10350
10351 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10352
10353         * docs/random/error:
10354           doc explaining error system
10355         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10356           cleanup
10357
10358 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10359
10360         * gst/gst-i18n-app.h:
10361         * gst/gst-i18n-lib.h:
10362           remove inclusion of config.h
10363         * po/POTFILES.in:
10364         * po/nl.po:
10365           add gst/gstelement.c
10366
10367 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10368
10369         * po/nl.po: updated Dutch translation
10370
10371 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10372
10373         * gst/gsterror.c: (_gst_core_errors_init),
10374         (_gst_library_errors_init), (_gst_resource_errors_init),
10375         (_gst_stream_errors_init):
10376         remove ending punctuation dots
10377
10378 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10379
10380         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10381         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
10382         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10383         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10384         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10385         use GST_ERROR_SYSTEM
10386
10387 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10388
10389         * gst/gstelement.c: (gst_element_error_printf),
10390         (gst_element_error_extended):
10391         * gst/gstelement.h:
10392           add a helper printf function so we can have NULL values passed.
10393
10394 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10395
10396         * gst/gstelement.h:
10397           add G_STMT macros to gst_element_error, which isn't strictly
10398           necessary but people tell me to anyway.
10399
10400 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10401
10402         * gst/Makefile.am:
10403         * gst/autoplug/gstspideridentity.c:
10404         (gst_spider_identity_sink_loop_type_finding):
10405         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10406         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10407         (gst_filesink_close_file), (gst_filesink_handle_event),
10408         (gst_filesink_chain):
10409         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
10410         (gst_filesrc_map_region), (gst_filesrc_get_read),
10411         (gst_filesrc_open_file):
10412         * gst/elements/gstidentity.c: (gst_identity_chain):
10413         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10414         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10415         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10416         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
10417         * gst/gst.h:
10418         * gst/gst_private.h:
10419         * gst/gstelement.c: (gst_element_class_init),
10420         (gst_element_default_error), (gst_element_error_func),
10421         (gst_element_error_extended):
10422         * gst/gstelement.h:
10423         * gst/gsterror.c: (_gst_core_errors_init),
10424         (_gst_library_errors_init), (_gst_resource_errors_init),
10425         (_gst_stream_errors_init), (gst_error_get_message):
10426         * gst/gsterror.h:
10427         * gst/gstinfo.c: (_gst_debug_init):
10428         * gst/gstmarshal.list:
10429         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10430         (gst_pad_recover_caps_error), (gst_pad_pull):
10431         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10432         * gst/schedulers/gstbasicscheduler.c:
10433         (gst_basic_scheduler_chainhandler_proxy),
10434         (gst_basic_scheduler_gethandler_proxy),
10435         (gst_basic_scheduler_cothreaded_chain):
10436         * po/POTFILES.in:
10437         * po/fr.po:
10438         * po/nl.po:
10439           change error signal
10440           add error categories
10441
10442 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
10443
10444         * gst/gsttag.c: (_gst_tag_initialize):
10445         * gst/gsttag.h:
10446         Add replaygain tag
10447
10448 2004-01-18  Colin Walters  <walters@verbum.org>
10449
10450         * examples/retag/retag.c: Call gst_init before processing
10451         program args.  Add g_assert to _link_many call.
10452
10453 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10454
10455         * gst/gstpad.c: (gst_pad_alloc_buffer):
10456           Return a newly allocated buffer when the pad has no peer.
10457
10458 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10459
10460         * gst/gstclock.c: (gst_clock_get_time):
10461           make it compile with gcc 2.95 again.
10462           Patch by Scott Wheeler
10463
10464 2004-01-15  David Schleef  <ds@schleef.org>
10465
10466         * gst/gstcaps.h:
10467         Added gst_caps_is_simple() macro.
10468         * testsuite/caps/caps.c: (test1):
10469         * testsuite/caps/intersect2.c: (main):
10470         * testsuite/caps/intersection.c: (main):
10471         Fixes to make 'make check' work again after removing
10472         gst_caps_is_chained().
10473
10474 2004-01-15  Leif Johnson <leif@ambient.2y.net>
10475
10476         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
10477         and additions to the MIDI document.
10478
10479 2004-01-15  David Schleef  <ds@schleef.org>
10480
10481         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
10482         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
10483         of GST_RPAD_, since we don't know if it's a real or ghost pad.
10484
10485 2004-01-15  David Schleef  <ds@schleef.org>
10486
10487         * gst/gstqueue.c:
10488         * gst/gstqueue.h:
10489         Fix the spelling of "treshold" and make min_threshold actually
10490         affect the queue.
10491
10492 2004-01-15  David Schleef  <ds@schleef.org>
10493
10494         * gst/gstcaps.c:
10495         Add lots of documentation.
10496         * gst/gstcaps.h:
10497         Deprecate a few functions.
10498         * gst/gstpad.c:
10499         Removed use of deprecated functions.
10500
10501 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10502
10503         * gst/gstpad.c: (gst_pad_is_linked):
10504         * gst/gstpad.h:
10505           implement gst_pad_is_linked
10506         * gst/gstelement.h:
10507           reserve space for initiate_state_change
10508
10509 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10510
10511         * gst/autoplug/gstspideridentity.c:
10512         (gst_spider_identity_sink_loop_type_finding):
10513           break infinite loop by just returning instead of looping
10514         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
10515           set event time difference correctly. Set it to 1 second instead
10516           of 100ms to be more tolerant
10517         * gst/gstelement.c: (gst_element_set_time):
10518           add debugging output
10519
10520 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10521
10522         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
10523           query if buffers are inside the pool, ignore events
10524
10525 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10526
10527         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
10528         (gst_clock_set_speed), (gst_clock_set_active),
10529         (gst_clock_is_active), (gst_clock_reset),
10530         (gst_clock_handle_discont):
10531         * gst/gstclock.h:
10532           deprecate old interface and disable functions that aren't in use
10533           anymore.
10534         * gst/gstelement.h:
10535         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
10536         (gst_element_set_time), (gst_element_adjust_time):
10537           add concept of "element time" and functions to get/set this time.
10538         * gst/gstelement.c: (gst_element_change_state):
10539           update element time correctly.
10540         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10541           This is a debug message, not a g_critical.
10542         * gst/gstpad.c: (gst_pad_event_default):
10543           handle discontinuous events right with element time.
10544         * gst/gstscheduler.c: (gst_scheduler_state_transition):
10545           update to clocking fixes.
10546           set clocks on elements in READY=>PAUSED. The old behaviour caused
10547           a wrong element time on the first element that started playing.
10548         * gst/schedulers/gstbasicscheduler.c:
10549         (gst_basic_scheduler_class_init):
10550         * gst/schedulers/gstoptimalscheduler.c:
10551         (gst_opt_scheduler_class_init):
10552           remove code that just implements the default behaviour.
10553         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
10554           update to use new clocking functions
10555         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
10556         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
10557           update to test new element time.
10558         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
10559           use _get_allowed_caps instead of _get_caps. This catches filtered
10560           caps correctly.
10561         * testsuite/debug/commandline.c:
10562           update for new GST_DEBUG syntax.
10563         * testsuite/threads/Makefile.am:
10564           disable a test that only works sometimes.
10565
10566 2004-01-13  Julien MOUTTE <julien@moutte.net>
10567
10568         * po/LINGUAS: Adding fr.
10569         * po/fr.po: Adding french translation.
10570
10571 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10572
10573         * gst/parse/grammar.y:
10574         * po/POTFILES.in:
10575         * po/nl.po:
10576         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
10577           translate parsing error messages
10578
10579 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10580
10581         * po/POTFILES.in: adding gst-launch
10582         * po/nl.po: updated translation, all 99 strings translated
10583         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
10584         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
10585           fix strings for translation
10586
10587 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10588
10589         * gst/gst.c:
10590           - capitalize beginnings of popt options
10591           - fix strings for translation
10592           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
10593
10594 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10595
10596         * po/README: add some notes on how to update translations
10597
10598 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10599
10600         * ABOUT-NLS: removed, is autogenerated from autopoint
10601         * autogen.sh: add autopoint stuff
10602         * configure.ac: fix up gettext stuff
10603         * gst/Makefile.am: add i18n headers to noinst_HEADERS
10604         * gst/elements/gsttypefindelement.c: add header include
10605         * gst/gettext.h: add header, copy from system-installed header
10606         * gst/gst-i18n-app.h: to be included by each app having translations
10607         * gst/gst-i18n-lib.h: to be included by each lib having translations
10608         * gst/gst.c: (init_pre): fix up gettext calls
10609         * gst/gst_private.h: remove i18n stuff, moving to separate headers
10610         * po/LINGUAS: the new way to specify translations present
10611         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
10612         * po/Makevars: the variables filled in for GStreamer
10613         * po/POTFILES.in: added new files with translations
10614         * po/de.po: has new strings
10615         * po/nl.po: readded, has new strings
10616
10617 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10618
10619         * gst/gsttag.c: fix some strings marked for translation
10620
10621 2004-01-13  Iain <iain@prettypeople.org>
10622
10623         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
10624         group when we add an element to it, cos we unref it when we remove one
10625
10626 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10627
10628         * testsuite/debug/commandline.c: (debug_not_reached):
10629         * testsuite/debug/output.c: (check_message):
10630           fix testsuite
10631
10632 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10633
10634         * examples/cutter/.cvsignore:
10635         * examples/helloworld/.cvsignore:
10636         * examples/launch/.cvsignore:
10637         * examples/manual/.cvsignore:
10638         * examples/mixer/.cvsignore:
10639         * examples/pingpong/.cvsignore:
10640         * examples/plugins/.cvsignore:
10641         * examples/queue/.cvsignore:
10642         * examples/queue2/.cvsignore:
10643         * examples/queue3/.cvsignore:
10644         * examples/queue4/.cvsignore:
10645         * examples/retag/.cvsignore:
10646         * examples/thread/.cvsignore:
10647         * examples/typefind/.cvsignore:
10648         * examples/xml/.cvsignore:
10649         * gst/.cvsignore:
10650         * gst/autoplug/.cvsignore:
10651         * gst/elements/.cvsignore:
10652         * gst/indexers/.cvsignore:
10653         * gst/parse/.cvsignore:
10654         * gst/registries/.cvsignore:
10655         * gst/schedulers/.cvsignore:
10656         * libs/gst/bytestream/.cvsignore:
10657         * libs/gst/control/.cvsignore:
10658         * libs/gst/getbits/.cvsignore:
10659         * tests/.cvsignore:
10660         * tests/bufspeed/.cvsignore:
10661         * tests/instantiate/.cvsignore:
10662         * tests/memchunk/.cvsignore:
10663         * tests/muxing/.cvsignore:
10664         * tests/sched/.cvsignore:
10665         * tests/seeking/.cvsignore:
10666         * tests/threadstate/.cvsignore:
10667         * testsuite/.cvsignore:
10668         * testsuite/caps/.cvsignore:
10669         * testsuite/cleanup/.cvsignore:
10670         * testsuite/dynparams/.cvsignore:
10671         * testsuite/plugin/.cvsignore:
10672         * tools/.cvsignore:
10673           update - this is huge, because it includes *.bb, *.bbg and *.da files
10674           which are generated for gcov.
10675
10676 2004-01-11  David Schleef  <ds@schleef.org>
10677
10678         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
10679         a function to parse integers in ways that strto[u]l() does not.
10680
10681 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10682
10683         * tools/gst-inspect.c: (print_caps):
10684           improve output of caps a bit
10685
10686 2004-01-11  David Schleef  <ds@schleef.org>
10687
10688         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
10689         inherit correct flags (READONLY and DONTKEEP).
10690
10691 2004-01-11  David Schleef  <ds@schleef.org>
10692
10693         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
10694         (gst_filesrc_map_region):
10695         * gst/gstbuffer.c: (_gst_buffer_initialize),
10696         (_gst_buffer_sub_free), (gst_buffer_default_copy),
10697         (gst_buffer_new), (gst_buffer_create_sub),
10698         (gst_buffer_is_span_fast), (gst_buffer_span):
10699         * gst/gstbuffer.h:
10700         Change GstBuffer private structure element names. (all files)
10701         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
10702         (gst_queue_link):
10703         * gst/gstqueue.h:
10704         Implement getcaps/pad_link functions that handle the case where
10705         there are data in the queue.
10706
10707 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10708
10709         * gst/elements/gstbufferstore.c:
10710           initialize debugging structure correctly
10711         * gst/elements/gsttee.c: (gst_tee_set_property):
10712           g_object_notify when property was changed
10713         * gst/elements/gsttypefindelement.c:
10714         (gst_type_find_element_change_state):
10715           clear caps correctly
10716
10717 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10718
10719         * gst/gstqueue.c: (gst_queue_init):
10720           Use better defaults for when a queue should block. This
10721           gets rid of jerky playback for quite a few files.
10722           It takes more memory.
10723
10724 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10725
10726         (gst_xml_registry_parse_padtemplate):
10727           make critical message slightly more useful
10728
10729 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10730
10731         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
10732         (gst_debug_message_get), (gst_debug_log_default):
10733         * gst/gstinfo.h:
10734           Change gst_debug_log(_valist) to take a const format string.
10735           Change prototype of log function and functions using those to 
10736           take a GstDebugMessage instead of a string that requires using
10737           gst_debug_message_get.
10738
10739 2004-01-08  David Schleef  <ds@schleef.org>
10740
10741         * Makefile.am:
10742         * configure.ac:
10743         Add option --enable-gcov to build GStreamer with -fprofile-arcs
10744         and -ftest-coverage, which allows gcov to show information about
10745         testsuite coverage.
10746
10747 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10748
10749         * gst/gstutils.h:
10750           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
10751           GST_PARENT_CALL_WITH_DEFAULT
10752         * gst/elements/gstaggregator.c: 
10753         * gst/elements/gstbufferstore.c: 
10754         * gst/elements/gstfakesink.c: 
10755         * gst/elements/gstfakesrc.c: 
10756         * gst/elements/gstfdsink.c: 
10757         * gst/elements/gstfdsrc.c: 
10758         * gst/elements/gstfilesink.c: 
10759         * gst/elements/gstfilesrc.c: 
10760         * gst/elements/gstidentity.c: 
10761         * gst/elements/gstmd5sink.c: 
10762         * gst/elements/gstmultidisksrc.c:
10763         * gst/elements/gstpipefilter.c: 
10764         * gst/elements/gstshaper.c:
10765         * gst/elements/gststatistics.c:
10766         * gst/elements/gsttee.c:
10767         * gst/elements/gsttypefindelement.c:
10768           use them.
10769
10770 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10771
10772         * docs/gst/gstreamer-docs.sgml: remove props
10773         * docs/gst/gstreamer-sections.txt: remove props
10774         * docs/gst/tmpl/gst.sgml:
10775         * docs/gst/tmpl/gstbin.sgml:
10776         * docs/gst/tmpl/gstbuffer.sgml:
10777         * docs/gst/tmpl/gstcaps.sgml:
10778         * docs/gst/tmpl/gstclock.sgml:
10779         * docs/gst/tmpl/gstelement.sgml:
10780         * docs/gst/tmpl/gstindex.sgml:
10781         * docs/gst/tmpl/gstobject.sgml:
10782         * docs/gst/tmpl/gstpad.sgml:
10783         * docs/gst/tmpl/gstpadtemplate.sgml:
10784         * docs/gst/tmpl/gstreamer-unused.sgml:
10785         * docs/gst/tmpl/gstthread.sgml:
10786         * docs/gst/tmpl/gstxml.sgml:
10787           sync with code reorganization
10788
10789 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
10790
10791         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10792         Make the 'Could not find compatible pad' message more informative.
10793
10794 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10795                                                                                 
10796         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
10797           Fix for if we pass NULL as property to location.
10798         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
10799         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
10800           Fix for instantiate-test (see below).
10801         * gst/gststructure.c: (_gst_structure_parse_value):
10802           Fix compile error on gcc-2.96.
10803         * configure.ac:
10804         * tests/Makefile.am:
10805         * tests/instantiate/Makefile.am:
10806         * tests/instantiate/create.c: (create_all_elements), (main):
10807           Add a test that instantiates all elements. This makes it easy to
10808           track dead code for old API/design (like setting event functions
10809           on sink pads and so on).
10810
10811 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
10812
10813         * gst/gstcaps.c: (gst_caps_append_structure):
10814           Move the poisoning to allow a NULL structure
10815         * gst/gstevent.c: (_gst_event_free):
10816           When freeing a navigation event, free the structure
10817           also
10818
10819 2004-01-04  David Schleef  <ds@schleef.org>
10820
10821         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10822         Remove usage of gst_pad_proxy_fixate.
10823         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
10824         (gst_caps_split_one), (gst_caps_replace):
10825         Add poisoning code.
10826         * gst/gstmarshal.list:
10827         Add pointer__pointer for fixate signal
10828         * gst/gstpad.c: (gst_real_pad_class_init),
10829         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10830         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
10831         (gst_pad_set_explicit_caps), (gst_pad_template_new):
10832         Add poisoning code. Add fixate signal on RealPad. Change
10833         set_explicit_caps() to take const GstCaps, like try_set_caps().
10834         * gst/gstpad.h:
10835         * testsuite/caps/Makefile.am:
10836         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
10837
10838 2004-01-03  David Schleef  <ds@schleef.org>
10839
10840         * gst/elements/gsttypefindelement.c:
10841         (gst_type_find_element_have_type), (gst_type_find_element_init):
10842         Use gst_pad_use_explicit_caps for src pad.
10843         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
10844         before using it.
10845
10846 2004-01-03  David Schleef  <ds@schleef.org>
10847
10848         * gst/gstelement.c: (gst_element_link_pads_filtered),
10849         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
10850         that linking was successful.
10851         * gst/gstpad.c: (gst_pad_link_free),
10852         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
10853         (gst_pad_link_try), (gst_pad_link_unnegotiate),
10854         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
10855         GstPadLinkReturn correctly between functions, and don't fail
10856         when DELAYED is used (DELAYED is very important).  Better
10857         cleanup on unlinking and unnegotiation.  Should fix some spider
10858         bugs.
10859
10860 2004-01-02  David Schleef  <ds@schleef.org>
10861
10862         * gst/gstelement.c: (gst_element_class_init),
10863         (gst_element_base_class_init): ->padtemplates should be cleared
10864         in base_init, since we need to have a fresh list for every
10865         class.  (Alternately, we chould copy the list and share the
10866         actual pad templates (not the list), but that would require
10867         changing every plugin to move pad template registration from
10868         base_init to class_init.)
10869
10870 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10871
10872         * gst/gstelement.c: (gst_element_class_add_pad_template):
10873           Refuse registering a pad template if another pad template
10874           with the same name already exists (#114715).
10875
10876 2004-01-02  David Schleef  <ds@schleef.org>
10877
10878         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
10879         (gst_caps_is_equal_fixed): Add new function.
10880         * gst/gstcaps.h: ditto.
10881         * gst/gstpad.c: (gst_real_pad_class_init),
10882         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
10883         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
10884         check new caps against existing caps -- if they're the same, return
10885         OK without renegotiating.  caps-nego-failed signal fixed so that
10886         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
10887         to save an extra caps copy.  Don't complete negotiation if a pad
10888         link function returns DELAYED.
10889
10890 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10891
10892         * gst/gstpad.c: (gst_pad_try_relink_filtered):
10893           Fix wrong g_return_if_fail
10894
10895 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
10896
10897         * gst/gstbin.c: (gst_bin_class_init):
10898         Change the marshalling of element_added/element_removed
10899         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
10900         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
10901
10902 2004-01-01  David Schleef  <ds@schleef.org>
10903
10904         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10905         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
10906         (gst_pad_use_explicit_caps):
10907         * gst/gstpad.h:
10908         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
10909         to use an internal getcaps and link fuction so that negotiation
10910         always results in the explicitly set caps.
10911         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
10912         are particularly useful for decoders.
10913
10914 2003-12-31  David Schleef  <ds@schleef.org>
10915
10916         * gst/elements/gstidentity.c: (gst_identity_class_init),
10917         (gst_identity_init), (gst_identity_chain),
10918         (gst_identity_set_property), (gst_identity_get_property):
10919         * gst/elements/gstidentity.h:
10920         * gst/gstqueue.c: (gst_queue_init):
10921           Negotiation fixes.
10922
10923 2003-12-31  David Schleef  <ds@schleef.org>
10924
10925         * gst/gstcaps.c: (gst_caps_intersect),
10926         (_gst_caps_normalize_foreach), (gst_caps_normalize):
10927           Implement gst_caps_normalize().
10928         * testsuite/caps/normalisation.c: (main):
10929           Add an additional test
10930
10931 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10932
10933         * gst/gstqueue.c: (gst_queue_init):
10934           use gst_pad_proxy_getcaps()
10935
10936 2003-12-31  David Schleef  <ds@schleef.org>
10937
10938         * gst/elements/gstshaper.c: (gst_shaper_link):
10939         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10940         * gst/gstqueue.c: (gst_queue_link):
10941           Negotiation fixes.
10942
10943 2003-12-31  David Schleef  <ds@schleef.org>
10944
10945         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
10946         * gst/gstpad.h: Add functions that are useful as default pad
10947         link and fixate functions for elements.
10948
10949 2003-12-30  David Schleef  <ds@schleef.org>
10950
10951         * gst/gstpad.c: (gst_pad_link_try):
10952           Fix segfault when attempting to return to old caps
10953
10954 2003-12-29  David Schleef  <ds@schleef.org>
10955
10956         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
10957         (gst_caps_structure_simplify), (gst_caps_simplify):
10958         * gst/gstcaps.h:
10959           Add simplify function
10960         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
10961         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
10962         * gst/gstpad.h:
10963           Copy over srcnotify, sinknotify when calling old pad_link
10964           functions.  Add new is_negotiated() function.
10965         * gst/gststructure.c: (gst_structure_copy):
10966           Fix an incredibly stupid bug that should have been noticed
10967           weeks ago.  _copy() returned the argument, not the new copy.
10968
10969 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10970
10971         * gst/gstcaps.c: (gst_caps_append):
10972           add sanity checks
10973         * gst/gstcaps.h: (gst_caps_debug):
10974           remove, it doesn't exist anymore.
10975         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
10976         (gst_element_threadsafe_properties_post_run):
10977           make debugging messages not clutter up THREAD debug category
10978         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
10979         (gst_element_change_state):
10980           update to new caps API
10981         * gst/gstinterface.c: (gst_implements_interface_cast):
10982           don't put vital code in g_return_if_fail
10983         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
10984         (gst_pad_link_filtered):
10985           add pst_pad_try_link and use it.
10986         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
10987           implement correctly, deprecate first one.
10988         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
10989           add and implement.
10990         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
10991           implement.
10992         (gst_pad_get_negotiated_caps):
10993           add and implement. Make GST_PAD_CAPS call this function.
10994         (gst_pad_get_caps):
10995           remove unneeded check..
10996         (gst_pad_recover_caps_error):
10997           disable, always return FALSE.
10998         (gst_real_pad_dispose):
10999           don't free caps and appfilter anymore, they're unused.
11000         * gst/gstpad.h:
11001           Reflect changes mentioned above.
11002         * gst/gstsystemclock.c: (gst_system_clock_wait):
11003           Make 'clock is way behind' a debugging message.
11004         * gst/gstthread.c: (gst_thread_change_state):
11005           Fix debugging message
11006
11007 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11008
11009         * gst/gstinfo.h:
11010           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11011         * docs/gst/tmpl/gstreamer-unused.sgml:
11012           removed all traces of cvs conflicts
11013
11014 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11015
11016         * configure.ac:
11017         * gst/schedulers/cothreads_compat.h:
11018         * libs/Makefile.am:
11019           remove last instances of wingo cothread usage
11020
11021 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11022
11023         * gst/gstplugin.c:
11024         * gst/gstversion.h.in:
11025         * gst/parse/grammar.y:
11026           change comment block from /** to /* when not gtk-doc comments
11027
11028 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11029
11030         * gst/gst.c: whitespace and doc style fixes
11031
11032 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11033
11034         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11035
11036 2003-12-24  Colin Walters  <walters@verbum.org>
11037
11038         * gst/elements/gsttypefindelement.c:
11039           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11040           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11041           Don't double-free caps.
11042
11043 2003-12-23  David Schleef  <ds@schleef.org>
11044
11045         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11046           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11047           Many little fixes and additions of debug statements to
11048           get rhythmbox working.
11049
11050 2003-12-23  Colin Walters  <walters@verbum.org>
11051
11052         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11053         Use GST_PAD_LINK_SUCCESSFUL.
11054
11055 2003-12-23  David Schleef  <ds@schleef.org>
11056
11057         * gst/elements/gstaggregator.c:
11058         * gst/elements/gsttee.c:
11059           Use gst_pad_proxy_getcaps().
11060         * gst/gstpad.c:
11061         * gst/gstpad.h:
11062           Add gst_pad_proxy_getcaps(), which filter elements can use
11063           as a generic getcaps implementation.
11064           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11065           was advertised.
11066
11067 2003-12-23  David Schleef  <ds@schleef.org>
11068
11069         * gst/gstpad.c:
11070           Rearrange/rewrite much of the pad negotiation code, since it
11071           resembled pasta.  This actually changes the way some
11072           negotiation works, since the previous code was inconsistent
11073           depending on how it was invoked.  Add (internal) structure
11074           GstPadLink, which is used to hold some information (more in
11075           the future) about the link between two pads.  Fixes a number
11076           of bugs, including random lossage of filter caps when the
11077           initial negotiation is delayed.  A few functions are still
11078           unimplemented.
11079         * gst/gstpad.h:
11080           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11081           these when testing GstPadLinkReturn values instead of comparing
11082           directly.
11083
11084 2003-12-23  David Schleef  <ds@schleef.org>
11085
11086         * gst/gstvalue.c: 
11087         * gst/gstvalue.h:
11088           Rearrange lots of code.  Change registration of compare function
11089           into registration of compare/serialize/deserialize functions.
11090           Doesn't include implementation of gst_value_[de]serialize(),
11091           but that should be easy.
11092
11093 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11094
11095         * docs/gst/gstreamer-sections.txt:
11096         * docs/gst/tmpl/gstprops.sgml: removed
11097         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11098           David removed props and caps code, so let's remove their docs as well.
11099           Removed all no longer existing symbols from gstreamer-sections.txt
11100           
11101 2003-12-22  Colin Walters  <walters@verbum.org>
11102
11103         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11104           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11105           of tags directly.
11106
11107 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11108
11109         * gst/elements/gstelements.c:
11110           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11111         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11112           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11113           gst_caps (peer).
11114
11115 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11116
11117         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11118         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11119         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11120         (gst_spider_identity_sink_loop_type_finding):
11121         * gst/autoplug/gstspideridentity.h:
11122           Fix autoplugging in spider element, so it works with new caps.
11123           This was mainly caused by identifying empty caps incorrectly.
11124
11125 2003-12-22  David Schleef  <ds@schleef.org>
11126
11127         * gststructure.c, gstvalue.c, gstvalue.h: Add
11128           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11129           using g_value_copy()
11130
11131 2003-12-21  David Schleef  <ds@schleef.org>
11132
11133         * many, many files: Merge CAPS branch.  This includes:
11134           - implemention of GstValue and several GstValue types
11135           - implemention of GstStructure
11136           - entire rewrite of GstCaps
11137           - removal of GstProps
11138           - many changes to GstPad to compensate for new caps paradigm
11139           - removal of GstBufferpool
11140         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11141         gstvalue.h, gst/gstcaps[2]*.[ch]:
11142           - rename gstcaps2.[ch] to gstcaps.[ch]
11143
11144 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11145
11146         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11147         (gst_queue_chain), (gst_queue_handle_src_event):
11148           implement timeout for sending events. Workaround for if the
11149           pipeline on this queue is not passing any data.
11150
11151 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11152                                                                                 
11153         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11154         * moved CVS to freedesktop.org
11155