gst/: Move elementfactory methods to separate .h file.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-05-30  Wim Taymans  <wim@fluendo.com>
2
3         * gst/Makefile.am:
4         * gst/gstelement.h:
5         * gst/gstelementfactory.h:
6         * gst/gsttypes.h:
7         Move elementfactory methods to separate .h file.
8
9 2005-05-30  Wim Taymans  <wim@fluendo.com>
10
11         * docs/design/part-overview.txt:
12         * gst/gstsystemclock.h:
13         Small typo fixes, doc updates.
14
15 2005-05-30  Wim Taymans  <wim@fluendo.com>
16
17         * gst/gst.c: (gst_init_get_popt_table), (init_post),
18         (init_popt_callback):
19         Remove cpu-opt flag.
20
21 2005-05-30  Wim Taymans  <wim@fluendo.com>
22
23         * gst/gstbuffer.c: (gst_subbuffer_finalize),
24         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
25         * gst/gstbuffer.h:
26         Avoid typechecking in places where not needed.
27         Added accessor for malloc_data.
28
29 2005-05-30  Wim Taymans  <wim@fluendo.com>
30
31         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
32         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
33         (gst_pad_configure_sink), (gst_pad_configure_src),
34         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
35         (gst_pad_start_task):
36         Propagate errors from _set_caps() in configure_src/sink
37         functions instead of returning TRUE.
38         FLUSH events can travel up and downstream
39
40
41 2005-05-30  Wim Taymans  <wim@fluendo.com>
42
43         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
44         (gst_basesink_activate):
45         Handle EOS in preroll.
46
47 2005-05-30  Wim Taymans  <wim@fluendo.com>
48
49         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
50         (gst_queue_loop), (gst_queue_handle_src_event):
51         Remove old pieces of code
52         Flushing the queue in an upstream event is a very bad idea.
53
54 2005-05-26  Andy Wingo  <wingo@pobox.com>
55
56         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
57         gst_value_set_mini_object so as to add a ref on the object (which
58         will be removed when the value is unset).
59
60         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
61         arg type in ::handoff.
62
63         * gst/gstelement.c (gst_element_change_state): Also deactivate
64         pads in READY->NULL, just in case the element didn't make it to
65         PAUSED. Wingo tested, Wim approved.
66
67 2005-05-26  Wim Taymans  <wim@fluendo.com>
68
69         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
70         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
71         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
72         A flushing pad cannot be used to alloc_buffer from.
73
74 2005-05-26  Wim Taymans  <wim@fluendo.com>
75
76         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
77         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
78         (gst_bus_source_dispatch), (gst_bus_source_finalize),
79         (gst_bus_create_watch), (gst_bus_add_watch_full):
80         * gst/gstbus.h:
81         Implement a real GSource and use g_main_context_wakeup() to
82         signal new messages instead of the socketpair.
83
84 2005-05-25  Wim Taymans  <wim@fluendo.com>
85
86         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
87         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
88         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
89         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
90         (gst_pad_send_event), (gst_pad_start_task):
91         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
92         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
93         (gst_queue_sink_activate), (gst_queue_src_activate),
94         (gst_queue_change_state):
95         * gst/gstqueue.h:
96         Fix state changes for non sinks. We now change sinks, then elements
97         with unconnected srcpads, then the rest.
98         More efficient queue unlocking in flush and state changes.
99         Set the pad activate mode even if it does not have an activate
100         function.
101
102 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
103
104         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
105           Don't go in pull mode for non-seekable sources.
106         * gst/elements/gsttypefindelement.h:
107         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
108         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
109         (free_entry), (stop_typefinding),
110         (gst_type_find_element_handle_event), (find_peek),
111         (gst_type_find_element_chain), (do_pull_typefind),
112         (gst_type_find_element_change_state):
113           Allow typefinding (w/o seeking) in push-mode, simplified version
114           of what was in 0.8.
115         * gst/gstutils.c: (gst_buffer_join):
116         * gst/gstutils.h:
117           gst_buffer_join() from 0.8.
118
119 2005-05-25  Wim Taymans  <wim@fluendo.com>
120
121         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
122         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
123         (gst_pad_send_event), (gst_pad_start_task):
124         Disable attempt at mode switching until it is figured out.
125
126 2005-05-25  Wim Taymans  <wim@fluendo.com>
127
128         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
129         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
130         (gst_basesink_finish_preroll), (gst_basesink_chain),
131         (gst_basesink_loop), (gst_basesink_activate),
132         (gst_basesink_change_state):
133         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
134         (gst_basesrc_get_range), (gst_basesrc_loop),
135         (gst_basesrc_activate):
136         * gst/elements/gsttee.c: (gst_tee_sink_activate):
137         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
138         (gst_real_pad_init), (gst_real_pad_set_property),
139         (gst_real_pad_get_property), (gst_pad_set_active),
140         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
141         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
142         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
143         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
144         (gst_pad_event_default_dispatch), (gst_pad_event_default),
145         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
146         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
147         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
148         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
149         (gst_pad_stop_task):
150         * gst/gstpad.h:
151         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
152         (gst_queue_loop), (gst_queue_src_activate):
153         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
154         (gst_task_get_state):
155         * gst/gsttask.h:
156         * gst/schedulers/threadscheduler.c:
157         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
158         Implement gst_pad_pause/start/stop_task(), take STREAM lock
159         in task function.
160         Remove ACTIVE pad flag, use FLUSHING everywhere
161         Added _pad_chain(), _pad_get_range() to call chain/getrange 
162         functions.
163         Add locks around IS_FLUSHING when reading.
164         Take STREAM lock in chain(), get_range() functions so plugins
165         don't need to take it anymore.
166         
167
168
169 2005-05-25  Wim Taymans  <wim@fluendo.com>
170
171         * tools/gst-launch.c: (event_loop):
172         Unref message after using its contents instead of
173         before.
174
175 2005-05-24  Wim Taymans  <wim@fluendo.com>
176
177         * docs/design/draft-ghostpads.txt:
178         * docs/design/draft-push-pull.txt:
179         * docs/design/draft-query.txt:
180         * docs/design/part-overview.txt:
181         Docs updates, added general overview doc.
182
183 2005-05-21  David Schleef  <ds@schleef.org>
184
185         * docs/gst/tmpl/old/GstBin.sgml:
186         * docs/gst/tmpl/old/GstBuffer.sgml:
187         * docs/gst/tmpl/old/GstCaps.sgml:
188         * docs/gst/tmpl/old/GstClock.sgml:
189         * docs/gst/tmpl/old/GstCompat.sgml:
190         * docs/gst/tmpl/old/GstData.sgml:
191         * docs/gst/tmpl/old/GstElement.sgml:
192         * docs/gst/tmpl/old/GstEvent.sgml:
193         * docs/gst/tmpl/old/GstIndex.sgml:
194         * docs/gst/tmpl/old/GstStructure.sgml:
195         * docs/gst/tmpl/old/GstTag.sgml:
196         * docs/gst/tmpl/old/cothreads.sgml:
197         * docs/gst/tmpl/old/cothreads_compat.sgml:
198         * docs/gst/tmpl/old/gettext.sgml:
199         * docs/gst/tmpl/old/gobject2gtk.sgml:
200         * docs/gst/tmpl/old/grammar.tab.sgml:
201         * docs/gst/tmpl/old/gst-i18n-app.sgml:
202         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
203         * docs/gst/tmpl/old/gst_private.sgml:
204         * docs/gst/tmpl/old/gstaggregator.sgml:
205         * docs/gst/tmpl/old/gstarch.sgml:
206         * docs/gst/tmpl/old/gstatomic_impl.sgml:
207         * docs/gst/tmpl/old/gstbufferstore.sgml:
208         * docs/gst/tmpl/old/gstdata_private.sgml:
209         * docs/gst/tmpl/old/gstdisksink.sgml:
210         * docs/gst/tmpl/old/gstdisksrc.sgml:
211         * docs/gst/tmpl/old/gstelementfactory.sgml:
212         * docs/gst/tmpl/old/gstextratypes.sgml:
213         * docs/gst/tmpl/old/gstfakesink.sgml:
214         * docs/gst/tmpl/old/gstfakesrc.sgml:
215         * docs/gst/tmpl/old/gstfdsink.sgml:
216         * docs/gst/tmpl/old/gstfdsrc.sgml:
217         * docs/gst/tmpl/old/gstfilesink.sgml:
218         * docs/gst/tmpl/old/gstfilesrc.sgml:
219         * docs/gst/tmpl/old/gsthttpsrc.sgml:
220         * docs/gst/tmpl/old/gstidentity.sgml:
221         * docs/gst/tmpl/old/gstindexfactory.sgml:
222         * docs/gst/tmpl/old/gstmarshal.sgml:
223         * docs/gst/tmpl/old/gstmd5sink.sgml:
224         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
225         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
226         * docs/gst/tmpl/old/gstpadtemplate.sgml:
227         * docs/gst/tmpl/old/gstpipefilter.sgml:
228         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
229         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
230         * docs/gst/tmpl/old/gstshaper.sgml:
231         * docs/gst/tmpl/old/gstspider.sgml:
232         * docs/gst/tmpl/old/gstspideridentity.sgml:
233         * docs/gst/tmpl/old/gststatistics.sgml:
234         * docs/gst/tmpl/old/gsttee.sgml:
235         * docs/gst/tmpl/old/gsttimecache.sgml:
236         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
237         * docs/gst/tmpl/old/gstxmlregistry.sgml:
238         * docs/gst/tmpl/old/gthread-cothreads.sgml:
239         * docs/gst/tmpl/old/types.sgml:
240           I didn't intend to add these or check them in.
241
242 2005-05-19  David Schleef  <ds@schleef.org>
243
244         * configure.ac: Use -no-common everywhere.  In a sane world, it
245           would be the default in libtool, because without it, you can't
246           build DLLs on Windows.
247         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
248         * docs/gst/gstreamer-sections.txt:
249         * docs/gst/tmpl/gstcpu.sgml:
250         * docs/gst/tmpl/gstdata.sgml:
251         * docs/gst/tmpl/gstthread.sgml:
252
253 2005-05-19  David Schleef  <ds@schleef.org>
254
255         * gst/gstminiobject.c: (gst_value_set_mini_object),
256         (gst_value_take_mini_object), (gst_value_get_mini_object):
257         * gst/gstminiobject.h: Add GValue set/get functions.
258
259 2005-05-19  Wim Taymans  <wim@fluendo.com>
260
261         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
262         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
263         (gst_subbuffer_init), (gst_buffer_is_span_fast):
264         * gst/gstbuffer.h:
265         * gst/gstbus.c: (gst_bus_post):
266         * gst/gstelement.c: (gst_element_get_random_pad):
267         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
268         Make subbufer unref the parent in finalize.
269         some more debugging info.
270
271
272 2005-05-19  Wim Taymans  <wim@fluendo.com>
273
274         * gst/base/gstbasesink.c: (gst_basesink_class_init),
275         (gst_basesink_init), (gst_basesink_finalize),
276         (gst_basesink_activate), (gst_basesink_change_state):
277         Don't free preroll queue too early.
278
279 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
280
281         * gst/Makefile.am:
282         * gst/ROADMAP:
283           Hi, I'm outdated. Please shoot me.
284
285 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
286
287         * gst/gstpipeline.c: (gst_pipeline_send_event):
288           Do not access variables after they have been deleted.
289
290 2005-05-19  Wim Taymans  <wim@fluendo.com>
291
292         * tools/gst-inspect.c: (print_plugin_features):
293         A plugin feature does unfortunatly not use the
294         object name yet...
295
296 2005-05-18  Wim Taymans  <wim@fluendo.com>
297
298         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
299         Port _span() functions to new subbuffers.
300
301 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
302
303         * gst/gstbin.c: (gst_bin_add_func):
304           Fix clock settery in bins when adding kids after the clock has
305           been selected.
306
307 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
308
309         * gst/elements/gstidentity.c: (gst_identity_class_init):
310           Workaround until signals support GstMiniObject.
311
312 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
313
314         * gst/gstbuffer.c:
315         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
316
317 2005-05-18  Wim Taymans  <wim@fluendo.com>
318
319         * gst/base/Makefile.am:
320         * gst/base/gstadapter.c: (gst_adapter_base_init),
321         (gst_adapter_class_init), (gst_adapter_init),
322         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
323         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
324         (gst_adapter_flush), (gst_adapter_available),
325         (gst_adapter_available_fast):
326         * gst/base/gstadapter.h:
327         Ported and added adapter to the base classes.
328
329 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
330
331         * gst/gst.c:
332         * gst/gstmessage.c:
333           Make sure the class is reffed/unreffed once before threads can be
334           used.  Fixes #304551.
335
336 2005-05-17  Wim Taymans  <wim@fluendo.com>
337
338         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
339         (gst_basesink_chain_unlocked), (gst_basesink_activate):
340         * gst/gstminiobject.c: (gst_mini_object_get_type),
341         (gst_mini_object_free):
342         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
343         (gst_pad_push), (gst_pad_push_event):
344         * gst/gstqueue.c: (gst_queue_change_state):
345         Don't queue buffers in basesink when we are flushing.
346         Unref buffer when flushing in basesink.
347         Flush queue when going to READY
348         Unref buffer when _push() returns an error.
349         Don't free MiniObject instance when refcount is incremented
350         in _finalize() so that we can recover objects.
351
352 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
353
354         * docs/manual/advanced-schedulers.xml:
355         * docs/manual/appendix-checklist.xml:
356         * docs/pwg/advanced-clock.xml:
357         * docs/pwg/advanced-interfaces.xml:
358         * docs/pwg/advanced-request.xml:
359         * docs/pwg/advanced-types.xml:
360         * docs/pwg/intro-preface.xml:
361         * examples/plugins/example.c: (gst_example_get_type),
362         (gst_example_class_init), (gst_example_chain),
363         (gst_example_set_property), (gst_example_get_property),
364         (gst_example_change_state), (plugin_init):
365         * examples/plugins/example.h:
366           small doc fixes
367
368 2005-05-17  Wim Taymans  <wim@fluendo.com>
369
370         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
371         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
372         * gst/gstqueue.c: (gst_queue_change_state):
373         Clear queue when going to READY.
374         Remove IN_SETCAPS flag too.
375
376 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
377
378         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
379           Remove implicit cast from gboolean to GstElementStateReturn;
380           make sure we still return failure in paused => ready case if
381           the parent class fails to change state and our own stop 
382           vfunc succeeds.
383
384 2005-05-17  Wim Taymans  <wim@fluendo.com>
385
386         * tools/gst-launch.c: (event_loop):
387         Message was unreffed too soon.
388
389 2005-05-16  Andy Wingo  <wingo@pobox.com>
390
391         * gst/gstbin.c (sink_iterator_filter): Err... um...
392
393         * check/gst/gstbin.c (test_ghost_pads): New test for the
394         ghosting-if-elements-not-in-same-bin behavior.
395
396 2005-05-16  David Schleef  <ds@schleef.org>
397
398         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
399         accessing refcount directly.
400
401 2005-05-15  David Schleef  <ds@schleef.org>
402
403         * check/Makefile.am: remove GstData checks
404         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
405         * gst/Makefile.am: add miniobject, remove data
406         * gst/gst.h: add miniobject, remove data
407         * gst/gstdata.c: remove
408         * gst/gstdata.h: remove
409         * gst/gstdata_private.h: remove
410         * gst/gsttypes.h: remove GstEvent and GstMessage
411         * gst/gstelement.c: (gst_element_post_message): fix for API changes
412         * gst/gstmarshal.list: change BOXED -> OBJECT
413
414         Implement GstMiniObject.
415         * gst/gstminiobject.c:
416         * gst/gstminiobject.h:
417
418         Modify to be subclasses of GstMiniObject.
419         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
420         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
421         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
422         (gst_subbuffer_get_type), (gst_subbuffer_init),
423         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
424         (gst_buffer_span):
425         * gst/gstbuffer.h:
426         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
427         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
428         (_gst_event_copy), (gst_event_new):
429         * gst/gstevent.h:
430         * gst/gstmessage.c: (_gst_message_initialize),
431         (gst_message_get_type), (gst_message_class_init),
432         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
433         (gst_message_new), (gst_message_new_error),
434         (gst_message_new_warning), (gst_message_new_tag),
435         (gst_message_new_state_changed), (gst_message_new_application):
436         * gst/gstmessage.h:
437         * gst/gstprobe.c: (gst_probe_perform),
438         (gst_probe_dispatcher_dispatch):
439         * gst/gstprobe.h:
440         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
441         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
442         (_gst_query_copy), (gst_query_new):
443
444         Update elements for GstData -> GstMiniObject changes
445         * gst/gstquery.h:
446         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
447         (gst_queue_chain), (gst_queue_loop):
448         * gst/elements/gstbufferstore.c:
449         (gst_buffer_store_add_buffer_func),
450         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
451         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
452         (gst_fakesink_render):
453         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
454         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
455         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
456         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
457         (gst_filesrc_create_read):
458         * gst/elements/gstidentity.c: (gst_identity_class_init):
459         * gst/elements/gsttypefindelement.c:
460         (gst_type_find_element_src_event), (free_entry_buffers),
461         (gst_type_find_element_handle_event):
462         * libs/gst/dataprotocol/dataprotocol.c:
463         (gst_dp_header_from_buffer):
464         * libs/gst/dataprotocol/dataprotocol.h:
465         * libs/gst/dataprotocol/dp-private.h:
466
467 2005-05-15  David Schleef  <ds@schleef.org>
468
469         * gst/elements/gstelements.c: Don't include headers that were
470         just removed.
471
472 2005-05-15  David Schleef  <ds@schleef.org>
473
474         * gst/elements/Makefile.am: Remove some elements that don't
475         need to be in the core (or even exist at all).
476         * gst/elements/gstaggregator.c:
477         * gst/elements/gstaggregator.h:
478         * gst/elements/gstmd5sink.c:
479         * gst/elements/gstmd5sink.h:
480         * gst/elements/gstmultifilesrc.c:
481         * gst/elements/gstmultifilesrc.h:
482         * gst/elements/gstpipefilter.c:
483         * gst/elements/gstpipefilter.h:
484         * gst/elements/gstshaper.c:
485         * gst/elements/gstshaper.h:
486         * gst/elements/gststatistics.c:
487         * gst/elements/gststatistics.h:
488         * po/POTFILES.in: Remove above files.
489
490 2005-05-14  Andy Wingo  <wingo@pobox.com>
491
492         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
493         so as to get the refs right.
494         (sink_iterator_filter): New function, wraps bin_element_is_sink,
495         unreffing objects that don't pass the filter.
496
497         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
498         gst_element_set_bus.
499         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
500         normal cases, this will destroy the bus.
501
502         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
503         object.
504
505         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
506         has no sinks.
507
508 2005-05-13  Andy Wingo  <wingo@pobox.com>
509
510         * gst/gstutils.c (gst_element_link_pads): Instead of calling
511         gst_pad_link, call pad_link_maybe_ghosting,
512         (pad_link_maybe_ghosting): Links pads, making sure that the
513         elements being linked are in the same bin.
514         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
515         Helpers for pad_link_maybe_ghosting.
516
517 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
518
519         * configure.ac:
520           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
521
522 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
523
524         * docs/design/part-element-source.txt:
525           Mention GstPushSrc
526
527 2005-05-12  Wim Taymans  <wim@fluendo.com>
528
529         * gst/base/gstbasesink.c: (gst_basesink_init),
530         (gst_basesink_activate):
531         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
532         (gst_basesrc_is_seekable):
533         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
534         (bin_element_is_sink), (gst_bin_change_state):
535         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
536         * gst/gstelement.h:
537         Identify sinks by their flag to avoid overly complicated
538         checks (fow now).
539         Do state changes even for elements not reachable from the
540         sinks.
541         BaseSink is a sink now :)
542         Some more debugging info in the basesrc.
543
544
545 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
546
547         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
548           Implement _query on a bin, similar to _send_event.
549
550 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
551
552         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
553           Discont event offset format should be GST_FORMAT_BYTES,
554           not GST_FORMAT_TIME.
555
556 2005-05-12  Wim Taymans  <wim@fluendo.com>
557
558         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
559         Same fix as Ronald's but without the signal. 
560
561 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
562
563         * gst/gstutils.c: (gst_element_query_position):
564           No, an element is not a pad.
565
566 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
567
568         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
569         (gst_bin_get_state):
570           If a child is removed from a bin while we remove the child from
571           the bin and while we're retrieving its state, signal this to the
572           get_state function so we abort the wait (instead of waiting for
573           a timeout) and can immediately re-iterate over all other elements.
574
575 2005-05-12  Wim Taymans  <wim@fluendo.com>
576
577         * gst/base/Makefile.am:
578         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
579         (gst_basesrc_start):
580         * gst/base/gstbasesrc.h:
581         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
582         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
583         (gst_pushsrc_init), (gst_pushsrc_create):
584         * gst/base/gstpushsrc.h:
585         Added is_seekable to BaseSrc
586         Added simple PushSrc.
587
588 2005-05-11  Wim Taymans  <wim@fluendo.com>
589
590         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
591         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
592         (gst_element_link_pads), (gst_element_query_position),
593         (gst_element_query_convert), (intersect_caps_func),
594         (gst_pad_query_position), (gst_pad_query_convert):
595         Fix refcounting in utils function.
596         No point in trying to activate a pad when it's added, it could
597         be added from the state change function and then we deadlock, the
598         element has to decide what to do.
599
600 2005-05-10  Andy Wingo  <wingo@pobox.com>
601
602         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
603         *all* the arguments.
604
605         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
606         stream lock if it's a FLUSH_DONE; normal flushes don't get the
607         lock (according to the docs -- if this is wrong change the docs).
608
609         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
610         flush messages in the NULL state.
611
612         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
613         message immediately and return.
614         (gst_bus_set_flushing): New function. If a bus is flushing, it
615         flushes out any queued messages and immediately unrefs new
616         messages. This is so when an element goes to NULL, all of the
617         unhandled messages coming from it can be freed, and their
618         references to the element dropped. In other words: message source
619         ref considered harmful :P
620
621         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
622         we're finished with it.
623
624         * gst/gstmessage.c (gst_message_new_state_changed): 
625
626 2005-05-10  Wim Taymans  <wim@fluendo.com>
627
628         * gst/gstvalue.c: (gst_value_compare_flags),
629         (gst_value_serialize_flags), (gst_value_deserialize_flags),
630         (_gst_value_initialize):
631         Added flags serialize/deserialize/compare code.
632
633 2005-05-09  Andy Wingo  <wingo@pobox.com>
634
635         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
636         Intersect the peer's caps with our caps.
637
638 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
639
640         * gst/base/gsttypefindhelper.c: (helper_find_peek):
641         * gst/elements/gsttypefindelement.c: (find_peek):
642           Handle negative offsets better. Fixes decodebin.
643
644 2005-05-09  Wim Taymans  <wim@fluendo.com>
645
646         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
647         (gst_base_transform_event):
648         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
649         Implement accept_caps.
650         Fix silly lock/unlock mismatch in base class.
651
652 2005-05-09  Wim Taymans  <wim@fluendo.com>
653
654         * docs/design/draft-push-pull.txt:
655         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
656         * gst/elements/gstfilesink.c: (gst_filesink_init),
657         (gst_filesink_query):
658         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
659         (gst_type_find_handle_src_query), (find_element_get_length):
660         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
661         * gst/gstelement.h:
662         * gst/gstmessage.c:
663         * gst/gstmessage.h:
664         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
665         (gst_real_pad_get_caps_unlocked),
666         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
667         (gst_pad_event_default_dispatch), (gst_pad_event_default),
668         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
669         (gst_real_pad_dispose), (gst_real_pad_finalize),
670         (gst_pad_load_and_link), (gst_pad_save_thyself),
671         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
672         (gst_pad_check_pull_range), (gst_pad_pull_range),
673         (gst_pad_template_get_type), (gst_pad_template_class_init),
674         (gst_pad_template_init), (gst_pad_template_dispose),
675         (name_is_valid), (gst_static_pad_template_get),
676         (gst_pad_template_new), (gst_static_pad_template_get_caps),
677         (gst_pad_template_get_caps), (gst_pad_set_element_private),
678         (gst_pad_get_element_private), (gst_pad_start_task),
679         (gst_pad_pause_task), (gst_pad_stop_task),
680         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
681         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
682         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
683         (gst_ghost_pad_new):
684         * gst/gstpad.h:
685         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
686         (gst_query_new_position), (gst_query_set_position),
687         (gst_query_parse_position), (gst_query_new_convert),
688         (gst_query_set_convert), (gst_query_parse_convert):
689         * gst/gstquery.h:
690         * gst/gstqueryutils.c:
691         * gst/gstqueryutils.h:
692         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
693         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
694         (gst_queue_handle_src_query):
695         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
696         (gst_element_query_position), (gst_element_query_convert),
697         (intersect_caps_func), (gst_pad_query_position),
698         (gst_pad_query_convert):
699         * gst/gstutils.h:
700         * tools/gst-inspect.c: (print_pad_info):
701         * tools/gst-xmlinspect.c: (print_element_info):
702         Remove old query functions. Ported old code.
703         Added position/convert helper functions to gstutils.
704         Reordered gstpad.c code, grouping relevant things.
705         Remove gst_message_new(), always need to speficy a specific
706         message.
707
708
709 2005-05-09  Andy Wingo  <wingo@pobox.com>
710
711         * gst/gstiterator.h: Add some includes.
712
713         * gst/gstqueryutils.h: Include more headers.
714
715         * gst/gstpad.h:
716         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
717         some uses of gst_pad_query.
718
719         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
720         NULL out parameters.
721         (gst_query_new_position): New proc, allocates a new position
722         query.
723
724         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
725         gstqueryutils.c to the build.
726
727         * gst/gststructure.c (gst_structure_set_valist): Implement with
728         the generic G_VALUE_COLLECT.
729         
730 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
731
732         * gst/Makefile.am: (gst_headers):
733         Added gstqueryutils.h to the list of headers to install, that was
734         a 'nachty' move wingo :)
735
736 2005-05-06  Andy Wingo  <wingo@pobox.com>
737
738         * gst/gstquery.h
739         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
740         GstData, init a memchunk.
741         (standard_definitions): Add a few query types, deprecate a few.
742         (gst_query_get_type): New proc.
743         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
744         implementation.
745         (gst_query_new_application, gst_query_get_structure): New public
746         procs.
747
748         * docs/design/draft-query.txt: Removed LINKS from the query types,
749         because all the rest can be dispatched to other pads -- seemed
750         ugly to have a query that couldn't be dispatched. internal_links
751         is fine as a pad method.
752
753         * gst/gstpad.h: Add query2 as a pad method, add the new functions
754         in gstpad.c, but maintain binary compatibility for the moment.
755         Will fix before 0.9 is out.
756
757         * gst/gstqueryutils.c: 
758         * gst/gstqueryutils.h: New files, implement 3 methods for each
759         query type: parse_query, parse_response, and set. Probably need an
760         allocator as well.
761
762         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
763
764         * gst/elements/gstfilesink.c (gst_filesink_query2):
765         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
766         query_types, and formats methods.
767
768         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
769         (gst_pad_set_query2_function): New functions.
770         (gst_real_pad_init): Set query2_default as the default query2
771         function. Basically just dispatches to internally linked pads.
772
773         Needs review!
774         
775         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
776         without using the atomic operations. Only one thread can possibly
777         be accessing the data at this point. Changed so as to avoid
778         gst_atomic operations.
779
780 2005-05-06  Wim Taymans  <wim@fluendo.com>
781
782         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
783         Also set caps if we use the fallback buffer alloc.
784
785 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
786
787         * docs/gst/Makefile.am:
788         * docs/gst/gstreamer-docs.sgml:
789         * docs/gst/gstreamer-sections.txt:
790         * docs/gst/tmpl/gstatomic.sgml:
791         * docs/gst/tmpl/gstmemchunk.sgml:
792         * testsuite/elements/struct_i386.h:
793         * win32/GStreamer.vcproj:
794         * win32/Makefile:
795           Purge GstAtomic stuff from docs and win32 makefiles as well
796
797 2005-05-06  Wim Taymans  <wim@fluendo.com>
798
799         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
800         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
801         * gst/gstpad.c: (gst_pad_peer_get_caps):
802         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
803         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
804         (gst_queue_src_activate), (gst_queue_change_state):
805         * gst/gstqueue.h:
806         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
807         (intersect_caps_func):
808         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
809         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
810         Some fixes for the peer_get_caps() change.
811
812 2005-05-06  Wim Taymans  <wim@fluendo.com>
813
814         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
815         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
816         (gst_basesink_activate):
817         Actually do something with error codes returned from the push
818         functions.
819
820 2005-05-06  Wim Taymans  <wim@fluendo.com>
821
822         * docs/design/part-element-sink.txt:
823         * docs/design/part-element-source.txt:
824         * gst/base/gstbasesink.c: (gst_basesink_class_init),
825         (gst_basesink_event), (gst_basesink_activate):
826         * gst/base/gstbasesink.h:
827         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
828         (gst_basesrc_activate):
829         * gst/base/gstbasesrc.h:
830         * gst/gstelement.c: (gst_element_pads_activate):
831         Some more documentation.
832         Fixed scheduling decision in _pads_activate().
833
834 2005-05-05  Andy Wingo  <wingo@pobox.com>
835
836         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
837         the test suite.
838
839 2005-05-05  Wim Taymans  <wim@fluendo.com>
840
841         * gst/base/Makefile.am:
842         * gst/base/gstbasesink.h:
843         * gst/base/gstbasesrc.c: (gst_basesrc_init),
844         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
845         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
846         (gst_collectpads_class_init), (gst_collectpads_init),
847         (gst_collectpads_finalize), (gst_collectpads_new),
848         (gst_collectpads_set_function), (gst_collectpads_add_pad),
849         (find_pad), (gst_collectpads_remove_pad),
850         (gst_collectpads_is_active), (gst_collectpads_collect),
851         (gst_collectpads_collect_range), (gst_collectpads_start),
852         (gst_collectpads_stop), (gst_collectpads_peek),
853         (gst_collectpads_pop), (gst_collectpads_available),
854         (gst_collectpads_read), (gst_collectpads_flush),
855         (gst_collectpads_chain):
856         * gst/base/gstcollectpads.h:
857         * gst/elements/Makefile.am:
858         * gst/elements/gstelements.c:
859         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
860         (gst_fakesink_get_times), (gst_fakesink_event),
861         (gst_fakesink_preroll), (gst_fakesink_render):
862         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
863         (gst_filesink_init), (gst_filesink_set_location),
864         (gst_filesink_open_file), (gst_filesink_close_file),
865         (gst_filesink_pad_query), (gst_filesink_event),
866         (gst_filesink_render), (gst_filesink_change_state):
867         * gst/elements/gstfilesink.h:
868         Added object to help in making collect pad based elements.
869         Ported filesink.
870         Make event function in sink baseclass return gboolean.
871
872 2005-05-05  Wim Taymans  <wim@fluendo.com>
873
874         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
875         (gst_bin_get_by_name):
876         * gst/gstbuffer.h:
877         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
878         (gst_clock_finalize):
879         * gst/gstdata.c: (gst_data_replace):
880         * gst/gstdata.h:
881         * gst/gstelement.c: (gst_element_request_pad),
882         (gst_element_pads_activate):
883         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
884         (gst_object_unref):
885         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
886         (gst_pad_set_checkgetrange_function),
887         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
888         (gst_pad_check_pull_range), (gst_pad_pull_range),
889         (gst_static_pad_template_get_caps), (gst_pad_start_task),
890         (gst_pad_pause_task), (gst_pad_stop_task):
891         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
892         (gst_element_request_pad), (gst_pad_proxy_getcaps):
893         Fix name lookup in GstBin.
894         Added _data_replace() function and _buffer_replace()
895         Use finalize method to clean up clock.
896         Fix refcounting on request pads.
897         Fix pad schedule mode error.
898         Some more object refcounting debug info,
899
900
901 2005-05-04  Andy Wingo <wingo@pobox.com>
902
903         * check/Makefile.am:
904         * docs/gst/tmpl/gstatomic.sgml:
905         * docs/gst/tmpl/gstplugin.sgml:
906         * gst/base/gstbasesink.c: (gst_basesink_activate):
907         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
908         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
909         (gst_basesrc_query), (gst_basesrc_set_property),
910         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
911         (gst_basesrc_activate):
912         * gst/base/gstbasesrc.h:
913         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
914         (gst_base_transform_src_activate):
915         * gst/elements/gstelements.c:
916         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
917         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
918         * gst/elements/gsttee.c: (gst_tee_sink_activate):
919         * gst/elements/gsttypefindelement.c: (find_element_get_length),
920         (gst_type_find_element_checkgetrange),
921         (gst_type_find_element_activate):
922         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
923         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
924         (gst_caps_load_thyself):
925         * gst/gstelement.c: (gst_element_pads_activate),
926         (gst_element_save_thyself), (gst_element_restore_thyself):
927         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
928         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
929         * gst/gstpad.h:
930         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
931         (gst_xml_parse_file), (gst_xml_parse_memory),
932         (gst_xml_get_element), (gst_xml_make_element):
933         * gst/indexers/gstfileindex.c: (gst_file_index_load),
934         (_file_index_id_save_xml), (gst_file_index_commit):
935         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
936         (read_enum), (load_pad_template), (load_feature), (load_plugin),
937         (load_paths):
938         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
939         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
940         * tools/gst-complete.c: (main):
941         * tools/gst-compprep.c: (main):
942         * tools/gst-inspect.c: (print_element_properties_info):
943         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
944         * tools/gst-xmlinspect.c: (print_element_properties):
945         GCC 4 fixen.
946         
947 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
948
949         * gst/gstplugin.c: (gst_plugin_check_module),
950         (gst_plugin_check_file), (gst_plugin_load_file):
951             apply patch from #172526 to make register work on MacOSX
952
953 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
954
955         * docs/gst/tmpl/gstconfig.sgml:
956         * gst/gstconfig.h.in:
957           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
958         * testsuite/debug/printf_extension.c: (main):
959           Do not use GST_PTR_FORMAT on pointers to types with
960           sizeof < sizeof(gpointer).  Fixes test on 64-bit
961         * testsuite/elements/property.h:
962           use correct printf format
963
964 2005-05-02  Wim Taymans  <wim@fluendo.com>
965
966         * docs/design/draft-push-pull.txt:
967         * docs/design/draft-query.txt:
968         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
969         (gst_basesrc_start):
970         Added draft for new query API.
971         Added draft for better selecting scheduling methods.
972         Make basesrc ignore length if the subclass does not support
973         it.
974
975 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
976
977         * gst/Makefile.am:
978           possible fixes for automake-1.5 - _LIBADD is reserved
979
980 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
981
982         * docs/faq/Makefile.am:
983         * docs/manual/Makefile.am:
984         * docs/manuals.mak:
985         * docs/pwg/Makefile.am:
986         * gst/Makefile.am:
987           possible fixes for automake-1.5
988
989 2005-04-28  Wim Taymans  <wim@fluendo.com>
990
991         * gst/base/gstbasesink.c: (gst_basesink_base_init),
992         (gst_basesink_pad_getcaps), (gst_basesink_init),
993         (gst_basesink_do_sync):
994         * gst/gstclock.c: (gst_clock_entry_new):
995         * gst/gstevent.c: (gst_event_discont_get_value):
996         * gst/gstpipeline.c: (pipeline_bus_handler),
997         (gst_pipeline_change_state):
998         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
999         Better debugging of clocking info.
1000         Allow NULL values when getting discont values.
1001
1002 2005-04-27  Wim Taymans  <wim@fluendo.com>
1003
1004         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1005         * check/gst/gstpad.c: (gst_pad_suite):
1006         Increase timeout for checks.
1007
1008 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1009
1010         * check/Makefile.am:
1011           fix the broken rule for cleanup.  Apparently this rule is
1012           only needed on FC2, so maybe this warrants further autotool
1013           inspection.
1014
1015 2005-04-26  Wim Taymans  <wim@fluendo.com>
1016
1017         * gst/gsttrashstack.h:
1018         Ooohh. a nasty one! After having a failed pop() from the stack,
1019         it's possible that the stack is empty. In that case, don't
1020         follow the NULL pointer.
1021
1022 2005-04-25  Wim Taymans  <wim@fluendo.com>
1023
1024         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1025         (gst_pad_set_checkgetrange_function),
1026         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1027         (gst_pad_check_pull_range), (gst_pad_pull_range),
1028         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1029         (gst_pad_pause_task), (gst_pad_stop_task):
1030         * gst/gstplugin.c: (gst_plugin_load):
1031         * gst/gstplugin.h:
1032         Remove gst_library_load as it does more harm than good with
1033         the new g_module flags.
1034         Revert bogus caps template check in pad linking, pad caps
1035         are important when linking not the template, which is more
1036         general than the current caps.
1037
1038 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1039
1040         * gst/autoplug/.cvsignore:
1041         * gst/autoplug/Makefile.am:
1042         * gst/autoplug/gstsearchfuncs.c:
1043         * gst/autoplug/gstsearchfuncs.h:
1044         * gst/autoplug/gstspider.c:
1045         * gst/autoplug/gstspider.h:
1046         * gst/autoplug/gstspideridentity.c:
1047         * gst/autoplug/gstspideridentity.h:
1048         * gst/autoplug/spidertest.c:
1049           Die, spider, die.
1050
1051 2005-04-25  Wim Taymans  <wim@fluendo.com>
1052
1053         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1054         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1055         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1056         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1057         * gst/gstpad.h:
1058         Added stubs for unimplemented functions. 
1059
1060 2005-04-24  David Schleef  <ds@schleef.org>
1061
1062         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1063         please fix.
1064
1065 2005-04-24  David Schleef  <ds@schleef.org>
1066
1067         Convert everything from GstAtomicInt to g_atomic_int_*, and
1068         remove gstatomic.
1069         * gst/Makefile.am:
1070         * gst/gstatomic.c:
1071         * gst/gstatomic.h:
1072         * gst/gstatomic_impl.h:
1073         * gst/gstbuffer.c:
1074         * gst/gstcaps.c:
1075         * gst/gstcaps.h:
1076         * gst/gstclock.c:
1077         * gst/gstclock.h:
1078         * gst/gstdata.c:
1079         * gst/gstdata.h:
1080         * gst/gstdata_private.h:
1081         * gst/gstevent.c:
1082         * gst/gstinfo.c:
1083         * gst/gstinfo.h:
1084         * gst/gstmessage.c:
1085         * gst/gstobject.c:
1086         * gst/gstobject.h:
1087         * gst/gststructure.c:
1088         * gst/gststructure.h:
1089         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1090         * gst/gstutils.h:
1091
1092 2005-04-24  David Schleef  <ds@schleef.org>
1093
1094         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1095         make the regressions tests work.  Remove some code that is no
1096         longer true.
1097         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1098         Disable warning for pads without templates.
1099
1100 2005-04-24  David Schleef  <ds@schleef.org>
1101
1102         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1103         functions that handle filtered links.
1104         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1105         removed functions.
1106         * gst/gstutils.c: Fix/remove utility functions that handle
1107         filtered caps.
1108         * gst/gstutils.h:
1109         * gst/gstvalue.c: Add serialization/deserialization of caps
1110         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1111         requires fixing so that the filter caps notation creates
1112         a capsfilter element and sets the filter_caps property.  I
1113         think everyone probably wants to keep the shorthand notation.
1114         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1115         * docs/gst/tmpl/gstpad.sgml:
1116
1117         * gst/elements/gstelements.c: Register capsfilter element.
1118         * gst/Makefile.am: fix spacing
1119         * docs/random/ds/0.9-suggested-changes: random
1120
1121 2005-04-23  David Schleef  <ds@schleef.org>
1122
1123         * gst/elements/Makefile.am:
1124         * gst/elements/gstcapsfilter.c: New element that acts like an
1125         identity, but filters caps.  Will eventually replace filtered
1126         caps in pad linking.
1127         * gst/gstutils.c: (gst_element_create_all_pads): New function
1128         to create all the ALWAYS pads that are registered with an
1129         element class.  This functionality should eventually be
1130         merged in with GstElement initialization.
1131         * gst/gstutils.h:
1132         * testsuite/trigger/README: part of trigger test code that should
1133         have been checked in a long time ago.
1134
1135 2005-04-23  David Schleef  <ds@schleef.org>
1136
1137         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1138         needed with new versions of libtool (nobody will confirm this),
1139         and hard to carry around.
1140         * gst/autoplug/Makefile.am:
1141         * gst/base/Makefile.am:
1142         * gst/elements/Makefile.am:
1143         * gst/indexers/Makefile.am:
1144         * gst/schedulers/Makefile.am:
1145         * libs/gst/bytestream/Makefile.am:
1146         * libs/gst/control/Makefile.am:
1147         * libs/gst/dataprotocol/Makefile.am:
1148         * libs/gst/getbits/Makefile.am:
1149
1150 2005-04-21  Wim Taymans  <wim@fluendo.com>
1151
1152         * docs/design/draft-push-pull.txt:
1153         * docs/design/part-MT-refcounting.txt:
1154         * docs/design/part-TODO.txt:
1155         * docs/design/part-caps.txt:
1156         * docs/design/part-events.txt:
1157         * docs/design/part-gstbus.txt:
1158         * docs/design/part-gstpipeline.txt:
1159         * docs/design/part-messages.txt:
1160         * docs/design/part-push-pull.txt:
1161         * docs/design/part-query.txt:
1162         Some more docs.
1163
1164 2005-04-21  Wim Taymans  <wim@fluendo.com>
1165
1166         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1167         (gst_message_new), (gst_message_new_error),
1168         (gst_message_new_warning), (gst_message_new_tag),
1169         (gst_message_new_state_changed), (gst_message_new_application),
1170         (gst_message_get_structure):
1171         * gst/gstmessage.h:
1172         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1173         (gst_structure_copy_conditional):
1174         Use parent refcount in GstMessage to ensure GstStructure
1175         consistency.
1176         Cleaned up headers a bit.
1177         
1178
1179 2005-04-20  Wim Taymans  <wim@fluendo.com>
1180
1181         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1182         (gst_basesink_pad_getcaps), (gst_basesink_init),
1183         (gst_basesink_chain_unlocked):
1184         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1185         (gst_type_find_helper):
1186         * gst/elements/gsttypefindelement.c:
1187         (gst_type_find_element_have_type), (gst_type_find_element_init),
1188         (stop_typefinding), (gst_type_find_element_handle_event),
1189         (find_suggest), (gst_type_find_element_chain),
1190         (gst_type_find_element_checkgetrange),
1191         (gst_type_find_element_getrange), (do_typefind),
1192         (gst_type_find_element_activate):
1193         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1194         (gst_buffer_default_free), (gst_buffer_default_copy),
1195         (gst_buffer_set_caps):
1196         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1197         (gst_caps_replace):
1198         * gst/gstmessage.c: (gst_message_new),
1199         (gst_message_new_state_changed):
1200         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1201         (gst_pad_set_checkgetrange_function),
1202         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1203         (gst_pad_set_caps), (gst_pad_check_pull_range),
1204         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1205         * gst/gstpad.h:
1206         * gst/gsttypefind.c: (gst_type_find_register):
1207         Make gst_caps_replace() work like other _replace() functions.
1208         Use _caps_replace() where possible.
1209         Make sure _message_new() initialises its field.
1210         Add gst_static_pad_template_get_caps()
1211
1212
1213 2005-04-18  Andy Wingo  <wingo@pobox.com>
1214
1215         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1216         on the peer, not the pad. I think that was a typo. Pass an extra
1217         arg to see if random access is possible. Activate the pads as
1218         PULL_RANGE if possible.
1219
1220         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1221
1222         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1223         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1224         to PROP_....
1225
1226 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1227
1228         * docs/faq/using.xml:
1229           Add note on gstreamer-properties (#154996).
1230
1231 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1232
1233         * docs/random/bbb/optional-properties:
1234           Some analysis on optional properties.
1235
1236 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1237
1238         * docs/gst/tmpl/gstelementfactory.sgml:
1239         * gst/gstelement.h:
1240         * gst/gstelementfactory.c: (gst_element_factory_init),
1241         (gst_element_factory_cleanup), (gst_element_register),
1242         (__gst_element_factory_add_static_pad_template),
1243         (gst_element_factory_get_static_pad_templates),
1244         (gst_element_factory_can_src_caps),
1245         (gst_element_factory_can_sink_caps):
1246         * gst/registries/Makefile.am:
1247         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1248         (gst_xml_registry_class_init), (gst_xml_registry_init),
1249         (gst_xml_registry_new), (gst_xml_registry_set_property),
1250         (gst_xml_registry_get_property), (get_time), (make_dir),
1251         (gst_xml_registry_get_perms_func),
1252         (plugin_times_older_than_recurse), (plugin_times_older_than),
1253         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1254         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1255         (add_to_char_array), (read_string), (read_uint), (read_enum),
1256         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1257         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1258         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1259         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1260         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1261         (gst_xml_registry_rebuild):
1262         * gst/registries/gstlibxmlregistry.h:
1263         * tools/gst-compprep.c: (main):
1264         * tools/gst-inspect.c: (print_pad_templates_info):
1265         * tools/gst-xmlinspect.c: (print_element_info):
1266           Use libxml2 for registry parsing, use staticpadtemplates in
1267           elementfactories. Makes gst_init() +/- 10x faster.
1268
1269 2005-04-12  Wim Taymans  <wim@fluendo.com>
1270
1271         * gst/base/Makefile.am:
1272         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1273         (gst_basesink_pad_getcaps), (gst_basesink_init),
1274         (gst_basesink_event), (gst_basesink_change_state):
1275         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1276         (gst_basesrc_init), (gst_basesrc_query),
1277         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1278         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1279         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1280         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1281         (gst_basesrc_stop), (gst_basesrc_activate),
1282         (gst_basesrc_change_state):
1283         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1284         (helper_find_suggest), (gst_type_find_helper):
1285         * gst/base/gsttypefindhelper.h:
1286         * gst/elements/Makefile.am:
1287         * gst/elements/gstelements.c:
1288         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1289         (gst_fakesink_get_times), (gst_fakesink_event),
1290         (gst_fakesink_preroll), (gst_fakesink_render):
1291         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1292         (gst_fakesrc_init), (gst_fakesrc_event_handler),
1293         (gst_fakesrc_get_property), (gst_fakesrc_create),
1294         (gst_fakesrc_start), (gst_fakesrc_stop):
1295         * gst/elements/gstfakesrc.h:
1296         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
1297         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1298         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1299         (gst_filesrc_create_read), (gst_filesrc_create),
1300         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
1301         (gst_filesrc_start):
1302         * gst/elements/gsttypefindelement.c:
1303         (gst_type_find_element_have_type), (gst_type_find_element_init),
1304         (start_typefinding), (stop_typefinding), (push_buffer_store),
1305         (gst_type_find_element_handle_event),
1306         (gst_type_find_element_chain),
1307         (gst_type_find_element_checkgetrange),
1308         (gst_type_find_element_getrange), (do_typefind),
1309         (gst_type_find_element_activate),
1310         (gst_type_find_element_change_state):
1311         * gst/elements/gsttypefindelement.h:
1312         * gst/gstpipeline.c: (pipeline_bus_handler):
1313         Added typefind helper.
1314         Small preroll fix in the base sink.
1315         Disable typefind code in basesrc.
1316         Crude port of typefindelement.
1317         Fakesrc cleanups.
1318
1319
1320 2005-04-11  Wim Taymans  <wim@fluendo.com>
1321
1322         * check/gst/gstbus.c: (gstbus_suite):
1323         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
1324         * check/gstcheck.h:
1325         Fix up the timeout so that the test does not fail.
1326
1327 2005-04-06  Wim Taymans  <wim@fluendo.com>
1328
1329         * gst/base/README:
1330         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1331         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
1332         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1333         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1334         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1335         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1336         (gst_basesrc_stop), (gst_basesrc_activate),
1337         (gst_basesrc_change_state), (basesrc_find_peek),
1338         (basesrc_find_suggest), (gst_basesrc_type_find):
1339         * gst/base/gstbasesrc.h:
1340         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1341         (gst_filesrc_class_init), (gst_filesrc_init),
1342         (gst_filesrc_finalize), (gst_filesrc_set_location),
1343         (gst_filesrc_set_property), (gst_filesrc_get_property),
1344         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1345         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1346         (gst_filesrc_create_read), (gst_filesrc_create),
1347         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
1348         * gst/elements/gstfilesrc.h:
1349         * gst/gstelement.c: (gst_element_get_state_func),
1350         (gst_element_lost_state), (gst_element_pads_activate):
1351         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1352         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1353         (gst_pad_pull_range):
1354         * gst/gstpad.h:
1355         More work on the generic source base class, implement seeking,
1356         query.
1357         Make filesrc extend the base source class.
1358         Added gst_pad_set_checkgetrange_function to GstPad.
1359
1360 2005-04-06  Andy Wingo  <wingo@pobox.com>
1361
1362         * pkgconfig/gstreamer-base.pc.in:
1363         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
1364
1365         * pkgconfig/Makefile.am:
1366         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
1367
1368 2005-04-04  Wim Taymans  <wim@fluendo.com>
1369
1370         * gst/base/Makefile.am:
1371         * gst/base/README:
1372         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1373         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1374         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1375         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
1376         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1377         (gst_basesrc_base_init), (gst_basesrc_class_init),
1378         (gst_basesrc_init), (gst_basesrc_get_formats),
1379         (gst_basesrc_get_query_types), (gst_basesrc_query),
1380         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
1381         (gst_basesrc_set_property), (gst_basesrc_get_property),
1382         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
1383         (gst_basesrc_loop), (gst_basesrc_activate),
1384         (gst_basesrc_change_state):
1385         * gst/base/gstbasesrc.h:
1386         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1387         (gst_fakesrc_class_init), (gst_fakesrc_init),
1388         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
1389         (gst_fakesrc_get_property), (gst_fakesrc_create):
1390         * gst/elements/gstfakesrc.h:
1391         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
1392         (gst_filesrc_open_file), (gst_filesrc_loop),
1393         (gst_filesrc_activate), (filesrc_find_peek),
1394         (gst_filesrc_type_find):
1395         Made base source class, make fakesrc extend it.
1396         Add comments to basesink class.
1397         Some filesrc cleanup.
1398
1399 2005-03-31  David Schleef  <ds@schleef.org>
1400
1401         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
1402         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
1403         expected to link against libgstreamer.
1404         * gst/base/Makefile.am: link against libgstreamer
1405         * gst/elements/Makefile.am: same
1406
1407 2005-03-31  Andy Wingo  <wingo@pobox.com>
1408
1409         * tests/instantiate/Makefile.am:
1410         * tests/instantiate/caps.c: Add test to test speed of caps copy
1411         and free.
1412
1413         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
1414         GMemChunk to be fair.
1415
1416         * gst/gsttrashstack.h: Remove warning about using the fallback
1417         trash stack implementation, it's still faster than malloc.
1418
1419 2005-03-30  Andy Wingo  <wingo@pobox.com>
1420
1421         * tests/complexity.c: Add a copyright.
1422
1423 2005-03-31  Wim Taymans  <wim@fluendo.com>
1424
1425         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
1426         (gst_base_transform_class_init), (gst_base_transform_init),
1427         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1428         (gst_base_transform_get_property),
1429         (gst_base_transform_sink_activate),
1430         (gst_base_transform_src_activate),
1431         (gst_base_transform_change_state):
1432         * gst/base/gstbasetransform.h:
1433         * gst/elements/gstidentity.c: (gst_identity_class_init),
1434         (gst_identity_event), (gst_identity_check_perfect),
1435         (gst_identity_transform), (gst_identity_start),
1436         (gst_identity_stop):
1437         Added start/stop methods to transform base class so subclasses 
1438         don't need to deal with state changes even.
1439
1440 2005-03-31  Wim Taymans  <wim@fluendo.com>
1441
1442         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
1443         (gst_event_new_discontinuous), (gst_event_discont_get_value):
1444         * gst/gstevent.h:
1445         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1446         (gst_pad_pull_range):
1447         Added rate to the discont event to prepare for variable speed
1448         and reverse playback.
1449
1450 2005-03-29  David Schleef  <ds@schleef.org>
1451
1452         * configure.ac:
1453         * testsuite/trigger/Makefile.am:
1454         * testsuite/trigger/trigger.c: A little example program to show
1455         how trigger-based elements can work.
1456
1457 2005-03-29  Wim Taymans  <wim@fluendo.com>
1458
1459         * gst/base/Makefile.am:
1460         * gst/base/README:
1461         * gst/base/gstbasesink.c: (gst_basesink_get_type),
1462         (gst_basesink_base_init), (gst_basesink_class_init),
1463         (gst_basesink_pad_getcaps), (gst_basesink_init),
1464         (gst_basesink_activate), (gst_basesink_change_state):
1465         * gst/base/gstbasesink.h:
1466         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
1467         (gst_base_transform_base_init), (gst_base_transform_finalize),
1468         (gst_base_transform_class_init), (gst_base_transform_init),
1469         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
1470         (gst_base_transform_event), (gst_base_transform_getrange),
1471         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
1472         (gst_base_transform_set_property),
1473         (gst_base_transform_get_property),
1474         (gst_base_transform_sink_activate),
1475         (gst_base_transform_src_activate),
1476         (gst_base_transform_change_state):
1477         * gst/base/gstbasetransform.h:
1478         * gst/elements/gstidentity.c: (gst_identity_finalize),
1479         (gst_identity_class_init), (gst_identity_init),
1480         (gst_identity_event), (gst_identity_check_perfect),
1481         (gst_identity_transform), (gst_identity_set_property),
1482         (gst_identity_get_property), (gst_identity_change_state):
1483         * gst/elements/gstidentity.h:
1484         * gst/gstelement.c: (gst_element_get_state_func),
1485         (gst_element_lost_state), (gst_element_pads_activate):
1486         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1487         (gst_pad_check_pull_range), (gst_pad_pull_range):
1488         * gst/gstpad.h:
1489         Simplify pad activation.
1490         Added function to check if pull_range can be performed.
1491         Error out when pulling inactive or flushing pads.
1492         Removed const from refcounted types as it does not make sense.
1493         Simplify pad templates in basesink
1494         Added base class for simple 1-to-1 transforms.
1495         Make identity subclass the base transform.
1496
1497 2005-03-29  Andy Wingo  <wingo@pobox.com>
1498
1499         * docs/libs/gstreamer-libs-overrides.txt: 
1500         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
1501         really don't understand what's going on, but like whatever. I want
1502         green buildbot!
1503
1504         * docs/gst/Makefile.am:
1505         * docs/libs/Makefile.am: Dist the overrides files.
1506
1507         * check/Makefile.am (clean-local): Remove .libs directories.
1508
1509         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
1510         elements to EXTRA_DIST, so po/ files are happy.
1511
1512         * po/POTFILES.in: Er, remove it here.
1513
1514         * po/POTFILES: Remove gstspider.c.
1515
1516         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
1517
1518         * docs/libs/gstreamer-libs-docs.sgml: 
1519         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
1520         bytestream.
1521
1522         * tests/complexity.c (main): Set the length of the preroll queue
1523         on the sinks to prevent a lockup.
1524
1525         * libs/gst/dataprotocol/Makefile.am: 
1526         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
1527         the same as the one in check/gst-libs/gdp.c.
1528
1529         * po/, docs/gst/: Commit automatic changes to docs and po files.
1530
1531         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
1532         the versioned libgstbase.
1533
1534         * check/Makefile.am: Depend on an unversioned gst-register, seems
1535         to make autoconf happier.
1536
1537         * gst/base/Makefile.am: Make libgstbase a versioned lib.
1538
1539 2005-03-28  Wim Taymans  <wim@fluendo.com>
1540
1541         * configure.ac:
1542         * docs/design/part-gstelement.txt:
1543         * docs/design/part-negotiation.txt:
1544         * docs/design/part-preroll.txt:
1545         * docs/design/part-scheduling.txt:
1546         * docs/design/part-states.txt:
1547         * gst/Makefile.am:
1548         * gst/base/Makefile.am:
1549         * gst/base/README:
1550         * gst/base/gstbasesink.c: (gst_basesink_get_template),
1551         (gst_basesink_base_init), (gst_basesink_class_init),
1552         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1553         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1554         (gst_basesink_set_pad_functions),
1555         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
1556         (gst_basesink_set_property), (gst_basesink_get_property),
1557         (gst_base_sink_get_template), (gst_base_sink_get_caps),
1558         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
1559         (gst_basesink_preroll_queue_push),
1560         (gst_basesink_preroll_queue_empty),
1561         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
1562         (gst_basesink_event), (gst_basesink_get_times),
1563         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
1564         (gst_basesink_chain_unlocked), (gst_basesink_chain),
1565         (gst_basesink_loop), (gst_basesink_activate),
1566         (gst_basesink_change_state):
1567         * gst/base/gstbasesink.h:
1568         * gst/elements/Makefile.am:
1569         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
1570         (gst_fakesink_class_init), (gst_fakesink_init),
1571         (gst_fakesink_set_property), (gst_fakesink_get_property),
1572         (gst_fakesink_get_times), (gst_fakesink_event),
1573         (gst_fakesink_preroll), (gst_fakesink_render),
1574         (gst_fakesink_change_state):
1575         * gst/elements/gstfakesink.h:
1576         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1577         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
1578         * gst/gstelement.c: (gst_element_add_pad),
1579         (gst_element_get_state_func), (gst_element_abort_state),
1580         (gst_element_commit_state), (gst_element_lost_state),
1581         (gst_element_set_state), (gst_element_pads_activate):
1582         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
1583         * gst/gstpipeline.c: (gst_pipeline_send_event),
1584         (gst_pipeline_change_state):
1585         Added state change code.
1586         Added/updated docs.
1587         Added sink base class, make fakesink extend the base class.
1588         Small cleanups in GstPipeline.
1589
1590 2005-03-26  David Schleef  <ds@schleef.org>
1591
1592         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
1593         is broken and should be implemented in a different library.
1594         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
1595         * gst/gst.h: remove gstcpu.h
1596         * gst/gstcpu.c: remove
1597         * gst/gstcpu.h: remove
1598         * gst/Makefile.am.future: Remove this file.  It's ancient.
1599
1600 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1601
1602         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
1603         (gst_bin_send_event):
1604           Add default event/set_manager handlers. The set_manager handler
1605           takes care that the manager is distributed over kids that were
1606           already in the bin before the manager was set. The event handler
1607           is a utility virtual function that sends the event over all sinks,
1608           so that gst_element_send_event (bin, event); has the expected
1609           behaviour.
1610         * gst/gstpad.c: (gst_pad_event_default):
1611           Re-install default event handling for discontinuities, so that
1612           seeking works without requiring hacks in applications or extra
1613           code in sinks.
1614         * gst/gstpipeline.c: (gst_pipeline_class_init),
1615         (gst_pipeline_send_event):
1616           Half hack, half utility: set a pipeline to PAUSED for seek events,
1617           since that is the only way we can guarantee a/v sync. Means that
1618           you can do gst_element_seek (pipeline, method, pos); on a pipeline
1619           and it "just works".
1620
1621 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1622
1623         * gst/gstpipeline.c: (gst_pipeline_use_clock):
1624           Lock/unlock mismatch.
1625
1626 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
1627
1628         * docs/faq/gst-uninstalled:
1629           add gst-plugins-base
1630         * docs/gst/Makefile.am:
1631           don't error out until docs are fixed
1632         * docs/gst/gstreamer.types:
1633           remove thread
1634
1635 2005-03-22  Wim Taymans  <wim@fluendo.com>
1636
1637         * check/Makefile.am:
1638         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
1639         * gst/gststructure.c: (gst_structure_set_valist),
1640         (gst_structure_copy_conditional):
1641         Activated more tests.
1642         Added message test.
1643         Added G_TYPE_POINTER to GstStructure.
1644         
1645
1646 2005-03-22  Wim Taymans  <wim@fluendo.com>
1647
1648         * docs/design/part-TODO.txt:
1649         * docs/design/part-events.txt:
1650         * docs/design/part-gstbin.txt:
1651         * docs/design/part-gstbus.txt:
1652         * docs/design/part-gstpipeline.txt:
1653         * docs/design/part-messages.txt:
1654         * gst/gstbus.c:
1655         * gst/gstmessage.c:
1656         Docs updates
1657
1658 2005-03-21  Wim Taymans  <wim@fluendo.com>
1659
1660         * gst/gstbus.c: (gst_bus_post):
1661         Fix copy-and-paste error.
1662
1663 2005-03-21  Wim Taymans  <wim@fluendo.com>
1664
1665         * check/Makefile.am:
1666         * gst/Makefile.am:
1667         * gst/elements/Makefile.am:
1668         * gst/elements/gstelements.c:
1669         * gst/elements/gstfakesink.c: (gst_fakesink_init),
1670         (gst_fakesink_event), (gst_fakesink_chain):
1671         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1672         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
1673         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
1674         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
1675         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
1676         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
1677         (gst_fakesrc_loop), (gst_fakesrc_activate),
1678         (gst_fakesrc_change_state):
1679         * gst/elements/gstfakesrc.h:
1680         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
1681         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
1682         (gst_filesrc_open_file), (gst_filesrc_loop),
1683         (gst_filesrc_activate), (gst_filesrc_change_state),
1684         (filesrc_find_peek), (filesrc_find_suggest),
1685         (gst_filesrc_type_find):
1686         * gst/elements/gstidentity.c: (gst_identity_finalize),
1687         (gst_identity_class_init), (gst_identity_init),
1688         (gst_identity_proxy_getcaps), (identity_queue_push),
1689         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
1690         (gst_identity_getrange), (gst_identity_chain),
1691         (gst_identity_sink_loop), (gst_identity_src_loop),
1692         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
1693         (gst_identity_set_property), (gst_identity_get_property),
1694         (gst_identity_change_state):
1695         * gst/elements/gstidentity.h:
1696         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
1697         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
1698         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
1699         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
1700         (gst_tee_sink_activate):
1701         * gst/elements/gsttee.h:
1702         * gst/gst.c: (gst_register_core_elements), (init_post):
1703         * gst/gst.h:
1704         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
1705         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
1706         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
1707         (gst_bin_change_state):
1708         * gst/gstbin.h:
1709         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
1710         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
1711         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
1712         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
1713         (gst_bus_set_sync_handler), (gst_bus_create_watch),
1714         (bus_watch_callback), (bus_watch_destroy),
1715         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
1716         (poll_timeout), (gst_bus_poll):
1717         * gst/gstbus.h:
1718         * gst/gstcaps.h:
1719         * gst/gstdata.h:
1720         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
1721         (gst_element_post_message), (gst_element_message_full),
1722         (gst_element_get_state_func), (gst_element_get_state),
1723         (gst_element_abort_state), (gst_element_commit_state),
1724         (gst_element_lost_state), (gst_element_set_state),
1725         (gst_element_pads_activate), (gst_element_change_state),
1726         (gst_element_dispose), (gst_element_set_manager_func),
1727         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
1728         (gst_element_set_manager), (gst_element_get_manager),
1729         (gst_element_set_bus), (gst_element_get_bus),
1730         (gst_element_set_scheduler), (gst_element_get_scheduler):
1731         * gst/gstelement.h:
1732         * gst/gstevent.c: (gst_event_new_segment_seek),
1733         (gst_event_new_flush):
1734         * gst/gstevent.h:
1735         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
1736         (_gst_message_free), (gst_message_get_type), (gst_message_new),
1737         (gst_message_new_eos), (gst_message_new_error),
1738         (gst_message_new_warning), (gst_message_new_tag),
1739         (gst_message_new_state_changed), (gst_message_new_application),
1740         (gst_message_get_structure), (gst_message_parse_tag),
1741         (gst_message_parse_state_changed), (gst_message_parse_error),
1742         (gst_message_parse_warning):
1743         * gst/gstmessage.h:
1744         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
1745         (gst_real_pad_set_property), (gst_pad_set_active),
1746         (gst_pad_is_active), (gst_pad_set_blocked_async),
1747         (gst_pad_set_blocked), (gst_pad_is_blocked),
1748         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
1749         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
1750         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
1751         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
1752         (gst_pad_link_filtered), (gst_pad_relink_filtered),
1753         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
1754         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
1755         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
1756         (gst_pad_set_caps), (gst_pad_configure_sink),
1757         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
1758         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
1759         (gst_real_pad_dispose), (gst_real_pad_finalize),
1760         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
1761         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1762         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
1763         * gst/gstpad.h:
1764         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
1765         (pipeline_bus_handler), (gst_pipeline_change_state),
1766         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
1767         * gst/gstpipeline.h:
1768         * gst/gstprobe.h:
1769         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
1770         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
1771         (gst_queue_link_src), (gst_queue_bufferalloc),
1772         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
1773         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
1774         (gst_queue_loop), (gst_queue_handle_src_event),
1775         (gst_queue_handle_src_query), (gst_queue_src_activate),
1776         (gst_queue_change_state):
1777         * gst/gstqueue.h:
1778         * gst/gstscheduler.c: (gst_scheduler_init),
1779         (gst_scheduler_dispose), (gst_scheduler_create_task),
1780         (gst_scheduler_factory_create):
1781         * gst/gstscheduler.h:
1782         * gst/gststructure.c: (gst_structure_get_type),
1783         (gst_structure_copy_conditional):
1784         * gst/gststructure.h:
1785         * gst/gsttaginterface.h:
1786         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
1787         (gst_task_init), (gst_task_dispose), (gst_task_create),
1788         (gst_task_get_state), (gst_task_start), (gst_task_stop),
1789         (gst_task_pause):
1790         * gst/gsttask.h:
1791         * gst/gstthread.c:
1792         * gst/gstthread.h:
1793         * gst/gsttypes.h:
1794         * gst/schedulers/Makefile.am:
1795         * gst/schedulers/cothreads_compat.h:
1796         * gst/schedulers/entryscheduler.c:
1797         * gst/schedulers/faircothreads.c:
1798         * gst/schedulers/faircothreads.h:
1799         * gst/schedulers/fairscheduler.c:
1800         * gst/schedulers/gstbasicscheduler.c:
1801         * gst/schedulers/gstoptimalscheduler.c:
1802         * gst/schedulers/gthread-cothreads.h:
1803         * gst/schedulers/threadscheduler.c:
1804         (gst_thread_scheduler_task_get_type),
1805         (gst_thread_scheduler_task_class_init),
1806         (gst_thread_scheduler_task_init),
1807         (gst_thread_scheduler_task_start),
1808         (gst_thread_scheduler_task_stop),
1809         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
1810         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
1811         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
1812         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
1813         (plugin_init):
1814         * libs/gst/Makefile.am:
1815         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
1816         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
1817         (gst_file_pad_parent_set):
1818         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
1819         (gst_dp_event_from_packet):
1820         * tests/complexity.c: (main):
1821         * tests/mass_elements.c: (main):
1822         * testsuite/states/locked.c: (message_received), (main):
1823         * testsuite/states/parent.c: (main):
1824         * tools/gst-inspect.c: (print_element_flag_info),
1825         (print_implementation_info), (print_pad_info):
1826         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
1827         (main):
1828         * tools/gst-md5sum.c: (event_loop), (main):
1829         * tools/gst-typefind.c: (main):
1830         * tools/gst-xmlinspect.c: (print_element_info):
1831         Next big merge.
1832         Added GstBus for mainloop integration.
1833         Added GstMessage for sending notifications on the bus.
1834         Added GstTask as an abstraction for pipeline entry points.
1835         Removed GstThread.
1836         Removed Schedulers.
1837         Simplified GstQueue for multithreaded core.
1838         Made _link threadsafe, removed old capsnego.
1839         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
1840         Added pad blocking functions.
1841         Reworked scheduling functions in GstPad to prepare for
1842         scheduling updates soon.
1843         Moved events out of data stream.
1844         Simplified GstEvent types.
1845         Added return values to push/pull.
1846         Removed clocking from GstElement.
1847         Added prototypes for state change function for next merge.
1848         Removed iterate from bins and state change management.
1849         Fixed some elements, disabled others for now.
1850         Fixed -inspect and -launch.
1851         Added check for GstBus.
1852
1853 2005-03-10  Wim Taymans  <wim@fluendo.com>
1854
1855         * docs/design/part-MT-refcounting.txt:
1856         * docs/design/part-clocks.txt:
1857         * docs/design/part-gstelement.txt:
1858         * docs/design/part-gstobject.txt:
1859         * docs/design/part-standards.txt:
1860         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
1861         (gst_bin_remove_func), (gst_bin_remove):
1862         * gst/gstbin.h:
1863         * gst/gstbuffer.c:
1864         * gst/gstcaps.h:
1865         * testsuite/clock/clock1.c: (main):
1866         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
1867         (main):
1868         * testsuite/dlopen/loadgst.c: (do_test):
1869         * testsuite/refcounting/bin.c: (add_remove_test1),
1870         (add_remove_test2), (main):
1871         * testsuite/refcounting/element.c: (main):
1872         * testsuite/refcounting/element_pad.c: (main):
1873         * testsuite/refcounting/pad.c: (main):
1874         * tools/gst-launch.c: (sigint_handler_sighandler):
1875         * tools/gst-typefind.c: (main):
1876         Doc updates.
1877         Added doc about clock.
1878         removed gst_bin_iterate_recurse_up(), marked methods
1879         for removal.
1880         Fix more testsuites.
1881
1882 2005-03-09  Wim Taymans  <wim@fluendo.com>
1883
1884         * gst/gstpad.c: (gst_pad_get_direction),
1885         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
1886         (gst_pad_collect_valist):
1887         * testsuite/bins/interface.c: (main):
1888         * testsuite/caps/audioscale.c: (test_caps):
1889         * testsuite/caps/caps.c: (test1), (test2), (test3):
1890         * testsuite/caps/deserialize.c: (main):
1891         * testsuite/caps/enumcaps.c: (main):
1892         * testsuite/caps/filtercaps.c: (main):
1893         * testsuite/caps/intersect2.c: (main):
1894         * testsuite/caps/random.c: (main):
1895         * testsuite/caps/renegotiate.c: (my_fixate), (main):
1896         * testsuite/caps/sets.c: (check_caps):
1897         * testsuite/caps/simplify.c: (check_caps), (main):
1898         * testsuite/caps/subtract.c: (check_caps):
1899         Fix _pad_get_direction wrt ghostpads.
1900         Fix caps testsuite.
1901
1902 2005-03-09  Wim Taymans  <wim@fluendo.com>
1903
1904         * check/Makefile.am:
1905         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
1906         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
1907         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
1908         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
1909         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
1910         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
1911         (gst_bin_remove), (gst_bin_iterate_recurse_up),
1912         (bin_element_is_sink), (gst_bin_iterate_sinks),
1913         (gst_bin_iterate_all_by_interface):
1914         * gst/gstbin.h:
1915         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
1916         (gst_element_change_state), (gst_element_dispose),
1917         (gst_element_finalize), (gst_element_set_loop_function):
1918         * gst/gstelement.h:
1919         * gst/gstiterator.c: (find_custom_fold_func):
1920         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
1921         (gst_pad_collectv), (gst_pad_collect_valist),
1922         (gst_pad_template_new):
1923         * gst/gstpipeline.c: (gst_pipeline_class_init),
1924         (gst_pipeline_dispose), (gst_pipeline_set_property),
1925         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
1926         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
1927         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
1928         * gst/gstutils.h:
1929         * gst/schedulers/entryscheduler.c:
1930         * gst/schedulers/gstbasicscheduler.c:
1931         (gst_basic_scheduler_cothreaded_chain),
1932         (gst_basic_scheduler_chain_add_element):
1933         * testsuite/bins/interface.c: (main):
1934         Added GstBin test.
1935         Added GstSystemClock test.
1936         Implemented clock distribution code in GstBin.
1937         Implemented iterate sinks method for future use.
1938         Rearranged gstelement.h
1939         Fix GstIterator comparison bug.
1940         Moved some code to GstPipeline, mostly clocking related.
1941
1942 2005-03-09  Wim Taymans  <wim@fluendo.com>
1943
1944         * configure.ac:
1945         * gst/gst_private.h:
1946         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
1947         (gst_bin_remove_func), (gst_bin_remove),
1948         (gst_bin_get_by_name_recurse_up):
1949         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
1950         (gst_clock_id_compare_func), (gst_clock_id_wait),
1951         (gst_clock_id_wait_async), (gst_clock_init),
1952         (gst_clock_adjust_unlocked), (gst_clock_get_time):
1953         * gst/gstelement.h:
1954         * gst/gstinfo.c: (_gst_debug_init):
1955         * gst/gstobject.h:
1956         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
1957         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
1958         * gst/gstpad.h:
1959         Bump version number, we're now 0.9.0
1960         Add future debugging category.
1961         Fix NULL _unref() in _get_by_name_recurse_up
1962         Rearrange gstpad.h.
1963         Update some docs.
1964
1965 2005-03-08  Wim Taymans  <wim@fluendo.com>
1966
1967         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
1968         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
1969         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1970         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
1971         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
1972         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
1973         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
1974         * gst/elements/gstidentity.c: (gst_identity_class_init):
1975         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
1976         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
1977         * gst/elements/gstshaper.c: (gst_shaper_class_init):
1978         * gst/elements/gststatistics.c: (gst_statistics_class_init):
1979         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
1980         (gst_tee_link):
1981         * gst/gstelement.c: (gst_element_class_init),
1982         (gst_element_base_class_init), (gst_element_init),
1983         (gst_element_get_random_pad), (gst_element_wait_state_change),
1984         (gst_element_change_state), (gst_element_dispose),
1985         (gst_element_finalize), (gst_element_set_loop_function):
1986         * gst/gstelement.h:
1987         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
1988         * gst/gstthread.c: (gst_thread_class_init),
1989         (gst_thread_release_children_locks), (gst_thread_change_state):
1990         * gst/schedulers/gstbasicscheduler.c:
1991         (gst_basic_scheduler_loopfunc_wrapper),
1992         (gst_basic_scheduler_chain_wrapper),
1993         (gst_basic_scheduler_src_wrapper),
1994         (gst_basic_scheduler_remove_element):
1995         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
1996         Remove threadsafe properties. Fix elements because GObject
1997         complains when installing a property before declaring a
1998         set/get_property handler.
1999         Rearrange gstelement.h file, use STATE macros for state locks.
2000         Free mutexes in the finalize method instead of dispose.
2001
2002 2005-03-08  Wim Taymans  <wim@fluendo.com>
2003
2004         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2005         * gst/gstthread.c: (gst_thread_release_children_locks):
2006         Added parentage check.
2007         Fix build og GstThread again.
2008
2009 2005-03-08  Wim Taymans  <wim@fluendo.com>
2010
2011         * docs/design/part-MT-refcounting.txt:
2012         * docs/design/part-conventions.txt:
2013         * docs/design/part-gstobject.txt:
2014         * docs/design/part-relations.txt:
2015         * docs/design/part-standards.txt:
2016         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2017         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2018         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2019         (gst_bin_iterate_all_by_interface):
2020         * gst/gstbuffer.h:
2021         * gst/gstclock.h:
2022         * gst/gstelement.c: (gst_element_class_init),
2023         (gst_element_change_state), (gst_element_set_loop_function):
2024         * gst/gstelement.h:
2025         * gst/gstiterator.c:
2026         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2027         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2028         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2029         (gst_object_set_parent), (gst_object_unparent),
2030         (gst_object_check_uniqueness):
2031         * gst/gstobject.h:
2032         Docs updates, clean up some headers.
2033
2034 2005-03-07  Wim Taymans  <wim@fluendo.com>
2035
2036         * check/.cvsignore:
2037         * check/Makefile.am:
2038         * check/gst-libs/.cvsignore:
2039         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2040         * check/gst/.cvsignore:
2041         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2042         (START_TEST), (gstbus_suite), (main):
2043         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2044         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2045         (gst_data_suite), (main):
2046         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2047         (add_fold_func), (gstiterator_suite), (main):
2048         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2049         (thread_name_object), (thread_name_object_default),
2050         (gst_object_name_compare), (gst_object_suite), (main):
2051         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2052         (gst_pad_suite), (main):
2053         * check/gstcheck.c: (gst_check_log_message_func),
2054         (gst_check_log_critical_func), (gst_check_init):
2055         * check/gstcheck.h:
2056         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2057         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2058         Added checks.
2059
2060 2005-03-07  Wim Taymans  <wim@fluendo.com>
2061
2062         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2063         (gst_list_iterator_next), (gst_list_iterator_resync),
2064         (gst_list_iterator_free), (gst_iterator_new_list),
2065         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2066         (gst_iterator_free), (gst_iterator_push), (filter_next),
2067         (filter_resync), (filter_uninit), (filter_free),
2068         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2069         (gst_iterator_foreach), (find_custom_fold_func),
2070         (gst_iterator_find_custom):
2071         * gst/gstiterator.h:
2072         Added missing files.
2073
2074 2005-03-07  Wim Taymans  <wim@fluendo.com>
2075
2076         * Makefile.am:
2077         * configure.ac:
2078         * docs/design/part-MT-refcounting.txt:
2079         * docs/design/part-conventions.txt:
2080         * docs/design/part-gstobject.txt:
2081         * docs/design/part-relations.txt:
2082         * examples/mixer/mixer.c: (main):
2083         * examples/thread/thread.c: (eos), (main):
2084         * gst/Makefile.am:
2085         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2086         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2087         (gst_spider_plug_from_srcpad):
2088         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2089         (gst_spider_identity_change_state),
2090         (gst_spider_identity_sink_loop_type_finding):
2091         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2092         * gst/elements/gstidentity.c: (gst_identity_init):
2093         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2094         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2095         * gst/elements/gsttypefindelement.c: (free_entry):
2096         * gst/gst.c:
2097         * gst/gst.h:
2098         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2099         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2100         (gst_bin_set_index), (gst_bin_set_element_sched),
2101         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2102         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2103         (gst_bin_iterate_elements), (iterate_child_recurse),
2104         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2105         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2106         (compare_interface), (gst_bin_get_by_interface),
2107         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2108         * gst/gstbin.h:
2109         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2110         (gst_buffer_default_free), (gst_buffer_default_copy),
2111         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2112         (gst_buffer_create_sub):
2113         * gst/gstbuffer.h:
2114         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2115         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2116         (gst_caps_unref), (gst_static_caps_get),
2117         (gst_caps_remove_and_get_structure), (gst_caps_append),
2118         (gst_caps_append_structure), (gst_caps_remove_structure),
2119         (gst_caps_copy_nth), (gst_caps_set_simple),
2120         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2121         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2122         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2123         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2124         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2125         (gst_caps_structure_figure_out_union),
2126         (gst_caps_switch_structures), (gst_caps_do_simplify),
2127         (gst_caps_replace), (gst_caps_from_string),
2128         (gst_caps_copy_conditional):
2129         * gst/gstcaps.h:
2130         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2131         (_gst_clock_id_free), (gst_clock_id_unref),
2132         (gst_clock_id_compare_func), (gst_clock_id_wait),
2133         (gst_clock_id_wait_async), (gst_clock_class_init),
2134         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2135         (gst_clock_get_time), (gst_clock_set_time_adjust),
2136         (gst_clock_set_property), (gst_clock_get_property):
2137         * gst/gstclock.h:
2138         * gst/gstcompat.h:
2139         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2140         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2141         * gst/gstdata.h:
2142         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2143         (gst_element_requires_clock), (gst_element_provides_clock),
2144         (gst_element_set_clock), (gst_element_clock_wait),
2145         (gst_element_wait), (gst_element_set_time_delay),
2146         (gst_element_is_indexable), (gst_element_add_pad),
2147         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2148         (pad_compare_name), (gst_element_get_static_pad),
2149         (gst_element_request_pad), (gst_element_get_request_pad),
2150         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2151         (gst_element_class_get_pad_template_list),
2152         (gst_element_class_get_pad_template), (gst_element_error_func),
2153         (gst_element_get_random_pad), (gst_element_get_event_masks),
2154         (gst_element_send_event), (gst_element_seek),
2155         (gst_element_get_query_types), (gst_element_query),
2156         (gst_element_get_formats), (gst_element_convert),
2157         (gst_element_is_locked_state), (gst_element_set_locked_state),
2158         (gst_element_sync_state_with_parent), (gst_element_change_state),
2159         (gst_element_finalize), (gst_element_yield),
2160         (gst_element_interrupt), (gst_element_set_scheduler),
2161         (gst_element_get_scheduler), (gst_element_set_loop_function):
2162         * gst/gstelement.h:
2163         * gst/gstevent.h:
2164         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2165         (gst_format_get_by_nick), (gst_format_get_details),
2166         (gst_format_iterate_definitions):
2167         * gst/gstformat.h:
2168         * gst/gstindex.c: (gst_index_gtype_resolver):
2169         * gst/gstinfo.c:
2170         * gst/gstinfo.h:
2171         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2172         (gst_mem_chunk_free):
2173         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2174         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2175         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2176         (gst_object_dispatch_properties_changed),
2177         (gst_object_set_name_default), (gst_object_set_name),
2178         (gst_object_get_name), (gst_object_set_name_prefix),
2179         (gst_object_get_name_prefix), (gst_object_set_parent),
2180         (gst_object_get_parent), (gst_object_unparent),
2181         (gst_object_check_uniqueness), (gst_object_save_thyself),
2182         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2183         (gst_object_set_property), (gst_object_get_property),
2184         (gst_object_get_path_string):
2185         * gst/gstobject.h:
2186         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2187         (gst_real_pad_init), (gst_real_pad_get_property),
2188         (gst_pad_custom_new), (gst_pad_get_direction),
2189         (gst_pad_set_active), (gst_pad_is_active),
2190         (gst_pad_set_event_function), (gst_pad_is_linked),
2191         (gst_pad_link_free), (gst_pad_link_intersect),
2192         (gst_pad_link_fixate), (gst_pad_set_caps),
2193         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2194         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2195         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2196         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2197         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2198         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2199         (gst_pad_realize), (gst_pad_get_allowed_caps),
2200         (gst_real_pad_dispose), (gst_real_pad_finalize),
2201         (gst_pad_collectv), (gst_pad_collect_valist),
2202         (gst_pad_template_dispose), (gst_pad_template_new),
2203         (gst_pad_get_internal_links):
2204         * gst/gstpad.h:
2205         * gst/gstpipeline.c: (gst_pipeline_dispose),
2206         (gst_pipeline_change_state):
2207         * gst/gstpipeline.h:
2208         * gst/gstplugin.c:
2209         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2210         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2211         * gst/gstpluginfeature.h:
2212         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2213         * gst/gstquery.c: (_gst_query_type_initialize),
2214         (gst_query_type_register), (gst_query_type_get_by_nick),
2215         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2216         * gst/gstquery.h:
2217         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2218         * gst/gstscheduler.c: (gst_scheduler_add_element),
2219         (gst_scheduler_factory_create):
2220         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2221         (gst_structure_free), (gst_structure_set_name),
2222         (gst_structure_id_set_value), (gst_structure_set_value),
2223         (gst_structure_set_valist), (gst_structure_remove_field),
2224         (gst_structure_remove_fields),
2225         (gst_structure_remove_fields_valist),
2226         (gst_structure_remove_all_fields), (gst_structure_foreach),
2227         (gst_structure_map_in_place),
2228         (gst_caps_structure_fixate_field_nearest_int),
2229         (gst_caps_structure_fixate_field_nearest_double):
2230         * gst/gststructure.h:
2231         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2232         (gst_system_clock_init), (gst_system_clock_dispose),
2233         (gst_system_clock_async_thread),
2234         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2235         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2236         * gst/gstsystemclock.h:
2237         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2238         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2239         * gst/gsttaginterface.c:
2240         * gst/gstthread.c: (gst_thread_dispose),
2241         (gst_thread_release_children_locks), (gst_thread_change_state),
2242         (gst_thread_main_loop):
2243         * gst/gsttrashstack.h:
2244         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2245         * gst/gsttypes.h:
2246         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2247         (gst_element_request_pad), (gst_element_get_pad_from_template),
2248         (gst_element_request_compatible_pad),
2249         (gst_element_get_compatible_pad_filtered),
2250         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2251         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2252         (gst_element_link_many), (gst_element_link),
2253         (gst_element_link_pads), (gst_element_unlink_pads),
2254         (gst_element_unlink_many), (gst_element_unlink),
2255         (gst_pad_can_link_filtered), (gst_pad_can_link),
2256         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2257         (gst_object_default_error), (gst_bin_add_many),
2258         (gst_bin_remove_many), (gst_element_populate_std_props),
2259         (gst_element_class_install_std_props), (gst_buffer_merge),
2260         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2261         (link_fold_func), (gst_pad_proxy_setcaps):
2262         * gst/gstutils.h:
2263         * gst/gstvalue.c: (gst_value_deserialize_string):
2264         * gst/parse/grammar.y:
2265         * gst/schedulers/gstbasicscheduler.c:
2266         (gst_basic_scheduler_cothreaded_chain),
2267         (gst_basic_scheduler_chain_recursive_add),
2268         (gst_basic_scheduler_pad_link):
2269         * gst/schedulers/gstoptimalscheduler.c:
2270         (get_group_schedule_function),
2271         (gst_opt_scheduler_state_transition),
2272         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2273         * libs/gst/bytestream/bytestream.c:
2274         * libs/gst/dataprotocol/dataprotocol.c:
2275         (gst_dp_header_from_buffer):
2276         * po/nb.po:
2277         * po/ru.po:
2278         * tests/threadstate/threadstate2.c: (eos):
2279         * tools/gst-compprep.c: (main):
2280         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
2281         (print_pad_info), (print_children_info):
2282         * tools/gst-launch.c: (idle_func), (main):
2283         * tools/gst-md5sum.c: (idle_func), (main):
2284         * tools/gst-xmlinspect.c: (print_element_info):
2285         First THREADED backport attempt, focusing on adding locks and
2286         making sure the API is threadsafe. Needs more work. More docs
2287         follow this week.
2288
2289 2005-02-24  Andy Wingo  <wingo@pobox.com>
2290
2291         * tests/bench-complexity.scm:
2292         * tests/complexity.gnuplot: New files, good for running complexity
2293         benchmarks.
2294
2295         * tests/Makefile.am:
2296         * tests/complexity.c: New test, sets up N elements, at each level
2297         teeing into M streams per element. Eeeenteresting.
2298
2299         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
2300         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
2301         running bench-mass_elements.scm.
2302
2303         * tests/bench-mass_elements.scm: New script, runs mass_elements
2304         for various numbers of identities, outputting the results to a
2305         file. Requires guile 1.6. Just for testing.
2306
2307 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2308
2309         * gst/schedulers/fairscheduler.c:
2310           compile with debug disabled
2311
2312 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2313
2314         * configure.ac:
2315           hunting season on 0.9 is now OPEN
2316
2317 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2318
2319         * docs/libs/tmpl/gstcontrol.sgml:
2320         * docs/libs/tmpl/gstdparam.sgml:
2321         * docs/libs/tmpl/gstdplinint.sgml:
2322         * docs/libs/tmpl/gstdpman.sgml:
2323         * docs/libs/tmpl/gstdpsmooth.sgml:
2324         * docs/libs/tmpl/gstunitconvert.sgml:
2325           more docs for the state of dparams
2326
2327 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2328
2329         * gst/gstelementfactory.c: (gst_element_factory_create):
2330         * gst/gstobject.c: (gst_object_init),
2331         (gst_object_set_name_default), (gst_object_set_name):
2332           name objects by default, not in gst_element_factory_create. Allows
2333           using elements created with g_object_new. (fixes #167283)
2334
2335 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2336
2337         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
2338           make the time that debugging functions print relative to when
2339           gst_init was called
2340
2341 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
2342
2343         * gst/gsttaginterface.c:
2344           Fix inline docs: tag setter vararg functions are NULL-terminated,
2345           GST_TAG_INVALID doesn't exist any more.
2346
2347 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2348
2349         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
2350         Allocate the 1 byte more memory that was forgotten!!!!!
2351         fixes memory corruption on 64bit platforms
2352
2353 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
2354
2355         * docs/pwg/building-pads.xml:
2356         * docs/pwg/intro-basics.xml:
2357       fixed a few typos, relabeled introductionary list of types
2358         * docs/random/ensonic/dparams.txt:
2359       more notes abut dparam changes
2360         * libs/gst/control/dparam.c: (gst_dparam_attach):
2361         * libs/gst/control/dparammanager.c:
2362         * libs/gst/control/dparammanager.h:
2363       - many comments and notes on dparam implementation
2364       - new dparams are were not initialized to the default value
2365         from param spec
2366
2367 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2368
2369         submitted by: Peter Astakhov
2370
2371         * po/LINGUAS:
2372         * po/ru.po:
2373           adding Russian translation
2374
2375 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2376
2377         * configure.ac:
2378         * docs/gst/Makefile.am:
2379         * docs/libs/Makefile.am:
2380           make sure popt is added to gtk-doc flags.  Fixes #147782.
2381
2382 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
2383
2384         * docs/faq/using.xml:
2385           Fix typo in FAQ (artssink => artsdsink)
2386
2387 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2388
2389         * tools/gst-launch.1.in:
2390           Fix typo (#166699).
2391
2392 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
2393
2394         * docs/faq/using.xml:
2395           Add -v argument to fakesrc/fakesink gst-launch line,
2396           so that the promised output will actually show up.
2397
2398 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2399
2400         * gst/gstthread.c: (gst_thread_change_state):
2401           Implement state-change error handling (#166073).
2402
2403 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2404
2405         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2406           Release interrupt after handling (#166250).
2407
2408 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2409
2410         * configure.ac:
2411           back to HEAD
2412
2413 === release 0.8.9 ===
2414
2415 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2416
2417         * NEWS:
2418         * RELEASE:
2419         * configure.ac:
2420           releasing 0.8.9, "Like Eating Glass"
2421
2422 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2423
2424         submitted by: Clytie Siddall
2425
2426         * po/vi.po: Added Vietnamese translation
2427
2428 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2429
2430         patch by: Tim Philipp-Müller
2431
2432         * configure.ac:
2433         * gst/gstpad.c:
2434           unref data when probe function returns FALSE.  Fixes #166362
2435
2436 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2437
2438         * gst/gst.c: (gst_init_get_popt_table):
2439           Fix typo (#166269).
2440
2441 2005-02-04  Andy Wingo  <wingo@pobox.com>
2442
2443         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
2444         the debugging on whether the caps are compatible.
2445
2446 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2447
2448         * docs/manual/basics-elements.xml:
2449           Fix two typos.
2450
2451 2005-02-02  Wim Taymans  <wim@fluendo.com>
2452
2453         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
2454         (schedule_chain), (get_invalid_call), (chain_invalid_call),
2455         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
2456         Remove some FIXMEs after analysing and commenting why they
2457         are not issues.
2458
2459 2005-02-02  Wim Taymans  <wim@fluendo.com>
2460
2461         * gst/schedulers/gstoptimalscheduler.c:
2462         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
2463         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
2464         (get_invalid_call), (chain_invalid_call),
2465         (get_group_schedule_function), (loop_group_schedule_function),
2466         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2467         (gst_opt_scheduler_state_transition),
2468         (gst_opt_scheduler_add_element),
2469         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
2470         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
2471         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
2472         (gst_opt_scheduler_show):
2473         Added lock to protect scheduler data structures.
2474
2475 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2476
2477         * testsuite/threads/threadi.c: (cb_data):
2478           Fix buglet in test.
2479
2480 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2481
2482         * testsuite/threads/Makefile.am:
2483         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
2484           On Wim's request, split the test in three separately-compiled
2485           tests that each test a very specific bug. Two of them still fail,
2486           will create bugs for those. threadi.c indicates why they fail.
2487
2488 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2489
2490         * gst/schedulers/gstoptimalscheduler.c:
2491         (get_group_schedule_function):
2492           Try to work with the threading mess that queue_link is.
2493
2494 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2495
2496         * gst/gstbin.c: (gst_bin_remove_func):
2497           Explicitely make an element release locks in a group when being
2498           remove from a bin.
2499         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2500           If there's no scheduler, always return immediately (similar to
2501           gst_element_interrupt).
2502
2503 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2504
2505         * gst/gstbin.c: (gst_bin_child_state_change_func):
2506           Remove a piece of code that could never be reached.
2507         * docs/gst/gstreamer-sections.txt:
2508         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
2509         (gst_pad_call_get_function):
2510         * gst/gstpad.h:
2511         * testsuite/pad/Makefile.am:
2512           Fix #150546, enable tests.
2513
2514 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2515
2516         * docs/pwg/advanced-types.xml:
2517           Fix description for buffer-frames=0.
2518         * docs/gst/tmpl/gstbin.sgml:
2519         * gst/gstbin.c: (gst_bin_child_state_change_func),
2520         (gst_bin_change_state), (gst_bin_change_state_norecurse):
2521         * gst/gstbin.h:
2522         * testsuite/threads/Makefile.am:
2523         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
2524         (cb_state), (cb_play), (main):
2525           Fix non-recursive state changes to *really* change the state
2526           of the object, and not just call parent_class->state_change.
2527           Fix a lot of lockups caused by this. Fixes #132775. Add test
2528           for the problem. Also enable test to show #142588 (fixed).
2529         * gst/gstthread.c: (gst_thread_change_state),
2530         (gst_thread_child_state_change):
2531           Don't exit the thread if we go to NULL and are inside thread
2532           context. Instead, return control to the main thread context
2533           and exit from there.
2534         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
2535           Don't unset virtual functions, since those may still be used.
2536           That's not necessarily correct, but suffices for now.
2537         * configure.ac:
2538         * testsuite/Makefile.am:
2539         * testsuite/pad/Makefile.am:
2540         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
2541         (gst_test_sink_base_init), (gst_test_sink_chain),
2542         (gst_test_sink_init), (main):
2543         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
2544         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
2545         (main):
2546         * testsuite/pad/link.c: (gst_test_element_class_init),
2547         (gst_test_element_base_init), (gst_test_src_get),
2548         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
2549         (gst_test_filter_loop), (gst_test_filter_init),
2550         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
2551         (cb_error), (main):
2552           Add tests to show #150546. Pass, but should fail (currently
2553           disabled from the testsuite).
2554         * gst/gstscheduler.c: (gst_scheduler_dispose):
2555           Dereference child schedulers on dispose (#94464).
2556         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
2557           Fix typo.
2558         * testsuite/threads/thread.c: (main):
2559           Add more debug.
2560
2561 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2562
2563         * gst/gstpad.c: (gst_pad_push):
2564           Oops, revert previous commit, broke testsuite...
2565
2566 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2567
2568         * gst/gstpad.c: (gst_pad_push):
2569           Add check that the pad on which the push is performed is not a
2570           get-based pad (#150546).
2571
2572 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2573
2574         * gst/elements/gsttypefindelement.c:
2575         (gst_type_find_element_handle_event):
2576           Fix buffer pushing if stream EOSes during typefinding.
2577
2578 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
2579
2580         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2581
2582         * gst/gstvalue.c: (gst_string_wrap):
2583           Allow NULL-strings as argument (#165365).
2584
2585 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
2586
2587         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2588
2589         * gst/schedulers/faircothreads.c:
2590         (gst_fair_scheduler_cothread_queue_show):
2591           Fix build without debug enabled.
2592
2593 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
2594
2595         * docs/gst/gstreamer-sections.txt:
2596         * docs/libs/gstreamer-libs-docs.sgml:
2597         * docs/libs/gstreamer-libs-sections.txt:
2598         * docs/libs/tmpl/gstcontrol.sgml:
2599         * docs/libs/tmpl/gstdparam.sgml:
2600         * docs/libs/tmpl/gstdplinint.sgml:
2601         * docs/libs/tmpl/gstdpman.sgml:
2602         * docs/libs/tmpl/gstdpsmooth.sgml:
2603         * docs/libs/tmpl/gstputbits.sgml:
2604         * docs/libs/tmpl/gstunitconvert.sgml:
2605         * libs/gst/control/dparam.c:
2606         * libs/gst/control/dparam.h:
2607         * libs/gst/control/dparammanager.c:
2608         (gst_dpman_add_required_dparam_callback),
2609         (gst_dpman_add_required_dparam_direct),
2610         (gst_dpman_add_required_dparam_array),
2611         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
2612         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
2613         (gst_dpman_get_manager)
2614           restructured DParam docs
2615
2616 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
2617
2618         * gst-element-check.m4:
2619           Only check for gst-inspect if we haven't already
2620           found it in previous element check runs
2621
2622 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
2623
2624         * docs/gst/Makefile.am:
2625         * docs/libs/Makefile.am:
2626           fixed install rules to treat style.css as optional
2627
2628 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
2629
2630         * docs/gst/Makefile.am:
2631         * docs/libs/Makefile.am:
2632           install style.css along with docs
2633         * docs/gst/tmpl/gstbin.sgml:
2634         * docs/gst/tmpl/gstclock.sgml:
2635         * docs/gst/tmpl/gstdata.sgml:
2636         * docs/gst/tmpl/gstelement.sgml:
2637         * gst/gstbin.h:
2638         * gst/gstelement.c: (gst_element_class_init):
2639         * gst/gstelement.h:
2640           fixing incomplete docs
2641
2642 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
2643
2644         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
2645           Don't unref seek event twice when fflush() fails
2646           
2647 2005-01-22  David Schleef  <ds@schleef.org>
2648
2649         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
2650
2651 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
2652
2653         * docs/gst/Makefile.am:
2654         * docs/libs/Makefile.am:
2655           added params for deprecation guards
2656         * gst/gst.c:
2657         * gst/gst.h:
2658         * gst/gsterror.c: (_gst_resource_errors_init),
2659         (_gst_stream_errors_init):
2660         * gst/gsterror.h:
2661           documented some more enums
2662
2663 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
2664         * gst/autoplug/gstspideridentity.c:
2665         Cosmetic fix - spider_find_peek should be static
2666         * gst/parse/parse.l:
2667         Applying fix for #164261
2668
2669 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
2670
2671         * docs/gst/gstreamer-sections.txt:
2672         * docs/gst/tmpl/gstplugin.sgml:
2673         * docs/libs/gstreamer-libs-sections.txt:
2674         * docs/libs/tmpl/gstcontrol.sgml:
2675         * gst/gstbuffer.h:
2676         * gst/gsttag.h:
2677         * gst/gstvalue.c:
2678           added docs for the TAG defines
2679
2680 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2681
2682         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2683           Only unref entry if there is an entry.
2684
2685 2005-01-17  Wim Taymans  <wim@fluendo.com>
2686
2687         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
2688         (remove_from_group), (schedule_group), (normalize_group),
2689         (gst_opt_scheduler_iterate):
2690         Also ref/unref decoupled elements before iterating the
2691         group since they are not added to the list of elements.
2692
2693 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2694
2695         * docs/manual/highlevel-components.xml:
2696           Add subtitle/streamselection as new features to playbin.
2697
2698 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2699
2700         * docs/manual/manual.xml:
2701           Re-enable dataaccess docs (oops).
2702
2703 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2704
2705         * docs/pwg/advanced-types.xml:
2706         * docs/random/mimetypes:
2707           Add documentation on libsndfile types (#163309), by Steve Baker
2708           <steve@stevebaker.org>.
2709         * gst/gstelement.c: (gst_element_release_request_pad):
2710           If an element has no explicit function, just remove the pad.
2711
2712 2005-01-17  Luca Ognibene  <luogni@tin.it>
2713
2714         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2715
2716         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
2717           Fix memleak (#163801).
2718
2719 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2720
2721         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
2722           I think this is actually more correct...
2723
2724 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2725
2726         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2727           Another workaround for memory access while destroyed in callback.
2728           Please, someone with refcount knowledge, have a look at this.
2729
2730 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
2731
2732         * docs/faq/faq.xml:
2733         * docs/faq/legal.xml:
2734           move the legal Q&A here
2735
2736 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2737
2738         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
2739         (gst_tee_request_new_pad):
2740           Fix negotiation.
2741
2742 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2743
2744         * docs/random/omega/caps2:
2745         * testsuite/caps/caps_strings:
2746           replace framerate aproximations by their real value
2747           (24000/1001, 30000/1001, 60000/1001)
2748           Partially fixes bug #164049
2749
2750 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2751
2752         * docs/gst/Makefile.am:
2753           don't fail on the stupid GstPoptOption
2754
2755 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
2756
2757         * gst/gstpad.h:
2758         * gst/gstprobe.c:
2759           allow probes to work on ghost pads by realizing the pad
2760           probe debugging
2761
2762 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2763
2764         * docs/gst/gstreamer-sections.txt:
2765         * docs/gst/tmpl/gstpad.sgml:
2766         * gst/gstpad.c: (gst_pad_set_active_recursive):
2767         * gst/gstpad.h:
2768           Add gst_pad_set_active_recursive().
2769
2770 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
2771
2772         * docs/random/release:
2773           updates
2774         * gst/gst_private.h:
2775         * gst/gstinfo.c:
2776         * gst/gstobject.c:
2777           move deep_notify logging to a new category
2778         * gst/gstprobe.c:
2779         * gst/gstprobe.h:
2780           add stuff so bindings can wrap probes
2781
2782 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2783
2784         * gst/gstplugin.c: (gst_plugin_load):
2785           Fix plugin loading if plugin/lib was already loaded. Fixes
2786           #163383
2787
2788 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
2789
2790         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2791
2792         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
2793           Protect plugin loading by a mutex so it's threadsafe. Fixes
2794           #163234.
2795
2796 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2797
2798         * gst/gstevent.c: (_gst_event_copy):
2799           Reference source object when copying events, since it'll be
2800           dereferenced on event dereferencing as well.
2801
2802 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2803
2804         * docs/gst/gstreamer-sections.txt:
2805         * docs/gst/tmpl/gstevent.sgml:
2806         * gst/gstevent.c: (gst_event_new_filler_stamped),
2807         (gst_event_filler_get_duration):
2808         * gst/gstevent.h:
2809           Add two new functions for filler events (which are used to
2810           synchronize streams if one of them is not having any data
2811           for a while) without interrupting the actual data-stream.
2812           Basically a no-op.
2813         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
2814         (gst_queue_link_sink), (gst_queue_link_src),
2815         (gst_queue_change_state):
2816           Allow for renegotiation while filled. Required for stream
2817           switching while playing.
2818
2819 2005-01-08  Benjamin Otte  <otte@gnome.org>
2820
2821         * gst/gstelement.c: (gst_element_link_many):
2822           fix up g_return_if_fail's
2823         * po/LINGUAS:
2824         * po/de.po:
2825           add German translation, that was somehow not included
2826
2827 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
2828
2829         * docs/random/mimetypes:
2830           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
2831           do not add them to riff-lib as they are not common
2832
2833 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2834
2835         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2836           Check for existence of probe after performing the probe before
2837           re-accessing it to prevent segfaults caused by removal of the
2838           probe in the callback.
2839
2840 2005-01-05  David Schleef  <ds@schleef.org>
2841
2842         * testsuite/registry/Makefile.am:
2843         * testsuite/registry/gst-print-formats.c:
2844         (print_pad_templates_info), (print_element_list),
2845         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
2846         (g_list_uniqify), (get_pad_templates_info),
2847         (get_element_mime_list), (print_mime_list), (main): A little
2848         program that looks through the registry to find elements of
2849         a given type.  Not particularly interesting as a test, except
2850         that there's no other test covering the same area.
2851
2852 2005-01-05  David Schleef  <ds@schleef.org>
2853
2854         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
2855         (fault_handler_sigaction), (fault_spin),
2856         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
2857         in signal.h-type signal handlers by not calling forbidden functions,
2858         including gst_element_set_state().
2859
2860 2005-01-05  David Schleef  <ds@schleef.org>
2861
2862         * gst/gstvalue.h: Mark _gst_reserved[] as private
2863
2864 2005-01-05  David Schleef  <ds@schleef.org>
2865
2866         * gst/gstvalue.c: Fix doc build problem.
2867
2868 2005-01-05  David Schleef  <ds@schleef.org>
2869
2870         * gst/gstvalue.c: Add some documentation
2871
2872 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
2873
2874         * docs/README:
2875           another shell oneliner for empty return value docs
2876         * gst/gstcaps.c:
2877         * gst/gstvalue.c:
2878         * libs/gst/control/dparam.c:
2879           more doc fixes (parameters and return values)
2880
2881 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
2882
2883         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2884
2885         * gst/gstregistry.h:
2886         * gst/registries/gstxmlregistry.c:
2887           Fix macro's for Mingw (fixes #162276).
2888
2889 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
2890
2891         * docs/README:
2892           quick shell oneliner to find undocumented members
2893         * docs/gst/tmpl/gstplugin.sgml:
2894         * docs/gst/tmpl/gstscheduler.sgml:
2895         * docs/gst/tmpl/gstthread.sgml:
2896           more enumtypes cleanup
2897         * gst/gsterror.h:
2898           activated documentation comments, now someone needs to document
2899           the enums :(
2900
2901 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2902
2903         * docs/manual/manual.xml:
2904           Add dataaccess part (doh!).
2905
2906 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2907
2908         * docs/manual/advanced-autoplugging.xml:
2909           Fix typo (intiate -> initiate).
2910
2911 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2912
2913         * docs/random/bbb/streamselection:
2914           Add some notes on how to handle multi-subtitle/-audio streams.
2915
2916 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
2917
2918         * docs/gst/gstreamer-docs.sgml:
2919         * docs/gst/gstreamer-sections.txt:
2920         * docs/gst/tmpl/gstenumtypes.sgml:
2921         * docs/gst/tmpl/gsterror.sgml:
2922         * docs/gst/tmpl/gstevent.sgml:
2923         * docs/gst/tmpl/gstpad.sgml:
2924         * docs/gst/tmpl/gstpadtemplate.sgml:
2925         * docs/gst/tmpl/gstthread.sgml:
2926           removed gstenumtypes section from docs and put all the enums into
2927           their sections
2928
2929 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
2930
2931         * gst/gstplugin.c:
2932           document gst_library_load a bit more (riff special case + return
2933           value if already loaded)
2934         * testsuite/bytestream/filepadsink.c:
2935           plugin name is 'gstbytestream', not 'bytestream'
2936
2937 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2938
2939         * docs/random/bbb/subtitles:
2940           Add some first mind rumblings on proper subtitle support.
2941
2942 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
2943
2944         * po/ca.po:
2945         * po/sv.po:
2946           updated translations
2947
2948 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2949
2950         * docs/manual/advanced-dataaccess.xml:
2951           Add section on how to use fakesrc/fakesink/identity in your
2952           application, plus section on how to embed plugins. Also mention
2953           probes.
2954         * docs/manual/appendix-checklist.xml:
2955         * docs/manual/appendix-debugging.xml:
2956         * docs/manual/appendix-gnome.xml:
2957         * docs/manual/appendix-integration.xml:
2958           Debug -> checklist, GNOME -> integration, add sections on Linux,
2959           KDE integration and add other things useful for application
2960           development.
2961         * docs/manual/manual.xml:
2962           Remove some fixmes, update some file pointers.
2963         * docs/pwg/appendix-checklist.xml:
2964           Fix typo.
2965         * docs/pwg/building-boiler.xml:
2966           Remove ugly header and add commented fixme.
2967         * docs/pwg/pwg.xml:
2968           Add fixme.
2969         * examples/manual/Makefile.am:
2970           Add example for added docs.
2971
2972 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2973
2974         * configure.ac:
2975           back to HEAD
2976
2977 === release 0.8.8 ===
2978
2979 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2980
2981         * NEWS:
2982         * RELEASE:
2983         * configure.ac:
2984           Releasing 0.8.8, "I'll Take Care Of You"
2985
2986 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2987
2988         * configure.ac:
2989           second prerelease
2990
2991 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2992
2993         patch by: Wim Taymans
2994
2995         * gst/gstbin.c:
2996           Fix for #159852 - make iterate emission threadsafe
2997
2998 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
2999
3000         * docs/faq/cvs.xml:
3001           notes about new fdo account request
3002
3003 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3004
3005         * docs/gst/gstreamer-docs.sgml:
3006         * docs/gst/tmpl/gstenumtypes.sgml:
3007         * docs/gst/tmpl/gstplugin.sgml:
3008         * docs/libs/gstreamer-libs-docs.sgml:
3009           Added missing short docs. Added ids for navigation.
3010
3011 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3012
3013         * docs/manual/advanced-autoplugging.xml:
3014         * docs/manual/advanced-schedulers.xml:
3015         * docs/manual/advanced-threads.xml:
3016           Rewrites. Remove cothreads, go a bit into opt specifically,
3017           document threads and their gotchas, and do some technical stuff
3018           on autoplugging plus add some working examples. Fixes #157395.
3019         * examples/manual/Makefile.am:
3020           Add typefind/autoplugger example (one that actually works).
3021           Remove queue example since it's a duplicate of the thread one.
3022
3023 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3024
3025         * gst/gstvalue.c: (gst_value_deserialize_string):
3026           use deprecated g_value_set_string_take_ownership to keep compatible
3027           with glib 2.2
3028
3029 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3030
3031         * gst/gstvalue.c: (gst_value_deserialize_string):
3032           revert last patch, only dom a g_utf8_validate now before accepting
3033           the string - caps parsing strips " from strings so we can't rely on
3034           them
3035         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3036           disable a test that tested the above and comment it
3037
3038 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3039
3040         Patch reviewed by David Schleef  <ds@schleef.org>
3041
3042         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3043         bug #153882)
3044         * win32/gstenumtypes.h: same
3045
3046 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3047
3048         * gst/gstpad.c: (gst_pad_query):
3049           Do query on realized pad, similar to how convert/send_event handle
3050           this. Also makes sense, since this pad belongs to the function to
3051           which this query will be sent. Fixes #158163.
3052
3053 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3054
3055         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3056
3057 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3058
3059         * docs/faq/general.xml: fix pipeline to actually work
3060
3061 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3062
3063         * gst/gstvalue.c: (gst_value_deserialize_string):
3064           check that a simple string that gets deserialized does not contain
3065           invalid characters
3066         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3067           remove a test that tested a wring behaviour
3068
3069 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3070
3071         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3072
3073         * docs/manual/intro-motivation.xml:
3074           Fix typos.
3075
3076 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3077
3078         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3079
3080         * docs/gst/tmpl/gstprobe.sgml:
3081           Fix documentation of probe callback - it is supposed to return
3082           FALSE, not TRUE, to remove data from the stream (#159087).
3083
3084 2004-12-16  Daniel Gazard  <dany42@free.fr>
3085
3086         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3087
3088         * gst/gstelementfactory.c: (gst_element_factory_create):
3089           Fix compile failure if compiling without libxml2 support (#149936).
3090
3091 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3092
3093         * docs/manual/advanced-autoplugging.xml:
3094         * docs/manual/highlevel-components.xml:
3095           Move spider from autoplugging to components. Autoplugging is for
3096           internals, not for solutions. ;-).
3097
3098 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3099
3100         * docs/random/ds/0.9-suggested-changes:
3101           Make note on device/location/uri property names.
3102
3103 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3104
3105         * docs/manual/advanced-autoplugging.xml:
3106         * docs/manual/advanced-clocks.xml:
3107         * docs/manual/advanced-interfaces.xml:
3108         * docs/manual/advanced-metadata.xml:
3109         * docs/manual/advanced-position.xml:
3110         * docs/manual/advanced-schedulers.xml:
3111         * docs/manual/advanced-threads.xml:
3112         * docs/manual/appendix-gnome.xml:
3113         * docs/manual/appendix-programs.xml:
3114         * docs/manual/appendix-quotes.xml:
3115         * docs/manual/autoplugging.xml:
3116         * docs/manual/basics-bins.xml:
3117         * docs/manual/basics-data.xml:
3118         * docs/manual/basics-elements.xml:
3119         * docs/manual/basics-helloworld.xml:
3120         * docs/manual/basics-init.xml:
3121         * docs/manual/basics-pads.xml:
3122         * docs/manual/basics-plugins.xml:
3123         * docs/manual/bins-api.xml:
3124         * docs/manual/bins.xml:
3125         * docs/manual/buffers-api.xml:
3126         * docs/manual/buffers.xml:
3127         * docs/manual/clocks.xml:
3128         * docs/manual/components.xml:
3129         * docs/manual/cothreads.xml:
3130         * docs/manual/debugging.xml:
3131         * docs/manual/dparams-app.xml:
3132         * docs/manual/dynamic.xml:
3133         * docs/manual/elements-api.xml:
3134         * docs/manual/elements.xml:
3135         * docs/manual/factories.xml:
3136         * docs/manual/gnome.xml:
3137         * docs/manual/goals.xml:
3138         * docs/manual/helloworld.xml:
3139         * docs/manual/helloworld2.xml:
3140         * docs/manual/highlevel-components.xml:
3141         * docs/manual/highlevel-xml.xml:
3142         * docs/manual/init-api.xml:
3143         * docs/manual/intro-basics.xml:
3144         * docs/manual/intro-motivation.xml:
3145         * docs/manual/intro-preface.xml:
3146         * docs/manual/intro.xml:
3147         * docs/manual/links-api.xml:
3148         * docs/manual/links.xml:
3149         * docs/manual/manual.xml:
3150         * docs/manual/motivation.xml:
3151         * docs/manual/pads-api.xml:
3152         * docs/manual/pads.xml:
3153         * docs/manual/plugins-api.xml:
3154         * docs/manual/plugins.xml:
3155         * docs/manual/programs.xml:
3156         * docs/manual/queues.xml:
3157         * docs/manual/quotes.xml:
3158         * docs/manual/schedulers.xml:
3159         * docs/manual/states-api.xml:
3160         * docs/manual/states.xml:
3161         * docs/manual/threads.xml:
3162         * docs/manual/typedetection.xml:
3163         * docs/manual/win32.xml:
3164         * docs/manual/xml.xml:
3165           Try 2. This time, include a short preface as a "general
3166           introduction", also add code blocks around all code samples
3167           so they get compiled. We still need a way to tell readers
3168           the filename of the code sample. In some cases, don't show
3169           all code in the documentation, but do include it in the generated
3170           code. This allows for focussing on specific bits in the docs,
3171           while still having a full test application available.
3172         * examples/manual/Makefile.am:
3173           Fix up examples for new ADM. Add several of the new examples that
3174           were either added or were missing from the build system.
3175         * examples/manual/extract.pl:
3176           Allow nameless blocks.
3177
3178 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3179
3180         * docs/manual/elements-api.xml:
3181         * docs/manual/helloworld.xml:
3182         * examples/manual/extract.pl:
3183           fix last example.  Add example of adding code blocks that are not
3184           shown in docbook output.
3185
3186 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3187
3188         * docs/manual/dynamic.xml:
3189         * docs/manual/elements-api.xml:
3190         * docs/manual/gnome.xml:
3191         * docs/manual/helloworld2.xml:
3192         * docs/manual/init-api.xml:
3193         * docs/manual/queues.xml:
3194         * docs/manual/threads.xml:
3195         * docs/manual/xml.xml:
3196         * examples/manual/extract.pl:
3197           Make it possible to extract example code from separate blocks.
3198           Should make Ronald happy.
3199
3200 2004-12-15  Wim Taymans  <wim@fluendo.com>
3201
3202         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3203         (remove_from_group), (group_elements_set_visited),
3204         (normalize_group), (gst_opt_scheduler_iterate):
3205         Fix bug where a flag was not updated on a decoupled entry point 
3206         because we were just checking the group element list and decoupled
3207         elements are not in that list..
3208
3209 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3210
3211         * docs/manual/advanced-autoplugging.xml:
3212         * docs/manual/advanced-clocks.xml:
3213         * docs/manual/advanced-dparams.xml:
3214         * docs/manual/advanced-interfaces.xml:
3215         * docs/manual/advanced-metadata.xml:
3216         * docs/manual/advanced-position.xml:
3217         * docs/manual/advanced-schedulers.xml:
3218         * docs/manual/advanced-threads.xml:
3219         * docs/manual/appendix-debugging.xml:
3220         * docs/manual/appendix-gnome.xml:
3221         * docs/manual/appendix-programs.xml:
3222         * docs/manual/appendix-quotes.xml:
3223         * docs/manual/appendix-win32.xml:
3224         * docs/manual/autoplugging.xml:
3225         * docs/manual/basics-bins.xml:
3226         * docs/manual/basics-data.xml:
3227         * docs/manual/basics-elements.xml:
3228         * docs/manual/basics-helloworld.xml:
3229         * docs/manual/basics-init.xml:
3230         * docs/manual/basics-pads.xml:
3231         * docs/manual/basics-plugins.xml:
3232         * docs/manual/bins-api.xml:
3233         * docs/manual/bins.xml:
3234         * docs/manual/buffers-api.xml:
3235         * docs/manual/buffers.xml:
3236         * docs/manual/clocks.xml:
3237         * docs/manual/components.xml:
3238         * docs/manual/cothreads.xml:
3239         * docs/manual/debugging.xml:
3240         * docs/manual/dparams-app.xml:
3241         * docs/manual/dynamic.xml:
3242         * docs/manual/elements-api.xml:
3243         * docs/manual/elements.xml:
3244         * docs/manual/factories.xml:
3245         * docs/manual/gnome.xml:
3246         * docs/manual/goals.xml:
3247         * docs/manual/helloworld.xml:
3248         * docs/manual/helloworld2.xml:
3249         * docs/manual/highlevel-components.xml:
3250         * docs/manual/highlevel-xml.xml:
3251         * docs/manual/init-api.xml:
3252         * docs/manual/intro-motivation.xml:
3253         * docs/manual/intro-preface.xml:
3254         * docs/manual/intro.xml:
3255         * docs/manual/links-api.xml:
3256         * docs/manual/links.xml:
3257         * docs/manual/manual.xml:
3258         * docs/manual/motivation.xml:
3259         * docs/manual/pads-api.xml:
3260         * docs/manual/pads.xml:
3261         * docs/manual/plugins-api.xml:
3262         * docs/manual/plugins.xml:
3263         * docs/manual/programs.xml:
3264         * docs/manual/queues.xml:
3265         * docs/manual/quotes.xml:
3266         * docs/manual/schedulers.xml:
3267         * docs/manual/states-api.xml:
3268         * docs/manual/states.xml:
3269         * docs/manual/threads.xml:
3270         * docs/manual/typedetection.xml:
3271         * docs/manual/win32.xml:
3272         * docs/manual/xml.xml:
3273           First try at rewriting the ADM. Needs lotsamore work, but some
3274           parts might already be somewhat useful.
3275         * docs/pwg/advanced-interfaces.xml:
3276           Remove properties interface, it never actually existed (except for
3277           on my HD...).
3278
3279 2004-12-13  David Schleef  <ds@schleef.org>
3280
3281         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
3282         be NULL (bug #160220).
3283
3284 2004-12-13  David Schleef  <ds@schleef.org>
3285
3286         * configure.ac: remove all mmx stuff, because it's not used.
3287         * docs/random/ds/0.9-suggested-changes: additional notes
3288         * include/Makefile.am: we don't use these anymore
3289         * include/mmx.h: remove
3290         * include/sse.h: remove
3291
3292 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3293
3294         * docs/random/mimetypes:
3295           Add FOURCC code for h264 codec (VSSH)
3296           Add alternate FOURCC codes for h263 related codecs
3297
3298 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
3299
3300         * docs/manual/programs.xml:
3301           Added more gst-launch examples.
3302
3303 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3304
3305         * gst/gstqueue.c: (gst_queue_handle_src_query):
3306           Check for availability again.
3307
3308 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3309
3310         * gst/gstcaps.c: (gst_caps_compare_structures):
3311           Simple caps go first. This has the nice side-effect of fixing an
3312           obscure warning.
3313
3314 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3315
3316         * gst/gstversion.h.in:
3317           Protect header.
3318
3319 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3320
3321         * gst/schedulers/gstoptimalscheduler.c:
3322         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
3323         (gst_opt_scheduler_get_wrapper):
3324           When we're recursing into a chain run, only run the directly
3325           related group, not all queued ones. This will fix a possible
3326           deadlock in chains with more than two groups.
3327
3328 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3329
3330         * autogen.sh:
3331           remove patch if autopoint fails
3332
3333 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3334
3335         * docs/gst/gstreamer-sections.txt:
3336           Document Thomas' addition, fix build, make Luis the sheriff happy.
3337
3338 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3339
3340         * gst/gstplugin.c:
3341         * gst/gstplugin.h:
3342           add accessor for version field
3343
3344 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3345
3346         submitted by: Luca Ferretti <elle.uca@infinito.it>
3347
3348         * po/LINGUAS:
3349         * po/it.po:
3350           New tranlation added: Italian
3351
3352 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3353
3354         * gst/gstpad.c: (gst_pad_is_negotiated),
3355         (gst_pad_get_negotiated_caps):
3356           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
3357           it doesn't actually check the contents), so be sure to hand it
3358           a RealPad else we'll crash.
3359
3360 2004-12-03  Wim Taymans  <wim@fluendo.com>
3361
3362         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3363         (gst_queue_link), (gst_queue_handle_src_query):
3364         Reverted to 1.110 until this makes the testsuite and various
3365         apps work.
3366
3367 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
3368
3369         * docs/upload.mak: fix included CVS conflict strings
3370
3371 2004-12-01  William Jon McCann  <mccann@jhu.edu>
3372
3373         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3374
3375         * gst/gstelement.c: (gst_element_error_full):
3376           Use g_error_new_literal because error text may have
3377           percentage signs in it. Fixes #160019.
3378
3379 2004-12-01  Benjamin Otte  <otte@gnome.org>
3380
3381         * gst/elements/gstbufferstore.c:
3382         (gst_buffer_store_add_buffer_func):
3383           don't try to make subbuffers bigger than they can be. (fixes
3384           #159970)
3385
3386 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3387
3388         * docs/gst/gstreamer-sections.txt:
3389         * docs/gst/tmpl/gstvalue.sgml:
3390           Add new function to docs to fix build.
3391
3392 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3393
3394         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
3395         * gst/gstpad.c: (_gst_pad_default_fixate_value),
3396         (_gst_pad_default_fixate_foreach):
3397         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
3398         * gst/gstvalue.h:
3399           Deprecate _type_is_fixed, use _value_is_fixed instead, since
3400           in some cases (arrays), the fixedness depends on the content.
3401         * gst/gstqueue.c: (gst_queue_handle_src_query):
3402           Check for availability before doing something.
3403
3404 2004-11-29  Wim Taymans  <wim@fluendo.com>
3405
3406         * testsuite/threads/Makefile.am:
3407         * testsuite/threads/signals.c: (gst_test_get_type),
3408         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
3409         (gst_test_set_property), (gst_test_get_property),
3410         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
3411         (gst_test_do_prop), (run_thread), (main):
3412         Added a bunch of testcases that show threadsafety bugs in glib.
3413
3414 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
3415
3416         * docs/manual/programs.xml:
3417           Added a first batch of gst-launch examples, as provided by Ronald
3418           and others from the devel-mlist
3419
3420 2004-11-28  Benjamin Otte  <otte@gnome.org>
3421
3422         * gst/gstelement.c: (gst_element_negotiate_pads):
3423           simplify
3424         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
3425         (gst_value_serialize_string), (gst_value_deserialize_string):
3426           add unwrapping of previously wrapped strings. Fix bug in wrapping
3427           while at it.
3428         * testsuite/caps/value_serialize.c: (test1),
3429         (test_string_serialization), (test_string_deserialization), (main):
3430           add tests for string (de)serialization
3431
3432 2004-11-26  Wim Taymans  <wim@fluendo.com>
3433
3434         * testsuite/threads/159566.c: (object_deep_notify), (main):
3435         * testsuite/threads/Makefile.am:
3436         Added testsuite to show bug #159566
3437
3438 2004-11-25  Wim Taymans  <wim@fluendo.com>
3439
3440         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
3441         (gst_thread_child_state_change), (gst_thread_main_loop):
3442         Ref the thread object in the GThread mainloop. Break out of the
3443         thread mainloop if it holds the last ref. This properly exits
3444         the threads when disposing the thread from its own context. It
3445         also avoids possible deadlocks in the dispose function.
3446
3447 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
3448
3449         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
3450         it is necessary to wait.
3451
3452 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3453
3454         * docs/pwg/building-boiler.xml:
3455           Make description somewhat clearer.
3456
3457 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3458
3459         * docs/upload.mak:
3460           Apparently docs changed location on FDO's server.
3461
3462 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3463
3464         * docs/pwg/appendix-checklist.xml:
3465           Add some random notes on things to check when writing an element.
3466           This list can be extended as people see fit.
3467
3468 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
3469
3470         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
3471         (gst_queue_link_src): Allow for renegotiating the caps of the sink
3472         pad. The queue will now wait until it is empty and forward the new
3473         caps to the source.
3474         * gst/gstbin.c (gst_bin_set_element_sched)
3475         (gst_bin_unset_element_sched): Make sure that all elements and
3476         links are registered and unregistered with the scheduler exactly
3477         once. This elaborates on a fix by Benjamin Otte, but
3478         guarantees that decoupled elements are also registered.
3479
3480 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3481
3482         * docs/manual/quotes.xml:
3483           add a quote
3484         * configure.ac:
3485         * gst/gst.c:
3486         * gst/gstinfo.c:
3487           add LIBDIR and move init message higher up so it's at the start
3488
3489 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3490
3491         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
3492         * gstreamer.spec.in: add fair
3493
3494 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3495
3496         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3497         * gst/elements/gstidentity.c: (gst_identity_class_init):
3498           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
3499           <teuf@gnome.org> (#157263).
3500         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3501         (gst_type_find_handle_src_query):
3502           Subtract size of internally stored data from position queries.
3503
3504 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
3505
3506         * gst/schedulers/fairscheduler.c:
3507         * gst/schedulers/faircothreads.c:
3508         * gst/schedulers/faircothreads.h:
3509         New cothread based scheduler: Fair scheduler.
3510         * gst/schedulers/gthread-cothreads.h: 
3511         Add the standard #if around the whole file.
3512         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
3513         compilation of the functions defined in this file. This is
3514         necessary to be able to use this file as a normal header.
3515         * gst/schedulers/Makefile.am: Add compiling support for fair
3516         scheduler.
3517         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
3518         scheduler cothreads layer from documentation generation.
3519
3520 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3521
3522         * gst/autoplug/gstspideridentity.c:
3523         (gst_spider_identity_sink_loop_type_finding):
3524           Don't crash if that function is not implemented.
3525
3526 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3527
3528         * docs/pwg/advanced-types.xml:
3529           Another typo.
3530
3531 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3532
3533         * docs/pwg/intro-preface.xml:
3534           Hm, ok, so the brackets weren't really useful...
3535         * docs/pwg/other-ntoone.xml:
3536           Fix embarassing typo.
3537
3538 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3539
3540         * docs/pwg/intro-preface.xml:
3541           Rewrite preface.
3542
3543 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3544
3545         * docs/pwg/advanced-scheduling.xml:
3546         * docs/pwg/advanced-tagging.xml:
3547         * docs/pwg/advanced-types.xml:
3548         * docs/pwg/building-boiler.xml:
3549         * docs/pwg/building-chainfn.xml:
3550         * docs/pwg/building-signals.xml:
3551         * docs/pwg/building-state.xml:
3552         * docs/pwg/building-testapp.xml:
3553         * docs/pwg/intro-basics.xml:
3554         * docs/pwg/other-manager.xml:
3555         * docs/pwg/other-source.xml:
3556           Typo fixes.
3557         * docs/pwg/other-manager.xml:
3558           Add some first content. No example code yet.
3559         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3560           Remove double newlines.
3561
3562 2004-11-04  Wim Taymans  <wim@fluendo.com>
3563
3564         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3565         (remove_from_group), (normalize_group), (group_migrate_connected),
3566         (gst_opt_scheduler_iterate):
3567         * testsuite/schedulers/.cvsignore:
3568         * testsuite/schedulers/Makefile.am:
3569         * testsuite/schedulers/queue_link.c: (main):
3570         Added testcase for scheduler segfault.
3571         Fix scheduler segfault when removing a decoupled
3572         entry point as the last element from a group.
3573
3574 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3575
3576         * gst/gstmarshal.list: add missing marshaller, fixes build
3577
3578 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3579
3580         * docs/random/signal: added notes about using BOXED for GstBuffer
3581         signal marshallers, not POINTER
3582
3583 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3584
3585         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3586         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
3587         POINTER=>BOXED changes to marshal GstBuffers
3588
3589 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
3590
3591         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
3592         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
3593
3594 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
3595
3596         * docs/gst/gstreamer-sections.txt:
3597         * docs/gst/tmpl/gstcaps.sgml:
3598         * docs/gst/tmpl/gsterror.sgml:
3599         * docs/gst/tmpl/gstinfo.sgml:
3600         * docs/gst/tmpl/gstmacros.sgml:
3601         * docs/gst/tmpl/gstutils.sgml:
3602         * docs/random/ensonic/interfaces.txt:
3603         * gst/gstinfo.h:
3604           added some more docs, removed two obsolete defines
3605
3606 2004-11-02  Kjartan Maraas <as at gnome.org>
3607
3608         reviewed by: Wim Taymans, Ronald Bultje.
3609
3610         * gst/cothreads.c: (cothread_create):
3611         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
3612         (gst_bin_child_state_change_func):
3613         * gst/gstbuffer.c: (gst_buffer_span):
3614         * gst/gstelement.c: (gst_element_get_index),
3615         (gst_element_get_event_masks), (gst_element_get_query_types),
3616         (gst_element_get_formats):
3617         * gst/gsterror.c: (_gst_core_errors_init),
3618         (_gst_library_errors_init), (_gst_resource_errors_init),
3619         (_gst_stream_errors_init):
3620         * gst/gstobject.c: (gst_object_default_deep_notify):
3621         * gst/gstpad.c: (gst_pad_get_event_masks),
3622         (gst_pad_get_internal_links_default):
3623         * gst/gstplugin.c: (gst_plugin_register_func),
3624         (gst_plugin_get_module):
3625         * gst/gststructure.c: (gst_structure_get_string),
3626         (gst_structure_get_abbrs), (gst_structure_from_abbr),
3627         (gst_structure_to_abbr):
3628         * gst/gstutils.c: (gst_print_element_args):
3629         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3630         (setup_group_scheduler), (gst_opt_scheduler_iterate):
3631         Aplied part of patch #157127: Cleanup of issues reported by 
3632         sparse.
3633         Also do not try to use cothreads when there is no cothread
3634         context yet.
3635
3636 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
3637
3638         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3639         (gst_opt_scheduler_iterate):
3640         Applied patch #154061. Running a pipeline in which an element 
3641         calls GST_ELEMENT_ERROR in the chain function, the opt 
3642         scheduler doesn't unref the chain so it never gets freed.
3643
3644 2004-11-02  Wim Taymans  <wim@fluendo.com>
3645
3646         * gst/gststructure.c: (gst_structure_get_abbrs),
3647         (gst_structure_from_abbr), (gst_structure_to_abbr):
3648         Remove that ugly if-then thing in the code that converts
3649         between strings and types.
3650
3651 2004-11-02  Wim Taymans  <wim@fluendo.com>
3652
3653         * gst/gstscheduler.c: (gst_scheduler_add_element),
3654         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
3655         Aplied clock distribution patch, this should fix bug
3656         #148787.
3657
3658 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
3659
3660         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
3661
3662         * po/LINGUAS:
3663         * po/nb.po:
3664           Added Norwegian Bokmaal translation
3665
3666 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3667
3668         * tools/gst-inspect.c: (print_signal_info):
3669           print signal arguments as pointers if they are
3670
3671 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
3672
3673         * docs/pwg/building-boiler.xml:
3674           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
3675
3676 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3677
3678         * gst/parse/parse.l:
3679         * testsuite/parse/parse1.c: (main):
3680         Since parse can do 'element name=a:b' make 'a:b.' work as
3681         well. 
3682         Added testcase to verify fix.
3683
3684 2004-10-19  Wim Taymans  <wim at fluendo dot com>
3685
3686         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
3687         Use the realpad when printing the direction.
3688         Add extra \n when printing extensions of typefind factories.
3689
3690 2004-10-13  David Schleef  <ds@schleef.org>
3691
3692         * examples/manual/Makefile.am: $< isn't portable in Makefile
3693         rules.
3694
3695 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
3696
3697         * docs/gst/tmpl/gstobject.sgml:
3698         * docs/gst/tmpl/gstplugin.sgml:
3699         * docs/gst/tmpl/gstpluginfeature.sgml:
3700         * docs/gst/tmpl/gstregistry.sgml:
3701         * docs/gst/tmpl/gstversion.sgml:
3702         * gst/gstbin.c:
3703           more api documentation
3704         * gst/gstplugin.c: (gst_plugin_register_func),
3705         (gst_plugin_check_file), (gst_plugin_load_file):
3706           better error signaling and logging
3707
3708 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3709
3710         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
3711           Subtract current queue contents from position queries.
3712
3713 2004-10-11  Johan Dahlin  <johan@gnome.org>
3714
3715         * gst/gsturi.c (gst_uri_get_location): unescape string
3716         (gst_uri_construct): escape string.
3717
3718 2004-10-11  Benjamin Otte  <otte@gnome.org>
3719
3720         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
3721         (gst_pad_try_set_caps_nonfixed):
3722           allow renegotiation of unconnected pads (as inside spider). Simply
3723           return OK if unconnected - mimic try_set_caps there.
3724
3725 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3726
3727         * gst/gstbin.c: (gst_bin_sync_children_state):
3728           Add missing break.
3729
3730 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3731
3732         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
3733         Set element to EOS before sending EOS event
3734
3735 2004-10-08  Wim Taymans  <wim at fluendo dot com>
3736
3737         * gst/elements/gsttypefindelement.c:
3738         (gst_type_find_element_handle_event):
3739         Handle EOS events when doing the transition from
3740         typefind to data passing. This should fix the
3741         infinite loops in short files.
3742
3743 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3744
3745         * gst/gstthread.c: (gst_thread_change_state),
3746         (gst_thread_child_state_change):
3747         Make sure no iteration happens while performing
3748         the state change as it could mess up the internal
3749         consistency of the thread state.
3750
3751 2004-10-07  Wim Taymans  <wim at fluendo dot com>
3752
3753         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
3754         (gst_thread_change_state), (gst_thread_child_state_change):
3755         Do not try to grab the iterate lock in the state change method
3756         when we are in the same thread as the iterate or else we
3757         could deadlock. Some other cleanups.
3758
3759 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3760
3761         * configure.ac:
3762           bump nano to cvs
3763
3764 === release 0.8.7 ===
3765
3766 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3767
3768         * configure.ac:
3769         * NEWS:
3770         * RELEASE:
3771         * configure.ac:
3772           releasing 0.8.7, "A Cruise"
3773
3774 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3775
3776         * docs/random/mimetypes:
3777         Add an entry for Sony ATRAC3 audio format with mime-type
3778         used by rmdemux et riff-read
3779
3780 2004-10-06  Wim Taymans  <wim at fluendo dot com>
3781
3782         * gst/elements/gsttypefindelement.c: (stop_typefinding):
3783         Push the buffer store instead of clearing it in case that
3784         the stream is not seekable.
3785
3786 2004-10-06  Wim Taymans  <wim at fluendo dot com>
3787
3788         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
3789         (gst_thread_main_loop):
3790         Lock the iteration and the state change so that automatic
3791         negotiation and fixation does not happen at the same time
3792         as the in stream negotiation.
3793
3794 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3795
3796         * configure.ac:
3797           bump nano to cvs
3798
3799 === release 0.8.6 ===
3800
3801 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3802
3803         * configure.ac:
3804         * NEWS:
3805         * RELEASE:
3806         * configure.ac:
3807           releasing 0.8.6, "Narc"
3808
3809 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3810
3811         * configure.ac:
3812           prerel bump
3813
3814 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
3815
3816         patch by: Steve Lhomme
3817
3818         * gst/elements/gstfakesrc.c:
3819         * gst/elements/gstidentity.c:
3820         * gst/gstthread.c:
3821           Fix for #153881
3822
3823 2004-10-01  Wim Taymans  <wim at fluendo dot com>
3824
3825         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
3826         Fix threadsafety of the crc checking function.
3827
3828 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
3829
3830         patch by: Ronald Bultje
3831
3832         * gst/elements/gsttypefindelement.c: (stop_typefinding),
3833         (gst_type_find_element_handle_event),
3834         (gst_type_find_element_chain):
3835         * gst/elements/gsttypefindelement.h:
3836          #153657.
3837          Filter out discont event from seekable sources when typefind
3838          asks them to seek.  Fixes typefind with demuxers for
3839          avi, asf and matroska.
3840
3841 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
3842
3843         * docs/gst/gstreamer-sections.txt:
3844         * gst/gstcaps.c:
3845         * gst/gstcaps.h:
3846         * gst/gstpad.c:
3847           Revert preferred caps: (#147789)
3848
3849 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
3850
3851         * win32/dirent.c:
3852           fix a memory leak
3853
3854 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3855
3856         * configure.ac:
3857           bump for prerelease
3858
3859 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
3860
3861         * docs/Makefile.am:
3862         * docs/manual/elements-api.xml:
3863           restructure so that common stuff is shown first
3864         * docs/manual/init-api.xml:
3865           convert to examples
3866         * docs/manual/manual.xml:
3867         * docs/manuals.mak:
3868         * docs/url.entities:
3869           link to API on the website, possibly override later in build
3870         * examples/manual/.cvsignore:
3871           ignore more
3872         * examples/manual/Makefile.am:
3873           add more examples
3874         * examples/manual/extract.pl:
3875           error out on failure
3876
3877 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3878
3879         * docs/gst/tmpl/gstthread.sgml:
3880         * docs/manual/init-api.xml:
3881         * examples/manual/Makefile.am:
3882           convert two code bits to examples
3883
3884 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3885
3886         * gst/gstelement.c: (gst_element_change_state):
3887           Well, actually, I was about to remove this insane assert when
3888           I noticed Wim already did that. A warning is nice so we can
3889           fix actual ugs (using --g-fatal-warnings and backtraces), so
3890           I added that instead.
3891
3892 2004-09-06  Wim Taymans  <wim@fluendo.com>
3893
3894         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
3895         (gst_element_threadsafe_properties_post_run),
3896         (gst_element_set_state), (gst_element_change_state):
3897         Added extra refcounting around various places. 
3898
3899 2004-09-06  Wim Taymans  <wim@fluendo.com>
3900
3901         * gst/gstpad.c: (gst_pad_link_call_link_functions):
3902         Fix debug info.
3903
3904 2004-09-06  Wim Taymans  <wim@fluendo.com>
3905
3906         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3907         (remove_from_group):
3908         Some more debug info.
3909
3910 2004-09-03  Wim Taymans  <wim@fluendo.com>
3911
3912         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
3913         (gst_fakesrc_init), (gst_fakesrc_set_clock),
3914         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
3915         (gst_fakesrc_get), (gst_fakesrc_change_state):
3916         * gst/elements/gstfakesrc.h:
3917         * gst/elements/gstidentity.c: (gst_identity_class_init),
3918         (gst_identity_init), (gst_identity_chain),
3919         (gst_identity_set_property), (gst_identity_get_property),
3920         (gst_identity_change_state):
3921         * gst/elements/gstidentity.h:
3922         Added datarate properties to limit the datarate.
3923
3924 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3925
3926         * gst/autoplug/gstspider.c: (plugin_init):
3927           don't set a rank. We don't want to autoplug by inserting spiders.
3928
3929 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3930
3931         * gst/autoplug/gstspider.c: (gst_spider_class_init),
3932         (gst_spider_identity_plug):
3933           add a template for spider's sink
3934         * gst/gst.c: (gst_register_core_elements):
3935           queue's rank should be NULL, we don't want spider to add it.
3936
3937 2004-08-18  David Schleef  <ds@schleef.org>
3938
3939         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
3940         * docs/libs/Makefile.am: same
3941         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
3942         * docs/random/ds/0.9-planning: random additions
3943         * docs/random/ds/0.9-suggested-changes: same
3944         * gst/gstxml.h: remove vestigal GstXMLNs definition
3945
3946         Preferred caps: (#147789)
3947         * docs/gst/gstreamer-sections.txt: Add symbols
3948         * docs/gst/tmpl/gstcaps.sgml: Add symbols
3949         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
3950         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
3951         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
3952         (gst_caps_get_preferred), (gst_caps_set_preferred),
3953         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
3954         (gst_caps_use_preferred): Handle caps preferences
3955         * gst/gstcaps.h: Add caps preferences
3956         * gst/gstpad.c: (gst_pad_link_get_preferred),
3957         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
3958         (gst_pad_renegotiate), (gst_pad_guess_preferred),
3959         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
3960         negotiation.
3961
3962 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3963
3964         * gst/autoplug/gstspideridentity.c:
3965         (gst_spider_identity_request_new_pad):
3966         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
3967         (gst_aggregator_init):
3968         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
3969         (gst_fakesink_init):
3970         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
3971         (gst_fakesrc_init):
3972         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
3973         (gst_fdsink_init):
3974         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
3975         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
3976         (gst_filesink_init):
3977         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
3978         (gst_filesrc_init):
3979         * gst/elements/gstidentity.c: (gst_identity_base_init),
3980         (gst_identity_init):
3981         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
3982         (gst_multifilesrc_init):
3983         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
3984         (gst_pipefilter_init):
3985         * gst/elements/gststatistics.c: (gst_statistics_base_init),
3986         (gst_statistics_init):
3987         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
3988         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
3989           s/gst_pad_new/&_from_template/
3990           register pad templates in the base_init function
3991           add static pad template definitions
3992
3993 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3994
3995         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
3996         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
3997         * testsuite/refcounting/pad.c: (main):
3998         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
3999           s/gst_pad_new/&_from_template/
4000           prepare deprecation of gst_pad_new
4001
4002 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4003
4004         patch by: Luca Ognibene <skaboy81@virgilio.it>
4005
4006         * gst/gstcaps.c:
4007         * gst/gstelement.c:
4008         * gst/gstpad.c:
4009         * gst/gstxml.c:
4010           fix memleaks.  Fixes #150001
4011
4012 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4013
4014         * docs/random/ds/0.9-suggested-changes:
4015           add notes - mostly about pad templates
4016
4017 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4018
4019         * win32/GStreamer.vcproj:
4020           temporary locale files are .gmo not .mo
4021
4022 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4023
4024         * configure.ac: bump nano to cvs
4025
4026 === release 0.8.5 ===
4027
4028 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4029
4030         * configure.ac:
4031           releasing 0.8.5, "Stuttgart"
4032         * NEWS:
4033         * RELEASE:
4034         * configure.ac:
4035         * docs/random/release:
4036           updates for release
4037
4038 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4039
4040         patch by: Wim Taymans (wim@fluendo.com)
4041
4042         * gst/gstbuffer.c:
4043         * gst/gstindex.h:
4044         * libs/gst/dataprotocol/dataprotocol.c:
4045           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4046
4047 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4048
4049         * Makefile.am:
4050         * win32/MANIFEST:
4051           add win32 dir to the build.  Fixes #149981.
4052
4053 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4054
4055         * configure.ac:
4056           bump libtool versioning
4057         * gst/gststructure.c:
4058           mark function as static
4059         * po/af.po:
4060         * po/az.po:
4061         * po/ca.po:
4062         * po/cs.po:
4063         * po/en_GB.po:
4064         * po/fr.po:
4065         * po/nl.po:
4066         * po/sq.po:
4067         * po/sr.po:
4068         * po/sv.po:
4069         * po/tr.po:
4070         * po/uk.po:
4071           translations update
4072         * win32/README.txt:
4073           trademark protection
4074
4075 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4076
4077         * configure.ac:
4078           fix GST_ORIGIN
4079           set GST_PACKAGE to source, and distinguish between release and other
4080         * tools/gst-inspect.c:
4081           print out plugin an element factory is part of so we see this info
4082
4083 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4084
4085         * docs/gst/gstreamer-sections.txt:
4086         * docs/gst/tmpl/gstbuffer.sgml:
4087         * docs/gst/tmpl/gstschedulerfactory.sgml:
4088           reorder docs a little, make GstBuffer's more sensible.
4089         * gst/gstbuffer.h:
4090           API: added GST_BUFFER_FLAG_DELTA_UNIT
4091         * gst/gstscheduler.c:
4092           comment API addition
4093
4094 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4095
4096         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4097           work with non-regular files that can be mmapped (like /dev/zero)
4098         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4099           get rid of typefinds that require a seek when we can't seek instead
4100           of trying them over and over again
4101         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4102           return non-zero failure value when the pipeline was interrupted or
4103           an error occurred
4104
4105 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4106
4107         * win32/config.h:
4108         * win32/GStreamer.vcproj:
4109           compile and install the locales
4110
4111 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4112
4113         * gst/gstvalue.c:
4114           fix a possible memory leak under Windows
4115
4116 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4117
4118         * win32/GStreamer.vcproj:
4119           fix a memory leak that occured under Windows
4120         * win32/gstreamer.def:
4121           add gst_scheduler_register
4122
4123 2004-08-11  Benjamin Otte  <otte@gnome.org>
4124
4125         * docs/gst/gstreamer-sections.txt:
4126         * gst/gstscheduler.c: (gst_scheduler_register):
4127         * gst/gstscheduler.h:
4128           API:
4129           add gst_scheduler_register shortcut similar to gst_element_register
4130         * gst/schedulers/entryscheduler.c: (plugin_init):
4131         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4132         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4133           use it
4134
4135 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4136
4137         * gst/gstvalue.h:
4138           fix a memory leak that occured under Windows
4139
4140 2004-08-10  Colin Walters  <walters@redhat.com>
4141
4142         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4143         Don't use O_EXCL to open temporary registry.  It will prevent
4144         registry creation if a temporary one already exists, which
4145         is unnecessary.
4146
4147 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4148
4149         * docs/gst/gstreamer-sections.txt:
4150         * docs/gst/tmpl/gstvalue.sgml:
4151           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4152
4153 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4154
4155         * win32/gstbytestream.vcproj:
4156         * win32/gstelements.vcproj:
4157         * win32/gstgetbits.vcproj:
4158         * win32/gst-inspect.vcproj:
4159         * win32/gst-launch.vcproj:
4160         * win32/gstoptimalscheduler.vcproj:
4161         * win32/GStreamer.vcproj:
4162         * win32/gst-register.vcproj:
4163         * win32/gstspider.vcproj:
4164           update the include and lib dirs to fit standard libraries as
4165           described in the Win32 manual
4166
4167 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4168
4169         * win32/config.h:
4170         * win32/gstversion.h:
4171           enable NLS again, push the version number for the coming 0.8.5 release
4172
4173 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4174
4175         * gst/gstvalue.h:
4176           export gst_type_XXX for windows DLLs
4177
4178 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4179
4180         * docs/faq/gst-uninstalled:
4181           fix PKG_CONFIG_PATH and PYTHONPATH
4182         * gst/schedulers/Makefile.am:
4183           cleanup
4184         * libs/gst/bytestream/bytestream.c:
4185           remove newline
4186         * po/LINGUAS:
4187         * po/sq.po:
4188           adding Albanian translation (Laurent Dhima)
4189         * po/cs.po:
4190           updated
4191
4192 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4193
4194         * po/ca.po:
4195         * po/sv.po:
4196           updated translations
4197
4198 2004-08-04  Benjamin Otte  <otte@gnome.org>
4199
4200         * tests/mass_elements.c: (main):
4201           allow specifying src and sink element explicitly, so I can test
4202           videotestsrc instead of fakesrc
4203
4204 2004-08-04  Benjamin Otte  <otte@gnome.org>
4205
4206         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4207         (gst_structure_id_empty_new), (gst_structure_empty_new),
4208         (gst_structure_copy):
4209           add gst_structure_id_empty_new_with_size to allow preallocating
4210           value array sizes. Use this in gst_structure_copy to get rid of
4211           reallocs.
4212           don't do quark=>string=>quark when copying structures
4213
4214 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4215
4216         * docs/manual/win32.xml:
4217         * win32/README.txt:
4218           update documentation with the clean version of dependencies
4219
4220 2004-08-03  Benjamin Otte  <otte@gnome.org>
4221
4222         * gst/schedulers/entryscheduler.c:
4223         (gst_entry_scheduler_remove_element):
4224           fix for GST_DISABLE_DEBUG
4225         * tools/gst-launch.c: (print_tag):
4226           fixes for G_DISABLE_ASSERT
4227
4228 2004-08-03  Benjamin Otte  <otte@gnome.org>
4229
4230         * gst/gst.c: (gst_register_core_elements):
4231           fix for G_DISABLE_ASSERT
4232         * gst/gstinfo.c: (__gst_in_valgrind):
4233           add for GST_DISABLE_DEBUG
4234
4235 2004-08-03  Benjamin Otte  <otte@gnome.org>
4236
4237         * gst/parse/parse.l:
4238           fix for G_DISABLE_ASSERT
4239
4240 2004-08-03  Wim Taymans  <wim@fluendo.com>
4241
4242         * gst/gstbin.c: (gst_bin_get_type),
4243         (gst_bin_child_state_change_func):
4244         * gst/gstthread.c: (gst_thread_change_state):
4245         Backported some debug logging from a reverted patch
4246         Don't try to destroy the thread twice. Added some more
4247         debugging in GstThread. Unlock and signal even if we
4248         are in the thread context.
4249
4250 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4251
4252         * po/uk.po:
4253           updated translation
4254
4255 2004-07-30  David Schleef  <ds@schleef.org>
4256
4257         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4258
4259 2004-07-29  David Schleef  <ds@schleef.org>
4260
4261         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4262         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4263
4264 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4265
4266         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4267         (gst_bin_add_func), (gst_bin_remove_func),
4268         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4269         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4270         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4271         (gst_bin_sync_children_state):
4272         * gst/gstbin.h:
4273         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4274         (gst_thread_change_state):
4275         * testsuite/states/Makefile.am:
4276           revert state change patches as agreed so we can rework them
4277           gradually
4278
4279 2004-07-29  Benjamin Otte  <otte@gnome.org>
4280
4281         * libs/gst/control/Makefile.am:
4282           link to libgstreamer (fixes Debian bug 262019, see
4283           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
4284
4285 2004-07-29  Wim Taymans  <wim@fluendo.com>
4286
4287         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4288         (check_from_fraction_convert), (transform_test), (main):
4289         Make the test less pedantic about float roundoff errors.
4290
4291 2004-07-29  Benjamin Otte  <otte@gnome.org>
4292
4293         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
4294         (gst_filesrc_srcpad_event):
4295           make seek events to before start/after end of file not fail, but
4296           seek to start/end instead
4297         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
4298           add more output
4299
4300 2004-07-29  Benjamin Otte  <otte@gnome.org>
4301
4302         * gst/gstpad.c: (gst_pad_set_explicit_caps):
4303           check that caps are fixed
4304         * gst/gstpad.c: (gst_pad_template_new):
4305           don't try to simplify caps, costs too much time on gst_init
4306         * gst/gstplugin.c: (gst_plugin_add_feature):
4307           G_ERROR if features are added twice
4308         * gst/gsttypefind.c: (gst_type_find_register):
4309         * gst/gstelementfactory.c: (gst_element_register):
4310           don't add features twice
4311         * docs/random/ds/0.9-suggested-changes:
4312           add note about possible gst_init optimization
4313
4314 2004-07-28  David Schleef  <ds@schleef.org>
4315
4316         * testsuite/elements/Makefile.am:
4317         * testsuite/elements/struct_i386.h:
4318         * testsuite/elements/struct_size.c: (main):  A little test
4319         to keep distcheck from working if someone changes a structure
4320         size accidentally.
4321
4322 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4323
4324         * docs/libs/Makefile.am:
4325         * docs/libs/gstreamer-libs-docs.sgml:
4326         * docs/libs/gstreamer-libs-sections.txt:
4327         * docs/libs/tmpl/gstbytestream.sgml:
4328         * docs/libs/tmpl/gstcontrol.sgml:
4329         * docs/libs/tmpl/gstdataprotocol.sgml:
4330         * docs/libs/tmpl/gstgetbits.sgml:
4331         * libs/gst/bytestream/Makefile.am:
4332         * libs/gst/bytestream/bytestream.c:
4333         * libs/gst/bytestream/bytestream.h:
4334         * libs/gst/control/Makefile.am:
4335         * libs/gst/dataprotocol/Makefile.am:
4336         * libs/gst/getbits/Makefile.am:
4337         * libs/gst/getbits/getbits.h:
4338           various doc and style fixes, adding bytestream to libs docs.
4339
4340 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4341
4342         * docs/gst/gstreamer-docs.sgml:
4343         * docs/libs/Makefile.am:
4344         * docs/libs/gstreamer-libs-docs.sgml:
4345         * docs/libs/gstreamer-libs-sections.txt:
4346         * libs/gst/control/dparam.c:
4347           more doc fixes.  gst-libs docs now build the same way as gst.
4348
4349 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4350
4351         * configure.ac:
4352         * testsuite/Makefile.am:
4353         * testsuite/bins/Makefile.am:
4354         * testsuite/caps/Makefile.am:
4355         * testsuite/cleanup/Makefile.am:
4356         * testsuite/clock/Makefile.am:
4357         * testsuite/debug/Makefile.am:
4358         * testsuite/dlopen/Makefile.am:
4359         * testsuite/dynparams/Makefile.am:
4360         * testsuite/elements/.cvsignore:
4361         * testsuite/elements/Makefile.am:
4362         * testsuite/enumcaps/Makefile.am:
4363         * testsuite/enumcaps/enumcaps.c:
4364         * testsuite/ghostpads/Makefile.am:
4365         * testsuite/indexers/Makefile.am:
4366         * testsuite/negotiation/Makefile.am:
4367         * testsuite/parse/Makefile.am:
4368         * testsuite/plugin/Makefile.am:
4369         * testsuite/refcounting/Makefile.am:
4370         * testsuite/schedulers/.cvsignore:
4371         * testsuite/states/Makefile.am:
4372         * testsuite/tags/Makefile.am:
4373         * testsuite/threads/Makefile.am:
4374           fold enumcaps into caps dir
4375           clean up Makefile.am's for testsuite
4376
4377 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4378
4379         * docs/gst/Makefile.am:
4380         * docs/libs/Makefile.am:
4381           clean up docs build.  Fixes needless rebuilding of template files.
4382
4383 2004-07-28  Wim Taymans  <wim@fluendo.com>
4384
4385         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
4386         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
4387         Make sure that a bin state change tries to keep the children
4388         in sync. 
4389         Added debug logging to the thread.
4390
4391 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4392
4393         * win32/GStreamer.vcproj:
4394         * win32/gstreamer.def:
4395           more exports for the plugins
4396
4397 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4398
4399         * win32/gstgetbits.vcproj:
4400         * win32/gstgetbits.def:
4401         * win32/msvc71.sln:
4402           add support for the getbits plugin
4403
4404 2004-07-27  Wim Taymans  <wim@fluendo.com>
4405
4406         * gst/gstvalue.c: (gst_value_transform_double_fraction),
4407         (gst_value_transform_fraction_double), (_gst_value_initialize):
4408         * testsuite/caps/Makefile.am:
4409         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4410         (check_from_fraction_convert), (transform_test), (main):
4411         Added transform functions between double and fraction.
4412         Added testcase to verify transforms
4413
4414 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4415
4416         * win32/GStreamer.vcproj:
4417           rename GStreamer-0.8.lib to libgstreamer.lib
4418
4419 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4420
4421         * win32/gstelements.vcproj:
4422         * win32/gstoptimalscheduler.vcproj:
4423           fixes for the Release build
4424
4425 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4426
4427         * win32/config.h:
4428           update the version number
4429
4430 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4431
4432         * win32/GStreamer.vcproj:
4433           add gstinterface to the build
4434
4435 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4436
4437         * win32/gstreamer.def:
4438           add many definitions needed by plugins,
4439           GST_CAT_DEFAULT only available in the Debug build ?
4440
4441 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4442
4443         * gst/gstelement.c: (gst_element_set_eos_recursive):
4444           various whitespace fixes.
4445           doc fix, fixes #148497
4446
4447 2004-07-25  Benjamin Otte  <otte@gnome.org>
4448
4449         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
4450           don't delay links on the sink elements, it causes unnegotiated
4451           links.
4452         * gst/elements/gsttypefindelement.c:
4453         (gst_type_find_element_base_init):
4454           add our padtemplates, we indeed do have some.
4455         * gst/elements/gsttypefindelement.c:
4456         (gst_type_find_element_handle_event),
4457         (gst_type_find_element_chain):
4458           don't push data when typefinding failed.
4459         * gst/gstpad.c: (gst_pad_link_fixate):
4460           check that no fixate function returns empty caps.
4461         * gst/gstpad.c: (gst_pad_push):
4462           check that the link is negotiated before data gets pushed.
4463         * tools/gst-register.c: (main):
4464           don't assert (fixes #148283)
4465
4466 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4467
4468         * docs/gst/gstreamer-sections.txt:
4469         * docs/gst/tmpl/gstconfig.sgml:
4470           add GST_PLUGIN_EXPORT definition
4471
4472 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4473
4474         * gst/gstplugin.h:
4475         * gst/gstconfig.h.in:
4476         * win32/gstconfig.h:
4477         * win32/gstelements.def:
4478         * win32/gstelements.vcproj:
4479         * win32/gstoptimalscheduler.def:
4480         * win32/gstoptimalscheduler.vcproj:
4481         * win32/gstspider.def:
4482         * win32/gstspider.vcproj:
4483           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
4484
4485 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4486
4487         * docs/gst/gstreamer-sections.txt:
4488           remove GST_CAT_DEFAULT because the type has changed
4489
4490 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4491
4492         * win32/gstbytestream.vcproj:
4493         * win32/gstelements.vcproj:
4494         * win32/gst-inspect.vcproj:
4495         * win32/gst-launch.vcproj:
4496         * win32/gstoptimalscheduler.vcproj:
4497         * win32/GStreamer.vcproj:
4498         * win32/gst-register.vcproj:
4499         * win32/gstspider.vcproj:
4500         * win32/msvc71.sln:
4501           Copy the files where needed after building, The testsuite will be
4502           built separately
4503
4504 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4505
4506         * win32/config.h:
4507         * win32/README.txt:
4508         * docs/manual/win32.xml:
4509         Fixed the plugin and GStreamer location
4510
4511 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4512
4513         * win32/gstreamer.def:
4514         More exports for the plugins
4515
4516 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4517
4518         * gst/gstinfo.h:
4519         Marc was right, we need to export literally GST_CAT_DEFAULT
4520
4521 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4522
4523         * win32/config.h:
4524         NLS crashes in gettext, disabled until this is solved
4525
4526 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4527
4528         * win32/gst-inspect.vcproj:
4529         * win32/gst-launch.vcproj:
4530         Should use NLS when available
4531
4532 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4533
4534         * gst/registries/gstxmlregistry.c:
4535         removing the file doesn't seem to be a good idea on Linux
4536
4537 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4538
4539         * gst/registries/gstxmlregistry.c:
4540         Remove the registry before renaming the tempfile (needed for Windows)
4541
4542 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4543
4544         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
4545         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
4546         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
4547         * gst/elements/gstmultifilesrc.h:
4548         Added newmedia property so it generates newmedia events between each
4549         file when property is set, as well as fixed eos handling
4550
4551 2004-07-22  David Schleef  <ds@schleef.org>
4552
4553         * gst/gststructure.c: (gst_structure_id_empty_new),
4554         (gst_structure_empty_new):  Set type field correctly.
4555         * gst/gststructure.h: Check type field correctly.
4556         * testsuite/caps/Makefile.am:
4557         * testsuite/caps/structure.c: (test1), (main): Add a very small
4558         test for structures.
4559
4560 2004-07-22  David Schleef  <ds@schleef.org>
4561
4562         * docs/random/ds/0.9-suggested-changes: more comments
4563         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
4564
4565 2004-07-22  Benjamin Otte  <otte@gnome.org>
4566
4567         * gst/gstelementfactory.c: (gst_element_register):
4568           set the factory in the class struct, so gst_element_get_factory
4569           actually works
4570         * gst/parse/grammar.y:
4571           set element to playing when it gets unlocked as we can't rely on the
4572           bin state - all elements in the bin state might still be locked in
4573           NULL)
4574
4575 2004-07-22  Benjamin Otte  <otte@gnome.org>
4576
4577         * gst/gstelement.c: (gst_element_set_state_func):
4578           make this a static function
4579
4580 2004-07-22  Wim Taymans  <wim@fluendo.com>
4581
4582         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
4583         (gst_opt_scheduler_pad_link):
4584         fix 147894-2 and the group_link problem.
4585
4586 2004-07-22  Wim Taymans  <wim@fluendo.com>
4587
4588         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4589         (handoff_identity), (main):
4590         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4591         (handoff_identity), (main):
4592         * testsuite/schedulers/Makefile.am:
4593         * testsuite/schedulers/group_link.c: (main):
4594         Show bug in scheduler when linking chain and loop based element 
4595         where the chain based element was not yet in a group.
4596
4597 2004-07-21  Benjamin Otte  <otte@gnome.org>
4598
4599         * gst/.cvsignore:
4600         * gst/autoplug/.cvsignore:
4601         * gst/elements/.cvsignore:
4602         * gst/indexers/.cvsignore:
4603         * libs/gst/bytestream/.cvsignore:
4604         * libs/gst/control/.cvsignore:
4605         * libs/gst/getbits/.cvsignore:
4606         * testsuite/states/.cvsignore:
4607         * testsuite/threads/.cvsignore:
4608           keep this up to date, since I seem to be the only one who cares
4609           about not missing files on commits (editor's note: no you don't,
4610           but feel free to change them at the time you add stuff instead
4611           of later on)
4612
4613 2004-07-21  Benjamin Otte  <otte@gnome.org>
4614
4615         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4616         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
4617         (gst_bin_child_state_change_func), (set_kid_state_func),
4618         (gst_bin_set_state), (gst_bin_change_state_norecurse):
4619           make state changes work correctly and reentrant (so removing
4620           elements from bins during state changes of bins doesn't cause
4621           segfaults or even wrong states)
4622           add debugging category and debugging output to print children states
4623         * gst/gstbin.c: (gst_bin_dispose): 
4624           add some assertion checks
4625         * gst/gstbin.h:
4626         * gst/gstbin.c: (gst_bin_sync_children_state):
4627           deprecate this function - it just does gst_bin_set_state (bin,
4628           GST_STATE (bin)) 
4629         * testsuite/threads/queue.c: (main):
4630           don't use gst_bin_sync_children_state anymore
4631         * testsuite/states/Makefile.am:
4632         * testsuite/states/bin.c:
4633           test that the state changes of bins work as expected
4634         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
4635           some adjustments to change states correctly, too
4636         * gst/gstthread.c: (gst_thread_change_state):
4637           don't enable/disable "threadsafe" properties, they're unused and
4638           cause random segfaults
4639         * testsuite/threads/Makefile.am:
4640           the queue check randomly passes now, ignore it
4641
4642 2004-07-21  Benjamin Otte  <otte@gnome.org>
4643
4644         * gst/gstpad.c:
4645           check if data is NULL before outputting debug info. (fixes #145100)
4646
4647 2004-07-21  Benjamin Otte  <otte@gnome.org>
4648
4649         * gst/schedulers/entryscheduler.c:
4650         (gst_entry_scheduler_loop_wrapper),
4651         (gst_entry_scheduler_chain_wrapper),
4652         (gst_entry_scheduler_get_wrapper):
4653           reset the state when the cothread starts, so we don't get assertion
4654           failures on restarting of cothreads
4655
4656 2004-07-20  Benjamin Otte  <otte@gnome.org>
4657
4658         * gst/gstelement.c: (gst_element_link_pads_filtered):
4659           use correct sinkpad, if only sinkpad is specified, but not srcpad
4660           (fixes #147889)
4661         * gst/gstelement.c: (gst_element_set_state_func),
4662         (gst_element_change_state): ref/unref the element, signal handlers
4663         could get rid of the element otherwise
4664
4665 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
4666
4667         * docs/random/ds/0.9-suggested-changes:
4668           Make note about renaming fixed-list to array.
4669         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
4670         (_gst_value_initialize):
4671           Add array intersections.
4672         * testsuite/caps/intersect2.c: (main):
4673           Add test for array intersections.
4674
4675 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4676
4677         * configure.ac: back to cvs
4678
4679 === release 0.8.4 ===
4680
4681 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4682
4683         * configure.ac:
4684           releasing 0.8.4, "Paella"
4685           bump libtool versioning
4686
4687 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4688
4689         * po/LINGUAS:
4690         * po/ca.po:
4691           adding Catalan translation (Jordi Mallach)
4692
4693 2004-07-20  Wim Taymans  <wim@fluendo.com>
4694
4695         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
4696         (handoff_identity), (main):
4697         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4698         (handoff_identity), (main):
4699         * testsuite/schedulers/Makefile.am:
4700         Added failing testcase for variant of #147894
4701
4702 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4703
4704         patch by: David Moore
4705
4706         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4707         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
4708         (group_migrate_connected):
4709         * testsuite/schedulers/Makefile.am:
4710           fix for #142813 (Deadlock in optimal scheduler)
4711
4712 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4713
4714         patch by: Wim Taymans
4715
4716         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
4717         (gst_opt_scheduler_schedule_run_queue),
4718         (gst_opt_scheduler_get_wrapper), (get_group),
4719         (group_migrate_connected):
4720         * testsuite/schedulers/Makefile.am:
4721           fix for #147819 (Add some checks in the opt scheduler)
4722
4723 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4724
4725         patch by: Benjamin Otte
4726
4727         * gst/gstelementfactory.c: (__gst_element_details_set):
4728           fix for #147929: running gst-register in non-utf8 locale can cause
4729           invalid registry
4730
4731 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
4732
4733         patch by: Wim Taymans
4734
4735         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
4736         (group_has_element), (element_get_reachables_func),
4737         (group_migrate_connected):
4738           fix for #147894 (opt scheduler decoupled elements mismanagement)
4739         * testsuite/schedulers/Makefile.am:
4740           testsuite app now passes
4741
4742 2004-07-19  Wim Taymans  <wim@fluendo.com>
4743
4744         * testsuite/schedulers/147819.c: (handoff_identity1),
4745         (handoff_identity2), (main):
4746         * testsuite/schedulers/Makefile.am:
4747         Added testcase for bug 147819
4748
4749 2004-07-19  Wim Taymans  <wim@fluendo.com>
4750
4751         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
4752         (handoff_identity), (main):
4753         * testsuite/schedulers/Makefile.am:
4754         Added testcase for bug 147894
4755
4756 2004-07-16  Wim Taymans  <wim@fluendo.com>
4757
4758         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
4759         * testsuite/schedulers/142183.c: (handoff_identity), (main):
4760         * testsuite/schedulers/Makefile.am:
4761         Added testsuite for bug 142183 in its two incarnations. Refcount
4762         is not increased for scheduled elements and threadsafe properties
4763         mutexes are not properly unlocked.
4764
4765 2004-07-16  Wim Taymans  <wim@fluendo.com>
4766
4767         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
4768         (create_chain), (destroy_chain), (create_group), (destroy_group),
4769         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
4770         (group_dec_link), (gst_opt_scheduler_pad_link),
4771         (group_inc_links_for_element), (group_migrate_connected):
4772         Call group_inc_link with the proper src->sink ordering -- 
4773         break this, and we break sort_chain. patch from wingo for bug
4774         147713.
4775         Partially revert patch 1.89. When adding a loop based element to 
4776         the scheduler, the links to other groups are automatically followed
4777         and incremented. This should not happen because the bin will call
4778         pad_link explicitly for those connection, resulting in them counted 
4779         twice. Results in assertion failure on pipeline cleanup.
4780
4781 2004-07-16  Wim Taymans  <wim@fluendo.com>
4782
4783         * testsuite/schedulers/143777-2.c: (main):
4784         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
4785         (main):
4786         * testsuite/schedulers/Makefile.am:
4787         Added cleanup code to testcase 143777-2.
4788         Added testcase to show bug 147713, does not really show the
4789         deadlock as I can't figure out how to trigger it, but it does
4790         demonstrate bad ordering in the scheduler.
4791
4792 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4793
4794         * gst/gstvalue.c: (gst_value_deserialize_fraction):
4795           change strndup to g_strndup.  Fixes #147707
4796
4797 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4798
4799         * po/af.po:
4800         * po/az.po:
4801         * po/cs.po:
4802         * po/en_GB.po:
4803         * po/fr.po:
4804         * po/nl.po:
4805         * po/sr.po:
4806         * po/sv.po:
4807         * po/tr.po:
4808         * po/uk.po:
4809           updated translations
4810
4811 2004-07-16  Benjamin Otte  <otte@gnome.org>
4812
4813         * gst/gstvalue.c: (gst_greatest_common_divisor):
4814           use ints and return ints, fractions only use ints, too, so this
4815           avoids accidently casting multiplications to unsigned
4816         (gst_value_lcopy_fraction): it's ints, not uint32
4817         (gst_value_set_fraction): disallow minint, multiplying and negation
4818           are broken with it
4819         (gst_value_fraction_multiply): fix to make large numbers work and get
4820         rid of the assumption that the multiplication of two ints fits an
4821         int64 - dunno if that's true for all systems
4822         * testsuite/caps/Makefile.am:
4823         * testsuite/caps/fraction-multiply-and-zero.c:
4824         (check_multiplication), (check_equal), (zero_test), (main):
4825           add tests for all the stuff above
4826         * testsuite/caps/value_compare.c: (test1):
4827           fix comment
4828         * tests/.cvsignore:
4829         * testsuite/caps/.cvsignore:
4830         * testsuite/debug/.cvsignore:
4831         * testsuite/dlopen/.cvsignore:
4832         * testsuite/states/.cvsignore:
4833           get up to date
4834
4835 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4836
4837         * docs/manual/bins-api.xml:
4838         * docs/manual/factories.xml:
4839         * docs/manual/helloworld.xml:
4840         * docs/manual/links-api.xml: 
4841           fixes for out of date info, incorrect info and grammar
4842
4843 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4844
4845         * docs/manual/pads.xml:
4846         * docs/manual/pads-api.xml: grammar fix
4847
4848 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4849
4850         * docs/manual/pads-api.xml: typo + grammar fix
4851
4852 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4853
4854         * docs/gst/gstreamer-sections.txt:
4855           add new symbols
4856         * docs/gst/tmpl/gstelement.sgml:
4857         * docs/gst/tmpl/gstpad.sgml:
4858         * docs/gst/tmpl/gsttypes.sgml:
4859         * docs/gst/tmpl/gstvalue.sgml:
4860           update docs
4861         * gst/gststructure.c: (gst_structure_set_valist),
4862         (gst_structure_from_abbr), (gst_structure_to_abbr):
4863         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
4864         (gst_greatest_common_divisor), (gst_value_init_fraction),
4865         (gst_value_copy_fraction), (gst_value_collect_fraction),
4866         (gst_value_lcopy_fraction), (gst_value_set_fraction),
4867         (gst_value_get_fraction_numerator),
4868         (gst_value_get_fraction_denominator),
4869         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
4870         (gst_value_deserialize_fraction),
4871         (gst_value_transform_fraction_string),
4872         (gst_value_transform_string_fraction),
4873         (gst_value_compare_fraction), (_gst_value_initialize):
4874         * gst/gstvalue.h:
4875           adding GstFraction GValue type, get/set, and multiply
4876         * testsuite/caps/Makefile.am:
4877         * testsuite/caps/fraction.c: (test), (main):
4878         * testsuite/caps/string-conversions.c: (main):
4879         * testsuite/caps/value_compare.c: (test1), (main):
4880           add regression tests for GstFraction
4881
4882 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4883         
4884         * docs/manual/init-api.xml: Grammar fix
4885
4886 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4887
4888         * docs/manual/states.xml: Fix inconsistent information
4889
4890 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4891
4892         * gst/gstelement.c: (gst_element_set_state):
4893         * gst/gstpad.c: (gst_pad_try_set_caps):
4894         * gst/gststructure.c:
4895         * gst/gstthread.c: (gst_thread_child_state_change):
4896         * gst/gstvalue.c: (gst_value_compare_double):
4897         * gst/gstvalue.h:
4898         * testsuite/parse/parse1.c: (main):
4899           debugging additions and style cleanups
4900
4901 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4902
4903         * docs/manual/states.xml: Grammar fix
4904
4905 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4906
4907         * docs/manual/pads.xml: Grammar fix
4908
4909 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4910
4911         * docs/manual/elements.xml: Fixed image reference
4912
4913 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4914
4915         * docs/manual/goals.xml: Grammar fix
4916
4917 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4918
4919         * docs/manual/motivation.xml:
4920         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
4921
4922 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4923
4924         * docs/manual/motivation.xml: Fix spelling
4925
4926 2004-07-15  Benjamin Otte  <otte@gnome.org>
4927
4928         * gst/gstelement.h: 
4929           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
4930           strings.
4931         * gst/gstelement.c (gst_element_class_init):
4932           GError's are boxed, not objects
4933         * gst/gstmarshal.list:
4934           update list for the fixed error signal
4935
4936 2004-07-14  Andy Wingo  <wingo@pobox.com>
4937
4938         * gst/gsttag.c: Add a tag merge func for pointers. The header was
4939         there all along, but the function wasn't. (guile-gstreamer's build
4940         system uses the address of the function -- I wasn't actually
4941         trying to use this.)
4942
4943 2004-07-14  Andy Wingo  <wingo@pobox.com>
4944
4945         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
4946         as gst_pad_proxy_pad_link) just link to every other pad when they
4947         are called. In the case where the graph has cycles, this will mean
4948         that a call to try_set_caps will recurse. Allow this recursion
4949         and return OK, while we wait for the first try_set_caps to give a
4950         proper return value.
4951         (gst_pad_link_call_link_functions): Since this function is the
4952         only one to set the NEGOTIATING flag on a pad, if the flag is set
4953         it means that the link functions have indirectly recursed. If this
4954         happens, error out to avoid infinite recursion and an eventual
4955         SEGV.
4956         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
4957         (gst_pad_proxy_getcaps): Intersect the result with the template
4958         caps to ensure that the return value is valid.
4959
4960 2004-07-14  Andy Wingo  <wingo@pobox.com>
4961
4962         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
4963         one refcount, the calling function is the owner of the buffer.
4964
4965 2004-07-14  Wim Taymans  <wim@fluendo.com>
4966
4967         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
4968         (gst_opt_scheduler_pad_link), (group_migrate_connected):
4969         Fix stupid warning when an element is to be migrated but
4970         is already migrated.
4971
4972 2004-07-14  Wim Taymans  <wim@fluendo.com>
4973
4974         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
4975         (gst_opt_scheduler_pad_link), (group_migrate_connected):
4976         Make sure that a single non-loop-based element does not 
4977         end up in a group. This fixes the testsuite again.
4978
4979 2004-07-14  Wim Taymans  <wim@fluendo.com>
4980
4981         * gst/schedulers/gstoptimalscheduler.c: (create_group),
4982         (add_to_group), (merge_groups), (schedule_group),
4983         (gst_opt_scheduler_get_wrapper), (group_elements),
4984         (group_dec_link), (gst_opt_scheduler_pad_link),
4985         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
4986         (gst_opt_scheduler_iterate):
4987         move isolated groups to a new chain.
4988         Emit a warning instead of segfaulting in some error cases.
4989         Fix a bug where the link count between groups was not calculated 
4990         correctly. Fixes #144510.
4991
4992 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
4993         * gst/elements/gstfilesrc.c:
4994           Binary files support under Windows now OK
4995       
4996 2004-07-13  Benjamin Otte  <otte@gnome.org>
4997
4998           compatibility fixes for Solaris 8/gcc 2.95
4999         * configure.ac:
5000           include libintl libs in LDFLAGS
5001         * gstvalue.c (gst_value_deserialize_buffer):
5002           cast isxdigit stuff to int to silence compiler warning
5003
5004 2004-07-12  Benjamin Otte  <otte@gnome.org>
5005
5006         * gst/gsttypes.h:
5007           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5008           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5009           just causes support madness
5010         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5011           make it work without this
5012         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5013         (gst_file_index_commit):
5014           glib IO channels don't want binary mode
5015         * testsuite/bytestream/filepadsink.c: (main):
5016         * testsuite/bytestream/test1.c: (read_param_file):
5017           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5018
5019 2004-07-12  Benjamin Otte  <otte@gnome.org>
5020
5021         * gst/gstelement.c: (gst_element_class_init),
5022         (gst_element_set_state), (gst_element_set_state_func):
5023           virutalize gst_element_set_state, use set_state member in class
5024           struct that was already added in 0.7 for this.
5025         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5026         (gst_bin_change_state):
5027           make gst_bin_foreach works similar to other foreach functions, plug
5028           memleaks in it. Make functions using it work with the new approach.
5029           Document gst_bin_foreach, so it can be exported if we want to
5030         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5031           use virtualized set_state to make set_state on bins set the state of
5032           all its children.
5033
5034 2004-07-12  Benjamin Otte  <otte@gnome.org>
5035
5036         * configure.ac:
5037           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5038           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5039         * gst/gstpad.c: (gst_pad_alloc_buffer):
5040           allow buffer_alloc functions to return NULL and allocate a normal
5041           buffer in that case
5042
5043 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5044         * gst/elements/gstfilesink.c:
5045         * gst/elements/gstfilesrc.c:
5046         * gst/indexers/gstfileindex.c:
5047         * gst/gsttypes.h:
5048         * testsuite/bytestream/filepadsink.c:
5049         * testsuite/bytestream/test1.c:
5050           Handle binary files under Windows
5051
5052 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5053         * docs/manual/win32.xml:
5054         * win32/config.h:
5055         * win32/gst-register.vcproj:
5056         * win32/gstreamer.def:
5057           Update to another gettext public build
5058
5059 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5060         * gst/gstplugin.c:
5061           Fix an impossible C syntax
5062         * win32/config.h:
5063           Disable i18n under Windows for the moment
5064         * win32/gst-register.vcproj:
5065           Use this configuration
5066
5067 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5068         * docs/manual/quotes.xml:
5069           Keep the quotes file alive
5070         * docs/random/ds/0.9-suggested-changes:
5071           Add the suggestion of including a 'rowstride' as part of video
5072           format caps
5073
5074 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5075
5076         * gst/gstelement.c: (gst_element_set_state),
5077         (gst_element_change_state):
5078           d'oh.  Set PENDING state correctly before forcing bin to change.
5079         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5080         (gst_structure_parse_fixed_list):
5081         * gst/schedulers/gstoptimalscheduler.c:
5082         (gst_opt_scheduler_state_transition):
5083         * testsuite/states/parent.c: (main):
5084           remove comment now that it's fixed.
5085
5086 2004-07-11  Benjamin Otte  <otte@gnome.org>
5087
5088         * gst/gstclock.h:
5089           GST_SECOND shouldn't cause a conversion to unsigned.
5090         * testsuite/clock/.cvsignore:
5091         * testsuite/clock/Makefile.am:
5092         * testsuite/clock/signedness.c: (main):
5093           make sure it never will again
5094
5095 2004-07-11  Andy Wingo  <wingo@pobox.com>
5096
5097         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5098         whose state is higher than the bin state, raise the bin state to
5099         ensure that bin state := highest child state.
5100         
5101 2004-07-11  Andy Wingo  <wingo@pobox.com>
5102
5103         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5104         procedure on the children of a bin. Assumes that the procedure can
5105         change the set of children.
5106         (set_kid_state_func): New static function.
5107         (gst_bin_change_state): Use gst_bin_foreach to call
5108         set_kid_state_func. Fixes a bug: if a child had a state-change
5109         handler that removes it from the bin, there would be a segfault.
5110         Hopefully it should also work in the case where the state-change
5111         handler on one child adds or removes other children. In any case,
5112         fixes should go to gst_bin_foreach.
5113
5114 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5115
5116         * gst/gstelement.c: (gst_element_set_state):
5117           compatibility fix for latest plugins release.  Change loop back
5118           to while {}
5119
5120 2004-07-09  Wim Taymans  <wim@fluendo.com>
5121
5122         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5123         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5124         (gst_thread_main_loop):
5125         Since remove is virtual in GstBin we must not assume the 
5126         elements GList to have anothing useful.
5127         Add some more logging to GstThread and be a bit more paranoid
5128         when resetting the scheduler.
5129         Set the state of the bin to NULL before removing the children.
5130
5131 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5132
5133         * testsuite/threads/Makefile.am:
5134         * testsuite/threads/threadg.c:
5135           added test to check if problem when removing all elements from a
5136           GstThread before setting GstThread state to NULL
5137
5138 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5139
5140         * docs/gst/tmpl/gstelement.sgml:
5141         * docs/gst/tmpl/gsttypes.sgml:
5142         * gst/gstbin.c: (gst_bin_change_state):
5143         * gst/gstelement.c: (gst_element_set_state),
5144         (gst_element_change_state):
5145           rework so that for bins we try to set the state on all children
5146           as well even if the bin is in the correct state already.
5147           change while to do so at least one iteration is done.
5148           For regular elements, we fall back to the previous behaviour for
5149           now since we first need a new plugins release.
5150         * testsuite/states/parent.c: (main):
5151           test for this case
5152           Fixes #123774
5153
5154 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5155
5156         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5157         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5158         (gst_queue_release_locks), (gst_queue_change_state),
5159         (gst_queue_set_property):
5160           add proper lock debugging.  Change dispose to finalize, since
5161           we're freeing mutexes and other stuff which should happen only once.
5162
5163 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5164
5165         * docs/gst/tmpl/gstelement.sgml:
5166         * docs/gst/tmpl/gstplugin.sgml:
5167         * docs/gst/tmpl/gsttypes.sgml:
5168         * docs/pwg/building-state.xml:
5169         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5170         * gst/gstelement.c: (gst_element_change_state):
5171         * gst/gstthread.c: (gst_thread_change_state):
5172           catch wrong state changes in element base class.
5173
5174 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5175
5176         * gst/gstinfo.h:
5177           clean up layout a little.
5178
5179 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5180
5181         * configure.ac:
5182         * testsuite/Makefile.am:
5183         * testsuite/states/Makefile.am:
5184         * testsuite/states/parent.c: (main):
5185           re-enable states testsuite dir.  Add test for state changes and
5186           parent behaviour
5187
5188 2004-07-09  Wim Taymans  <wim@fluendo.com>
5189
5190         * gst/schedulers/gstoptimalscheduler.c:
5191         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5192         (element_get_reachables_func), (element_get_reachables),
5193         (debug_element), (rechain_group), (group_migrate_connected),
5194         (gst_opt_scheduler_pad_unlink):
5195         Do not try to migrate decoupled elements to a new group since
5196         they are not added to groups.
5197
5198 2004-07-08  Benjamin Otte  <otte@gnome.org>
5199
5200         * gst/gstelement.c: (gst_element_error_func):
5201           make reentrant (= allow removing elements in error handler)
5202
5203 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5204
5205         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5206         (gst_pad_send_event), (gst_pad_call_chain_function):
5207           events sent to elements below PAUSED cannot be handled, so
5208           don't try to
5209
5210 2004-07-08  Wim Taymans  <wim@fluendo.com>
5211
5212         * gst/schedulers/gstoptimalscheduler.c:
5213         (chain_recursively_migrate_group), (create_group),
5214         (schedule_group), (gst_opt_scheduler_pad_link),
5215         (group_elements_set_visited), (element_get_reachables_func),
5216         (element_get_reachables), (group_can_reach_group), (debug_element),
5217         (rechain_group), (group_migrate_connected),
5218         (gst_opt_scheduler_pad_unlink):
5219         * testsuite/schedulers/Makefile.am:
5220         Implemented group splitting and rechaining.
5221         Fixes 143777 and 143777-2 in the testsuite.
5222
5223 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5224
5225         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5226           extra debugging
5227         * gst/gstevent.h:
5228         * gst/gstinfo.c: (gst_debug_log_default):
5229           print time nicely.  add thread pointer until someone figures out
5230           a completely portable way of getting at thread id's.
5231         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5232         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5233         (gst_pad_call_chain_function):
5234           extra debugging
5235         * gst/schedulers/gstoptimalscheduler.c:
5236         (get_group_schedule_function), (loop_group_schedule_function),
5237         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5238         (pad_clear_queued), (gst_opt_scheduler_iterate):
5239           rename BUFPEN and friends to DATAPEN since that's what they are.
5240
5241 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5242
5243         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5244         * gst/gstbuffer.h:
5245         * gst/gstpad.c:
5246           cleanups and debugging
5247
5248 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5249
5250         * configure.ac:
5251         * gst/gstvalue.c: (gst_value_compare_enum),
5252         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5253         (gst_value_can_compare), (gst_value_compare):
5254         * testsuite/Makefile.am:
5255         * testsuite/enumcaps/Makefile.am:
5256         * testsuite/enumcaps/enumcaps.c:
5257           Fix enum serialization, deserialization, comparison in caps, add
5258           a test to ensure that this continues working in the future.
5259
5260 2004-07-06  David Schleef  <ds@schleef.org>
5261
5262         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5263         Fix memleak.
5264
5265 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5266
5267         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5268         * gst/gstplugin.h:
5269         * gst/registries/gstxmlregistry.c:
5270         (plugin_times_older_than_recurse), (plugin_times_older_than),
5271         (gst_xml_registry_parse_padtemplate):
5272           only rebuild registry when actual plugins have a newer time than
5273           the registry.  Fixes #145520
5274
5275 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5276
5277         * docs/manual/manual.xml:
5278         * docs/manual/win32.xml:
5279           add chapter on win32 building.  fixes #142422
5280
5281 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5282
5283         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
5284
5285         * gst/autoplug/gstspider.c: (gst_spider_init),
5286         (gst_spider_dispose):
5287           fix spider memleaks.  fixes #137863
5288
5289 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5290
5291         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
5292
5293         * gst/schedulers/gstoptimalscheduler.c:
5294         (gst_opt_scheduler_pad_unlink):
5295           fix SIGBUS error, fixes #145338
5296
5297 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5298
5299         * gst/gstobject.c: (gst_object_replace):
5300         * gst/gstscheduler.c: (gst_scheduler_get_clock):
5301         * gst/gstsystemclock.c: (gst_system_clock_obtain):
5302           clean up clock lifecycle.  Fixes #109831
5303
5304 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5305
5306         * po/LINGUAS:
5307         * po/cs.po:
5308           added Czech translation (Miloslav Trmac)
5309
5310 2004-07-04  David Schleef  <ds@schleef.org>
5311
5312         * tools/Makefile.am:
5313         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5314
5315 2004-07-04  David Schleef  <ds@schleef.org>
5316
5317         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5318
5319 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5320
5321         * gst/gstbin.c: (gst_bin_restore_thyself):
5322           chain to parent restore so the bins get restored correctly
5323           in the editor
5324
5325 2004-07-03  David Schleef  <ds@schleef.org>
5326
5327         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5328         Actually do something in these functions, like before the big
5329         caps change.  (bug #145137)
5330
5331 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5332
5333         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
5334         (gst_element_get_compatible_pad_filtered):
5335         * gst/gstthread.c: (gst_thread_main_loop):
5336           more debugging
5337
5338 2004-07-02  David Schleef  <ds@schleef.org>
5339
5340         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
5341         * gst/gstobject.h:
5342         * gst/gstparse.h:
5343         * gst/gsttrace.h:
5344         * gst/gstxml.h:
5345
5346 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5347
5348         * gst/gstpad.c: (gst_pad_check_schedulers),
5349         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5350         (gst_pad_link_prepare):
5351           revert until testsuite is fixed
5352
5353 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5354
5355         * testsuite/Makefile.am:
5356         * testsuite/caps/filtercaps.c: (main):
5357         * testsuite/clock/clock1.c: (main):
5358         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
5359           fix some more tests
5360
5361 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5362
5363         * testsuite/cleanup/cleanup1.c: (create_pipeline):
5364         * testsuite/cleanup/cleanup2.c: (create_pipeline):
5365         * testsuite/cleanup/cleanup4.c: (main):
5366           fix testsuite
5367
5368 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5369
5370         * libs/gst/control/control.c:
5371         * libs/gst/control/dparam.c:
5372         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
5373         * libs/gst/control/dparammanager.c:
5374         * libs/gst/control/dparammanager.h:
5375         * testsuite/dynparams/Makefile.am:
5376         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
5377         (gst_dptest_change_state), (gst_dptest_chain), (main):
5378           fix testcase for dparams
5379           add debugging category
5380
5381 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5382
5383         * testsuite/Rules:
5384           change path
5385
5386 2004-07-02  Benjamin Otte  <otte@gnome.org>
5387
5388         * tests/.cvsignore:
5389         * tests/Makefile.am:
5390         * tests/mass_elements.c: (gst_get_current_time), (main):
5391           add simple benchmark to test various speeds of fakesrc ! identity !
5392           identity ! ... ! fakesink.
5393           Usage: mass_elements [num_identities] [num_buffers]
5394           If not specified they default to 1000.
5395
5396 2004-07-02  Benjamin Otte  <otte@gnome.org>
5397
5398         * gst/gstpad.c: (gst_pad_check_schedulers),
5399         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5400         (gst_pad_link_prepare):
5401           check that pads that get linked belong to the same manager. The old
5402           code allowed linking elements before putting them into bins, so it
5403           worked to link them and then put them in different threads, which
5404           lead to weird behaviour.
5405           Since this effectively disallows linking elements before putting
5406           them in a bin, some applications might not work after this and error
5407           out. If these applications are too critical, we might need to revert
5408           that patch. Please test this before the next release...
5409
5410 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5411
5412         * gst/gstpad.c: (gst_pad_get_caps):
5413           throw an error if the getcaps function does not return a subset of
5414           the template caps.
5415         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
5416           make disconts without position info an error in debugging
5417         * tests/spidey_bench.c: (handoff), (main):
5418           don't count first try when averaging
5419
5420 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5421
5422         * gst/gstplugin.c: (gst_plugin_load_file):
5423           figure out problem with dynamic test
5424
5425 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5426
5427         * docs/gst/Makefile.am:
5428           fix docs build
5429
5430 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5431
5432         * po/POTFILES.in:
5433         * po/af.po:
5434         * po/az.po:
5435         * po/en_GB.po:
5436         * po/fr.po:
5437         * po/nl.po:
5438         * po/sr.po:
5439         * po/sv.po:
5440         * po/tr.po:
5441         * po/uk.po:
5442         * tools/gst-register.c: (plugin_added_func), (main):
5443           i18n-ize -register, fix plural
5444
5445 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5446
5447         * gst/elements/gstidentity.c: (gst_identity_class_init),
5448         (gst_identity_init), (gst_identity_chain),
5449         (gst_identity_set_property), (gst_identity_get_property):
5450         * gst/elements/gstidentity.h:
5451           check for perfect stream
5452
5453 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5454
5455         * gst/elements/gstidentity.c: (gst_identity_chain):
5456           print offset_end
5457
5458 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5459
5460         * docs/gst/Makefile.am:
5461         * docs/gst/gstreamer-docs.sgml:
5462           doc fixes
5463
5464 2004-06-24  David Schleef  <ds@schleef.org>
5465
5466         * autogen.sh:  Remove call to env, since the buildbot isn't
5467         broken anymore.
5468
5469 2004-06-24  Wim Taymans  <wim@fluendo.com>
5470
5471         * gst/elements/Makefile.am:
5472         * gst/elements/gstelements.c:
5473         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
5474         (gst_multifdsink_class_init), (gst_multifdsink_init),
5475         (gst_multifdsink_add), (gst_multifdsink_remove),
5476         (gst_multifdsink_clear), (gst_multifdsink_chain),
5477         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
5478         * gst/elements/gstmultifdsink.h:
5479         Added an element that writes to multiple filedescriptors at once.
5480
5481 2004-06-24  Benjamin Otte  <otte@gnome.org>
5482
5483         * gst/parse/grammar.y:
5484           don't try to link elements before they have been added to bins
5485
5486 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5487
5488         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
5489         (gst_file_pad_get_length):
5490         * libs/gst/bytestream/filepad.h:
5491           add 2 new functions
5492
5493 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5494
5495         * docs/gst/gstreamer-sections.txt:
5496         remove from docs, the define that Benjamin removed from gstelement.h
5497
5498 2004-06-22  Benjamin Otte  <otte@gnome.org>
5499
5500         * gst/gstelement.h:
5501           remove define that referenced a nonexisting GstElement struct member
5502
5503 2004-06-20  Benjamin Otte  <otte@gnome.org>
5504
5505         * gst/gstdata.c: (gst_data_is_writable):
5506           whoops, return values were wrong, so writable data was marked as
5507           non-writable and vice versa. (fixes #143953, spotted by Francis
5508           Labonte)
5509           Shows how rarely we need to copy data ;)
5510
5511 2004-06-20  Benjamin Otte  <otte@gnome.org>
5512
5513         * testsuite/schedulers/.cvsignore:
5514         * testsuite/schedulers/Makefile.am:
5515         * testsuite/schedulers/143777-2.c: (main):
5516           add test for opt breakage in bug #143777
5517
5518 2004-06-20  Benjamin Otte  <otte@gnome.org>
5519
5520         * gst/gstpad.c: (gst_pad_call_chain_function):
5521           check for if we were unlinked while inside the chainfunction (fixes
5522           entrygthread having issues with #143777)
5523         * testsuite/schedulers/143777.c: (main):
5524         * testsuite/schedulers/Makefile.am:
5525           add a test for that fix
5526
5527 2004-06-20  Benjamin Otte  <otte@gnome.org>
5528
5529         * gst/gstvalue.c: (gst_value_set_int_range):
5530           test that start is smaller then end
5531         * libs/gst/bytestream/Makefile.am:
5532         * libs/gst/bytestream/filepad.c: 
5533         * libs/gst/bytestream/filepad.h:
5534           add GstFilePad - a pad that behaves like a FILE*
5535         * testsuite/bytestream/.cvsignore:
5536         * testsuite/bytestream/Makefile.am:
5537         * testsuite/bytestream/filepadsink.c: 
5538           test for the GstFilePad
5539
5540 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5541
5542         * gst/elements/gstidentity.c: (gst_identity_class_init),
5543         (gst_identity_init), (gst_identity_set_clock),
5544         (gst_identity_chain), (gst_identity_set_property),
5545         (gst_identity_get_property):
5546         * gst/elements/gstidentity.h:
5547         * gst/gstclock.c: (gst_clock_id_wait):
5548           add a "sync" property to sync to the clock
5549
5550 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5551
5552         * gst/gstelementfactory.c: (gst_element_factory_create):
5553           make the freakin "elementfactory bla has no type" message more
5554           useful. So we actually can do something when someone shows up
5555           complaining about it.
5556
5557 2004-06-15  Johan Dahlin  <johan@gnome.org>
5558
5559         * tools/gst-inspect.c (main): Fallback to plugin if no element is
5560         found. This matches the old behavior better. Thanks to Thomas for
5561         pointing out.
5562
5563 2004-06-14  David Schleef  <ds@schleef.org>
5564
5565         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
5566         -fomit-frame-pointer.  Appears to generate correct code in
5567         other cases as well.
5568
5569 2004-06-14  Johan Dahlin  <johan@gnome.org>
5570
5571         * tools/gst-inspect.c (main): Add two new command line options: -a
5572         to print all elements and -n to print the name on each line. Also
5573         fix some error reporting.
5574         (main): Simplify, remove -n and always print names if -a is specified
5575
5576 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
5577
5578         * win32/gstconfig.h:
5579         * win32/GSTreamer.vcproj:
5580         * win32/Makefile:
5581         * gst/gstconfig.h.in:
5582         * gst/gst.h:
5583         * gst/gstbin.h:
5584         * gst/gstelement.h:
5585         * gst/gstevent.h:
5586         * gst/gstobject.h:
5587         * gst/gstpad.h:
5588         * docs/gst/gstreamer-sections.txt:
5589         * docs/gst/tmpl/gstconfig.sgml:
5590           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
5591
5592 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5593         * docs/gst/gstreamer-sections.txt:
5594         * docs/gst/tmpl/gstconfig.sgml:
5595         Add the GSTREAMER_EXPORT macro to the docs
5596
5597 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
5598
5599         * tools/gst-compprep.c: (handle_xmlerror), (main):
5600         Add a check for the version that introduced SetStructuredError to fix
5601         the build on FC1
5602
5603 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5604
5605         * win32/msvc71.sln:
5606         * win32/testsuite/:
5607           prepare to compile the testsuite with MSVC
5608
5609 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5610
5611         * docs/manual/win32.xml:
5612           attempt to transform the Win32 README into an XML doc
5613
5614 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5615
5616         * gst/gst.c:
5617         * gst/gstbin.*:
5618         * gst/config.h.in:
5619         * gst/gstelement.*:
5620         * gst/gstevent.h:
5621         * gst/gstobject.*:
5622         * gst/gstpad.h:
5623         * tools/gst-register.c:
5624         * win32/gstreamer.def:
5625           extern symbols are now exported for the Windows DLL
5626
5627 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5628
5629         * gst/gstinfo.h:
5630           fix a problem to enable/disable DEBUG under MSVC
5631
5632 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5633
5634         * win32/:
5635           enable more debug code in DEBUG build
5636
5637 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
5638
5639         * win32/config.h:
5640         * gst/gst-i18n-app.h:
5641           enable NLS under Windows
5642
5643 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
5644         * tools/gst-compprep.c: (handle_xmlerror), (main):
5645           Make an error that baffled me a bit clearer
5646
5647 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5648
5649         * gst/gstqueue.c:
5650           don't use g_queue_get_length () because it's 2.4, use ->length
5651
5652 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
5653
5654         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
5655
5656         * tools/gst-inspect.c: (print_signal_info):
5657           don't free random data twice. (fixes #144185)
5658
5659 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
5660
5661         * gst/gstqueue.c:
5662         * gst/gstqueue.h:
5663           fix removing from the wrong queue on event timeout
5664           fix disposing of the event queue by casting correctly
5665           add mutexes for handling the event queue
5666           someone was sleeping when fixing queue last time around :)
5667
5668 2004-06-10  Johan Dahlin  <johan@gnome.org>
5669
5670         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
5671         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
5672
5673 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5674
5675         * docs/random/gdp:
5676         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
5677         * libs/gst/dataprotocol/dataprotocol.c:
5678         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5679         (gst_dp_buffer_from_header):
5680         * libs/gst/dataprotocol/dataprotocol.h:
5681         * libs/gst/dataprotocol/dp-private.h:
5682           rev version to 0.1, add buffer flags and copy them
5683
5684 2004-06-09  Johan Dahlin  <johan@gnome.org>
5685
5686         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
5687         the flags from the buffer we're copying.
5688
5689 2004-06-09  Wim Taymans  <wim@fluendo.com>
5690
5691         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
5692         * gst/elements/gstidentity.c: (gst_identity_init),
5693         (gst_identity_chain):
5694         Print more buffer info in fakesink.
5695         Make identity output similar to fakesink.
5696
5697 2004-06-07  Daniel Gazard  <dany42@free.fr>
5698
5699         reviewed by Benjamin Otte  <otte@gnome.org>
5700
5701         * configure.ac:
5702           fix cross compiling not working. (fixes #143741)
5703
5704 2004-06-07  Benjamin Otte  <otte@gnome.org>
5705
5706         * gst/gstelement.c: (gst_element_set_time_delay):
5707           add failure check
5708         * gst/gstinfo.h:
5709           put brackets around macro arguments of GST_TIME_ARGS, add note to
5710           move it to correct header in 0.9
5711
5712 2004-06-07  Benjamin Otte  <otte@gnome.org>
5713
5714         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
5715         (gst_file_index_load), (_file_index_id_save_entries),
5716         (gst_file_index_commit), (gst_file_index_add_association),
5717         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
5718         (gst_file_index_plugin_init):
5719           make debugging use a default category
5720
5721 2004-06-06  David Moore  <dcm@acm.org>
5722
5723         reviewed by Benjamin Otte  <otte@gnome.org>
5724
5725         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
5726         (gst_fdsrc_change_state):
5727           reset offset counter when going READY => PAUSED. (fixes #142903)
5728
5729 2004-06-06  ed@catmur.co.uk
5730
5731         reviewed by Benjamin Otte  <otte@gnome.org>
5732
5733         * gst/registries/gstxmlregistry.c:
5734         (gst_xml_registry_rebuild_recurse):
5735           don't rely on g_dir_open to figure out if a file is a directory, use
5736           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
5737           directories. (fixes #142850)
5738
5739 2004-06-06  Benjamin Otte  <otte@gnome.org>
5740
5741         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
5742           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
5743         * libs/gst/bytestream/adapter.c:
5744         * libs/gst/bytestream/adapter.h:
5745           fix copyright in header and typo in debugging category name
5746
5747 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5748
5749         * configure.ac:
5750           bump nano to cvs
5751
5752 === release 0.8.3 ===
5753
5754 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5755
5756         * configure.ac:
5757           update libtool versioning
5758           do a new release
5759         * docs/gst/tmpl/gstelement.sgml:
5760         * docs/gst/tmpl/gsttypes.sgml:
5761         * gst/gstinfo.c: (_gst_debug_init):
5762           put back GST_CAT_DATAFLOW to fix API breakage
5763
5764 2004-06-04  David Schleef  <ds@schleef.org>
5765
5766         * autogen.sh: Add a temporary 'env' to test buildbot problems.
5767
5768 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5769
5770         * configure.ac:
5771           bump nano to cvs
5772
5773 === release 0.8.2 ===
5774
5775 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5776
5777         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
5778           check GST_DEBUG environment variable which is parsed the same way
5779           as --gst-debug=
5780
5781 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
5782
5783         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
5784                             gstmd5sink.c gstshaper.c gsttee.c
5785                             gsttypefindelement.c
5786         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
5787
5788           - removing trailing commas at end of enums
5789             it is correct C99 code but C90 compilers would complain
5790             (AIX, Forte, ...)
5791             ('should' fix #143290, at least partially)
5792
5793 2004-05-27  Wim Taymans  <wim@fluendo.com>
5794
5795         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
5796         (chain_group_set_enabled), (create_group), (add_to_group),
5797         (merge_groups), (setup_group_scheduler), (group_elements),
5798         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
5799         Don't try to follow the pad connections with other groups
5800         when a loop based element is added to the scheduler because
5801         the bin will inform the scheduler about the pad links a little
5802         later.
5803
5804 2004-05-27  Wim Taymans  <wim@fluendo.com>
5805
5806         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
5807         (remove_from_chain), (chain_group_set_enabled),
5808         (setup_group_scheduler), (group_element_set_enabled),
5809         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
5810         (gst_opt_scheduler_show):
5811         Elements without a group can do a state change as well, just wait
5812         with the setup of the scheduling function when it is added to a
5813         chain.
5814
5815 2004-05-27  Wim Taymans  <wim@fluendo.com>
5816
5817         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
5818         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
5819         (merge_groups), (setup_group_scheduler),
5820         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
5821         (gst_opt_scheduler_show):
5822         Fixes to maintain internal consistency of the scheduler data
5823         structures. 
5824          - adding an enabled group to a chain should increment the
5825            number of enabled elements in that chain.
5826          - removing an enabled group from a chain could disable the
5827            chain.
5828          - removing a disabled group from a chain could enable the
5829            chain.
5830          - add g_assert when internal inconsistency is detected.
5831          - adding an element to a group could increase the number of
5832            links this group has with other groups.
5833          - merging two groups also merges the chains.
5834          - also show group links in the _show method.
5835            
5836
5837 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5838
5839         * gst/gstcaps.c: (gst_caps_structure_simplify):
5840           don't print error messages when there is no error
5841         * gst/gstvalue.c: (gst_value_compare_int_range):
5842           compare the second value, too
5843         * testsuite/caps/Makefile.am:
5844         * testsuite/caps/random.c: (assert_on_error), (main):
5845           add tests to make sure the two things above are checked for
5846
5847 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
5848
5849         * configure.ac:
5850         * libs/gst/dataprotocol/Makefile.am:
5851         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
5852         * libs/gst/dataprotocol/dataprotocol.h:
5853           wrap header in GST_ENABLE_NEW.  make code use it
5854
5855 2004-05-23  Johan Dahlin  <johan@gnome.org>
5856
5857         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
5858         so verbose and print GstElement signal names all the time.
5859
5860 2004-05-22  David Schleef  <ds@schleef.org>
5861
5862         * gst/registries/gstxmlregistry.c:
5863         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
5864         (bug #142957)
5865
5866 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
5867
5868         * configure.ac:
5869           scrub cflags for glib2 so gcc doesn't complain when glib is in
5870           /usr/local
5871
5872 2004-05-21  Johan Dahlin  <johan@gnome.org>
5873
5874         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
5875         __GNUC__, patch from Brian Cameron, fixes bug #142804
5876
5877 2004-05-20  David Schleef  <ds@schleef.org>
5878
5879         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
5880         comparison code.  (bug #142819)
5881
5882 2004-05-20  Wim Taymans  <wim@fluendo.com>
5883
5884         * gst/gstbuffer.c: (gst_buffer_default_copy):
5885         * gst/gstbuffer.h:
5886         Added Comment to a flag.
5887         copy relevant flags in _buffer_copy.
5888
5889 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5890
5891         reviewed by: Wim Taymans <wim at fluendo dot com>
5892
5893         * gst/gstbuffer.h:
5894           add GST_BUFFER_IN_CAPS buffer flag
5895         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5896         (gst_structure_parse_any_list), (gst_structure_parse_list),
5897         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
5898         * gst/gstvalue.c: (gst_value_serialize_any_list),
5899         (gst_value_transform_any_list_string),
5900         (gst_value_list_prepend_value), (gst_value_list_append_value),
5901         (gst_value_list_get_size), (gst_value_list_get_value),
5902         (gst_value_transform_list_string),
5903         (gst_value_transform_fixed_list_string),
5904         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
5905         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
5906         (_gst_value_initialize):
5907         * gst/gstvalue.h:
5908           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
5909           < , > as a format.
5910         * testsuite/caps/string-conversions.c: (main):
5911           add regression tests for < >
5912
5913 2004-05-20  Johan Dahlin  <johan@gnome.org>
5914
5915         * docs/gst/Makefile.am (all-local): Re-add
5916
5917 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5918
5919         * docs/gst/Makefile.am:
5920         * docs/gst/gstreamer-docs.sgml:
5921         * docs/libs/Makefile.am:
5922         * docs/libs/gstreamer-libs-docs.sgml:
5923           fix distcheck issues
5924
5925 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
5926
5927         * libs/gst/dataprotocol/Makefile.am:
5928           add to autotest
5929
5930 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
5931
5932         * libs/gst/dataprotocol/Makefile.am:
5933         * libs/gst/dataprotocol/dataprotocol.c:
5934         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5935         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
5936         * libs/gst/dataprotocol/dp-private.h:
5937           use GST macros to read/write fixed length ints
5938           add some more asserts
5939
5940 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
5941
5942         * docs/libs/gstreamer-libs-docs.sgml:
5943         * docs/libs/gstreamer-libs-sections.txt:
5944           remove idct and putbits
5945         * configure.ac:
5946         * docs/libs/tmpl/gstdataprotocol.sgml:
5947         * libs/gst/Makefile.am:
5948         * libs/gst/dataprotocol/Makefile.am:
5949         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
5950         (buffer_test), (caps_test), (event_test), (main):
5951         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
5952         (gst_dp_dump_byte_array), (gst_dp_init),
5953         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
5954         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
5955         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
5956         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
5957         (gst_dp_validate_header), (gst_dp_validate_payload),
5958         (gst_dp_validate_packet), (plugin_init):
5959         * libs/gst/dataprotocol/dataprotocol.h:
5960         * libs/gst/dataprotocol/dp-private.h:
5961           add dataprotocol
5962
5963 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5964
5965         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
5966           fix int variable deserialization and add a helper so we can actually
5967           debug this.
5968
5969 2004-05-18  David Schleef  <ds@schleef.org>
5970
5971         * testsuite/debug/commandline.c: (main): Call ./commandline, not
5972           argv[0].  Calling yourself is probably not the best way to
5973           construct a test like this, btw.
5974
5975 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5976
5977         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
5978           don't claim to be more intelligent than a scheduler when the
5979           scheduler claims the pipeline is stopped
5980         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
5981         (safe_cothread_destroy),
5982         (gst_entry_scheduler_remove_all_cothreads),
5983         (gst_entry_scheduler_reset), (_remove_cothread),
5984         (gst_entry_scheduler_state_transition):
5985           hold off cothread destruction if we're not in main cothread
5986         * configure.ac:
5987         * testsuite/Makefile.am:
5988           add new test dir
5989         * testsuite/schedulers/.cvsignore:
5990         * testsuite/schedulers/Makefile.am:
5991           add tests
5992         * testsuite/schedulers/relink.c: (cb_handoff), (main):
5993           check relinking and adding/removing elements from a running pipeline
5994         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
5995           check unlinking in a running pipeline
5996         * testsuite/schedulers/unref.c: (cb_handoff), (main):
5997           check unreffing a running pipeline
5998         * testsuite/schedulers/useless_iteration.c: (main):
5999           check iterating a pipeline that contains running threads works
6000
6001 2004-05-18  David Schleef  <ds@schleef.org>
6002
6003         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6004           is false.
6005
6006 2004-05-18  Wim Taymans  <wim@fluendo.com>
6007
6008         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6009         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6010         Fixed an error introduced with patch for 1.63. When setting
6011         a get based element as the entry point in a group, make sure
6012         to mark the group as GET based.
6013
6014 2004-05-18  Wim Taymans  <wim@fluendo.com>
6015
6016         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6017         (setup_group_scheduler), (loop_group_schedule_function),
6018         (gst_opt_scheduler_pad_link):
6019         Added some more debug info and fixed a bug where the group
6020         type was set to LOOP but it was in fact unknown.
6021
6022 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6023
6024         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6025           make resetting scheduler work twice in a row
6026
6027 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6028
6029         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6030         (CREATE_USERIALIZATION), (_gst_value_initialize),
6031         (gst_value_compare_float), (gst_value_serialize_float),
6032         (gst_value_deserialize_float), (gst_value_compare_enum),
6033         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6034           add serialization and comparison functions for long, int64, enum and
6035           float values
6036         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6037           use best serialization function in type hierarchy instead of only a
6038           matching one. This is required for enums to work.
6039         * gst/parse/grammar.y:
6040           use gst_caps_deserialize
6041         * testsuite/parse/Makefile.am:
6042           parse1 now works
6043         * testsuite/parse/parse1.c: (main):
6044           remove aggregator check, aggregator is broken, this test works now
6045           but fails because of bug #138012
6046         * testsuite/parse/parse2.c: (main):
6047           s/xvideosink/xvimagesink - this test looks a lot like we should
6048           disable it
6049
6050 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6051
6052         * gst/gstelement.c: (gst_element_class_init):
6053           whoops, store the signal id correctly
6054         * gst/schedulers/gstbasicscheduler.c:
6055         (gst_basic_scheduler_chain_wrapper):
6056           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6057           chain function isn't linked
6058
6059 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6060         * configure.ac:
6061         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6062         support until we decide where the flags should be used
6063         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6064         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6065         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6066         Output refused caps in the debug info
6067
6068 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6069
6070         * gst/elements/gstidentity.c: (gst_identity_chain):
6071           add duration debug
6072         * gst/gstinfo.c: (gst_debug_log_default):
6073           add timestamp
6074
6075 2004-05-13  Benjamin Otte  <otte@gnome.org>
6076
6077         * gst/gstpipeline.c: (gst_pipeline_dispose),
6078         (gst_pipeline_change_state):
6079           call gst_scheduler_reset on dispose (fixes #141416)
6080
6081 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6082
6083         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6084           compute mapsize correctly
6085         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6086           use correct datatypes when calling a varargs function
6087         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6088           push a DISCONT event as first thing
6089         * gst/gst_private.h:
6090         * gst/gstinfo.c: (_gst_debug_init):
6091           remove GST_DATAFLOW debugging category
6092         * gst/gstbin.c: (gst_bin_iterate):
6093           use GST_SCHEDULING category
6094         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6095         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6096         (gst_pad_call_get_function):
6097           add GST_DATAFLOW to easily track flow of buffers or events.
6098         * gst/gstqueue.c: (gst_queue_get_type),
6099         (gst_queue_handle_pending_events), (gst_queue_chain),
6100         (gst_queue_get), (gst_queue_handle_src_event):
6101           use own static debugging category GST_DATAFLOW for dataflow,
6102           use DEBUG category for showing which path events go, use LOG
6103           category for buffers.
6104
6105 2004-05-10  David Schleef  <ds@schleef.org>
6106
6107         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6108
6109 2004-05-10  David Schleef  <ds@schleef.org>
6110
6111         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6112         symbols, because otherwise we don't know what they are.  Thanks,
6113         the GStreamer team.
6114         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6115
6116 2004-05-10  David Schleef  <ds@schleef.org>
6117
6118         (from Steve Lhomme)
6119         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6120         are deleted.  Fix.
6121         * win32/Makefile.inspect:
6122         * win32/Makefile.launch:
6123         * win32/Makefile.register:
6124
6125 2004-05-10  David Schleef  <ds@schleef.org>
6126
6127         * gst/gstinfo.h: Add missing inline function.
6128         * gst/gsttrace.c: add include
6129         * gst/parse/grammar.y: remove unused code
6130         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6131         more portable.
6132         * tools/gst-register.c: wrap unistd.h
6133         
6134         More additions/fixes from Steve for the MSVC build.
6135         * win32/GStreamer.vcproj:
6136         * win32/Makefile:
6137         * win32/Makefile.inspect:
6138         * win32/Makefile.launch:
6139         * win32/Makefile.register:
6140         * win32/README.txt:
6141         * win32/gst-inspect.vcproj:
6142         * win32/gst-launch.vcproj:
6143         * win32/gst-register.vcproj:
6144         * win32/gstbytestream.def:
6145         * win32/gstbytestream.vcproj:
6146         * win32/gstconfig.h:
6147         * win32/gstelements.def:
6148         * win32/gstelements.vcproj:
6149         * win32/gstenumtypes.c:
6150         * win32/gstenumtypes.h:
6151         * win32/gstoptimalscheduler.def:
6152         * win32/gstoptimalscheduler.vcproj:
6153         * win32/gstreamer.def:
6154         * win32/gstspider.def:
6155         * win32/gstspider.vcproj:
6156         * win32/gstversion.h:
6157         * win32/msvc71.sln:
6158
6159 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6160
6161         * gst/gstelement.c: (gst_element_class_init),
6162         (gst_element_no_more_pads):
6163         * gst/gstelement.h:
6164           add gst_element_no_more_pads and the "no-more-pads" signal
6165
6166 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6167
6168         * gst/gstregistry.c: (gst_registry_add_plugin):
6169           refuse to add plugins when a plugin with same name is already
6170           registered. Fixes a bunch of "How to remove plugins?" issues.
6171           May lead to other problems though, let's test
6172
6173 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6174
6175         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6176         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6177         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6178
6179 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6180
6181         * tests/Makefile.am: fix am16 issue
6182
6183 2004-05-09  Benjamin Otte  <otte@gnome.org>
6184
6185         * libs/gst/bytestream/Makefile.am:
6186           we should indeed add .c files to makefiles or they won't be built
6187           (d'oh)
6188
6189 2004-05-08  Benjamin Otte  <otte@gnome.org>
6190
6191         * gst/gstpad.c: (gst_pad_proxy_fixate):
6192           really reduce the set of caps
6193
6194 2004-05-08  Benjamin Otte  <otte@gnome.org>
6195
6196         * tests/Makefile.am:
6197         * tests/spidey_bench.c: (handoff), (main):
6198           add benchmark to test how long spider needs to create a pipeline
6199
6200 2004-05-08  Benjamin Otte  <otte@gnome.org>
6201
6202         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6203           mark links as unengaged when unnegotiating instead of deactivating.
6204           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6205
6206 2004-05-08  Benjamin Otte  <otte@gnome.org>
6207
6208         * docs/manual/helloworld.xml:
6209           s/audiosink/osssink (patch by Patrick Guimond)
6210
6211 2004-05-07  David Schleef  <ds@schleef.org>
6212
6213         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6214         since it contains important stuff.
6215
6216 2004-05-07  David Schleef  <ds@schleef.org>
6217
6218         * testsuite/caps/caps.c: (test3), (main): A check for appending
6219         ANY caps.
6220
6221 2004-05-07  David Schleef  <ds@schleef.org>
6222
6223         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6224         which may contain commas.  Fixes detection of -Wa,-mregnames
6225
6226 2004-05-06  David Schleef  <ds@schleef.org>
6227
6228         Changes to handle compilers that don't have variadic macro
6229         support.  In particular, glib headers define some inlines
6230         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6231         builds.
6232         * gst/Makefile.am:
6233         * gst/cothreads.c:
6234         * gst/elements/gstfdsink.c:
6235         * gst/elements/gstfdsrc.c:
6236         * gst/elements/gstfilesink.c:
6237         * gst/elements/gstfilesrc.c:
6238         * gst/gst_private.h:
6239         * gst/gstatomic.c:
6240         * gst/gstcaps.c: (gst_caps_append):
6241         * gst/gstcpu.c: (gst_cpuid_i386):
6242         * gst/gstelement.c:
6243         * gst/gsterror.c:
6244         * gst/gstfilter.c:
6245         * gst/gstinfo.h:
6246         * gst/gstprobe.c:
6247         * gst/gstquery.c:
6248         * gst/gstregistry.c:
6249         * gst/gststructure.c:
6250         * gst/gsttaginterface.c:
6251         * gst/gsttrace.c: (gst_trace_new):
6252         * gst/gsttrashstack.c:
6253         * gst/gsturi.c:
6254         * gst/gstvalue.c:
6255         * gst/parse/grammar.y:
6256         * gst/parse/parse.l:
6257         * tools/gst-inspect.c: (main):
6258         * tools/gst-launch.c: (main):
6259         * tools/gst-xmlinspect.c: (PUT_STRING):
6260
6261 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6262
6263         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6264         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6265         * gst/elements/gstfilesrc.h:
6266           send NEW_MEDIA events correctly
6267         * gst/elements/gsttypefindelement.c: (start_typefinding),
6268         (gst_type_find_element_handle_event):
6269           restart typefinding when we get a NEW_MEDIA event
6270         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6271         (gst_bin_dispose):
6272           don't die when someone removes elements in callbacks
6273         * gst/gstelement.c: (gst_element_change_state):
6274           improve debugging
6275         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
6276           we need a NEW_MEDIA event to engage a link
6277         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
6278           don't g_print debugging stuff
6279         * testsuite/caps/simplify.c: (check_caps):
6280
6281 2004-05-04  Benjamin Otte  <otte@gnome.org>
6282
6283         * gst/parse/grammar.y:
6284           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
6285
6286 2004-05-04  Benjamin Otte  <otte@gnome.org>
6287
6288         * testsuite/caps/renegotiate.c: (main):
6289           improve output in error case
6290
6291 2004-05-04  Benjamin Otte  <otte@gnome.org>
6292
6293         * gst/parse/grammar.y:
6294           fix assert to not trigger when there's no error argument
6295         * gst/parse/parse.l:
6296           fix definition of caps to allow more than two structures
6297         * testsuite/caps/Makefile.am:
6298         * testsuite/caps/renegotiate.c: (main):
6299           it's sinesrc and works in that case
6300
6301 2004-05-04  Wim Taymans  <wim@fluendo.com>
6302
6303         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6304         (group_dec_link), (gst_opt_scheduler_pad_unlink):
6305         when removing an element from a group, we always need to
6306         decrement the link count that this group had with other 
6307         groups through the element.
6308         added an extra assert to catch inconsistencies when decrementing
6309         the link count.
6310
6311 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6312
6313         * configure.ac:
6314         * docs/gst/Makefile.am:
6315         * docs/gst/gstreamer-sections.txt:
6316         * docs/gst/tmpl/gstcompat.sgml:
6317         * examples/appreader/Makefile.am:
6318         * examples/cutter/Makefile.am:
6319         * examples/events/Makefile.am:
6320         * examples/helloworld/Makefile.am:
6321         * examples/helloworld2/Makefile.am:
6322         * examples/launch/Makefile.am:
6323         * examples/manual/Makefile.am:
6324         * examples/mixer/Makefile.am:
6325         * examples/pingpong/Makefile.am:
6326         * examples/plugins/Makefile.am:
6327         * examples/queue/Makefile.am:
6328         * examples/queue2/Makefile.am:
6329         * examples/queue3/Makefile.am:
6330         * examples/queue4/Makefile.am:
6331         * examples/retag/Makefile.am:
6332         * examples/thread/Makefile.am:
6333         * examples/typefind/Makefile.am:
6334         * examples/xml/Makefile.am:
6335         * gst/Makefile.am:
6336         * gst/autoplug/Makefile.am:
6337         * gst/elements/Makefile.am:
6338         * gst/gstcompat.h:
6339         * gst/indexers/Makefile.am:
6340         * gst/parse/Makefile.am:
6341         * gst/registries/Makefile.am:
6342         * gst/schedulers/Makefile.am:
6343         * libs/gst/bytestream/Makefile.am:
6344         * libs/gst/control/Makefile.am:
6345         * libs/gst/getbits/Makefile.am:
6346         * po/af.po:
6347         * po/az.po:
6348         * po/en_GB.po:
6349         * po/fr.po:
6350         * po/nl.po:
6351         * po/sr.po:
6352         * po/sv.po:
6353         * po/tr.po:
6354         * po/uk.po:
6355         * tests/Makefile.am:
6356         * tests/bufspeed/Makefile.am:
6357         * tests/instantiate/Makefile.am:
6358         * tests/memchunk/Makefile.am:
6359         * tests/muxing/Makefile.am:
6360         * tests/negotiation/Makefile.am:
6361         * tests/probes/Makefile.am:
6362         * tests/sched/Makefile.am:
6363         * tests/seeking/Makefile.am:
6364         * tests/threadstate/Makefile.am:
6365         * testsuite/caps/Makefile.am:
6366         * testsuite/cleanup/Makefile.am:
6367         * testsuite/dlopen/Makefile.am:
6368         * testsuite/dynparams/Makefile.am:
6369         * testsuite/plugin/Makefile.am:
6370         * testsuite/states/Makefile.am:
6371         * tools/Makefile.am:
6372           reorganize compile/link flags to be consistent
6373           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
6374
6375 2004-05-04  David Schleef  <ds@schleef.org>
6376
6377         The "once more, with feeling" check-in.
6378         * testsuite/caps/Makefile.am: dist caps_strings
6379         * testsuite/caps/renegotiate.c: (main): This test triggers a
6380           segfault in the core.  Marking as failing.
6381
6382 2004-05-03  David Schleef  <ds@schleef.org>
6383
6384         * testsuite/caps/deserialize.c: (main): Fix problems noticed
6385           by the build bots.
6386         * testsuite/caps/renegotiate.c: (main): Same.
6387
6388 2004-05-03  David Schleef  <ds@schleef.org>
6389
6390         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
6391
6392 2004-05-03  David Schleef  <ds@schleef.org>
6393
6394         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
6395           variable to find our source file.
6396
6397 2004-05-03  David Schleef  <ds@schleef.org>
6398
6399         * configure.ac:  Link plugins with libgstreamer and dependent
6400           libraries
6401         * testsuite/caps/Makefile.am:
6402         * testsuite/caps/caps_strings:
6403         * testsuite/caps/deserialize.c: (main): Add a little test to slog
6404           through a file of caps strings and test each one
6405
6406 2004-05-04  Benjamin Otte  <otte@gnome.org>
6407
6408         * libs/gst/bytestream/Makefile.am:
6409         * libs/gst/bytestream/adapter.c: 
6410         * libs/gst/bytestream/adapter.h:
6411           add GstAdapter, similar to bytestream, but doesn't require ugly event
6412           handling or uglier loopbased elements
6413
6414 2004-05-03  David Schleef  <ds@schleef.org>
6415
6416         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
6417         * testsuite/caps/erathostenes.c:
6418         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
6419
6420 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6421
6422         * docs/pwg/pwg.xml:
6423           remove hardcoded stylesheet path (duh)
6424         * docs/random/release:
6425         * docs/gst/gstreamer-sections.txt:
6426         * gst/Makefile.am:
6427         * gst/gst.h:
6428         * gst/gst_private.h:
6429         * gst/gstcaps.c:
6430         * gst/gstevent.c:
6431         * gst/gstformat.c:
6432         * gst/gstinfo.c:
6433         * gst/gstinfo.h:
6434         * gst/gstinterface.c:
6435         * gst/gstmemchunk.c:
6436         * gst/gstprobe.c:
6437         * gst/gstquery.c:
6438         * gst/gstregistry.c:
6439         * gst/gstregistrypool.c:
6440         * gst/gststructure.c:
6441         * gst/gsttaginterface.c:
6442         * gst/gstthread.c:
6443         * gst/gsttrace.c:
6444         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
6445         * gst/gsturi.c:
6446         * gst/gstvalue.c:
6447           deprecate gst_info; remove gstlog.h
6448    
6449
6450 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6451
6452         * Makefile.am:
6453         * po/en_GB.po:
6454         * po/sv.po:
6455         * po/uk.po:
6456           updated translations
6457
6458 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6459
6460         * gst/gstbin.c: (gst_bin_dispose):
6461           better debugging
6462
6463 2004-05-03  Johan Dahlin  <johan@gnome.org>
6464
6465         * gst/schedulers/gstoptimalscheduler.c
6466         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
6467         really is a GstElement. Avoids critical when running gst-launch -v
6468         and a oggdemux/decoding pipeline.
6469
6470 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6471
6472         * docs/gst/tmpl/gstpipeline.sgml :
6473         * docs/manual/elements-api.xml :
6474                 doc fix by Patrick Guimond (Protector) from devel ML
6475                 reviewed by ronald
6476
6477 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6478
6479         * docs/gst/Makefile.am :
6480         * docs/libs/Makefile.am :
6481                 apply a patch from Arwed v. Merkatz so that gtk-doc
6482                 generated docs install (same for .devhelp file)
6483                 (fixes part 1 of #138836)
6484
6485 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6486
6487         * docs/faq/dependencies.xml: typo
6488         * docs/faq/getting.xml :
6489             - fix download URL for new gstreamer site
6490             - hide sf.net download page as latest version aren't there
6491             - fix apt URLs
6492             - fill "get via CVS" paragraph (link to dev page on the site)
6493         * docs/faq/general.xml:
6494             hide status tables as they no more exists
6495             change case on plugins license file to reflect reality
6496         * docs/faq/troubleshooting.xml:
6497             remove the wiki question/answer as there is no more wiki
6498
6499 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6500
6501         * gst/gsterror.h:
6502           include the headers needed for declarations used in this header
6503
6504 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6505
6506         * docs/random/uraeus/gstreamer_and_midi.txt :
6507           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
6508           (fixes #132288)
6509
6510 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
6511
6512         reviewed by Benjamin Otte  <otte@gnome.org>
6513
6514         * gst/schedulers/gthread-cothreads.h:
6515           free allocated data for main cothread, too when destroying context
6516           (fixes #141417)
6517
6518 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6519
6520         * docs/manual/goals.xml : remove duplicated paragraph at end 
6521         of doc page (fixes #141448)
6522
6523 2004-04-29  David Schleef  <ds@schleef.org>
6524
6525         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6526         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
6527
6528 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6529
6530         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6531           fix property
6532         * gst/gstcaps.c:
6533           fix doc string
6534         * po/POTFILES.in:
6535           rename typefind source file
6536
6537 2004-04-28  David Schleef  <ds@schleef.org>
6538
6539         Several new files from Steve Lhomme's MSVC patch (bug #141317):
6540         * win32/GStreamer.vcproj:
6541         * win32/Makefile:
6542         * win32/config.h:
6543         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
6544         (_trewinddir), (_ttelldir), (_tseekdir):
6545         * win32/dirent.h:
6546         * win32/gst-inspect.vcproj:
6547         * win32/gst-launch.vcproj:
6548         * win32/gst-register.vcproj:
6549         * win32/gstbytestream.vcproj:
6550         * win32/gstelements.vcproj:
6551         * win32/gstoptimalscheduler.vcproj:
6552         * win32/gstspider.vcproj:
6553         * win32/gtchar.h:
6554         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
6555         * win32/mman.h:
6556         * win32/mman.inl:
6557         * win32/msvc71.sln:
6558
6559 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6560
6561         * gst/gst.c: (init_post):
6562         * gst/gstinfo.c:
6563           remove useless _gst_progname stuff
6564         * tools/gst-inspect.c: (print_field), (print_caps):
6565           improve caps output
6566
6567 2004-04-28  David Schleef  <ds@schleef.org>
6568
6569         Disable parsing of a lot of files that aren't part of the
6570         exported API.  Move corresponding template files to old/,
6571         waiting for removal when they don't contain anything
6572         interesting.
6573         * docs/gst/Makefile.am:
6574         * docs/gst/gstreamer-sections.txt:
6575         * docs/gst/tmpl/cothreads.sgml:
6576         * docs/gst/tmpl/cothreads_compat.sgml:
6577         * docs/gst/tmpl/gettext.sgml:
6578         * docs/gst/tmpl/gobject2gtk.sgml:
6579         * docs/gst/tmpl/grammar.tab.sgml:
6580         * docs/gst/tmpl/gst-i18n-app.sgml:
6581         * docs/gst/tmpl/gst-i18n-lib.sgml:
6582         * docs/gst/tmpl/gst_private.sgml:
6583         * docs/gst/tmpl/gstaggregator.sgml:
6584         * docs/gst/tmpl/gstarch.sgml:
6585         * docs/gst/tmpl/gstatomic_impl.sgml:
6586         * docs/gst/tmpl/gstbufferstore.sgml:
6587         * docs/gst/tmpl/gstdata_private.sgml:
6588         * docs/gst/tmpl/gstdisksink.sgml:
6589         * docs/gst/tmpl/gstdisksrc.sgml:
6590         * docs/gst/tmpl/gstelementfactory.sgml:
6591         * docs/gst/tmpl/gstextratypes.sgml:
6592         * docs/gst/tmpl/gstfakesink.sgml:
6593         * docs/gst/tmpl/gstfakesrc.sgml:
6594         * docs/gst/tmpl/gstfdsink.sgml:
6595         * docs/gst/tmpl/gstfdsrc.sgml:
6596         * docs/gst/tmpl/gstfilesink.sgml:
6597         * docs/gst/tmpl/gstfilesrc.sgml:
6598         * docs/gst/tmpl/gsthttpsrc.sgml:
6599         * docs/gst/tmpl/gstidentity.sgml:
6600         * docs/gst/tmpl/gstindexfactory.sgml:
6601         * docs/gst/tmpl/gstmarshal.sgml:
6602         * docs/gst/tmpl/gstmd5sink.sgml:
6603         * docs/gst/tmpl/gstmultidisksrc.sgml:
6604         * docs/gst/tmpl/gstmultifilesrc.sgml:
6605         * docs/gst/tmpl/gstpadtemplate.sgml:
6606         * docs/gst/tmpl/gstpipefilter.sgml:
6607         * docs/gst/tmpl/gstschedulerfactory.sgml:
6608         * docs/gst/tmpl/gstsearchfuncs.sgml:
6609         * docs/gst/tmpl/gstshaper.sgml:
6610         * docs/gst/tmpl/gstspider.sgml:
6611         * docs/gst/tmpl/gstspideridentity.sgml:
6612         * docs/gst/tmpl/gststatistics.sgml:
6613         * docs/gst/tmpl/gsttee.sgml:
6614         * docs/gst/tmpl/gsttimecache.sgml:
6615         * docs/gst/tmpl/gsttypefind.sgml:
6616         * docs/gst/tmpl/gsttypefindfactory.sgml:
6617         * docs/gst/tmpl/gstxmlregistry.sgml:
6618         * docs/gst/tmpl/gthread-cothreads.sgml:
6619         * docs/gst/tmpl/old/cothreads.sgml:
6620         * docs/gst/tmpl/old/cothreads_compat.sgml:
6621         * docs/gst/tmpl/old/gettext.sgml:
6622         * docs/gst/tmpl/old/gobject2gtk.sgml:
6623         * docs/gst/tmpl/old/grammar.tab.sgml:
6624         * docs/gst/tmpl/old/gst-i18n-app.sgml:
6625         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
6626         * docs/gst/tmpl/old/gst_private.sgml:
6627         * docs/gst/tmpl/old/gstaggregator.sgml:
6628         * docs/gst/tmpl/old/gstarch.sgml:
6629         * docs/gst/tmpl/old/gstatomic_impl.sgml:
6630         * docs/gst/tmpl/old/gstbufferstore.sgml:
6631         * docs/gst/tmpl/old/gstdata_private.sgml:
6632         * docs/gst/tmpl/old/gstdisksink.sgml:
6633         * docs/gst/tmpl/old/gstdisksrc.sgml:
6634         * docs/gst/tmpl/old/gstelementfactory.sgml:
6635         * docs/gst/tmpl/old/gstextratypes.sgml:
6636         * docs/gst/tmpl/old/gstfakesink.sgml:
6637         * docs/gst/tmpl/old/gstfakesrc.sgml:
6638         * docs/gst/tmpl/old/gstfdsink.sgml:
6639         * docs/gst/tmpl/old/gstfdsrc.sgml:
6640         * docs/gst/tmpl/old/gstfilesink.sgml:
6641         * docs/gst/tmpl/old/gstfilesrc.sgml:
6642         * docs/gst/tmpl/old/gsthttpsrc.sgml:
6643         * docs/gst/tmpl/old/gstidentity.sgml:
6644         * docs/gst/tmpl/old/gstindexfactory.sgml:
6645         * docs/gst/tmpl/old/gstmarshal.sgml:
6646         * docs/gst/tmpl/old/gstmd5sink.sgml:
6647         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
6648         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
6649         * docs/gst/tmpl/old/gstpadtemplate.sgml:
6650         * docs/gst/tmpl/old/gstpipefilter.sgml:
6651         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
6652         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
6653         * docs/gst/tmpl/old/gstshaper.sgml:
6654         * docs/gst/tmpl/old/gstspider.sgml:
6655         * docs/gst/tmpl/old/gstspideridentity.sgml:
6656         * docs/gst/tmpl/old/gststatistics.sgml:
6657         * docs/gst/tmpl/old/gsttee.sgml:
6658         * docs/gst/tmpl/old/gsttimecache.sgml:
6659         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
6660         * docs/gst/tmpl/old/gstxmlregistry.sgml:
6661         * docs/gst/tmpl/old/gthread-cothreads.sgml:
6662         * docs/gst/tmpl/old/types.sgml:
6663         * docs/gst/tmpl/types.sgml:
6664
6665         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
6666         gtkdoc-scan doesn't like files with the same name in different
6667         directories.
6668         * gst/elements/Makefile.am:
6669         * gst/elements/gstelements.c:
6670         * gst/elements/gsttypefind.c: 
6671         * gst/elements/gsttypefind.h:
6672         * gst/elements/gsttypefindelement.c:
6673         * gst/elements/gsttypefindelement.h:
6674
6675 2004-04-28  David Schleef  <ds@schleef.org>
6676
6677         A bunch of portability fixes, derived from Steve Lhomme's MSVC
6678         patch (bug #141317):
6679         * gst/gst-i18n-lib.h: Allow disabling gettext.
6680         * gst/gstatomic_impl.h: disable warning when it's dumb.
6681         * gst/gstclock.c: fix include
6682         * gst/gstcompat.h: fix variadic macro
6683         * gst/gstinfo.c: fix include
6684         * gst/gstmacros.h: add defines for inlines on MSVC
6685         * gst/gstplugin.c: fix includes
6686         * gst/gstregistry.c: fix includes
6687         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
6688         * gst/gstsystemclock.c: fix include
6689         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
6690         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
6691         * gst/registries/gstxmlregistry.c:
6692         (gst_xml_registry_parse_element_factory): fix use of non-portable
6693         functions
6694         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
6695         * libs/gst/control/dparammanager.h: same
6696
6697 2004-04-28  David Schleef  <ds@schleef.org>
6698
6699         Move a bunch of unused files to old/ with names that are
6700         not case-insensitive-unique.  These files still contain some
6701         useful information that needs to be merged into gstbin.sgml,
6702         etc., so they shouldn't be deleted yet.
6703         * docs/gst/tmpl/GstBin.sgml:
6704         * docs/gst/tmpl/GstBuffer.sgml:
6705         * docs/gst/tmpl/GstCaps.sgml:
6706         * docs/gst/tmpl/GstClock.sgml:
6707         * docs/gst/tmpl/GstCompat.sgml:
6708         * docs/gst/tmpl/GstData.sgml:
6709         * docs/gst/tmpl/GstElement.sgml:
6710         * docs/gst/tmpl/GstEvent.sgml:
6711         * docs/gst/tmpl/GstIndex.sgml:
6712         * docs/gst/tmpl/GstStructure.sgml:
6713         * docs/gst/tmpl/GstTag.sgml:
6714         * docs/gst/tmpl/old/GstBin.sgml:
6715         * docs/gst/tmpl/old/GstBuffer.sgml:
6716         * docs/gst/tmpl/old/GstCaps.sgml:
6717         * docs/gst/tmpl/old/GstClock.sgml:
6718         * docs/gst/tmpl/old/GstCompat.sgml:
6719         * docs/gst/tmpl/old/GstData.sgml:
6720         * docs/gst/tmpl/old/GstElement.sgml:
6721         * docs/gst/tmpl/old/GstEvent.sgml:
6722         * docs/gst/tmpl/old/GstIndex.sgml:
6723         * docs/gst/tmpl/old/GstStructure.sgml:
6724         * docs/gst/tmpl/old/GstTag.sgml:
6725
6726 2004-04-28  David Schleef  <ds@schleef.org>
6727
6728         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
6729         (gst_caps_append), (gst_caps_append_structure),
6730         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
6731         (gst_caps_set_simple), (gst_caps_set_simple_valist),
6732         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
6733         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
6734         (gst_caps_intersect), (gst_caps_normalize),
6735         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
6736         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
6737         * gst/gstcaps.h: use GST_IS_CAPS().
6738
6739 2004-04-26  David Schleef  <ds@schleef.org>
6740
6741         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
6742         assembly.  gcc doesn't handle it correctly. (bug #141083)
6743         * gst/gsttrashstack.h: same
6744
6745 2004-04-25  Benjamin Otte  <otte@gnome.org>
6746
6747         * gst/gstelement.c: (gst_element_change_state):
6748           fix assertion to do an int comparison
6749
6750 2004-04-25  Benjamin Otte  <otte@gnome.org>
6751
6752         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6753           better debugging output on error
6754
6755 2004-04-25  Benjamin Otte  <otte@gnome.org>
6756
6757         * gst/gstcaps.c: (gst_caps_subtract):
6758           fix memleak
6759
6760 2004-04-23  Benjamin Otte  <otte@gnome.org>
6761
6762         * gst/gstvalue.c: (gst_value_compare_buffer),
6763         (_gst_value_initialize):
6764           add comparison function for buffers
6765
6766 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6767
6768         * docs/pwg/pwg.xml:
6769           Just found out that this so-called "ima-wav" format is really
6770           just "dvi adpcm" (according to the MS WAV documentation). So
6771           renaming it. We didn't use it yet anyway.
6772
6773 2004-04-23  Benjamin Otte  <otte@gnome.org>
6774
6775         * gst/gstcaps.c: (gst_caps_is_always_compatible):
6776           call gst_caps_is_subset
6777
6778 2004-04-23  Benjamin Otte  <otte@gnome.org>
6779
6780         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
6781         (gst_caps_is_subset):
6782           add documentation
6783
6784 2004-04-23  Benjamin Otte  <otte@gnome.org>
6785           
6786         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
6787         (gst_caps_structure_subtract), (gst_caps_subtract),
6788         (gst_caps_structure_figure_out_union),
6789         (gst_caps_structure_simplify), (gst_caps_do_simplify):
6790           fix simplifying and subtracting not working correctly with optional
6791           properties
6792           solve assorted problems that make it now simplify ebven more
6793         * docs/gst/tmpl/gstcaps.sgml:
6794         * gst/gstcaps.h:
6795           make gst_caps_do_simplify return a bool to indicate if it simplified
6796         * testsuite/caps/simplify.c: (main):
6797           add more checks. The tests is quite a bit useless right now because
6798           the core is heavily simplifying itself.
6799         * testsuite/caps/caps.h:
6800           fix caps to contain all optional properties
6801
6802 2004-04-22  Benjamin Otte  <otte@gnome.org>
6803
6804         * docs/gst/tmpl/gstcaps.sgml:
6805         * docs/gst/tmpl/gstfilesrc.sgml:
6806         * docs/gst/tmpl/gststructure.sgml:
6807         * docs/gst/tmpl/gstvalue.sgml:
6808           update for recent API changes
6809         * gst/gstcaps.c: (gst_caps_do_simplify):
6810           fix to stop trying with a freed structure
6811         * gst/gstpad.c: (gst_pad_link_fixate):
6812           simplify caps
6813         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
6814           remove C++ comment
6815         * gst/gstpad.h:
6816           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
6817         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6818         (gst_structure_to_string):
6819           keep the correct type when using lists of ranges
6820         * gst/gstvalue.c: (gst_value_list_prepend_value),
6821         (gst_value_list_append_value):
6822           copy the value before adding to the list (d'oh)
6823         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
6824         (gst_value_subtract_int_range_int_range):
6825           handle overflows correctly
6826         * gst/gstvalue.c: (gst_value_subtract_from_list):
6827           fix memleak
6828         * testsuite/caps/caps.h:
6829           add a caps that caused segfaults
6830
6831 2004-04-22  Benjamin Otte  <otte@gnome.org>
6832
6833         * testsuite/refcounting/pad.c: (main):
6834           fix test
6835
6836 2004-04-22  Benjamin Otte  <otte@gnome.org>
6837
6838         * gst/gstcaps.c: (gst_caps_subtract):
6839           allow subtracting ANY and EMPTY from ANY caps
6840
6841 2004-04-22  Benjamin Otte  <otte@gnome.org>
6842
6843         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
6844         (gst_caps_union):
6845           only simplify in functions that create new caps. Simplifying in
6846           gst_caps_append breaks tests.
6847
6848 2004-04-22  Benjamin Otte  <otte@gnome.org>
6849
6850         * gst/gstcaps.c: (gst_caps_structure_simplify):
6851           unset GValue after use
6852         * gst/gstcaps.c: (gst_caps_append), 
6853         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
6854           use gst_caps_simplify (reduces registry size by 30%)
6855         * gst/gstpad.c: (gst_pad_template_new):
6856           don't allow NULL caps
6857
6858 2004-04-22  Benjamin Otte  <otte@gnome.org>
6859
6860         * docs/gst/gstreamer-sections.txt:
6861           add gst_caps_do_simplify
6862         * gst/gstcaps.c:
6863           add documentation for gst_caps_do_simplify
6864         * gst/gstvalue.h:
6865           fix typo in gst_value_register_subtract_func declaration for gst-doc
6866
6867 2004-04-22  Benjamin Otte  <otte@gnome.org>
6868
6869         * gst/gstcaps.c: (gst_caps_from_string_inplace):
6870           fix bug when converting from empty string.
6871         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
6872         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
6873           use gst_caps_new_empty to allocate a new caps. Only that function
6874           allocates memory for caps now.
6875         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
6876         (gst_caps_remove_structure):
6877           add ability to remove one structure (but not to header yet)
6878         * gst/gstcaps.c: (gst_caps_compare_structures),
6879         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
6880         (gst_caps_structure_simplify), (gst_caps_do_simplify),
6881         * gst/gstcaps.h:
6882           add gst_caps_do_simplify that tries to simplify a caps in place.
6883           Deprecate old gst_caps_simplify function.
6884         * testsuite/caps/caps.h:
6885           add caps.h containing a common set of caps to test against.
6886         * testsuite/caps/sets.c: (check_caps), (main):
6887           use it.
6888         * testsuite/caps/.cvsignore:
6889         * testsuite/caps/Makefile.am:
6890         * testsuite/caps/simplify.c: (check_caps), (main):
6891           add test to check correctness and efficency of caps simplification.
6892
6893 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
6894
6895         reviewed by Benjamin Otte  <otte@gnome.org>
6896
6897         * gst/gstparse.c: (_gst_parse_escape):
6898           Free the GString used in _gst_parse_escape()
6899
6900 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6901
6902         * gst/gstpad.c: (gst_pad_link_negotiate):
6903           refuse to link if the link is not possible
6904         * configure.ac:
6905         * testsuite/Makefile.am:
6906         * testsuite/negotiation/.cvsignore:
6907         * testsuite/negotiation/Makefile.am:
6908         * testsuite/negotiation/pad_link.c: (main):
6909           add test that checks the above behaviour
6910
6911 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6912
6913         * docs/gst/gstreamer-sections.txt:
6914           add newly added API
6915
6916 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
6917
6918         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
6919         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
6920         (gst_filesrc_open_file), (gst_filesrc_close_file),
6921         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
6922         * gst/elements/gstfilesrc.h:
6923           add support for non-regular files (#140734)
6924
6925 2004-04-21  Benjamin Otte  <otte@gnome.org>
6926
6927         * gst/gstpad.c: (gst_pad_link_fixate):
6928           add sophisticated error checking code to see if fixation functions
6929           did their fixation right
6930
6931 2004-04-21  Benjamin Otte  <otte@gnome.org>
6932
6933         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
6934           check for ANY caps before appending/unioning
6935         * gst/gstcaps.c: (gst_caps_is_subset),
6936         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
6937         (gst_caps_structure_subtract), (gst_caps_subtract):
6938         * gst/gstcaps.h:
6939           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
6940           the API. deprecate gst_caps_is_equal_fixed
6941         * gst/gstpad.c: (gst_pad_try_set_caps):
6942         * gst/gstqueue.c: (gst_queue_link):
6943           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
6944         * gst/gststructure.c: (gst_structure_get_name_id):
6945         * gst/gststructure.h:
6946           add function gst_structure_get_name_id
6947         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
6948         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
6949         (gst_value_subtract_int_range_int_range),
6950         (gst_value_subtract_double_double_range),
6951         (gst_value_subtract_double_range_double),
6952         (gst_value_subtract_double_range_double_range),
6953         (gst_value_subtract_from_list), (gst_value_subtract_list),
6954         (gst_value_can_intersect), (gst_value_subtract),
6955         (gst_value_can_subtract), (gst_value_register_subtract_func),
6956         (_gst_value_initialize):
6957         * gst/gstvalue.h:
6958           add support for subtracting values from each other. Note that
6959           subtracting means subtracting as in set theory. Required for caps
6960           stuff above.
6961         * testsuite/caps/.cvsignore:
6962         * testsuite/caps/Makefile.am:
6963         * testsuite/caps/erathostenes.c: (erathostenes), (main):
6964         * testsuite/caps/sets.c: (check_caps), (main):
6965         * testsuite/caps/subtract.c: (check_caps), (main):
6966           add tests for subtraction and equality code.
6967
6968 2004-04-20  David Schleef  <ds@schleef.org>
6969
6970         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
6971         * gst/indexers/Makefile.am:
6972         * gst/schedulers/Makefile.am:
6973         * libs/gst/bytestream/Makefile.am:
6974         * libs/gst/control/Makefile.am:
6975         * libs/gst/getbits/Makefile.am:
6976
6977 2004-04-20  David Schleef  <ds@schleef.org>
6978
6979         * common/as-libtool.mak: Fine-tune DLL building.
6980         * configure.ac: Link plugins against libgstreamer.  Define plugindir
6981         (like gst-plugins)
6982         * examples/plugins/Makefile.am: remove plugindir
6983         * gst/autoplug/Makefile.am: DLL building fixes
6984         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
6985         Windows.
6986         * gst/elements/gstelements.c: Conditionally disable pipefilter.
6987         * gst/indexers/Makefile.am: DLL building fixes
6988         * gst/schedulers/Makefile.am: DLL building fixes.
6989         * libs/gst/bytestream/Makefile.am: DLL building fixes.
6990         * libs/gst/control/Makefile.am: same
6991         * libs/gst/getbits/Makefile.am: same
6992         * testsuite/Makefile.am: New dlopen directory
6993         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
6994         when dlopened.
6995         * testsuite/dlopen/dlopen_gst.c: (main): same
6996         * testsuite/dlopen/loadgst.c: (do_test): same
6997
6998 2004-04-20  David Schleef  <ds@schleef.org>
6999
7000         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7001         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7002
7003 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7004
7005         * gst/gstelement.c: (gst_element_wait),
7006         (gst_element_set_time_delay), (gst_element_change_state):
7007           Use GST_TIME_*
7008
7009 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7010
7011         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7012         (gst_spider_identity_plug):
7013           improve debugging messages
7014         * gst/gstbin.c: (gst_bin_remove_func):
7015           make sure the state_change function is only called with simple state
7016           transitions
7017
7018 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7019
7020         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7021         (gst_fakesink_set_property), (gst_fakesink_chain):
7022         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7023         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7024         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7025         * gst/elements/gstidentity.c: (gst_identity_chain),
7026         (gst_identity_set_property):
7027         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7028         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7029           add warnings to _set_property for unknown arguments
7030           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7031
7032 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7033
7034         * Makefile.am:
7035         * docs/manuals.mak:
7036           add .po file download snippet
7037           fix a bug in the doc makefile
7038
7039 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7040
7041         * Makefile.am:
7042         * po/LINGUAS:
7043         * po/en_GB.po:
7044           Added en_GB translation (Gareth Owen)
7045
7046 2004-04-20  Johan Dahlin  <johan@gnome.org>
7047
7048         * gst/gstpad.c (_invent_event): Clean up
7049
7050 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7051
7052         * testsuite/caps/filtercaps.c: (main):
7053           fix test to test things correctly (caps are complicated)
7054
7055 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7056
7057         * testsuite/caps/Makefile.am:
7058         * testsuite/caps/filtercaps.c: (main):
7059           add test (that doesn't work right now, but should)
7060
7061 2004-04-19  David Schleef  <ds@schleef.org>
7062
7063         * configure.ac: Add test for allowing unaligned access.  Add define
7064         to put in gstconfig.h.
7065         * docs/gst/gstreamer-sections.txt: New symbols
7066         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7067         * docs/gst/tmpl/gstfilesrc.sgml:
7068         * docs/gst/tmpl/gstparse.sgml:
7069         * docs/gst/tmpl/gsttypes.sgml:
7070         * docs/gst/tmpl/gstutils.sgml:
7071         * docs/gst/tmpl/gstvalue.sgml:
7072         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7073         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7074         on most !i386/!powerpc architectures.  From Daniel Gazard
7075         <daniel.gazard@free.fr>.  (bug #140156)
7076         * po/af.po: Check in changes made by gettext.
7077         * po/az.po:
7078         * po/fr.po:
7079         * po/nl.po:
7080         * po/sr.po:
7081         * po/sv.po:
7082
7083 2004-04-20  Benjamin Otte  <otte@gnome.org>
7084
7085         * gst/schedulers/entryscheduler.c: 
7086         (gst_entry_scheduler_yield):
7087           refuse to yield when decoupled elements insist on doing that.
7088           At least it's better than crashing
7089
7090 2004-04-19  David Schleef  <ds@schleef.org>
7091
7092         * docs/libs/Makefile.am: Change sinclude to include
7093         * docs/gst/Makefile.am: same
7094         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7095
7096 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7097
7098         * po/LINGUAS:
7099         * po/uk.po:
7100           Added Ukrainian translation (Maxim V. Dziumanenko)
7101
7102 2004-04-19  Johan Dahlin  <johan@gnome.org>
7103
7104         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7105         checking here, do it before calling the function.
7106         Clean up, use for loops instead of while loops while iterating
7107         over lists.
7108
7109         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7110         in debug message.
7111         (gst_spider_create_and_plug): Improve debug message.
7112         General: Replace while loops which iterates over GLists with for
7113         loops. Which are much cleaner, improves readability, especially
7114         for gst_spider_identity_plug
7115
7116         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7117         fixes bug 140477
7118
7119 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7120
7121         * po/LINGUAS:
7122         * po/tr.po:
7123           Added Turkish translation (Baris Cicek)
7124
7125 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7126
7127         * docs/faq/troubleshooting.xml:
7128           Mention gst-register in the FAQ (fixes 139045).
7129
7130 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7131
7132         * docs/gst/gstreamer-sections.txt:
7133
7134 2004-04-17  Benjamin Otte  <otte@gnome.org>
7135
7136         * gst/gstelement.c: (gst_element_dispose):
7137           simplify
7138         * gst/gstpad.c: (gst_pad_call_chain_function):
7139           don't create loads of events due to bad macro usage
7140
7141 2004-04-16  David Schleef  <ds@schleef.org>
7142
7143         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7144         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7145         * gst/gstvalue.c: (gst_value_serialize_buffer),
7146         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7147         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7148         to indicate types that are fixed wrt caps or not.  Switching to
7149         this function fixes (bug #140298).
7150         * gst/gstvalue.h:
7151
7152 2004-04-16  David Schleef  <ds@schleef.org>
7153
7154         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7155         for GST_UNALIGNED_ACESS, since we essentially know which archs
7156         are ok.
7157
7158 2004-04-17  Benjamin Otte  <otte@gnome.org>
7159
7160         * docs/gst/Makefile.am:
7161           ignore gst/parse directory when building docs (fixes #140205)
7162
7163 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7164
7165         * testsuite/refcounting/mem.c: (vmsize):
7166           do error checking
7167
7168 2004-04-16  Johan Dahlin  <johan@gnome.org>
7169
7170         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7171         and gst_pad_call_get_function.
7172
7173 2004-04-15  David Schleef  <ds@schleef.org>
7174
7175         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7176         checks if we can access unaligned memory.
7177         * configure.ac: Use it.
7178
7179 2004-04-16  Benjamin Otte  <otte@gnome.org>
7180
7181         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7182         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7183         * gst/elements/gstfilesrc.h:
7184           s/seek_happened/need_discont/ and require discont before sending any
7185           data
7186
7187 2004-04-15  David Schleef  <ds@schleef.org>
7188
7189         * gst/gstvalue.c: (gst_value_serialize_buffer),
7190         (gst_value_deserialize_buffer), (_gst_value_initialize):
7191         Register these types as fundamental types. (bug #140015)
7192
7193 2004-04-16  Benjamin Otte  <otte@gnome.org>
7194
7195         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7196         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7197         (gst_pad_pull):
7198           implement enforcing discont events before buffers are passed. This
7199           allows state changes of only some elements and later correctly going
7200           on where they left off (or in short: you can now set audio sinks to
7201           NULL to release the device when the pipeline is paused)
7202         * gst/gstpad.c: (gst_pad_call_chain_function),
7203         (gst_pad_call_get_function):
7204         * gst/gstpad.h:
7205           add gst_pad_call_chain_function and gst_pad_call_get_function for
7206           scheduler interaction. They are required because of the changes
7207           above.
7208         * gst/schedulers/entryscheduler.c: (get_buffer),
7209         (gst_entry_scheduler_chain_wrapper),
7210         (gst_entry_scheduler_get_wrapper),
7211         (gst_entry_scheduler_state_transition),
7212         (gst_entry_scheduler_pad_link):
7213         * gst/schedulers/gstbasicscheduler.c:
7214         (gst_basic_scheduler_chain_wrapper),
7215         (gst_basic_scheduler_src_wrapper),
7216         (gst_basic_scheduler_chainhandler_proxy),
7217         (gst_basic_scheduler_gethandler_proxy),
7218         (gst_basic_scheduler_cothreaded_chain),
7219         (gst_basic_scheduler_chain_elements):
7220         * gst/schedulers/gstoptimalscheduler.c:
7221         (get_group_schedule_function), (pad_clear_queued),
7222         (gst_opt_scheduler_pad_link):
7223           use the new functions instead of calling get/chain-functions
7224           directly.
7225
7226 2004-04-15  David Schleef  <ds@schleef.org>
7227
7228         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7229         * docs/gst/tmpl/gstinfo.sgml: same
7230         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7231         gtk-doc put here.
7232         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7233         * examples/queue/queue.c: (main):  We iterate pipelines, not
7234         bins.  (bug #139996)
7235
7236 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7237
7238         * docs/pwg/advanced-types.xml:
7239           Add MS RLE support. Also document Qt RLE although I have no sample
7240           files for that yet. And document an extra property for ADPCM.
7241
7242 2004-04-15  David Schleef  <ds@schleef.org>
7243
7244         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7245         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7246         Windows.
7247
7248 2004-04-15  David Schleef  <ds@schleef.org>
7249
7250         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7251         symbol names to not conflict with new gstinfo.h symbols.
7252         * gst/gstinfo.h: Add inline functions for all those crazy
7253         compilers that don't know how to handle variadic macros (MSVC).
7254
7255 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7256
7257         * configure.ac: bump nano to 1
7258
7259 === release 0.8.1 ===
7260
7261 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7262
7263         * NEWS:
7264         * RELEASE:
7265         * configure.ac:
7266           releasing 0.8.1, "Snow Brigade"
7267
7268 2004-04-14  David Schleef  <ds@schleef.org>
7269
7270         * testsuite/Makefile.am: define tests_ignore
7271         * testsuite/Rules: Added new tests_ignore, which get compiled,
7272         but not run (generally because they're inconsistent or have
7273         heisenbugs).  Now we can ensure all the .c files compile in
7274         testsuite/.
7275         * testsuite/bins/Makefile.am: define tests_ignore
7276         * testsuite/bytestream/Makefile.am:
7277         * testsuite/caps/Makefile.am:
7278         * testsuite/clock/Makefile.am:
7279         * testsuite/debug/Makefile.am:
7280         * testsuite/debug/global.c: (gst_debug_log_one),
7281         (gst_debug_log_two): Fix compilation problem.
7282         * testsuite/dynparams/Makefile.am:
7283         * testsuite/elements/Makefile.am:
7284         * testsuite/ghostpads/Makefile.am:
7285         * testsuite/indexers/Makefile.am:
7286         * testsuite/parse/Makefile.am:
7287         * testsuite/plugin/Makefile.am:
7288         * testsuite/refcounting/Makefile.am:
7289         * testsuite/refcounting/element_pad.c: (main): Don't return leak
7290         results, because it's not calculated correctly.
7291         * testsuite/refcounting/pad.c: (main): same
7292         * testsuite/states/Makefile.am:
7293         * testsuite/tags/Makefile.am:
7294         * testsuite/threads/Makefile.am:
7295
7296 2004-04-14  David Schleef  <ds@schleef.org>
7297
7298         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
7299         generating bad code around the cpu detection asm code.
7300
7301 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7302
7303         * tools/gst-inspect.c: (print_element_info):
7304           print numeric version of rank as well, since we added some - 1
7305           rank values to elements
7306
7307 2004-04-13  David Schleef  <ds@schleef.org>
7308
7309         * configure.ac:  Disable various code when compiling for MinGW.
7310         * gst/elements/Makefile.am:
7311         * gst/elements/gstelements.c:
7312         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7313         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7314         * gst/registries/gstxmlregistry.c: (make_dir):
7315
7316 2004-04-13  David Schleef  <ds@schleef.org>
7317
7318         * gst/Makefile.am:
7319         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7320         assembly.
7321         * gst/gstcpuid_i386.s: remove
7322
7323 2004-04-13  David Schleef  <ds@schleef.org>
7324
7325         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
7326         seems to think it needs to be done.
7327         * docs/gst/tmpl/gstfakesink.sgml:
7328         * docs/gst/tmpl/gstfakesrc.sgml:
7329         * docs/gst/tmpl/gstfdsink.sgml:
7330         * docs/gst/tmpl/gstfdsrc.sgml:
7331         * docs/gst/tmpl/gstfilesink.sgml:
7332         * docs/gst/tmpl/gstfilesrc.sgml:
7333         * docs/gst/tmpl/gstidentity.sgml:
7334         * docs/gst/tmpl/gstmd5sink.sgml:
7335         * docs/gst/tmpl/gstmultifilesrc.sgml:
7336         * docs/gst/tmpl/gstpipefilter.sgml:
7337         * docs/gst/tmpl/gstshaper.sgml:
7338         * docs/gst/tmpl/gstspider.sgml:
7339         * docs/gst/tmpl/gstspideridentity.sgml:
7340         * docs/gst/tmpl/gststatistics.sgml:
7341         * docs/gst/tmpl/gsttee.sgml:
7342         * docs/gst/tmpl/gsttypefind.sgml:
7343         * docs/gst/tmpl/gstutils.sgml:
7344
7345 2004-04-13  David Schleef  <ds@schleef.org>
7346
7347         * configure.ac: Changes to remove POSIXisms (mmap in this case)
7348         and to build DLLs on Windows.
7349         * gst/Makefile.am:
7350         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7351         (gst_filesrc_open_file):
7352         * gst/schedulers/Makefile.am:
7353
7354 2004-04-13  David Schleef  <ds@schleef.org>
7355
7356         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
7357         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
7358         fixating lists.
7359
7360 2004-04-12  David Schleef  <ds@schleef.org>
7361
7362         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
7363         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
7364         to using it.
7365         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
7366         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
7367         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
7368         * gst/gststructure.c: (gst_structure_set_valist),
7369         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
7370         support for buffers.
7371         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
7372         intended to be const.
7373         * gst/gsttag.h: same
7374         * gst/gstvalue.c: (gst_value_serialize_buffer),
7375         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
7376         to (de)serialize buffers.
7377         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
7378         * testsuite/caps/string-conversions.c: (main):
7379         * testsuite/caps/value_serialize.c: add new test
7380
7381 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7382
7383         * docs/pwg/advanced-types.xml:
7384           Document MS video 1 (video/x-msvideocodec) mimetype/format.
7385
7386 2004-04-11  Benjamin Otte  <otte@gnome.org>
7387
7388         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7389           rename categories to basic_*
7390         * gst/schedulers/gstbasicscheduler.c: 
7391         (gst_basic_scheduler_chain_wrapper),
7392         (gst_basic_scheduler_chainhandler_proxy),
7393         (gst_basic_scheduler_gethandler_proxy),
7394         (gst_basic_scheduler_eventhandler_proxy):
7395           debugging category fixes - put common stuff in log category
7396         * gst/schedulers/gstbasicscheduler.c: 
7397         (gst_basic_scheduler_chain_elements):
7398           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
7399           active and linking two active chains
7400
7401 2004-04-10  Benjamin Otte  <otte@gnome.org>
7402
7403         * docs/pwg/intro-preface.xml:
7404           fix dead links and remove reference to Wiki
7405
7406 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7407
7408         * gst/schedulers/gstbasicscheduler.c:
7409           make sure we can switch back to the main function if we're still in
7410           the main function (supposed to fix #139617)
7411         * gst/schedulers/gthread-cothreads.h:
7412           don't throw an error when switching to the same cothread
7413
7414 2004-04-09  Benjamin Otte  <otte@gnome.org>
7415
7416         * gst/gstbin.c: (gst_bin_get_type):
7417         * gst/gstclock.c: (gst_clock_get_type):
7418         * gst/gstindex.c: (gst_index_get_type):
7419         * gst/gstobject.c: (gst_object_get_type),
7420         (gst_signal_object_get_type):
7421         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
7422         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
7423         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
7424         * gst/gstqueue.c: (gst_queue_get_type):
7425         * gst/gstregistry.c: (gst_registry_get_type):
7426         * gst/gstsystemclock.c: (gst_system_clock_get_type):
7427         * gst/gstthread.c: (gst_thread_get_type):
7428           don't use memchunks for these objects, use malloc instead
7429
7430 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7431
7432         * docs/gst/.cvsignore:
7433         * docs/gst/Makefile.am:
7434         * docs/gst/gstreamer-sections.txt:
7435         * docs/gst/tmpl/gstaggregator.sgml:
7436         * docs/gst/tmpl/gstbuffer.sgml:
7437         * docs/gst/tmpl/gstclock.sgml:
7438         * docs/gst/tmpl/gstelement.sgml:
7439         * docs/gst/tmpl/gstfakesink.sgml:
7440         * docs/gst/tmpl/gstfakesrc.sgml:
7441         * docs/gst/tmpl/gstfdsink.sgml:
7442         * docs/gst/tmpl/gstfdsrc.sgml:
7443         * docs/gst/tmpl/gstfilesink.sgml:
7444         * docs/gst/tmpl/gstfilesrc.sgml:
7445         * docs/gst/tmpl/gstidentity.sgml:
7446         * docs/gst/tmpl/gstindex.sgml:
7447         * docs/gst/tmpl/gstinfo.sgml:
7448         * docs/gst/tmpl/gstmd5sink.sgml:
7449         * docs/gst/tmpl/gstmultifilesrc.sgml:
7450         * docs/gst/tmpl/gstpad.sgml:
7451         * docs/gst/tmpl/gstpipefilter.sgml:
7452         * docs/gst/tmpl/gstpipeline.sgml:
7453         * docs/gst/tmpl/gstpluginfeature.sgml:
7454         * docs/gst/tmpl/gstqueue.sgml:
7455         * docs/gst/tmpl/gstregistry.sgml:
7456         * docs/gst/tmpl/gstscheduler.sgml:
7457         * docs/gst/tmpl/gstshaper.sgml:
7458         * docs/gst/tmpl/gstspider.sgml:
7459         * docs/gst/tmpl/gstspideridentity.sgml:
7460         * docs/gst/tmpl/gststatistics.sgml:
7461         * docs/gst/tmpl/gstsystemclock.sgml:
7462         * docs/gst/tmpl/gsttee.sgml:
7463         * docs/gst/tmpl/gstthread.sgml:
7464         * docs/gst/tmpl/gsttypefind.sgml:
7465         * docs/gst/tmpl/gstutils.sgml:
7466           further doc build fixes
7467
7468 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7469
7470         * docs/gst/Makefile.am:
7471           make docs exit on scanning problems
7472           fix nonsrcdir build issues
7473         * docs/gst/gstreamer-sections.txt:
7474           adding stuff from -unused
7475         * gst/gstqueue.h:
7476           create GstQueueSize
7477         * gst/schedulers/cothreads_compat.h:
7478           fix cothread warnings
7479
7480 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7481
7482         * docs/gst/gstreamer-sections.txt:
7483           remove defines deprecated by Benjamin
7484
7485 2004-04-07  Benjamin Otte  <otte@gnome.org>
7486
7487         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7488           when the buffer is complete, don't check if other buffers are needed
7489         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
7490           check that the offset is >0 so we don't try to read before the
7491           beginning of the file
7492         * gst/gstpad.c: (gst_pad_set_pad_template):
7493           sink the template, so we don't end up with 130k pad templates
7494
7495 2004-04-06  Benjamin Otte  <otte@gnome.org>
7496
7497         * gst/autoplug/gstspider.c: (gst_spider_link_add):
7498           don't ref the element, adding already reffed it. And we didn't unref
7499           it later anyway... (huge memleak when you used many spider elements)
7500         * gst/gstelement.c: (gst_element_base_class_finalize):
7501         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
7502         (gst_element_register):
7503         * gst/gsturi.c: (gst_element_make_from_uri):
7504           use gst_object_(un)ref instead of g_object(un)ref
7505
7506 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7507
7508         * gst/gstbuffer.h:
7509           remove macro that wouldn't work anymore because struct member has
7510           been removed.
7511         * gst/schedulers/entryscheduler.c: (schedule_forward):
7512           fix segfault for unconnected pads
7513         
7514 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7515
7516         reviewed by David Schleef <ds@schleef.org>
7517
7518         * gst/gstinfo.h:
7519           *_FORMAT modifiers should require putting a % in front of them for
7520           consistency reasons.
7521
7522 2004-04-05  Colin Walters  <walters@redhat.com>
7523
7524         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
7525         space.
7526
7527 2004-04-05  Benjamin Otte  <otte@gnome.org>
7528
7529         * configure.ac:
7530         * gst/Makefile.am:
7531         * gst/gst_private.h:
7532         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
7533           add support for detecting if GStreamer runs inside valgrind.
7534           requires valgrind (d'oh) and --enable-debug for correct cdetection.
7535           print a big message in valgrind that GStreamer has detected it's
7536           running inside and might now use different code.
7537         * gst/gstmemchunk.c: (populate), (free_area),
7538         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
7539         (gst_mem_chunk_free):
7540           flag memchunks for valgrind, so it can detect leaking of chunks.
7541           This allows detecting leaks of GstBuffer and GstEvent correctly
7542           inside valgrind.
7543
7544 2004-04-05  David Schleef  <ds@schleef.org>
7545
7546         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
7547           jensgr@gmx.net (Jens Granseuer)
7548
7549 2004-04-05  David Schleef  <ds@schleef.org>
7550
7551         * gst/gstbuffer.c: (_gst_buffer_sub_free),
7552         (gst_buffer_default_free), (gst_buffer_default_copy),
7553         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
7554         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
7555         structures in one place.
7556
7557 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7558
7559         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
7560           (GST_TIME_FORMAT, GST_TIME_ARGS)
7561
7562 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7563
7564         * testsuite/elements/Makefile.am:
7565           disable test until it stops breaking make distcheck
7566
7567 2004-04-05  Johan Dahlin  <johan@gnome.org>
7568
7569         * po/sv.po: Updated translation
7570
7571 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7572
7573         * gst/gstplugin.c: (gst_plugin_load_file):
7574           fix segfault for when original plugin was loaded statically
7575
7576 2004-04-05  Benjamin Otte  <otte@gnome.org>
7577
7578         * testsuite/debug/category.c: (main):
7579         * testsuite/debug/commandline.c: (main):
7580         * testsuite/debug/output.c: (main):
7581           fix tests to work again with debugging enabled
7582
7583 2004-04-05  Benjamin Otte  <otte@gnome.org>
7584
7585         * gst/schedulers/gstbasicscheduler.c:
7586         (gst_basic_scheduler_pad_link):
7587           fix to work with recent scheduling changes
7588
7589 2004-04-05  Benjamin Otte  <otte@gnome.org>
7590
7591         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
7592         prepareChangeLog doesn't work when cvs indents):
7593           don't throw an error when no element can be scheduled, there's too
7594           many weird reasons why it doesn't work. Return STOPPED instead.
7595           decoupled elemts' schedulability doesn't depend on bufpens.
7596
7597 2004-04-04  Benjamin Otte  <otte@gnome.org>
7598
7599         * gst/schedulers/gstbasicscheduler.c:
7600         (gst_basic_scheduler_pad_select):
7601           fix uninitialized variable warnings
7602
7603 2004-04-04  Benjamin Otte  <otte@gnome.org>
7604
7605         * gst/gstpad.c: (gst_pad_collect_valist):
7606           fix uninitialized variable warning
7607         * gst/schedulers/entryscheduler.c: (schedule_forward):
7608           fix shadowed variable
7609
7610 2004-04-04  Benjamin Otte  <otte@gnome.org>
7611
7612         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
7613         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
7614         (gst_pad_select):
7615         * gst/gstpad.h:
7616         * gst/gstscheduler.c: (gst_scheduler_pad_select),
7617         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
7618         * gst/gstscheduler.h:
7619           implement gst_pad_collect as replacement for gst_pad_select.
7620           deprecate gst_pad_select and gst_scheduler_(un)lock_element
7621           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
7622           new pad_select, lock and unlock calls.
7623         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
7624         * gst/cothreads.h:
7625         * gst/schedulers/cothreads_compat.h:
7626         * gst/schedulers/gthread-cothreads.h:
7627           remove unused cothread_lock and cothread_unlock calls
7628         * gst/schedulers/entryscheduler.c:
7629         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
7630         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
7631         (gst_entry_scheduler_pad_select):
7632           update to new API
7633         * gst/schedulers/gstbasicscheduler.c:
7634         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
7635         (gst_basic_scheduler_pad_select):
7636           remove useless lock and unlock calls, update pad_select to new API
7637           (untested)
7638         * gst/schedulers/gstoptimalscheduler.c:
7639         (gst_opt_scheduler_class_init):
7640           remove useless select, lock and unlock function calls
7641         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
7642           use gst_pad_collect instead of gst_pad_select
7643
7644 2004-04-04  Benjamin Otte  <otte@gnome.org>
7645
7646         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
7647         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
7648         (schedule_next_element), (print_entry):
7649           add can_schedule_pad to handle element states.
7650           add schedule_forward to select the correct entry to schedule next
7651
7652 2004-04-03  Benjamin Otte  <otte@gnome.org>
7653
7654         * gst/schedulers/entryscheduler.c: 
7655           remove unused variable, fix error inside Rb, fix compile warning in
7656           unreachable code
7657
7658 2004-04-03  Benjamin Otte  <otte@gnome.org>
7659
7660         * gst/schedulers/entryscheduler.c:
7661           completely revamp the inner workings, so it's a lot easier to
7662           understand and extend
7663
7664 2004-04-03  Andy Wingo  <wingo@pobox.com>
7665
7666         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
7667         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
7668         This allows better introspection of pipeline topology.
7669         (add_to_chain): Don't do trickery to put loop elements first;
7670         rather, queue a chain sort by marking the chain as dirty.
7671         (remove_from_chain): Mark the chain dirty.
7672         (sort_chain): New function. Sorts the group list so that terminal
7673         sinks are first. This means elements on the sink side will be
7674         preferentially sscheduled before elements on the src side of the
7675         pipeline.
7676         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
7677         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
7678         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
7679         (group_inc_link): Change argument and variable names to match the
7680         new link structure member names (src and sink).
7681         (group_dec_link): Add some description
7682
7683 2004-04-03  Benjamin Otte  <otte@gnome.org>
7684
7685         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
7686         * gst/gstinfo.h:
7687         * testsuite/debug/category.c: (main):
7688         * testsuite/debug/commandline.c: (main):
7689         * testsuite/debug/output.c: (main):
7690         * testsuite/debug/printf_extension.c: (main):
7691           fix to successfully build and test with --disable-gst-debug
7692           configure switch (fixes #138705)
7693
7694 2004-04-03  Benjamin Otte  <otte@gnome.org>
7695
7696         * docs/pwg/building-boiler.xml:
7697           add cvs login line and s/anonymous/anoncvs/
7698
7699 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
7700
7701         reviewed by Benjamin Otte  <otte@gnome.org>
7702
7703         * gst/gststructure.c: (gst_structure_free):
7704           memleak fix: free fields array (partial fix for #134839)
7705
7706 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7707
7708         * docs/random/ds/0.9-suggested-changes:
7709           Add a note to change handoff use in fakesrc to be usable in
7710           a more generic way (fakesrc should be renamed to appsrc or so).
7711         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7712           Change signal type to scope, so we can fill the buffer in the
7713           handoff handler (that's the whole use of this signal...).
7714
7715 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7716
7717         * docs/pwg/other-ntoone.xml:
7718           Document muxers and n-to-1 elements.
7719
7720 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
7721
7722         * gst/registries/gstxmlregistry.c
7723         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
7724         determine if a file is a G_MODULE. The old one discards paths
7725         containing "so" somewhere in the middle. My home directory is
7726         called "soto". Go figure...
7727
7728 2004-03-31  David Schleef  <ds@schleef.org>
7729
7730         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
7731         to eventually deprecate gst_buffer_merge().  (bug: #136408)
7732         * gst/gstbuffer.h:
7733
7734 2004-03-31  David Schleef  <ds@schleef.org>
7735
7736         * gst/gstvalue.c: (gst_value_union_int_int_range),
7737         (gst_value_union_int_range_int_range), (gst_value_can_union),
7738         (gst_value_union), (_gst_value_initialize):  Add some union
7739         implementations.  We didn't have any previously.
7740         * testsuite/caps/Makefile.am:
7741         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
7742         (gst_audioscale_getcaps), (test_caps), (main): A little test
7743         that is the same as the caps manipulation in audioscale.
7744
7745 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7746
7747         * docs/faq/general.xml:
7748           add entry about "does gst support format X?"
7749
7750 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7751
7752         * gst/gstthread.c:
7753           fix docs
7754         * gst/gstutils.h:
7755           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
7756
7757 2004-03-30  Benjamin Otte  <otte@gnome.org>
7758
7759         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7760           set the offset of the buffer to the requested offset
7761         * gst/elements/gsttypefind.c: (stop_typefinding):
7762           revert patch 1.18 (which I unfortunately don't know the reason for).
7763           This is needed to allow downstream elements to seek. Otherwise
7764           typefind might overwrite a previous seek by downstream elements.
7765           This lead to errors with id3tag and typefind on some mp3s.
7766         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
7767         (gst_entry_scheduler_iterate):
7768           be more verbose when debugging
7769
7770 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7771
7772         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7773           make sure we don't get NULL strings
7774
7775 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7776
7777         * gst/gstcaps.c:
7778         * gst/gstelement.c:
7779         * gst/gstelementfactory.c: (gst_element_factory_get_type):
7780         * gst/gstindex.c: (gst_index_resolver_get_type),
7781         (gst_index_get_type), (gst_index_factory_get_type):
7782         * gst/gstinfo.c:
7783         * gst/gstpad.c:
7784         * gst/gstplugin.c:
7785         * gst/gsturi.c: (gst_uri_handler_get_type):
7786         * gst/gstvalue.c:
7787           first batch of documentation fixes
7788
7789 2004-03-29  David Schleef  <ds@schleef.org>
7790
7791         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
7792         * docs/gst/gstreamer-docs.sgml:  More hacking
7793         * docs/gst/gstreamer-sections.txt:
7794         * docs/gst/tmpl/cothreads_compat.sgml:
7795         * docs/gst/tmpl/gstcaps.sgml:
7796         * docs/gst/tmpl/gstclock.sgml:
7797         * docs/gst/tmpl/gstelement.sgml:
7798         * docs/gst/tmpl/gstevent.sgml:
7799         * docs/gst/tmpl/gstpad.sgml:
7800         * docs/gst/tmpl/gstutils.sgml:
7801         * docs/gst/tmpl/gstxml.sgml:
7802         * docs/gst/tmpl/gthread-cothreads.sgml:
7803         * docs/random/ds/0.9-suggested-changes:
7804         * gst/elements/gstfakesink.h: doc fixes
7805         * gst/elements/gstfakesrc.h: doc fixes
7806         * gst/gstcaps.c: doc fixes
7807         * gst/gstcaps.h: doc fixes
7808         * gst/gstelement.c: doc fixes
7809         * gst/gstelement.h: doc fixes
7810         * gst/gstindex.c: doc fixes
7811         * gst/gstinfo.c: doc fixes
7812         * gst/gstpad.c: doc fixes
7813         * gst/gstpad.h: doc fixes
7814         * gst/gstplugin.c: doc fixes
7815         * gst/gsttypefind.h: doc fixes
7816         * gst/gsturi.c: doc fixes
7817         * gst/gstvalue.c: doc fixes
7818
7819 2004-03-29  Colin Walters  <walters@redhat.com>
7820
7821         * gst/registries/gstxmlregistry.c (get_time)
7822         (plugin_times_older_than_recurse):
7823         Use the result of stat to determine whether a path is a file,
7824         so we don't attempt to opendir() files.
7825
7826 2004-03-29  Benjamin Otte  <otte@gnome.org>
7827
7828         * gst/gstpad.c: (gst_pad_set_explicit_caps):
7829           print caps in debugging output when setting caps failed
7830         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
7831         (schedule_next_element), (get_buffer), (run_chainhandler),
7832         (element_may_start), (gst_entry_scheduler_chain_handler),
7833         (gst_entry_scheduler_get_handler),
7834         (gst_entry_scheduler_state_transition),
7835         (gst_entry_scheduler_pad_link):
7836           make this scheduler a testcase for mandatory
7837           discont-before-first-buffer which is needed if we want to allow apps
7838           to release the sound device.
7839           add SCHED_ASSERT macro to print scheduler state before an assertion
7840           triggers.
7841
7842 2004-03-29  Benjamin Otte  <otte@gnome.org>
7843
7844         * COPYING:
7845           replace by LGPL (former COPYING.LIB). The core is completely
7846           licensed LGPL.
7847         * COPYING.LIB:
7848           remove
7849
7850 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7851
7852         * po/af.po:
7853         * po/sv.po:
7854           updated Afrikaans and Swedish
7855
7856 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7857
7858         * po/LINGUAS:
7859         * po/az.po:
7860           adding Azerbaijani (Mətin Əmirov)
7861
7862 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
7863
7864         * gst/gstelement.h: 
7865         * gst/gstelement.c (gst_element_set_time_delay): New function for
7866         setting element time taking into account a hardware buffering
7867         delay.
7868         (gst_element_set_time): Now just an invocation of
7869         gst_element_set_time_delay.
7870         * gst/gstclock.h: 
7871         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
7872         allowing to set event times in the future.
7873         (gst_clock_get_event_time): Now just an invocation of
7874         gst_clock_get_event_time_delay.
7875
7876 2004-03-28  Benjamin Otte  <otte@gnome.org>
7877
7878         * gst/gstbin.c: (gst_bin_set_element_sched),
7879         (gst_bin_unset_element_sched):
7880           don't add decoupled elements to schedulers - otherwise it's
7881           impossible to control if a link to a decoupled element was already
7882           removed from a scheduler or not.
7883         * gst/schedulers/cothreads_compat.h:
7884         * gst/schedulers/gthread-cothreads.h:
7885           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
7886           is no "unused" warning.
7887         * gst/schedulers/Makefile.am:
7888         * gst/schedulers/entryscheduler.c:
7889           add new scheduler, based on ideas from talking to David and Martin.
7890           It's supposed to be small and correct. Currently it's also slow (but
7891           it's not noticable)
7892         * examples/retag/retag.c: (main):
7893         * testsuite/bytestream/test1.c: (main):
7894           fix missing NULLs at end of variadic functions
7895         * testsuite/elements/.cvsignore:
7896           update
7897
7898 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
7899
7900         * gst/gstevent.h:
7901         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
7902
7903 2004-03-25  David Schleef  <ds@schleef.org>
7904
7905         * docs/gst/gstreamer-sections.txt:  More doc hacking.
7906         * docs/gst/tmpl/gstaggregator.sgml:
7907         * docs/gst/tmpl/gstautoplugfactory.sgml:
7908         * docs/gst/tmpl/gstbin.sgml:
7909         * docs/gst/tmpl/gstbuffer.sgml:
7910         * docs/gst/tmpl/gstbufferstore.sgml:
7911         * docs/gst/tmpl/gstfakesink.sgml:
7912         * docs/gst/tmpl/gstfakesrc.sgml:
7913         * docs/gst/tmpl/gstmd5sink.sgml:
7914         * docs/gst/tmpl/gstreamer-unused.sgml:
7915         * docs/gst/tmpl/gstsearchfuncs.sgml:
7916         * docs/gst/tmpl/gstshaper.sgml:
7917         * docs/gst/tmpl/gstspider.sgml:
7918         * docs/gst/tmpl/gsttee.sgml:
7919         * docs/gst/tmpl/gstutils.sgml:
7920         * docs/gst/tmpl/gstvalue.sgml:
7921         * docs/gst/tmpl/gstxml.sgml:
7922         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
7923         and we don't support it.
7924         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
7925         (gst_use_threads), (gst_has_threads): same
7926         * gst/gstthreaddummy.c: same
7927         * gst/autoplug/gstspider.c: Make gst_spider_details static.
7928         * gst/autoplug/gstspider.h: same
7929         * gst/elements/gstaggregator.h: Remove bogus function from header
7930         * gst/elements/gstfakesink.h: same
7931         * gst/elements/gstfakesrc.h: same
7932         * gst/elements/gstmd5sink.h: same
7933         * gst/elements/gstshaper.h: same
7934         * gst/elements/gsttee.h: same
7935         * gst/gstbin.c: doc fixes
7936         * gst/gstbin.h: Remove unused definition.
7937         * gst/gstbuffer.c: doc fixes
7938         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
7939         * gst/gstfilter.c: doc fixes
7940         * gst/gsttag.c: doc fixes
7941         * gst/gstvalue.c: doc fixes
7942
7943 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7944
7945         * docs/pwg/advanced-types.xml:
7946           Document typefinding.
7947         * docs/pwg/other-oneton.xml:
7948           Document one-to-n elements, demuxers and parsers.
7949
7950 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
7951
7952         reviewed by: David Schleef  <ds@schleef.org>
7953
7954         * configure.ac: Check bison version (bug #127838)
7955
7956 2004-03-25  David Schleef  <ds@schleef.org>
7957
7958         * docs/gst/gstreamer-docs.sgml: More fine tuning.
7959         * docs/gst/gstreamer-sections.txt:
7960         * docs/gst/tmpl/gstautoplug.sgml:
7961         * docs/gst/tmpl/gststaticautoplug.sgml:
7962         * docs/gst/tmpl/gststaticautoplugrender.sgml:
7963         * docs/gst/tmpl/gstutils.sgml:
7964         * docs/gst/tmpl/gstxml.sgml:
7965
7966 2004-03-24  David Schleef  <ds@schleef.org>
7967
7968         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
7969         manual being such complete crap, that I decided to do major
7970         hacking of it.  This checkin replaces any fine tuning that
7971         may have been done previously, with the benefit of actually
7972         being complete for much of the API that was changed since
7973         0.6.  Further fine tuning will occur shortly.  (bug #134721)
7974         * docs/gst/gstreamer-sections.txt:
7975         * docs/gst/tmpl/GstBin.sgml:
7976         * docs/gst/tmpl/GstBuffer.sgml:
7977         * docs/gst/tmpl/GstCaps.sgml:
7978         * docs/gst/tmpl/GstClock.sgml:
7979         * docs/gst/tmpl/GstCompat.sgml:
7980         * docs/gst/tmpl/GstData.sgml:
7981         * docs/gst/tmpl/GstElement.sgml:
7982         * docs/gst/tmpl/GstEvent.sgml:
7983         * docs/gst/tmpl/GstIndex.sgml:
7984         * docs/gst/tmpl/GstStructure.sgml:
7985         * docs/gst/tmpl/GstTag.sgml:
7986         * docs/gst/tmpl/cothreads.sgml:
7987         * docs/gst/tmpl/cothreads_compat.sgml:
7988         * docs/gst/tmpl/gettext.sgml:
7989         * docs/gst/tmpl/grammar.tab.sgml:
7990         * docs/gst/tmpl/gst-i18n-app.sgml:
7991         * docs/gst/tmpl/gst-i18n-lib.sgml:
7992         * docs/gst/tmpl/gst.sgml:
7993         * docs/gst/tmpl/gst_private.sgml:
7994         * docs/gst/tmpl/gstaggregator.sgml:
7995         * docs/gst/tmpl/gstarch.sgml:
7996         * docs/gst/tmpl/gstatomic.sgml:
7997         * docs/gst/tmpl/gstatomic_impl.sgml:
7998         * docs/gst/tmpl/gstbin.sgml:
7999         * docs/gst/tmpl/gstbuffer.sgml:
8000         * docs/gst/tmpl/gstbufferstore.sgml:
8001         * docs/gst/tmpl/gstcaps.sgml:
8002         * docs/gst/tmpl/gstclock.sgml:
8003         * docs/gst/tmpl/gstcompat.sgml:
8004         * docs/gst/tmpl/gstconfig.sgml:
8005         * docs/gst/tmpl/gstcpu.sgml:
8006         * docs/gst/tmpl/gstdata.sgml:
8007         * docs/gst/tmpl/gstdata_private.sgml:
8008         * docs/gst/tmpl/gstelement.sgml:
8009         * docs/gst/tmpl/gstenumtypes.sgml:
8010         * docs/gst/tmpl/gsterror.sgml:
8011         * docs/gst/tmpl/gstevent.sgml:
8012         * docs/gst/tmpl/gstfakesink.sgml:
8013         * docs/gst/tmpl/gstfakesrc.sgml:
8014         * docs/gst/tmpl/gstfilesink.sgml:
8015         * docs/gst/tmpl/gstfilter.sgml:
8016         * docs/gst/tmpl/gstindex.sgml:
8017         * docs/gst/tmpl/gstinfo.sgml:
8018         * docs/gst/tmpl/gstinterface.sgml:
8019         * docs/gst/tmpl/gstlog.sgml:
8020         * docs/gst/tmpl/gstmacros.sgml:
8021         * docs/gst/tmpl/gstmarshal.sgml:
8022         * docs/gst/tmpl/gstmd5sink.sgml:
8023         * docs/gst/tmpl/gstmultifilesrc.sgml:
8024         * docs/gst/tmpl/gstobject.sgml:
8025         * docs/gst/tmpl/gstpad.sgml:
8026         * docs/gst/tmpl/gstparse.sgml:
8027         * docs/gst/tmpl/gstpipeline.sgml:
8028         * docs/gst/tmpl/gstplugin.sgml:
8029         * docs/gst/tmpl/gstpluginfeature.sgml:
8030         * docs/gst/tmpl/gstqueue.sgml:
8031         * docs/gst/tmpl/gstreamer-unused.sgml:
8032         * docs/gst/tmpl/gstregistry.sgml:
8033         * docs/gst/tmpl/gstregistrypool.sgml:
8034         * docs/gst/tmpl/gstscheduler.sgml:
8035         * docs/gst/tmpl/gstsearchfuncs.sgml:
8036         * docs/gst/tmpl/gstshaper.sgml:
8037         * docs/gst/tmpl/gstspider.sgml:
8038         * docs/gst/tmpl/gstspideridentity.sgml:
8039         * docs/gst/tmpl/gststructure.sgml:
8040         * docs/gst/tmpl/gstsystemclock.sgml:
8041         * docs/gst/tmpl/gsttag.sgml:
8042         * docs/gst/tmpl/gsttaginterface.sgml:
8043         * docs/gst/tmpl/gsttee.sgml:
8044         * docs/gst/tmpl/gstthread.sgml:
8045         * docs/gst/tmpl/gsttrace.sgml:
8046         * docs/gst/tmpl/gsttrashstack.sgml:
8047         * docs/gst/tmpl/gsttypefind.sgml:
8048         * docs/gst/tmpl/gsttypes.sgml:
8049         * docs/gst/tmpl/gsturi.sgml:
8050         * docs/gst/tmpl/gsturitype.sgml:
8051         * docs/gst/tmpl/gstutils.sgml:
8052         * docs/gst/tmpl/gstvalue.sgml:
8053         * docs/gst/tmpl/gstversion.sgml:
8054         * docs/gst/tmpl/gstxml.sgml:
8055         * docs/gst/tmpl/gstxmlregistry.sgml:
8056         * docs/gst/tmpl/gthread-cothreads.sgml:
8057         * docs/gst/tmpl/types.sgml:
8058
8059 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8060
8061         * docs/pwg/other-sink.xml:
8062         * docs/pwg/other-source.xml:
8063           Documentation on how to write source and sink elements. Other
8064           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8065           manager, autoplugger) are all still pending.
8066
8067 2004-03-25  Benjamin Otte  <otte@gnome.org>
8068
8069         * testsuite/elements/Makefile.am:
8070         * testsuite/elements/gst-compprep-check:
8071           add check to make sure gst-compprep works
8072         * testsuite/elements/gst-inspect-check.in:
8073           improve initialization output
8074         * testsuite/Makefile.am:
8075         * testsuite/gst-inspect-check:
8076           remove old file
8077
8078 2004-03-24  David Schleef  <ds@schleef.org>
8079
8080         * testsuite/elements/Makefile.am:
8081         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8082         to the testsuite.
8083
8084 2004-03-24  Benjamin Otte  <otte@gnome.org>
8085
8086         * libs/gst/control/dparam.c: (gst_dparam_attach),
8087         (gst_dparam_detach):
8088         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8089           fix lvalue casts for real
8090
8091 2004-03-24  Benjamin Otte  <otte@gnome.org>
8092
8093         * gst/schedulers/gstbasicscheduler.c:
8094         (gst_basic_scheduler_src_wrapper):
8095         * gst/schedulers/gstoptimalscheduler.c:
8096         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8097         (pad_clear_queued), (gst_opt_scheduler_add_element),
8098         (gst_opt_scheduler_remove_element):
8099           fix GStreamer to not have issues with lvalue casts anymore (fixes
8100           #136841)
8101
8102 2004-03-24  Benjamin Otte  <otte@gnome.org>
8103
8104         * gst/gstelement.c:
8105           add documentation about a gobject quirk where the object hasn't the
8106           correct class pointer set on initialization
8107         * gst/schedulers/gstbasicscheduler.c:
8108         (gst_basic_scheduler_src_wrapper):
8109           make sure to not run into an infinite loop
8110
8111 2004-03-22  Benjamin Otte  <otte@gnome.org>
8112
8113         * gst/gstutils.c: (gst_util_dump_mem):
8114         * gst/gstutils.h:
8115           first argument of gst_util_dump_mem should be const
8116
8117 2004-03-22  Johan Dahlin  <johan@gnome.org>
8118
8119         * gst/gstvalue.h: Clean up a little bit.
8120
8121 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8122
8123         reviewed by Benjamin Otte  <otte@gnome.org>
8124
8125         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8126         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8127         (gst_aggregator_class_init), (gst_aggregator_init):
8128         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8129         (gst_filesrc_dispose), (gst_filesrc_set_location):
8130         * gst/elements/gstidentity.c: (gst_identity_finalize),
8131         (gst_identity_class_init), (gst_identity_chain):
8132         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8133         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8134         (gst_statistics_class_init):
8135         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8136         (gst_tee_get_property):
8137           clean up used memory in this elements correctly on teardown (closes
8138           #137279)
8139
8140 2004-03-20  Colin Walters  <walters@redhat.com>
8141
8142         * gst/registries/gstxmlregistry.c:
8143         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8144         registry saving atomic.
8145
8146 2004-03-20  Colin Walters  <walters@redhat.com>
8147
8148         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8149         Just use
8150         access() instead of actually creating and deleting files.
8151
8152 2004-03-18  David Schleef  <ds@schleef.org>
8153
8154         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8155         (bug #137625)
8156
8157 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8158
8159         * po/sv.po: updated translation (Christian Rose)
8160
8161 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8162
8163         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8164         (gst_filesink_get_query_types), (_do_init),
8165         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8166           return FALSE silently
8167         * po/af.po: updated translation (Petri Jooste)
8168
8169 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8170
8171         * Makefile.am:
8172         * configure.ac:
8173           dist common properly
8174         * po/af.po:
8175         * po/fr.po:
8176         * po/nl.po:
8177         * po/sr.po:
8178         * po/sv.po:
8179           refreshing translations
8180
8181 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8182
8183         * po/LINGUAS:
8184         * po/sv.po:
8185         * po/af.po:
8186           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8187
8188 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8189
8190         * Makefile.am: use common/release.mak
8191
8192 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8193
8194         * docs/faq/gst-uninstalled:
8195           adding gst-monkeysaudio to the list of possible plugin dirs
8196
8197 2004-03-16  David Schleef  <ds@schleef.org>
8198
8199         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8200         (gst_init_check_with_popt_table):  Fix some gettext strings to
8201         make them easier to translate.  Required making the strings
8202         non-const.
8203
8204 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8205
8206         * configure.ac: bump nano to 1
8207
8208 === release 0.8.0 ===
8209
8210 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8211
8212         * configure.ac: release 0.8.0, "Executive Slacks"
8213
8214 2004-03-16  Johan Dahlin  <johan@gnome.org>
8215
8216         * gst/schedulers/gstoptimalscheduler.c
8217         (gst_opt_scheduler_pad_unlink): Remove double ;,
8218         spotted by Scott Wheeler
8219
8220 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8221
8222         * configure.ac: bump libtool version
8223
8224 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8225
8226         * gst/gstcaps.h:
8227         * gst/gststructure.h:
8228           add reserved padding
8229
8230 2004-03-15  Benjamin Otte  <otte@gnome.org>
8231
8232         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8233           set the first parameter for select call correctly.
8234           (fixes #137230)
8235
8236 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8237
8238         * *.c,*.h: don't mix tabs and spaces
8239
8240 2004-03-15  Johan Dahlin  <johan@gnome.org>
8241
8242         * gst/schedulers/gstoptimalscheduler.c
8243         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8244         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8245
8246         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8247         
8248 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8249
8250         * testsuite/Rules:
8251           fix gst-register rules
8252
8253 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8254
8255         * testsuite/Rules:
8256           use versioned gst-register
8257
8258 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8259
8260         * docs/libs/gstreamer-libs-sections.txt:
8261           remove </SUBSECTION>
8262         * gst/gstplugin.c:
8263         * gst/gstregistry.c: (gst_registry_add_plugin):
8264         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8265         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8266           add debugging and fix some comment blocks
8267
8268 2004-03-15  Johan Dahlin  <johan@gnome.org>
8269
8270         * *.h: Revert indent changes.
8271         
8272 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8273
8274         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8275           g_error_free the g_error
8276         * tools/gst-feedback-m.m:
8277           check for other versions of gstreamer
8278         * tools/gst-indent:
8279           use sh, not bash
8280
8281 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8282
8283         * tools/gst-register.c: do not spill paths when registries are not
8284           writable, until we fix the "user running gst-register" case.
8285
8286 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8287
8288         * *.c, *.h: commit of gst-indent run on core
8289
8290 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8291
8292         * tools/gst-indent:
8293         * tools/Makefile.am:
8294           add our indentation style as a script
8295
8296 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8297
8298         * po/sr.po:
8299         * po/LINGUAS:
8300           added Serbian translation
8301
8302 2004-03-13  Benjamin Otte  <otte@gnome.org>
8303
8304         * gst/gstelement.c:
8305           add documentation note about gst_element_found_tags_for_pad not
8306           being usable in getfunctions. (see #137042)
8307
8308 2004-03-12  David Schleef  <ds@schleef.org>
8309
8310         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8311         change API right now!  Readd gst_caps_is_simple() macro.
8312         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8313         uninitialized variable.  I'd bet this caused crashes.
8314         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8315
8316 2004-03-12  Johan Dahlin  <johan@gnome.org>
8317
8318         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8319         * gst/gstcaps.h: Clean up
8320
8321         * gst/gst.c (init_post): call gst_caps_get_type() instead of
8322         _gst_caps_initalize()
8323
8324         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
8325         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
8326
8327         * gst/gststructure.c (gst_structure_get_type): Ditto
8328
8329         * gst/gststructure.h: Ditto
8330         
8331 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8332
8333         * gst/gstqueue.c: (gst_queue_init):
8334           Reset default max. values in queues. Reason is simply to avoid
8335           braindead use. If you want wider values, use the properties. The
8336           default is supposed to always work. Wider values would make this
8337           beast a memory hog by default (250 full-PAL RGB32 video frames?
8338           That's 440 MB! No thank you).
8339
8340 2004-03-10  David Schleef  <ds@schleef.org>
8341
8342         * tools/gst-run.c: (main):  Fix crash when no relevant tools
8343         were found.  (bug #136793)
8344
8345 2004-03-10  Johan Dahlin  <johan@gnome.org>
8346
8347         * gst/schedulers/gstoptimalscheduler.c
8348         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
8349         links to elements within the same group, so we can finally remove
8350         that annoying warning. Refactor the code a little bit
8351         (group_dec_links_for_element): Split out
8352
8353 2004-03-09  David Schleef  <ds@schleef.org>
8354
8355         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
8356         (bug #134863)
8357
8358 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * configure.ac: first bug fix due to major/minor bump
8361
8362 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8363
8364         * configure.ac: bump nano to 1
8365
8366 === release 0.7.6 ===
8367
8368 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8369
8370         * NEWS:
8371         * RELEASE:
8372         * configure.ac:
8373           releasing 0.7.6, "Almost"
8374         * po/fr.po:
8375         * po/nl.po:
8376         * tools/Makefile.am:
8377         * tools/gst-feedback-m.m:
8378           unversioned source
8379
8380 2004-03-09  Johan Dahlin  <johan@gnome.org>
8381
8382         Reviewed by: Thomas Vander Stichele
8383
8384         * gst/gstelement.c (gst_element_class_init): register second
8385         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
8386         language bindings can (de)marshall correctly.
8387
8388         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
8389
8390         * gst/gsterror.c (gst_g_error_get_type): New function
8391
8392         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
8393         with VOID:OBJECT,OBJECT,STRING 
8394
8395 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
8396
8397         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
8398         Free a leaked g_timer on early returns.
8399
8400 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8401
8402         * docs/pwg/advanced-types.xml:
8403           Add cinepak description.
8404
8405 2004-03-07  David Schleef  <ds@schleef.org>
8406
8407         * docs/random/mimetypes:  Added cinepak description
8408
8409 2004-03-07  Andy Wingo  <wingo@pobox.com>
8410
8411         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
8412
8413         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
8414         there are no links to other groups when a group is destroyed.
8415         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
8416         removed from a group, make sure the link count to elements linked
8417         to other pads is appropriately decremented. This really fixes
8418         #135672.
8419
8420         The 1.60->1.61 patch has been reapplied in light of this fix.
8421
8422         * gst/gstelement.c (gst_element_dispose): Really protect against
8423         multiple invocations this time.
8424
8425 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8426
8427         * docs/gst/gstreamer-sections.txt:
8428         * docs/gst/tmpl/gsttag.sgml:
8429           remove some deprecated functions, document some existing ones
8430         * gst/gsttag.c: (gst_tag_get_flag):
8431         * gst/gsttag.h:
8432           add accessor function
8433
8434 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8435
8436         * docs/gst/gstreamer-sections.txt:
8437         * docs/gst/tmpl/gsttag.sgml:
8438         * docs/gst/tmpl/gstxml.sgml:
8439         * gst/gsttag.c: (gst_tag_get_flag):
8440         * gst/gsttag.h:
8441
8442 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
8443
8444         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
8445         leak
8446
8447 2004-03-05  David Schleef  <ds@schleef.org>
8448
8449         * REQUIREMENTS: Add bison and flex.
8450         * configure.ac: Fix comment about bison.
8451         * docs/random/ds/0.9-suggested-changes: yer ma
8452         * tools/gst-inspect.c: (print_element_info):  Fix warning.
8453
8454 2004-03-05  Benjamin Otte  <otte@gnome.org>
8455
8456         * gst/gstelement.c: (gst_element_error_full):
8457           revert recent recursive state changing commit - messing with other
8458           elements' states is evil and should be done by apps only.
8459
8460 2004-03-05  Benjamin Otte  <otte@gnome.org>
8461
8462         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
8463           check for empty intersection instead of NULL caps
8464         (gst_element_get_compatible_pad_filtered):
8465           remove old workaround that is only a bug nowadays
8466
8467 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8468
8469         * gst/gstelement.c: (gst_element_error_full):
8470           make elements try to recursively change state to PAUSED on all
8471           parents after an error to suppress ensuing warnings
8472         * gst/parse/grammar.y:
8473           make it check if it was able to sync the state, and throw an error
8474           if not, so stuff like
8475           oggdemux ! vorbisdec ! osssink gets caught
8476
8477 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8478
8479         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
8480           it contains lib64; use AS_AC_EXPAND to handle it properly
8481
8482 2004-03-05  David Schleef  <ds@schleef.org>
8483
8484         * gst/gstcpuid_i386.s:  Remove unused code
8485         * libs/gst/getbits/getbits.c: (gst_getbits_init),
8486         (gst_getbits_newbuf): Remove MMX code
8487         * libs/gst/getbits/getbits.h: Remove MMX code
8488
8489 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
8490
8491         * debian/.cvsignore:
8492         * debian/README.Debian:
8493         * debian/changelog:
8494         * debian/control:
8495         * debian/control.in:
8496         * debian/copyright:
8497         * debian/gstreamer-core-libs-dev.files:
8498         * debian/gstreamer-core-libs.files:
8499         * debian/gstreamer-core.files:
8500         * debian/gstreamer-core.postinst:
8501         * debian/gstreamer-core.postrm:
8502         * debian/gstreamer-doc.files:
8503         * debian/gstreamer-doc.links:
8504         * debian/gstreamer-doc.lintian:
8505         * debian/gstreamer-runtime.files:
8506         * debian/gstreamer-runtime.manpages:
8507         * debian/gstreamer-runtime.postinst:
8508         * debian/gstreamer-runtime.postrm:
8509         * debian/gstreamer-tools.files:
8510         * debian/gstreamer-tools.manpages:
8511         * debian/libgstreamer-dev.files:
8512         * debian/libgstreamer0.4.1.files:
8513         * debian/libgstreamerVERSION.files:
8514         * debian/rules:
8515         Debian package info not maintained here.
8516
8517 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8518
8519         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8520         * gst/gstbin.c: (gst_bin_class_init):
8521         * gst/gstelement.c: (gst_element_class_init):
8522         * gst/gstindex.c: (gst_index_class_init):
8523         * gst/gstobject.c: (gst_object_class_init),
8524         (gst_signal_object_class_init):
8525         * gst/gstpad.c: (gst_pad_template_class_init):
8526         * gst/gstregistry.c: (gst_registry_class_init):
8527         * gst/gsturi.c: (gst_uri_handler_base_init):
8528         * gst/gstxml.c: (gst_xml_class_init):
8529         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8530         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
8531           make all signal names use dashes instead of underscore
8532
8533 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8534
8535         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
8536
8537 2004-03-03  Benjamin Otte  <otte@gnome.org>
8538
8539         * gst/schedulers/gstoptimalscheduler.c:
8540           revert last commit by Andy Wingo. It causes segfaults on unreffing
8541           in Rhythmbox. (see bug #135672)
8542
8543 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8544
8545         * po/fr.po: fix typo
8546
8547 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8548
8549         * tools/gst-inspect.c: (main): 
8550         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
8551
8552 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8553
8554         * configure.ac:
8555           get GLIB_ONLY and POPT flags for the nonversioned binaries
8556         * tools/Makefile.am:
8557           use them
8558
8559 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8560
8561         * gst/gst.c: (init_post):
8562           change so that GST_REGISTRY now is where the global registry gets
8563           saved, since that is where plugins now get attached to first, and
8564           spilled over to the user registry.  Note that in the case of using
8565           GST_REGISTRY env var, we don't want to affect any real registries
8566           beyond the one given by this var, and thus we don't set a user
8567           registry to spill to.  So make sure GST_REGISTRY is writable.
8568
8569 2004-03-01  David Schleef  <ds@schleef.org>
8570
8571         * AUTHORS:  Added some names.  Add yourself if you're missing.
8572
8573 2004-03-01  David Schleef  <ds@schleef.org>
8574
8575         * MAINTAINERS: Add
8576
8577 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
8578
8579         * configure.ac:
8580           remove whitespace
8581         * docs/gst/tmpl/gstbuffer.sgml:
8582         * docs/gst/tmpl/gstdata.sgml:
8583         * docs/gst/tmpl/gstreamer-unused.sgml:
8584         * docs/gst/tmpl/gstxml.sgml:
8585           doc update
8586         * docs/manuals.mak:
8587           add a FIXME
8588         * docs/pwg/intro-preface.xml:
8589         * docs/pwg/pwg.xml:
8590           remove GNOME
8591         * gst/gst.c: (init_post):
8592           try GST_PLUGIN_PATH paths for the _global_registry first
8593         * gst/gstelement.h:
8594           add the error message as well, otherwise (null) debug info doesn't
8595           make much sense
8596         * tools/gst-register.c: (main):
8597           spill paths to next registry if this registry is not writable
8598         * po/fr.po:
8599         * po/nl.po:
8600           translation updates
8601
8602 2004-03-01  Johan Dahlin  <johan@gnome.org>
8603
8604         * gst/gstbuffer.c (_gst_buffer_initialize): 
8605         * gst/gstdata.c (gst_data_get_type): 
8606         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
8607         instead of ref, since some applications that uses GBoxed
8608         routines depends on a function that actually returns a copy.
8609
8610 2004-02-27  Benjamin Otte  <otte@gnome.org>
8611
8612         * gst/gstbuffer.h:
8613           remove gst_buffer_free, use gst_data_unref
8614         * gst/gstdata.c: (gst_data_get_type):
8615           use refcounting in GstData GBoxed registration
8616         * gst/gstdata.h:
8617           remove gst_data_free, use gst_data_unref
8618
8619 2004-02-27  Johan Dahlin  <johan@gnome.org>
8620
8621         * gst/gstdata.c (gst_data_get_type): New function, register
8622         GstData as a GBoxed type.
8623
8624         * gst/gstdata.h (GST_TYPE_DATA): New macro
8625
8626 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
8627
8628         * Makefile.am:
8629         * gstreamer.spec.in:
8630           put back RELEASE
8631         * gst/Makefile.am:
8632           clean up non-disting of built files
8633         * testsuite/debug/commandline.c:
8634           test fix for option rename
8635
8636 2004-02-26  David Schleef  <ds@schleef.org>
8637
8638         * configure.ac:  We don't really need glib-2.3.  Also remove
8639         some unneeded checks for library functions.
8640         * gst/Makefile.am:  Instead, we need to not dist files created
8641         by glib-genmarshal.
8642
8643 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8644
8645         * configure.ac:
8646           bump glib required version to 2.3.0 for g_value_takes_boxed
8647
8648  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
8649
8650         * common/m4/gst-docs.m4
8651         change flavour text from enable to disable as enable is our default
8652         closes bug Bug 135304
8653
8654 === release 0.7.5 ===
8655  
8656  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8657  
8658         * NEWS:
8659           instate NEWS file
8660         * Makefile.am:
8661         * gstreamer.spec.in:
8662         * RELEASE:
8663           put back release
8664         * configure.ac:
8665         * docs/random/release:
8666           more updates
8667
8668 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8669
8670         * gst/gsttag.c: (_gst_tag_initialize):
8671         * po/fr.po:
8672         * po/nl.po:
8673           remove hyphen from codec tags
8674
8675 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8676
8677         * gst/parse/Makefile.am:
8678           fix dependency so that a make from a clean build works the first
8679           time
8680
8681 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
8682
8683         * docs/random/release:
8684           update release strategy
8685         * po/fr.po:
8686           auto-update po file
8687         * po/nl.po:
8688           update dutch translation
8689
8690 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
8691
8692         * docs/manual/debugging.xml:
8693         fix manual for new debugging system
8694
8695 2004-02-25  Andy Wingo  <wingo@pobox.com>
8696
8697         * gst/gstpad.c (gst_pad_link_prepare): Re-add
8698         gst_pad_link_prepare. Please email the list with specific reasons
8699         for reverting.
8700
8701 2004-02-24  Andy Wingo  <wingo@pobox.com>
8702
8703         * gst/gstelement.c (gst_element_dispose): Protect against multiple
8704         invocations.
8705
8706         * gst/schedulers/gstoptimalscheduler.c:
8707         I added a mess of prototypes at the top of the file by way of
8708         documentation. Some of the operations on chains and groups were
8709         re-organized.
8710
8711         (create_group): Added a type argument so if the group is enabled,
8712         the setup_group_scheduler knows what to do.
8713         (group_elements): Added a type argument here, too, to be passed on
8714         to create_group.
8715         (group_element_set_enabled): If an unlinked PLAYING element is
8716         added to a bin, we have to create a new group to hold the element,
8717         and this function will be called before the group is added to the
8718         chain. Thus we have a valid case for group->chain==NULL. Instead
8719         of calling chain_group_set_enabled, just set the flag on the group
8720         (the chain's status will be set when the group is added to it).
8721         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
8722         Setup the group scheduler when the group is enabled, not
8723         specifically when an element goes PAUSED->PLAYING. This means
8724         PLAYING elements can be added, linked, and scheduled into a
8725         PLAYING pipeline, as was intended.
8726         (add_to_group): Don't ref the group twice. I don't know when this
8727         double-ref got in here. Removing it has the potential to cause
8728         segfaults if other parts of the scheduler are buggy. If you find
8729         that the scheduler is segfaulting for you, put in an extra ref
8730         here and see if that hacks over the underlying issue. Of course,
8731         then find out what code is unreffing a group it doesn't own...
8732         (create_group): Make the extra refcount floating, and remove it
8733         after adding the element. This means that...
8734         (unref_group): Destroy when the refcount reaches 0, not 1, like
8735         every other refcounted object in the known universe.
8736         (remove_from_group): When a group becomes empty, set it to be not
8737         active, and remove it from its chain. Don't unref it again,
8738         there's no floating reference any more.
8739         (destroy_group): We have to remove the group from the chain in
8740         remove_from_group (rather than here) to break refcounting cycles
8741         (the chain always has a ref on the group). So assert that
8742         group->chain==NULL.
8743         (ref_group_by_count): Removed, it was commented out anyway.
8744         (merge_chains): Use the remove_from_chain and add_to_chain
8745         primitives to do the reparenting, instead of rolling our own
8746         implementation.
8747         (add_to_chain): The first non-disabled group in the chain's group
8748         list will be the entry point for the chain. Because buffers can
8749         accumulate in loop elements' peer bufpens, we preferentially
8750         schedule loop groups before get groups to avoid unnecessary
8751         execution of get-based groups when the bufpens are already full.
8752         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
8753         (get_group_schedule_function): Ditto.
8754         (loop_group_schedule_function): Ditto.
8755         (gst_opt_scheduler_loop_wrapper): Ditto.
8756         (gst_opt_scheduler_iterate): Ditto.
8757
8758         I understand the opt scheduler now, yippee!
8759
8760         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
8761         (gst_pad_get_name, gst_pad_set_chain_function) 
8762         (gst_pad_set_get_function, gst_pad_set_event_function) 
8763         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
8764         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
8765         (gst_pad_set_query_function, gst_pad_get_query_types) 
8766         (gst_pad_get_query_types_default) 
8767         (gst_pad_set_internal_link_function) 
8768         (gst_pad_set_formats_function, gst_pad_set_link_function) 
8769         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
8770         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
8771         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
8772         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
8773         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
8774         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
8775         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
8776         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
8777         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
8778         (gst_pad_event_default_dispatch, gst_pad_event_default) 
8779         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
8780         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
8781         (gst_pad_get_formats_default, gst_pad_get_formats): Better
8782         argument checks, and some doc fixes.
8783
8784         (gst_pad_custom_new_from_template): Um, does anyone
8785         use these functions? Actually make a custom pad instead of a
8786         normal one.
8787         (gst_pad_try_set_caps): Transpose some checks.
8788         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
8789         the pad is in negotiation.
8790         (gst_pad_try_relink_filtered): Use pad_link_prepare.
8791         
8792         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
8793
8794         * gst/gstelement.h: 
8795         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
8796         on the list.
8797
8798 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
8799
8800         * gst/gstbin.c: (gst_bin_add):
8801           add error for not being able to add elements
8802
8803 2004-02-22  Julien MOUTTE <julien@moutte.net>
8804
8805         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
8806         audio-codec and video-codec.
8807
8808 2004-02-22  Benjamin Otte  <otte@gnome.org>
8809
8810         reported by: Padraig O'Briain <padraig.obriain@sun.com>
8811
8812         * autogen.sh:
8813           replace test -e with test -x for mkinstalldirs to be more portable.
8814           (fixes #134816)
8815
8816 2004-02-22  Benjamin Otte  <otte@gnome.org>
8817
8818         * gst/gstpad.c:
8819           revert last patch from Andy, it makes gst_pad_can_link_filtered much
8820           too noisy
8821         * gst/gsttag.c: (_gst_tag_initialize):
8822         * gst/gsttag.h:
8823           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
8824         * libs/gst/control/dparam.c: (gst_dparam_attach):
8825         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
8826           check that types for attached dparams match
8827
8828 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
8829
8830         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
8831         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
8832         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8833           fix errors
8834
8835 2004-02-20  Andy Wingo  <wingo@pobox.com>
8836
8837         * gst/gstbin.c:
8838         * gst/gstbuffer.c:
8839         * gst/gstplugin.c:
8840         * gst/registries/gstxmlregistry.c: 
8841         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
8842
8843         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
8844         (gst_element_add_pad): DEBUG->INFO, some fixes.
8845         (gst_element_get_compatible_pad_template): Just see if the
8846         templates' caps intersect, not if one is a strict subset of the
8847         other. This conforms more to what gst_pad_link_intersect() does.
8848         (gst_element_class_add_pad_template): Don't memcpy the pad
8849         template, just ref it.
8850         (gst_element_get_compatible_pad_filtered): Clean up debug messages
8851
8852         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
8853         (gst_pad_link_filtered): Debug changes.
8854         (gst_pad_link_prepare): New function, consolidated from
8855         can_link_filtered and link_filtered.
8856
8857         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
8858         look more like that of the functions in gstelement.c
8859
8860         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
8861         object, and return the empty string if object is NULL.
8862
8863         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
8864         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
8865         LOG, not DEBUG. We still get flex info on debug.
8866
8867         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
8868         debug string more verbose.
8869         (plugin_times_older_than): DEBUG->LOG.
8870
8871 2004-02-20  Julien MOUTTE <julien@moutte.net>
8872
8873         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
8874         will emit found_tag for each stream they demux with the codec.
8875
8876 2004-02-20  Benjamin Otte  <otte@gnome.org>
8877
8878         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
8879           copy navigation event correctly. Check freeing tag lists. 
8880         * gst/gstthread.c: (gst_thread_change_state):
8881           don't abort() on state changing mess - it might happen because of
8882           bugs.
8883         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
8884           use boxed functions
8885         * gst/gstvalue.h:
8886           fix GST_VALUE_HOLDS_CAPS
8887
8888 2004-02-19  David Schleef  <ds@schleef.org>
8889
8890         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
8891         and use it for GST_FUNCTION.  (bug #134750)
8892
8893 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8894
8895         * po/fr.po:
8896         * po/nl.po:
8897           updating translations
8898
8899 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8900
8901         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
8902
8903 2004-02-18  kost@imn.htwk-leipzig.de
8904
8905         reviewed by: David Schleef  <ds@schleef.org>
8906
8907         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
8908         for libgstcontrol.
8909
8910 2004-02-18  David Schleef  <ds@schleef.org>
8911
8912         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8913         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
8914         (gst_dpsmooth_new): Additional fixes to get double dparams working.
8915         * tools/gst-inspect.c: (print_element_info): Support dumping of
8916         double dparam information.
8917
8918 2004-02-17  David Schleef  <ds@schleef.org>
8919
8920         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8921         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
8922         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
8923         Use GST_TYPE_CAPS in signal prototype.
8924         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
8925         Convert GST_TYPE_CAPS to boxed.
8926         * gst/gstelement.c: (gst_element_class_init):
8927         Use GST_TYPE_TAG_LIST in signal prototype.
8928         * gst/gstindex.c: (gst_index_class_init):
8929         * gst/gstindex.h:
8930         Add GST_TYPE_INDEX_ENTRY type.
8931         * gst/gstmarshal.list:
8932         Add necessary marshal types.
8933         * gst/gstpad.c: (gst_real_pad_class_init),
8934         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
8935         (gst_pad_recover_caps_error):
8936         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
8937         * gst/gststructure.c: (_gst_structure_initialize),
8938         (gst_structure_copy), (_gst_structure_copy_conditional):
8939         * gst/gststructure.h:
8940         Convert GST_TYPE_STRUCTURE to boxed.
8941         * gst/gsttag.c: (gst_tag_list_get_type):
8942         * gst/gsttag.h:
8943         Add GST_TYPE_TAG_LIST type.
8944
8945 2004-02-17  Julien MOUTTE  <julien@moutte.net>
8946
8947         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
8948         to what we agreed with david.
8949         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
8950
8951 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8952
8953         * po/nl.po: update translation
8954
8955 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8956
8957         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8958           throw an error if spider is trying to play a mime type there is
8959           no decoder for
8960         * po/POTFILES.in:
8961           add gst/autoplug/gstspider.c for translation
8962
8963 2004-02-17  Julien MOUTTE  <julien@moutte.net>
8964
8965         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
8966         silently when the pad is negotiating.
8967
8968 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8969
8970         * docs/faq/Makefile.am:
8971           add script to run gstreamer uninstalled 
8972         * docs/faq/faq.xml:
8973         * docs/faq/developing.xml:
8974         * docs/faq/gst-uninstalled:
8975           extract script to run gstreamer uninstalled
8976         * docs/manuals.mak:
8977           add EXTRA_SOURCES variable for Makefile.am's to set to
8978           use additional SOURCE files for the doc build
8979
8980 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8981
8982         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
8983
8984 2004-02-15  Julien MOUTTE  <julien@moutte.net>
8985
8986         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
8987         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
8988         an error was thrown by osssink. Basically a state change failure for
8989         an element in a different scheduling group was considered as
8990         successful, which means that caps nego was going on and weird stuff
8991         happened. Like I wrote in the comment there, if someone wants to
8992         revert that please drop me a mail explaining why because I really see
8993         no point in keeping that broken behaviour there.
8994         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
8995         be empty, we then return NULL which will trigger a nice error when 
8996         pulling from the pad.
8997
8998 2004-02-13  David Schleef  <ds@schleef.org>
8999
9000         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9001         (gst_dparam_get_property), (gst_dparam_set_property),
9002         (gst_dparam_do_update_default):
9003         * libs/gst/control/dparam.h:
9004         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9005         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9006         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9007         (gst_dpsmooth_do_update_double):
9008         * libs/gst/control/dparam_smooth.h:
9009         * libs/gst/control/dparammanager.c:
9010         (gst_dpman_inline_direct_update):
9011         Add support for double dparams.
9012
9013 2004-02-13  David Schleef  <ds@schleef.org>
9014
9015         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9016         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9017
9018 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9019
9020         reviewed by: David Schleef  <ds@schleef.org>
9021
9022         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9023         (gst_fdsrc_init), (gst_fdsrc_set_property),
9024         (gst_fdsrc_get_property), (gst_fdsrc_get):
9025         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9026         and sends an EOS event if file descriptor reading times out.
9027
9028 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9029
9030         * configure.ac:
9031           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9032
9033 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9034
9035         * configure.ac: pass required libxml version as argument
9036         (bug reported by Christophe Fergeau)
9037
9038 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9039   
9040         * docs/gst/gstreamer-docs.sgml:
9041         * docs/gst/tmpl/gstxml.sgml:
9042         * docs/libs/gstreamer-libs-docs.sgml:
9043           version API docs
9044
9045 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9046
9047         * gst/gstinfo.c:
9048         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9049         (gst_registry_pool_feature_filter):
9050         * gst/gstthread.c: (gst_thread_class_init):
9051         * gst/gstvalue.c:
9052           add includes exposed by building without libxml
9053         * gst/indexers/Makefile.am:
9054           do not build fileindex when LOADSAVE disabled; we should have
9055           a better libxml check later since fileindex depends on xml, not
9056           LOADSAVE or REGISTRY
9057         * libs/gst/control/Makefile.am:
9058           link with m
9059         * tools/Makefile.am:
9060           fix wrong source code for gst-xmlinspect
9061
9062 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9063
9064         * configure.ac:
9065           fix gcov help output
9066           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9067         * docs/random/release:
9068           some updated releasing notes
9069         * gstreamer.spec.in:
9070           more updates
9071
9072 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9073
9074         * docs/faq/faq.xml:
9075         * docs/manual/manual.xml:
9076         * docs/pwg/pwg.xml:
9077         * docs/pwg/titlepage.xml:
9078           put version in documentation
9079
9080 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9081
9082         * tools/Makefile.am: fix man page installation
9083
9084 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9085
9086         * configure.ac:
9087           don't check for libxml when load/save and registry disabled (#105844)
9088         * gstreamer.spec.in:
9089           sync with fedora candidate spec
9090
9091 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9092
9093         * po/fr.po:
9094         * po/nl.po:
9095           replace multidisksrc with multifilesrc
9096
9097 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9098
9099         * po/POTFILES.in:
9100           update to multidisksrc => multifilesrc file renaming (#134145)
9101
9102 2004-02-11  David Schleef  <ds@schleef.org>
9103
9104         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9105         * docs/gst/tmpl/gstpadtemplate.sgml: same
9106         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9107         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9108         fixing dance.
9109         * gst/gstutils.c: Remove disabled code that uses GstProps.
9110         * gst/registries/gstxmlregistry.h: same
9111         * docs/random/ds/0.9-suggested-changes: random notes
9112
9113 2004-02-11  kost@imn.htwk-leipzig.de
9114
9115         reviewed by: David Schleef  <ds@schleef.org>
9116
9117         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9118         initialisation of clock (bug #134128)
9119
9120 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9121
9122         * configure.ac:
9123         * gst/elements/Makefile.am:
9124         * gst/elements/gstelements.c:
9125         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9126         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9127         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9128         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9129         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9130         * gst/elements/gstmultifilesrc.h:
9131           rename multidisksrc to multifilesrc (part of #122200)
9132
9133 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9134
9135         * docs/manuals.mak:
9136           fix automake complaints
9137         * gst-element-check.m4:
9138           fix unquotedness
9139
9140 2004-02-11  David Schleef  <ds@schleef.org>
9141
9142         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9143         * gst/gstatomic_impl.h: Disable sparc implementation.
9144
9145 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9146
9147         * gst-element-check.m4:
9148           fix underquoted macros as reported by automake 1.8.x (#133800)
9149         * configure.ac:
9150           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9151           by autopoint (fixes #132996)
9152
9153 2004-02-10  Andy Wingo  <wingo@pobox.com>
9154
9155         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9156         way to do inheritance.
9157         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9158         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9159         Routine docs.
9160         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9161         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9162         doc.
9163         (gst_pad_unlink, gst_pad_is_linked): Docs.
9164         (gst_pad_renegotiate): A brief description of capsnego.
9165         (gst_pad_try_set_caps): Document.
9166         (gst_pad_try_set_caps_nonfixed): Document.
9167         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9168         (gst_pad_set_parent): Deprecated (although not out of the API).
9169         (gst_pad_get_parent): Deprecated, although many plugins use this.
9170         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9171         are private and will go away in 0.9.
9172         (gst_pad_perform_negotiate): Doc.
9173         (gst_pad_link_unnegotiate): I think this is meant to be static.
9174         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9175         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9176         (gst_pad_get_peer): Doc updates.
9177         (gst_pad_caps_change_notify): Doc.
9178         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9179         (gst_ghost_pad_new): Doc fixes.
9180
9181         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9182         (gst_object_check_uniqueness): 
9183
9184         * gst/gstelement.c (gst_element_add_pad) 
9185         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9186         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9187         (gst_element_get_static_pad, gst_element_get_pad_list) 
9188         (gst_element_class_get_pad_template_list) 
9189         (gst_element_class_get_pad_template): Work on the docs.
9190         (gst_element_get_pad_template_list): Uses the class method.
9191         (gst_element_get_compatible_pad_template): Docs, and consolidate
9192         some test conditions. 
9193         (gst_element_get_pad_from_template): New static function.
9194         (gst_element_request_compatible_pad): Docs, and work with
9195         non-request compatible templates. 
9196         (gst_element_get_compatible_pad_filtered): Docs and remove
9197         redundant checks.
9198         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9199         (gst_element_link_filtered, gst_element_link_many) 
9200         (gst_element_link, gst_element_link_pads) 
9201         (gst_element_unlink_many): Docs.
9202
9203 2004-02-05  Andy Wingo  <wingo@pobox.com>
9204
9205         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9206         s/pointer/boxed/.
9207
9208         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9209
9210         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9211         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9212         with the type=GST_TYPE_CAPS. This allows language bindings to know
9213         what kind of data they're dealing with.
9214
9215         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9216         to NULL when g_value_init is called. GstCaps, which rolls its own
9217         type implementation, now does the same instead of allocating empty
9218         caps.
9219         (_gst_caps_initialize, _gst_caps_collect_value,
9220         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9221         table methods. This allows G_VALUE_COLLECT to work.
9222
9223 2004-02-05  Andy Wingo  <wingo@pobox.com>
9224
9225         * configure.ac:
9226         * testsuite/Makefile.am (SUBDIRS): 
9227         * testsuite/ghostpads/Makefile.am: 
9228         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9229
9230         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9231         These two routines are the only ones that set
9232         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9233         pad template. They should be made static, depending on ABI needs.
9234         (gst_real_pad_dispose): Handle the case of ghost pads without a
9235         parent. Assert after dealing with ghost pads that the ghost pad
9236         list is empty.
9237         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9238         set after creation.
9239         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9240         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9241         functions. set_property will call add_ghost_pad/remove_ghost_pad
9242         as appropriate.
9243         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9244
9245         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9246         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9247         (gst_element_remove_pad): Handle ghost pads as well.
9248         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9249         depending on API-stability needs).
9250
9251 2004-02-05  Andy Wingo  <wingo@pobox.com>
9252
9253         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9254         of course they're const
9255
9256 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9257
9258         * tools/Makefile.am:
9259         * tools/gst-feedback:
9260         * tools/gst-feedback-0.7:
9261           make gst-feedback versioned too for consistency
9262
9263 2004-02-11  David Schleef  <ds@schleef.org>
9264
9265         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9266         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9267
9268 2004-02-10  Julien MOUTTE <julien@moutte.net>
9269
9270         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9271         the structure does not contain a valid tag list. Adding a safety check
9272         to remove a noisy warning in that case.
9273
9274 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9275
9276         * gst/gst.c: fix name to be in line with others
9277
9278 2004-02-09  Julien MOUTTE <julien@moutte.net>
9279
9280         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
9281         not shout that loud when len is 0. Just return 0 silently.
9282
9283 2004-02-09  Julien MOUTTE  <julien@moutte.net>
9284
9285         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
9286         because data_unref has one and I prefer the debug to be symetric.
9287         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
9288         were refed when added to the queue and unrefed only once when the queue
9289         was flushed. Now the flush handler unref the buffers two times : first
9290         unref for the ref added when pushing in the queue's tail and second
9291         unref to destroy the flushed buffer.
9292
9293 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9294
9295         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
9296
9297 2004-02-06  David Schleef  <ds@schleef.org>
9298
9299         * docs/random/ds/0.9-suggested-changes: Random ramblings
9300         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
9301         to int before printing.
9302         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
9303         * gst/parse/parse.l: same.  See bug #129600
9304
9305 2004-02-06  David Schleef  <ds@schleef.org>
9306
9307         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
9308         (gst_index_add_entry), (gst_index_add_associationv),
9309         (gst_index_add_association): Add gst_index_add_associationv()
9310         and clean up gst_index_add_association(). #127133
9311
9312 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9313
9314         * autogen.sh: check out common with right tag if CVS/Tag exists
9315
9316 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9317
9318         * testsuite/ghostpads/ghostpads.c: (main):
9319           fix testsuite from segfaulting
9320
9321 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9322
9323         * Makefile.am: add release target
9324         * configure.ac: bump nano to 1
9325         * docs/random/release:
9326
9327 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9328
9329         * gst/gstcaps.h:
9330         * gst/gstelement.c: (gst_element_base_class_init),
9331         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9332         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9333         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9334         (gst_real_pad_dispose):
9335         * gst/gststructure.c: (gst_structure_free),
9336         (gst_structure_from_string):
9337           put reverted patch back in
9338         * gst/gstelement.c: (gst_element_remove_pad):
9339           free explicit caps if they're set
9340         * gst/gstpad.c: (_gst_pad_default_fixate_func):
9341           copy the structure when fixating
9342
9343 2004-02-05  David Schleef  <ds@schleef.org>
9344
9345         * gst/gstmarshal.list:
9346         * gst/gstpad.c: (gst_real_pad_class_init),
9347         (_gst_real_pad_fixate_accumulator):
9348         Revert POINTER->BOXED change in signal marshaller.
9349
9350 === release 0.7.4 ===
9351                                                                                 
9352 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9353                                                                                 
9354         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
9355         * configure.ac: changed for release
9356
9357 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9358
9359         * gstreamer.spec.in:
9360           bump required version of gtk-doc
9361
9362 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9363
9364         * gst/gstcaps.h:
9365         * gst/gstelement.c: (gst_element_base_class_init),
9366         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9367         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9368         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9369         (gst_real_pad_dispose):
9370         * gst/gststructure.c: (gst_structure_free),
9371         (gst_structure_from_string):
9372           revert patch that breaks applications, reapply after release
9373           to get this fixed properly
9374
9375 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9376
9377         * gst/gsttag.c: (_gst_tag_initialize):
9378         * gst/gsttag.h:
9379           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
9380
9381 2004-02-04  David Schleef  <ds@schleef.org>
9382
9383         Fix some memleaks:
9384         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
9385         (gst_spider_plug_from_srcpad):
9386         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
9387
9388 2004-02-04  David Schleef  <ds@schleef.org>
9389
9390         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
9391         a GstRealPad before accessing its structure members.
9392
9393 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9394
9395         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
9396         (gst_clock_get_speed):
9397         * gst/gstclock.h:
9398           reset padding, remove unused fields
9399
9400 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9401
9402         * gst/autoplug/gstspideridentity.c:
9403         (gst_spider_identity_sink_loop_type_finding):
9404           use get_allowed_caps, not get_caps (fixes #132519)
9405         * gst/elements/gsttypefind.c: (stop_typefinding):
9406           use correct order when sending buffers and seeking
9407
9408 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9409
9410         * configure.ac:
9411         * gst/gstelement.h:
9412         * gst/gstpad.h:
9413         * gst/gstqueue.h:
9414           upgrade libtool CURRENT, reset padding
9415
9416 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9417
9418         * configure.ac:
9419           bump to prerelease
9420           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
9421
9422 2004-02-04  David Schleef  <ds@schleef.org>
9423
9424         * docs/random/ds/0.9-suggested-changes: random notes
9425         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
9426         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
9427         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
9428         expansion.
9429         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9430         (gst_filesink_get_query_types): same
9431         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
9432         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
9433         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
9434         to use new GST_PTR_FORMAT.
9435         * gst/gstelement.h: deprecate function factory macros
9436         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
9437         These are our last variadic macros that can't be replaced with
9438         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
9439         attempting to deprecate gst_element_clock_wait().
9440         * gst/gstevent.h: same
9441         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9442         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
9443         * gst/gstpad.h: deprecate function factory macros similar to above.
9444
9445 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9446
9447         * configure.ac:
9448         * tools/Makefile.am:
9449         * tools/gst-run.c: (popt_callback), (hash_print_key),
9450         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
9451         (get_candidates), (main):
9452           add new source file to generate non-versioned wrapper binaries
9453           for our tools.
9454
9455 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9456
9457         * gst/gstevent.c: (_gst_event_free):
9458           actually break; inside the switch statement
9459         * gst/parse/grammar.y:
9460           fix memleak where GValues weren't unset
9461
9462 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9463
9464         * gst/gststructure.c: (gst_structure_from_string):
9465           fix huge memleak
9466         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9467         (new_entry), (gst_type_find_element_chain):
9468         * gst/gstelement.c: (gst_element_base_class_init),
9469         (gst_element_class_set_details):
9470         * gst/gstpad.c: (gst_pad_can_link_filtered):
9471           fix smaller memleaks
9472         * gst/gstpad.c: (gst_real_pad_dispose):
9473           check that explicit caps are gone
9474         * gst/gststructure.c: (gst_structure_free):
9475           actually free the structure
9476         * gst/gstelement.c: (gst_element_clear_pad_caps):
9477           unset explicit caps
9478
9479 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9480
9481         * tools/Makefile.am:
9482           use AM_CFLAGS since all the CFLAGS are the same
9483           use AM_LDFAGS
9484
9485 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9486
9487         * docs/manual/gnome.xml:
9488           expand example a little
9489         * gst/gst.c: (gst_init_with_popt_table),
9490         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
9491           make sure popt option displays are done with right textdomain
9492           use GstPoptOption type
9493         * gst/gst.h:
9494           create GstPoptOption type
9495
9496 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9497
9498         * gst/gsterror.c: (_gst_stream_errors_init):
9499         * gst/gsterror.h:
9500           adding error type for no codec
9501         * po/POTFILES.in:
9502           add gst-inspect
9503         * po/nl.po:
9504           update dutch translation
9505         * tools/gst-inspect.c: (print_element_list), (main):
9506           do proper internationalization
9507         * tools/gst-launch.c: (idle_func):
9508           remove commented out function call
9509
9510 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9511
9512         * docs/README:
9513           add some error fixing notes
9514         * docs/gst/gstreamer-sections.txt:
9515           remove double entries
9516         * docs/gst/tmpl/gstbin.sgml:
9517         * docs/gst/tmpl/gstclock.sgml:
9518           remove override
9519         * docs/gst/tmpl/gstelement.sgml:
9520         * docs/gst/tmpl/gstindex.sgml:
9521         * docs/gst/tmpl/gstobject.sgml:
9522         * docs/gst/tmpl/gstpadtemplate.sgml:
9523         * docs/gst/tmpl/gstreamer-unused.sgml:
9524         * docs/gst/tmpl/gsttag.sgml:
9525         * docs/gst/tmpl/gstthread.sgml:
9526         * docs/gst/tmpl/gstxml.sgml:
9527         * gst/gsttag.h:
9528           sync header prototypes with c decls
9529         * gst/gsttaginterface.c:
9530           fix doc headers
9531
9532 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9533
9534         * gst/parse/Makefile.am:
9535         * gst/gstobject.h:
9536           get rid of gstmarshal.h dependency. It's not needed.
9537         * gst/gst.h:
9538         * gst/elements/gstfakesink.c:
9539         * gst/elements/gstfakesrc.c:
9540         * gst/elements/gstidentity.c:
9541         * gst/gstbin.c:
9542         * gst/gstelement.c:
9543         * gst/gstindex.c:
9544         * gst/gstobject.c:
9545         * gst/gstpad.c:
9546         * gst/gstthread.c:
9547         * gst/gstxml.c:
9548         * libs/gst/control/dparam.c:
9549         * libs/gst/control/dparammanager.c:
9550           include gstmarshal.h.
9551         Fixes #132045
9552
9553 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9554
9555         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9556         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
9557         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
9558         * gst/elements/gstfilesrc.h:
9559           don't ref the filesrc when creating mmaped buffers. Don't keep a
9560           list of not-yet-destroyed buffers.
9561         * gst/gstbuffer.h:
9562           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
9563
9564 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9565
9566         * gst/gst.c: (init_pre):
9567           remove textdomain
9568
9569 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9570
9571         * docs/pwg/advanced-events.xml:
9572         * docs/pwg/advanced-scheduling.xml:
9573         * docs/pwg/intro-basics.xml:
9574         * docs/pwg/other-manager.xml:
9575         * docs/pwg/other-nton.xml:
9576         * docs/pwg/other-ntoone.xml:
9577         * docs/pwg/other-oneton.xml:
9578         * docs/pwg/pwg.xml:
9579           All sort of documentation... Forgot what. Point is that I want this
9580           in before I leave. The 'other-*' will be the last section and will
9581           explain issues specific to these type of elements.
9582
9583 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9584
9585         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9586         (gst_filesrc_get_read):
9587           set all the values on buffers that we can
9588
9589 2004-02-02  David Schleef  <ds@schleef.org>
9590
9591         Change usage of isblah() to g_ascii_isblah() to be more locale
9592         independent.  (#133076)
9593         * gst/gsturi.c: (gst_uri_protocol_check_internal):
9594         * gst/gstutils.c:
9595         * gst/parse/parse.l:
9596
9597 2004-02-02  Jon Trowbridge  <trow@gnu.org>
9598
9599         reviewed by: David Schleef  <ds@schleef.org>
9600
9601         Fix memory leaks:
9602         * gst/gstcaps.c: (gst_caps_to_string):
9603         * gst/registries/gstxmlregistry.c:
9604         (gst_xml_registry_add_path_list_func),
9605         (gst_xml_registry_parse_padtemplate):
9606
9607 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9608
9609         * gst/gstelement.c: (gst_element_default_error):
9610           suffix error messages with period
9611
9612 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9613
9614         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9615         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9616         * gst/gsterror.c: (gst_error_get_message):
9617           Suffix with dots
9618         * po/fr.po:
9619         * po/nl.po:
9620           Update translation files
9621
9622 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9623
9624         * gst/autoplug/gstspideridentity.c:
9625         (gst_spider_identity_sink_loop_type_finding):
9626         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9627         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9628         (gst_filesink_close_file), (gst_filesink_handle_event),
9629         (gst_filesink_chain):
9630         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9631         (gst_filesrc_get_read), (gst_filesrc_open_file):
9632         * gst/elements/gstidentity.c: (gst_identity_chain):
9633         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9634         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9635         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9636         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9637         * gst/gsterror.c: (_gst_core_errors_init),
9638         (_gst_library_errors_init), (_gst_resource_errors_init),
9639         (_gst_stream_errors_init), (gst_error_get_message):
9640         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9641         (gst_pad_recover_caps_error), (gst_pad_pull):
9642         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9643         * gst/schedulers/gstbasicscheduler.c:
9644         (gst_basic_scheduler_chainhandler_proxy),
9645         (gst_basic_scheduler_gethandler_proxy),
9646         (gst_basic_scheduler_cothreaded_chain):
9647           Suffix error messages with period.
9648           Use (NULL) instead of NULL
9649
9650 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
9651
9652         * docs/gst/tmpl/gstelement.sgml:
9653         * docs/gst/tmpl/gstxml.sgml:
9654         * gst/gstelement.c: (gst_element_error_full):
9655           add element path to error
9656
9657 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9658
9659         * docs/random/mimetypes:
9660           update raw int/float info
9661         * gst/gsttag.c: (_gst_tag_initialize):
9662         * gst/gsttag.h:
9663           add GST_TAG_ENCODER
9664
9665 2004-01-30  David Schleef  <ds@schleef.org>
9666
9667         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
9668           missing (#132991)
9669
9670 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
9671
9672         reviewed by Benjamin Otte 
9673           parts of the patch submitted in bug #113913
9674
9675         * configure.ac:
9676           use AC_C_INLINE. Use = instead of == with test
9677         * examples/plugins/example.c:
9678         * gst/autoplug/gstspideridentity.c:
9679         * gst/elements/gstfdsrc.c:
9680         * gst/elements/gstfilesrc.c:
9681         * gst/elements/gstidentity.c:
9682         * gst/elements/gstmultidisksrc.c:
9683         * gst/elements/gststatistics.c:
9684         * gst/gstelement.c:
9685         * gst/gstobject.c:
9686         * gst/gstpad.c:
9687         * gst/gstpipeline.c:
9688         * gst/gstthread.c:
9689           don't end enums with a comma
9690         * gst/gstindex.c: (gst_index_compare_func):
9691           do explicit casting to gint
9692         * gst/gsttrace.c: (gst_trace_text_flush):
9693           #define strsize as a macro
9694
9695 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
9696
9697         * docs/README:
9698         * docs/gst/gstreamer-docs.sgml:
9699         * docs/gst/gstreamer-sections.txt:
9700         * docs/gst/tmpl/gstelement.sgml:
9701         * docs/gst/tmpl/gsterror.sgml:
9702         * docs/gst/tmpl/gstinterface.sgml:
9703         * docs/gst/tmpl/gstreamer-unused.sgml:
9704         * docs/gst/tmpl/gststructure.sgml:
9705         * docs/gst/tmpl/gsttag.sgml:
9706         * docs/gst/tmpl/gsttaginterface.sgml:
9707         * docs/gst/tmpl/gstvalue.sgml:
9708         make sure all API ends up in the built docs
9709         * gst/gstinterface.c:
9710         * gst/gststructure.c: (gst_structure_id_set_value),
9711         (gst_structure_set_value), (gst_structure_id_get_value):
9712         * gst/gststructure.h:
9713         * gst/gstvalue.h:
9714         sync .h with .c declarations
9715
9716 2004-01-30  Julien Moutte  <julien@moutte.net>
9717
9718         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
9719         Ronald will fix riffread.
9720
9721 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9722
9723         * docs/pwg/advanced-interfaces.xml:
9724           Added tuner interface docs.
9725
9726 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9727
9728         * docs/random/mimetypes:
9729           correct Theora information
9730         * gst/gstelement.h:
9731           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
9732
9733 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9734
9735         * gst/gstelement.c: (gst_element_error_full):
9736         * gst/gstelement.h:
9737           GST_ELEMENT_ERROR in enum -> _IN_ERROR
9738
9739 2004-01-29  Julien MOUTTE  <julien@moutte.net>
9740
9741         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
9742         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
9743         again and even before DISCONT.
9744         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
9745         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
9746         bytestream so that it's not stopping to fill the bytestream if events
9747         different than EOS or DISCONT are received. Instead it process them so
9748         that they go downstream.
9749
9750 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9751
9752         * docs/gst/tmpl/gstelement.sgml:
9753         * docs/gst/tmpl/gstreamer-unused.sgml:
9754         * docs/gst/tmpl/gstxml.sgml:
9755         * gst/autoplug/gstspideridentity.c:
9756         (gst_spider_identity_sink_loop_type_finding):
9757         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
9758         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
9759         (gst_filesink_close_file), (gst_filesink_handle_event),
9760         (gst_filesink_chain):
9761         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
9762         (gst_filesrc_get_read), (gst_filesrc_open_file):
9763         * gst/elements/gstidentity.c: (gst_identity_chain):
9764         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
9765         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
9766         (gst_pipefilter_chain), (gst_pipefilter_open_file):
9767         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
9768         * gst/gstelement.h:
9769         * gst/gstpad.c: (gst_pad_set_explicit_caps),
9770         (gst_pad_recover_caps_error), (gst_pad_pull):
9771         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
9772         * gst/schedulers/gstbasicscheduler.c:
9773         (gst_basic_scheduler_chainhandler_proxy),
9774         (gst_basic_scheduler_gethandler_proxy),
9775         (gst_basic_scheduler_cothreaded_chain):
9776           gst_element_error -> GST_ELEMENT_ERROR
9777
9778 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
9779
9780         * docs/Makefile.am:
9781         * docs/gst/tmpl/gstelement.sgml:
9782         * docs/gst/tmpl/gstxml.sgml:
9783         * docs/manuals.mak:
9784         * docs/pwg/advanced-request.xml:
9785         * docs/pwg/advanced-scheduling.xml:
9786         * docs/pwg/advanced-tagging.xml:
9787           fix non-validating docbook using CDATA
9788           make sure make check-local gets run first to check if it validates
9789
9790 2004-01-29  Julien MOUTTE <julien@moutte.net>
9791
9792         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
9793         handling (up and downstream).
9794         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
9795         my_filter thing.
9796
9797 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9798
9799         * docs/pwg/advanced-tagging.xml:
9800           Add docs about tag writing.
9801
9802 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9803
9804         * docs/pwg/advanced-tagging.xml:
9805           Add a part about tag reading and application signalling... Tag
9806           writing still needs to be documented.
9807         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
9808           We can set file locations in READY, too.
9809
9810 2004-01-29  Julien MOUTTE <julien@moutte.net>
9811
9812         * docs/random/ds/element-checklist: Adding some notes about src
9813         events.
9814
9815 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9816
9817         * docs/random/mimetypes:
9818           Update docs to point to correct elements for various mimetypes, and
9819           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
9820           <stephane.loeuillet@tiscali.fr>.
9821
9822 2004-01-28  David Schleef  <ds@schleef.org>
9823
9824         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
9825
9826 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9827
9828         * docs/random/mimetypes:
9829           update docs for audio/x-raw-float. Add "buffer-frames=0 means
9830           undefined"
9831         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
9832           make it only work in NULL.
9833         * gst/gstcaps.c:
9834           don't posion NULL caps
9835         * gst/gstelement.c: (gst_element_set_time):
9836           add debugging statement
9837         * gst/gstelement.c: (gst_element_emit_found_tag),
9838         (gst_element_found_tag_func), (gst_element_found_tags):
9839         * gst/gstelement.h:
9840           These functions take const taglists
9841         * gst/gstpad.c: (gst_pad_proxy_getcaps):
9842           fix memleak
9843         * gst/gstpad.c: (gst_pad_event_default):
9844           make more effort on handling discont and clocks, g_warn if everything
9845           fails
9846         * gst/gststructure.c: (gst_structure_remove_fields),
9847         (gst_structure_remove_fields_valist):
9848         * gst/gststructure.h:
9849           add gst_structure_remove_fields(_valist)
9850         * gst/gsttag.c:
9851           fix doc glitch
9852
9853 2004-01-28  David Schleef  <ds@schleef.org>
9854
9855         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
9856         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
9857         Fix memory leakage of gst_caps_to_string().
9858
9859         Use GST_PTR_FORMAT instead of gst_caps_to_string():
9860         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
9861         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
9862         (gst_spider_identity_sink_loop_type_finding):
9863         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9864         (find_suggest):
9865         * gst/gstpad.c: (gst_pad_try_relink_filtered),
9866         (gst_pad_set_explicit_caps):
9867         * gst/parse/grammar.y:
9868
9869 2004-01-28  David Schleef  <ds@schleef.org>
9870
9871         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
9872         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
9873         * docs/random/ds/0.9-suggested-changes: Notes from Company.
9874         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
9875         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
9876         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
9877         (gst_debug_log_default), (_gst_info_printf_extension),
9878         (_gst_info_printf_extension_arginfo):  Add printf extension.
9879         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
9880         * gst/gststructure.c: (gst_structure_to_string),
9881         (_gst_structure_parse_value): Use gst_value_deserialize() and
9882         remove old code.
9883         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
9884         (gst_value_deserialize_boolean), (gst_strtoi),
9885         (gst_value_deserialize_int), (gst_value_deserialize_double),
9886         (gst_value_deserialize_string), (gst_value_deserialize): Implement
9887         a bunch of deserialize functions and gst_value_deserialize.
9888         * gst/gstvalue.h: er, _de_serialize, not unserialize
9889         * testsuite/caps/string-conversions.c: (main): We don't currently
9890         handle (float) in caps, so convert these to (double).
9891         * testsuite/debug/Makefile.am: Add new test for the printf extension
9892         * testsuite/debug/printf_extension.c: (main): same
9893
9894 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9895
9896         * docs/random/company/time:
9897           Add some docs about clocking and time
9898
9899 2004-01-28  Julien MOUTTE <julien@moutte.net>
9900
9901         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
9902
9903 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9904
9905         * docs/pwg/advanced-clock.xml:
9906         * docs/pwg/advanced-dparams.xml:
9907         * docs/pwg/advanced-events.xml:
9908         * docs/pwg/advanced-interfaces.xml:
9909         * docs/pwg/advanced-midi.xml:
9910         * docs/pwg/advanced-request.xml:
9911         * docs/pwg/advanced-scheduling.xml:
9912         * docs/pwg/advanced-tagging.xml:
9913         * docs/pwg/advanced-types.xml:
9914         * docs/pwg/appendix-checklist.xml:
9915         * docs/pwg/building-boiler.xml:
9916         * docs/pwg/building-chainfn.xml:
9917         * docs/pwg/building-filterfactory.xml:
9918         * docs/pwg/building-pads.xml:
9919         * docs/pwg/building-props.xml:
9920         * docs/pwg/building-signals.xml:
9921         * docs/pwg/building-state.xml:
9922         * docs/pwg/building-testapp.xml:
9923         * docs/pwg/intro-basics.xml:
9924         * docs/pwg/intro-preface.xml:
9925         * docs/pwg/other-autoplugger.xml:
9926         * docs/pwg/other-sink.xml:
9927         * docs/pwg/other-source.xml:
9928         * docs/pwg/titlepage.xml:
9929           fix up id's
9930
9931 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9932
9933         * docs/95NonPath:
9934         * docs/HACKING:
9935         * docs/README:
9936         * docs/building-the-docs-on-debian:
9937           collect relevant bits of doc info
9938
9939 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9940
9941         * docs/pwg/advanced_tagging.xml:
9942           Half-assed commit so Thomas can re-arrange document IDs here to be
9943           consistent, too.
9944
9945 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9946
9947         * docs/manual/autoplugging.xml:
9948         * docs/manual/bins-api.xml:
9949         * docs/manual/bins.xml:
9950         * docs/manual/buffers-api.xml:
9951         * docs/manual/buffers.xml:
9952         * docs/manual/clocks.xml:
9953         * docs/manual/components.xml:
9954         * docs/manual/cothreads.xml:
9955         * docs/manual/debugging.xml:
9956         * docs/manual/dparams-app.xml:
9957         * docs/manual/dynamic.xml:
9958         * docs/manual/elements-api.xml:
9959         * docs/manual/elements.xml:
9960         * docs/manual/factories.xml:
9961         * docs/manual/gnome.xml:
9962         * docs/manual/goals.xml:
9963         * docs/manual/helloworld.xml:
9964         * docs/manual/helloworld2.xml:
9965         * docs/manual/init-api.xml:
9966         * docs/manual/intro.xml:
9967         * docs/manual/links-api.xml:
9968         * docs/manual/links.xml:
9969         * docs/manual/manual.xml:
9970         * docs/manual/motivation.xml:
9971         * docs/manual/pads-api.xml:
9972         * docs/manual/pads.xml:
9973         * docs/manual/plugins-api.xml:
9974         * docs/manual/plugins.xml:
9975         * docs/manual/programs.xml:
9976         * docs/manual/queues.xml:
9977         * docs/manual/quotes.xml:
9978         * docs/manual/schedulers.xml:
9979         * docs/manual/states-api.xml:
9980         * docs/manual/states.xml:
9981         * docs/manual/threads.xml:
9982         * docs/manual/typedetection.xml:
9983         * docs/manual/xml.xml:
9984           use chapter, part, section or misc as id starts for all bits
9985
9986 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
9987
9988         * docs/gst/gstreamer-sections.txt:
9989           Fix up TITLE of the sections
9990
9991 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9992
9993         * docs/pwg/advanced_interfaces.xml:
9994           Add documentation on propertyprobing.
9995         * docs/pwg/advanced_events.xml:
9996         * docs/pwg/advanced_tagging.xml:
9997         * docs/pwg/building_boiler.xml:
9998         * docs/pwg/building_filterfactory.xml:
9999         * docs/pwg/pwg.xml:
10000           Move filterfactory and tagging into their own chapter, add a chapter
10001           on events. all these are empty placeholders that will be filled in
10002           some day.
10003
10004 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10005
10006         * docs/pwg/advanced_interfaces.xml:
10007           Docs for mixer interface. Also a check for website uploading.
10008
10009 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10010
10011         * docs/HACKING:
10012         * docs/Makefile.am:
10013         * docs/faq/Makefile.am:
10014         * docs/gst/Makefile.am:
10015         * docs/gst/tmpl/gstelement.sgml:
10016         * docs/gst/tmpl/gstplugin.sgml:
10017         * docs/gst/tmpl/gstreamer-unused.sgml:
10018         * docs/libs/Makefile.am:
10019         * docs/manual/Makefile.am:
10020         * docs/manuals.mak:
10021         * docs/pwg/Makefile.am:
10022         * docs/upload.mak:
10023           Separate out upload target and make it similar for
10024           both docbook and gtk-doc docs
10025
10026 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10027
10028         * docs/manuals.mak:
10029           Fix upload target to work with freedesktop
10030
10031 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10032
10033         * docs/pwg/advanced_types.xml:
10034           Add notes on creating your own types.
10035         * docs/pwg/building_boiler.xml:
10036         * docs/pwg/building_pads.xml:
10037         * docs/pwg/building_state.xml:
10038           Add some stuff about how to retrieve values from structures, how
10039           that relates to types and change layout slightly again to be almost
10040           perfect.
10041
10042 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10043
10044         * docs/pwg/advanced_dparams.xml:
10045         * docs/pwg/advanced_scheduling.xml:
10046           Change index layout slightly.
10047
10048 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10049
10050         * docs/pwg/advanced_clock.xml:
10051         * docs/pwg/advanced_interfaces.xml:
10052         * docs/pwg/advanced_midi.xml:
10053           General placeholders for now.
10054         * docs/pwg/advanced_request.xml:
10055           Explanation about sometimes and request pads.
10056         * docs/pwg/advanced_scheduling.xml:
10057           Concept of bytestream, loopfunctions and schedulers.
10058         * docs/pwg/building_boiler.xml:
10059           Add something about plugin-init.
10060
10061 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10062
10063         * docs/pwg/building_pads.xml:
10064           Fix broken docbook
10065
10066 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10067
10068         * docs/pwg/advanced_interfaces.xml:
10069         * docs/pwg/pwg.xml:
10070           Add as a placeholder for future filling-in.
10071         * docs/pwg/basics_autoplugging.xml:
10072         * docs/pwg/basics_buffers.xml:
10073         * docs/pwg/basics_elements.xml:
10074         * docs/pwg/basics_events.xml:
10075         * docs/pwg/basics_plugins.xml:
10076         * docs/pwg/basics_types.xml:
10077           Remove, because unused (this is all in intro_basics.xml).
10078         * docs/pwg/building_signals.xml:
10079           Short intro to signals + reference to GObject docs - we really
10080           shouldn't go into these sort of things to deply because we don't
10081           use them that extensively anyway.
10082         * docs/pwg/building_state.xml:
10083           Explanation of states. Benjamin, please check.
10084         * docs/pwg/building_testapp.xml:
10085           Put everything in one page - putting only a few lines of content
10086           per page doesn't really make sense.
10087
10088           Time to get into the advanced topics. ;).
10089
10090 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10091
10092         * docs/pwg/advanced_types.xml:
10093           Finish documenting the current state of mimetypes.
10094         * docs/pwg/building_boiler.xml:
10095         * docs/pwg/building_chainfn.xml:
10096         * docs/pwg/building_pads.xml:
10097         * docs/pwg/building_props.xml:
10098         * docs/pwg/building_testapp.xml:
10099           Start documenting the "how to build a simple audio filter" part
10100           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10101           states and (maybe?) a short introduction to capsnego in the chapter
10102           on pads (building_pads.xml). Capsnego should probably be explained
10103           fully in advanced_capsnego.xml or so.
10104
10105 2004-01-26  David Schleef  <ds@schleef.org>
10106
10107         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10108         * gst/gstpad.h: Add new function to allow element to (somewhat)
10109         specify non-fixed caps on a pad.
10110         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10111         that I added a few weeks ago.
10112
10113 2004-01-26  David Schleef  <ds@schleef.org>
10114
10115         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10116           making try_set_caps() work with non-fixed caps.
10117
10118 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10119
10120         * docs/pwg/advanced_types.xml:
10121         * docs/pwg/intro_basics.xml:
10122         * docs/pwg/intro_preface.xml:
10123         * docs/pwg/pwg.xml:
10124         * docs/pwg/titlepage.xml:
10125           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10126           in here (docs/random/mimetypes), and will from there on work on both
10127           updating outdated parts and adding missing parts.
10128           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10129
10130 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10131
10132         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10133           policy is set
10134
10135 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10136
10137         * gst/gstelement.h:
10138           remove gst_element_factory_get_version. It doesn't exist anymore.
10139         * gst/gstplugin.c:
10140         * gst/gstplugin.h:
10141           remove gst_plugin_set_name and change gst_plugin_get_longname to
10142           gst_plugin_get_description to match code.
10143         * gst/gsterror.h:
10144           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10145         * gst/gstpad.c: (gst_pad_try_set_caps):
10146           make it work with nonfixed caps.
10147           Note that even in the nonfixed case the link function of the pad
10148           that tries to set caps isn't called.
10149
10150 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10151
10152         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10153           fix bug where buffer was not assembled correctly
10154         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10155           silence by default
10156         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10157           only seek if there's no more buffers that could work without seeking
10158
10159 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10160
10161         * gst/gsttag.c: (_gst_tag_initialize):
10162         * gst/gsttag.h:
10163           Add application tag (for encoding/muxing app).
10164
10165 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10166
10167         * autogen.sh:
10168           make autopoint force, and libtoolize not copy
10169         * common/m4/as-docbook.m4:
10170           added docbook xml catalog setup check
10171         * common/m4/gst-doc.m4:
10172           use docbook check
10173
10174 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10175
10176         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10177         * gst/gsttag.h:
10178           add GstTagFlag
10179
10180 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10181
10182         * docs/gst/gstreamer-sections.txt:
10183         * docs/gst/tmpl/gst.sgml:
10184         * docs/gst/tmpl/gstbuffer.sgml:
10185         * docs/gst/tmpl/gstclock.sgml:
10186         * docs/gst/tmpl/gstelement.sgml:
10187         * docs/gst/tmpl/gstreamer-unused.sgml:
10188         * docs/gst/tmpl/gstxml.sgml:
10189           sync latest API changes to docs
10190
10191 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10192
10193         * gst/gstpluginfeature.c:
10194           fix doc snippet
10195         * tools/gst-inspect.c: (print_element_list):
10196           fix output of typefind
10197           add GPL header
10198         * tools/gst-launch.c:
10199           add GPL header
10200
10201 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10202
10203         * gst/elements/Makefile.am:
10204         * gst/elements/gstelements.c:
10205         * gst/elements/gsttypefindelement.c:
10206         * gst/elements/gsttypefindelement.h:
10207         * po/POTFILES.in:
10208         * po/fr.po:
10209         * po/nl.po:
10210           renamed gsttypefindelement to gsttypefind, conserving CVS history
10211
10212 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10213
10214         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10215         * gst/gsttag.h:
10216           add some tags used in ogg as well
10217           fix _ in replaygain tags
10218
10219 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10220
10221         * gst/gsterror.h:
10222           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10223
10224 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10225
10226         * gst/gstelement.c: (gst_element_error_full):
10227         * gst/gstelement.h:
10228           change _extended to _full
10229
10230 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10231
10232         reviewed by: <delete if not using a buddy>
10233
10234         * docs/gst/tmpl/gst.sgml:
10235         * docs/gst/tmpl/gstbuffer.sgml:
10236         * docs/gst/tmpl/gstclock.sgml:
10237         * docs/gst/tmpl/gstelement.sgml:
10238         * docs/gst/tmpl/gstreamer-unused.sgml:
10239         * docs/gst/tmpl/gstxml.sgml:
10240         * gst/gstelement.c: (gst_element_error_full):
10241         * gst/gstelement.h:
10242
10243 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10244
10245         * gst/gstelement.h: fix _gst_element_error_printf prototype
10246
10247 2004-01-20  David Schleef  <ds@schleef.org>
10248
10249         * gst/gststructure.c: (gst_structure_to_string):
10250         Convert function to use gst_value_serialize().
10251         * gst/gstvalue.c: (gst_value_serialize_list),
10252         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10253         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10254         (gst_value_serialize_int), (gst_value_serialize_double),
10255         (gst_string_wrap), (gst_value_serialize_string),
10256         (gst_value_serialize), (gst_value_deserialize):
10257         * gst/gstvalue.h:
10258         Add implementations for serialize.
10259
10260 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10261
10262         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10263         we want to keep that one in the future or change xvidenc.c to use 
10264         another error.
10265
10266 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10267
10268         * gst/gstelement.c: (_gst_element_error_printf):
10269         * gst/gstelement.h:
10270           privatise function
10271
10272 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10273
10274         * docs/random/error:
10275           doc explaining error system
10276         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10277           cleanup
10278
10279 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10280
10281         * gst/gst-i18n-app.h:
10282         * gst/gst-i18n-lib.h:
10283           remove inclusion of config.h
10284         * po/POTFILES.in:
10285         * po/nl.po:
10286           add gst/gstelement.c
10287
10288 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10289
10290         * po/nl.po: updated Dutch translation
10291
10292 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10293
10294         * gst/gsterror.c: (_gst_core_errors_init),
10295         (_gst_library_errors_init), (_gst_resource_errors_init),
10296         (_gst_stream_errors_init):
10297         remove ending punctuation dots
10298
10299 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10300
10301         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10302         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
10303         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10304         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10305         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10306         use GST_ERROR_SYSTEM
10307
10308 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10309
10310         * gst/gstelement.c: (gst_element_error_printf),
10311         (gst_element_error_extended):
10312         * gst/gstelement.h:
10313           add a helper printf function so we can have NULL values passed.
10314
10315 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10316
10317         * gst/gstelement.h:
10318           add G_STMT macros to gst_element_error, which isn't strictly
10319           necessary but people tell me to anyway.
10320
10321 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10322
10323         * gst/Makefile.am:
10324         * gst/autoplug/gstspideridentity.c:
10325         (gst_spider_identity_sink_loop_type_finding):
10326         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10327         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10328         (gst_filesink_close_file), (gst_filesink_handle_event),
10329         (gst_filesink_chain):
10330         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
10331         (gst_filesrc_map_region), (gst_filesrc_get_read),
10332         (gst_filesrc_open_file):
10333         * gst/elements/gstidentity.c: (gst_identity_chain):
10334         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10335         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10336         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10337         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
10338         * gst/gst.h:
10339         * gst/gst_private.h:
10340         * gst/gstelement.c: (gst_element_class_init),
10341         (gst_element_default_error), (gst_element_error_func),
10342         (gst_element_error_extended):
10343         * gst/gstelement.h:
10344         * gst/gsterror.c: (_gst_core_errors_init),
10345         (_gst_library_errors_init), (_gst_resource_errors_init),
10346         (_gst_stream_errors_init), (gst_error_get_message):
10347         * gst/gsterror.h:
10348         * gst/gstinfo.c: (_gst_debug_init):
10349         * gst/gstmarshal.list:
10350         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10351         (gst_pad_recover_caps_error), (gst_pad_pull):
10352         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10353         * gst/schedulers/gstbasicscheduler.c:
10354         (gst_basic_scheduler_chainhandler_proxy),
10355         (gst_basic_scheduler_gethandler_proxy),
10356         (gst_basic_scheduler_cothreaded_chain):
10357         * po/POTFILES.in:
10358         * po/fr.po:
10359         * po/nl.po:
10360           change error signal
10361           add error categories
10362
10363 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
10364
10365         * gst/gsttag.c: (_gst_tag_initialize):
10366         * gst/gsttag.h:
10367         Add replaygain tag
10368
10369 2004-01-18  Colin Walters  <walters@verbum.org>
10370
10371         * examples/retag/retag.c: Call gst_init before processing
10372         program args.  Add g_assert to _link_many call.
10373
10374 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10375
10376         * gst/gstpad.c: (gst_pad_alloc_buffer):
10377           Return a newly allocated buffer when the pad has no peer.
10378
10379 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10380
10381         * gst/gstclock.c: (gst_clock_get_time):
10382           make it compile with gcc 2.95 again.
10383           Patch by Scott Wheeler
10384
10385 2004-01-15  David Schleef  <ds@schleef.org>
10386
10387         * gst/gstcaps.h:
10388         Added gst_caps_is_simple() macro.
10389         * testsuite/caps/caps.c: (test1):
10390         * testsuite/caps/intersect2.c: (main):
10391         * testsuite/caps/intersection.c: (main):
10392         Fixes to make 'make check' work again after removing
10393         gst_caps_is_chained().
10394
10395 2004-01-15  Leif Johnson <leif@ambient.2y.net>
10396
10397         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
10398         and additions to the MIDI document.
10399
10400 2004-01-15  David Schleef  <ds@schleef.org>
10401
10402         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
10403         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
10404         of GST_RPAD_, since we don't know if it's a real or ghost pad.
10405
10406 2004-01-15  David Schleef  <ds@schleef.org>
10407
10408         * gst/gstqueue.c:
10409         * gst/gstqueue.h:
10410         Fix the spelling of "treshold" and make min_threshold actually
10411         affect the queue.
10412
10413 2004-01-15  David Schleef  <ds@schleef.org>
10414
10415         * gst/gstcaps.c:
10416         Add lots of documentation.
10417         * gst/gstcaps.h:
10418         Deprecate a few functions.
10419         * gst/gstpad.c:
10420         Removed use of deprecated functions.
10421
10422 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10423
10424         * gst/gstpad.c: (gst_pad_is_linked):
10425         * gst/gstpad.h:
10426           implement gst_pad_is_linked
10427         * gst/gstelement.h:
10428           reserve space for initiate_state_change
10429
10430 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10431
10432         * gst/autoplug/gstspideridentity.c:
10433         (gst_spider_identity_sink_loop_type_finding):
10434           break infinite loop by just returning instead of looping
10435         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
10436           set event time difference correctly. Set it to 1 second instead
10437           of 100ms to be more tolerant
10438         * gst/gstelement.c: (gst_element_set_time):
10439           add debugging output
10440
10441 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10442
10443         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
10444           query if buffers are inside the pool, ignore events
10445
10446 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10447
10448         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
10449         (gst_clock_set_speed), (gst_clock_set_active),
10450         (gst_clock_is_active), (gst_clock_reset),
10451         (gst_clock_handle_discont):
10452         * gst/gstclock.h:
10453           deprecate old interface and disable functions that aren't in use
10454           anymore.
10455         * gst/gstelement.h:
10456         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
10457         (gst_element_set_time), (gst_element_adjust_time):
10458           add concept of "element time" and functions to get/set this time.
10459         * gst/gstelement.c: (gst_element_change_state):
10460           update element time correctly.
10461         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10462           This is a debug message, not a g_critical.
10463         * gst/gstpad.c: (gst_pad_event_default):
10464           handle discontinuous events right with element time.
10465         * gst/gstscheduler.c: (gst_scheduler_state_transition):
10466           update to clocking fixes.
10467           set clocks on elements in READY=>PAUSED. The old behaviour caused
10468           a wrong element time on the first element that started playing.
10469         * gst/schedulers/gstbasicscheduler.c:
10470         (gst_basic_scheduler_class_init):
10471         * gst/schedulers/gstoptimalscheduler.c:
10472         (gst_opt_scheduler_class_init):
10473           remove code that just implements the default behaviour.
10474         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
10475           update to use new clocking functions
10476         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
10477         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
10478           update to test new element time.
10479         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
10480           use _get_allowed_caps instead of _get_caps. This catches filtered
10481           caps correctly.
10482         * testsuite/debug/commandline.c:
10483           update for new GST_DEBUG syntax.
10484         * testsuite/threads/Makefile.am:
10485           disable a test that only works sometimes.
10486
10487 2004-01-13  Julien MOUTTE <julien@moutte.net>
10488
10489         * po/LINGUAS: Adding fr.
10490         * po/fr.po: Adding french translation.
10491
10492 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10493
10494         * gst/parse/grammar.y:
10495         * po/POTFILES.in:
10496         * po/nl.po:
10497         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
10498           translate parsing error messages
10499
10500 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10501
10502         * po/POTFILES.in: adding gst-launch
10503         * po/nl.po: updated translation, all 99 strings translated
10504         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
10505         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
10506           fix strings for translation
10507
10508 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10509
10510         * gst/gst.c:
10511           - capitalize beginnings of popt options
10512           - fix strings for translation
10513           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
10514
10515 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10516
10517         * po/README: add some notes on how to update translations
10518
10519 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10520
10521         * ABOUT-NLS: removed, is autogenerated from autopoint
10522         * autogen.sh: add autopoint stuff
10523         * configure.ac: fix up gettext stuff
10524         * gst/Makefile.am: add i18n headers to noinst_HEADERS
10525         * gst/elements/gsttypefindelement.c: add header include
10526         * gst/gettext.h: add header, copy from system-installed header
10527         * gst/gst-i18n-app.h: to be included by each app having translations
10528         * gst/gst-i18n-lib.h: to be included by each lib having translations
10529         * gst/gst.c: (init_pre): fix up gettext calls
10530         * gst/gst_private.h: remove i18n stuff, moving to separate headers
10531         * po/LINGUAS: the new way to specify translations present
10532         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
10533         * po/Makevars: the variables filled in for GStreamer
10534         * po/POTFILES.in: added new files with translations
10535         * po/de.po: has new strings
10536         * po/nl.po: readded, has new strings
10537
10538 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10539
10540         * gst/gsttag.c: fix some strings marked for translation
10541
10542 2004-01-13  Iain <iain@prettypeople.org>
10543
10544         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
10545         group when we add an element to it, cos we unref it when we remove one
10546
10547 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10548
10549         * testsuite/debug/commandline.c: (debug_not_reached):
10550         * testsuite/debug/output.c: (check_message):
10551           fix testsuite
10552
10553 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10554
10555         * examples/cutter/.cvsignore:
10556         * examples/helloworld/.cvsignore:
10557         * examples/launch/.cvsignore:
10558         * examples/manual/.cvsignore:
10559         * examples/mixer/.cvsignore:
10560         * examples/pingpong/.cvsignore:
10561         * examples/plugins/.cvsignore:
10562         * examples/queue/.cvsignore:
10563         * examples/queue2/.cvsignore:
10564         * examples/queue3/.cvsignore:
10565         * examples/queue4/.cvsignore:
10566         * examples/retag/.cvsignore:
10567         * examples/thread/.cvsignore:
10568         * examples/typefind/.cvsignore:
10569         * examples/xml/.cvsignore:
10570         * gst/.cvsignore:
10571         * gst/autoplug/.cvsignore:
10572         * gst/elements/.cvsignore:
10573         * gst/indexers/.cvsignore:
10574         * gst/parse/.cvsignore:
10575         * gst/registries/.cvsignore:
10576         * gst/schedulers/.cvsignore:
10577         * libs/gst/bytestream/.cvsignore:
10578         * libs/gst/control/.cvsignore:
10579         * libs/gst/getbits/.cvsignore:
10580         * tests/.cvsignore:
10581         * tests/bufspeed/.cvsignore:
10582         * tests/instantiate/.cvsignore:
10583         * tests/memchunk/.cvsignore:
10584         * tests/muxing/.cvsignore:
10585         * tests/sched/.cvsignore:
10586         * tests/seeking/.cvsignore:
10587         * tests/threadstate/.cvsignore:
10588         * testsuite/.cvsignore:
10589         * testsuite/caps/.cvsignore:
10590         * testsuite/cleanup/.cvsignore:
10591         * testsuite/dynparams/.cvsignore:
10592         * testsuite/plugin/.cvsignore:
10593         * tools/.cvsignore:
10594           update - this is huge, because it includes *.bb, *.bbg and *.da files
10595           which are generated for gcov.
10596
10597 2004-01-11  David Schleef  <ds@schleef.org>
10598
10599         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
10600         a function to parse integers in ways that strto[u]l() does not.
10601
10602 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10603
10604         * tools/gst-inspect.c: (print_caps):
10605           improve output of caps a bit
10606
10607 2004-01-11  David Schleef  <ds@schleef.org>
10608
10609         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
10610         inherit correct flags (READONLY and DONTKEEP).
10611
10612 2004-01-11  David Schleef  <ds@schleef.org>
10613
10614         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
10615         (gst_filesrc_map_region):
10616         * gst/gstbuffer.c: (_gst_buffer_initialize),
10617         (_gst_buffer_sub_free), (gst_buffer_default_copy),
10618         (gst_buffer_new), (gst_buffer_create_sub),
10619         (gst_buffer_is_span_fast), (gst_buffer_span):
10620         * gst/gstbuffer.h:
10621         Change GstBuffer private structure element names. (all files)
10622         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
10623         (gst_queue_link):
10624         * gst/gstqueue.h:
10625         Implement getcaps/pad_link functions that handle the case where
10626         there are data in the queue.
10627
10628 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10629
10630         * gst/elements/gstbufferstore.c:
10631           initialize debugging structure correctly
10632         * gst/elements/gsttee.c: (gst_tee_set_property):
10633           g_object_notify when property was changed
10634         * gst/elements/gsttypefindelement.c:
10635         (gst_type_find_element_change_state):
10636           clear caps correctly
10637
10638 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10639
10640         * gst/gstqueue.c: (gst_queue_init):
10641           Use better defaults for when a queue should block. This
10642           gets rid of jerky playback for quite a few files.
10643           It takes more memory.
10644
10645 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10646
10647         (gst_xml_registry_parse_padtemplate):
10648           make critical message slightly more useful
10649
10650 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10651
10652         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
10653         (gst_debug_message_get), (gst_debug_log_default):
10654         * gst/gstinfo.h:
10655           Change gst_debug_log(_valist) to take a const format string.
10656           Change prototype of log function and functions using those to 
10657           take a GstDebugMessage instead of a string that requires using
10658           gst_debug_message_get.
10659
10660 2004-01-08  David Schleef  <ds@schleef.org>
10661
10662         * Makefile.am:
10663         * configure.ac:
10664         Add option --enable-gcov to build GStreamer with -fprofile-arcs
10665         and -ftest-coverage, which allows gcov to show information about
10666         testsuite coverage.
10667
10668 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10669
10670         * gst/gstutils.h:
10671           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
10672           GST_PARENT_CALL_WITH_DEFAULT
10673         * gst/elements/gstaggregator.c: 
10674         * gst/elements/gstbufferstore.c: 
10675         * gst/elements/gstfakesink.c: 
10676         * gst/elements/gstfakesrc.c: 
10677         * gst/elements/gstfdsink.c: 
10678         * gst/elements/gstfdsrc.c: 
10679         * gst/elements/gstfilesink.c: 
10680         * gst/elements/gstfilesrc.c: 
10681         * gst/elements/gstidentity.c: 
10682         * gst/elements/gstmd5sink.c: 
10683         * gst/elements/gstmultidisksrc.c:
10684         * gst/elements/gstpipefilter.c: 
10685         * gst/elements/gstshaper.c:
10686         * gst/elements/gststatistics.c:
10687         * gst/elements/gsttee.c:
10688         * gst/elements/gsttypefindelement.c:
10689           use them.
10690
10691 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
10692
10693         * docs/gst/gstreamer-docs.sgml: remove props
10694         * docs/gst/gstreamer-sections.txt: remove props
10695         * docs/gst/tmpl/gst.sgml:
10696         * docs/gst/tmpl/gstbin.sgml:
10697         * docs/gst/tmpl/gstbuffer.sgml:
10698         * docs/gst/tmpl/gstcaps.sgml:
10699         * docs/gst/tmpl/gstclock.sgml:
10700         * docs/gst/tmpl/gstelement.sgml:
10701         * docs/gst/tmpl/gstindex.sgml:
10702         * docs/gst/tmpl/gstobject.sgml:
10703         * docs/gst/tmpl/gstpad.sgml:
10704         * docs/gst/tmpl/gstpadtemplate.sgml:
10705         * docs/gst/tmpl/gstreamer-unused.sgml:
10706         * docs/gst/tmpl/gstthread.sgml:
10707         * docs/gst/tmpl/gstxml.sgml:
10708           sync with code reorganization
10709
10710 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
10711
10712         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10713         Make the 'Could not find compatible pad' message more informative.
10714
10715 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10716                                                                                 
10717         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
10718           Fix for if we pass NULL as property to location.
10719         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
10720         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
10721           Fix for instantiate-test (see below).
10722         * gst/gststructure.c: (_gst_structure_parse_value):
10723           Fix compile error on gcc-2.96.
10724         * configure.ac:
10725         * tests/Makefile.am:
10726         * tests/instantiate/Makefile.am:
10727         * tests/instantiate/create.c: (create_all_elements), (main):
10728           Add a test that instantiates all elements. This makes it easy to
10729           track dead code for old API/design (like setting event functions
10730           on sink pads and so on).
10731
10732 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
10733
10734         * gst/gstcaps.c: (gst_caps_append_structure):
10735           Move the poisoning to allow a NULL structure
10736         * gst/gstevent.c: (_gst_event_free):
10737           When freeing a navigation event, free the structure
10738           also
10739
10740 2004-01-04  David Schleef  <ds@schleef.org>
10741
10742         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10743         Remove usage of gst_pad_proxy_fixate.
10744         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
10745         (gst_caps_split_one), (gst_caps_replace):
10746         Add poisoning code.
10747         * gst/gstmarshal.list:
10748         Add pointer__pointer for fixate signal
10749         * gst/gstpad.c: (gst_real_pad_class_init),
10750         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
10751         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
10752         (gst_pad_set_explicit_caps), (gst_pad_template_new):
10753         Add poisoning code. Add fixate signal on RealPad. Change
10754         set_explicit_caps() to take const GstCaps, like try_set_caps().
10755         * gst/gstpad.h:
10756         * testsuite/caps/Makefile.am:
10757         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
10758
10759 2004-01-03  David Schleef  <ds@schleef.org>
10760
10761         * gst/elements/gsttypefindelement.c:
10762         (gst_type_find_element_have_type), (gst_type_find_element_init):
10763         Use gst_pad_use_explicit_caps for src pad.
10764         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
10765         before using it.
10766
10767 2004-01-03  David Schleef  <ds@schleef.org>
10768
10769         * gst/gstelement.c: (gst_element_link_pads_filtered),
10770         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
10771         that linking was successful.
10772         * gst/gstpad.c: (gst_pad_link_free),
10773         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
10774         (gst_pad_link_try), (gst_pad_link_unnegotiate),
10775         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
10776         GstPadLinkReturn correctly between functions, and don't fail
10777         when DELAYED is used (DELAYED is very important).  Better
10778         cleanup on unlinking and unnegotiation.  Should fix some spider
10779         bugs.
10780
10781 2004-01-02  David Schleef  <ds@schleef.org>
10782
10783         * gst/gstelement.c: (gst_element_class_init),
10784         (gst_element_base_class_init): ->padtemplates should be cleared
10785         in base_init, since we need to have a fresh list for every
10786         class.  (Alternately, we chould copy the list and share the
10787         actual pad templates (not the list), but that would require
10788         changing every plugin to move pad template registration from
10789         base_init to class_init.)
10790
10791 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10792
10793         * gst/gstelement.c: (gst_element_class_add_pad_template):
10794           Refuse registering a pad template if another pad template
10795           with the same name already exists (#114715).
10796
10797 2004-01-02  David Schleef  <ds@schleef.org>
10798
10799         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
10800         (gst_caps_is_equal_fixed): Add new function.
10801         * gst/gstcaps.h: ditto.
10802         * gst/gstpad.c: (gst_real_pad_class_init),
10803         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
10804         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
10805         check new caps against existing caps -- if they're the same, return
10806         OK without renegotiating.  caps-nego-failed signal fixed so that
10807         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
10808         to save an extra caps copy.  Don't complete negotiation if a pad
10809         link function returns DELAYED.
10810
10811 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10812
10813         * gst/gstpad.c: (gst_pad_try_relink_filtered):
10814           Fix wrong g_return_if_fail
10815
10816 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
10817
10818         * gst/gstbin.c: (gst_bin_class_init):
10819         Change the marshalling of element_added/element_removed
10820         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
10821         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
10822
10823 2004-01-01  David Schleef  <ds@schleef.org>
10824
10825         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10826         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
10827         (gst_pad_use_explicit_caps):
10828         * gst/gstpad.h:
10829         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
10830         to use an internal getcaps and link fuction so that negotiation
10831         always results in the explicitly set caps.
10832         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
10833         are particularly useful for decoders.
10834
10835 2003-12-31  David Schleef  <ds@schleef.org>
10836
10837         * gst/elements/gstidentity.c: (gst_identity_class_init),
10838         (gst_identity_init), (gst_identity_chain),
10839         (gst_identity_set_property), (gst_identity_get_property):
10840         * gst/elements/gstidentity.h:
10841         * gst/gstqueue.c: (gst_queue_init):
10842           Negotiation fixes.
10843
10844 2003-12-31  David Schleef  <ds@schleef.org>
10845
10846         * gst/gstcaps.c: (gst_caps_intersect),
10847         (_gst_caps_normalize_foreach), (gst_caps_normalize):
10848           Implement gst_caps_normalize().
10849         * testsuite/caps/normalisation.c: (main):
10850           Add an additional test
10851
10852 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10853
10854         * gst/gstqueue.c: (gst_queue_init):
10855           use gst_pad_proxy_getcaps()
10856
10857 2003-12-31  David Schleef  <ds@schleef.org>
10858
10859         * gst/elements/gstshaper.c: (gst_shaper_link):
10860         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
10861         * gst/gstqueue.c: (gst_queue_link):
10862           Negotiation fixes.
10863
10864 2003-12-31  David Schleef  <ds@schleef.org>
10865
10866         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
10867         * gst/gstpad.h: Add functions that are useful as default pad
10868         link and fixate functions for elements.
10869
10870 2003-12-30  David Schleef  <ds@schleef.org>
10871
10872         * gst/gstpad.c: (gst_pad_link_try):
10873           Fix segfault when attempting to return to old caps
10874
10875 2003-12-29  David Schleef  <ds@schleef.org>
10876
10877         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
10878         (gst_caps_structure_simplify), (gst_caps_simplify):
10879         * gst/gstcaps.h:
10880           Add simplify function
10881         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
10882         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
10883         * gst/gstpad.h:
10884           Copy over srcnotify, sinknotify when calling old pad_link
10885           functions.  Add new is_negotiated() function.
10886         * gst/gststructure.c: (gst_structure_copy):
10887           Fix an incredibly stupid bug that should have been noticed
10888           weeks ago.  _copy() returned the argument, not the new copy.
10889
10890 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10891
10892         * gst/gstcaps.c: (gst_caps_append):
10893           add sanity checks
10894         * gst/gstcaps.h: (gst_caps_debug):
10895           remove, it doesn't exist anymore.
10896         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
10897         (gst_element_threadsafe_properties_post_run):
10898           make debugging messages not clutter up THREAD debug category
10899         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
10900         (gst_element_change_state):
10901           update to new caps API
10902         * gst/gstinterface.c: (gst_implements_interface_cast):
10903           don't put vital code in g_return_if_fail
10904         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
10905         (gst_pad_link_filtered):
10906           add pst_pad_try_link and use it.
10907         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
10908           implement correctly, deprecate first one.
10909         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
10910           add and implement.
10911         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
10912           implement.
10913         (gst_pad_get_negotiated_caps):
10914           add and implement. Make GST_PAD_CAPS call this function.
10915         (gst_pad_get_caps):
10916           remove unneeded check..
10917         (gst_pad_recover_caps_error):
10918           disable, always return FALSE.
10919         (gst_real_pad_dispose):
10920           don't free caps and appfilter anymore, they're unused.
10921         * gst/gstpad.h:
10922           Reflect changes mentioned above.
10923         * gst/gstsystemclock.c: (gst_system_clock_wait):
10924           Make 'clock is way behind' a debugging message.
10925         * gst/gstthread.c: (gst_thread_change_state):
10926           Fix debugging message
10927
10928 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
10929
10930         * gst/gstinfo.h:
10931           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
10932         * docs/gst/tmpl/gstreamer-unused.sgml:
10933           removed all traces of cvs conflicts
10934
10935 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10936
10937         * configure.ac:
10938         * gst/schedulers/cothreads_compat.h:
10939         * libs/Makefile.am:
10940           remove last instances of wingo cothread usage
10941
10942 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10943
10944         * gst/gstplugin.c:
10945         * gst/gstversion.h.in:
10946         * gst/parse/grammar.y:
10947           change comment block from /** to /* when not gtk-doc comments
10948
10949 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10950
10951         * gst/gst.c: whitespace and doc style fixes
10952
10953 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
10954
10955         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
10956
10957 2003-12-24  Colin Walters  <walters@verbum.org>
10958
10959         * gst/elements/gsttypefindelement.c:
10960           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
10961           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
10962           Don't double-free caps.
10963
10964 2003-12-23  David Schleef  <ds@schleef.org>
10965
10966         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
10967           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
10968           Many little fixes and additions of debug statements to
10969           get rhythmbox working.
10970
10971 2003-12-23  Colin Walters  <walters@verbum.org>
10972
10973         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
10974         Use GST_PAD_LINK_SUCCESSFUL.
10975
10976 2003-12-23  David Schleef  <ds@schleef.org>
10977
10978         * gst/elements/gstaggregator.c:
10979         * gst/elements/gsttee.c:
10980           Use gst_pad_proxy_getcaps().
10981         * gst/gstpad.c:
10982         * gst/gstpad.h:
10983           Add gst_pad_proxy_getcaps(), which filter elements can use
10984           as a generic getcaps implementation.
10985           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
10986           was advertised.
10987
10988 2003-12-23  David Schleef  <ds@schleef.org>
10989
10990         * gst/gstpad.c:
10991           Rearrange/rewrite much of the pad negotiation code, since it
10992           resembled pasta.  This actually changes the way some
10993           negotiation works, since the previous code was inconsistent
10994           depending on how it was invoked.  Add (internal) structure
10995           GstPadLink, which is used to hold some information (more in
10996           the future) about the link between two pads.  Fixes a number
10997           of bugs, including random lossage of filter caps when the
10998           initial negotiation is delayed.  A few functions are still
10999           unimplemented.
11000         * gst/gstpad.h:
11001           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11002           these when testing GstPadLinkReturn values instead of comparing
11003           directly.
11004
11005 2003-12-23  David Schleef  <ds@schleef.org>
11006
11007         * gst/gstvalue.c: 
11008         * gst/gstvalue.h:
11009           Rearrange lots of code.  Change registration of compare function
11010           into registration of compare/serialize/deserialize functions.
11011           Doesn't include implementation of gst_value_[de]serialize(),
11012           but that should be easy.
11013
11014 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11015
11016         * docs/gst/gstreamer-sections.txt:
11017         * docs/gst/tmpl/gstprops.sgml: removed
11018         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11019           David removed props and caps code, so let's remove their docs as well.
11020           Removed all no longer existing symbols from gstreamer-sections.txt
11021           
11022 2003-12-22  Colin Walters  <walters@verbum.org>
11023
11024         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11025           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11026           of tags directly.
11027
11028 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11029
11030         * gst/elements/gstelements.c:
11031           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11032         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11033           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11034           gst_caps (peer).
11035
11036 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11037
11038         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11039         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11040         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11041         (gst_spider_identity_sink_loop_type_finding):
11042         * gst/autoplug/gstspideridentity.h:
11043           Fix autoplugging in spider element, so it works with new caps.
11044           This was mainly caused by identifying empty caps incorrectly.
11045
11046 2003-12-22  David Schleef  <ds@schleef.org>
11047
11048         * gststructure.c, gstvalue.c, gstvalue.h: Add
11049           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11050           using g_value_copy()
11051
11052 2003-12-21  David Schleef  <ds@schleef.org>
11053
11054         * many, many files: Merge CAPS branch.  This includes:
11055           - implemention of GstValue and several GstValue types
11056           - implemention of GstStructure
11057           - entire rewrite of GstCaps
11058           - removal of GstProps
11059           - many changes to GstPad to compensate for new caps paradigm
11060           - removal of GstBufferpool
11061         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11062         gstvalue.h, gst/gstcaps[2]*.[ch]:
11063           - rename gstcaps2.[ch] to gstcaps.[ch]
11064
11065 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11066
11067         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11068         (gst_queue_chain), (gst_queue_handle_src_event):
11069           implement timeout for sending events. Workaround for if the
11070           pipeline on this queue is not passing any data.
11071
11072 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11073                                                                                 
11074         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11075         * moved CVS to freedesktop.org
11076