gst/gstelement.c: When the state did not change, also report NO_PREROLL when it matters.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-23  Wim Taymans  <wim@fluendo.com>
2
3         * gst/gstelement.c: (gst_element_get_state_func),
4         (gst_element_set_state), (gst_element_change_state):
5         When the state did not change, also report NO_PREROLL
6         when it matters.
7
8 2005-06-23  Wim Taymans  <wim@fluendo.com>
9
10         * gst/gstpad.c: (gst_pad_event_default):
11         * gst/gstqueue.c: (gst_queue_loop):
12         No unsafe task pausing please.
13
14 2005-06-23  Wim Taymans  <wim@fluendo.com>
15
16         * gst/schedulers/threadscheduler.c:
17         (gst_thread_scheduler_task_start),
18         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
19         Ref the task before pushing it on the threadpool. This
20         makes sure that we have a ref when the threadfunction is
21         actually called.
22
23 2005-06-23  Andy Wingo  <wingo@pobox.com>
24
25         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
26         offset is greater than the file's size.
27
28         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
29         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
30         * gst/gstobject.c (gst_object_class_init): Make the class lock
31         recursive. Wim won't let me drop deep_notify. Decodebin works
32         again, whoopdy doo.
33
34         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
35         internal pad, and hacks accordingly. Doesn't do it on the target
36         pad because we change its caps. Probably catches all cases of
37         interest tho.
38         (gst_ghost_pad_set_property): Connect to notify::caps as
39         appropritate.
40
41         * tests/network-clock.scm (plot-simulation): Pipe data to the
42         elite python skript.
43
44         * tests/network-clock-utils.scm (define-parameter): New macro,
45         defines a parameter that can be set via the command line.
46         (set-parameter!, parse-parameter-arguments): Command line args
47         parser.
48
49         * tests/plot-data: Simple matplotlib-based plotter, takes input on
50         stdin.
51
52 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
53
54         * gst/elements/gsttypefindelement.c:
55         (gst_type_find_element_handle_event):
56           Don't restart typefinding on a discont.
57         * gst/gstelement.c: (gst_element_set_state):
58           Debug spelling fix.
59         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
60           Allow changing mode of an active pad.
61           Debug output fixes.
62         * gst/registries/gstlibxmlregistry.c: (load_feature):
63           Don't cast a static pad template to a normal pad template.
64
65 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
66
67         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
68         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
69           remove gst_strtoll completely, since it didn't actually do
70           anything more than what g_ascii_strtoull already does.
71           check for range errors when deserializing
72           do a cast for the unsigned cases; but further fixing needs
73           a decision on what the interpretation of "(int)" and
74           deserialization should be for values that fall outside the
75           type's boundaries (ie, refuse, or interpret as casting)
76
77 2005-06-23  Wim Taymans  <wim@fluendo.com>
78
79         * check/Makefile.am:
80         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
81         * docs/design/part-live-source.txt:
82         * docs/design/part-states.txt:
83         * gst/base/gstbasesrc.c: (gst_basesrc_init),
84         (gst_basesrc_set_live), (gst_basesrc_is_live),
85         (gst_basesrc_get_range), (gst_basesrc_activate),
86         (gst_basesrc_change_state):
87         * gst/base/gstbasesrc.h:
88         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
89         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
90         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
91         * gst/gstelement.c: (gst_element_get_state_func),
92         (gst_element_set_state):
93         * gst/gstelement.h:
94         * gst/gsttypes.h:
95         * tools/gst-launch.c: (event_loop), (main):
96         Added support for live sources and other elements that
97         cannot do preroll.
98         Updated design docs, added live-source design doc.
99         Implemented live source functionality in basesrc
100         Fix error condition in _bin_get_state()
101         Implement live source handling in -launch.
102         Added check for live sources.
103         Fixed case in GstBin where elements were changed state
104         multiple times.
105
106
107 2005-06-23  Andy Wingo  <wingo@pobox.com>
108
109         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
110         borken refcounting.
111
112         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
113         gst_caps_replace takes care of this for us.
114
115         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
116         gst_pad_set_caps on the target, not just its setcaps() function.
117
118         * tests/network-clock.scm: 
119         * tests/network-clock-utils.scm: A network clock simulator.
120         Something of an algorithmic testbed before doing something in C.
121
122 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
123
124         * check/Makefile.am:
125         * check/gst/capslist.h:
126           copy over from 0.8, and add two with bitmasks specified with
127           (int) 0xFF...
128         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
129           add test to parse everything from capslist.h
130         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
131         (main):
132           add test for structure deserialization
133         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
134           add tests for deserialization of strings to int types
135         * gst/gststructure.c: (gst_structure_nth_field_name):
136         * gst/gststructure.h:
137           add a way to get the name of a field referenced by index
138         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
139           instead of checking if the resulting long long lies between
140           min and max, we check if the long long would fit into
141           a number of bytes for the final type.
142           This fixes cases where a string represents 2^32 - 1, which
143           when cast to int would be the (valid) -1, but is bigger than
144           G_MAXINT
145
146 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
147
148         * gst/parse/grammar.y:
149           add a log line for type deserialization
150
151 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
152
153         * check/gst/gstvalue.c: (START_TEST):
154         * gst/gstvalue.c: (gst_value_deserialize):
155           return long long, not int, so gint64 deserialization actually
156           works.  Is there any flag that makes the compiler check this ?
157           Fixes #308559
158
159 2005-06-22  Wim Taymans  <wim@fluendo.com>
160
161         * gst/gstbuffer.h:
162         Added convenience macros for setting buffers in GValue.
163
164 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
165
166         * check/gst/.cvsignore:
167         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
168           add a test deserializing int64, and comment part out because
169           it fails, yay !
170
171 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
172
173         * check/Makefile.am:
174         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
175         * testsuite/Makefile.am:
176         * testsuite/caps/Makefile.am:
177         * testsuite/caps/value_serialize.c:
178         * testsuite/test_gst_init.c:
179           move a value_serialize test over
180
181 2005-06-20  Wim Taymans  <wim@fluendo.com>
182
183         * gst/gstpad.c:
184         Small doc updates.
185         
186         * gst/gstvalue.c: (gst_value_compare_buffer),
187         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
188         (gst_value_compare_flags), (gst_value_serialize_flags),
189         (gst_value_deserialize_flags), (_gst_value_initialize):
190         Fix serialisation of buffers, they are not boxed types anymore
191
192 2005-06-20  Wim Taymans  <wim@fluendo.com>
193
194         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
195         Testcase to show error in buffer-on-caps serialisation.
196
197 2005-06-20  Andy Wingo  <wingo@pobox.com>
198
199         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
200         will be adding to later.
201
202         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
203         if its socks fill with rocks.
204         (gst_system_clock_obtain): Set the name on object construction.
205         Avoid double-checked locking.
206
207 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
208
209         * gst/gsturi.c: (gst_element_make_from_uri):
210           Fix potential endless loop.
211
212 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
213
214         * check/Makefile.am:
215           add gsttag
216         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
217         (main):
218           move over from testsuite dir and clean up
219         * configure.ac:
220         * gst/gsttag.c:
221         * testsuite/Makefile.am:
222         * testsuite/tags/.cvsignore:
223         * testsuite/tags/Makefile.am:
224         * testsuite/tags/merge.c:
225           remove testsuite/tags
226
227 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
228
229         * docs/gst/gstreamer-sections.txt:
230         * docs/gst/tmpl/gstenumtypes.sgml:
231         * win32/gstenumtypes.c:
232           clean up documentation build a little
233
234 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
235
236         * check/gstcheck.h:
237           add macros for checking refcounts on objects and caps
238         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
239           add some more unit tests
240         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
241         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
242           fix leaked refcounts (I hope :)) so unittest works
243         * gst/gstpad.h:
244           whitespace removal
245
246 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
247
248         * configure.ac: back to HEAD
249
250 === release 0.9.1 ===
251
252 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
253
254         * NEWS:
255         * RELEASE:
256           updated
257
258 2005-06-17  Andy Wingo  <wingo@pobox.com>
259
260         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
261         assert; it's always possible that the pad gets deactivated in
262         between the checks in gstpad.c and the implementation. Rely on
263         finish_preroll() to return a FLUSHING or similar instead of on the
264         assert.
265         
266         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
267         clock and post an EOS message if we come out of finish_preroll in
268         the playing state.
269
270 2005-06-16  David Schleef  <ds@schleef.org>
271
272         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
273         (gst_capsfilter_set_property): Allow NULL as possible value
274         for filter_caps property, indicating GST_CAPS_ANY.
275
276 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
277
278         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
279           fix debug output
280         * gst/schedulers/Makefile.am:
281           use libgst prefix
282         * gstreamer.spec.in:
283           fix spec for it
284
285 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
286
287         * gstreamer.spec.in:
288           clean up
289
290 2005-06-08  Andy Wingo  <wingo@pobox.com>
291
292         * gst/gstutils.c: RPAD fixes all around.
293         (gst_element_link_pads): Refcounting fixes.
294
295         * tools/gst-inspect.c:
296         * tools/gst-xmlinspect.c:
297         * parse/grammar.y:
298         * gst/base/gsttypefindhelper.c:
299         * gst/base/gstbasesink.c:
300         * gst/gstqueue.c: RPAD fixes.
301
302         * gst/gstghostpad.h:
303         * gst/gstghostpad.c: New ghost pad implementation as full proxy
304         pads. The tricky thing is they provide both source and sink
305         interfaces, since they proxy the internal pad for the external
306         pad, and vice versa. Implement with lower-level ProxyPad objects,
307         with the interior proxy pad as a child of the exterior ghost pad.
308         Should write a doc on this.
309         
310         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
311         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
312         gst_object API.
313         
314         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
315         pads are real pads. No ghost pads in this file. Not documenting
316         the myriad s/RPAD/PAD/ and REALIZE fixes.
317         (gst_pad_class_init): Add properties for "direction" and
318         "template". Both are construct-only, so they can't change during
319         the life of the pad. Fixes properly deriving from GstPad.
320         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
321         derived objects, just set properties when creating the objects via
322         g_object_new.
323         (gst_pad_get_parent): Implement as a function, return NULL if the
324         parent is not an element.
325         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
326         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
327         
328         * gst/gstobject.c (gst_object_class_init): Make name a construct
329         property. Don't set it in the object init.
330
331         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
332         with UNKNOWN direction.
333         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
334         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
335         (gst_element_remove_pad): Remove ghost-pad special cases.
336         (gst_element_pads_activate): Remove rpad cruft.
337
338         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
339         catch the pad's-parent-not-an-element case.
340
341         * gst/gst.h: Include gstghostpad.h.
342
343         * gst/gst.c (init_post): No more real, ghost pads.
344
345         * gst/Makefile.am: Add gstghostpad.[ch].
346
347         * check/Makefile.am:
348         * check/gst/gstbin.c:
349         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
350         into a bin creates ghost pads, and that the refcounts are right.
351         Partly moved from gstbin.c.
352
353 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
354
355         * check/gst-libs/.cvsignore:
356         * check/gst/.cvsignore:
357         * check/pipelines/.cvsignore:
358           ignore more
359         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
360         (START_TEST), (cleanup_suite), (main):
361           add some tests related to cleanup after running pipelines
362
363 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
364
365         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
366           add a testsuite for GstBuffer
367
368 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
369
370         * gst/gstminiobject.h:
371           add defines for accessing the refcount
372
373 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
374
375         * Makefile.am: added support for html unit test coverage reports
376
377 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
378
379         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
380           Free existing caps if the capsfilter changes. Add a FIXME about
381           setting those caps on the pads.
382
383         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
384           Before adding a ghost pad to a parent bin, check that there isn't
385           already one for the element on the bin. Prevents infinite recursion
386           when using decodebin in parse pipelines. Andy says he'll rewrite the
387           way this works anyway, so ignore the hack.
388
389 2005-06-02  Andy Wingo  <wingo@pobox.com>
390
391         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
392         file size, pass it on to the type find helper.
393
394         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
395         segment_start and segment_end properly according to the seek
396         method. Segment_end is still a bit flaky because offset can be
397         negative for CUR and END cases, but it takes -1 as an "unset"
398         value.
399
400 2005-06-02  Wim Taymans  <wim@fluendo.com>
401
402         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
403         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
404         (gst_basesink_activate):
405         * gst/base/gstbasesink.h:
406         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
407         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
408         (gst_pad_query), (gst_pad_start_task):
409         * gst/gstpad.h:
410         * gst/gstqueue.c: (gst_queue_bufferalloc),
411         (gst_queue_handle_sink_event), (gst_queue_chain):
412         Bufferalloc: return GstFlowReturn to more accuratly report
413         why allocation failed.
414
415 2005-06-02  Wim Taymans  <wim@fluendo.com>
416
417         * gst/gstpipeline.c: (gst_pipeline_send_event):
418         Take snapshot of state without blocking.
419
420 2005-06-02  Wim Taymans  <wim@fluendo.com>
421
422         * docs/design/part-TODO.txt:
423         * docs/design/part-caps.txt:
424         * docs/design/part-clocks.txt:
425         * docs/design/part-negotiation.txt:
426         * docs/design/part-preroll.txt:
427         Small doc updates 
428
429 2005-05-30  Wim Taymans  <wim@fluendo.com>
430
431         * gst/elements/gstidentity.c: (gst_identity_event),
432         (gst_identity_transform), (gst_identity_get_property):
433         Protect last_message property as it is accessed from
434         multiple threads.
435
436 2005-05-30  Wim Taymans  <wim@fluendo.com>
437
438         * gst/gstelement.c: (gst_element_init),
439         (gst_element_pads_activate), (gst_element_change_state):
440         Slicker pad activation code.
441
442 2005-05-30  Wim Taymans  <wim@fluendo.com>
443
444         * gst/Makefile.am:
445         * gst/gstelement.h:
446         * gst/gstelementfactory.h:
447         * gst/gsttypes.h:
448         Move elementfactory methods to separate .h file.
449
450 2005-05-30  Wim Taymans  <wim@fluendo.com>
451
452         * docs/design/part-overview.txt:
453         * gst/gstsystemclock.h:
454         Small typo fixes, doc updates.
455
456 2005-05-30  Wim Taymans  <wim@fluendo.com>
457
458         * gst/gst.c: (gst_init_get_popt_table), (init_post),
459         (init_popt_callback):
460         Remove cpu-opt flag.
461
462 2005-05-30  Wim Taymans  <wim@fluendo.com>
463
464         * gst/gstbuffer.c: (gst_subbuffer_finalize),
465         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
466         * gst/gstbuffer.h:
467         Avoid typechecking in places where not needed.
468         Added accessor for malloc_data.
469
470 2005-05-30  Wim Taymans  <wim@fluendo.com>
471
472         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
473         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
474         (gst_pad_configure_sink), (gst_pad_configure_src),
475         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
476         (gst_pad_start_task):
477         Propagate errors from _set_caps() in configure_src/sink
478         functions instead of returning TRUE.
479         FLUSH events can travel up and downstream
480
481
482 2005-05-30  Wim Taymans  <wim@fluendo.com>
483
484         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
485         (gst_basesink_activate):
486         Handle EOS in preroll.
487
488 2005-05-30  Wim Taymans  <wim@fluendo.com>
489
490         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
491         (gst_queue_loop), (gst_queue_handle_src_event):
492         Remove old pieces of code
493         Flushing the queue in an upstream event is a very bad idea.
494
495 2005-05-26  Andy Wingo  <wingo@pobox.com>
496
497         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
498         gst_value_set_mini_object so as to add a ref on the object (which
499         will be removed when the value is unset).
500
501         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
502         arg type in ::handoff.
503
504         * gst/gstelement.c (gst_element_change_state): Also deactivate
505         pads in READY->NULL, just in case the element didn't make it to
506         PAUSED. Wingo tested, Wim approved.
507
508 2005-05-26  Wim Taymans  <wim@fluendo.com>
509
510         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
511         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
512         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
513         A flushing pad cannot be used to alloc_buffer from.
514
515 2005-05-26  Wim Taymans  <wim@fluendo.com>
516
517         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
518         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
519         (gst_bus_source_dispatch), (gst_bus_source_finalize),
520         (gst_bus_create_watch), (gst_bus_add_watch_full):
521         * gst/gstbus.h:
522         Implement a real GSource and use g_main_context_wakeup() to
523         signal new messages instead of the socketpair.
524
525 2005-05-25  Wim Taymans  <wim@fluendo.com>
526
527         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
528         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
529         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
530         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
531         (gst_pad_send_event), (gst_pad_start_task):
532         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
533         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
534         (gst_queue_sink_activate), (gst_queue_src_activate),
535         (gst_queue_change_state):
536         * gst/gstqueue.h:
537         Fix state changes for non sinks. We now change sinks, then elements
538         with unconnected srcpads, then the rest.
539         More efficient queue unlocking in flush and state changes.
540         Set the pad activate mode even if it does not have an activate
541         function.
542
543 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
544
545         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
546           Don't go in pull mode for non-seekable sources.
547         * gst/elements/gsttypefindelement.h:
548         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
549         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
550         (free_entry), (stop_typefinding),
551         (gst_type_find_element_handle_event), (find_peek),
552         (gst_type_find_element_chain), (do_pull_typefind),
553         (gst_type_find_element_change_state):
554           Allow typefinding (w/o seeking) in push-mode, simplified version
555           of what was in 0.8.
556         * gst/gstutils.c: (gst_buffer_join):
557         * gst/gstutils.h:
558           gst_buffer_join() from 0.8.
559
560 2005-05-25  Wim Taymans  <wim@fluendo.com>
561
562         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
563         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
564         (gst_pad_send_event), (gst_pad_start_task):
565         Disable attempt at mode switching until it is figured out.
566
567 2005-05-25  Wim Taymans  <wim@fluendo.com>
568
569         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
570         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
571         (gst_basesink_finish_preroll), (gst_basesink_chain),
572         (gst_basesink_loop), (gst_basesink_activate),
573         (gst_basesink_change_state):
574         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
575         (gst_basesrc_get_range), (gst_basesrc_loop),
576         (gst_basesrc_activate):
577         * gst/elements/gsttee.c: (gst_tee_sink_activate):
578         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
579         (gst_real_pad_init), (gst_real_pad_set_property),
580         (gst_real_pad_get_property), (gst_pad_set_active),
581         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
582         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
583         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
584         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
585         (gst_pad_event_default_dispatch), (gst_pad_event_default),
586         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
587         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
588         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
589         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
590         (gst_pad_stop_task):
591         * gst/gstpad.h:
592         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
593         (gst_queue_loop), (gst_queue_src_activate):
594         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
595         (gst_task_get_state):
596         * gst/gsttask.h:
597         * gst/schedulers/threadscheduler.c:
598         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
599         Implement gst_pad_pause/start/stop_task(), take STREAM lock
600         in task function.
601         Remove ACTIVE pad flag, use FLUSHING everywhere
602         Added _pad_chain(), _pad_get_range() to call chain/getrange 
603         functions.
604         Add locks around IS_FLUSHING when reading.
605         Take STREAM lock in chain(), get_range() functions so plugins
606         don't need to take it anymore.
607         
608
609
610 2005-05-25  Wim Taymans  <wim@fluendo.com>
611
612         * tools/gst-launch.c: (event_loop):
613         Unref message after using its contents instead of
614         before.
615
616 2005-05-24  Wim Taymans  <wim@fluendo.com>
617
618         * docs/design/draft-ghostpads.txt:
619         * docs/design/draft-push-pull.txt:
620         * docs/design/draft-query.txt:
621         * docs/design/part-overview.txt:
622         Docs updates, added general overview doc.
623
624 2005-05-21  David Schleef  <ds@schleef.org>
625
626         * docs/gst/tmpl/old/GstBin.sgml:
627         * docs/gst/tmpl/old/GstBuffer.sgml:
628         * docs/gst/tmpl/old/GstCaps.sgml:
629         * docs/gst/tmpl/old/GstClock.sgml:
630         * docs/gst/tmpl/old/GstCompat.sgml:
631         * docs/gst/tmpl/old/GstData.sgml:
632         * docs/gst/tmpl/old/GstElement.sgml:
633         * docs/gst/tmpl/old/GstEvent.sgml:
634         * docs/gst/tmpl/old/GstIndex.sgml:
635         * docs/gst/tmpl/old/GstStructure.sgml:
636         * docs/gst/tmpl/old/GstTag.sgml:
637         * docs/gst/tmpl/old/cothreads.sgml:
638         * docs/gst/tmpl/old/cothreads_compat.sgml:
639         * docs/gst/tmpl/old/gettext.sgml:
640         * docs/gst/tmpl/old/gobject2gtk.sgml:
641         * docs/gst/tmpl/old/grammar.tab.sgml:
642         * docs/gst/tmpl/old/gst-i18n-app.sgml:
643         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
644         * docs/gst/tmpl/old/gst_private.sgml:
645         * docs/gst/tmpl/old/gstaggregator.sgml:
646         * docs/gst/tmpl/old/gstarch.sgml:
647         * docs/gst/tmpl/old/gstatomic_impl.sgml:
648         * docs/gst/tmpl/old/gstbufferstore.sgml:
649         * docs/gst/tmpl/old/gstdata_private.sgml:
650         * docs/gst/tmpl/old/gstdisksink.sgml:
651         * docs/gst/tmpl/old/gstdisksrc.sgml:
652         * docs/gst/tmpl/old/gstelementfactory.sgml:
653         * docs/gst/tmpl/old/gstextratypes.sgml:
654         * docs/gst/tmpl/old/gstfakesink.sgml:
655         * docs/gst/tmpl/old/gstfakesrc.sgml:
656         * docs/gst/tmpl/old/gstfdsink.sgml:
657         * docs/gst/tmpl/old/gstfdsrc.sgml:
658         * docs/gst/tmpl/old/gstfilesink.sgml:
659         * docs/gst/tmpl/old/gstfilesrc.sgml:
660         * docs/gst/tmpl/old/gsthttpsrc.sgml:
661         * docs/gst/tmpl/old/gstidentity.sgml:
662         * docs/gst/tmpl/old/gstindexfactory.sgml:
663         * docs/gst/tmpl/old/gstmarshal.sgml:
664         * docs/gst/tmpl/old/gstmd5sink.sgml:
665         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
666         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
667         * docs/gst/tmpl/old/gstpadtemplate.sgml:
668         * docs/gst/tmpl/old/gstpipefilter.sgml:
669         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
670         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
671         * docs/gst/tmpl/old/gstshaper.sgml:
672         * docs/gst/tmpl/old/gstspider.sgml:
673         * docs/gst/tmpl/old/gstspideridentity.sgml:
674         * docs/gst/tmpl/old/gststatistics.sgml:
675         * docs/gst/tmpl/old/gsttee.sgml:
676         * docs/gst/tmpl/old/gsttimecache.sgml:
677         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
678         * docs/gst/tmpl/old/gstxmlregistry.sgml:
679         * docs/gst/tmpl/old/gthread-cothreads.sgml:
680         * docs/gst/tmpl/old/types.sgml:
681           I didn't intend to add these or check them in.
682
683 2005-05-19  David Schleef  <ds@schleef.org>
684
685         * configure.ac: Use -no-common everywhere.  In a sane world, it
686           would be the default in libtool, because without it, you can't
687           build DLLs on Windows.
688         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
689         * docs/gst/gstreamer-sections.txt:
690         * docs/gst/tmpl/gstcpu.sgml:
691         * docs/gst/tmpl/gstdata.sgml:
692         * docs/gst/tmpl/gstthread.sgml:
693
694 2005-05-19  David Schleef  <ds@schleef.org>
695
696         * gst/gstminiobject.c: (gst_value_set_mini_object),
697         (gst_value_take_mini_object), (gst_value_get_mini_object):
698         * gst/gstminiobject.h: Add GValue set/get functions.
699
700 2005-05-19  Wim Taymans  <wim@fluendo.com>
701
702         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
703         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
704         (gst_subbuffer_init), (gst_buffer_is_span_fast):
705         * gst/gstbuffer.h:
706         * gst/gstbus.c: (gst_bus_post):
707         * gst/gstelement.c: (gst_element_get_random_pad):
708         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
709         Make subbufer unref the parent in finalize.
710         some more debugging info.
711
712
713 2005-05-19  Wim Taymans  <wim@fluendo.com>
714
715         * gst/base/gstbasesink.c: (gst_basesink_class_init),
716         (gst_basesink_init), (gst_basesink_finalize),
717         (gst_basesink_activate), (gst_basesink_change_state):
718         Don't free preroll queue too early.
719
720 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
721
722         * gst/Makefile.am:
723         * gst/ROADMAP:
724           Hi, I'm outdated. Please shoot me.
725
726 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
727
728         * gst/gstpipeline.c: (gst_pipeline_send_event):
729           Do not access variables after they have been deleted.
730
731 2005-05-19  Wim Taymans  <wim@fluendo.com>
732
733         * tools/gst-inspect.c: (print_plugin_features):
734         A plugin feature does unfortunatly not use the
735         object name yet...
736
737 2005-05-18  Wim Taymans  <wim@fluendo.com>
738
739         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
740         Port _span() functions to new subbuffers.
741
742 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
743
744         * gst/gstbin.c: (gst_bin_add_func):
745           Fix clock settery in bins when adding kids after the clock has
746           been selected.
747
748 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
749
750         * gst/elements/gstidentity.c: (gst_identity_class_init):
751           Workaround until signals support GstMiniObject.
752
753 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
754
755         * gst/gstbuffer.c:
756         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
757
758 2005-05-18  Wim Taymans  <wim@fluendo.com>
759
760         * gst/base/Makefile.am:
761         * gst/base/gstadapter.c: (gst_adapter_base_init),
762         (gst_adapter_class_init), (gst_adapter_init),
763         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
764         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
765         (gst_adapter_flush), (gst_adapter_available),
766         (gst_adapter_available_fast):
767         * gst/base/gstadapter.h:
768         Ported and added adapter to the base classes.
769
770 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
771
772         * gst/gst.c:
773         * gst/gstmessage.c:
774           Make sure the class is reffed/unreffed once before threads can be
775           used.  Fixes #304551.
776
777 2005-05-17  Wim Taymans  <wim@fluendo.com>
778
779         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
780         (gst_basesink_chain_unlocked), (gst_basesink_activate):
781         * gst/gstminiobject.c: (gst_mini_object_get_type),
782         (gst_mini_object_free):
783         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
784         (gst_pad_push), (gst_pad_push_event):
785         * gst/gstqueue.c: (gst_queue_change_state):
786         Don't queue buffers in basesink when we are flushing.
787         Unref buffer when flushing in basesink.
788         Flush queue when going to READY
789         Unref buffer when _push() returns an error.
790         Don't free MiniObject instance when refcount is incremented
791         in _finalize() so that we can recover objects.
792
793 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
794
795         * docs/manual/advanced-schedulers.xml:
796         * docs/manual/appendix-checklist.xml:
797         * docs/pwg/advanced-clock.xml:
798         * docs/pwg/advanced-interfaces.xml:
799         * docs/pwg/advanced-request.xml:
800         * docs/pwg/advanced-types.xml:
801         * docs/pwg/intro-preface.xml:
802         * examples/plugins/example.c: (gst_example_get_type),
803         (gst_example_class_init), (gst_example_chain),
804         (gst_example_set_property), (gst_example_get_property),
805         (gst_example_change_state), (plugin_init):
806         * examples/plugins/example.h:
807           small doc fixes
808
809 2005-05-17  Wim Taymans  <wim@fluendo.com>
810
811         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
812         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
813         * gst/gstqueue.c: (gst_queue_change_state):
814         Clear queue when going to READY.
815         Remove IN_SETCAPS flag too.
816
817 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
818
819         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
820           Remove implicit cast from gboolean to GstElementStateReturn;
821           make sure we still return failure in paused => ready case if
822           the parent class fails to change state and our own stop 
823           vfunc succeeds.
824
825 2005-05-17  Wim Taymans  <wim@fluendo.com>
826
827         * tools/gst-launch.c: (event_loop):
828         Message was unreffed too soon.
829
830 2005-05-16  Andy Wingo  <wingo@pobox.com>
831
832         * gst/gstbin.c (sink_iterator_filter): Err... um...
833
834         * check/gst/gstbin.c (test_ghost_pads): New test for the
835         ghosting-if-elements-not-in-same-bin behavior.
836
837 2005-05-16  David Schleef  <ds@schleef.org>
838
839         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
840         accessing refcount directly.
841
842 2005-05-15  David Schleef  <ds@schleef.org>
843
844         * check/Makefile.am: remove GstData checks
845         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
846         * gst/Makefile.am: add miniobject, remove data
847         * gst/gst.h: add miniobject, remove data
848         * gst/gstdata.c: remove
849         * gst/gstdata.h: remove
850         * gst/gstdata_private.h: remove
851         * gst/gsttypes.h: remove GstEvent and GstMessage
852         * gst/gstelement.c: (gst_element_post_message): fix for API changes
853         * gst/gstmarshal.list: change BOXED -> OBJECT
854
855         Implement GstMiniObject.
856         * gst/gstminiobject.c:
857         * gst/gstminiobject.h:
858
859         Modify to be subclasses of GstMiniObject.
860         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
861         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
862         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
863         (gst_subbuffer_get_type), (gst_subbuffer_init),
864         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
865         (gst_buffer_span):
866         * gst/gstbuffer.h:
867         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
868         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
869         (_gst_event_copy), (gst_event_new):
870         * gst/gstevent.h:
871         * gst/gstmessage.c: (_gst_message_initialize),
872         (gst_message_get_type), (gst_message_class_init),
873         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
874         (gst_message_new), (gst_message_new_error),
875         (gst_message_new_warning), (gst_message_new_tag),
876         (gst_message_new_state_changed), (gst_message_new_application):
877         * gst/gstmessage.h:
878         * gst/gstprobe.c: (gst_probe_perform),
879         (gst_probe_dispatcher_dispatch):
880         * gst/gstprobe.h:
881         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
882         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
883         (_gst_query_copy), (gst_query_new):
884
885         Update elements for GstData -> GstMiniObject changes
886         * gst/gstquery.h:
887         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
888         (gst_queue_chain), (gst_queue_loop):
889         * gst/elements/gstbufferstore.c:
890         (gst_buffer_store_add_buffer_func),
891         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
892         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
893         (gst_fakesink_render):
894         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
895         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
896         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
897         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
898         (gst_filesrc_create_read):
899         * gst/elements/gstidentity.c: (gst_identity_class_init):
900         * gst/elements/gsttypefindelement.c:
901         (gst_type_find_element_src_event), (free_entry_buffers),
902         (gst_type_find_element_handle_event):
903         * libs/gst/dataprotocol/dataprotocol.c:
904         (gst_dp_header_from_buffer):
905         * libs/gst/dataprotocol/dataprotocol.h:
906         * libs/gst/dataprotocol/dp-private.h:
907
908 2005-05-15  David Schleef  <ds@schleef.org>
909
910         * gst/elements/gstelements.c: Don't include headers that were
911         just removed.
912
913 2005-05-15  David Schleef  <ds@schleef.org>
914
915         * gst/elements/Makefile.am: Remove some elements that don't
916         need to be in the core (or even exist at all).
917         * gst/elements/gstaggregator.c:
918         * gst/elements/gstaggregator.h:
919         * gst/elements/gstmd5sink.c:
920         * gst/elements/gstmd5sink.h:
921         * gst/elements/gstmultifilesrc.c:
922         * gst/elements/gstmultifilesrc.h:
923         * gst/elements/gstpipefilter.c:
924         * gst/elements/gstpipefilter.h:
925         * gst/elements/gstshaper.c:
926         * gst/elements/gstshaper.h:
927         * gst/elements/gststatistics.c:
928         * gst/elements/gststatistics.h:
929         * po/POTFILES.in: Remove above files.
930
931 2005-05-14  Andy Wingo  <wingo@pobox.com>
932
933         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
934         so as to get the refs right.
935         (sink_iterator_filter): New function, wraps bin_element_is_sink,
936         unreffing objects that don't pass the filter.
937
938         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
939         gst_element_set_bus.
940         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
941         normal cases, this will destroy the bus.
942
943         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
944         object.
945
946         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
947         has no sinks.
948
949 2005-05-13  Andy Wingo  <wingo@pobox.com>
950
951         * gst/gstutils.c (gst_element_link_pads): Instead of calling
952         gst_pad_link, call pad_link_maybe_ghosting,
953         (pad_link_maybe_ghosting): Links pads, making sure that the
954         elements being linked are in the same bin.
955         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
956         Helpers for pad_link_maybe_ghosting.
957
958 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
959
960         * configure.ac:
961           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
962
963 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
964
965         * docs/design/part-element-source.txt:
966           Mention GstPushSrc
967
968 2005-05-12  Wim Taymans  <wim@fluendo.com>
969
970         * gst/base/gstbasesink.c: (gst_basesink_init),
971         (gst_basesink_activate):
972         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
973         (gst_basesrc_is_seekable):
974         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
975         (bin_element_is_sink), (gst_bin_change_state):
976         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
977         * gst/gstelement.h:
978         Identify sinks by their flag to avoid overly complicated
979         checks (fow now).
980         Do state changes even for elements not reachable from the
981         sinks.
982         BaseSink is a sink now :)
983         Some more debugging info in the basesrc.
984
985
986 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
987
988         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
989           Implement _query on a bin, similar to _send_event.
990
991 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
992
993         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
994           Discont event offset format should be GST_FORMAT_BYTES,
995           not GST_FORMAT_TIME.
996
997 2005-05-12  Wim Taymans  <wim@fluendo.com>
998
999         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1000         Same fix as Ronald's but without the signal. 
1001
1002 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1003
1004         * gst/gstutils.c: (gst_element_query_position):
1005           No, an element is not a pad.
1006
1007 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1008
1009         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1010         (gst_bin_get_state):
1011           If a child is removed from a bin while we remove the child from
1012           the bin and while we're retrieving its state, signal this to the
1013           get_state function so we abort the wait (instead of waiting for
1014           a timeout) and can immediately re-iterate over all other elements.
1015
1016 2005-05-12  Wim Taymans  <wim@fluendo.com>
1017
1018         * gst/base/Makefile.am:
1019         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1020         (gst_basesrc_start):
1021         * gst/base/gstbasesrc.h:
1022         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1023         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1024         (gst_pushsrc_init), (gst_pushsrc_create):
1025         * gst/base/gstpushsrc.h:
1026         Added is_seekable to BaseSrc
1027         Added simple PushSrc.
1028
1029 2005-05-11  Wim Taymans  <wim@fluendo.com>
1030
1031         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1032         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1033         (gst_element_link_pads), (gst_element_query_position),
1034         (gst_element_query_convert), (intersect_caps_func),
1035         (gst_pad_query_position), (gst_pad_query_convert):
1036         Fix refcounting in utils function.
1037         No point in trying to activate a pad when it's added, it could
1038         be added from the state change function and then we deadlock, the
1039         element has to decide what to do.
1040
1041 2005-05-10  Andy Wingo  <wingo@pobox.com>
1042
1043         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1044         *all* the arguments.
1045
1046         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1047         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1048         lock (according to the docs -- if this is wrong change the docs).
1049
1050         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1051         flush messages in the NULL state.
1052
1053         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1054         message immediately and return.
1055         (gst_bus_set_flushing): New function. If a bus is flushing, it
1056         flushes out any queued messages and immediately unrefs new
1057         messages. This is so when an element goes to NULL, all of the
1058         unhandled messages coming from it can be freed, and their
1059         references to the element dropped. In other words: message source
1060         ref considered harmful :P
1061
1062         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1063         we're finished with it.
1064
1065         * gst/gstmessage.c (gst_message_new_state_changed): 
1066
1067 2005-05-10  Wim Taymans  <wim@fluendo.com>
1068
1069         * gst/gstvalue.c: (gst_value_compare_flags),
1070         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1071         (_gst_value_initialize):
1072         Added flags serialize/deserialize/compare code.
1073
1074 2005-05-09  Andy Wingo  <wingo@pobox.com>
1075
1076         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1077         Intersect the peer's caps with our caps.
1078
1079 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1080
1081         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1082         * gst/elements/gsttypefindelement.c: (find_peek):
1083           Handle negative offsets better. Fixes decodebin.
1084
1085 2005-05-09  Wim Taymans  <wim@fluendo.com>
1086
1087         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1088         (gst_base_transform_event):
1089         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1090         Implement accept_caps.
1091         Fix silly lock/unlock mismatch in base class.
1092
1093 2005-05-09  Wim Taymans  <wim@fluendo.com>
1094
1095         * docs/design/draft-push-pull.txt:
1096         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1097         * gst/elements/gstfilesink.c: (gst_filesink_init),
1098         (gst_filesink_query):
1099         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1100         (gst_type_find_handle_src_query), (find_element_get_length):
1101         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1102         * gst/gstelement.h:
1103         * gst/gstmessage.c:
1104         * gst/gstmessage.h:
1105         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1106         (gst_real_pad_get_caps_unlocked),
1107         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1108         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1109         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1110         (gst_real_pad_dispose), (gst_real_pad_finalize),
1111         (gst_pad_load_and_link), (gst_pad_save_thyself),
1112         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1113         (gst_pad_check_pull_range), (gst_pad_pull_range),
1114         (gst_pad_template_get_type), (gst_pad_template_class_init),
1115         (gst_pad_template_init), (gst_pad_template_dispose),
1116         (name_is_valid), (gst_static_pad_template_get),
1117         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1118         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1119         (gst_pad_get_element_private), (gst_pad_start_task),
1120         (gst_pad_pause_task), (gst_pad_stop_task),
1121         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1122         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1123         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1124         (gst_ghost_pad_new):
1125         * gst/gstpad.h:
1126         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1127         (gst_query_new_position), (gst_query_set_position),
1128         (gst_query_parse_position), (gst_query_new_convert),
1129         (gst_query_set_convert), (gst_query_parse_convert):
1130         * gst/gstquery.h:
1131         * gst/gstqueryutils.c:
1132         * gst/gstqueryutils.h:
1133         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1134         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1135         (gst_queue_handle_src_query):
1136         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1137         (gst_element_query_position), (gst_element_query_convert),
1138         (intersect_caps_func), (gst_pad_query_position),
1139         (gst_pad_query_convert):
1140         * gst/gstutils.h:
1141         * tools/gst-inspect.c: (print_pad_info):
1142         * tools/gst-xmlinspect.c: (print_element_info):
1143         Remove old query functions. Ported old code.
1144         Added position/convert helper functions to gstutils.
1145         Reordered gstpad.c code, grouping relevant things.
1146         Remove gst_message_new(), always need to speficy a specific
1147         message.
1148
1149
1150 2005-05-09  Andy Wingo  <wingo@pobox.com>
1151
1152         * gst/gstiterator.h: Add some includes.
1153
1154         * gst/gstqueryutils.h: Include more headers.
1155
1156         * gst/gstpad.h:
1157         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1158         some uses of gst_pad_query.
1159
1160         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1161         NULL out parameters.
1162         (gst_query_new_position): New proc, allocates a new position
1163         query.
1164
1165         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1166         gstqueryutils.c to the build.
1167
1168         * gst/gststructure.c (gst_structure_set_valist): Implement with
1169         the generic G_VALUE_COLLECT.
1170         
1171 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1172
1173         * gst/Makefile.am: (gst_headers):
1174         Added gstqueryutils.h to the list of headers to install, that was
1175         a 'nachty' move wingo :)
1176
1177 2005-05-06  Andy Wingo  <wingo@pobox.com>
1178
1179         * gst/gstquery.h
1180         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1181         GstData, init a memchunk.
1182         (standard_definitions): Add a few query types, deprecate a few.
1183         (gst_query_get_type): New proc.
1184         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1185         implementation.
1186         (gst_query_new_application, gst_query_get_structure): New public
1187         procs.
1188
1189         * docs/design/draft-query.txt: Removed LINKS from the query types,
1190         because all the rest can be dispatched to other pads -- seemed
1191         ugly to have a query that couldn't be dispatched. internal_links
1192         is fine as a pad method.
1193
1194         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1195         in gstpad.c, but maintain binary compatibility for the moment.
1196         Will fix before 0.9 is out.
1197
1198         * gst/gstqueryutils.c: 
1199         * gst/gstqueryutils.h: New files, implement 3 methods for each
1200         query type: parse_query, parse_response, and set. Probably need an
1201         allocator as well.
1202
1203         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1204
1205         * gst/elements/gstfilesink.c (gst_filesink_query2):
1206         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1207         query_types, and formats methods.
1208
1209         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1210         (gst_pad_set_query2_function): New functions.
1211         (gst_real_pad_init): Set query2_default as the default query2
1212         function. Basically just dispatches to internally linked pads.
1213
1214         Needs review!
1215         
1216         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1217         without using the atomic operations. Only one thread can possibly
1218         be accessing the data at this point. Changed so as to avoid
1219         gst_atomic operations.
1220
1221 2005-05-06  Wim Taymans  <wim@fluendo.com>
1222
1223         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1224         Also set caps if we use the fallback buffer alloc.
1225
1226 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1227
1228         * docs/gst/Makefile.am:
1229         * docs/gst/gstreamer-docs.sgml:
1230         * docs/gst/gstreamer-sections.txt:
1231         * docs/gst/tmpl/gstatomic.sgml:
1232         * docs/gst/tmpl/gstmemchunk.sgml:
1233         * testsuite/elements/struct_i386.h:
1234         * win32/GStreamer.vcproj:
1235         * win32/Makefile:
1236           Purge GstAtomic stuff from docs and win32 makefiles as well
1237
1238 2005-05-06  Wim Taymans  <wim@fluendo.com>
1239
1240         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1241         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1242         * gst/gstpad.c: (gst_pad_peer_get_caps):
1243         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1244         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1245         (gst_queue_src_activate), (gst_queue_change_state):
1246         * gst/gstqueue.h:
1247         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1248         (intersect_caps_func):
1249         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1250         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1251         Some fixes for the peer_get_caps() change.
1252
1253 2005-05-06  Wim Taymans  <wim@fluendo.com>
1254
1255         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1256         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1257         (gst_basesink_activate):
1258         Actually do something with error codes returned from the push
1259         functions.
1260
1261 2005-05-06  Wim Taymans  <wim@fluendo.com>
1262
1263         * docs/design/part-element-sink.txt:
1264         * docs/design/part-element-source.txt:
1265         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1266         (gst_basesink_event), (gst_basesink_activate):
1267         * gst/base/gstbasesink.h:
1268         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1269         (gst_basesrc_activate):
1270         * gst/base/gstbasesrc.h:
1271         * gst/gstelement.c: (gst_element_pads_activate):
1272         Some more documentation.
1273         Fixed scheduling decision in _pads_activate().
1274
1275 2005-05-05  Andy Wingo  <wingo@pobox.com>
1276
1277         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1278         the test suite.
1279
1280 2005-05-05  Wim Taymans  <wim@fluendo.com>
1281
1282         * gst/base/Makefile.am:
1283         * gst/base/gstbasesink.h:
1284         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1285         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1286         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1287         (gst_collectpads_class_init), (gst_collectpads_init),
1288         (gst_collectpads_finalize), (gst_collectpads_new),
1289         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1290         (find_pad), (gst_collectpads_remove_pad),
1291         (gst_collectpads_is_active), (gst_collectpads_collect),
1292         (gst_collectpads_collect_range), (gst_collectpads_start),
1293         (gst_collectpads_stop), (gst_collectpads_peek),
1294         (gst_collectpads_pop), (gst_collectpads_available),
1295         (gst_collectpads_read), (gst_collectpads_flush),
1296         (gst_collectpads_chain):
1297         * gst/base/gstcollectpads.h:
1298         * gst/elements/Makefile.am:
1299         * gst/elements/gstelements.c:
1300         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1301         (gst_fakesink_get_times), (gst_fakesink_event),
1302         (gst_fakesink_preroll), (gst_fakesink_render):
1303         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1304         (gst_filesink_init), (gst_filesink_set_location),
1305         (gst_filesink_open_file), (gst_filesink_close_file),
1306         (gst_filesink_pad_query), (gst_filesink_event),
1307         (gst_filesink_render), (gst_filesink_change_state):
1308         * gst/elements/gstfilesink.h:
1309         Added object to help in making collect pad based elements.
1310         Ported filesink.
1311         Make event function in sink baseclass return gboolean.
1312
1313 2005-05-05  Wim Taymans  <wim@fluendo.com>
1314
1315         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1316         (gst_bin_get_by_name):
1317         * gst/gstbuffer.h:
1318         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1319         (gst_clock_finalize):
1320         * gst/gstdata.c: (gst_data_replace):
1321         * gst/gstdata.h:
1322         * gst/gstelement.c: (gst_element_request_pad),
1323         (gst_element_pads_activate):
1324         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1325         (gst_object_unref):
1326         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1327         (gst_pad_set_checkgetrange_function),
1328         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1329         (gst_pad_check_pull_range), (gst_pad_pull_range),
1330         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1331         (gst_pad_pause_task), (gst_pad_stop_task):
1332         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1333         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1334         Fix name lookup in GstBin.
1335         Added _data_replace() function and _buffer_replace()
1336         Use finalize method to clean up clock.
1337         Fix refcounting on request pads.
1338         Fix pad schedule mode error.
1339         Some more object refcounting debug info,
1340
1341
1342 2005-05-04  Andy Wingo <wingo@pobox.com>
1343
1344         * check/Makefile.am:
1345         * docs/gst/tmpl/gstatomic.sgml:
1346         * docs/gst/tmpl/gstplugin.sgml:
1347         * gst/base/gstbasesink.c: (gst_basesink_activate):
1348         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1349         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1350         (gst_basesrc_query), (gst_basesrc_set_property),
1351         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1352         (gst_basesrc_activate):
1353         * gst/base/gstbasesrc.h:
1354         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1355         (gst_base_transform_src_activate):
1356         * gst/elements/gstelements.c:
1357         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1358         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1359         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1360         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1361         (gst_type_find_element_checkgetrange),
1362         (gst_type_find_element_activate):
1363         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1364         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1365         (gst_caps_load_thyself):
1366         * gst/gstelement.c: (gst_element_pads_activate),
1367         (gst_element_save_thyself), (gst_element_restore_thyself):
1368         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1369         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1370         * gst/gstpad.h:
1371         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1372         (gst_xml_parse_file), (gst_xml_parse_memory),
1373         (gst_xml_get_element), (gst_xml_make_element):
1374         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1375         (_file_index_id_save_xml), (gst_file_index_commit):
1376         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1377         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1378         (load_paths):
1379         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1380         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1381         * tools/gst-complete.c: (main):
1382         * tools/gst-compprep.c: (main):
1383         * tools/gst-inspect.c: (print_element_properties_info):
1384         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1385         * tools/gst-xmlinspect.c: (print_element_properties):
1386         GCC 4 fixen.
1387         
1388 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1389
1390         * gst/gstplugin.c: (gst_plugin_check_module),
1391         (gst_plugin_check_file), (gst_plugin_load_file):
1392             apply patch from #172526 to make register work on MacOSX
1393
1394 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1395
1396         * docs/gst/tmpl/gstconfig.sgml:
1397         * gst/gstconfig.h.in:
1398           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1399         * testsuite/debug/printf_extension.c: (main):
1400           Do not use GST_PTR_FORMAT on pointers to types with
1401           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1402         * testsuite/elements/property.h:
1403           use correct printf format
1404
1405 2005-05-02  Wim Taymans  <wim@fluendo.com>
1406
1407         * docs/design/draft-push-pull.txt:
1408         * docs/design/draft-query.txt:
1409         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1410         (gst_basesrc_start):
1411         Added draft for new query API.
1412         Added draft for better selecting scheduling methods.
1413         Make basesrc ignore length if the subclass does not support
1414         it.
1415
1416 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1417
1418         * gst/Makefile.am:
1419           possible fixes for automake-1.5 - _LIBADD is reserved
1420
1421 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1422
1423         * docs/faq/Makefile.am:
1424         * docs/manual/Makefile.am:
1425         * docs/manuals.mak:
1426         * docs/pwg/Makefile.am:
1427         * gst/Makefile.am:
1428           possible fixes for automake-1.5
1429
1430 2005-04-28  Wim Taymans  <wim@fluendo.com>
1431
1432         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1433         (gst_basesink_pad_getcaps), (gst_basesink_init),
1434         (gst_basesink_do_sync):
1435         * gst/gstclock.c: (gst_clock_entry_new):
1436         * gst/gstevent.c: (gst_event_discont_get_value):
1437         * gst/gstpipeline.c: (pipeline_bus_handler),
1438         (gst_pipeline_change_state):
1439         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1440         Better debugging of clocking info.
1441         Allow NULL values when getting discont values.
1442
1443 2005-04-27  Wim Taymans  <wim@fluendo.com>
1444
1445         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1446         * check/gst/gstpad.c: (gst_pad_suite):
1447         Increase timeout for checks.
1448
1449 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1450
1451         * check/Makefile.am:
1452           fix the broken rule for cleanup.  Apparently this rule is
1453           only needed on FC2, so maybe this warrants further autotool
1454           inspection.
1455
1456 2005-04-26  Wim Taymans  <wim@fluendo.com>
1457
1458         * gst/gsttrashstack.h:
1459         Ooohh. a nasty one! After having a failed pop() from the stack,
1460         it's possible that the stack is empty. In that case, don't
1461         follow the NULL pointer.
1462
1463 2005-04-25  Wim Taymans  <wim@fluendo.com>
1464
1465         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1466         (gst_pad_set_checkgetrange_function),
1467         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1468         (gst_pad_check_pull_range), (gst_pad_pull_range),
1469         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1470         (gst_pad_pause_task), (gst_pad_stop_task):
1471         * gst/gstplugin.c: (gst_plugin_load):
1472         * gst/gstplugin.h:
1473         Remove gst_library_load as it does more harm than good with
1474         the new g_module flags.
1475         Revert bogus caps template check in pad linking, pad caps
1476         are important when linking not the template, which is more
1477         general than the current caps.
1478
1479 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1480
1481         * gst/autoplug/.cvsignore:
1482         * gst/autoplug/Makefile.am:
1483         * gst/autoplug/gstsearchfuncs.c:
1484         * gst/autoplug/gstsearchfuncs.h:
1485         * gst/autoplug/gstspider.c:
1486         * gst/autoplug/gstspider.h:
1487         * gst/autoplug/gstspideridentity.c:
1488         * gst/autoplug/gstspideridentity.h:
1489         * gst/autoplug/spidertest.c:
1490           Die, spider, die.
1491
1492 2005-04-25  Wim Taymans  <wim@fluendo.com>
1493
1494         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1495         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1496         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1497         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1498         * gst/gstpad.h:
1499         Added stubs for unimplemented functions. 
1500
1501 2005-04-24  David Schleef  <ds@schleef.org>
1502
1503         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1504         please fix.
1505
1506 2005-04-24  David Schleef  <ds@schleef.org>
1507
1508         Convert everything from GstAtomicInt to g_atomic_int_*, and
1509         remove gstatomic.
1510         * gst/Makefile.am:
1511         * gst/gstatomic.c:
1512         * gst/gstatomic.h:
1513         * gst/gstatomic_impl.h:
1514         * gst/gstbuffer.c:
1515         * gst/gstcaps.c:
1516         * gst/gstcaps.h:
1517         * gst/gstclock.c:
1518         * gst/gstclock.h:
1519         * gst/gstdata.c:
1520         * gst/gstdata.h:
1521         * gst/gstdata_private.h:
1522         * gst/gstevent.c:
1523         * gst/gstinfo.c:
1524         * gst/gstinfo.h:
1525         * gst/gstmessage.c:
1526         * gst/gstobject.c:
1527         * gst/gstobject.h:
1528         * gst/gststructure.c:
1529         * gst/gststructure.h:
1530         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1531         * gst/gstutils.h:
1532
1533 2005-04-24  David Schleef  <ds@schleef.org>
1534
1535         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1536         make the regressions tests work.  Remove some code that is no
1537         longer true.
1538         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1539         Disable warning for pads without templates.
1540
1541 2005-04-24  David Schleef  <ds@schleef.org>
1542
1543         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1544         functions that handle filtered links.
1545         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1546         removed functions.
1547         * gst/gstutils.c: Fix/remove utility functions that handle
1548         filtered caps.
1549         * gst/gstutils.h:
1550         * gst/gstvalue.c: Add serialization/deserialization of caps
1551         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1552         requires fixing so that the filter caps notation creates
1553         a capsfilter element and sets the filter_caps property.  I
1554         think everyone probably wants to keep the shorthand notation.
1555         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1556         * docs/gst/tmpl/gstpad.sgml:
1557
1558         * gst/elements/gstelements.c: Register capsfilter element.
1559         * gst/Makefile.am: fix spacing
1560         * docs/random/ds/0.9-suggested-changes: random
1561
1562 2005-04-23  David Schleef  <ds@schleef.org>
1563
1564         * gst/elements/Makefile.am:
1565         * gst/elements/gstcapsfilter.c: New element that acts like an
1566         identity, but filters caps.  Will eventually replace filtered
1567         caps in pad linking.
1568         * gst/gstutils.c: (gst_element_create_all_pads): New function
1569         to create all the ALWAYS pads that are registered with an
1570         element class.  This functionality should eventually be
1571         merged in with GstElement initialization.
1572         * gst/gstutils.h:
1573         * testsuite/trigger/README: part of trigger test code that should
1574         have been checked in a long time ago.
1575
1576 2005-04-23  David Schleef  <ds@schleef.org>
1577
1578         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1579         needed with new versions of libtool (nobody will confirm this),
1580         and hard to carry around.
1581         * gst/autoplug/Makefile.am:
1582         * gst/base/Makefile.am:
1583         * gst/elements/Makefile.am:
1584         * gst/indexers/Makefile.am:
1585         * gst/schedulers/Makefile.am:
1586         * libs/gst/bytestream/Makefile.am:
1587         * libs/gst/control/Makefile.am:
1588         * libs/gst/dataprotocol/Makefile.am:
1589         * libs/gst/getbits/Makefile.am:
1590
1591 2005-04-21  Wim Taymans  <wim@fluendo.com>
1592
1593         * docs/design/draft-push-pull.txt:
1594         * docs/design/part-MT-refcounting.txt:
1595         * docs/design/part-TODO.txt:
1596         * docs/design/part-caps.txt:
1597         * docs/design/part-events.txt:
1598         * docs/design/part-gstbus.txt:
1599         * docs/design/part-gstpipeline.txt:
1600         * docs/design/part-messages.txt:
1601         * docs/design/part-push-pull.txt:
1602         * docs/design/part-query.txt:
1603         Some more docs.
1604
1605 2005-04-21  Wim Taymans  <wim@fluendo.com>
1606
1607         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1608         (gst_message_new), (gst_message_new_error),
1609         (gst_message_new_warning), (gst_message_new_tag),
1610         (gst_message_new_state_changed), (gst_message_new_application),
1611         (gst_message_get_structure):
1612         * gst/gstmessage.h:
1613         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1614         (gst_structure_copy_conditional):
1615         Use parent refcount in GstMessage to ensure GstStructure
1616         consistency.
1617         Cleaned up headers a bit.
1618         
1619
1620 2005-04-20  Wim Taymans  <wim@fluendo.com>
1621
1622         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1623         (gst_basesink_pad_getcaps), (gst_basesink_init),
1624         (gst_basesink_chain_unlocked):
1625         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1626         (gst_type_find_helper):
1627         * gst/elements/gsttypefindelement.c:
1628         (gst_type_find_element_have_type), (gst_type_find_element_init),
1629         (stop_typefinding), (gst_type_find_element_handle_event),
1630         (find_suggest), (gst_type_find_element_chain),
1631         (gst_type_find_element_checkgetrange),
1632         (gst_type_find_element_getrange), (do_typefind),
1633         (gst_type_find_element_activate):
1634         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1635         (gst_buffer_default_free), (gst_buffer_default_copy),
1636         (gst_buffer_set_caps):
1637         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1638         (gst_caps_replace):
1639         * gst/gstmessage.c: (gst_message_new),
1640         (gst_message_new_state_changed):
1641         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1642         (gst_pad_set_checkgetrange_function),
1643         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1644         (gst_pad_set_caps), (gst_pad_check_pull_range),
1645         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1646         * gst/gstpad.h:
1647         * gst/gsttypefind.c: (gst_type_find_register):
1648         Make gst_caps_replace() work like other _replace() functions.
1649         Use _caps_replace() where possible.
1650         Make sure _message_new() initialises its field.
1651         Add gst_static_pad_template_get_caps()
1652
1653
1654 2005-04-18  Andy Wingo  <wingo@pobox.com>
1655
1656         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1657         on the peer, not the pad. I think that was a typo. Pass an extra
1658         arg to see if random access is possible. Activate the pads as
1659         PULL_RANGE if possible.
1660
1661         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1662
1663         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1664         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1665         to PROP_....
1666
1667 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1668
1669         * docs/faq/using.xml:
1670           Add note on gstreamer-properties (#154996).
1671
1672 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1673
1674         * docs/random/bbb/optional-properties:
1675           Some analysis on optional properties.
1676
1677 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1678
1679         * docs/gst/tmpl/gstelementfactory.sgml:
1680         * gst/gstelement.h:
1681         * gst/gstelementfactory.c: (gst_element_factory_init),
1682         (gst_element_factory_cleanup), (gst_element_register),
1683         (__gst_element_factory_add_static_pad_template),
1684         (gst_element_factory_get_static_pad_templates),
1685         (gst_element_factory_can_src_caps),
1686         (gst_element_factory_can_sink_caps):
1687         * gst/registries/Makefile.am:
1688         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1689         (gst_xml_registry_class_init), (gst_xml_registry_init),
1690         (gst_xml_registry_new), (gst_xml_registry_set_property),
1691         (gst_xml_registry_get_property), (get_time), (make_dir),
1692         (gst_xml_registry_get_perms_func),
1693         (plugin_times_older_than_recurse), (plugin_times_older_than),
1694         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1695         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1696         (add_to_char_array), (read_string), (read_uint), (read_enum),
1697         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1698         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1699         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1700         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1701         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1702         (gst_xml_registry_rebuild):
1703         * gst/registries/gstlibxmlregistry.h:
1704         * tools/gst-compprep.c: (main):
1705         * tools/gst-inspect.c: (print_pad_templates_info):
1706         * tools/gst-xmlinspect.c: (print_element_info):
1707           Use libxml2 for registry parsing, use staticpadtemplates in
1708           elementfactories. Makes gst_init() +/- 10x faster.
1709
1710 2005-04-12  Wim Taymans  <wim@fluendo.com>
1711
1712         * gst/base/Makefile.am:
1713         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1714         (gst_basesink_pad_getcaps), (gst_basesink_init),
1715         (gst_basesink_event), (gst_basesink_change_state):
1716         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1717         (gst_basesrc_init), (gst_basesrc_query),
1718         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1719         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1720         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1721         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1722         (gst_basesrc_stop), (gst_basesrc_activate),
1723         (gst_basesrc_change_state):
1724         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1725         (helper_find_suggest), (gst_type_find_helper):
1726         * gst/base/gsttypefindhelper.h:
1727         * gst/elements/Makefile.am:
1728         * gst/elements/gstelements.c:
1729         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1730         (gst_fakesink_get_times), (gst_fakesink_event),
1731         (gst_fakesink_preroll), (gst_fakesink_render):
1732         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1733         (gst_fakesrc_init), (gst_fakesrc_event_handler),
1734         (gst_fakesrc_get_property), (gst_fakesrc_create),
1735         (gst_fakesrc_start), (gst_fakesrc_stop):
1736         * gst/elements/gstfakesrc.h:
1737         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
1738         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1739         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1740         (gst_filesrc_create_read), (gst_filesrc_create),
1741         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
1742         (gst_filesrc_start):
1743         * gst/elements/gsttypefindelement.c:
1744         (gst_type_find_element_have_type), (gst_type_find_element_init),
1745         (start_typefinding), (stop_typefinding), (push_buffer_store),
1746         (gst_type_find_element_handle_event),
1747         (gst_type_find_element_chain),
1748         (gst_type_find_element_checkgetrange),
1749         (gst_type_find_element_getrange), (do_typefind),
1750         (gst_type_find_element_activate),
1751         (gst_type_find_element_change_state):
1752         * gst/elements/gsttypefindelement.h:
1753         * gst/gstpipeline.c: (pipeline_bus_handler):
1754         Added typefind helper.
1755         Small preroll fix in the base sink.
1756         Disable typefind code in basesrc.
1757         Crude port of typefindelement.
1758         Fakesrc cleanups.
1759
1760
1761 2005-04-11  Wim Taymans  <wim@fluendo.com>
1762
1763         * check/gst/gstbus.c: (gstbus_suite):
1764         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
1765         * check/gstcheck.h:
1766           Fix up the timeout so that the test does not fail.
1767
1768 2005-04-06  Wim Taymans  <wim@fluendo.com>
1769
1770         * gst/base/README:
1771         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1772         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
1773         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1774         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1775         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1776         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1777         (gst_basesrc_stop), (gst_basesrc_activate),
1778         (gst_basesrc_change_state), (basesrc_find_peek),
1779         (basesrc_find_suggest), (gst_basesrc_type_find):
1780         * gst/base/gstbasesrc.h:
1781         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1782         (gst_filesrc_class_init), (gst_filesrc_init),
1783         (gst_filesrc_finalize), (gst_filesrc_set_location),
1784         (gst_filesrc_set_property), (gst_filesrc_get_property),
1785         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1786         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1787         (gst_filesrc_create_read), (gst_filesrc_create),
1788         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
1789         * gst/elements/gstfilesrc.h:
1790         * gst/gstelement.c: (gst_element_get_state_func),
1791         (gst_element_lost_state), (gst_element_pads_activate):
1792         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1793         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1794         (gst_pad_pull_range):
1795         * gst/gstpad.h:
1796         More work on the generic source base class, implement seeking,
1797         query.
1798         Make filesrc extend the base source class.
1799         Added gst_pad_set_checkgetrange_function to GstPad.
1800
1801 2005-04-06  Andy Wingo  <wingo@pobox.com>
1802
1803         * pkgconfig/gstreamer-base.pc.in:
1804         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
1805
1806         * pkgconfig/Makefile.am:
1807         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
1808
1809 2005-04-04  Wim Taymans  <wim@fluendo.com>
1810
1811         * gst/base/Makefile.am:
1812         * gst/base/README:
1813         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1814         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1815         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1816         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
1817         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1818         (gst_basesrc_base_init), (gst_basesrc_class_init),
1819         (gst_basesrc_init), (gst_basesrc_get_formats),
1820         (gst_basesrc_get_query_types), (gst_basesrc_query),
1821         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
1822         (gst_basesrc_set_property), (gst_basesrc_get_property),
1823         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
1824         (gst_basesrc_loop), (gst_basesrc_activate),
1825         (gst_basesrc_change_state):
1826         * gst/base/gstbasesrc.h:
1827         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1828         (gst_fakesrc_class_init), (gst_fakesrc_init),
1829         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
1830         (gst_fakesrc_get_property), (gst_fakesrc_create):
1831         * gst/elements/gstfakesrc.h:
1832         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
1833         (gst_filesrc_open_file), (gst_filesrc_loop),
1834         (gst_filesrc_activate), (filesrc_find_peek),
1835         (gst_filesrc_type_find):
1836         Made base source class, make fakesrc extend it.
1837         Add comments to basesink class.
1838         Some filesrc cleanup.
1839
1840 2005-03-31  David Schleef  <ds@schleef.org>
1841
1842         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
1843         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
1844         expected to link against libgstreamer.
1845         * gst/base/Makefile.am: link against libgstreamer
1846         * gst/elements/Makefile.am: same
1847
1848 2005-03-31  Andy Wingo  <wingo@pobox.com>
1849
1850         * tests/instantiate/Makefile.am:
1851         * tests/instantiate/caps.c: Add test to test speed of caps copy
1852         and free.
1853
1854         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
1855         GMemChunk to be fair.
1856
1857         * gst/gsttrashstack.h: Remove warning about using the fallback
1858         trash stack implementation, it's still faster than malloc.
1859
1860 2005-03-30  Andy Wingo  <wingo@pobox.com>
1861
1862         * tests/complexity.c: Add a copyright.
1863
1864 2005-03-31  Wim Taymans  <wim@fluendo.com>
1865
1866         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
1867         (gst_base_transform_class_init), (gst_base_transform_init),
1868         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1869         (gst_base_transform_get_property),
1870         (gst_base_transform_sink_activate),
1871         (gst_base_transform_src_activate),
1872         (gst_base_transform_change_state):
1873         * gst/base/gstbasetransform.h:
1874         * gst/elements/gstidentity.c: (gst_identity_class_init),
1875         (gst_identity_event), (gst_identity_check_perfect),
1876         (gst_identity_transform), (gst_identity_start),
1877         (gst_identity_stop):
1878         Added start/stop methods to transform base class so subclasses 
1879         don't need to deal with state changes even.
1880
1881 2005-03-31  Wim Taymans  <wim@fluendo.com>
1882
1883         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
1884         (gst_event_new_discontinuous), (gst_event_discont_get_value):
1885         * gst/gstevent.h:
1886         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1887         (gst_pad_pull_range):
1888         Added rate to the discont event to prepare for variable speed
1889         and reverse playback.
1890
1891 2005-03-29  David Schleef  <ds@schleef.org>
1892
1893         * configure.ac:
1894         * testsuite/trigger/Makefile.am:
1895         * testsuite/trigger/trigger.c: A little example program to show
1896         how trigger-based elements can work.
1897
1898 2005-03-29  Wim Taymans  <wim@fluendo.com>
1899
1900         * gst/base/Makefile.am:
1901         * gst/base/README:
1902         * gst/base/gstbasesink.c: (gst_basesink_get_type),
1903         (gst_basesink_base_init), (gst_basesink_class_init),
1904         (gst_basesink_pad_getcaps), (gst_basesink_init),
1905         (gst_basesink_activate), (gst_basesink_change_state):
1906         * gst/base/gstbasesink.h:
1907         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
1908         (gst_base_transform_base_init), (gst_base_transform_finalize),
1909         (gst_base_transform_class_init), (gst_base_transform_init),
1910         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
1911         (gst_base_transform_event), (gst_base_transform_getrange),
1912         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
1913         (gst_base_transform_set_property),
1914         (gst_base_transform_get_property),
1915         (gst_base_transform_sink_activate),
1916         (gst_base_transform_src_activate),
1917         (gst_base_transform_change_state):
1918         * gst/base/gstbasetransform.h:
1919         * gst/elements/gstidentity.c: (gst_identity_finalize),
1920         (gst_identity_class_init), (gst_identity_init),
1921         (gst_identity_event), (gst_identity_check_perfect),
1922         (gst_identity_transform), (gst_identity_set_property),
1923         (gst_identity_get_property), (gst_identity_change_state):
1924         * gst/elements/gstidentity.h:
1925         * gst/gstelement.c: (gst_element_get_state_func),
1926         (gst_element_lost_state), (gst_element_pads_activate):
1927         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1928         (gst_pad_check_pull_range), (gst_pad_pull_range):
1929         * gst/gstpad.h:
1930         Simplify pad activation.
1931         Added function to check if pull_range can be performed.
1932         Error out when pulling inactive or flushing pads.
1933         Removed const from refcounted types as it does not make sense.
1934         Simplify pad templates in basesink
1935         Added base class for simple 1-to-1 transforms.
1936         Make identity subclass the base transform.
1937
1938 2005-03-29  Andy Wingo  <wingo@pobox.com>
1939
1940         * docs/libs/gstreamer-libs-overrides.txt: 
1941         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
1942         really don't understand what's going on, but like whatever. I want
1943         green buildbot!
1944
1945         * docs/gst/Makefile.am:
1946         * docs/libs/Makefile.am: Dist the overrides files.
1947
1948         * check/Makefile.am (clean-local): Remove .libs directories.
1949
1950         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
1951         elements to EXTRA_DIST, so po/ files are happy.
1952
1953         * po/POTFILES.in: Er, remove it here.
1954
1955         * po/POTFILES: Remove gstspider.c.
1956
1957         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
1958
1959         * docs/libs/gstreamer-libs-docs.sgml: 
1960         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
1961         bytestream.
1962
1963         * tests/complexity.c (main): Set the length of the preroll queue
1964         on the sinks to prevent a lockup.
1965
1966         * libs/gst/dataprotocol/Makefile.am: 
1967         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
1968         the same as the one in check/gst-libs/gdp.c.
1969
1970         * po/, docs/gst/: Commit automatic changes to docs and po files.
1971
1972         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
1973         the versioned libgstbase.
1974
1975         * check/Makefile.am: Depend on an unversioned gst-register, seems
1976         to make autoconf happier.
1977
1978         * gst/base/Makefile.am: Make libgstbase a versioned lib.
1979
1980 2005-03-28  Wim Taymans  <wim@fluendo.com>
1981
1982         * configure.ac:
1983         * docs/design/part-gstelement.txt:
1984         * docs/design/part-negotiation.txt:
1985         * docs/design/part-preroll.txt:
1986         * docs/design/part-scheduling.txt:
1987         * docs/design/part-states.txt:
1988         * gst/Makefile.am:
1989         * gst/base/Makefile.am:
1990         * gst/base/README:
1991         * gst/base/gstbasesink.c: (gst_basesink_get_template),
1992         (gst_basesink_base_init), (gst_basesink_class_init),
1993         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1994         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1995         (gst_basesink_set_pad_functions),
1996         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
1997         (gst_basesink_set_property), (gst_basesink_get_property),
1998         (gst_base_sink_get_template), (gst_base_sink_get_caps),
1999         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2000         (gst_basesink_preroll_queue_push),
2001         (gst_basesink_preroll_queue_empty),
2002         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2003         (gst_basesink_event), (gst_basesink_get_times),
2004         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2005         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2006         (gst_basesink_loop), (gst_basesink_activate),
2007         (gst_basesink_change_state):
2008         * gst/base/gstbasesink.h:
2009         * gst/elements/Makefile.am:
2010         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2011         (gst_fakesink_class_init), (gst_fakesink_init),
2012         (gst_fakesink_set_property), (gst_fakesink_get_property),
2013         (gst_fakesink_get_times), (gst_fakesink_event),
2014         (gst_fakesink_preroll), (gst_fakesink_render),
2015         (gst_fakesink_change_state):
2016         * gst/elements/gstfakesink.h:
2017         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2018         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2019         * gst/gstelement.c: (gst_element_add_pad),
2020         (gst_element_get_state_func), (gst_element_abort_state),
2021         (gst_element_commit_state), (gst_element_lost_state),
2022         (gst_element_set_state), (gst_element_pads_activate):
2023         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2024         * gst/gstpipeline.c: (gst_pipeline_send_event),
2025         (gst_pipeline_change_state):
2026         Added state change code.
2027         Added/updated docs.
2028         Added sink base class, make fakesink extend the base class.
2029         Small cleanups in GstPipeline.
2030
2031 2005-03-26  David Schleef  <ds@schleef.org>
2032
2033         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2034         is broken and should be implemented in a different library.
2035         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2036         * gst/gst.h: remove gstcpu.h
2037         * gst/gstcpu.c: remove
2038         * gst/gstcpu.h: remove
2039         * gst/Makefile.am.future: Remove this file.  It's ancient.
2040
2041 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2042
2043         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2044         (gst_bin_send_event):
2045           Add default event/set_manager handlers. The set_manager handler
2046           takes care that the manager is distributed over kids that were
2047           already in the bin before the manager was set. The event handler
2048           is a utility virtual function that sends the event over all sinks,
2049           so that gst_element_send_event (bin, event); has the expected
2050           behaviour.
2051         * gst/gstpad.c: (gst_pad_event_default):
2052           Re-install default event handling for discontinuities, so that
2053           seeking works without requiring hacks in applications or extra
2054           code in sinks.
2055         * gst/gstpipeline.c: (gst_pipeline_class_init),
2056         (gst_pipeline_send_event):
2057           Half hack, half utility: set a pipeline to PAUSED for seek events,
2058           since that is the only way we can guarantee a/v sync. Means that
2059           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2060           and it "just works".
2061
2062 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2063
2064         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2065           Lock/unlock mismatch.
2066
2067 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2068
2069         * docs/faq/gst-uninstalled:
2070           add gst-plugins-base
2071         * docs/gst/Makefile.am:
2072           don't error out until docs are fixed
2073         * docs/gst/gstreamer.types:
2074           remove thread
2075
2076 2005-03-22  Wim Taymans  <wim@fluendo.com>
2077
2078         * check/Makefile.am:
2079         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2080         * gst/gststructure.c: (gst_structure_set_valist),
2081         (gst_structure_copy_conditional):
2082         Activated more tests.
2083         Added message test.
2084         Added G_TYPE_POINTER to GstStructure.
2085         
2086
2087 2005-03-22  Wim Taymans  <wim@fluendo.com>
2088
2089         * docs/design/part-TODO.txt:
2090         * docs/design/part-events.txt:
2091         * docs/design/part-gstbin.txt:
2092         * docs/design/part-gstbus.txt:
2093         * docs/design/part-gstpipeline.txt:
2094         * docs/design/part-messages.txt:
2095         * gst/gstbus.c:
2096         * gst/gstmessage.c:
2097         Docs updates
2098
2099 2005-03-21  Wim Taymans  <wim@fluendo.com>
2100
2101         * gst/gstbus.c: (gst_bus_post):
2102         Fix copy-and-paste error.
2103
2104 2005-03-21  Wim Taymans  <wim@fluendo.com>
2105
2106         * check/Makefile.am:
2107         * gst/Makefile.am:
2108         * gst/elements/Makefile.am:
2109         * gst/elements/gstelements.c:
2110         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2111         (gst_fakesink_event), (gst_fakesink_chain):
2112         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2113         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2114         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2115         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2116         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2117         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2118         (gst_fakesrc_loop), (gst_fakesrc_activate),
2119         (gst_fakesrc_change_state):
2120         * gst/elements/gstfakesrc.h:
2121         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2122         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2123         (gst_filesrc_open_file), (gst_filesrc_loop),
2124         (gst_filesrc_activate), (gst_filesrc_change_state),
2125         (filesrc_find_peek), (filesrc_find_suggest),
2126         (gst_filesrc_type_find):
2127         * gst/elements/gstidentity.c: (gst_identity_finalize),
2128         (gst_identity_class_init), (gst_identity_init),
2129         (gst_identity_proxy_getcaps), (identity_queue_push),
2130         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2131         (gst_identity_getrange), (gst_identity_chain),
2132         (gst_identity_sink_loop), (gst_identity_src_loop),
2133         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2134         (gst_identity_set_property), (gst_identity_get_property),
2135         (gst_identity_change_state):
2136         * gst/elements/gstidentity.h:
2137         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2138         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2139         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2140         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2141         (gst_tee_sink_activate):
2142         * gst/elements/gsttee.h:
2143         * gst/gst.c: (gst_register_core_elements), (init_post):
2144         * gst/gst.h:
2145         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2146         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2147         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2148         (gst_bin_change_state):
2149         * gst/gstbin.h:
2150         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2151         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2152         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2153         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2154         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2155         (bus_watch_callback), (bus_watch_destroy),
2156         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2157         (poll_timeout), (gst_bus_poll):
2158         * gst/gstbus.h:
2159         * gst/gstcaps.h:
2160         * gst/gstdata.h:
2161         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2162         (gst_element_post_message), (gst_element_message_full),
2163         (gst_element_get_state_func), (gst_element_get_state),
2164         (gst_element_abort_state), (gst_element_commit_state),
2165         (gst_element_lost_state), (gst_element_set_state),
2166         (gst_element_pads_activate), (gst_element_change_state),
2167         (gst_element_dispose), (gst_element_set_manager_func),
2168         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2169         (gst_element_set_manager), (gst_element_get_manager),
2170         (gst_element_set_bus), (gst_element_get_bus),
2171         (gst_element_set_scheduler), (gst_element_get_scheduler):
2172         * gst/gstelement.h:
2173         * gst/gstevent.c: (gst_event_new_segment_seek),
2174         (gst_event_new_flush):
2175         * gst/gstevent.h:
2176         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2177         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2178         (gst_message_new_eos), (gst_message_new_error),
2179         (gst_message_new_warning), (gst_message_new_tag),
2180         (gst_message_new_state_changed), (gst_message_new_application),
2181         (gst_message_get_structure), (gst_message_parse_tag),
2182         (gst_message_parse_state_changed), (gst_message_parse_error),
2183         (gst_message_parse_warning):
2184         * gst/gstmessage.h:
2185         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2186         (gst_real_pad_set_property), (gst_pad_set_active),
2187         (gst_pad_is_active), (gst_pad_set_blocked_async),
2188         (gst_pad_set_blocked), (gst_pad_is_blocked),
2189         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2190         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2191         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2192         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2193         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2194         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2195         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2196         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2197         (gst_pad_set_caps), (gst_pad_configure_sink),
2198         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2199         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2200         (gst_real_pad_dispose), (gst_real_pad_finalize),
2201         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2202         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2203         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2204         * gst/gstpad.h:
2205         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2206         (pipeline_bus_handler), (gst_pipeline_change_state),
2207         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2208         * gst/gstpipeline.h:
2209         * gst/gstprobe.h:
2210         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2211         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2212         (gst_queue_link_src), (gst_queue_bufferalloc),
2213         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2214         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2215         (gst_queue_loop), (gst_queue_handle_src_event),
2216         (gst_queue_handle_src_query), (gst_queue_src_activate),
2217         (gst_queue_change_state):
2218         * gst/gstqueue.h:
2219         * gst/gstscheduler.c: (gst_scheduler_init),
2220         (gst_scheduler_dispose), (gst_scheduler_create_task),
2221         (gst_scheduler_factory_create):
2222         * gst/gstscheduler.h:
2223         * gst/gststructure.c: (gst_structure_get_type),
2224         (gst_structure_copy_conditional):
2225         * gst/gststructure.h:
2226         * gst/gsttaginterface.h:
2227         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2228         (gst_task_init), (gst_task_dispose), (gst_task_create),
2229         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2230         (gst_task_pause):
2231         * gst/gsttask.h:
2232         * gst/gstthread.c:
2233         * gst/gstthread.h:
2234         * gst/gsttypes.h:
2235         * gst/schedulers/Makefile.am:
2236         * gst/schedulers/cothreads_compat.h:
2237         * gst/schedulers/entryscheduler.c:
2238         * gst/schedulers/faircothreads.c:
2239         * gst/schedulers/faircothreads.h:
2240         * gst/schedulers/fairscheduler.c:
2241         * gst/schedulers/gstbasicscheduler.c:
2242         * gst/schedulers/gstoptimalscheduler.c:
2243         * gst/schedulers/gthread-cothreads.h:
2244         * gst/schedulers/threadscheduler.c:
2245         (gst_thread_scheduler_task_get_type),
2246         (gst_thread_scheduler_task_class_init),
2247         (gst_thread_scheduler_task_init),
2248         (gst_thread_scheduler_task_start),
2249         (gst_thread_scheduler_task_stop),
2250         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2251         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2252         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2253         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2254         (plugin_init):
2255         * libs/gst/Makefile.am:
2256         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2257         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2258         (gst_file_pad_parent_set):
2259         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2260         (gst_dp_event_from_packet):
2261         * tests/complexity.c: (main):
2262         * tests/mass_elements.c: (main):
2263         * testsuite/states/locked.c: (message_received), (main):
2264         * testsuite/states/parent.c: (main):
2265         * tools/gst-inspect.c: (print_element_flag_info),
2266         (print_implementation_info), (print_pad_info):
2267         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2268         (main):
2269         * tools/gst-md5sum.c: (event_loop), (main):
2270         * tools/gst-typefind.c: (main):
2271         * tools/gst-xmlinspect.c: (print_element_info):
2272         Next big merge.
2273         Added GstBus for mainloop integration.
2274         Added GstMessage for sending notifications on the bus.
2275         Added GstTask as an abstraction for pipeline entry points.
2276         Removed GstThread.
2277         Removed Schedulers.
2278         Simplified GstQueue for multithreaded core.
2279         Made _link threadsafe, removed old capsnego.
2280         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2281         Added pad blocking functions.
2282         Reworked scheduling functions in GstPad to prepare for
2283         scheduling updates soon.
2284         Moved events out of data stream.
2285         Simplified GstEvent types.
2286         Added return values to push/pull.
2287         Removed clocking from GstElement.
2288         Added prototypes for state change function for next merge.
2289         Removed iterate from bins and state change management.
2290         Fixed some elements, disabled others for now.
2291         Fixed -inspect and -launch.
2292         Added check for GstBus.
2293
2294 2005-03-10  Wim Taymans  <wim@fluendo.com>
2295
2296         * docs/design/part-MT-refcounting.txt:
2297         * docs/design/part-clocks.txt:
2298         * docs/design/part-gstelement.txt:
2299         * docs/design/part-gstobject.txt:
2300         * docs/design/part-standards.txt:
2301         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2302         (gst_bin_remove_func), (gst_bin_remove):
2303         * gst/gstbin.h:
2304         * gst/gstbuffer.c:
2305         * gst/gstcaps.h:
2306         * testsuite/clock/clock1.c: (main):
2307         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2308         (main):
2309         * testsuite/dlopen/loadgst.c: (do_test):
2310         * testsuite/refcounting/bin.c: (add_remove_test1),
2311         (add_remove_test2), (main):
2312         * testsuite/refcounting/element.c: (main):
2313         * testsuite/refcounting/element_pad.c: (main):
2314         * testsuite/refcounting/pad.c: (main):
2315         * tools/gst-launch.c: (sigint_handler_sighandler):
2316         * tools/gst-typefind.c: (main):
2317         Doc updates.
2318         Added doc about clock.
2319         removed gst_bin_iterate_recurse_up(), marked methods
2320         for removal.
2321         Fix more testsuites.
2322
2323 2005-03-09  Wim Taymans  <wim@fluendo.com>
2324
2325         * gst/gstpad.c: (gst_pad_get_direction),
2326         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2327         (gst_pad_collect_valist):
2328         * testsuite/bins/interface.c: (main):
2329         * testsuite/caps/audioscale.c: (test_caps):
2330         * testsuite/caps/caps.c: (test1), (test2), (test3):
2331         * testsuite/caps/deserialize.c: (main):
2332         * testsuite/caps/enumcaps.c: (main):
2333         * testsuite/caps/filtercaps.c: (main):
2334         * testsuite/caps/intersect2.c: (main):
2335         * testsuite/caps/random.c: (main):
2336         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2337         * testsuite/caps/sets.c: (check_caps):
2338         * testsuite/caps/simplify.c: (check_caps), (main):
2339         * testsuite/caps/subtract.c: (check_caps):
2340         Fix _pad_get_direction wrt ghostpads.
2341         Fix caps testsuite.
2342
2343 2005-03-09  Wim Taymans  <wim@fluendo.com>
2344
2345         * check/Makefile.am:
2346         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2347         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2348         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2349         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2350         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2351         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2352         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2353         (bin_element_is_sink), (gst_bin_iterate_sinks),
2354         (gst_bin_iterate_all_by_interface):
2355         * gst/gstbin.h:
2356         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2357         (gst_element_change_state), (gst_element_dispose),
2358         (gst_element_finalize), (gst_element_set_loop_function):
2359         * gst/gstelement.h:
2360         * gst/gstiterator.c: (find_custom_fold_func):
2361         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2362         (gst_pad_collectv), (gst_pad_collect_valist),
2363         (gst_pad_template_new):
2364         * gst/gstpipeline.c: (gst_pipeline_class_init),
2365         (gst_pipeline_dispose), (gst_pipeline_set_property),
2366         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2367         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2368         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2369         * gst/gstutils.h:
2370         * gst/schedulers/entryscheduler.c:
2371         * gst/schedulers/gstbasicscheduler.c:
2372         (gst_basic_scheduler_cothreaded_chain),
2373         (gst_basic_scheduler_chain_add_element):
2374         * testsuite/bins/interface.c: (main):
2375         Added GstBin test.
2376         Added GstSystemClock test.
2377         Implemented clock distribution code in GstBin.
2378         Implemented iterate sinks method for future use.
2379         Rearranged gstelement.h
2380         Fix GstIterator comparison bug.
2381         Moved some code to GstPipeline, mostly clocking related.
2382
2383 2005-03-09  Wim Taymans  <wim@fluendo.com>
2384
2385         * configure.ac:
2386         * gst/gst_private.h:
2387         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2388         (gst_bin_remove_func), (gst_bin_remove),
2389         (gst_bin_get_by_name_recurse_up):
2390         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2391         (gst_clock_id_compare_func), (gst_clock_id_wait),
2392         (gst_clock_id_wait_async), (gst_clock_init),
2393         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2394         * gst/gstelement.h:
2395         * gst/gstinfo.c: (_gst_debug_init):
2396         * gst/gstobject.h:
2397         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2398         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2399         * gst/gstpad.h:
2400         Bump version number, we're now 0.9.0
2401         Add future debugging category.
2402         Fix NULL _unref() in _get_by_name_recurse_up
2403         Rearrange gstpad.h.
2404         Update some docs.
2405
2406 2005-03-08  Wim Taymans  <wim@fluendo.com>
2407
2408         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2409         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2410         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2411         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2412         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2413         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2414         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2415         * gst/elements/gstidentity.c: (gst_identity_class_init):
2416         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2417         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2418         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2419         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2420         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2421         (gst_tee_link):
2422         * gst/gstelement.c: (gst_element_class_init),
2423         (gst_element_base_class_init), (gst_element_init),
2424         (gst_element_get_random_pad), (gst_element_wait_state_change),
2425         (gst_element_change_state), (gst_element_dispose),
2426         (gst_element_finalize), (gst_element_set_loop_function):
2427         * gst/gstelement.h:
2428         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2429         * gst/gstthread.c: (gst_thread_class_init),
2430         (gst_thread_release_children_locks), (gst_thread_change_state):
2431         * gst/schedulers/gstbasicscheduler.c:
2432         (gst_basic_scheduler_loopfunc_wrapper),
2433         (gst_basic_scheduler_chain_wrapper),
2434         (gst_basic_scheduler_src_wrapper),
2435         (gst_basic_scheduler_remove_element):
2436         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2437         Remove threadsafe properties. Fix elements because GObject
2438         complains when installing a property before declaring a
2439         set/get_property handler.
2440         Rearrange gstelement.h file, use STATE macros for state locks.
2441         Free mutexes in the finalize method instead of dispose.
2442
2443 2005-03-08  Wim Taymans  <wim@fluendo.com>
2444
2445         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2446         * gst/gstthread.c: (gst_thread_release_children_locks):
2447         Added parentage check.
2448         Fix build og GstThread again.
2449
2450 2005-03-08  Wim Taymans  <wim@fluendo.com>
2451
2452         * docs/design/part-MT-refcounting.txt:
2453         * docs/design/part-conventions.txt:
2454         * docs/design/part-gstobject.txt:
2455         * docs/design/part-relations.txt:
2456         * docs/design/part-standards.txt:
2457         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2458         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2459         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2460         (gst_bin_iterate_all_by_interface):
2461         * gst/gstbuffer.h:
2462         * gst/gstclock.h:
2463         * gst/gstelement.c: (gst_element_class_init),
2464         (gst_element_change_state), (gst_element_set_loop_function):
2465         * gst/gstelement.h:
2466         * gst/gstiterator.c:
2467         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2468         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2469         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2470         (gst_object_set_parent), (gst_object_unparent),
2471         (gst_object_check_uniqueness):
2472         * gst/gstobject.h:
2473         Docs updates, clean up some headers.
2474
2475 2005-03-07  Wim Taymans  <wim@fluendo.com>
2476
2477         * check/.cvsignore:
2478         * check/Makefile.am:
2479         * check/gst-libs/.cvsignore:
2480         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2481         * check/gst/.cvsignore:
2482         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2483         (START_TEST), (gstbus_suite), (main):
2484         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2485         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2486         (gst_data_suite), (main):
2487         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2488         (add_fold_func), (gstiterator_suite), (main):
2489         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2490         (thread_name_object), (thread_name_object_default),
2491         (gst_object_name_compare), (gst_object_suite), (main):
2492         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2493         (gst_pad_suite), (main):
2494         * check/gstcheck.c: (gst_check_log_message_func),
2495         (gst_check_log_critical_func), (gst_check_init):
2496         * check/gstcheck.h:
2497         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2498         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2499         Added checks.
2500
2501 2005-03-07  Wim Taymans  <wim@fluendo.com>
2502
2503         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2504         (gst_list_iterator_next), (gst_list_iterator_resync),
2505         (gst_list_iterator_free), (gst_iterator_new_list),
2506         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2507         (gst_iterator_free), (gst_iterator_push), (filter_next),
2508         (filter_resync), (filter_uninit), (filter_free),
2509         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2510         (gst_iterator_foreach), (find_custom_fold_func),
2511         (gst_iterator_find_custom):
2512         * gst/gstiterator.h:
2513         Added missing files.
2514
2515 2005-03-07  Wim Taymans  <wim@fluendo.com>
2516
2517         * Makefile.am:
2518         * configure.ac:
2519         * docs/design/part-MT-refcounting.txt:
2520         * docs/design/part-conventions.txt:
2521         * docs/design/part-gstobject.txt:
2522         * docs/design/part-relations.txt:
2523         * examples/mixer/mixer.c: (main):
2524         * examples/thread/thread.c: (eos), (main):
2525         * gst/Makefile.am:
2526         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2527         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2528         (gst_spider_plug_from_srcpad):
2529         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2530         (gst_spider_identity_change_state),
2531         (gst_spider_identity_sink_loop_type_finding):
2532         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2533         * gst/elements/gstidentity.c: (gst_identity_init):
2534         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2535         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2536         * gst/elements/gsttypefindelement.c: (free_entry):
2537         * gst/gst.c:
2538         * gst/gst.h:
2539         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2540         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2541         (gst_bin_set_index), (gst_bin_set_element_sched),
2542         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2543         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2544         (gst_bin_iterate_elements), (iterate_child_recurse),
2545         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2546         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2547         (compare_interface), (gst_bin_get_by_interface),
2548         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2549         * gst/gstbin.h:
2550         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2551         (gst_buffer_default_free), (gst_buffer_default_copy),
2552         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2553         (gst_buffer_create_sub):
2554         * gst/gstbuffer.h:
2555         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2556         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2557         (gst_caps_unref), (gst_static_caps_get),
2558         (gst_caps_remove_and_get_structure), (gst_caps_append),
2559         (gst_caps_append_structure), (gst_caps_remove_structure),
2560         (gst_caps_copy_nth), (gst_caps_set_simple),
2561         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2562         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2563         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2564         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2565         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2566         (gst_caps_structure_figure_out_union),
2567         (gst_caps_switch_structures), (gst_caps_do_simplify),
2568         (gst_caps_replace), (gst_caps_from_string),
2569         (gst_caps_copy_conditional):
2570         * gst/gstcaps.h:
2571         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2572         (_gst_clock_id_free), (gst_clock_id_unref),
2573         (gst_clock_id_compare_func), (gst_clock_id_wait),
2574         (gst_clock_id_wait_async), (gst_clock_class_init),
2575         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2576         (gst_clock_get_time), (gst_clock_set_time_adjust),
2577         (gst_clock_set_property), (gst_clock_get_property):
2578         * gst/gstclock.h:
2579         * gst/gstcompat.h:
2580         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2581         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2582         * gst/gstdata.h:
2583         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2584         (gst_element_requires_clock), (gst_element_provides_clock),
2585         (gst_element_set_clock), (gst_element_clock_wait),
2586         (gst_element_wait), (gst_element_set_time_delay),
2587         (gst_element_is_indexable), (gst_element_add_pad),
2588         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2589         (pad_compare_name), (gst_element_get_static_pad),
2590         (gst_element_request_pad), (gst_element_get_request_pad),
2591         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2592         (gst_element_class_get_pad_template_list),
2593         (gst_element_class_get_pad_template), (gst_element_error_func),
2594         (gst_element_get_random_pad), (gst_element_get_event_masks),
2595         (gst_element_send_event), (gst_element_seek),
2596         (gst_element_get_query_types), (gst_element_query),
2597         (gst_element_get_formats), (gst_element_convert),
2598         (gst_element_is_locked_state), (gst_element_set_locked_state),
2599         (gst_element_sync_state_with_parent), (gst_element_change_state),
2600         (gst_element_finalize), (gst_element_yield),
2601         (gst_element_interrupt), (gst_element_set_scheduler),
2602         (gst_element_get_scheduler), (gst_element_set_loop_function):
2603         * gst/gstelement.h:
2604         * gst/gstevent.h:
2605         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2606         (gst_format_get_by_nick), (gst_format_get_details),
2607         (gst_format_iterate_definitions):
2608         * gst/gstformat.h:
2609         * gst/gstindex.c: (gst_index_gtype_resolver):
2610         * gst/gstinfo.c:
2611         * gst/gstinfo.h:
2612         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2613         (gst_mem_chunk_free):
2614         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2615         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2616         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2617         (gst_object_dispatch_properties_changed),
2618         (gst_object_set_name_default), (gst_object_set_name),
2619         (gst_object_get_name), (gst_object_set_name_prefix),
2620         (gst_object_get_name_prefix), (gst_object_set_parent),
2621         (gst_object_get_parent), (gst_object_unparent),
2622         (gst_object_check_uniqueness), (gst_object_save_thyself),
2623         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2624         (gst_object_set_property), (gst_object_get_property),
2625         (gst_object_get_path_string):
2626         * gst/gstobject.h:
2627         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2628         (gst_real_pad_init), (gst_real_pad_get_property),
2629         (gst_pad_custom_new), (gst_pad_get_direction),
2630         (gst_pad_set_active), (gst_pad_is_active),
2631         (gst_pad_set_event_function), (gst_pad_is_linked),
2632         (gst_pad_link_free), (gst_pad_link_intersect),
2633         (gst_pad_link_fixate), (gst_pad_set_caps),
2634         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2635         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2636         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2637         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2638         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2639         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2640         (gst_pad_realize), (gst_pad_get_allowed_caps),
2641         (gst_real_pad_dispose), (gst_real_pad_finalize),
2642         (gst_pad_collectv), (gst_pad_collect_valist),
2643         (gst_pad_template_dispose), (gst_pad_template_new),
2644         (gst_pad_get_internal_links):
2645         * gst/gstpad.h:
2646         * gst/gstpipeline.c: (gst_pipeline_dispose),
2647         (gst_pipeline_change_state):
2648         * gst/gstpipeline.h:
2649         * gst/gstplugin.c:
2650         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2651         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2652         * gst/gstpluginfeature.h:
2653         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2654         * gst/gstquery.c: (_gst_query_type_initialize),
2655         (gst_query_type_register), (gst_query_type_get_by_nick),
2656         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2657         * gst/gstquery.h:
2658         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2659         * gst/gstscheduler.c: (gst_scheduler_add_element),
2660         (gst_scheduler_factory_create):
2661         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2662         (gst_structure_free), (gst_structure_set_name),
2663         (gst_structure_id_set_value), (gst_structure_set_value),
2664         (gst_structure_set_valist), (gst_structure_remove_field),
2665         (gst_structure_remove_fields),
2666         (gst_structure_remove_fields_valist),
2667         (gst_structure_remove_all_fields), (gst_structure_foreach),
2668         (gst_structure_map_in_place),
2669         (gst_caps_structure_fixate_field_nearest_int),
2670         (gst_caps_structure_fixate_field_nearest_double):
2671         * gst/gststructure.h:
2672         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2673         (gst_system_clock_init), (gst_system_clock_dispose),
2674         (gst_system_clock_async_thread),
2675         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2676         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2677         * gst/gstsystemclock.h:
2678         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2679         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2680         * gst/gsttaginterface.c:
2681         * gst/gstthread.c: (gst_thread_dispose),
2682         (gst_thread_release_children_locks), (gst_thread_change_state),
2683         (gst_thread_main_loop):
2684         * gst/gsttrashstack.h:
2685         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2686         * gst/gsttypes.h:
2687         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2688         (gst_element_request_pad), (gst_element_get_pad_from_template),
2689         (gst_element_request_compatible_pad),
2690         (gst_element_get_compatible_pad_filtered),
2691         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2692         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2693         (gst_element_link_many), (gst_element_link),
2694         (gst_element_link_pads), (gst_element_unlink_pads),
2695         (gst_element_unlink_many), (gst_element_unlink),
2696         (gst_pad_can_link_filtered), (gst_pad_can_link),
2697         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2698         (gst_object_default_error), (gst_bin_add_many),
2699         (gst_bin_remove_many), (gst_element_populate_std_props),
2700         (gst_element_class_install_std_props), (gst_buffer_merge),
2701         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2702         (link_fold_func), (gst_pad_proxy_setcaps):
2703         * gst/gstutils.h:
2704         * gst/gstvalue.c: (gst_value_deserialize_string):
2705         * gst/parse/grammar.y:
2706         * gst/schedulers/gstbasicscheduler.c:
2707         (gst_basic_scheduler_cothreaded_chain),
2708         (gst_basic_scheduler_chain_recursive_add),
2709         (gst_basic_scheduler_pad_link):
2710         * gst/schedulers/gstoptimalscheduler.c:
2711         (get_group_schedule_function),
2712         (gst_opt_scheduler_state_transition),
2713         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2714         * libs/gst/bytestream/bytestream.c:
2715         * libs/gst/dataprotocol/dataprotocol.c:
2716         (gst_dp_header_from_buffer):
2717         * po/nb.po:
2718         * po/ru.po:
2719         * tests/threadstate/threadstate2.c: (eos):
2720         * tools/gst-compprep.c: (main):
2721         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
2722         (print_pad_info), (print_children_info):
2723         * tools/gst-launch.c: (idle_func), (main):
2724         * tools/gst-md5sum.c: (idle_func), (main):
2725         * tools/gst-xmlinspect.c: (print_element_info):
2726         First THREADED backport attempt, focusing on adding locks and
2727         making sure the API is threadsafe. Needs more work. More docs
2728         follow this week.
2729
2730 2005-02-24  Andy Wingo  <wingo@pobox.com>
2731
2732         * tests/bench-complexity.scm:
2733         * tests/complexity.gnuplot: New files, good for running complexity
2734         benchmarks.
2735
2736         * tests/Makefile.am:
2737         * tests/complexity.c: New test, sets up N elements, at each level
2738         teeing into M streams per element. Eeeenteresting.
2739
2740         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
2741         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
2742         running bench-mass_elements.scm.
2743
2744         * tests/bench-mass_elements.scm: New script, runs mass_elements
2745         for various numbers of identities, outputting the results to a
2746         file. Requires guile 1.6. Just for testing.
2747
2748 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2749
2750         * gst/schedulers/fairscheduler.c:
2751           compile with debug disabled
2752
2753 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2754
2755         * configure.ac:
2756           hunting season on 0.9 is now OPEN
2757
2758 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2759
2760         * docs/libs/tmpl/gstcontrol.sgml:
2761         * docs/libs/tmpl/gstdparam.sgml:
2762         * docs/libs/tmpl/gstdplinint.sgml:
2763         * docs/libs/tmpl/gstdpman.sgml:
2764         * docs/libs/tmpl/gstdpsmooth.sgml:
2765         * docs/libs/tmpl/gstunitconvert.sgml:
2766           more docs for the state of dparams
2767
2768 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2769
2770         * gst/gstelementfactory.c: (gst_element_factory_create):
2771         * gst/gstobject.c: (gst_object_init),
2772         (gst_object_set_name_default), (gst_object_set_name):
2773           name objects by default, not in gst_element_factory_create. Allows
2774           using elements created with g_object_new. (fixes #167283)
2775
2776 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2777
2778         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
2779           make the time that debugging functions print relative to when
2780           gst_init was called
2781
2782 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
2783
2784         * gst/gsttaginterface.c:
2785           Fix inline docs: tag setter vararg functions are NULL-terminated,
2786           GST_TAG_INVALID doesn't exist any more.
2787
2788 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2789
2790         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
2791         Allocate the 1 byte more memory that was forgotten!!!!!
2792         fixes memory corruption on 64bit platforms
2793
2794 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
2795
2796         * docs/pwg/building-pads.xml:
2797         * docs/pwg/intro-basics.xml:
2798           fixed a few typos, relabeled introductionary list of types
2799         * docs/random/ensonic/dparams.txt:
2800           more notes abut dparam changes
2801         * libs/gst/control/dparam.c: (gst_dparam_attach):
2802         * libs/gst/control/dparammanager.c:
2803         * libs/gst/control/dparammanager.h:
2804           - many comments and notes on dparam implementation
2805           - new dparams are were not initialized to the default value
2806             from param spec
2807
2808 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2809
2810         submitted by: Peter Astakhov
2811
2812         * po/LINGUAS:
2813         * po/ru.po:
2814           adding Russian translation
2815
2816 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2817
2818         * configure.ac:
2819         * docs/gst/Makefile.am:
2820         * docs/libs/Makefile.am:
2821           make sure popt is added to gtk-doc flags.  Fixes #147782.
2822
2823 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
2824
2825         * docs/faq/using.xml:
2826           Fix typo in FAQ (artssink => artsdsink)
2827
2828 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2829
2830         * tools/gst-launch.1.in:
2831           Fix typo (#166699).
2832
2833 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
2834
2835         * docs/faq/using.xml:
2836           Add -v argument to fakesrc/fakesink gst-launch line,
2837           so that the promised output will actually show up.
2838
2839 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2840
2841         * gst/gstthread.c: (gst_thread_change_state):
2842           Implement state-change error handling (#166073).
2843
2844 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2845
2846         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2847           Release interrupt after handling (#166250).
2848
2849 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2850
2851         * configure.ac:
2852           back to HEAD
2853
2854 === release 0.8.9 ===
2855
2856 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2857
2858         * NEWS:
2859         * RELEASE:
2860         * configure.ac:
2861           releasing 0.8.9, "Like Eating Glass"
2862
2863 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2864
2865         submitted by: Clytie Siddall
2866
2867         * po/vi.po: Added Vietnamese translation
2868
2869 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2870
2871         patch by: Tim Philipp-Müller
2872
2873         * configure.ac:
2874         * gst/gstpad.c:
2875           unref data when probe function returns FALSE.  Fixes #166362
2876
2877 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2878
2879         * gst/gst.c: (gst_init_get_popt_table):
2880           Fix typo (#166269).
2881
2882 2005-02-04  Andy Wingo  <wingo@pobox.com>
2883
2884         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
2885         the debugging on whether the caps are compatible.
2886
2887 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2888
2889         * docs/manual/basics-elements.xml:
2890           Fix two typos.
2891
2892 2005-02-02  Wim Taymans  <wim@fluendo.com>
2893
2894         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
2895         (schedule_chain), (get_invalid_call), (chain_invalid_call),
2896         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
2897         Remove some FIXMEs after analysing and commenting why they
2898         are not issues.
2899
2900 2005-02-02  Wim Taymans  <wim@fluendo.com>
2901
2902         * gst/schedulers/gstoptimalscheduler.c:
2903         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
2904         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
2905         (get_invalid_call), (chain_invalid_call),
2906         (get_group_schedule_function), (loop_group_schedule_function),
2907         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2908         (gst_opt_scheduler_state_transition),
2909         (gst_opt_scheduler_add_element),
2910         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
2911         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
2912         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
2913         (gst_opt_scheduler_show):
2914         Added lock to protect scheduler data structures.
2915
2916 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2917
2918         * testsuite/threads/threadi.c: (cb_data):
2919           Fix buglet in test.
2920
2921 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2922
2923         * testsuite/threads/Makefile.am:
2924         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
2925           On Wim's request, split the test in three separately-compiled
2926           tests that each test a very specific bug. Two of them still fail,
2927           will create bugs for those. threadi.c indicates why they fail.
2928
2929 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2930
2931         * gst/schedulers/gstoptimalscheduler.c:
2932         (get_group_schedule_function):
2933           Try to work with the threading mess that queue_link is.
2934
2935 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2936
2937         * gst/gstbin.c: (gst_bin_remove_func):
2938           Explicitely make an element release locks in a group when being
2939           remove from a bin.
2940         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2941           If there's no scheduler, always return immediately (similar to
2942           gst_element_interrupt).
2943
2944 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2945
2946         * gst/gstbin.c: (gst_bin_child_state_change_func):
2947           Remove a piece of code that could never be reached.
2948         * docs/gst/gstreamer-sections.txt:
2949         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
2950         (gst_pad_call_get_function):
2951         * gst/gstpad.h:
2952         * testsuite/pad/Makefile.am:
2953           Fix #150546, enable tests.
2954
2955 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2956
2957         * docs/pwg/advanced-types.xml:
2958           Fix description for buffer-frames=0.
2959         * docs/gst/tmpl/gstbin.sgml:
2960         * gst/gstbin.c: (gst_bin_child_state_change_func),
2961         (gst_bin_change_state), (gst_bin_change_state_norecurse):
2962         * gst/gstbin.h:
2963         * testsuite/threads/Makefile.am:
2964         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
2965         (cb_state), (cb_play), (main):
2966           Fix non-recursive state changes to *really* change the state
2967           of the object, and not just call parent_class->state_change.
2968           Fix a lot of lockups caused by this. Fixes #132775. Add test
2969           for the problem. Also enable test to show #142588 (fixed).
2970         * gst/gstthread.c: (gst_thread_change_state),
2971         (gst_thread_child_state_change):
2972           Don't exit the thread if we go to NULL and are inside thread
2973           context. Instead, return control to the main thread context
2974           and exit from there.
2975         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
2976           Don't unset virtual functions, since those may still be used.
2977           That's not necessarily correct, but suffices for now.
2978         * configure.ac:
2979         * testsuite/Makefile.am:
2980         * testsuite/pad/Makefile.am:
2981         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
2982         (gst_test_sink_base_init), (gst_test_sink_chain),
2983         (gst_test_sink_init), (main):
2984         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
2985         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
2986         (main):
2987         * testsuite/pad/link.c: (gst_test_element_class_init),
2988         (gst_test_element_base_init), (gst_test_src_get),
2989         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
2990         (gst_test_filter_loop), (gst_test_filter_init),
2991         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
2992         (cb_error), (main):
2993           Add tests to show #150546. Pass, but should fail (currently
2994           disabled from the testsuite).
2995         * gst/gstscheduler.c: (gst_scheduler_dispose):
2996           Dereference child schedulers on dispose (#94464).
2997         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
2998           Fix typo.
2999         * testsuite/threads/thread.c: (main):
3000           Add more debug.
3001
3002 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3003
3004         * gst/gstpad.c: (gst_pad_push):
3005           Oops, revert previous commit, broke testsuite...
3006
3007 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3008
3009         * gst/gstpad.c: (gst_pad_push):
3010           Add check that the pad on which the push is performed is not a
3011           get-based pad (#150546).
3012
3013 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3014
3015         * gst/elements/gsttypefindelement.c:
3016         (gst_type_find_element_handle_event):
3017           Fix buffer pushing if stream EOSes during typefinding.
3018
3019 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3020
3021         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3022
3023         * gst/gstvalue.c: (gst_string_wrap):
3024           Allow NULL-strings as argument (#165365).
3025
3026 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3027
3028         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3029
3030         * gst/schedulers/faircothreads.c:
3031         (gst_fair_scheduler_cothread_queue_show):
3032           Fix build without debug enabled.
3033
3034 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3035
3036         * docs/gst/gstreamer-sections.txt:
3037         * docs/libs/gstreamer-libs-docs.sgml:
3038         * docs/libs/gstreamer-libs-sections.txt:
3039         * docs/libs/tmpl/gstcontrol.sgml:
3040         * docs/libs/tmpl/gstdparam.sgml:
3041         * docs/libs/tmpl/gstdplinint.sgml:
3042         * docs/libs/tmpl/gstdpman.sgml:
3043         * docs/libs/tmpl/gstdpsmooth.sgml:
3044         * docs/libs/tmpl/gstputbits.sgml:
3045         * docs/libs/tmpl/gstunitconvert.sgml:
3046         * libs/gst/control/dparam.c:
3047         * libs/gst/control/dparam.h:
3048         * libs/gst/control/dparammanager.c:
3049         (gst_dpman_add_required_dparam_callback),
3050         (gst_dpman_add_required_dparam_direct),
3051         (gst_dpman_add_required_dparam_array),
3052         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3053         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3054         (gst_dpman_get_manager)
3055           restructured DParam docs
3056
3057 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3058
3059         * gst-element-check.m4:
3060           Only check for gst-inspect if we haven't already
3061           found it in previous element check runs
3062
3063 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3064
3065         * docs/gst/Makefile.am:
3066         * docs/libs/Makefile.am:
3067           fixed install rules to treat style.css as optional
3068
3069 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3070
3071         * docs/gst/Makefile.am:
3072         * docs/libs/Makefile.am:
3073           install style.css along with docs
3074         * docs/gst/tmpl/gstbin.sgml:
3075         * docs/gst/tmpl/gstclock.sgml:
3076         * docs/gst/tmpl/gstdata.sgml:
3077         * docs/gst/tmpl/gstelement.sgml:
3078         * gst/gstbin.h:
3079         * gst/gstelement.c: (gst_element_class_init):
3080         * gst/gstelement.h:
3081           fixing incomplete docs
3082
3083 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3084
3085         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3086           Don't unref seek event twice when fflush() fails
3087           
3088 2005-01-22  David Schleef  <ds@schleef.org>
3089
3090         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3091
3092 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3093
3094         * docs/gst/Makefile.am:
3095         * docs/libs/Makefile.am:
3096           added params for deprecation guards
3097         * gst/gst.c:
3098         * gst/gst.h:
3099         * gst/gsterror.c: (_gst_resource_errors_init),
3100         (_gst_stream_errors_init):
3101         * gst/gsterror.h:
3102           documented some more enums
3103
3104 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3105         * gst/autoplug/gstspideridentity.c:
3106         Cosmetic fix - spider_find_peek should be static
3107         * gst/parse/parse.l:
3108         Applying fix for #164261
3109
3110 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3111
3112         * docs/gst/gstreamer-sections.txt:
3113         * docs/gst/tmpl/gstplugin.sgml:
3114         * docs/libs/gstreamer-libs-sections.txt:
3115         * docs/libs/tmpl/gstcontrol.sgml:
3116         * gst/gstbuffer.h:
3117         * gst/gsttag.h:
3118         * gst/gstvalue.c:
3119           added docs for the TAG defines
3120
3121 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3122
3123         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3124           Only unref entry if there is an entry.
3125
3126 2005-01-17  Wim Taymans  <wim@fluendo.com>
3127
3128         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3129         (remove_from_group), (schedule_group), (normalize_group),
3130         (gst_opt_scheduler_iterate):
3131         Also ref/unref decoupled elements before iterating the
3132         group since they are not added to the list of elements.
3133
3134 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3135
3136         * docs/manual/highlevel-components.xml:
3137           Add subtitle/streamselection as new features to playbin.
3138
3139 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3140
3141         * docs/manual/manual.xml:
3142           Re-enable dataaccess docs (oops).
3143
3144 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3145
3146         * docs/pwg/advanced-types.xml:
3147         * docs/random/mimetypes:
3148           Add documentation on libsndfile types (#163309), by Steve Baker
3149           <steve@stevebaker.org>.
3150         * gst/gstelement.c: (gst_element_release_request_pad):
3151           If an element has no explicit function, just remove the pad.
3152
3153 2005-01-17  Luca Ognibene  <luogni@tin.it>
3154
3155         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3156
3157         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3158           Fix memleak (#163801).
3159
3160 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3161
3162         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3163           I think this is actually more correct...
3164
3165 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3166
3167         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3168           Another workaround for memory access while destroyed in callback.
3169           Please, someone with refcount knowledge, have a look at this.
3170
3171 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3172
3173         * docs/faq/faq.xml:
3174         * docs/faq/legal.xml:
3175           move the legal Q&A here
3176
3177 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3178
3179         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3180         (gst_tee_request_new_pad):
3181           Fix negotiation.
3182
3183 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3184
3185         * docs/random/omega/caps2:
3186         * testsuite/caps/caps_strings:
3187           replace framerate aproximations by their real value
3188           (24000/1001, 30000/1001, 60000/1001)
3189           Partially fixes bug #164049
3190
3191 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3192
3193         * docs/gst/Makefile.am:
3194           don't fail on the stupid GstPoptOption
3195
3196 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3197
3198         * gst/gstpad.h:
3199         * gst/gstprobe.c:
3200           allow probes to work on ghost pads by realizing the pad
3201           probe debugging
3202
3203 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3204
3205         * docs/gst/gstreamer-sections.txt:
3206         * docs/gst/tmpl/gstpad.sgml:
3207         * gst/gstpad.c: (gst_pad_set_active_recursive):
3208         * gst/gstpad.h:
3209           Add gst_pad_set_active_recursive().
3210
3211 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3212
3213         * docs/random/release:
3214           updates
3215         * gst/gst_private.h:
3216         * gst/gstinfo.c:
3217         * gst/gstobject.c:
3218           move deep_notify logging to a new category
3219         * gst/gstprobe.c:
3220         * gst/gstprobe.h:
3221           add stuff so bindings can wrap probes
3222
3223 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3224
3225         * gst/gstplugin.c: (gst_plugin_load):
3226           Fix plugin loading if plugin/lib was already loaded. Fixes
3227           #163383
3228
3229 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3230
3231         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3232
3233         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3234           Protect plugin loading by a mutex so it's threadsafe. Fixes
3235           #163234.
3236
3237 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3238
3239         * gst/gstevent.c: (_gst_event_copy):
3240           Reference source object when copying events, since it'll be
3241           dereferenced on event dereferencing as well.
3242
3243 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3244
3245         * docs/gst/gstreamer-sections.txt:
3246         * docs/gst/tmpl/gstevent.sgml:
3247         * gst/gstevent.c: (gst_event_new_filler_stamped),
3248         (gst_event_filler_get_duration):
3249         * gst/gstevent.h:
3250           Add two new functions for filler events (which are used to
3251           synchronize streams if one of them is not having any data
3252           for a while) without interrupting the actual data-stream.
3253           Basically a no-op.
3254         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3255         (gst_queue_link_sink), (gst_queue_link_src),
3256         (gst_queue_change_state):
3257           Allow for renegotiation while filled. Required for stream
3258           switching while playing.
3259
3260 2005-01-08  Benjamin Otte  <otte@gnome.org>
3261
3262         * gst/gstelement.c: (gst_element_link_many):
3263           fix up g_return_if_fail's
3264         * po/LINGUAS:
3265         * po/de.po:
3266           add German translation, that was somehow not included
3267
3268 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3269
3270         * docs/random/mimetypes:
3271           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3272           do not add them to riff-lib as they are not common
3273
3274 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3275
3276         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3277           Check for existence of probe after performing the probe before
3278           re-accessing it to prevent segfaults caused by removal of the
3279           probe in the callback.
3280
3281 2005-01-05  David Schleef  <ds@schleef.org>
3282
3283         * testsuite/registry/Makefile.am:
3284         * testsuite/registry/gst-print-formats.c:
3285         (print_pad_templates_info), (print_element_list),
3286         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3287         (g_list_uniqify), (get_pad_templates_info),
3288         (get_element_mime_list), (print_mime_list), (main): A little
3289         program that looks through the registry to find elements of
3290         a given type.  Not particularly interesting as a test, except
3291         that there's no other test covering the same area.
3292
3293 2005-01-05  David Schleef  <ds@schleef.org>
3294
3295         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3296         (fault_handler_sigaction), (fault_spin),
3297         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3298         in signal.h-type signal handlers by not calling forbidden functions,
3299         including gst_element_set_state().
3300
3301 2005-01-05  David Schleef  <ds@schleef.org>
3302
3303         * gst/gstvalue.h: Mark _gst_reserved[] as private
3304
3305 2005-01-05  David Schleef  <ds@schleef.org>
3306
3307         * gst/gstvalue.c: Fix doc build problem.
3308
3309 2005-01-05  David Schleef  <ds@schleef.org>
3310
3311         * gst/gstvalue.c: Add some documentation
3312
3313 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3314
3315         * docs/README:
3316           another shell oneliner for empty return value docs
3317         * gst/gstcaps.c:
3318         * gst/gstvalue.c:
3319         * libs/gst/control/dparam.c:
3320           more doc fixes (parameters and return values)
3321
3322 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3323
3324         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3325
3326         * gst/gstregistry.h:
3327         * gst/registries/gstxmlregistry.c:
3328           Fix macro's for Mingw (fixes #162276).
3329
3330 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3331
3332         * docs/README:
3333           quick shell oneliner to find undocumented members
3334         * docs/gst/tmpl/gstplugin.sgml:
3335         * docs/gst/tmpl/gstscheduler.sgml:
3336         * docs/gst/tmpl/gstthread.sgml:
3337           more enumtypes cleanup
3338         * gst/gsterror.h:
3339           activated documentation comments, now someone needs to document
3340           the enums :(
3341
3342 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3343
3344         * docs/manual/manual.xml:
3345           Add dataaccess part (doh!).
3346
3347 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3348
3349         * docs/manual/advanced-autoplugging.xml:
3350           Fix typo (intiate -> initiate).
3351
3352 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3353
3354         * docs/random/bbb/streamselection:
3355           Add some notes on how to handle multi-subtitle/-audio streams.
3356
3357 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3358
3359         * docs/gst/gstreamer-docs.sgml:
3360         * docs/gst/gstreamer-sections.txt:
3361         * docs/gst/tmpl/gstenumtypes.sgml:
3362         * docs/gst/tmpl/gsterror.sgml:
3363         * docs/gst/tmpl/gstevent.sgml:
3364         * docs/gst/tmpl/gstpad.sgml:
3365         * docs/gst/tmpl/gstpadtemplate.sgml:
3366         * docs/gst/tmpl/gstthread.sgml:
3367           removed gstenumtypes section from docs and put all the enums into
3368           their sections
3369
3370 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3371
3372         * gst/gstplugin.c:
3373           document gst_library_load a bit more (riff special case + return
3374           value if already loaded)
3375         * testsuite/bytestream/filepadsink.c:
3376           plugin name is 'gstbytestream', not 'bytestream'
3377
3378 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3379
3380         * docs/random/bbb/subtitles:
3381           Add some first mind rumblings on proper subtitle support.
3382
3383 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3384
3385         * po/ca.po:
3386         * po/sv.po:
3387           updated translations
3388
3389 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3390
3391         * docs/manual/advanced-dataaccess.xml:
3392           Add section on how to use fakesrc/fakesink/identity in your
3393           application, plus section on how to embed plugins. Also mention
3394           probes.
3395         * docs/manual/appendix-checklist.xml:
3396         * docs/manual/appendix-debugging.xml:
3397         * docs/manual/appendix-gnome.xml:
3398         * docs/manual/appendix-integration.xml:
3399           Debug -> checklist, GNOME -> integration, add sections on Linux,
3400           KDE integration and add other things useful for application
3401           development.
3402         * docs/manual/manual.xml:
3403           Remove some fixmes, update some file pointers.
3404         * docs/pwg/appendix-checklist.xml:
3405           Fix typo.
3406         * docs/pwg/building-boiler.xml:
3407           Remove ugly header and add commented fixme.
3408         * docs/pwg/pwg.xml:
3409           Add fixme.
3410         * examples/manual/Makefile.am:
3411           Add example for added docs.
3412
3413 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3414
3415         * configure.ac:
3416           back to HEAD
3417
3418 === release 0.8.8 ===
3419
3420 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3421
3422         * NEWS:
3423         * RELEASE:
3424         * configure.ac:
3425           Releasing 0.8.8, "I'll Take Care Of You"
3426
3427 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3428
3429         * configure.ac:
3430           second prerelease
3431
3432 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3433
3434         patch by: Wim Taymans
3435
3436         * gst/gstbin.c:
3437           Fix for #159852 - make iterate emission threadsafe
3438
3439 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3440
3441         * docs/faq/cvs.xml:
3442           notes about new fdo account request
3443
3444 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3445
3446         * docs/gst/gstreamer-docs.sgml:
3447         * docs/gst/tmpl/gstenumtypes.sgml:
3448         * docs/gst/tmpl/gstplugin.sgml:
3449         * docs/libs/gstreamer-libs-docs.sgml:
3450           Added missing short docs. Added ids for navigation.
3451
3452 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3453
3454         * docs/manual/advanced-autoplugging.xml:
3455         * docs/manual/advanced-schedulers.xml:
3456         * docs/manual/advanced-threads.xml:
3457           Rewrites. Remove cothreads, go a bit into opt specifically,
3458           document threads and their gotchas, and do some technical stuff
3459           on autoplugging plus add some working examples. Fixes #157395.
3460         * examples/manual/Makefile.am:
3461           Add typefind/autoplugger example (one that actually works).
3462           Remove queue example since it's a duplicate of the thread one.
3463
3464 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3465
3466         * gst/gstvalue.c: (gst_value_deserialize_string):
3467           use deprecated g_value_set_string_take_ownership to keep compatible
3468           with glib 2.2
3469
3470 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3471
3472         * gst/gstvalue.c: (gst_value_deserialize_string):
3473           revert last patch, only dom a g_utf8_validate now before accepting
3474           the string - caps parsing strips " from strings so we can't rely on
3475           them
3476         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3477           disable a test that tested the above and comment it
3478
3479 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3480
3481         Patch reviewed by David Schleef  <ds@schleef.org>
3482
3483         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3484         bug #153882)
3485         * win32/gstenumtypes.h: same
3486
3487 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3488
3489         * gst/gstpad.c: (gst_pad_query):
3490           Do query on realized pad, similar to how convert/send_event handle
3491           this. Also makes sense, since this pad belongs to the function to
3492           which this query will be sent. Fixes #158163.
3493
3494 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3495
3496         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3497
3498 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3499
3500         * docs/faq/general.xml: fix pipeline to actually work
3501
3502 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3503
3504         * gst/gstvalue.c: (gst_value_deserialize_string):
3505           check that a simple string that gets deserialized does not contain
3506           invalid characters
3507         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3508           remove a test that tested a wring behaviour
3509
3510 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3511
3512         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3513
3514         * docs/manual/intro-motivation.xml:
3515           Fix typos.
3516
3517 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3518
3519         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3520
3521         * docs/gst/tmpl/gstprobe.sgml:
3522           Fix documentation of probe callback - it is supposed to return
3523           FALSE, not TRUE, to remove data from the stream (#159087).
3524
3525 2004-12-16  Daniel Gazard  <dany42@free.fr>
3526
3527         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3528
3529         * gst/gstelementfactory.c: (gst_element_factory_create):
3530           Fix compile failure if compiling without libxml2 support (#149936).
3531
3532 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3533
3534         * docs/manual/advanced-autoplugging.xml:
3535         * docs/manual/highlevel-components.xml:
3536           Move spider from autoplugging to components. Autoplugging is for
3537           internals, not for solutions. ;-).
3538
3539 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3540
3541         * docs/random/ds/0.9-suggested-changes:
3542           Make note on device/location/uri property names.
3543
3544 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3545
3546         * docs/manual/advanced-autoplugging.xml:
3547         * docs/manual/advanced-clocks.xml:
3548         * docs/manual/advanced-interfaces.xml:
3549         * docs/manual/advanced-metadata.xml:
3550         * docs/manual/advanced-position.xml:
3551         * docs/manual/advanced-schedulers.xml:
3552         * docs/manual/advanced-threads.xml:
3553         * docs/manual/appendix-gnome.xml:
3554         * docs/manual/appendix-programs.xml:
3555         * docs/manual/appendix-quotes.xml:
3556         * docs/manual/autoplugging.xml:
3557         * docs/manual/basics-bins.xml:
3558         * docs/manual/basics-data.xml:
3559         * docs/manual/basics-elements.xml:
3560         * docs/manual/basics-helloworld.xml:
3561         * docs/manual/basics-init.xml:
3562         * docs/manual/basics-pads.xml:
3563         * docs/manual/basics-plugins.xml:
3564         * docs/manual/bins-api.xml:
3565         * docs/manual/bins.xml:
3566         * docs/manual/buffers-api.xml:
3567         * docs/manual/buffers.xml:
3568         * docs/manual/clocks.xml:
3569         * docs/manual/components.xml:
3570         * docs/manual/cothreads.xml:
3571         * docs/manual/debugging.xml:
3572         * docs/manual/dparams-app.xml:
3573         * docs/manual/dynamic.xml:
3574         * docs/manual/elements-api.xml:
3575         * docs/manual/elements.xml:
3576         * docs/manual/factories.xml:
3577         * docs/manual/gnome.xml:
3578         * docs/manual/goals.xml:
3579         * docs/manual/helloworld.xml:
3580         * docs/manual/helloworld2.xml:
3581         * docs/manual/highlevel-components.xml:
3582         * docs/manual/highlevel-xml.xml:
3583         * docs/manual/init-api.xml:
3584         * docs/manual/intro-basics.xml:
3585         * docs/manual/intro-motivation.xml:
3586         * docs/manual/intro-preface.xml:
3587         * docs/manual/intro.xml:
3588         * docs/manual/links-api.xml:
3589         * docs/manual/links.xml:
3590         * docs/manual/manual.xml:
3591         * docs/manual/motivation.xml:
3592         * docs/manual/pads-api.xml:
3593         * docs/manual/pads.xml:
3594         * docs/manual/plugins-api.xml:
3595         * docs/manual/plugins.xml:
3596         * docs/manual/programs.xml:
3597         * docs/manual/queues.xml:
3598         * docs/manual/quotes.xml:
3599         * docs/manual/schedulers.xml:
3600         * docs/manual/states-api.xml:
3601         * docs/manual/states.xml:
3602         * docs/manual/threads.xml:
3603         * docs/manual/typedetection.xml:
3604         * docs/manual/win32.xml:
3605         * docs/manual/xml.xml:
3606           Try 2. This time, include a short preface as a "general
3607           introduction", also add code blocks around all code samples
3608           so they get compiled. We still need a way to tell readers
3609           the filename of the code sample. In some cases, don't show
3610           all code in the documentation, but do include it in the generated
3611           code. This allows for focussing on specific bits in the docs,
3612           while still having a full test application available.
3613         * examples/manual/Makefile.am:
3614           Fix up examples for new ADM. Add several of the new examples that
3615           were either added or were missing from the build system.
3616         * examples/manual/extract.pl:
3617           Allow nameless blocks.
3618
3619 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3620
3621         * docs/manual/elements-api.xml:
3622         * docs/manual/helloworld.xml:
3623         * examples/manual/extract.pl:
3624           fix last example.  Add example of adding code blocks that are not
3625           shown in docbook output.
3626
3627 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3628
3629         * docs/manual/dynamic.xml:
3630         * docs/manual/elements-api.xml:
3631         * docs/manual/gnome.xml:
3632         * docs/manual/helloworld2.xml:
3633         * docs/manual/init-api.xml:
3634         * docs/manual/queues.xml:
3635         * docs/manual/threads.xml:
3636         * docs/manual/xml.xml:
3637         * examples/manual/extract.pl:
3638           Make it possible to extract example code from separate blocks.
3639           Should make Ronald happy.
3640
3641 2004-12-15  Wim Taymans  <wim@fluendo.com>
3642
3643         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3644         (remove_from_group), (group_elements_set_visited),
3645         (normalize_group), (gst_opt_scheduler_iterate):
3646         Fix bug where a flag was not updated on a decoupled entry point 
3647         because we were just checking the group element list and decoupled
3648         elements are not in that list..
3649
3650 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3651
3652         * docs/manual/advanced-autoplugging.xml:
3653         * docs/manual/advanced-clocks.xml:
3654         * docs/manual/advanced-dparams.xml:
3655         * docs/manual/advanced-interfaces.xml:
3656         * docs/manual/advanced-metadata.xml:
3657         * docs/manual/advanced-position.xml:
3658         * docs/manual/advanced-schedulers.xml:
3659         * docs/manual/advanced-threads.xml:
3660         * docs/manual/appendix-debugging.xml:
3661         * docs/manual/appendix-gnome.xml:
3662         * docs/manual/appendix-programs.xml:
3663         * docs/manual/appendix-quotes.xml:
3664         * docs/manual/appendix-win32.xml:
3665         * docs/manual/autoplugging.xml:
3666         * docs/manual/basics-bins.xml:
3667         * docs/manual/basics-data.xml:
3668         * docs/manual/basics-elements.xml:
3669         * docs/manual/basics-helloworld.xml:
3670         * docs/manual/basics-init.xml:
3671         * docs/manual/basics-pads.xml:
3672         * docs/manual/basics-plugins.xml:
3673         * docs/manual/bins-api.xml:
3674         * docs/manual/bins.xml:
3675         * docs/manual/buffers-api.xml:
3676         * docs/manual/buffers.xml:
3677         * docs/manual/clocks.xml:
3678         * docs/manual/components.xml:
3679         * docs/manual/cothreads.xml:
3680         * docs/manual/debugging.xml:
3681         * docs/manual/dparams-app.xml:
3682         * docs/manual/dynamic.xml:
3683         * docs/manual/elements-api.xml:
3684         * docs/manual/elements.xml:
3685         * docs/manual/factories.xml:
3686         * docs/manual/gnome.xml:
3687         * docs/manual/goals.xml:
3688         * docs/manual/helloworld.xml:
3689         * docs/manual/helloworld2.xml:
3690         * docs/manual/highlevel-components.xml:
3691         * docs/manual/highlevel-xml.xml:
3692         * docs/manual/init-api.xml:
3693         * docs/manual/intro-motivation.xml:
3694         * docs/manual/intro-preface.xml:
3695         * docs/manual/intro.xml:
3696         * docs/manual/links-api.xml:
3697         * docs/manual/links.xml:
3698         * docs/manual/manual.xml:
3699         * docs/manual/motivation.xml:
3700         * docs/manual/pads-api.xml:
3701         * docs/manual/pads.xml:
3702         * docs/manual/plugins-api.xml:
3703         * docs/manual/plugins.xml:
3704         * docs/manual/programs.xml:
3705         * docs/manual/queues.xml:
3706         * docs/manual/quotes.xml:
3707         * docs/manual/schedulers.xml:
3708         * docs/manual/states-api.xml:
3709         * docs/manual/states.xml:
3710         * docs/manual/threads.xml:
3711         * docs/manual/typedetection.xml:
3712         * docs/manual/win32.xml:
3713         * docs/manual/xml.xml:
3714           First try at rewriting the ADM. Needs lotsamore work, but some
3715           parts might already be somewhat useful.
3716         * docs/pwg/advanced-interfaces.xml:
3717           Remove properties interface, it never actually existed (except for
3718           on my HD...).
3719
3720 2004-12-13  David Schleef  <ds@schleef.org>
3721
3722         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
3723         be NULL (bug #160220).
3724
3725 2004-12-13  David Schleef  <ds@schleef.org>
3726
3727         * configure.ac: remove all mmx stuff, because it's not used.
3728         * docs/random/ds/0.9-suggested-changes: additional notes
3729         * include/Makefile.am: we don't use these anymore
3730         * include/mmx.h: remove
3731         * include/sse.h: remove
3732
3733 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3734
3735         * docs/random/mimetypes:
3736           Add FOURCC code for h264 codec (VSSH)
3737           Add alternate FOURCC codes for h263 related codecs
3738
3739 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
3740
3741         * docs/manual/programs.xml:
3742           Added more gst-launch examples.
3743
3744 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3745
3746         * gst/gstqueue.c: (gst_queue_handle_src_query):
3747           Check for availability again.
3748
3749 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3750
3751         * gst/gstcaps.c: (gst_caps_compare_structures):
3752           Simple caps go first. This has the nice side-effect of fixing an
3753           obscure warning.
3754
3755 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3756
3757         * gst/gstversion.h.in:
3758           Protect header.
3759
3760 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3761
3762         * gst/schedulers/gstoptimalscheduler.c:
3763         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
3764         (gst_opt_scheduler_get_wrapper):
3765           When we're recursing into a chain run, only run the directly
3766           related group, not all queued ones. This will fix a possible
3767           deadlock in chains with more than two groups.
3768
3769 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3770
3771         * autogen.sh:
3772           remove patch if autopoint fails
3773
3774 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3775
3776         * docs/gst/gstreamer-sections.txt:
3777           Document Thomas' addition, fix build, make Luis the sheriff happy.
3778
3779 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3780
3781         * gst/gstplugin.c:
3782         * gst/gstplugin.h:
3783           add accessor for version field
3784
3785 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3786
3787         submitted by: Luca Ferretti <elle.uca@infinito.it>
3788
3789         * po/LINGUAS:
3790         * po/it.po:
3791           New tranlation added: Italian
3792
3793 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3794
3795         * gst/gstpad.c: (gst_pad_is_negotiated),
3796         (gst_pad_get_negotiated_caps):
3797           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
3798           it doesn't actually check the contents), so be sure to hand it
3799           a RealPad else we'll crash.
3800
3801 2004-12-03  Wim Taymans  <wim@fluendo.com>
3802
3803         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3804         (gst_queue_link), (gst_queue_handle_src_query):
3805         Reverted to 1.110 until this makes the testsuite and various
3806         apps work.
3807
3808 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
3809
3810         * docs/upload.mak: fix included CVS conflict strings
3811
3812 2004-12-01  William Jon McCann  <mccann@jhu.edu>
3813
3814         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3815
3816         * gst/gstelement.c: (gst_element_error_full):
3817           Use g_error_new_literal because error text may have
3818           percentage signs in it. Fixes #160019.
3819
3820 2004-12-01  Benjamin Otte  <otte@gnome.org>
3821
3822         * gst/elements/gstbufferstore.c:
3823         (gst_buffer_store_add_buffer_func):
3824           don't try to make subbuffers bigger than they can be. (fixes
3825           #159970)
3826
3827 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3828
3829         * docs/gst/gstreamer-sections.txt:
3830         * docs/gst/tmpl/gstvalue.sgml:
3831           Add new function to docs to fix build.
3832
3833 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3834
3835         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
3836         * gst/gstpad.c: (_gst_pad_default_fixate_value),
3837         (_gst_pad_default_fixate_foreach):
3838         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
3839         * gst/gstvalue.h:
3840           Deprecate _type_is_fixed, use _value_is_fixed instead, since
3841           in some cases (arrays), the fixedness depends on the content.
3842         * gst/gstqueue.c: (gst_queue_handle_src_query):
3843           Check for availability before doing something.
3844
3845 2004-11-29  Wim Taymans  <wim@fluendo.com>
3846
3847         * testsuite/threads/Makefile.am:
3848         * testsuite/threads/signals.c: (gst_test_get_type),
3849         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
3850         (gst_test_set_property), (gst_test_get_property),
3851         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
3852         (gst_test_do_prop), (run_thread), (main):
3853         Added a bunch of testcases that show threadsafety bugs in glib.
3854
3855 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
3856
3857         * docs/manual/programs.xml:
3858           Added a first batch of gst-launch examples, as provided by Ronald
3859           and others from the devel-mlist
3860
3861 2004-11-28  Benjamin Otte  <otte@gnome.org>
3862
3863         * gst/gstelement.c: (gst_element_negotiate_pads):
3864           simplify
3865         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
3866         (gst_value_serialize_string), (gst_value_deserialize_string):
3867           add unwrapping of previously wrapped strings. Fix bug in wrapping
3868           while at it.
3869         * testsuite/caps/value_serialize.c: (test1),
3870         (test_string_serialization), (test_string_deserialization), (main):
3871           add tests for string (de)serialization
3872
3873 2004-11-26  Wim Taymans  <wim@fluendo.com>
3874
3875         * testsuite/threads/159566.c: (object_deep_notify), (main):
3876         * testsuite/threads/Makefile.am:
3877         Added testsuite to show bug #159566
3878
3879 2004-11-25  Wim Taymans  <wim@fluendo.com>
3880
3881         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
3882         (gst_thread_child_state_change), (gst_thread_main_loop):
3883         Ref the thread object in the GThread mainloop. Break out of the
3884         thread mainloop if it holds the last ref. This properly exits
3885         the threads when disposing the thread from its own context. It
3886         also avoids possible deadlocks in the dispose function.
3887
3888 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
3889
3890         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
3891         it is necessary to wait.
3892
3893 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3894
3895         * docs/pwg/building-boiler.xml:
3896           Make description somewhat clearer.
3897
3898 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3899
3900         * docs/upload.mak:
3901           Apparently docs changed location on FDO's server.
3902
3903 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3904
3905         * docs/pwg/appendix-checklist.xml:
3906           Add some random notes on things to check when writing an element.
3907           This list can be extended as people see fit.
3908
3909 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
3910
3911         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
3912         (gst_queue_link_src): Allow for renegotiating the caps of the sink
3913         pad. The queue will now wait until it is empty and forward the new
3914         caps to the source.
3915         * gst/gstbin.c (gst_bin_set_element_sched)
3916         (gst_bin_unset_element_sched): Make sure that all elements and
3917         links are registered and unregistered with the scheduler exactly
3918         once. This elaborates on a fix by Benjamin Otte, but
3919         guarantees that decoupled elements are also registered.
3920
3921 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3922
3923         * docs/manual/quotes.xml:
3924           add a quote
3925         * configure.ac:
3926         * gst/gst.c:
3927         * gst/gstinfo.c:
3928           add LIBDIR and move init message higher up so it's at the start
3929
3930 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3931
3932         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
3933         * gstreamer.spec.in: add fair
3934
3935 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3936
3937         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3938         * gst/elements/gstidentity.c: (gst_identity_class_init):
3939           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
3940           <teuf@gnome.org> (#157263).
3941         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3942         (gst_type_find_handle_src_query):
3943           Subtract size of internally stored data from position queries.
3944
3945 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
3946
3947         * gst/schedulers/fairscheduler.c:
3948         * gst/schedulers/faircothreads.c:
3949         * gst/schedulers/faircothreads.h:
3950         New cothread based scheduler: Fair scheduler.
3951         * gst/schedulers/gthread-cothreads.h: 
3952         Add the standard #if around the whole file.
3953         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
3954         compilation of the functions defined in this file. This is
3955         necessary to be able to use this file as a normal header.
3956         * gst/schedulers/Makefile.am: Add compiling support for fair
3957         scheduler.
3958         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
3959         scheduler cothreads layer from documentation generation.
3960
3961 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3962
3963         * gst/autoplug/gstspideridentity.c:
3964         (gst_spider_identity_sink_loop_type_finding):
3965           Don't crash if that function is not implemented.
3966
3967 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3968
3969         * docs/pwg/advanced-types.xml:
3970           Another typo.
3971
3972 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3973
3974         * docs/pwg/intro-preface.xml:
3975           Hm, ok, so the brackets weren't really useful...
3976         * docs/pwg/other-ntoone.xml:
3977           Fix embarassing typo.
3978
3979 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3980
3981         * docs/pwg/intro-preface.xml:
3982           Rewrite preface.
3983
3984 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3985
3986         * docs/pwg/advanced-scheduling.xml:
3987         * docs/pwg/advanced-tagging.xml:
3988         * docs/pwg/advanced-types.xml:
3989         * docs/pwg/building-boiler.xml:
3990         * docs/pwg/building-chainfn.xml:
3991         * docs/pwg/building-signals.xml:
3992         * docs/pwg/building-state.xml:
3993         * docs/pwg/building-testapp.xml:
3994         * docs/pwg/intro-basics.xml:
3995         * docs/pwg/other-manager.xml:
3996         * docs/pwg/other-source.xml:
3997           Typo fixes.
3998         * docs/pwg/other-manager.xml:
3999           Add some first content. No example code yet.
4000         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4001           Remove double newlines.
4002
4003 2004-11-04  Wim Taymans  <wim@fluendo.com>
4004
4005         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4006         (remove_from_group), (normalize_group), (group_migrate_connected),
4007         (gst_opt_scheduler_iterate):
4008         * testsuite/schedulers/.cvsignore:
4009         * testsuite/schedulers/Makefile.am:
4010         * testsuite/schedulers/queue_link.c: (main):
4011         Added testcase for scheduler segfault.
4012         Fix scheduler segfault when removing a decoupled
4013         entry point as the last element from a group.
4014
4015 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4016
4017         * gst/gstmarshal.list: add missing marshaller, fixes build
4018
4019 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4020
4021         * docs/random/signal: added notes about using BOXED for GstBuffer
4022         signal marshallers, not POINTER
4023
4024 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4025
4026         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4027         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4028         POINTER=>BOXED changes to marshal GstBuffers
4029
4030 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4031
4032         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4033         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4034
4035 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4036
4037         * docs/gst/gstreamer-sections.txt:
4038         * docs/gst/tmpl/gstcaps.sgml:
4039         * docs/gst/tmpl/gsterror.sgml:
4040         * docs/gst/tmpl/gstinfo.sgml:
4041         * docs/gst/tmpl/gstmacros.sgml:
4042         * docs/gst/tmpl/gstutils.sgml:
4043         * docs/random/ensonic/interfaces.txt:
4044         * gst/gstinfo.h:
4045           added some more docs, removed two obsolete defines
4046
4047 2004-11-02  Kjartan Maraas <as at gnome.org>
4048
4049         reviewed by: Wim Taymans, Ronald Bultje.
4050
4051         * gst/cothreads.c: (cothread_create):
4052         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4053         (gst_bin_child_state_change_func):
4054         * gst/gstbuffer.c: (gst_buffer_span):
4055         * gst/gstelement.c: (gst_element_get_index),
4056         (gst_element_get_event_masks), (gst_element_get_query_types),
4057         (gst_element_get_formats):
4058         * gst/gsterror.c: (_gst_core_errors_init),
4059         (_gst_library_errors_init), (_gst_resource_errors_init),
4060         (_gst_stream_errors_init):
4061         * gst/gstobject.c: (gst_object_default_deep_notify):
4062         * gst/gstpad.c: (gst_pad_get_event_masks),
4063         (gst_pad_get_internal_links_default):
4064         * gst/gstplugin.c: (gst_plugin_register_func),
4065         (gst_plugin_get_module):
4066         * gst/gststructure.c: (gst_structure_get_string),
4067         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4068         (gst_structure_to_abbr):
4069         * gst/gstutils.c: (gst_print_element_args):
4070         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4071         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4072         Aplied part of patch #157127: Cleanup of issues reported by 
4073         sparse.
4074         Also do not try to use cothreads when there is no cothread
4075         context yet.
4076
4077 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4078
4079         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4080         (gst_opt_scheduler_iterate):
4081         Applied patch #154061. Running a pipeline in which an element 
4082         calls GST_ELEMENT_ERROR in the chain function, the opt 
4083         scheduler doesn't unref the chain so it never gets freed.
4084
4085 2004-11-02  Wim Taymans  <wim@fluendo.com>
4086
4087         * gst/gststructure.c: (gst_structure_get_abbrs),
4088         (gst_structure_from_abbr), (gst_structure_to_abbr):
4089         Remove that ugly if-then thing in the code that converts
4090         between strings and types.
4091
4092 2004-11-02  Wim Taymans  <wim@fluendo.com>
4093
4094         * gst/gstscheduler.c: (gst_scheduler_add_element),
4095         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4096         Aplied clock distribution patch, this should fix bug
4097         #148787.
4098
4099 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4100
4101         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4102
4103         * po/LINGUAS:
4104         * po/nb.po:
4105           Added Norwegian Bokmaal translation
4106
4107 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4108
4109         * tools/gst-inspect.c: (print_signal_info):
4110           print signal arguments as pointers if they are
4111
4112 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4113
4114         * docs/pwg/building-boiler.xml:
4115           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4116
4117 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4118
4119         * gst/parse/parse.l:
4120         * testsuite/parse/parse1.c: (main):
4121         Since parse can do 'element name=a:b' make 'a:b.' work as
4122         well. 
4123         Added testcase to verify fix.
4124
4125 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4126
4127         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4128         Use the realpad when printing the direction.
4129         Add extra \n when printing extensions of typefind factories.
4130
4131 2004-10-13  David Schleef  <ds@schleef.org>
4132
4133         * examples/manual/Makefile.am: $< isn't portable in Makefile
4134         rules.
4135
4136 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4137
4138         * docs/gst/tmpl/gstobject.sgml:
4139         * docs/gst/tmpl/gstplugin.sgml:
4140         * docs/gst/tmpl/gstpluginfeature.sgml:
4141         * docs/gst/tmpl/gstregistry.sgml:
4142         * docs/gst/tmpl/gstversion.sgml:
4143         * gst/gstbin.c:
4144           more api documentation
4145         * gst/gstplugin.c: (gst_plugin_register_func),
4146         (gst_plugin_check_file), (gst_plugin_load_file):
4147           better error signaling and logging
4148
4149 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4150
4151         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4152           Subtract current queue contents from position queries.
4153
4154 2004-10-11  Johan Dahlin  <johan@gnome.org>
4155
4156         * gst/gsturi.c (gst_uri_get_location): unescape string
4157         (gst_uri_construct): escape string.
4158
4159 2004-10-11  Benjamin Otte  <otte@gnome.org>
4160
4161         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4162         (gst_pad_try_set_caps_nonfixed):
4163           allow renegotiation of unconnected pads (as inside spider). Simply
4164           return OK if unconnected - mimic try_set_caps there.
4165
4166 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4167
4168         * gst/gstbin.c: (gst_bin_sync_children_state):
4169           Add missing break.
4170
4171 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4172
4173         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4174         Set element to EOS before sending EOS event
4175
4176 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4177
4178         * gst/elements/gsttypefindelement.c:
4179         (gst_type_find_element_handle_event):
4180         Handle EOS events when doing the transition from
4181         typefind to data passing. This should fix the
4182         infinite loops in short files.
4183
4184 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4185
4186         * gst/gstthread.c: (gst_thread_change_state),
4187         (gst_thread_child_state_change):
4188         Make sure no iteration happens while performing
4189         the state change as it could mess up the internal
4190         consistency of the thread state.
4191
4192 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4193
4194         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4195         (gst_thread_change_state), (gst_thread_child_state_change):
4196         Do not try to grab the iterate lock in the state change method
4197         when we are in the same thread as the iterate or else we
4198         could deadlock. Some other cleanups.
4199
4200 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4201
4202         * configure.ac:
4203           bump nano to cvs
4204
4205 === release 0.8.7 ===
4206
4207 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4208
4209         * configure.ac:
4210         * NEWS:
4211         * RELEASE:
4212         * configure.ac:
4213           releasing 0.8.7, "A Cruise"
4214
4215 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4216
4217         * docs/random/mimetypes:
4218         Add an entry for Sony ATRAC3 audio format with mime-type
4219         used by rmdemux et riff-read
4220
4221 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4222
4223         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4224         Push the buffer store instead of clearing it in case that
4225         the stream is not seekable.
4226
4227 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4228
4229         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4230         (gst_thread_main_loop):
4231         Lock the iteration and the state change so that automatic
4232         negotiation and fixation does not happen at the same time
4233         as the in stream negotiation.
4234
4235 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4236
4237         * configure.ac:
4238           bump nano to cvs
4239
4240 === release 0.8.6 ===
4241
4242 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4243
4244         * configure.ac:
4245         * NEWS:
4246         * RELEASE:
4247         * configure.ac:
4248           releasing 0.8.6, "Narc"
4249
4250 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4251
4252         * configure.ac:
4253           prerel bump
4254
4255 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4256
4257         patch by: Steve Lhomme
4258
4259         * gst/elements/gstfakesrc.c:
4260         * gst/elements/gstidentity.c:
4261         * gst/gstthread.c:
4262           Fix for #153881
4263
4264 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4265
4266         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4267         Fix threadsafety of the crc checking function.
4268
4269 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4270
4271         patch by: Ronald Bultje
4272
4273         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4274         (gst_type_find_element_handle_event),
4275         (gst_type_find_element_chain):
4276         * gst/elements/gsttypefindelement.h:
4277          #153657.
4278          Filter out discont event from seekable sources when typefind
4279          asks them to seek.  Fixes typefind with demuxers for
4280          avi, asf and matroska.
4281
4282 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4283
4284         * docs/gst/gstreamer-sections.txt:
4285         * gst/gstcaps.c:
4286         * gst/gstcaps.h:
4287         * gst/gstpad.c:
4288           Revert preferred caps: (#147789)
4289
4290 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4291
4292         * win32/dirent.c:
4293           fix a memory leak
4294
4295 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4296
4297         * configure.ac:
4298           bump for prerelease
4299
4300 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4301
4302         * docs/Makefile.am:
4303         * docs/manual/elements-api.xml:
4304           restructure so that common stuff is shown first
4305         * docs/manual/init-api.xml:
4306           convert to examples
4307         * docs/manual/manual.xml:
4308         * docs/manuals.mak:
4309         * docs/url.entities:
4310           link to API on the website, possibly override later in build
4311         * examples/manual/.cvsignore:
4312           ignore more
4313         * examples/manual/Makefile.am:
4314           add more examples
4315         * examples/manual/extract.pl:
4316           error out on failure
4317
4318 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4319
4320         * docs/gst/tmpl/gstthread.sgml:
4321         * docs/manual/init-api.xml:
4322         * examples/manual/Makefile.am:
4323           convert two code bits to examples
4324
4325 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4326
4327         * gst/gstelement.c: (gst_element_change_state):
4328           Well, actually, I was about to remove this insane assert when
4329           I noticed Wim already did that. A warning is nice so we can
4330           fix actual ugs (using --g-fatal-warnings and backtraces), so
4331           I added that instead.
4332
4333 2004-09-06  Wim Taymans  <wim@fluendo.com>
4334
4335         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4336         (gst_element_threadsafe_properties_post_run),
4337         (gst_element_set_state), (gst_element_change_state):
4338         Added extra refcounting around various places. 
4339
4340 2004-09-06  Wim Taymans  <wim@fluendo.com>
4341
4342         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4343         Fix debug info.
4344
4345 2004-09-06  Wim Taymans  <wim@fluendo.com>
4346
4347         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4348         (remove_from_group):
4349         Some more debug info.
4350
4351 2004-09-03  Wim Taymans  <wim@fluendo.com>
4352
4353         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4354         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4355         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4356         (gst_fakesrc_get), (gst_fakesrc_change_state):
4357         * gst/elements/gstfakesrc.h:
4358         * gst/elements/gstidentity.c: (gst_identity_class_init),
4359         (gst_identity_init), (gst_identity_chain),
4360         (gst_identity_set_property), (gst_identity_get_property),
4361         (gst_identity_change_state):
4362         * gst/elements/gstidentity.h:
4363         Added datarate properties to limit the datarate.
4364
4365 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4366
4367         * gst/autoplug/gstspider.c: (plugin_init):
4368           don't set a rank. We don't want to autoplug by inserting spiders.
4369
4370 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4371
4372         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4373         (gst_spider_identity_plug):
4374           add a template for spider's sink
4375         * gst/gst.c: (gst_register_core_elements):
4376           queue's rank should be NULL, we don't want spider to add it.
4377
4378 2004-08-18  David Schleef  <ds@schleef.org>
4379
4380         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4381         * docs/libs/Makefile.am: same
4382         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4383         * docs/random/ds/0.9-planning: random additions
4384         * docs/random/ds/0.9-suggested-changes: same
4385         * gst/gstxml.h: remove vestigal GstXMLNs definition
4386
4387         Preferred caps: (#147789)
4388         * docs/gst/gstreamer-sections.txt: Add symbols
4389         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4390         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4391         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4392         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4393         (gst_caps_get_preferred), (gst_caps_set_preferred),
4394         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4395         (gst_caps_use_preferred): Handle caps preferences
4396         * gst/gstcaps.h: Add caps preferences
4397         * gst/gstpad.c: (gst_pad_link_get_preferred),
4398         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4399         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4400         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4401         negotiation.
4402
4403 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4404
4405         * gst/autoplug/gstspideridentity.c:
4406         (gst_spider_identity_request_new_pad):
4407         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4408         (gst_aggregator_init):
4409         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4410         (gst_fakesink_init):
4411         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4412         (gst_fakesrc_init):
4413         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4414         (gst_fdsink_init):
4415         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4416         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4417         (gst_filesink_init):
4418         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4419         (gst_filesrc_init):
4420         * gst/elements/gstidentity.c: (gst_identity_base_init),
4421         (gst_identity_init):
4422         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4423         (gst_multifilesrc_init):
4424         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4425         (gst_pipefilter_init):
4426         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4427         (gst_statistics_init):
4428         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4429         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4430           s/gst_pad_new/&_from_template/
4431           register pad templates in the base_init function
4432           add static pad template definitions
4433
4434 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4435
4436         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4437         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4438         * testsuite/refcounting/pad.c: (main):
4439         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4440           s/gst_pad_new/&_from_template/
4441           prepare deprecation of gst_pad_new
4442
4443 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4444
4445         patch by: Luca Ognibene <skaboy81@virgilio.it>
4446
4447         * gst/gstcaps.c:
4448         * gst/gstelement.c:
4449         * gst/gstpad.c:
4450         * gst/gstxml.c:
4451           fix memleaks.  Fixes #150001
4452
4453 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4454
4455         * docs/random/ds/0.9-suggested-changes:
4456           add notes - mostly about pad templates
4457
4458 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4459
4460         * win32/GStreamer.vcproj:
4461           temporary locale files are .gmo not .mo
4462
4463 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4464
4465         * configure.ac: bump nano to cvs
4466
4467 === release 0.8.5 ===
4468
4469 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4470
4471         * configure.ac:
4472           releasing 0.8.5, "Stuttgart"
4473         * NEWS:
4474         * RELEASE:
4475         * configure.ac:
4476         * docs/random/release:
4477           updates for release
4478
4479 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4480
4481         patch by: Wim Taymans (wim@fluendo.com)
4482
4483         * gst/gstbuffer.c:
4484         * gst/gstindex.h:
4485         * libs/gst/dataprotocol/dataprotocol.c:
4486           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4487
4488 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4489
4490         * Makefile.am:
4491         * win32/MANIFEST:
4492           add win32 dir to the build.  Fixes #149981.
4493
4494 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4495
4496         * configure.ac:
4497           bump libtool versioning
4498         * gst/gststructure.c:
4499           mark function as static
4500         * po/af.po:
4501         * po/az.po:
4502         * po/ca.po:
4503         * po/cs.po:
4504         * po/en_GB.po:
4505         * po/fr.po:
4506         * po/nl.po:
4507         * po/sq.po:
4508         * po/sr.po:
4509         * po/sv.po:
4510         * po/tr.po:
4511         * po/uk.po:
4512           translations update
4513         * win32/README.txt:
4514           trademark protection
4515
4516 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4517
4518         * configure.ac:
4519           fix GST_ORIGIN
4520           set GST_PACKAGE to source, and distinguish between release and other
4521         * tools/gst-inspect.c:
4522           print out plugin an element factory is part of so we see this info
4523
4524 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4525
4526         * docs/gst/gstreamer-sections.txt:
4527         * docs/gst/tmpl/gstbuffer.sgml:
4528         * docs/gst/tmpl/gstschedulerfactory.sgml:
4529           reorder docs a little, make GstBuffer's more sensible.
4530         * gst/gstbuffer.h:
4531           API: added GST_BUFFER_FLAG_DELTA_UNIT
4532         * gst/gstscheduler.c:
4533           comment API addition
4534
4535 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4536
4537         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4538           work with non-regular files that can be mmapped (like /dev/zero)
4539         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4540           get rid of typefinds that require a seek when we can't seek instead
4541           of trying them over and over again
4542         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4543           return non-zero failure value when the pipeline was interrupted or
4544           an error occurred
4545
4546 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4547
4548         * win32/config.h:
4549         * win32/GStreamer.vcproj:
4550           compile and install the locales
4551
4552 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4553
4554         * gst/gstvalue.c:
4555           fix a possible memory leak under Windows
4556
4557 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4558
4559         * win32/GStreamer.vcproj:
4560           fix a memory leak that occured under Windows
4561         * win32/gstreamer.def:
4562           add gst_scheduler_register
4563
4564 2004-08-11  Benjamin Otte  <otte@gnome.org>
4565
4566         * docs/gst/gstreamer-sections.txt:
4567         * gst/gstscheduler.c: (gst_scheduler_register):
4568         * gst/gstscheduler.h:
4569           API:
4570           add gst_scheduler_register shortcut similar to gst_element_register
4571         * gst/schedulers/entryscheduler.c: (plugin_init):
4572         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4573         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4574           use it
4575
4576 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4577
4578         * gst/gstvalue.h:
4579           fix a memory leak that occured under Windows
4580
4581 2004-08-10  Colin Walters  <walters@redhat.com>
4582
4583         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4584         Don't use O_EXCL to open temporary registry.  It will prevent
4585         registry creation if a temporary one already exists, which
4586         is unnecessary.
4587
4588 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4589
4590         * docs/gst/gstreamer-sections.txt:
4591         * docs/gst/tmpl/gstvalue.sgml:
4592           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4593
4594 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4595
4596         * win32/gstbytestream.vcproj:
4597         * win32/gstelements.vcproj:
4598         * win32/gstgetbits.vcproj:
4599         * win32/gst-inspect.vcproj:
4600         * win32/gst-launch.vcproj:
4601         * win32/gstoptimalscheduler.vcproj:
4602         * win32/GStreamer.vcproj:
4603         * win32/gst-register.vcproj:
4604         * win32/gstspider.vcproj:
4605           update the include and lib dirs to fit standard libraries as
4606           described in the Win32 manual
4607
4608 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4609
4610         * win32/config.h:
4611         * win32/gstversion.h:
4612           enable NLS again, push the version number for the coming 0.8.5 release
4613
4614 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4615
4616         * gst/gstvalue.h:
4617           export gst_type_XXX for windows DLLs
4618
4619 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4620
4621         * docs/faq/gst-uninstalled:
4622           fix PKG_CONFIG_PATH and PYTHONPATH
4623         * gst/schedulers/Makefile.am:
4624           cleanup
4625         * libs/gst/bytestream/bytestream.c:
4626           remove newline
4627         * po/LINGUAS:
4628         * po/sq.po:
4629           adding Albanian translation (Laurent Dhima)
4630         * po/cs.po:
4631           updated
4632
4633 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4634
4635         * po/ca.po:
4636         * po/sv.po:
4637           updated translations
4638
4639 2004-08-04  Benjamin Otte  <otte@gnome.org>
4640
4641         * tests/mass_elements.c: (main):
4642           allow specifying src and sink element explicitly, so I can test
4643           videotestsrc instead of fakesrc
4644
4645 2004-08-04  Benjamin Otte  <otte@gnome.org>
4646
4647         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4648         (gst_structure_id_empty_new), (gst_structure_empty_new),
4649         (gst_structure_copy):
4650           add gst_structure_id_empty_new_with_size to allow preallocating
4651           value array sizes. Use this in gst_structure_copy to get rid of
4652           reallocs.
4653           don't do quark=>string=>quark when copying structures
4654
4655 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4656
4657         * docs/manual/win32.xml:
4658         * win32/README.txt:
4659           update documentation with the clean version of dependencies
4660
4661 2004-08-03  Benjamin Otte  <otte@gnome.org>
4662
4663         * gst/schedulers/entryscheduler.c:
4664         (gst_entry_scheduler_remove_element):
4665           fix for GST_DISABLE_DEBUG
4666         * tools/gst-launch.c: (print_tag):
4667           fixes for G_DISABLE_ASSERT
4668
4669 2004-08-03  Benjamin Otte  <otte@gnome.org>
4670
4671         * gst/gst.c: (gst_register_core_elements):
4672           fix for G_DISABLE_ASSERT
4673         * gst/gstinfo.c: (__gst_in_valgrind):
4674           add for GST_DISABLE_DEBUG
4675
4676 2004-08-03  Benjamin Otte  <otte@gnome.org>
4677
4678         * gst/parse/parse.l:
4679           fix for G_DISABLE_ASSERT
4680
4681 2004-08-03  Wim Taymans  <wim@fluendo.com>
4682
4683         * gst/gstbin.c: (gst_bin_get_type),
4684         (gst_bin_child_state_change_func):
4685         * gst/gstthread.c: (gst_thread_change_state):
4686         Backported some debug logging from a reverted patch
4687         Don't try to destroy the thread twice. Added some more
4688         debugging in GstThread. Unlock and signal even if we
4689         are in the thread context.
4690
4691 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4692
4693         * po/uk.po:
4694           updated translation
4695
4696 2004-07-30  David Schleef  <ds@schleef.org>
4697
4698         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4699
4700 2004-07-29  David Schleef  <ds@schleef.org>
4701
4702         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4703         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4704
4705 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4706
4707         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4708         (gst_bin_add_func), (gst_bin_remove_func),
4709         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4710         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4711         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4712         (gst_bin_sync_children_state):
4713         * gst/gstbin.h:
4714         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4715         (gst_thread_change_state):
4716         * testsuite/states/Makefile.am:
4717           revert state change patches as agreed so we can rework them
4718           gradually
4719
4720 2004-07-29  Benjamin Otte  <otte@gnome.org>
4721
4722         * libs/gst/control/Makefile.am:
4723           link to libgstreamer (fixes Debian bug 262019, see
4724           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
4725
4726 2004-07-29  Wim Taymans  <wim@fluendo.com>
4727
4728         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4729         (check_from_fraction_convert), (transform_test), (main):
4730         Make the test less pedantic about float roundoff errors.
4731
4732 2004-07-29  Benjamin Otte  <otte@gnome.org>
4733
4734         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
4735         (gst_filesrc_srcpad_event):
4736           make seek events to before start/after end of file not fail, but
4737           seek to start/end instead
4738         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
4739           add more output
4740
4741 2004-07-29  Benjamin Otte  <otte@gnome.org>
4742
4743         * gst/gstpad.c: (gst_pad_set_explicit_caps):
4744           check that caps are fixed
4745         * gst/gstpad.c: (gst_pad_template_new):
4746           don't try to simplify caps, costs too much time on gst_init
4747         * gst/gstplugin.c: (gst_plugin_add_feature):
4748           G_ERROR if features are added twice
4749         * gst/gsttypefind.c: (gst_type_find_register):
4750         * gst/gstelementfactory.c: (gst_element_register):
4751           don't add features twice
4752         * docs/random/ds/0.9-suggested-changes:
4753           add note about possible gst_init optimization
4754
4755 2004-07-28  David Schleef  <ds@schleef.org>
4756
4757         * testsuite/elements/Makefile.am:
4758         * testsuite/elements/struct_i386.h:
4759         * testsuite/elements/struct_size.c: (main):  A little test
4760         to keep distcheck from working if someone changes a structure
4761         size accidentally.
4762
4763 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4764
4765         * docs/libs/Makefile.am:
4766         * docs/libs/gstreamer-libs-docs.sgml:
4767         * docs/libs/gstreamer-libs-sections.txt:
4768         * docs/libs/tmpl/gstbytestream.sgml:
4769         * docs/libs/tmpl/gstcontrol.sgml:
4770         * docs/libs/tmpl/gstdataprotocol.sgml:
4771         * docs/libs/tmpl/gstgetbits.sgml:
4772         * libs/gst/bytestream/Makefile.am:
4773         * libs/gst/bytestream/bytestream.c:
4774         * libs/gst/bytestream/bytestream.h:
4775         * libs/gst/control/Makefile.am:
4776         * libs/gst/dataprotocol/Makefile.am:
4777         * libs/gst/getbits/Makefile.am:
4778         * libs/gst/getbits/getbits.h:
4779           various doc and style fixes, adding bytestream to libs docs.
4780
4781 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4782
4783         * docs/gst/gstreamer-docs.sgml:
4784         * docs/libs/Makefile.am:
4785         * docs/libs/gstreamer-libs-docs.sgml:
4786         * docs/libs/gstreamer-libs-sections.txt:
4787         * libs/gst/control/dparam.c:
4788           more doc fixes.  gst-libs docs now build the same way as gst.
4789
4790 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4791
4792         * configure.ac:
4793         * testsuite/Makefile.am:
4794         * testsuite/bins/Makefile.am:
4795         * testsuite/caps/Makefile.am:
4796         * testsuite/cleanup/Makefile.am:
4797         * testsuite/clock/Makefile.am:
4798         * testsuite/debug/Makefile.am:
4799         * testsuite/dlopen/Makefile.am:
4800         * testsuite/dynparams/Makefile.am:
4801         * testsuite/elements/.cvsignore:
4802         * testsuite/elements/Makefile.am:
4803         * testsuite/enumcaps/Makefile.am:
4804         * testsuite/enumcaps/enumcaps.c:
4805         * testsuite/ghostpads/Makefile.am:
4806         * testsuite/indexers/Makefile.am:
4807         * testsuite/negotiation/Makefile.am:
4808         * testsuite/parse/Makefile.am:
4809         * testsuite/plugin/Makefile.am:
4810         * testsuite/refcounting/Makefile.am:
4811         * testsuite/schedulers/.cvsignore:
4812         * testsuite/states/Makefile.am:
4813         * testsuite/tags/Makefile.am:
4814         * testsuite/threads/Makefile.am:
4815           fold enumcaps into caps dir
4816           clean up Makefile.am's for testsuite
4817
4818 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4819
4820         * docs/gst/Makefile.am:
4821         * docs/libs/Makefile.am:
4822           clean up docs build.  Fixes needless rebuilding of template files.
4823
4824 2004-07-28  Wim Taymans  <wim@fluendo.com>
4825
4826         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
4827         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
4828         Make sure that a bin state change tries to keep the children
4829         in sync. 
4830         Added debug logging to the thread.
4831
4832 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4833
4834         * win32/GStreamer.vcproj:
4835         * win32/gstreamer.def:
4836           more exports for the plugins
4837
4838 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4839
4840         * win32/gstgetbits.vcproj:
4841         * win32/gstgetbits.def:
4842         * win32/msvc71.sln:
4843           add support for the getbits plugin
4844
4845 2004-07-27  Wim Taymans  <wim@fluendo.com>
4846
4847         * gst/gstvalue.c: (gst_value_transform_double_fraction),
4848         (gst_value_transform_fraction_double), (_gst_value_initialize):
4849         * testsuite/caps/Makefile.am:
4850         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4851         (check_from_fraction_convert), (transform_test), (main):
4852         Added transform functions between double and fraction.
4853         Added testcase to verify transforms
4854
4855 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4856
4857         * win32/GStreamer.vcproj:
4858           rename GStreamer-0.8.lib to libgstreamer.lib
4859
4860 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4861
4862         * win32/gstelements.vcproj:
4863         * win32/gstoptimalscheduler.vcproj:
4864           fixes for the Release build
4865
4866 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4867
4868         * win32/config.h:
4869           update the version number
4870
4871 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4872
4873         * win32/GStreamer.vcproj:
4874           add gstinterface to the build
4875
4876 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4877
4878         * win32/gstreamer.def:
4879           add many definitions needed by plugins,
4880           GST_CAT_DEFAULT only available in the Debug build ?
4881
4882 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4883
4884         * gst/gstelement.c: (gst_element_set_eos_recursive):
4885           various whitespace fixes.
4886           doc fix, fixes #148497
4887
4888 2004-07-25  Benjamin Otte  <otte@gnome.org>
4889
4890         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
4891           don't delay links on the sink elements, it causes unnegotiated
4892           links.
4893         * gst/elements/gsttypefindelement.c:
4894         (gst_type_find_element_base_init):
4895           add our padtemplates, we indeed do have some.
4896         * gst/elements/gsttypefindelement.c:
4897         (gst_type_find_element_handle_event),
4898         (gst_type_find_element_chain):
4899           don't push data when typefinding failed.
4900         * gst/gstpad.c: (gst_pad_link_fixate):
4901           check that no fixate function returns empty caps.
4902         * gst/gstpad.c: (gst_pad_push):
4903           check that the link is negotiated before data gets pushed.
4904         * tools/gst-register.c: (main):
4905           don't assert (fixes #148283)
4906
4907 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4908
4909         * docs/gst/gstreamer-sections.txt:
4910         * docs/gst/tmpl/gstconfig.sgml:
4911           add GST_PLUGIN_EXPORT definition
4912
4913 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4914
4915         * gst/gstplugin.h:
4916         * gst/gstconfig.h.in:
4917         * win32/gstconfig.h:
4918         * win32/gstelements.def:
4919         * win32/gstelements.vcproj:
4920         * win32/gstoptimalscheduler.def:
4921         * win32/gstoptimalscheduler.vcproj:
4922         * win32/gstspider.def:
4923         * win32/gstspider.vcproj:
4924           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
4925
4926 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4927
4928         * docs/gst/gstreamer-sections.txt:
4929           remove GST_CAT_DEFAULT because the type has changed
4930
4931 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4932
4933         * win32/gstbytestream.vcproj:
4934         * win32/gstelements.vcproj:
4935         * win32/gst-inspect.vcproj:
4936         * win32/gst-launch.vcproj:
4937         * win32/gstoptimalscheduler.vcproj:
4938         * win32/GStreamer.vcproj:
4939         * win32/gst-register.vcproj:
4940         * win32/gstspider.vcproj:
4941         * win32/msvc71.sln:
4942           Copy the files where needed after building, The testsuite will be
4943           built separately
4944
4945 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4946
4947         * win32/config.h:
4948         * win32/README.txt:
4949         * docs/manual/win32.xml:
4950         Fixed the plugin and GStreamer location
4951
4952 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4953
4954         * win32/gstreamer.def:
4955         More exports for the plugins
4956
4957 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4958
4959         * gst/gstinfo.h:
4960         Marc was right, we need to export literally GST_CAT_DEFAULT
4961
4962 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4963
4964         * win32/config.h:
4965         NLS crashes in gettext, disabled until this is solved
4966
4967 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4968
4969         * win32/gst-inspect.vcproj:
4970         * win32/gst-launch.vcproj:
4971         Should use NLS when available
4972
4973 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4974
4975         * gst/registries/gstxmlregistry.c:
4976         removing the file doesn't seem to be a good idea on Linux
4977
4978 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4979
4980         * gst/registries/gstxmlregistry.c:
4981         Remove the registry before renaming the tempfile (needed for Windows)
4982
4983 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4984
4985         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
4986         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
4987         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
4988         * gst/elements/gstmultifilesrc.h:
4989         Added newmedia property so it generates newmedia events between each
4990         file when property is set, as well as fixed eos handling
4991
4992 2004-07-22  David Schleef  <ds@schleef.org>
4993
4994         * gst/gststructure.c: (gst_structure_id_empty_new),
4995         (gst_structure_empty_new):  Set type field correctly.
4996         * gst/gststructure.h: Check type field correctly.
4997         * testsuite/caps/Makefile.am:
4998         * testsuite/caps/structure.c: (test1), (main): Add a very small
4999         test for structures.
5000
5001 2004-07-22  David Schleef  <ds@schleef.org>
5002
5003         * docs/random/ds/0.9-suggested-changes: more comments
5004         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5005
5006 2004-07-22  Benjamin Otte  <otte@gnome.org>
5007
5008         * gst/gstelementfactory.c: (gst_element_register):
5009           set the factory in the class struct, so gst_element_get_factory
5010           actually works
5011         * gst/parse/grammar.y:
5012           set element to playing when it gets unlocked as we can't rely on the
5013           bin state - all elements in the bin state might still be locked in
5014           NULL)
5015
5016 2004-07-22  Benjamin Otte  <otte@gnome.org>
5017
5018         * gst/gstelement.c: (gst_element_set_state_func):
5019           make this a static function
5020
5021 2004-07-22  Wim Taymans  <wim@fluendo.com>
5022
5023         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5024         (gst_opt_scheduler_pad_link):
5025         fix 147894-2 and the group_link problem.
5026
5027 2004-07-22  Wim Taymans  <wim@fluendo.com>
5028
5029         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5030         (handoff_identity), (main):
5031         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5032         (handoff_identity), (main):
5033         * testsuite/schedulers/Makefile.am:
5034         * testsuite/schedulers/group_link.c: (main):
5035         Show bug in scheduler when linking chain and loop based element 
5036         where the chain based element was not yet in a group.
5037
5038 2004-07-21  Benjamin Otte  <otte@gnome.org>
5039
5040         * gst/.cvsignore:
5041         * gst/autoplug/.cvsignore:
5042         * gst/elements/.cvsignore:
5043         * gst/indexers/.cvsignore:
5044         * libs/gst/bytestream/.cvsignore:
5045         * libs/gst/control/.cvsignore:
5046         * libs/gst/getbits/.cvsignore:
5047         * testsuite/states/.cvsignore:
5048         * testsuite/threads/.cvsignore:
5049           keep this up to date, since I seem to be the only one who cares
5050           about not missing files on commits (editor's note: no you don't,
5051           but feel free to change them at the time you add stuff instead
5052           of later on)
5053
5054 2004-07-21  Benjamin Otte  <otte@gnome.org>
5055
5056         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5057         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5058         (gst_bin_child_state_change_func), (set_kid_state_func),
5059         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5060           make state changes work correctly and reentrant (so removing
5061           elements from bins during state changes of bins doesn't cause
5062           segfaults or even wrong states)
5063           add debugging category and debugging output to print children states
5064         * gst/gstbin.c: (gst_bin_dispose): 
5065           add some assertion checks
5066         * gst/gstbin.h:
5067         * gst/gstbin.c: (gst_bin_sync_children_state):
5068           deprecate this function - it just does gst_bin_set_state (bin,
5069           GST_STATE (bin)) 
5070         * testsuite/threads/queue.c: (main):
5071           don't use gst_bin_sync_children_state anymore
5072         * testsuite/states/Makefile.am:
5073         * testsuite/states/bin.c:
5074           test that the state changes of bins work as expected
5075         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5076           some adjustments to change states correctly, too
5077         * gst/gstthread.c: (gst_thread_change_state):
5078           don't enable/disable "threadsafe" properties, they're unused and
5079           cause random segfaults
5080         * testsuite/threads/Makefile.am:
5081           the queue check randomly passes now, ignore it
5082
5083 2004-07-21  Benjamin Otte  <otte@gnome.org>
5084
5085         * gst/gstpad.c:
5086           check if data is NULL before outputting debug info. (fixes #145100)
5087
5088 2004-07-21  Benjamin Otte  <otte@gnome.org>
5089
5090         * gst/schedulers/entryscheduler.c:
5091         (gst_entry_scheduler_loop_wrapper),
5092         (gst_entry_scheduler_chain_wrapper),
5093         (gst_entry_scheduler_get_wrapper):
5094           reset the state when the cothread starts, so we don't get assertion
5095           failures on restarting of cothreads
5096
5097 2004-07-20  Benjamin Otte  <otte@gnome.org>
5098
5099         * gst/gstelement.c: (gst_element_link_pads_filtered):
5100           use correct sinkpad, if only sinkpad is specified, but not srcpad
5101           (fixes #147889)
5102         * gst/gstelement.c: (gst_element_set_state_func),
5103         (gst_element_change_state): ref/unref the element, signal handlers
5104         could get rid of the element otherwise
5105
5106 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5107
5108         * docs/random/ds/0.9-suggested-changes:
5109           Make note about renaming fixed-list to array.
5110         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5111         (_gst_value_initialize):
5112           Add array intersections.
5113         * testsuite/caps/intersect2.c: (main):
5114           Add test for array intersections.
5115
5116 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5117
5118         * configure.ac: back to cvs
5119
5120 === release 0.8.4 ===
5121
5122 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5123
5124         * configure.ac:
5125           releasing 0.8.4, "Paella"
5126           bump libtool versioning
5127
5128 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5129
5130         * po/LINGUAS:
5131         * po/ca.po:
5132           adding Catalan translation (Jordi Mallach)
5133
5134 2004-07-20  Wim Taymans  <wim@fluendo.com>
5135
5136         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5137         (handoff_identity), (main):
5138         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5139         (handoff_identity), (main):
5140         * testsuite/schedulers/Makefile.am:
5141         Added failing testcase for variant of #147894
5142
5143 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5144
5145         patch by: David Moore
5146
5147         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5148         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5149         (group_migrate_connected):
5150         * testsuite/schedulers/Makefile.am:
5151           fix for #142813 (Deadlock in optimal scheduler)
5152
5153 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5154
5155         patch by: Wim Taymans
5156
5157         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5158         (gst_opt_scheduler_schedule_run_queue),
5159         (gst_opt_scheduler_get_wrapper), (get_group),
5160         (group_migrate_connected):
5161         * testsuite/schedulers/Makefile.am:
5162           fix for #147819 (Add some checks in the opt scheduler)
5163
5164 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5165
5166         patch by: Benjamin Otte
5167
5168         * gst/gstelementfactory.c: (__gst_element_details_set):
5169           fix for #147929: running gst-register in non-utf8 locale can cause
5170           invalid registry
5171
5172 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5173
5174         patch by: Wim Taymans
5175
5176         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5177         (group_has_element), (element_get_reachables_func),
5178         (group_migrate_connected):
5179           fix for #147894 (opt scheduler decoupled elements mismanagement)
5180         * testsuite/schedulers/Makefile.am:
5181           testsuite app now passes
5182
5183 2004-07-19  Wim Taymans  <wim@fluendo.com>
5184
5185         * testsuite/schedulers/147819.c: (handoff_identity1),
5186         (handoff_identity2), (main):
5187         * testsuite/schedulers/Makefile.am:
5188         Added testcase for bug 147819
5189
5190 2004-07-19  Wim Taymans  <wim@fluendo.com>
5191
5192         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5193         (handoff_identity), (main):
5194         * testsuite/schedulers/Makefile.am:
5195         Added testcase for bug 147894
5196
5197 2004-07-16  Wim Taymans  <wim@fluendo.com>
5198
5199         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5200         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5201         * testsuite/schedulers/Makefile.am:
5202         Added testsuite for bug 142183 in its two incarnations. Refcount
5203         is not increased for scheduled elements and threadsafe properties
5204         mutexes are not properly unlocked.
5205
5206 2004-07-16  Wim Taymans  <wim@fluendo.com>
5207
5208         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5209         (create_chain), (destroy_chain), (create_group), (destroy_group),
5210         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5211         (group_dec_link), (gst_opt_scheduler_pad_link),
5212         (group_inc_links_for_element), (group_migrate_connected):
5213         Call group_inc_link with the proper src->sink ordering -- 
5214         break this, and we break sort_chain. patch from wingo for bug
5215         147713.
5216         Partially revert patch 1.89. When adding a loop based element to 
5217         the scheduler, the links to other groups are automatically followed
5218         and incremented. This should not happen because the bin will call
5219         pad_link explicitly for those connection, resulting in them counted 
5220         twice. Results in assertion failure on pipeline cleanup.
5221
5222 2004-07-16  Wim Taymans  <wim@fluendo.com>
5223
5224         * testsuite/schedulers/143777-2.c: (main):
5225         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5226         (main):
5227         * testsuite/schedulers/Makefile.am:
5228         Added cleanup code to testcase 143777-2.
5229         Added testcase to show bug 147713, does not really show the
5230         deadlock as I can't figure out how to trigger it, but it does
5231         demonstrate bad ordering in the scheduler.
5232
5233 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5234
5235         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5236           change strndup to g_strndup.  Fixes #147707
5237
5238 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5239
5240         * po/af.po:
5241         * po/az.po:
5242         * po/cs.po:
5243         * po/en_GB.po:
5244         * po/fr.po:
5245         * po/nl.po:
5246         * po/sr.po:
5247         * po/sv.po:
5248         * po/tr.po:
5249         * po/uk.po:
5250           updated translations
5251
5252 2004-07-16  Benjamin Otte  <otte@gnome.org>
5253
5254         * gst/gstvalue.c: (gst_greatest_common_divisor):
5255           use ints and return ints, fractions only use ints, too, so this
5256           avoids accidently casting multiplications to unsigned
5257         (gst_value_lcopy_fraction): it's ints, not uint32
5258         (gst_value_set_fraction): disallow minint, multiplying and negation
5259           are broken with it
5260         (gst_value_fraction_multiply): fix to make large numbers work and get
5261         rid of the assumption that the multiplication of two ints fits an
5262         int64 - dunno if that's true for all systems
5263         * testsuite/caps/Makefile.am:
5264         * testsuite/caps/fraction-multiply-and-zero.c:
5265         (check_multiplication), (check_equal), (zero_test), (main):
5266           add tests for all the stuff above
5267         * testsuite/caps/value_compare.c: (test1):
5268           fix comment
5269         * tests/.cvsignore:
5270         * testsuite/caps/.cvsignore:
5271         * testsuite/debug/.cvsignore:
5272         * testsuite/dlopen/.cvsignore:
5273         * testsuite/states/.cvsignore:
5274           get up to date
5275
5276 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5277
5278         * docs/manual/bins-api.xml:
5279         * docs/manual/factories.xml:
5280         * docs/manual/helloworld.xml:
5281         * docs/manual/links-api.xml: 
5282           fixes for out of date info, incorrect info and grammar
5283
5284 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5285
5286         * docs/manual/pads.xml:
5287         * docs/manual/pads-api.xml: grammar fix
5288
5289 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5290
5291         * docs/manual/pads-api.xml: typo + grammar fix
5292
5293 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5294
5295         * docs/gst/gstreamer-sections.txt:
5296           add new symbols
5297         * docs/gst/tmpl/gstelement.sgml:
5298         * docs/gst/tmpl/gstpad.sgml:
5299         * docs/gst/tmpl/gsttypes.sgml:
5300         * docs/gst/tmpl/gstvalue.sgml:
5301           update docs
5302         * gst/gststructure.c: (gst_structure_set_valist),
5303         (gst_structure_from_abbr), (gst_structure_to_abbr):
5304         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5305         (gst_greatest_common_divisor), (gst_value_init_fraction),
5306         (gst_value_copy_fraction), (gst_value_collect_fraction),
5307         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5308         (gst_value_get_fraction_numerator),
5309         (gst_value_get_fraction_denominator),
5310         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5311         (gst_value_deserialize_fraction),
5312         (gst_value_transform_fraction_string),
5313         (gst_value_transform_string_fraction),
5314         (gst_value_compare_fraction), (_gst_value_initialize):
5315         * gst/gstvalue.h:
5316           adding GstFraction GValue type, get/set, and multiply
5317         * testsuite/caps/Makefile.am:
5318         * testsuite/caps/fraction.c: (test), (main):
5319         * testsuite/caps/string-conversions.c: (main):
5320         * testsuite/caps/value_compare.c: (test1), (main):
5321           add regression tests for GstFraction
5322
5323 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5324         
5325         * docs/manual/init-api.xml: Grammar fix
5326
5327 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5328
5329         * docs/manual/states.xml: Fix inconsistent information
5330
5331 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5332
5333         * gst/gstelement.c: (gst_element_set_state):
5334         * gst/gstpad.c: (gst_pad_try_set_caps):
5335         * gst/gststructure.c:
5336         * gst/gstthread.c: (gst_thread_child_state_change):
5337         * gst/gstvalue.c: (gst_value_compare_double):
5338         * gst/gstvalue.h:
5339         * testsuite/parse/parse1.c: (main):
5340           debugging additions and style cleanups
5341
5342 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5343
5344         * docs/manual/states.xml: Grammar fix
5345
5346 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5347
5348         * docs/manual/pads.xml: Grammar fix
5349
5350 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5351
5352         * docs/manual/elements.xml: Fixed image reference
5353
5354 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5355
5356         * docs/manual/goals.xml: Grammar fix
5357
5358 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5359
5360         * docs/manual/motivation.xml:
5361         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5362
5363 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5364
5365         * docs/manual/motivation.xml: Fix spelling
5366
5367 2004-07-15  Benjamin Otte  <otte@gnome.org>
5368
5369         * gst/gstelement.h: 
5370           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5371           strings.
5372         * gst/gstelement.c (gst_element_class_init):
5373           GError's are boxed, not objects
5374         * gst/gstmarshal.list:
5375           update list for the fixed error signal
5376
5377 2004-07-14  Andy Wingo  <wingo@pobox.com>
5378
5379         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5380         there all along, but the function wasn't. (guile-gstreamer's build
5381         system uses the address of the function -- I wasn't actually
5382         trying to use this.)
5383
5384 2004-07-14  Andy Wingo  <wingo@pobox.com>
5385
5386         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5387         as gst_pad_proxy_pad_link) just link to every other pad when they
5388         are called. In the case where the graph has cycles, this will mean
5389         that a call to try_set_caps will recurse. Allow this recursion
5390         and return OK, while we wait for the first try_set_caps to give a
5391         proper return value.
5392         (gst_pad_link_call_link_functions): Since this function is the
5393         only one to set the NEGOTIATING flag on a pad, if the flag is set
5394         it means that the link functions have indirectly recursed. If this
5395         happens, error out to avoid infinite recursion and an eventual
5396         SEGV.
5397         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5398         (gst_pad_proxy_getcaps): Intersect the result with the template
5399         caps to ensure that the return value is valid.
5400
5401 2004-07-14  Andy Wingo  <wingo@pobox.com>
5402
5403         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5404         one refcount, the calling function is the owner of the buffer.
5405
5406 2004-07-14  Wim Taymans  <wim@fluendo.com>
5407
5408         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5409         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5410         Fix stupid warning when an element is to be migrated but
5411         is already migrated.
5412
5413 2004-07-14  Wim Taymans  <wim@fluendo.com>
5414
5415         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5416         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5417         Make sure that a single non-loop-based element does not 
5418         end up in a group. This fixes the testsuite again.
5419
5420 2004-07-14  Wim Taymans  <wim@fluendo.com>
5421
5422         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5423         (add_to_group), (merge_groups), (schedule_group),
5424         (gst_opt_scheduler_get_wrapper), (group_elements),
5425         (group_dec_link), (gst_opt_scheduler_pad_link),
5426         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5427         (gst_opt_scheduler_iterate):
5428         move isolated groups to a new chain.
5429         Emit a warning instead of segfaulting in some error cases.
5430         Fix a bug where the link count between groups was not calculated 
5431         correctly. Fixes #144510.
5432
5433 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5434         * gst/elements/gstfilesrc.c:
5435           Binary files support under Windows now OK
5436       
5437 2004-07-13  Benjamin Otte  <otte@gnome.org>
5438
5439           compatibility fixes for Solaris 8/gcc 2.95
5440         * configure.ac:
5441           include libintl libs in LDFLAGS
5442         * gstvalue.c (gst_value_deserialize_buffer):
5443           cast isxdigit stuff to int to silence compiler warning
5444
5445 2004-07-12  Benjamin Otte  <otte@gnome.org>
5446
5447         * gst/gsttypes.h:
5448           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5449           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5450           just causes support madness
5451         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5452           make it work without this
5453         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5454         (gst_file_index_commit):
5455           glib IO channels don't want binary mode
5456         * testsuite/bytestream/filepadsink.c: (main):
5457         * testsuite/bytestream/test1.c: (read_param_file):
5458           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5459
5460 2004-07-12  Benjamin Otte  <otte@gnome.org>
5461
5462         * gst/gstelement.c: (gst_element_class_init),
5463         (gst_element_set_state), (gst_element_set_state_func):
5464           virutalize gst_element_set_state, use set_state member in class
5465           struct that was already added in 0.7 for this.
5466         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5467         (gst_bin_change_state):
5468           make gst_bin_foreach works similar to other foreach functions, plug
5469           memleaks in it. Make functions using it work with the new approach.
5470           Document gst_bin_foreach, so it can be exported if we want to
5471         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5472           use virtualized set_state to make set_state on bins set the state of
5473           all its children.
5474
5475 2004-07-12  Benjamin Otte  <otte@gnome.org>
5476
5477         * configure.ac:
5478           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5479           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5480         * gst/gstpad.c: (gst_pad_alloc_buffer):
5481           allow buffer_alloc functions to return NULL and allocate a normal
5482           buffer in that case
5483
5484 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5485         * gst/elements/gstfilesink.c:
5486         * gst/elements/gstfilesrc.c:
5487         * gst/indexers/gstfileindex.c:
5488         * gst/gsttypes.h:
5489         * testsuite/bytestream/filepadsink.c:
5490         * testsuite/bytestream/test1.c:
5491           Handle binary files under Windows
5492
5493 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5494         * docs/manual/win32.xml:
5495         * win32/config.h:
5496         * win32/gst-register.vcproj:
5497         * win32/gstreamer.def:
5498           Update to another gettext public build
5499
5500 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5501         * gst/gstplugin.c:
5502           Fix an impossible C syntax
5503         * win32/config.h:
5504           Disable i18n under Windows for the moment
5505         * win32/gst-register.vcproj:
5506           Use this configuration
5507
5508 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5509         * docs/manual/quotes.xml:
5510           Keep the quotes file alive
5511         * docs/random/ds/0.9-suggested-changes:
5512           Add the suggestion of including a 'rowstride' as part of video
5513           format caps
5514
5515 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5516
5517         * gst/gstelement.c: (gst_element_set_state),
5518         (gst_element_change_state):
5519           d'oh.  Set PENDING state correctly before forcing bin to change.
5520         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5521         (gst_structure_parse_fixed_list):
5522         * gst/schedulers/gstoptimalscheduler.c:
5523         (gst_opt_scheduler_state_transition):
5524         * testsuite/states/parent.c: (main):
5525           remove comment now that it's fixed.
5526
5527 2004-07-11  Benjamin Otte  <otte@gnome.org>
5528
5529         * gst/gstclock.h:
5530           GST_SECOND shouldn't cause a conversion to unsigned.
5531         * testsuite/clock/.cvsignore:
5532         * testsuite/clock/Makefile.am:
5533         * testsuite/clock/signedness.c: (main):
5534           make sure it never will again
5535
5536 2004-07-11  Andy Wingo  <wingo@pobox.com>
5537
5538         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5539         whose state is higher than the bin state, raise the bin state to
5540         ensure that bin state := highest child state.
5541         
5542 2004-07-11  Andy Wingo  <wingo@pobox.com>
5543
5544         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5545         procedure on the children of a bin. Assumes that the procedure can
5546         change the set of children.
5547         (set_kid_state_func): New static function.
5548         (gst_bin_change_state): Use gst_bin_foreach to call
5549         set_kid_state_func. Fixes a bug: if a child had a state-change
5550         handler that removes it from the bin, there would be a segfault.
5551         Hopefully it should also work in the case where the state-change
5552         handler on one child adds or removes other children. In any case,
5553         fixes should go to gst_bin_foreach.
5554
5555 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5556
5557         * gst/gstelement.c: (gst_element_set_state):
5558           compatibility fix for latest plugins release.  Change loop back
5559           to while {}
5560
5561 2004-07-09  Wim Taymans  <wim@fluendo.com>
5562
5563         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5564         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5565         (gst_thread_main_loop):
5566         Since remove is virtual in GstBin we must not assume the 
5567         elements GList to have anothing useful.
5568         Add some more logging to GstThread and be a bit more paranoid
5569         when resetting the scheduler.
5570         Set the state of the bin to NULL before removing the children.
5571
5572 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5573
5574         * testsuite/threads/Makefile.am:
5575         * testsuite/threads/threadg.c:
5576           added test to check if problem when removing all elements from a
5577           GstThread before setting GstThread state to NULL
5578
5579 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5580
5581         * docs/gst/tmpl/gstelement.sgml:
5582         * docs/gst/tmpl/gsttypes.sgml:
5583         * gst/gstbin.c: (gst_bin_change_state):
5584         * gst/gstelement.c: (gst_element_set_state),
5585         (gst_element_change_state):
5586           rework so that for bins we try to set the state on all children
5587           as well even if the bin is in the correct state already.
5588           change while to do so at least one iteration is done.
5589           For regular elements, we fall back to the previous behaviour for
5590           now since we first need a new plugins release.
5591         * testsuite/states/parent.c: (main):
5592           test for this case
5593           Fixes #123774
5594
5595 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5596
5597         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5598         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5599         (gst_queue_release_locks), (gst_queue_change_state),
5600         (gst_queue_set_property):
5601           add proper lock debugging.  Change dispose to finalize, since
5602           we're freeing mutexes and other stuff which should happen only once.
5603
5604 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5605
5606         * docs/gst/tmpl/gstelement.sgml:
5607         * docs/gst/tmpl/gstplugin.sgml:
5608         * docs/gst/tmpl/gsttypes.sgml:
5609         * docs/pwg/building-state.xml:
5610         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5611         * gst/gstelement.c: (gst_element_change_state):
5612         * gst/gstthread.c: (gst_thread_change_state):
5613           catch wrong state changes in element base class.
5614
5615 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5616
5617         * gst/gstinfo.h:
5618           clean up layout a little.
5619
5620 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5621
5622         * configure.ac:
5623         * testsuite/Makefile.am:
5624         * testsuite/states/Makefile.am:
5625         * testsuite/states/parent.c: (main):
5626           re-enable states testsuite dir.  Add test for state changes and
5627           parent behaviour
5628
5629 2004-07-09  Wim Taymans  <wim@fluendo.com>
5630
5631         * gst/schedulers/gstoptimalscheduler.c:
5632         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5633         (element_get_reachables_func), (element_get_reachables),
5634         (debug_element), (rechain_group), (group_migrate_connected),
5635         (gst_opt_scheduler_pad_unlink):
5636         Do not try to migrate decoupled elements to a new group since
5637         they are not added to groups.
5638
5639 2004-07-08  Benjamin Otte  <otte@gnome.org>
5640
5641         * gst/gstelement.c: (gst_element_error_func):
5642           make reentrant (= allow removing elements in error handler)
5643
5644 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5645
5646         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5647         (gst_pad_send_event), (gst_pad_call_chain_function):
5648           events sent to elements below PAUSED cannot be handled, so
5649           don't try to
5650
5651 2004-07-08  Wim Taymans  <wim@fluendo.com>
5652
5653         * gst/schedulers/gstoptimalscheduler.c:
5654         (chain_recursively_migrate_group), (create_group),
5655         (schedule_group), (gst_opt_scheduler_pad_link),
5656         (group_elements_set_visited), (element_get_reachables_func),
5657         (element_get_reachables), (group_can_reach_group), (debug_element),
5658         (rechain_group), (group_migrate_connected),
5659         (gst_opt_scheduler_pad_unlink):
5660         * testsuite/schedulers/Makefile.am:
5661         Implemented group splitting and rechaining.
5662         Fixes 143777 and 143777-2 in the testsuite.
5663
5664 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5665
5666         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5667           extra debugging
5668         * gst/gstevent.h:
5669         * gst/gstinfo.c: (gst_debug_log_default):
5670           print time nicely.  add thread pointer until someone figures out
5671           a completely portable way of getting at thread id's.
5672         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5673         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5674         (gst_pad_call_chain_function):
5675           extra debugging
5676         * gst/schedulers/gstoptimalscheduler.c:
5677         (get_group_schedule_function), (loop_group_schedule_function),
5678         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5679         (pad_clear_queued), (gst_opt_scheduler_iterate):
5680           rename BUFPEN and friends to DATAPEN since that's what they are.
5681
5682 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5683
5684         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5685         * gst/gstbuffer.h:
5686         * gst/gstpad.c:
5687           cleanups and debugging
5688
5689 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5690
5691         * configure.ac:
5692         * gst/gstvalue.c: (gst_value_compare_enum),
5693         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5694         (gst_value_can_compare), (gst_value_compare):
5695         * testsuite/Makefile.am:
5696         * testsuite/enumcaps/Makefile.am:
5697         * testsuite/enumcaps/enumcaps.c:
5698           Fix enum serialization, deserialization, comparison in caps, add
5699           a test to ensure that this continues working in the future.
5700
5701 2004-07-06  David Schleef  <ds@schleef.org>
5702
5703         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5704         Fix memleak.
5705
5706 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5707
5708         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5709         * gst/gstplugin.h:
5710         * gst/registries/gstxmlregistry.c:
5711         (plugin_times_older_than_recurse), (plugin_times_older_than),
5712         (gst_xml_registry_parse_padtemplate):
5713           only rebuild registry when actual plugins have a newer time than
5714           the registry.  Fixes #145520
5715
5716 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5717
5718         * docs/manual/manual.xml:
5719         * docs/manual/win32.xml:
5720           add chapter on win32 building.  fixes #142422
5721
5722 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5723
5724         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
5725
5726         * gst/autoplug/gstspider.c: (gst_spider_init),
5727         (gst_spider_dispose):
5728           fix spider memleaks.  fixes #137863
5729
5730 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5731
5732         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
5733
5734         * gst/schedulers/gstoptimalscheduler.c:
5735         (gst_opt_scheduler_pad_unlink):
5736           fix SIGBUS error, fixes #145338
5737
5738 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5739
5740         * gst/gstobject.c: (gst_object_replace):
5741         * gst/gstscheduler.c: (gst_scheduler_get_clock):
5742         * gst/gstsystemclock.c: (gst_system_clock_obtain):
5743           clean up clock lifecycle.  Fixes #109831
5744
5745 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5746
5747         * po/LINGUAS:
5748         * po/cs.po:
5749           added Czech translation (Miloslav Trmac)
5750
5751 2004-07-04  David Schleef  <ds@schleef.org>
5752
5753         * tools/Makefile.am:
5754         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5755
5756 2004-07-04  David Schleef  <ds@schleef.org>
5757
5758         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5759
5760 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5761
5762         * gst/gstbin.c: (gst_bin_restore_thyself):
5763           chain to parent restore so the bins get restored correctly
5764           in the editor
5765
5766 2004-07-03  David Schleef  <ds@schleef.org>
5767
5768         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5769         Actually do something in these functions, like before the big
5770         caps change.  (bug #145137)
5771
5772 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5773
5774         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
5775         (gst_element_get_compatible_pad_filtered):
5776         * gst/gstthread.c: (gst_thread_main_loop):
5777           more debugging
5778
5779 2004-07-02  David Schleef  <ds@schleef.org>
5780
5781         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
5782         * gst/gstobject.h:
5783         * gst/gstparse.h:
5784         * gst/gsttrace.h:
5785         * gst/gstxml.h:
5786
5787 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5788
5789         * gst/gstpad.c: (gst_pad_check_schedulers),
5790         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5791         (gst_pad_link_prepare):
5792           revert until testsuite is fixed
5793
5794 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5795
5796         * testsuite/Makefile.am:
5797         * testsuite/caps/filtercaps.c: (main):
5798         * testsuite/clock/clock1.c: (main):
5799         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
5800           fix some more tests
5801
5802 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5803
5804         * testsuite/cleanup/cleanup1.c: (create_pipeline):
5805         * testsuite/cleanup/cleanup2.c: (create_pipeline):
5806         * testsuite/cleanup/cleanup4.c: (main):
5807           fix testsuite
5808
5809 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5810
5811         * libs/gst/control/control.c:
5812         * libs/gst/control/dparam.c:
5813         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
5814         * libs/gst/control/dparammanager.c:
5815         * libs/gst/control/dparammanager.h:
5816         * testsuite/dynparams/Makefile.am:
5817         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
5818         (gst_dptest_change_state), (gst_dptest_chain), (main):
5819           fix testcase for dparams
5820           add debugging category
5821
5822 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5823
5824         * testsuite/Rules:
5825           change path
5826
5827 2004-07-02  Benjamin Otte  <otte@gnome.org>
5828
5829         * tests/.cvsignore:
5830         * tests/Makefile.am:
5831         * tests/mass_elements.c: (gst_get_current_time), (main):
5832           add simple benchmark to test various speeds of fakesrc ! identity !
5833           identity ! ... ! fakesink.
5834           Usage: mass_elements [num_identities] [num_buffers]
5835           If not specified they default to 1000.
5836
5837 2004-07-02  Benjamin Otte  <otte@gnome.org>
5838
5839         * gst/gstpad.c: (gst_pad_check_schedulers),
5840         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5841         (gst_pad_link_prepare):
5842           check that pads that get linked belong to the same manager. The old
5843           code allowed linking elements before putting them into bins, so it
5844           worked to link them and then put them in different threads, which
5845           lead to weird behaviour.
5846           Since this effectively disallows linking elements before putting
5847           them in a bin, some applications might not work after this and error
5848           out. If these applications are too critical, we might need to revert
5849           that patch. Please test this before the next release...
5850
5851 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5852
5853         * gst/gstpad.c: (gst_pad_get_caps):
5854           throw an error if the getcaps function does not return a subset of
5855           the template caps.
5856         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
5857           make disconts without position info an error in debugging
5858         * tests/spidey_bench.c: (handoff), (main):
5859           don't count first try when averaging
5860
5861 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5862
5863         * gst/gstplugin.c: (gst_plugin_load_file):
5864           figure out problem with dynamic test
5865
5866 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5867
5868         * docs/gst/Makefile.am:
5869           fix docs build
5870
5871 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5872
5873         * po/POTFILES.in:
5874         * po/af.po:
5875         * po/az.po:
5876         * po/en_GB.po:
5877         * po/fr.po:
5878         * po/nl.po:
5879         * po/sr.po:
5880         * po/sv.po:
5881         * po/tr.po:
5882         * po/uk.po:
5883         * tools/gst-register.c: (plugin_added_func), (main):
5884           i18n-ize -register, fix plural
5885
5886 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5887
5888         * gst/elements/gstidentity.c: (gst_identity_class_init),
5889         (gst_identity_init), (gst_identity_chain),
5890         (gst_identity_set_property), (gst_identity_get_property):
5891         * gst/elements/gstidentity.h:
5892           check for perfect stream
5893
5894 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5895
5896         * gst/elements/gstidentity.c: (gst_identity_chain):
5897           print offset_end
5898
5899 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5900
5901         * docs/gst/Makefile.am:
5902         * docs/gst/gstreamer-docs.sgml:
5903           doc fixes
5904
5905 2004-06-24  David Schleef  <ds@schleef.org>
5906
5907         * autogen.sh:  Remove call to env, since the buildbot isn't
5908         broken anymore.
5909
5910 2004-06-24  Wim Taymans  <wim@fluendo.com>
5911
5912         * gst/elements/Makefile.am:
5913         * gst/elements/gstelements.c:
5914         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
5915         (gst_multifdsink_class_init), (gst_multifdsink_init),
5916         (gst_multifdsink_add), (gst_multifdsink_remove),
5917         (gst_multifdsink_clear), (gst_multifdsink_chain),
5918         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
5919         * gst/elements/gstmultifdsink.h:
5920         Added an element that writes to multiple filedescriptors at once.
5921
5922 2004-06-24  Benjamin Otte  <otte@gnome.org>
5923
5924         * gst/parse/grammar.y:
5925           don't try to link elements before they have been added to bins
5926
5927 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5928
5929         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
5930         (gst_file_pad_get_length):
5931         * libs/gst/bytestream/filepad.h:
5932           add 2 new functions
5933
5934 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5935
5936         * docs/gst/gstreamer-sections.txt:
5937         remove from docs, the define that Benjamin removed from gstelement.h
5938
5939 2004-06-22  Benjamin Otte  <otte@gnome.org>
5940
5941         * gst/gstelement.h:
5942           remove define that referenced a nonexisting GstElement struct member
5943
5944 2004-06-20  Benjamin Otte  <otte@gnome.org>
5945
5946         * gst/gstdata.c: (gst_data_is_writable):
5947           whoops, return values were wrong, so writable data was marked as
5948           non-writable and vice versa. (fixes #143953, spotted by Francis
5949           Labonte)
5950           Shows how rarely we need to copy data ;)
5951
5952 2004-06-20  Benjamin Otte  <otte@gnome.org>
5953
5954         * testsuite/schedulers/.cvsignore:
5955         * testsuite/schedulers/Makefile.am:
5956         * testsuite/schedulers/143777-2.c: (main):
5957           add test for opt breakage in bug #143777
5958
5959 2004-06-20  Benjamin Otte  <otte@gnome.org>
5960
5961         * gst/gstpad.c: (gst_pad_call_chain_function):
5962           check for if we were unlinked while inside the chainfunction (fixes
5963           entrygthread having issues with #143777)
5964         * testsuite/schedulers/143777.c: (main):
5965         * testsuite/schedulers/Makefile.am:
5966           add a test for that fix
5967
5968 2004-06-20  Benjamin Otte  <otte@gnome.org>
5969
5970         * gst/gstvalue.c: (gst_value_set_int_range):
5971           test that start is smaller then end
5972         * libs/gst/bytestream/Makefile.am:
5973         * libs/gst/bytestream/filepad.c: 
5974         * libs/gst/bytestream/filepad.h:
5975           add GstFilePad - a pad that behaves like a FILE*
5976         * testsuite/bytestream/.cvsignore:
5977         * testsuite/bytestream/Makefile.am:
5978         * testsuite/bytestream/filepadsink.c: 
5979           test for the GstFilePad
5980
5981 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
5982
5983         * gst/elements/gstidentity.c: (gst_identity_class_init),
5984         (gst_identity_init), (gst_identity_set_clock),
5985         (gst_identity_chain), (gst_identity_set_property),
5986         (gst_identity_get_property):
5987         * gst/elements/gstidentity.h:
5988         * gst/gstclock.c: (gst_clock_id_wait):
5989           add a "sync" property to sync to the clock
5990
5991 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5992
5993         * gst/gstelementfactory.c: (gst_element_factory_create):
5994           make the freakin "elementfactory bla has no type" message more
5995           useful. So we actually can do something when someone shows up
5996           complaining about it.
5997
5998 2004-06-15  Johan Dahlin  <johan@gnome.org>
5999
6000         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6001         found. This matches the old behavior better. Thanks to Thomas for
6002         pointing out.
6003
6004 2004-06-14  David Schleef  <ds@schleef.org>
6005
6006         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6007         -fomit-frame-pointer.  Appears to generate correct code in
6008         other cases as well.
6009
6010 2004-06-14  Johan Dahlin  <johan@gnome.org>
6011
6012         * tools/gst-inspect.c (main): Add two new command line options: -a
6013         to print all elements and -n to print the name on each line. Also
6014         fix some error reporting.
6015         (main): Simplify, remove -n and always print names if -a is specified
6016
6017 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6018
6019         * win32/gstconfig.h:
6020         * win32/GSTreamer.vcproj:
6021         * win32/Makefile:
6022         * gst/gstconfig.h.in:
6023         * gst/gst.h:
6024         * gst/gstbin.h:
6025         * gst/gstelement.h:
6026         * gst/gstevent.h:
6027         * gst/gstobject.h:
6028         * gst/gstpad.h:
6029         * docs/gst/gstreamer-sections.txt:
6030         * docs/gst/tmpl/gstconfig.sgml:
6031           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6032
6033 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6034         * docs/gst/gstreamer-sections.txt:
6035         * docs/gst/tmpl/gstconfig.sgml:
6036         Add the GSTREAMER_EXPORT macro to the docs
6037
6038 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6039
6040         * tools/gst-compprep.c: (handle_xmlerror), (main):
6041         Add a check for the version that introduced SetStructuredError to fix
6042         the build on FC1
6043
6044 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6045
6046         * win32/msvc71.sln:
6047         * win32/testsuite/:
6048           prepare to compile the testsuite with MSVC
6049
6050 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6051
6052         * docs/manual/win32.xml:
6053           attempt to transform the Win32 README into an XML doc
6054
6055 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6056
6057         * gst/gst.c:
6058         * gst/gstbin.*:
6059         * gst/config.h.in:
6060         * gst/gstelement.*:
6061         * gst/gstevent.h:
6062         * gst/gstobject.*:
6063         * gst/gstpad.h:
6064         * tools/gst-register.c:
6065         * win32/gstreamer.def:
6066           extern symbols are now exported for the Windows DLL
6067
6068 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6069
6070         * gst/gstinfo.h:
6071           fix a problem to enable/disable DEBUG under MSVC
6072
6073 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6074
6075         * win32/:
6076           enable more debug code in DEBUG build
6077
6078 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6079
6080         * win32/config.h:
6081         * gst/gst-i18n-app.h:
6082           enable NLS under Windows
6083
6084 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6085         * tools/gst-compprep.c: (handle_xmlerror), (main):
6086           Make an error that baffled me a bit clearer
6087
6088 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6089
6090         * gst/gstqueue.c:
6091           don't use g_queue_get_length () because it's 2.4, use ->length
6092
6093 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6094
6095         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6096
6097         * tools/gst-inspect.c: (print_signal_info):
6098           don't free random data twice. (fixes #144185)
6099
6100 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6101
6102         * gst/gstqueue.c:
6103         * gst/gstqueue.h:
6104           fix removing from the wrong queue on event timeout
6105           fix disposing of the event queue by casting correctly
6106           add mutexes for handling the event queue
6107           someone was sleeping when fixing queue last time around :)
6108
6109 2004-06-10  Johan Dahlin  <johan@gnome.org>
6110
6111         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6112         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6113
6114 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6115
6116         * docs/random/gdp:
6117         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6118         * libs/gst/dataprotocol/dataprotocol.c:
6119         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6120         (gst_dp_buffer_from_header):
6121         * libs/gst/dataprotocol/dataprotocol.h:
6122         * libs/gst/dataprotocol/dp-private.h:
6123           rev version to 0.1, add buffer flags and copy them
6124
6125 2004-06-09  Johan Dahlin  <johan@gnome.org>
6126
6127         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6128         the flags from the buffer we're copying.
6129
6130 2004-06-09  Wim Taymans  <wim@fluendo.com>
6131
6132         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6133         * gst/elements/gstidentity.c: (gst_identity_init),
6134         (gst_identity_chain):
6135         Print more buffer info in fakesink.
6136         Make identity output similar to fakesink.
6137
6138 2004-06-07  Daniel Gazard  <dany42@free.fr>
6139
6140         reviewed by Benjamin Otte  <otte@gnome.org>
6141
6142         * configure.ac:
6143           fix cross compiling not working. (fixes #143741)
6144
6145 2004-06-07  Benjamin Otte  <otte@gnome.org>
6146
6147         * gst/gstelement.c: (gst_element_set_time_delay):
6148           add failure check
6149         * gst/gstinfo.h:
6150           put brackets around macro arguments of GST_TIME_ARGS, add note to
6151           move it to correct header in 0.9
6152
6153 2004-06-07  Benjamin Otte  <otte@gnome.org>
6154
6155         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6156         (gst_file_index_load), (_file_index_id_save_entries),
6157         (gst_file_index_commit), (gst_file_index_add_association),
6158         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6159         (gst_file_index_plugin_init):
6160           make debugging use a default category
6161
6162 2004-06-06  David Moore  <dcm@acm.org>
6163
6164         reviewed by Benjamin Otte  <otte@gnome.org>
6165
6166         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6167         (gst_fdsrc_change_state):
6168           reset offset counter when going READY => PAUSED. (fixes #142903)
6169
6170 2004-06-06  ed@catmur.co.uk
6171
6172         reviewed by Benjamin Otte  <otte@gnome.org>
6173
6174         * gst/registries/gstxmlregistry.c:
6175         (gst_xml_registry_rebuild_recurse):
6176           don't rely on g_dir_open to figure out if a file is a directory, use
6177           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6178           directories. (fixes #142850)
6179
6180 2004-06-06  Benjamin Otte  <otte@gnome.org>
6181
6182         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6183           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6184         * libs/gst/bytestream/adapter.c:
6185         * libs/gst/bytestream/adapter.h:
6186           fix copyright in header and typo in debugging category name
6187
6188 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6189
6190         * configure.ac:
6191           bump nano to cvs
6192
6193 === release 0.8.3 ===
6194
6195 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6196
6197         * configure.ac:
6198           update libtool versioning
6199           do a new release
6200         * docs/gst/tmpl/gstelement.sgml:
6201         * docs/gst/tmpl/gsttypes.sgml:
6202         * gst/gstinfo.c: (_gst_debug_init):
6203           put back GST_CAT_DATAFLOW to fix API breakage
6204
6205 2004-06-04  David Schleef  <ds@schleef.org>
6206
6207         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6208
6209 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6210
6211         * configure.ac:
6212           bump nano to cvs
6213
6214 === release 0.8.2 ===
6215
6216 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6217
6218         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6219           check GST_DEBUG environment variable which is parsed the same way
6220           as --gst-debug=
6221
6222 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6223
6224         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6225                             gstmd5sink.c gstshaper.c gsttee.c
6226                             gsttypefindelement.c
6227         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6228
6229           - removing trailing commas at end of enums
6230             it is correct C99 code but C90 compilers would complain
6231             (AIX, Forte, ...)
6232             ('should' fix #143290, at least partially)
6233
6234 2004-05-27  Wim Taymans  <wim@fluendo.com>
6235
6236         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6237         (chain_group_set_enabled), (create_group), (add_to_group),
6238         (merge_groups), (setup_group_scheduler), (group_elements),
6239         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6240         Don't try to follow the pad connections with other groups
6241         when a loop based element is added to the scheduler because
6242         the bin will inform the scheduler about the pad links a little
6243         later.
6244
6245 2004-05-27  Wim Taymans  <wim@fluendo.com>
6246
6247         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6248         (remove_from_chain), (chain_group_set_enabled),
6249         (setup_group_scheduler), (group_element_set_enabled),
6250         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6251         (gst_opt_scheduler_show):
6252         Elements without a group can do a state change as well, just wait
6253         with the setup of the scheduling function when it is added to a
6254         chain.
6255
6256 2004-05-27  Wim Taymans  <wim@fluendo.com>
6257
6258         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6259         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6260         (merge_groups), (setup_group_scheduler),
6261         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6262         (gst_opt_scheduler_show):
6263         Fixes to maintain internal consistency of the scheduler data
6264         structures. 
6265          - adding an enabled group to a chain should increment the
6266            number of enabled elements in that chain.
6267          - removing an enabled group from a chain could disable the
6268            chain.
6269          - removing a disabled group from a chain could enable the
6270            chain.
6271          - add g_assert when internal inconsistency is detected.
6272          - adding an element to a group could increase the number of
6273            links this group has with other groups.
6274          - merging two groups also merges the chains.
6275          - also show group links in the _show method.
6276            
6277
6278 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6279
6280         * gst/gstcaps.c: (gst_caps_structure_simplify):
6281           don't print error messages when there is no error
6282         * gst/gstvalue.c: (gst_value_compare_int_range):
6283           compare the second value, too
6284         * testsuite/caps/Makefile.am:
6285         * testsuite/caps/random.c: (assert_on_error), (main):
6286           add tests to make sure the two things above are checked for
6287
6288 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6289
6290         * configure.ac:
6291         * libs/gst/dataprotocol/Makefile.am:
6292         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6293         * libs/gst/dataprotocol/dataprotocol.h:
6294           wrap header in GST_ENABLE_NEW.  make code use it
6295
6296 2004-05-23  Johan Dahlin  <johan@gnome.org>
6297
6298         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6299         so verbose and print GstElement signal names all the time.
6300
6301 2004-05-22  David Schleef  <ds@schleef.org>
6302
6303         * gst/registries/gstxmlregistry.c:
6304         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6305         (bug #142957)
6306
6307 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6308
6309         * configure.ac:
6310           scrub cflags for glib2 so gcc doesn't complain when glib is in
6311           /usr/local
6312
6313 2004-05-21  Johan Dahlin  <johan@gnome.org>
6314
6315         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6316         __GNUC__, patch from Brian Cameron, fixes bug #142804
6317
6318 2004-05-20  David Schleef  <ds@schleef.org>
6319
6320         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6321         comparison code.  (bug #142819)
6322
6323 2004-05-20  Wim Taymans  <wim@fluendo.com>
6324
6325         * gst/gstbuffer.c: (gst_buffer_default_copy):
6326         * gst/gstbuffer.h:
6327         Added Comment to a flag.
6328         copy relevant flags in _buffer_copy.
6329
6330 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6331
6332         reviewed by: Wim Taymans <wim at fluendo dot com>
6333
6334         * gst/gstbuffer.h:
6335           add GST_BUFFER_IN_CAPS buffer flag
6336         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6337         (gst_structure_parse_any_list), (gst_structure_parse_list),
6338         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6339         * gst/gstvalue.c: (gst_value_serialize_any_list),
6340         (gst_value_transform_any_list_string),
6341         (gst_value_list_prepend_value), (gst_value_list_append_value),
6342         (gst_value_list_get_size), (gst_value_list_get_value),
6343         (gst_value_transform_list_string),
6344         (gst_value_transform_fixed_list_string),
6345         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6346         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6347         (_gst_value_initialize):
6348         * gst/gstvalue.h:
6349           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6350           < , > as a format.
6351         * testsuite/caps/string-conversions.c: (main):
6352           add regression tests for < >
6353
6354 2004-05-20  Johan Dahlin  <johan@gnome.org>
6355
6356         * docs/gst/Makefile.am (all-local): Re-add
6357
6358 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6359
6360         * docs/gst/Makefile.am:
6361         * docs/gst/gstreamer-docs.sgml:
6362         * docs/libs/Makefile.am:
6363         * docs/libs/gstreamer-libs-docs.sgml:
6364           fix distcheck issues
6365
6366 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6367
6368         * libs/gst/dataprotocol/Makefile.am:
6369           add to autotest
6370
6371 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6372
6373         * libs/gst/dataprotocol/Makefile.am:
6374         * libs/gst/dataprotocol/dataprotocol.c:
6375         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6376         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6377         * libs/gst/dataprotocol/dp-private.h:
6378           use GST macros to read/write fixed length ints
6379           add some more asserts
6380
6381 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6382
6383         * docs/libs/gstreamer-libs-docs.sgml:
6384         * docs/libs/gstreamer-libs-sections.txt:
6385           remove idct and putbits
6386         * configure.ac:
6387         * docs/libs/tmpl/gstdataprotocol.sgml:
6388         * libs/gst/Makefile.am:
6389         * libs/gst/dataprotocol/Makefile.am:
6390         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6391         (buffer_test), (caps_test), (event_test), (main):
6392         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6393         (gst_dp_dump_byte_array), (gst_dp_init),
6394         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6395         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6396         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6397         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6398         (gst_dp_validate_header), (gst_dp_validate_payload),
6399         (gst_dp_validate_packet), (plugin_init):
6400         * libs/gst/dataprotocol/dataprotocol.h:
6401         * libs/gst/dataprotocol/dp-private.h:
6402           add dataprotocol
6403
6404 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6405
6406         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6407           fix int variable deserialization and add a helper so we can actually
6408           debug this.
6409
6410 2004-05-18  David Schleef  <ds@schleef.org>
6411
6412         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6413           argv[0].  Calling yourself is probably not the best way to
6414           construct a test like this, btw.
6415
6416 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6417
6418         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6419           don't claim to be more intelligent than a scheduler when the
6420           scheduler claims the pipeline is stopped
6421         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6422         (safe_cothread_destroy),
6423         (gst_entry_scheduler_remove_all_cothreads),
6424         (gst_entry_scheduler_reset), (_remove_cothread),
6425         (gst_entry_scheduler_state_transition):
6426           hold off cothread destruction if we're not in main cothread
6427         * configure.ac:
6428         * testsuite/Makefile.am:
6429           add new test dir
6430         * testsuite/schedulers/.cvsignore:
6431         * testsuite/schedulers/Makefile.am:
6432           add tests
6433         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6434           check relinking and adding/removing elements from a running pipeline
6435         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6436           check unlinking in a running pipeline
6437         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6438           check unreffing a running pipeline
6439         * testsuite/schedulers/useless_iteration.c: (main):
6440           check iterating a pipeline that contains running threads works
6441
6442 2004-05-18  David Schleef  <ds@schleef.org>
6443
6444         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6445           is false.
6446
6447 2004-05-18  Wim Taymans  <wim@fluendo.com>
6448
6449         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6450         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6451         Fixed an error introduced with patch for 1.63. When setting
6452         a get based element as the entry point in a group, make sure
6453         to mark the group as GET based.
6454
6455 2004-05-18  Wim Taymans  <wim@fluendo.com>
6456
6457         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6458         (setup_group_scheduler), (loop_group_schedule_function),
6459         (gst_opt_scheduler_pad_link):
6460         Added some more debug info and fixed a bug where the group
6461         type was set to LOOP but it was in fact unknown.
6462
6463 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6464
6465         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6466           make resetting scheduler work twice in a row
6467
6468 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6469
6470         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6471         (CREATE_USERIALIZATION), (_gst_value_initialize),
6472         (gst_value_compare_float), (gst_value_serialize_float),
6473         (gst_value_deserialize_float), (gst_value_compare_enum),
6474         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6475           add serialization and comparison functions for long, int64, enum and
6476           float values
6477         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6478           use best serialization function in type hierarchy instead of only a
6479           matching one. This is required for enums to work.
6480         * gst/parse/grammar.y:
6481           use gst_caps_deserialize
6482         * testsuite/parse/Makefile.am:
6483           parse1 now works
6484         * testsuite/parse/parse1.c: (main):
6485           remove aggregator check, aggregator is broken, this test works now
6486           but fails because of bug #138012
6487         * testsuite/parse/parse2.c: (main):
6488           s/xvideosink/xvimagesink - this test looks a lot like we should
6489           disable it
6490
6491 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6492
6493         * gst/gstelement.c: (gst_element_class_init):
6494           whoops, store the signal id correctly
6495         * gst/schedulers/gstbasicscheduler.c:
6496         (gst_basic_scheduler_chain_wrapper):
6497           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6498           chain function isn't linked
6499
6500 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6501         * configure.ac:
6502         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6503         support until we decide where the flags should be used
6504         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6505         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6506         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6507         Output refused caps in the debug info
6508
6509 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6510
6511         * gst/elements/gstidentity.c: (gst_identity_chain):
6512           add duration debug
6513         * gst/gstinfo.c: (gst_debug_log_default):
6514           add timestamp
6515
6516 2004-05-13  Benjamin Otte  <otte@gnome.org>
6517
6518         * gst/gstpipeline.c: (gst_pipeline_dispose),
6519         (gst_pipeline_change_state):
6520           call gst_scheduler_reset on dispose (fixes #141416)
6521
6522 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6523
6524         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6525           compute mapsize correctly
6526         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6527           use correct datatypes when calling a varargs function
6528         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6529           push a DISCONT event as first thing
6530         * gst/gst_private.h:
6531         * gst/gstinfo.c: (_gst_debug_init):
6532           remove GST_DATAFLOW debugging category
6533         * gst/gstbin.c: (gst_bin_iterate):
6534           use GST_SCHEDULING category
6535         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6536         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6537         (gst_pad_call_get_function):
6538           add GST_DATAFLOW to easily track flow of buffers or events.
6539         * gst/gstqueue.c: (gst_queue_get_type),
6540         (gst_queue_handle_pending_events), (gst_queue_chain),
6541         (gst_queue_get), (gst_queue_handle_src_event):
6542           use own static debugging category GST_DATAFLOW for dataflow,
6543           use DEBUG category for showing which path events go, use LOG
6544           category for buffers.
6545
6546 2004-05-10  David Schleef  <ds@schleef.org>
6547
6548         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6549
6550 2004-05-10  David Schleef  <ds@schleef.org>
6551
6552         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6553         symbols, because otherwise we don't know what they are.  Thanks,
6554         the GStreamer team.
6555         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6556
6557 2004-05-10  David Schleef  <ds@schleef.org>
6558
6559         (from Steve Lhomme)
6560         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6561         are deleted.  Fix.
6562         * win32/Makefile.inspect:
6563         * win32/Makefile.launch:
6564         * win32/Makefile.register:
6565
6566 2004-05-10  David Schleef  <ds@schleef.org>
6567
6568         * gst/gstinfo.h: Add missing inline function.
6569         * gst/gsttrace.c: add include
6570         * gst/parse/grammar.y: remove unused code
6571         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6572         more portable.
6573         * tools/gst-register.c: wrap unistd.h
6574         
6575         More additions/fixes from Steve for the MSVC build.
6576         * win32/GStreamer.vcproj:
6577         * win32/Makefile:
6578         * win32/Makefile.inspect:
6579         * win32/Makefile.launch:
6580         * win32/Makefile.register:
6581         * win32/README.txt:
6582         * win32/gst-inspect.vcproj:
6583         * win32/gst-launch.vcproj:
6584         * win32/gst-register.vcproj:
6585         * win32/gstbytestream.def:
6586         * win32/gstbytestream.vcproj:
6587         * win32/gstconfig.h:
6588         * win32/gstelements.def:
6589         * win32/gstelements.vcproj:
6590         * win32/gstenumtypes.c:
6591         * win32/gstenumtypes.h:
6592         * win32/gstoptimalscheduler.def:
6593         * win32/gstoptimalscheduler.vcproj:
6594         * win32/gstreamer.def:
6595         * win32/gstspider.def:
6596         * win32/gstspider.vcproj:
6597         * win32/gstversion.h:
6598         * win32/msvc71.sln:
6599
6600 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6601
6602         * gst/gstelement.c: (gst_element_class_init),
6603         (gst_element_no_more_pads):
6604         * gst/gstelement.h:
6605           add gst_element_no_more_pads and the "no-more-pads" signal
6606
6607 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6608
6609         * gst/gstregistry.c: (gst_registry_add_plugin):
6610           refuse to add plugins when a plugin with same name is already
6611           registered. Fixes a bunch of "How to remove plugins?" issues.
6612           May lead to other problems though, let's test
6613
6614 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6615
6616         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6617         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6618         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6619
6620 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6621
6622         * tests/Makefile.am: fix am16 issue
6623
6624 2004-05-09  Benjamin Otte  <otte@gnome.org>
6625
6626         * libs/gst/bytestream/Makefile.am:
6627           we should indeed add .c files to makefiles or they won't be built
6628           (d'oh)
6629
6630 2004-05-08  Benjamin Otte  <otte@gnome.org>
6631
6632         * gst/gstpad.c: (gst_pad_proxy_fixate):
6633           really reduce the set of caps
6634
6635 2004-05-08  Benjamin Otte  <otte@gnome.org>
6636
6637         * tests/Makefile.am:
6638         * tests/spidey_bench.c: (handoff), (main):
6639           add benchmark to test how long spider needs to create a pipeline
6640
6641 2004-05-08  Benjamin Otte  <otte@gnome.org>
6642
6643         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6644           mark links as unengaged when unnegotiating instead of deactivating.
6645           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6646
6647 2004-05-08  Benjamin Otte  <otte@gnome.org>
6648
6649         * docs/manual/helloworld.xml:
6650           s/audiosink/osssink (patch by Patrick Guimond)
6651
6652 2004-05-07  David Schleef  <ds@schleef.org>
6653
6654         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6655         since it contains important stuff.
6656
6657 2004-05-07  David Schleef  <ds@schleef.org>
6658
6659         * testsuite/caps/caps.c: (test3), (main): A check for appending
6660         ANY caps.
6661
6662 2004-05-07  David Schleef  <ds@schleef.org>
6663
6664         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6665         which may contain commas.  Fixes detection of -Wa,-mregnames
6666
6667 2004-05-06  David Schleef  <ds@schleef.org>
6668
6669         Changes to handle compilers that don't have variadic macro
6670         support.  In particular, glib headers define some inlines
6671         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6672         builds.
6673         * gst/Makefile.am:
6674         * gst/cothreads.c:
6675         * gst/elements/gstfdsink.c:
6676         * gst/elements/gstfdsrc.c:
6677         * gst/elements/gstfilesink.c:
6678         * gst/elements/gstfilesrc.c:
6679         * gst/gst_private.h:
6680         * gst/gstatomic.c:
6681         * gst/gstcaps.c: (gst_caps_append):
6682         * gst/gstcpu.c: (gst_cpuid_i386):
6683         * gst/gstelement.c:
6684         * gst/gsterror.c:
6685         * gst/gstfilter.c:
6686         * gst/gstinfo.h:
6687         * gst/gstprobe.c:
6688         * gst/gstquery.c:
6689         * gst/gstregistry.c:
6690         * gst/gststructure.c:
6691         * gst/gsttaginterface.c:
6692         * gst/gsttrace.c: (gst_trace_new):
6693         * gst/gsttrashstack.c:
6694         * gst/gsturi.c:
6695         * gst/gstvalue.c:
6696         * gst/parse/grammar.y:
6697         * gst/parse/parse.l:
6698         * tools/gst-inspect.c: (main):
6699         * tools/gst-launch.c: (main):
6700         * tools/gst-xmlinspect.c: (PUT_STRING):
6701
6702 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6703
6704         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6705         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6706         * gst/elements/gstfilesrc.h:
6707           send NEW_MEDIA events correctly
6708         * gst/elements/gsttypefindelement.c: (start_typefinding),
6709         (gst_type_find_element_handle_event):
6710           restart typefinding when we get a NEW_MEDIA event
6711         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6712         (gst_bin_dispose):
6713           don't die when someone removes elements in callbacks
6714         * gst/gstelement.c: (gst_element_change_state):
6715           improve debugging
6716         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
6717           we need a NEW_MEDIA event to engage a link
6718         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
6719           don't g_print debugging stuff
6720         * testsuite/caps/simplify.c: (check_caps):
6721
6722 2004-05-04  Benjamin Otte  <otte@gnome.org>
6723
6724         * gst/parse/grammar.y:
6725           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
6726
6727 2004-05-04  Benjamin Otte  <otte@gnome.org>
6728
6729         * testsuite/caps/renegotiate.c: (main):
6730           improve output in error case
6731
6732 2004-05-04  Benjamin Otte  <otte@gnome.org>
6733
6734         * gst/parse/grammar.y:
6735           fix assert to not trigger when there's no error argument
6736         * gst/parse/parse.l:
6737           fix definition of caps to allow more than two structures
6738         * testsuite/caps/Makefile.am:
6739         * testsuite/caps/renegotiate.c: (main):
6740           it's sinesrc and works in that case
6741
6742 2004-05-04  Wim Taymans  <wim@fluendo.com>
6743
6744         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6745         (group_dec_link), (gst_opt_scheduler_pad_unlink):
6746         when removing an element from a group, we always need to
6747         decrement the link count that this group had with other 
6748         groups through the element.
6749         added an extra assert to catch inconsistencies when decrementing
6750         the link count.
6751
6752 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6753
6754         * configure.ac:
6755         * docs/gst/Makefile.am:
6756         * docs/gst/gstreamer-sections.txt:
6757         * docs/gst/tmpl/gstcompat.sgml:
6758         * examples/appreader/Makefile.am:
6759         * examples/cutter/Makefile.am:
6760         * examples/events/Makefile.am:
6761         * examples/helloworld/Makefile.am:
6762         * examples/helloworld2/Makefile.am:
6763         * examples/launch/Makefile.am:
6764         * examples/manual/Makefile.am:
6765         * examples/mixer/Makefile.am:
6766         * examples/pingpong/Makefile.am:
6767         * examples/plugins/Makefile.am:
6768         * examples/queue/Makefile.am:
6769         * examples/queue2/Makefile.am:
6770         * examples/queue3/Makefile.am:
6771         * examples/queue4/Makefile.am:
6772         * examples/retag/Makefile.am:
6773         * examples/thread/Makefile.am:
6774         * examples/typefind/Makefile.am:
6775         * examples/xml/Makefile.am:
6776         * gst/Makefile.am:
6777         * gst/autoplug/Makefile.am:
6778         * gst/elements/Makefile.am:
6779         * gst/gstcompat.h:
6780         * gst/indexers/Makefile.am:
6781         * gst/parse/Makefile.am:
6782         * gst/registries/Makefile.am:
6783         * gst/schedulers/Makefile.am:
6784         * libs/gst/bytestream/Makefile.am:
6785         * libs/gst/control/Makefile.am:
6786         * libs/gst/getbits/Makefile.am:
6787         * po/af.po:
6788         * po/az.po:
6789         * po/en_GB.po:
6790         * po/fr.po:
6791         * po/nl.po:
6792         * po/sr.po:
6793         * po/sv.po:
6794         * po/tr.po:
6795         * po/uk.po:
6796         * tests/Makefile.am:
6797         * tests/bufspeed/Makefile.am:
6798         * tests/instantiate/Makefile.am:
6799         * tests/memchunk/Makefile.am:
6800         * tests/muxing/Makefile.am:
6801         * tests/negotiation/Makefile.am:
6802         * tests/probes/Makefile.am:
6803         * tests/sched/Makefile.am:
6804         * tests/seeking/Makefile.am:
6805         * tests/threadstate/Makefile.am:
6806         * testsuite/caps/Makefile.am:
6807         * testsuite/cleanup/Makefile.am:
6808         * testsuite/dlopen/Makefile.am:
6809         * testsuite/dynparams/Makefile.am:
6810         * testsuite/plugin/Makefile.am:
6811         * testsuite/states/Makefile.am:
6812         * tools/Makefile.am:
6813           reorganize compile/link flags to be consistent
6814           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
6815
6816 2004-05-04  David Schleef  <ds@schleef.org>
6817
6818         The "once more, with feeling" check-in.
6819         * testsuite/caps/Makefile.am: dist caps_strings
6820         * testsuite/caps/renegotiate.c: (main): This test triggers a
6821           segfault in the core.  Marking as failing.
6822
6823 2004-05-03  David Schleef  <ds@schleef.org>
6824
6825         * testsuite/caps/deserialize.c: (main): Fix problems noticed
6826           by the build bots.
6827         * testsuite/caps/renegotiate.c: (main): Same.
6828
6829 2004-05-03  David Schleef  <ds@schleef.org>
6830
6831         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
6832
6833 2004-05-03  David Schleef  <ds@schleef.org>
6834
6835         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
6836           variable to find our source file.
6837
6838 2004-05-03  David Schleef  <ds@schleef.org>
6839
6840         * configure.ac:  Link plugins with libgstreamer and dependent
6841           libraries
6842         * testsuite/caps/Makefile.am:
6843         * testsuite/caps/caps_strings:
6844         * testsuite/caps/deserialize.c: (main): Add a little test to slog
6845           through a file of caps strings and test each one
6846
6847 2004-05-04  Benjamin Otte  <otte@gnome.org>
6848
6849         * libs/gst/bytestream/Makefile.am:
6850         * libs/gst/bytestream/adapter.c: 
6851         * libs/gst/bytestream/adapter.h:
6852           add GstAdapter, similar to bytestream, but doesn't require ugly event
6853           handling or uglier loopbased elements
6854
6855 2004-05-03  David Schleef  <ds@schleef.org>
6856
6857         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
6858         * testsuite/caps/erathostenes.c:
6859         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
6860
6861 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6862
6863         * docs/pwg/pwg.xml:
6864           remove hardcoded stylesheet path (duh)
6865         * docs/random/release:
6866         * docs/gst/gstreamer-sections.txt:
6867         * gst/Makefile.am:
6868         * gst/gst.h:
6869         * gst/gst_private.h:
6870         * gst/gstcaps.c:
6871         * gst/gstevent.c:
6872         * gst/gstformat.c:
6873         * gst/gstinfo.c:
6874         * gst/gstinfo.h:
6875         * gst/gstinterface.c:
6876         * gst/gstmemchunk.c:
6877         * gst/gstprobe.c:
6878         * gst/gstquery.c:
6879         * gst/gstregistry.c:
6880         * gst/gstregistrypool.c:
6881         * gst/gststructure.c:
6882         * gst/gsttaginterface.c:
6883         * gst/gstthread.c:
6884         * gst/gsttrace.c:
6885         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
6886         * gst/gsturi.c:
6887         * gst/gstvalue.c:
6888           deprecate gst_info; remove gstlog.h
6889    
6890
6891 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6892
6893         * Makefile.am:
6894         * po/en_GB.po:
6895         * po/sv.po:
6896         * po/uk.po:
6897           updated translations
6898
6899 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6900
6901         * gst/gstbin.c: (gst_bin_dispose):
6902           better debugging
6903
6904 2004-05-03  Johan Dahlin  <johan@gnome.org>
6905
6906         * gst/schedulers/gstoptimalscheduler.c
6907         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
6908         really is a GstElement. Avoids critical when running gst-launch -v
6909         and a oggdemux/decoding pipeline.
6910
6911 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6912
6913         * docs/gst/tmpl/gstpipeline.sgml :
6914         * docs/manual/elements-api.xml :
6915                 doc fix by Patrick Guimond (Protector) from devel ML
6916                 reviewed by ronald
6917
6918 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6919
6920         * docs/gst/Makefile.am :
6921         * docs/libs/Makefile.am :
6922                 apply a patch from Arwed v. Merkatz so that gtk-doc
6923                 generated docs install (same for .devhelp file)
6924                 (fixes part 1 of #138836)
6925
6926 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6927
6928         * docs/faq/dependencies.xml: typo
6929         * docs/faq/getting.xml :
6930             - fix download URL for new gstreamer site
6931             - hide sf.net download page as latest version aren't there
6932             - fix apt URLs
6933             - fill "get via CVS" paragraph (link to dev page on the site)
6934         * docs/faq/general.xml:
6935             hide status tables as they no more exists
6936             change case on plugins license file to reflect reality
6937         * docs/faq/troubleshooting.xml:
6938             remove the wiki question/answer as there is no more wiki
6939
6940 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6941
6942         * gst/gsterror.h:
6943           include the headers needed for declarations used in this header
6944
6945 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6946
6947         * docs/random/uraeus/gstreamer_and_midi.txt :
6948           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
6949           (fixes #132288)
6950
6951 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
6952
6953         reviewed by Benjamin Otte  <otte@gnome.org>
6954
6955         * gst/schedulers/gthread-cothreads.h:
6956           free allocated data for main cothread, too when destroying context
6957           (fixes #141417)
6958
6959 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6960
6961         * docs/manual/goals.xml : remove duplicated paragraph at end 
6962         of doc page (fixes #141448)
6963
6964 2004-04-29  David Schleef  <ds@schleef.org>
6965
6966         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
6967         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
6968
6969 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
6970
6971         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
6972           fix property
6973         * gst/gstcaps.c:
6974           fix doc string
6975         * po/POTFILES.in:
6976           rename typefind source file
6977
6978 2004-04-28  David Schleef  <ds@schleef.org>
6979
6980         Several new files from Steve Lhomme's MSVC patch (bug #141317):
6981         * win32/GStreamer.vcproj:
6982         * win32/Makefile:
6983         * win32/config.h:
6984         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
6985         (_trewinddir), (_ttelldir), (_tseekdir):
6986         * win32/dirent.h:
6987         * win32/gst-inspect.vcproj:
6988         * win32/gst-launch.vcproj:
6989         * win32/gst-register.vcproj:
6990         * win32/gstbytestream.vcproj:
6991         * win32/gstelements.vcproj:
6992         * win32/gstoptimalscheduler.vcproj:
6993         * win32/gstspider.vcproj:
6994         * win32/gtchar.h:
6995         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
6996         * win32/mman.h:
6997         * win32/mman.inl:
6998         * win32/msvc71.sln:
6999
7000 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7001
7002         * gst/gst.c: (init_post):
7003         * gst/gstinfo.c:
7004           remove useless _gst_progname stuff
7005         * tools/gst-inspect.c: (print_field), (print_caps):
7006           improve caps output
7007
7008 2004-04-28  David Schleef  <ds@schleef.org>
7009
7010         Disable parsing of a lot of files that aren't part of the
7011         exported API.  Move corresponding template files to old/,
7012         waiting for removal when they don't contain anything
7013         interesting.
7014         * docs/gst/Makefile.am:
7015         * docs/gst/gstreamer-sections.txt:
7016         * docs/gst/tmpl/cothreads.sgml:
7017         * docs/gst/tmpl/cothreads_compat.sgml:
7018         * docs/gst/tmpl/gettext.sgml:
7019         * docs/gst/tmpl/gobject2gtk.sgml:
7020         * docs/gst/tmpl/grammar.tab.sgml:
7021         * docs/gst/tmpl/gst-i18n-app.sgml:
7022         * docs/gst/tmpl/gst-i18n-lib.sgml:
7023         * docs/gst/tmpl/gst_private.sgml:
7024         * docs/gst/tmpl/gstaggregator.sgml:
7025         * docs/gst/tmpl/gstarch.sgml:
7026         * docs/gst/tmpl/gstatomic_impl.sgml:
7027         * docs/gst/tmpl/gstbufferstore.sgml:
7028         * docs/gst/tmpl/gstdata_private.sgml:
7029         * docs/gst/tmpl/gstdisksink.sgml:
7030         * docs/gst/tmpl/gstdisksrc.sgml:
7031         * docs/gst/tmpl/gstelementfactory.sgml:
7032         * docs/gst/tmpl/gstextratypes.sgml:
7033         * docs/gst/tmpl/gstfakesink.sgml:
7034         * docs/gst/tmpl/gstfakesrc.sgml:
7035         * docs/gst/tmpl/gstfdsink.sgml:
7036         * docs/gst/tmpl/gstfdsrc.sgml:
7037         * docs/gst/tmpl/gstfilesink.sgml:
7038         * docs/gst/tmpl/gstfilesrc.sgml:
7039         * docs/gst/tmpl/gsthttpsrc.sgml:
7040         * docs/gst/tmpl/gstidentity.sgml:
7041         * docs/gst/tmpl/gstindexfactory.sgml:
7042         * docs/gst/tmpl/gstmarshal.sgml:
7043         * docs/gst/tmpl/gstmd5sink.sgml:
7044         * docs/gst/tmpl/gstmultidisksrc.sgml:
7045         * docs/gst/tmpl/gstmultifilesrc.sgml:
7046         * docs/gst/tmpl/gstpadtemplate.sgml:
7047         * docs/gst/tmpl/gstpipefilter.sgml:
7048         * docs/gst/tmpl/gstschedulerfactory.sgml:
7049         * docs/gst/tmpl/gstsearchfuncs.sgml:
7050         * docs/gst/tmpl/gstshaper.sgml:
7051         * docs/gst/tmpl/gstspider.sgml:
7052         * docs/gst/tmpl/gstspideridentity.sgml:
7053         * docs/gst/tmpl/gststatistics.sgml:
7054         * docs/gst/tmpl/gsttee.sgml:
7055         * docs/gst/tmpl/gsttimecache.sgml:
7056         * docs/gst/tmpl/gsttypefind.sgml:
7057         * docs/gst/tmpl/gsttypefindfactory.sgml:
7058         * docs/gst/tmpl/gstxmlregistry.sgml:
7059         * docs/gst/tmpl/gthread-cothreads.sgml:
7060         * docs/gst/tmpl/old/cothreads.sgml:
7061         * docs/gst/tmpl/old/cothreads_compat.sgml:
7062         * docs/gst/tmpl/old/gettext.sgml:
7063         * docs/gst/tmpl/old/gobject2gtk.sgml:
7064         * docs/gst/tmpl/old/grammar.tab.sgml:
7065         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7066         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7067         * docs/gst/tmpl/old/gst_private.sgml:
7068         * docs/gst/tmpl/old/gstaggregator.sgml:
7069         * docs/gst/tmpl/old/gstarch.sgml:
7070         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7071         * docs/gst/tmpl/old/gstbufferstore.sgml:
7072         * docs/gst/tmpl/old/gstdata_private.sgml:
7073         * docs/gst/tmpl/old/gstdisksink.sgml:
7074         * docs/gst/tmpl/old/gstdisksrc.sgml:
7075         * docs/gst/tmpl/old/gstelementfactory.sgml:
7076         * docs/gst/tmpl/old/gstextratypes.sgml:
7077         * docs/gst/tmpl/old/gstfakesink.sgml:
7078         * docs/gst/tmpl/old/gstfakesrc.sgml:
7079         * docs/gst/tmpl/old/gstfdsink.sgml:
7080         * docs/gst/tmpl/old/gstfdsrc.sgml:
7081         * docs/gst/tmpl/old/gstfilesink.sgml:
7082         * docs/gst/tmpl/old/gstfilesrc.sgml:
7083         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7084         * docs/gst/tmpl/old/gstidentity.sgml:
7085         * docs/gst/tmpl/old/gstindexfactory.sgml:
7086         * docs/gst/tmpl/old/gstmarshal.sgml:
7087         * docs/gst/tmpl/old/gstmd5sink.sgml:
7088         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7089         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7090         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7091         * docs/gst/tmpl/old/gstpipefilter.sgml:
7092         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7093         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7094         * docs/gst/tmpl/old/gstshaper.sgml:
7095         * docs/gst/tmpl/old/gstspider.sgml:
7096         * docs/gst/tmpl/old/gstspideridentity.sgml:
7097         * docs/gst/tmpl/old/gststatistics.sgml:
7098         * docs/gst/tmpl/old/gsttee.sgml:
7099         * docs/gst/tmpl/old/gsttimecache.sgml:
7100         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7101         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7102         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7103         * docs/gst/tmpl/old/types.sgml:
7104         * docs/gst/tmpl/types.sgml:
7105
7106         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7107         gtkdoc-scan doesn't like files with the same name in different
7108         directories.
7109         * gst/elements/Makefile.am:
7110         * gst/elements/gstelements.c:
7111         * gst/elements/gsttypefind.c: 
7112         * gst/elements/gsttypefind.h:
7113         * gst/elements/gsttypefindelement.c:
7114         * gst/elements/gsttypefindelement.h:
7115
7116 2004-04-28  David Schleef  <ds@schleef.org>
7117
7118         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7119         patch (bug #141317):
7120         * gst/gst-i18n-lib.h: Allow disabling gettext.
7121         * gst/gstatomic_impl.h: disable warning when it's dumb.
7122         * gst/gstclock.c: fix include
7123         * gst/gstcompat.h: fix variadic macro
7124         * gst/gstinfo.c: fix include
7125         * gst/gstmacros.h: add defines for inlines on MSVC
7126         * gst/gstplugin.c: fix includes
7127         * gst/gstregistry.c: fix includes
7128         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7129         * gst/gstsystemclock.c: fix include
7130         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7131         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7132         * gst/registries/gstxmlregistry.c:
7133         (gst_xml_registry_parse_element_factory): fix use of non-portable
7134         functions
7135         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7136         * libs/gst/control/dparammanager.h: same
7137
7138 2004-04-28  David Schleef  <ds@schleef.org>
7139
7140         Move a bunch of unused files to old/ with names that are
7141         not case-insensitive-unique.  These files still contain some
7142         useful information that needs to be merged into gstbin.sgml,
7143         etc., so they shouldn't be deleted yet.
7144         * docs/gst/tmpl/GstBin.sgml:
7145         * docs/gst/tmpl/GstBuffer.sgml:
7146         * docs/gst/tmpl/GstCaps.sgml:
7147         * docs/gst/tmpl/GstClock.sgml:
7148         * docs/gst/tmpl/GstCompat.sgml:
7149         * docs/gst/tmpl/GstData.sgml:
7150         * docs/gst/tmpl/GstElement.sgml:
7151         * docs/gst/tmpl/GstEvent.sgml:
7152         * docs/gst/tmpl/GstIndex.sgml:
7153         * docs/gst/tmpl/GstStructure.sgml:
7154         * docs/gst/tmpl/GstTag.sgml:
7155         * docs/gst/tmpl/old/GstBin.sgml:
7156         * docs/gst/tmpl/old/GstBuffer.sgml:
7157         * docs/gst/tmpl/old/GstCaps.sgml:
7158         * docs/gst/tmpl/old/GstClock.sgml:
7159         * docs/gst/tmpl/old/GstCompat.sgml:
7160         * docs/gst/tmpl/old/GstData.sgml:
7161         * docs/gst/tmpl/old/GstElement.sgml:
7162         * docs/gst/tmpl/old/GstEvent.sgml:
7163         * docs/gst/tmpl/old/GstIndex.sgml:
7164         * docs/gst/tmpl/old/GstStructure.sgml:
7165         * docs/gst/tmpl/old/GstTag.sgml:
7166
7167 2004-04-28  David Schleef  <ds@schleef.org>
7168
7169         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7170         (gst_caps_append), (gst_caps_append_structure),
7171         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7172         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7173         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7174         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7175         (gst_caps_intersect), (gst_caps_normalize),
7176         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7177         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7178         * gst/gstcaps.h: use GST_IS_CAPS().
7179
7180 2004-04-26  David Schleef  <ds@schleef.org>
7181
7182         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7183         assembly.  gcc doesn't handle it correctly. (bug #141083)
7184         * gst/gsttrashstack.h: same
7185
7186 2004-04-25  Benjamin Otte  <otte@gnome.org>
7187
7188         * gst/gstelement.c: (gst_element_change_state):
7189           fix assertion to do an int comparison
7190
7191 2004-04-25  Benjamin Otte  <otte@gnome.org>
7192
7193         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7194           better debugging output on error
7195
7196 2004-04-25  Benjamin Otte  <otte@gnome.org>
7197
7198         * gst/gstcaps.c: (gst_caps_subtract):
7199           fix memleak
7200
7201 2004-04-23  Benjamin Otte  <otte@gnome.org>
7202
7203         * gst/gstvalue.c: (gst_value_compare_buffer),
7204         (_gst_value_initialize):
7205           add comparison function for buffers
7206
7207 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7208
7209         * docs/pwg/pwg.xml:
7210           Just found out that this so-called "ima-wav" format is really
7211           just "dvi adpcm" (according to the MS WAV documentation). So
7212           renaming it. We didn't use it yet anyway.
7213
7214 2004-04-23  Benjamin Otte  <otte@gnome.org>
7215
7216         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7217           call gst_caps_is_subset
7218
7219 2004-04-23  Benjamin Otte  <otte@gnome.org>
7220
7221         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7222         (gst_caps_is_subset):
7223           add documentation
7224
7225 2004-04-23  Benjamin Otte  <otte@gnome.org>
7226           
7227         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7228         (gst_caps_structure_subtract), (gst_caps_subtract),
7229         (gst_caps_structure_figure_out_union),
7230         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7231           fix simplifying and subtracting not working correctly with optional
7232           properties
7233           solve assorted problems that make it now simplify ebven more
7234         * docs/gst/tmpl/gstcaps.sgml:
7235         * gst/gstcaps.h:
7236           make gst_caps_do_simplify return a bool to indicate if it simplified
7237         * testsuite/caps/simplify.c: (main):
7238           add more checks. The tests is quite a bit useless right now because
7239           the core is heavily simplifying itself.
7240         * testsuite/caps/caps.h:
7241           fix caps to contain all optional properties
7242
7243 2004-04-22  Benjamin Otte  <otte@gnome.org>
7244
7245         * docs/gst/tmpl/gstcaps.sgml:
7246         * docs/gst/tmpl/gstfilesrc.sgml:
7247         * docs/gst/tmpl/gststructure.sgml:
7248         * docs/gst/tmpl/gstvalue.sgml:
7249           update for recent API changes
7250         * gst/gstcaps.c: (gst_caps_do_simplify):
7251           fix to stop trying with a freed structure
7252         * gst/gstpad.c: (gst_pad_link_fixate):
7253           simplify caps
7254         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7255           remove C++ comment
7256         * gst/gstpad.h:
7257           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7258         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7259         (gst_structure_to_string):
7260           keep the correct type when using lists of ranges
7261         * gst/gstvalue.c: (gst_value_list_prepend_value),
7262         (gst_value_list_append_value):
7263           copy the value before adding to the list (d'oh)
7264         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7265         (gst_value_subtract_int_range_int_range):
7266           handle overflows correctly
7267         * gst/gstvalue.c: (gst_value_subtract_from_list):
7268           fix memleak
7269         * testsuite/caps/caps.h:
7270           add a caps that caused segfaults
7271
7272 2004-04-22  Benjamin Otte  <otte@gnome.org>
7273
7274         * testsuite/refcounting/pad.c: (main):
7275           fix test
7276
7277 2004-04-22  Benjamin Otte  <otte@gnome.org>
7278
7279         * gst/gstcaps.c: (gst_caps_subtract):
7280           allow subtracting ANY and EMPTY from ANY caps
7281
7282 2004-04-22  Benjamin Otte  <otte@gnome.org>
7283
7284         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7285         (gst_caps_union):
7286           only simplify in functions that create new caps. Simplifying in
7287           gst_caps_append breaks tests.
7288
7289 2004-04-22  Benjamin Otte  <otte@gnome.org>
7290
7291         * gst/gstcaps.c: (gst_caps_structure_simplify):
7292           unset GValue after use
7293         * gst/gstcaps.c: (gst_caps_append), 
7294         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7295           use gst_caps_simplify (reduces registry size by 30%)
7296         * gst/gstpad.c: (gst_pad_template_new):
7297           don't allow NULL caps
7298
7299 2004-04-22  Benjamin Otte  <otte@gnome.org>
7300
7301         * docs/gst/gstreamer-sections.txt:
7302           add gst_caps_do_simplify
7303         * gst/gstcaps.c:
7304           add documentation for gst_caps_do_simplify
7305         * gst/gstvalue.h:
7306           fix typo in gst_value_register_subtract_func declaration for gst-doc
7307
7308 2004-04-22  Benjamin Otte  <otte@gnome.org>
7309
7310         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7311           fix bug when converting from empty string.
7312         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7313         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7314           use gst_caps_new_empty to allocate a new caps. Only that function
7315           allocates memory for caps now.
7316         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7317         (gst_caps_remove_structure):
7318           add ability to remove one structure (but not to header yet)
7319         * gst/gstcaps.c: (gst_caps_compare_structures),
7320         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7321         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7322         * gst/gstcaps.h:
7323           add gst_caps_do_simplify that tries to simplify a caps in place.
7324           Deprecate old gst_caps_simplify function.
7325         * testsuite/caps/caps.h:
7326           add caps.h containing a common set of caps to test against.
7327         * testsuite/caps/sets.c: (check_caps), (main):
7328           use it.
7329         * testsuite/caps/.cvsignore:
7330         * testsuite/caps/Makefile.am:
7331         * testsuite/caps/simplify.c: (check_caps), (main):
7332           add test to check correctness and efficency of caps simplification.
7333
7334 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7335
7336         reviewed by Benjamin Otte  <otte@gnome.org>
7337
7338         * gst/gstparse.c: (_gst_parse_escape):
7339           Free the GString used in _gst_parse_escape()
7340
7341 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7342
7343         * gst/gstpad.c: (gst_pad_link_negotiate):
7344           refuse to link if the link is not possible
7345         * configure.ac:
7346         * testsuite/Makefile.am:
7347         * testsuite/negotiation/.cvsignore:
7348         * testsuite/negotiation/Makefile.am:
7349         * testsuite/negotiation/pad_link.c: (main):
7350           add test that checks the above behaviour
7351
7352 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7353
7354         * docs/gst/gstreamer-sections.txt:
7355           add newly added API
7356
7357 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7358
7359         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7360         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7361         (gst_filesrc_open_file), (gst_filesrc_close_file),
7362         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7363         * gst/elements/gstfilesrc.h:
7364           add support for non-regular files (#140734)
7365
7366 2004-04-21  Benjamin Otte  <otte@gnome.org>
7367
7368         * gst/gstpad.c: (gst_pad_link_fixate):
7369           add sophisticated error checking code to see if fixation functions
7370           did their fixation right
7371
7372 2004-04-21  Benjamin Otte  <otte@gnome.org>
7373
7374         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7375           check for ANY caps before appending/unioning
7376         * gst/gstcaps.c: (gst_caps_is_subset),
7377         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7378         (gst_caps_structure_subtract), (gst_caps_subtract):
7379         * gst/gstcaps.h:
7380           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7381           the API. deprecate gst_caps_is_equal_fixed
7382         * gst/gstpad.c: (gst_pad_try_set_caps):
7383         * gst/gstqueue.c: (gst_queue_link):
7384           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7385         * gst/gststructure.c: (gst_structure_get_name_id):
7386         * gst/gststructure.h:
7387           add function gst_structure_get_name_id
7388         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7389         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7390         (gst_value_subtract_int_range_int_range),
7391         (gst_value_subtract_double_double_range),
7392         (gst_value_subtract_double_range_double),
7393         (gst_value_subtract_double_range_double_range),
7394         (gst_value_subtract_from_list), (gst_value_subtract_list),
7395         (gst_value_can_intersect), (gst_value_subtract),
7396         (gst_value_can_subtract), (gst_value_register_subtract_func),
7397         (_gst_value_initialize):
7398         * gst/gstvalue.h:
7399           add support for subtracting values from each other. Note that
7400           subtracting means subtracting as in set theory. Required for caps
7401           stuff above.
7402         * testsuite/caps/.cvsignore:
7403         * testsuite/caps/Makefile.am:
7404         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7405         * testsuite/caps/sets.c: (check_caps), (main):
7406         * testsuite/caps/subtract.c: (check_caps), (main):
7407           add tests for subtraction and equality code.
7408
7409 2004-04-20  David Schleef  <ds@schleef.org>
7410
7411         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7412         * gst/indexers/Makefile.am:
7413         * gst/schedulers/Makefile.am:
7414         * libs/gst/bytestream/Makefile.am:
7415         * libs/gst/control/Makefile.am:
7416         * libs/gst/getbits/Makefile.am:
7417
7418 2004-04-20  David Schleef  <ds@schleef.org>
7419
7420         * common/as-libtool.mak: Fine-tune DLL building.
7421         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7422         (like gst-plugins)
7423         * examples/plugins/Makefile.am: remove plugindir
7424         * gst/autoplug/Makefile.am: DLL building fixes
7425         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7426         Windows.
7427         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7428         * gst/indexers/Makefile.am: DLL building fixes
7429         * gst/schedulers/Makefile.am: DLL building fixes.
7430         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7431         * libs/gst/control/Makefile.am: same
7432         * libs/gst/getbits/Makefile.am: same
7433         * testsuite/Makefile.am: New dlopen directory
7434         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7435         when dlopened.
7436         * testsuite/dlopen/dlopen_gst.c: (main): same
7437         * testsuite/dlopen/loadgst.c: (do_test): same
7438
7439 2004-04-20  David Schleef  <ds@schleef.org>
7440
7441         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7442         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7443
7444 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7445
7446         * gst/gstelement.c: (gst_element_wait),
7447         (gst_element_set_time_delay), (gst_element_change_state):
7448           Use GST_TIME_*
7449
7450 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7451
7452         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7453         (gst_spider_identity_plug):
7454           improve debugging messages
7455         * gst/gstbin.c: (gst_bin_remove_func):
7456           make sure the state_change function is only called with simple state
7457           transitions
7458
7459 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7460
7461         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7462         (gst_fakesink_set_property), (gst_fakesink_chain):
7463         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7464         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7465         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7466         * gst/elements/gstidentity.c: (gst_identity_chain),
7467         (gst_identity_set_property):
7468         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7469         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7470           add warnings to _set_property for unknown arguments
7471           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7472
7473 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7474
7475         * Makefile.am:
7476         * docs/manuals.mak:
7477           add .po file download snippet
7478           fix a bug in the doc makefile
7479
7480 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7481
7482         * Makefile.am:
7483         * po/LINGUAS:
7484         * po/en_GB.po:
7485           Added en_GB translation (Gareth Owen)
7486
7487 2004-04-20  Johan Dahlin  <johan@gnome.org>
7488
7489         * gst/gstpad.c (_invent_event): Clean up
7490
7491 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7492
7493         * testsuite/caps/filtercaps.c: (main):
7494           fix test to test things correctly (caps are complicated)
7495
7496 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7497
7498         * testsuite/caps/Makefile.am:
7499         * testsuite/caps/filtercaps.c: (main):
7500           add test (that doesn't work right now, but should)
7501
7502 2004-04-19  David Schleef  <ds@schleef.org>
7503
7504         * configure.ac: Add test for allowing unaligned access.  Add define
7505         to put in gstconfig.h.
7506         * docs/gst/gstreamer-sections.txt: New symbols
7507         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7508         * docs/gst/tmpl/gstfilesrc.sgml:
7509         * docs/gst/tmpl/gstparse.sgml:
7510         * docs/gst/tmpl/gsttypes.sgml:
7511         * docs/gst/tmpl/gstutils.sgml:
7512         * docs/gst/tmpl/gstvalue.sgml:
7513         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7514         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7515         on most !i386/!powerpc architectures.  From Daniel Gazard
7516         <daniel.gazard@free.fr>.  (bug #140156)
7517         * po/af.po: Check in changes made by gettext.
7518         * po/az.po:
7519         * po/fr.po:
7520         * po/nl.po:
7521         * po/sr.po:
7522         * po/sv.po:
7523
7524 2004-04-20  Benjamin Otte  <otte@gnome.org>
7525
7526         * gst/schedulers/entryscheduler.c: 
7527         (gst_entry_scheduler_yield):
7528           refuse to yield when decoupled elements insist on doing that.
7529           At least it's better than crashing
7530
7531 2004-04-19  David Schleef  <ds@schleef.org>
7532
7533         * docs/libs/Makefile.am: Change sinclude to include
7534         * docs/gst/Makefile.am: same
7535         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7536
7537 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7538
7539         * po/LINGUAS:
7540         * po/uk.po:
7541           Added Ukrainian translation (Maxim V. Dziumanenko)
7542
7543 2004-04-19  Johan Dahlin  <johan@gnome.org>
7544
7545         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7546         checking here, do it before calling the function.
7547         Clean up, use for loops instead of while loops while iterating
7548         over lists.
7549
7550         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7551         in debug message.
7552         (gst_spider_create_and_plug): Improve debug message.
7553         General: Replace while loops which iterates over GLists with for
7554         loops. Which are much cleaner, improves readability, especially
7555         for gst_spider_identity_plug
7556
7557         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7558         fixes bug 140477
7559
7560 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7561
7562         * po/LINGUAS:
7563         * po/tr.po:
7564           Added Turkish translation (Baris Cicek)
7565
7566 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7567
7568         * docs/faq/troubleshooting.xml:
7569           Mention gst-register in the FAQ (fixes 139045).
7570
7571 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7572
7573         * docs/gst/gstreamer-sections.txt:
7574
7575 2004-04-17  Benjamin Otte  <otte@gnome.org>
7576
7577         * gst/gstelement.c: (gst_element_dispose):
7578           simplify
7579         * gst/gstpad.c: (gst_pad_call_chain_function):
7580           don't create loads of events due to bad macro usage
7581
7582 2004-04-16  David Schleef  <ds@schleef.org>
7583
7584         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7585         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7586         * gst/gstvalue.c: (gst_value_serialize_buffer),
7587         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7588         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7589         to indicate types that are fixed wrt caps or not.  Switching to
7590         this function fixes (bug #140298).
7591         * gst/gstvalue.h:
7592
7593 2004-04-16  David Schleef  <ds@schleef.org>
7594
7595         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7596         for GST_UNALIGNED_ACESS, since we essentially know which archs
7597         are ok.
7598
7599 2004-04-17  Benjamin Otte  <otte@gnome.org>
7600
7601         * docs/gst/Makefile.am:
7602           ignore gst/parse directory when building docs (fixes #140205)
7603
7604 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7605
7606         * testsuite/refcounting/mem.c: (vmsize):
7607           do error checking
7608
7609 2004-04-16  Johan Dahlin  <johan@gnome.org>
7610
7611         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7612         and gst_pad_call_get_function.
7613
7614 2004-04-15  David Schleef  <ds@schleef.org>
7615
7616         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7617         checks if we can access unaligned memory.
7618         * configure.ac: Use it.
7619
7620 2004-04-16  Benjamin Otte  <otte@gnome.org>
7621
7622         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7623         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7624         * gst/elements/gstfilesrc.h:
7625           s/seek_happened/need_discont/ and require discont before sending any
7626           data
7627
7628 2004-04-15  David Schleef  <ds@schleef.org>
7629
7630         * gst/gstvalue.c: (gst_value_serialize_buffer),
7631         (gst_value_deserialize_buffer), (_gst_value_initialize):
7632         Register these types as fundamental types. (bug #140015)
7633
7634 2004-04-16  Benjamin Otte  <otte@gnome.org>
7635
7636         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7637         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7638         (gst_pad_pull):
7639           implement enforcing discont events before buffers are passed. This
7640           allows state changes of only some elements and later correctly going
7641           on where they left off (or in short: you can now set audio sinks to
7642           NULL to release the device when the pipeline is paused)
7643         * gst/gstpad.c: (gst_pad_call_chain_function),
7644         (gst_pad_call_get_function):
7645         * gst/gstpad.h:
7646           add gst_pad_call_chain_function and gst_pad_call_get_function for
7647           scheduler interaction. They are required because of the changes
7648           above.
7649         * gst/schedulers/entryscheduler.c: (get_buffer),
7650         (gst_entry_scheduler_chain_wrapper),
7651         (gst_entry_scheduler_get_wrapper),
7652         (gst_entry_scheduler_state_transition),
7653         (gst_entry_scheduler_pad_link):
7654         * gst/schedulers/gstbasicscheduler.c:
7655         (gst_basic_scheduler_chain_wrapper),
7656         (gst_basic_scheduler_src_wrapper),
7657         (gst_basic_scheduler_chainhandler_proxy),
7658         (gst_basic_scheduler_gethandler_proxy),
7659         (gst_basic_scheduler_cothreaded_chain),
7660         (gst_basic_scheduler_chain_elements):
7661         * gst/schedulers/gstoptimalscheduler.c:
7662         (get_group_schedule_function), (pad_clear_queued),
7663         (gst_opt_scheduler_pad_link):
7664           use the new functions instead of calling get/chain-functions
7665           directly.
7666
7667 2004-04-15  David Schleef  <ds@schleef.org>
7668
7669         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7670         * docs/gst/tmpl/gstinfo.sgml: same
7671         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7672         gtk-doc put here.
7673         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7674         * examples/queue/queue.c: (main):  We iterate pipelines, not
7675         bins.  (bug #139996)
7676
7677 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7678
7679         * docs/pwg/advanced-types.xml:
7680           Add MS RLE support. Also document Qt RLE although I have no sample
7681           files for that yet. And document an extra property for ADPCM.
7682
7683 2004-04-15  David Schleef  <ds@schleef.org>
7684
7685         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7686         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7687         Windows.
7688
7689 2004-04-15  David Schleef  <ds@schleef.org>
7690
7691         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7692         symbol names to not conflict with new gstinfo.h symbols.
7693         * gst/gstinfo.h: Add inline functions for all those crazy
7694         compilers that don't know how to handle variadic macros (MSVC).
7695
7696 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7697
7698         * configure.ac: bump nano to 1
7699
7700 === release 0.8.1 ===
7701
7702 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7703
7704         * NEWS:
7705         * RELEASE:
7706         * configure.ac:
7707           releasing 0.8.1, "Snow Brigade"
7708
7709 2004-04-14  David Schleef  <ds@schleef.org>
7710
7711         * testsuite/Makefile.am: define tests_ignore
7712         * testsuite/Rules: Added new tests_ignore, which get compiled,
7713         but not run (generally because they're inconsistent or have
7714         heisenbugs).  Now we can ensure all the .c files compile in
7715         testsuite/.
7716         * testsuite/bins/Makefile.am: define tests_ignore
7717         * testsuite/bytestream/Makefile.am:
7718         * testsuite/caps/Makefile.am:
7719         * testsuite/clock/Makefile.am:
7720         * testsuite/debug/Makefile.am:
7721         * testsuite/debug/global.c: (gst_debug_log_one),
7722         (gst_debug_log_two): Fix compilation problem.
7723         * testsuite/dynparams/Makefile.am:
7724         * testsuite/elements/Makefile.am:
7725         * testsuite/ghostpads/Makefile.am:
7726         * testsuite/indexers/Makefile.am:
7727         * testsuite/parse/Makefile.am:
7728         * testsuite/plugin/Makefile.am:
7729         * testsuite/refcounting/Makefile.am:
7730         * testsuite/refcounting/element_pad.c: (main): Don't return leak
7731         results, because it's not calculated correctly.
7732         * testsuite/refcounting/pad.c: (main): same
7733         * testsuite/states/Makefile.am:
7734         * testsuite/tags/Makefile.am:
7735         * testsuite/threads/Makefile.am:
7736
7737 2004-04-14  David Schleef  <ds@schleef.org>
7738
7739         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
7740         generating bad code around the cpu detection asm code.
7741
7742 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7743
7744         * tools/gst-inspect.c: (print_element_info):
7745           print numeric version of rank as well, since we added some - 1
7746           rank values to elements
7747
7748 2004-04-13  David Schleef  <ds@schleef.org>
7749
7750         * configure.ac:  Disable various code when compiling for MinGW.
7751         * gst/elements/Makefile.am:
7752         * gst/elements/gstelements.c:
7753         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7754         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7755         * gst/registries/gstxmlregistry.c: (make_dir):
7756
7757 2004-04-13  David Schleef  <ds@schleef.org>
7758
7759         * gst/Makefile.am:
7760         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7761         assembly.
7762         * gst/gstcpuid_i386.s: remove
7763
7764 2004-04-13  David Schleef  <ds@schleef.org>
7765
7766         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
7767         seems to think it needs to be done.
7768         * docs/gst/tmpl/gstfakesink.sgml:
7769         * docs/gst/tmpl/gstfakesrc.sgml:
7770         * docs/gst/tmpl/gstfdsink.sgml:
7771         * docs/gst/tmpl/gstfdsrc.sgml:
7772         * docs/gst/tmpl/gstfilesink.sgml:
7773         * docs/gst/tmpl/gstfilesrc.sgml:
7774         * docs/gst/tmpl/gstidentity.sgml:
7775         * docs/gst/tmpl/gstmd5sink.sgml:
7776         * docs/gst/tmpl/gstmultifilesrc.sgml:
7777         * docs/gst/tmpl/gstpipefilter.sgml:
7778         * docs/gst/tmpl/gstshaper.sgml:
7779         * docs/gst/tmpl/gstspider.sgml:
7780         * docs/gst/tmpl/gstspideridentity.sgml:
7781         * docs/gst/tmpl/gststatistics.sgml:
7782         * docs/gst/tmpl/gsttee.sgml:
7783         * docs/gst/tmpl/gsttypefind.sgml:
7784         * docs/gst/tmpl/gstutils.sgml:
7785
7786 2004-04-13  David Schleef  <ds@schleef.org>
7787
7788         * configure.ac: Changes to remove POSIXisms (mmap in this case)
7789         and to build DLLs on Windows.
7790         * gst/Makefile.am:
7791         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7792         (gst_filesrc_open_file):
7793         * gst/schedulers/Makefile.am:
7794
7795 2004-04-13  David Schleef  <ds@schleef.org>
7796
7797         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
7798         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
7799         fixating lists.
7800
7801 2004-04-12  David Schleef  <ds@schleef.org>
7802
7803         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
7804         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
7805         to using it.
7806         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
7807         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
7808         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
7809         * gst/gststructure.c: (gst_structure_set_valist),
7810         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
7811         support for buffers.
7812         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
7813         intended to be const.
7814         * gst/gsttag.h: same
7815         * gst/gstvalue.c: (gst_value_serialize_buffer),
7816         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
7817         to (de)serialize buffers.
7818         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
7819         * testsuite/caps/string-conversions.c: (main):
7820         * testsuite/caps/value_serialize.c: add new test
7821
7822 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7823
7824         * docs/pwg/advanced-types.xml:
7825           Document MS video 1 (video/x-msvideocodec) mimetype/format.
7826
7827 2004-04-11  Benjamin Otte  <otte@gnome.org>
7828
7829         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7830           rename categories to basic_*
7831         * gst/schedulers/gstbasicscheduler.c: 
7832         (gst_basic_scheduler_chain_wrapper),
7833         (gst_basic_scheduler_chainhandler_proxy),
7834         (gst_basic_scheduler_gethandler_proxy),
7835         (gst_basic_scheduler_eventhandler_proxy):
7836           debugging category fixes - put common stuff in log category
7837         * gst/schedulers/gstbasicscheduler.c: 
7838         (gst_basic_scheduler_chain_elements):
7839           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
7840           active and linking two active chains
7841
7842 2004-04-10  Benjamin Otte  <otte@gnome.org>
7843
7844         * docs/pwg/intro-preface.xml:
7845           fix dead links and remove reference to Wiki
7846
7847 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7848
7849         * gst/schedulers/gstbasicscheduler.c:
7850           make sure we can switch back to the main function if we're still in
7851           the main function (supposed to fix #139617)
7852         * gst/schedulers/gthread-cothreads.h:
7853           don't throw an error when switching to the same cothread
7854
7855 2004-04-09  Benjamin Otte  <otte@gnome.org>
7856
7857         * gst/gstbin.c: (gst_bin_get_type):
7858         * gst/gstclock.c: (gst_clock_get_type):
7859         * gst/gstindex.c: (gst_index_get_type):
7860         * gst/gstobject.c: (gst_object_get_type),
7861         (gst_signal_object_get_type):
7862         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
7863         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
7864         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
7865         * gst/gstqueue.c: (gst_queue_get_type):
7866         * gst/gstregistry.c: (gst_registry_get_type):
7867         * gst/gstsystemclock.c: (gst_system_clock_get_type):
7868         * gst/gstthread.c: (gst_thread_get_type):
7869           don't use memchunks for these objects, use malloc instead
7870
7871 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7872
7873         * docs/gst/.cvsignore:
7874         * docs/gst/Makefile.am:
7875         * docs/gst/gstreamer-sections.txt:
7876         * docs/gst/tmpl/gstaggregator.sgml:
7877         * docs/gst/tmpl/gstbuffer.sgml:
7878         * docs/gst/tmpl/gstclock.sgml:
7879         * docs/gst/tmpl/gstelement.sgml:
7880         * docs/gst/tmpl/gstfakesink.sgml:
7881         * docs/gst/tmpl/gstfakesrc.sgml:
7882         * docs/gst/tmpl/gstfdsink.sgml:
7883         * docs/gst/tmpl/gstfdsrc.sgml:
7884         * docs/gst/tmpl/gstfilesink.sgml:
7885         * docs/gst/tmpl/gstfilesrc.sgml:
7886         * docs/gst/tmpl/gstidentity.sgml:
7887         * docs/gst/tmpl/gstindex.sgml:
7888         * docs/gst/tmpl/gstinfo.sgml:
7889         * docs/gst/tmpl/gstmd5sink.sgml:
7890         * docs/gst/tmpl/gstmultifilesrc.sgml:
7891         * docs/gst/tmpl/gstpad.sgml:
7892         * docs/gst/tmpl/gstpipefilter.sgml:
7893         * docs/gst/tmpl/gstpipeline.sgml:
7894         * docs/gst/tmpl/gstpluginfeature.sgml:
7895         * docs/gst/tmpl/gstqueue.sgml:
7896         * docs/gst/tmpl/gstregistry.sgml:
7897         * docs/gst/tmpl/gstscheduler.sgml:
7898         * docs/gst/tmpl/gstshaper.sgml:
7899         * docs/gst/tmpl/gstspider.sgml:
7900         * docs/gst/tmpl/gstspideridentity.sgml:
7901         * docs/gst/tmpl/gststatistics.sgml:
7902         * docs/gst/tmpl/gstsystemclock.sgml:
7903         * docs/gst/tmpl/gsttee.sgml:
7904         * docs/gst/tmpl/gstthread.sgml:
7905         * docs/gst/tmpl/gsttypefind.sgml:
7906         * docs/gst/tmpl/gstutils.sgml:
7907           further doc build fixes
7908
7909 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7910
7911         * docs/gst/Makefile.am:
7912           make docs exit on scanning problems
7913           fix nonsrcdir build issues
7914         * docs/gst/gstreamer-sections.txt:
7915           adding stuff from -unused
7916         * gst/gstqueue.h:
7917           create GstQueueSize
7918         * gst/schedulers/cothreads_compat.h:
7919           fix cothread warnings
7920
7921 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7922
7923         * docs/gst/gstreamer-sections.txt:
7924           remove defines deprecated by Benjamin
7925
7926 2004-04-07  Benjamin Otte  <otte@gnome.org>
7927
7928         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7929           when the buffer is complete, don't check if other buffers are needed
7930         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
7931           check that the offset is >0 so we don't try to read before the
7932           beginning of the file
7933         * gst/gstpad.c: (gst_pad_set_pad_template):
7934           sink the template, so we don't end up with 130k pad templates
7935
7936 2004-04-06  Benjamin Otte  <otte@gnome.org>
7937
7938         * gst/autoplug/gstspider.c: (gst_spider_link_add):
7939           don't ref the element, adding already reffed it. And we didn't unref
7940           it later anyway... (huge memleak when you used many spider elements)
7941         * gst/gstelement.c: (gst_element_base_class_finalize):
7942         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
7943         (gst_element_register):
7944         * gst/gsturi.c: (gst_element_make_from_uri):
7945           use gst_object_(un)ref instead of g_object(un)ref
7946
7947 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7948
7949         * gst/gstbuffer.h:
7950           remove macro that wouldn't work anymore because struct member has
7951           been removed.
7952         * gst/schedulers/entryscheduler.c: (schedule_forward):
7953           fix segfault for unconnected pads
7954         
7955 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7956
7957         reviewed by David Schleef <ds@schleef.org>
7958
7959         * gst/gstinfo.h:
7960           *_FORMAT modifiers should require putting a % in front of them for
7961           consistency reasons.
7962
7963 2004-04-05  Colin Walters  <walters@redhat.com>
7964
7965         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
7966         space.
7967
7968 2004-04-05  Benjamin Otte  <otte@gnome.org>
7969
7970         * configure.ac:
7971         * gst/Makefile.am:
7972         * gst/gst_private.h:
7973         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
7974           add support for detecting if GStreamer runs inside valgrind.
7975           requires valgrind (d'oh) and --enable-debug for correct cdetection.
7976           print a big message in valgrind that GStreamer has detected it's
7977           running inside and might now use different code.
7978         * gst/gstmemchunk.c: (populate), (free_area),
7979         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
7980         (gst_mem_chunk_free):
7981           flag memchunks for valgrind, so it can detect leaking of chunks.
7982           This allows detecting leaks of GstBuffer and GstEvent correctly
7983           inside valgrind.
7984
7985 2004-04-05  David Schleef  <ds@schleef.org>
7986
7987         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
7988           jensgr@gmx.net (Jens Granseuer)
7989
7990 2004-04-05  David Schleef  <ds@schleef.org>
7991
7992         * gst/gstbuffer.c: (_gst_buffer_sub_free),
7993         (gst_buffer_default_free), (gst_buffer_default_copy),
7994         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
7995         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
7996         structures in one place.
7997
7998 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
7999
8000         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8001           (GST_TIME_FORMAT, GST_TIME_ARGS)
8002
8003 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8004
8005         * testsuite/elements/Makefile.am:
8006           disable test until it stops breaking make distcheck
8007
8008 2004-04-05  Johan Dahlin  <johan@gnome.org>
8009
8010         * po/sv.po: Updated translation
8011
8012 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8013
8014         * gst/gstplugin.c: (gst_plugin_load_file):
8015           fix segfault for when original plugin was loaded statically
8016
8017 2004-04-05  Benjamin Otte  <otte@gnome.org>
8018
8019         * testsuite/debug/category.c: (main):
8020         * testsuite/debug/commandline.c: (main):
8021         * testsuite/debug/output.c: (main):
8022           fix tests to work again with debugging enabled
8023
8024 2004-04-05  Benjamin Otte  <otte@gnome.org>
8025
8026         * gst/schedulers/gstbasicscheduler.c:
8027         (gst_basic_scheduler_pad_link):
8028           fix to work with recent scheduling changes
8029
8030 2004-04-05  Benjamin Otte  <otte@gnome.org>
8031
8032         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8033         prepareChangeLog doesn't work when cvs indents):
8034           don't throw an error when no element can be scheduled, there's too
8035           many weird reasons why it doesn't work. Return STOPPED instead.
8036           decoupled elemts' schedulability doesn't depend on bufpens.
8037
8038 2004-04-04  Benjamin Otte  <otte@gnome.org>
8039
8040         * gst/schedulers/gstbasicscheduler.c:
8041         (gst_basic_scheduler_pad_select):
8042           fix uninitialized variable warnings
8043
8044 2004-04-04  Benjamin Otte  <otte@gnome.org>
8045
8046         * gst/gstpad.c: (gst_pad_collect_valist):
8047           fix uninitialized variable warning
8048         * gst/schedulers/entryscheduler.c: (schedule_forward):
8049           fix shadowed variable
8050
8051 2004-04-04  Benjamin Otte  <otte@gnome.org>
8052
8053         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8054         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8055         (gst_pad_select):
8056         * gst/gstpad.h:
8057         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8058         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8059         * gst/gstscheduler.h:
8060           implement gst_pad_collect as replacement for gst_pad_select.
8061           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8062           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8063           new pad_select, lock and unlock calls.
8064         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8065         * gst/cothreads.h:
8066         * gst/schedulers/cothreads_compat.h:
8067         * gst/schedulers/gthread-cothreads.h:
8068           remove unused cothread_lock and cothread_unlock calls
8069         * gst/schedulers/entryscheduler.c:
8070         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8071         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8072         (gst_entry_scheduler_pad_select):
8073           update to new API
8074         * gst/schedulers/gstbasicscheduler.c:
8075         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8076         (gst_basic_scheduler_pad_select):
8077           remove useless lock and unlock calls, update pad_select to new API
8078           (untested)
8079         * gst/schedulers/gstoptimalscheduler.c:
8080         (gst_opt_scheduler_class_init):
8081           remove useless select, lock and unlock function calls
8082         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8083           use gst_pad_collect instead of gst_pad_select
8084
8085 2004-04-04  Benjamin Otte  <otte@gnome.org>
8086
8087         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8088         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8089         (schedule_next_element), (print_entry):
8090           add can_schedule_pad to handle element states.
8091           add schedule_forward to select the correct entry to schedule next
8092
8093 2004-04-03  Benjamin Otte  <otte@gnome.org>
8094
8095         * gst/schedulers/entryscheduler.c: 
8096           remove unused variable, fix error inside Rb, fix compile warning in
8097           unreachable code
8098
8099 2004-04-03  Benjamin Otte  <otte@gnome.org>
8100
8101         * gst/schedulers/entryscheduler.c:
8102           completely revamp the inner workings, so it's a lot easier to
8103           understand and extend
8104
8105 2004-04-03  Andy Wingo  <wingo@pobox.com>
8106
8107         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8108         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8109         This allows better introspection of pipeline topology.
8110         (add_to_chain): Don't do trickery to put loop elements first;
8111         rather, queue a chain sort by marking the chain as dirty.
8112         (remove_from_chain): Mark the chain dirty.
8113         (sort_chain): New function. Sorts the group list so that terminal
8114         sinks are first. This means elements on the sink side will be
8115         preferentially sscheduled before elements on the src side of the
8116         pipeline.
8117         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8118         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8119         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8120         (group_inc_link): Change argument and variable names to match the
8121         new link structure member names (src and sink).
8122         (group_dec_link): Add some description
8123
8124 2004-04-03  Benjamin Otte  <otte@gnome.org>
8125
8126         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8127         * gst/gstinfo.h:
8128         * testsuite/debug/category.c: (main):
8129         * testsuite/debug/commandline.c: (main):
8130         * testsuite/debug/output.c: (main):
8131         * testsuite/debug/printf_extension.c: (main):
8132           fix to successfully build and test with --disable-gst-debug
8133           configure switch (fixes #138705)
8134
8135 2004-04-03  Benjamin Otte  <otte@gnome.org>
8136
8137         * docs/pwg/building-boiler.xml:
8138           add cvs login line and s/anonymous/anoncvs/
8139
8140 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8141
8142         reviewed by Benjamin Otte  <otte@gnome.org>
8143
8144         * gst/gststructure.c: (gst_structure_free):
8145           memleak fix: free fields array (partial fix for #134839)
8146
8147 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8148
8149         * docs/random/ds/0.9-suggested-changes:
8150           Add a note to change handoff use in fakesrc to be usable in
8151           a more generic way (fakesrc should be renamed to appsrc or so).
8152         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8153           Change signal type to scope, so we can fill the buffer in the
8154           handoff handler (that's the whole use of this signal...).
8155
8156 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8157
8158         * docs/pwg/other-ntoone.xml:
8159           Document muxers and n-to-1 elements.
8160
8161 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8162
8163         * gst/registries/gstxmlregistry.c
8164         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8165         determine if a file is a G_MODULE. The old one discards paths
8166         containing "so" somewhere in the middle. My home directory is
8167         called "soto". Go figure...
8168
8169 2004-03-31  David Schleef  <ds@schleef.org>
8170
8171         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8172         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8173         * gst/gstbuffer.h:
8174
8175 2004-03-31  David Schleef  <ds@schleef.org>
8176
8177         * gst/gstvalue.c: (gst_value_union_int_int_range),
8178         (gst_value_union_int_range_int_range), (gst_value_can_union),
8179         (gst_value_union), (_gst_value_initialize):  Add some union
8180         implementations.  We didn't have any previously.
8181         * testsuite/caps/Makefile.am:
8182         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8183         (gst_audioscale_getcaps), (test_caps), (main): A little test
8184         that is the same as the caps manipulation in audioscale.
8185
8186 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8187
8188         * docs/faq/general.xml:
8189           add entry about "does gst support format X?"
8190
8191 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8192
8193         * gst/gstthread.c:
8194           fix docs
8195         * gst/gstutils.h:
8196           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8197
8198 2004-03-30  Benjamin Otte  <otte@gnome.org>
8199
8200         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8201           set the offset of the buffer to the requested offset
8202         * gst/elements/gsttypefind.c: (stop_typefinding):
8203           revert patch 1.18 (which I unfortunately don't know the reason for).
8204           This is needed to allow downstream elements to seek. Otherwise
8205           typefind might overwrite a previous seek by downstream elements.
8206           This lead to errors with id3tag and typefind on some mp3s.
8207         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8208         (gst_entry_scheduler_iterate):
8209           be more verbose when debugging
8210
8211 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8212
8213         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8214           make sure we don't get NULL strings
8215
8216 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8217
8218         * gst/gstcaps.c:
8219         * gst/gstelement.c:
8220         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8221         * gst/gstindex.c: (gst_index_resolver_get_type),
8222         (gst_index_get_type), (gst_index_factory_get_type):
8223         * gst/gstinfo.c:
8224         * gst/gstpad.c:
8225         * gst/gstplugin.c:
8226         * gst/gsturi.c: (gst_uri_handler_get_type):
8227         * gst/gstvalue.c:
8228           first batch of documentation fixes
8229
8230 2004-03-29  David Schleef  <ds@schleef.org>
8231
8232         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8233         * docs/gst/gstreamer-docs.sgml:  More hacking
8234         * docs/gst/gstreamer-sections.txt:
8235         * docs/gst/tmpl/cothreads_compat.sgml:
8236         * docs/gst/tmpl/gstcaps.sgml:
8237         * docs/gst/tmpl/gstclock.sgml:
8238         * docs/gst/tmpl/gstelement.sgml:
8239         * docs/gst/tmpl/gstevent.sgml:
8240         * docs/gst/tmpl/gstpad.sgml:
8241         * docs/gst/tmpl/gstutils.sgml:
8242         * docs/gst/tmpl/gstxml.sgml:
8243         * docs/gst/tmpl/gthread-cothreads.sgml:
8244         * docs/random/ds/0.9-suggested-changes:
8245         * gst/elements/gstfakesink.h: doc fixes
8246         * gst/elements/gstfakesrc.h: doc fixes
8247         * gst/gstcaps.c: doc fixes
8248         * gst/gstcaps.h: doc fixes
8249         * gst/gstelement.c: doc fixes
8250         * gst/gstelement.h: doc fixes
8251         * gst/gstindex.c: doc fixes
8252         * gst/gstinfo.c: doc fixes
8253         * gst/gstpad.c: doc fixes
8254         * gst/gstpad.h: doc fixes
8255         * gst/gstplugin.c: doc fixes
8256         * gst/gsttypefind.h: doc fixes
8257         * gst/gsturi.c: doc fixes
8258         * gst/gstvalue.c: doc fixes
8259
8260 2004-03-29  Colin Walters  <walters@redhat.com>
8261
8262         * gst/registries/gstxmlregistry.c (get_time)
8263         (plugin_times_older_than_recurse):
8264         Use the result of stat to determine whether a path is a file,
8265         so we don't attempt to opendir() files.
8266
8267 2004-03-29  Benjamin Otte  <otte@gnome.org>
8268
8269         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8270           print caps in debugging output when setting caps failed
8271         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8272         (schedule_next_element), (get_buffer), (run_chainhandler),
8273         (element_may_start), (gst_entry_scheduler_chain_handler),
8274         (gst_entry_scheduler_get_handler),
8275         (gst_entry_scheduler_state_transition),
8276         (gst_entry_scheduler_pad_link):
8277           make this scheduler a testcase for mandatory
8278           discont-before-first-buffer which is needed if we want to allow apps
8279           to release the sound device.
8280           add SCHED_ASSERT macro to print scheduler state before an assertion
8281           triggers.
8282
8283 2004-03-29  Benjamin Otte  <otte@gnome.org>
8284
8285         * COPYING:
8286           replace by LGPL (former COPYING.LIB). The core is completely
8287           licensed LGPL.
8288         * COPYING.LIB:
8289           remove
8290
8291 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8292
8293         * po/af.po:
8294         * po/sv.po:
8295           updated Afrikaans and Swedish
8296
8297 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8298
8299         * po/LINGUAS:
8300         * po/az.po:
8301           adding Azerbaijani (Mətin Əmirov)
8302
8303 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8304
8305         * gst/gstelement.h: 
8306         * gst/gstelement.c (gst_element_set_time_delay): New function for
8307         setting element time taking into account a hardware buffering
8308         delay.
8309         (gst_element_set_time): Now just an invocation of
8310         gst_element_set_time_delay.
8311         * gst/gstclock.h: 
8312         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8313         allowing to set event times in the future.
8314         (gst_clock_get_event_time): Now just an invocation of
8315         gst_clock_get_event_time_delay.
8316
8317 2004-03-28  Benjamin Otte  <otte@gnome.org>
8318
8319         * gst/gstbin.c: (gst_bin_set_element_sched),
8320         (gst_bin_unset_element_sched):
8321           don't add decoupled elements to schedulers - otherwise it's
8322           impossible to control if a link to a decoupled element was already
8323           removed from a scheduler or not.
8324         * gst/schedulers/cothreads_compat.h:
8325         * gst/schedulers/gthread-cothreads.h:
8326           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8327           is no "unused" warning.
8328         * gst/schedulers/Makefile.am:
8329         * gst/schedulers/entryscheduler.c:
8330           add new scheduler, based on ideas from talking to David and Martin.
8331           It's supposed to be small and correct. Currently it's also slow (but
8332           it's not noticable)
8333         * examples/retag/retag.c: (main):
8334         * testsuite/bytestream/test1.c: (main):
8335           fix missing NULLs at end of variadic functions
8336         * testsuite/elements/.cvsignore:
8337           update
8338
8339 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8340
8341         * gst/gstevent.h:
8342         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8343
8344 2004-03-25  David Schleef  <ds@schleef.org>
8345
8346         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8347         * docs/gst/tmpl/gstaggregator.sgml:
8348         * docs/gst/tmpl/gstautoplugfactory.sgml:
8349         * docs/gst/tmpl/gstbin.sgml:
8350         * docs/gst/tmpl/gstbuffer.sgml:
8351         * docs/gst/tmpl/gstbufferstore.sgml:
8352         * docs/gst/tmpl/gstfakesink.sgml:
8353         * docs/gst/tmpl/gstfakesrc.sgml:
8354         * docs/gst/tmpl/gstmd5sink.sgml:
8355         * docs/gst/tmpl/gstreamer-unused.sgml:
8356         * docs/gst/tmpl/gstsearchfuncs.sgml:
8357         * docs/gst/tmpl/gstshaper.sgml:
8358         * docs/gst/tmpl/gstspider.sgml:
8359         * docs/gst/tmpl/gsttee.sgml:
8360         * docs/gst/tmpl/gstutils.sgml:
8361         * docs/gst/tmpl/gstvalue.sgml:
8362         * docs/gst/tmpl/gstxml.sgml:
8363         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8364         and we don't support it.
8365         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8366         (gst_use_threads), (gst_has_threads): same
8367         * gst/gstthreaddummy.c: same
8368         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8369         * gst/autoplug/gstspider.h: same
8370         * gst/elements/gstaggregator.h: Remove bogus function from header
8371         * gst/elements/gstfakesink.h: same
8372         * gst/elements/gstfakesrc.h: same
8373         * gst/elements/gstmd5sink.h: same
8374         * gst/elements/gstshaper.h: same
8375         * gst/elements/gsttee.h: same
8376         * gst/gstbin.c: doc fixes
8377         * gst/gstbin.h: Remove unused definition.
8378         * gst/gstbuffer.c: doc fixes
8379         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8380         * gst/gstfilter.c: doc fixes
8381         * gst/gsttag.c: doc fixes
8382         * gst/gstvalue.c: doc fixes
8383
8384 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8385
8386         * docs/pwg/advanced-types.xml:
8387           Document typefinding.
8388         * docs/pwg/other-oneton.xml:
8389           Document one-to-n elements, demuxers and parsers.
8390
8391 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8392
8393         reviewed by: David Schleef  <ds@schleef.org>
8394
8395         * configure.ac: Check bison version (bug #127838)
8396
8397 2004-03-25  David Schleef  <ds@schleef.org>
8398
8399         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8400         * docs/gst/gstreamer-sections.txt:
8401         * docs/gst/tmpl/gstautoplug.sgml:
8402         * docs/gst/tmpl/gststaticautoplug.sgml:
8403         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8404         * docs/gst/tmpl/gstutils.sgml:
8405         * docs/gst/tmpl/gstxml.sgml:
8406
8407 2004-03-24  David Schleef  <ds@schleef.org>
8408
8409         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8410         manual being such complete crap, that I decided to do major
8411         hacking of it.  This checkin replaces any fine tuning that
8412         may have been done previously, with the benefit of actually
8413         being complete for much of the API that was changed since
8414         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8415         * docs/gst/gstreamer-sections.txt:
8416         * docs/gst/tmpl/GstBin.sgml:
8417         * docs/gst/tmpl/GstBuffer.sgml:
8418         * docs/gst/tmpl/GstCaps.sgml:
8419         * docs/gst/tmpl/GstClock.sgml:
8420         * docs/gst/tmpl/GstCompat.sgml:
8421         * docs/gst/tmpl/GstData.sgml:
8422         * docs/gst/tmpl/GstElement.sgml:
8423         * docs/gst/tmpl/GstEvent.sgml:
8424         * docs/gst/tmpl/GstIndex.sgml:
8425         * docs/gst/tmpl/GstStructure.sgml:
8426         * docs/gst/tmpl/GstTag.sgml:
8427         * docs/gst/tmpl/cothreads.sgml:
8428         * docs/gst/tmpl/cothreads_compat.sgml:
8429         * docs/gst/tmpl/gettext.sgml:
8430         * docs/gst/tmpl/grammar.tab.sgml:
8431         * docs/gst/tmpl/gst-i18n-app.sgml:
8432         * docs/gst/tmpl/gst-i18n-lib.sgml:
8433         * docs/gst/tmpl/gst.sgml:
8434         * docs/gst/tmpl/gst_private.sgml:
8435         * docs/gst/tmpl/gstaggregator.sgml:
8436         * docs/gst/tmpl/gstarch.sgml:
8437         * docs/gst/tmpl/gstatomic.sgml:
8438         * docs/gst/tmpl/gstatomic_impl.sgml:
8439         * docs/gst/tmpl/gstbin.sgml:
8440         * docs/gst/tmpl/gstbuffer.sgml:
8441         * docs/gst/tmpl/gstbufferstore.sgml:
8442         * docs/gst/tmpl/gstcaps.sgml:
8443         * docs/gst/tmpl/gstclock.sgml:
8444         * docs/gst/tmpl/gstcompat.sgml:
8445         * docs/gst/tmpl/gstconfig.sgml:
8446         * docs/gst/tmpl/gstcpu.sgml:
8447         * docs/gst/tmpl/gstdata.sgml:
8448         * docs/gst/tmpl/gstdata_private.sgml:
8449         * docs/gst/tmpl/gstelement.sgml:
8450         * docs/gst/tmpl/gstenumtypes.sgml:
8451         * docs/gst/tmpl/gsterror.sgml:
8452         * docs/gst/tmpl/gstevent.sgml:
8453         * docs/gst/tmpl/gstfakesink.sgml:
8454         * docs/gst/tmpl/gstfakesrc.sgml:
8455         * docs/gst/tmpl/gstfilesink.sgml:
8456         * docs/gst/tmpl/gstfilter.sgml:
8457         * docs/gst/tmpl/gstindex.sgml:
8458         * docs/gst/tmpl/gstinfo.sgml:
8459         * docs/gst/tmpl/gstinterface.sgml:
8460         * docs/gst/tmpl/gstlog.sgml:
8461         * docs/gst/tmpl/gstmacros.sgml:
8462         * docs/gst/tmpl/gstmarshal.sgml:
8463         * docs/gst/tmpl/gstmd5sink.sgml:
8464         * docs/gst/tmpl/gstmultifilesrc.sgml:
8465         * docs/gst/tmpl/gstobject.sgml:
8466         * docs/gst/tmpl/gstpad.sgml:
8467         * docs/gst/tmpl/gstparse.sgml:
8468         * docs/gst/tmpl/gstpipeline.sgml:
8469         * docs/gst/tmpl/gstplugin.sgml:
8470         * docs/gst/tmpl/gstpluginfeature.sgml:
8471         * docs/gst/tmpl/gstqueue.sgml:
8472         * docs/gst/tmpl/gstreamer-unused.sgml:
8473         * docs/gst/tmpl/gstregistry.sgml:
8474         * docs/gst/tmpl/gstregistrypool.sgml:
8475         * docs/gst/tmpl/gstscheduler.sgml:
8476         * docs/gst/tmpl/gstsearchfuncs.sgml:
8477         * docs/gst/tmpl/gstshaper.sgml:
8478         * docs/gst/tmpl/gstspider.sgml:
8479         * docs/gst/tmpl/gstspideridentity.sgml:
8480         * docs/gst/tmpl/gststructure.sgml:
8481         * docs/gst/tmpl/gstsystemclock.sgml:
8482         * docs/gst/tmpl/gsttag.sgml:
8483         * docs/gst/tmpl/gsttaginterface.sgml:
8484         * docs/gst/tmpl/gsttee.sgml:
8485         * docs/gst/tmpl/gstthread.sgml:
8486         * docs/gst/tmpl/gsttrace.sgml:
8487         * docs/gst/tmpl/gsttrashstack.sgml:
8488         * docs/gst/tmpl/gsttypefind.sgml:
8489         * docs/gst/tmpl/gsttypes.sgml:
8490         * docs/gst/tmpl/gsturi.sgml:
8491         * docs/gst/tmpl/gsturitype.sgml:
8492         * docs/gst/tmpl/gstutils.sgml:
8493         * docs/gst/tmpl/gstvalue.sgml:
8494         * docs/gst/tmpl/gstversion.sgml:
8495         * docs/gst/tmpl/gstxml.sgml:
8496         * docs/gst/tmpl/gstxmlregistry.sgml:
8497         * docs/gst/tmpl/gthread-cothreads.sgml:
8498         * docs/gst/tmpl/types.sgml:
8499
8500 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8501
8502         * docs/pwg/other-sink.xml:
8503         * docs/pwg/other-source.xml:
8504           Documentation on how to write source and sink elements. Other
8505           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8506           manager, autoplugger) are all still pending.
8507
8508 2004-03-25  Benjamin Otte  <otte@gnome.org>
8509
8510         * testsuite/elements/Makefile.am:
8511         * testsuite/elements/gst-compprep-check:
8512           add check to make sure gst-compprep works
8513         * testsuite/elements/gst-inspect-check.in:
8514           improve initialization output
8515         * testsuite/Makefile.am:
8516         * testsuite/gst-inspect-check:
8517           remove old file
8518
8519 2004-03-24  David Schleef  <ds@schleef.org>
8520
8521         * testsuite/elements/Makefile.am:
8522         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8523         to the testsuite.
8524
8525 2004-03-24  Benjamin Otte  <otte@gnome.org>
8526
8527         * libs/gst/control/dparam.c: (gst_dparam_attach),
8528         (gst_dparam_detach):
8529         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8530           fix lvalue casts for real
8531
8532 2004-03-24  Benjamin Otte  <otte@gnome.org>
8533
8534         * gst/schedulers/gstbasicscheduler.c:
8535         (gst_basic_scheduler_src_wrapper):
8536         * gst/schedulers/gstoptimalscheduler.c:
8537         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8538         (pad_clear_queued), (gst_opt_scheduler_add_element),
8539         (gst_opt_scheduler_remove_element):
8540           fix GStreamer to not have issues with lvalue casts anymore (fixes
8541           #136841)
8542
8543 2004-03-24  Benjamin Otte  <otte@gnome.org>
8544
8545         * gst/gstelement.c:
8546           add documentation about a gobject quirk where the object hasn't the
8547           correct class pointer set on initialization
8548         * gst/schedulers/gstbasicscheduler.c:
8549         (gst_basic_scheduler_src_wrapper):
8550           make sure to not run into an infinite loop
8551
8552 2004-03-22  Benjamin Otte  <otte@gnome.org>
8553
8554         * gst/gstutils.c: (gst_util_dump_mem):
8555         * gst/gstutils.h:
8556           first argument of gst_util_dump_mem should be const
8557
8558 2004-03-22  Johan Dahlin  <johan@gnome.org>
8559
8560         * gst/gstvalue.h: Clean up a little bit.
8561
8562 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8563
8564         reviewed by Benjamin Otte  <otte@gnome.org>
8565
8566         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8567         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8568         (gst_aggregator_class_init), (gst_aggregator_init):
8569         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8570         (gst_filesrc_dispose), (gst_filesrc_set_location):
8571         * gst/elements/gstidentity.c: (gst_identity_finalize),
8572         (gst_identity_class_init), (gst_identity_chain):
8573         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8574         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8575         (gst_statistics_class_init):
8576         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8577         (gst_tee_get_property):
8578           clean up used memory in this elements correctly on teardown (closes
8579           #137279)
8580
8581 2004-03-20  Colin Walters  <walters@redhat.com>
8582
8583         * gst/registries/gstxmlregistry.c:
8584         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8585         registry saving atomic.
8586
8587 2004-03-20  Colin Walters  <walters@redhat.com>
8588
8589         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8590         Just use
8591         access() instead of actually creating and deleting files.
8592
8593 2004-03-18  David Schleef  <ds@schleef.org>
8594
8595         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8596         (bug #137625)
8597
8598 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8599
8600         * po/sv.po: updated translation (Christian Rose)
8601
8602 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8603
8604         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8605         (gst_filesink_get_query_types), (_do_init),
8606         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8607           return FALSE silently
8608         * po/af.po: updated translation (Petri Jooste)
8609
8610 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8611
8612         * Makefile.am:
8613         * configure.ac:
8614           dist common properly
8615         * po/af.po:
8616         * po/fr.po:
8617         * po/nl.po:
8618         * po/sr.po:
8619         * po/sv.po:
8620           refreshing translations
8621
8622 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8623
8624         * po/LINGUAS:
8625         * po/sv.po:
8626         * po/af.po:
8627           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8628
8629 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8630
8631         * Makefile.am: use common/release.mak
8632
8633 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8634
8635         * docs/faq/gst-uninstalled:
8636           adding gst-monkeysaudio to the list of possible plugin dirs
8637
8638 2004-03-16  David Schleef  <ds@schleef.org>
8639
8640         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8641         (gst_init_check_with_popt_table):  Fix some gettext strings to
8642         make them easier to translate.  Required making the strings
8643         non-const.
8644
8645 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8646
8647         * configure.ac: bump nano to 1
8648
8649 === release 0.8.0 ===
8650
8651 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8652
8653         * configure.ac: release 0.8.0, "Executive Slacks"
8654
8655 2004-03-16  Johan Dahlin  <johan@gnome.org>
8656
8657         * gst/schedulers/gstoptimalscheduler.c
8658         (gst_opt_scheduler_pad_unlink): Remove double ;,
8659         spotted by Scott Wheeler
8660
8661 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8662
8663         * configure.ac: bump libtool version
8664
8665 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8666
8667         * gst/gstcaps.h:
8668         * gst/gststructure.h:
8669           add reserved padding
8670
8671 2004-03-15  Benjamin Otte  <otte@gnome.org>
8672
8673         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8674           set the first parameter for select call correctly.
8675           (fixes #137230)
8676
8677 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8678
8679         * *.c,*.h: don't mix tabs and spaces
8680
8681 2004-03-15  Johan Dahlin  <johan@gnome.org>
8682
8683         * gst/schedulers/gstoptimalscheduler.c
8684         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8685         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8686
8687         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8688         
8689 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8690
8691         * testsuite/Rules:
8692           fix gst-register rules
8693
8694 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8695
8696         * testsuite/Rules:
8697           use versioned gst-register
8698
8699 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8700
8701         * docs/libs/gstreamer-libs-sections.txt:
8702           remove </SUBSECTION>
8703         * gst/gstplugin.c:
8704         * gst/gstregistry.c: (gst_registry_add_plugin):
8705         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8706         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8707           add debugging and fix some comment blocks
8708
8709 2004-03-15  Johan Dahlin  <johan@gnome.org>
8710
8711         * *.h: Revert indent changes.
8712         
8713 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8714
8715         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8716           g_error_free the g_error
8717         * tools/gst-feedback-m.m:
8718           check for other versions of gstreamer
8719         * tools/gst-indent:
8720           use sh, not bash
8721
8722 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8723
8724         * tools/gst-register.c: do not spill paths when registries are not
8725           writable, until we fix the "user running gst-register" case.
8726
8727 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8728
8729         * *.c, *.h: commit of gst-indent run on core
8730
8731 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8732
8733         * tools/gst-indent:
8734         * tools/Makefile.am:
8735           add our indentation style as a script
8736
8737 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8738
8739         * po/sr.po:
8740         * po/LINGUAS:
8741           added Serbian translation
8742
8743 2004-03-13  Benjamin Otte  <otte@gnome.org>
8744
8745         * gst/gstelement.c:
8746           add documentation note about gst_element_found_tags_for_pad not
8747           being usable in getfunctions. (see #137042)
8748
8749 2004-03-12  David Schleef  <ds@schleef.org>
8750
8751         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8752         change API right now!  Readd gst_caps_is_simple() macro.
8753         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8754         uninitialized variable.  I'd bet this caused crashes.
8755         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8756
8757 2004-03-12  Johan Dahlin  <johan@gnome.org>
8758
8759         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8760         * gst/gstcaps.h: Clean up
8761
8762         * gst/gst.c (init_post): call gst_caps_get_type() instead of
8763         _gst_caps_initalize()
8764
8765         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
8766         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
8767
8768         * gst/gststructure.c (gst_structure_get_type): Ditto
8769
8770         * gst/gststructure.h: Ditto
8771         
8772 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8773
8774         * gst/gstqueue.c: (gst_queue_init):
8775           Reset default max. values in queues. Reason is simply to avoid
8776           braindead use. If you want wider values, use the properties. The
8777           default is supposed to always work. Wider values would make this
8778           beast a memory hog by default (250 full-PAL RGB32 video frames?
8779           That's 440 MB! No thank you).
8780
8781 2004-03-10  David Schleef  <ds@schleef.org>
8782
8783         * tools/gst-run.c: (main):  Fix crash when no relevant tools
8784         were found.  (bug #136793)
8785
8786 2004-03-10  Johan Dahlin  <johan@gnome.org>
8787
8788         * gst/schedulers/gstoptimalscheduler.c
8789         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
8790         links to elements within the same group, so we can finally remove
8791         that annoying warning. Refactor the code a little bit
8792         (group_dec_links_for_element): Split out
8793
8794 2004-03-09  David Schleef  <ds@schleef.org>
8795
8796         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
8797         (bug #134863)
8798
8799 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8800
8801         * configure.ac: first bug fix due to major/minor bump
8802
8803 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8804
8805         * configure.ac: bump nano to 1
8806
8807 === release 0.7.6 ===
8808
8809 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8810
8811         * NEWS:
8812         * RELEASE:
8813         * configure.ac:
8814           releasing 0.7.6, "Almost"
8815         * po/fr.po:
8816         * po/nl.po:
8817         * tools/Makefile.am:
8818         * tools/gst-feedback-m.m:
8819           unversioned source
8820
8821 2004-03-09  Johan Dahlin  <johan@gnome.org>
8822
8823         Reviewed by: Thomas Vander Stichele
8824
8825         * gst/gstelement.c (gst_element_class_init): register second
8826         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
8827         language bindings can (de)marshall correctly.
8828
8829         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
8830
8831         * gst/gsterror.c (gst_g_error_get_type): New function
8832
8833         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
8834         with VOID:OBJECT,OBJECT,STRING 
8835
8836 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
8837
8838         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
8839         Free a leaked g_timer on early returns.
8840
8841 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8842
8843         * docs/pwg/advanced-types.xml:
8844           Add cinepak description.
8845
8846 2004-03-07  David Schleef  <ds@schleef.org>
8847
8848         * docs/random/mimetypes:  Added cinepak description
8849
8850 2004-03-07  Andy Wingo  <wingo@pobox.com>
8851
8852         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
8853
8854         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
8855         there are no links to other groups when a group is destroyed.
8856         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
8857         removed from a group, make sure the link count to elements linked
8858         to other pads is appropriately decremented. This really fixes
8859         #135672.
8860
8861         The 1.60->1.61 patch has been reapplied in light of this fix.
8862
8863         * gst/gstelement.c (gst_element_dispose): Really protect against
8864         multiple invocations this time.
8865
8866 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8867
8868         * docs/gst/gstreamer-sections.txt:
8869         * docs/gst/tmpl/gsttag.sgml:
8870           remove some deprecated functions, document some existing ones
8871         * gst/gsttag.c: (gst_tag_get_flag):
8872         * gst/gsttag.h:
8873           add accessor function
8874
8875 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8876
8877         * docs/gst/gstreamer-sections.txt:
8878         * docs/gst/tmpl/gsttag.sgml:
8879         * docs/gst/tmpl/gstxml.sgml:
8880         * gst/gsttag.c: (gst_tag_get_flag):
8881         * gst/gsttag.h:
8882
8883 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
8884
8885         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
8886         leak
8887
8888 2004-03-05  David Schleef  <ds@schleef.org>
8889
8890         * REQUIREMENTS: Add bison and flex.
8891         * configure.ac: Fix comment about bison.
8892         * docs/random/ds/0.9-suggested-changes: yer ma
8893         * tools/gst-inspect.c: (print_element_info):  Fix warning.
8894
8895 2004-03-05  Benjamin Otte  <otte@gnome.org>
8896
8897         * gst/gstelement.c: (gst_element_error_full):
8898           revert recent recursive state changing commit - messing with other
8899           elements' states is evil and should be done by apps only.
8900
8901 2004-03-05  Benjamin Otte  <otte@gnome.org>
8902
8903         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
8904           check for empty intersection instead of NULL caps
8905         (gst_element_get_compatible_pad_filtered):
8906           remove old workaround that is only a bug nowadays
8907
8908 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8909
8910         * gst/gstelement.c: (gst_element_error_full):
8911           make elements try to recursively change state to PAUSED on all
8912           parents after an error to suppress ensuing warnings
8913         * gst/parse/grammar.y:
8914           make it check if it was able to sync the state, and throw an error
8915           if not, so stuff like
8916           oggdemux ! vorbisdec ! osssink gets caught
8917
8918 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8919
8920         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
8921           it contains lib64; use AS_AC_EXPAND to handle it properly
8922
8923 2004-03-05  David Schleef  <ds@schleef.org>
8924
8925         * gst/gstcpuid_i386.s:  Remove unused code
8926         * libs/gst/getbits/getbits.c: (gst_getbits_init),
8927         (gst_getbits_newbuf): Remove MMX code
8928         * libs/gst/getbits/getbits.h: Remove MMX code
8929
8930 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
8931
8932         * debian/.cvsignore:
8933         * debian/README.Debian:
8934         * debian/changelog:
8935         * debian/control:
8936         * debian/control.in:
8937         * debian/copyright:
8938         * debian/gstreamer-core-libs-dev.files:
8939         * debian/gstreamer-core-libs.files:
8940         * debian/gstreamer-core.files:
8941         * debian/gstreamer-core.postinst:
8942         * debian/gstreamer-core.postrm:
8943         * debian/gstreamer-doc.files:
8944         * debian/gstreamer-doc.links:
8945         * debian/gstreamer-doc.lintian:
8946         * debian/gstreamer-runtime.files:
8947         * debian/gstreamer-runtime.manpages:
8948         * debian/gstreamer-runtime.postinst:
8949         * debian/gstreamer-runtime.postrm:
8950         * debian/gstreamer-tools.files:
8951         * debian/gstreamer-tools.manpages:
8952         * debian/libgstreamer-dev.files:
8953         * debian/libgstreamer0.4.1.files:
8954         * debian/libgstreamerVERSION.files:
8955         * debian/rules:
8956         Debian package info not maintained here.
8957
8958 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
8959
8960         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
8961         * gst/gstbin.c: (gst_bin_class_init):
8962         * gst/gstelement.c: (gst_element_class_init):
8963         * gst/gstindex.c: (gst_index_class_init):
8964         * gst/gstobject.c: (gst_object_class_init),
8965         (gst_signal_object_class_init):
8966         * gst/gstpad.c: (gst_pad_template_class_init):
8967         * gst/gstregistry.c: (gst_registry_class_init):
8968         * gst/gsturi.c: (gst_uri_handler_base_init):
8969         * gst/gstxml.c: (gst_xml_class_init):
8970         * libs/gst/control/dparam.c: (gst_dparam_class_init):
8971         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
8972           make all signal names use dashes instead of underscore
8973
8974 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
8975
8976         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
8977
8978 2004-03-03  Benjamin Otte  <otte@gnome.org>
8979
8980         * gst/schedulers/gstoptimalscheduler.c:
8981           revert last commit by Andy Wingo. It causes segfaults on unreffing
8982           in Rhythmbox. (see bug #135672)
8983
8984 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8985
8986         * po/fr.po: fix typo
8987
8988 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
8989
8990         * tools/gst-inspect.c: (main): 
8991         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
8992
8993 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
8994
8995         * configure.ac:
8996           get GLIB_ONLY and POPT flags for the nonversioned binaries
8997         * tools/Makefile.am:
8998           use them
8999
9000 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9001
9002         * gst/gst.c: (init_post):
9003           change so that GST_REGISTRY now is where the global registry gets
9004           saved, since that is where plugins now get attached to first, and
9005           spilled over to the user registry.  Note that in the case of using
9006           GST_REGISTRY env var, we don't want to affect any real registries
9007           beyond the one given by this var, and thus we don't set a user
9008           registry to spill to.  So make sure GST_REGISTRY is writable.
9009
9010 2004-03-01  David Schleef  <ds@schleef.org>
9011
9012         * AUTHORS:  Added some names.  Add yourself if you're missing.
9013
9014 2004-03-01  David Schleef  <ds@schleef.org>
9015
9016         * MAINTAINERS: Add
9017
9018 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9019
9020         * configure.ac:
9021           remove whitespace
9022         * docs/gst/tmpl/gstbuffer.sgml:
9023         * docs/gst/tmpl/gstdata.sgml:
9024         * docs/gst/tmpl/gstreamer-unused.sgml:
9025         * docs/gst/tmpl/gstxml.sgml:
9026           doc update
9027         * docs/manuals.mak:
9028           add a FIXME
9029         * docs/pwg/intro-preface.xml:
9030         * docs/pwg/pwg.xml:
9031           remove GNOME
9032         * gst/gst.c: (init_post):
9033           try GST_PLUGIN_PATH paths for the _global_registry first
9034         * gst/gstelement.h:
9035           add the error message as well, otherwise (null) debug info doesn't
9036           make much sense
9037         * tools/gst-register.c: (main):
9038           spill paths to next registry if this registry is not writable
9039         * po/fr.po:
9040         * po/nl.po:
9041           translation updates
9042
9043 2004-03-01  Johan Dahlin  <johan@gnome.org>
9044
9045         * gst/gstbuffer.c (_gst_buffer_initialize): 
9046         * gst/gstdata.c (gst_data_get_type): 
9047         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9048         instead of ref, since some applications that uses GBoxed
9049         routines depends on a function that actually returns a copy.
9050
9051 2004-02-27  Benjamin Otte  <otte@gnome.org>
9052
9053         * gst/gstbuffer.h:
9054           remove gst_buffer_free, use gst_data_unref
9055         * gst/gstdata.c: (gst_data_get_type):
9056           use refcounting in GstData GBoxed registration
9057         * gst/gstdata.h:
9058           remove gst_data_free, use gst_data_unref
9059
9060 2004-02-27  Johan Dahlin  <johan@gnome.org>
9061
9062         * gst/gstdata.c (gst_data_get_type): New function, register
9063         GstData as a GBoxed type.
9064
9065         * gst/gstdata.h (GST_TYPE_DATA): New macro
9066
9067 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9068
9069         * Makefile.am:
9070         * gstreamer.spec.in:
9071           put back RELEASE
9072         * gst/Makefile.am:
9073           clean up non-disting of built files
9074         * testsuite/debug/commandline.c:
9075           test fix for option rename
9076
9077 2004-02-26  David Schleef  <ds@schleef.org>
9078
9079         * configure.ac:  We don't really need glib-2.3.  Also remove
9080         some unneeded checks for library functions.
9081         * gst/Makefile.am:  Instead, we need to not dist files created
9082         by glib-genmarshal.
9083
9084 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9085
9086         * configure.ac:
9087           bump glib required version to 2.3.0 for g_value_takes_boxed
9088
9089  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9090
9091         * common/m4/gst-docs.m4
9092         change flavour text from enable to disable as enable is our default
9093         closes bug Bug 135304
9094
9095 === release 0.7.5 ===
9096  
9097  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9098  
9099         * NEWS:
9100           instate NEWS file
9101         * Makefile.am:
9102         * gstreamer.spec.in:
9103         * RELEASE:
9104           put back release
9105         * configure.ac:
9106         * docs/random/release:
9107           more updates
9108
9109 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9110
9111         * gst/gsttag.c: (_gst_tag_initialize):
9112         * po/fr.po:
9113         * po/nl.po:
9114           remove hyphen from codec tags
9115
9116 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9117
9118         * gst/parse/Makefile.am:
9119           fix dependency so that a make from a clean build works the first
9120           time
9121
9122 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9123
9124         * docs/random/release:
9125           update release strategy
9126         * po/fr.po:
9127           auto-update po file
9128         * po/nl.po:
9129           update dutch translation
9130
9131 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9132
9133         * docs/manual/debugging.xml:
9134         fix manual for new debugging system
9135
9136 2004-02-25  Andy Wingo  <wingo@pobox.com>
9137
9138         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9139         gst_pad_link_prepare. Please email the list with specific reasons
9140         for reverting.
9141
9142 2004-02-24  Andy Wingo  <wingo@pobox.com>
9143
9144         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9145         invocations.
9146
9147         * gst/schedulers/gstoptimalscheduler.c:
9148         I added a mess of prototypes at the top of the file by way of
9149         documentation. Some of the operations on chains and groups were
9150         re-organized.
9151
9152         (create_group): Added a type argument so if the group is enabled,
9153         the setup_group_scheduler knows what to do.
9154         (group_elements): Added a type argument here, too, to be passed on
9155         to create_group.
9156         (group_element_set_enabled): If an unlinked PLAYING element is
9157         added to a bin, we have to create a new group to hold the element,
9158         and this function will be called before the group is added to the
9159         chain. Thus we have a valid case for group->chain==NULL. Instead
9160         of calling chain_group_set_enabled, just set the flag on the group
9161         (the chain's status will be set when the group is added to it).
9162         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9163         Setup the group scheduler when the group is enabled, not
9164         specifically when an element goes PAUSED->PLAYING. This means
9165         PLAYING elements can be added, linked, and scheduled into a
9166         PLAYING pipeline, as was intended.
9167         (add_to_group): Don't ref the group twice. I don't know when this
9168         double-ref got in here. Removing it has the potential to cause
9169         segfaults if other parts of the scheduler are buggy. If you find
9170         that the scheduler is segfaulting for you, put in an extra ref
9171         here and see if that hacks over the underlying issue. Of course,
9172         then find out what code is unreffing a group it doesn't own...
9173         (create_group): Make the extra refcount floating, and remove it
9174         after adding the element. This means that...
9175         (unref_group): Destroy when the refcount reaches 0, not 1, like
9176         every other refcounted object in the known universe.
9177         (remove_from_group): When a group becomes empty, set it to be not
9178         active, and remove it from its chain. Don't unref it again,
9179         there's no floating reference any more.
9180         (destroy_group): We have to remove the group from the chain in
9181         remove_from_group (rather than here) to break refcounting cycles
9182         (the chain always has a ref on the group). So assert that
9183         group->chain==NULL.
9184         (ref_group_by_count): Removed, it was commented out anyway.
9185         (merge_chains): Use the remove_from_chain and add_to_chain
9186         primitives to do the reparenting, instead of rolling our own
9187         implementation.
9188         (add_to_chain): The first non-disabled group in the chain's group
9189         list will be the entry point for the chain. Because buffers can
9190         accumulate in loop elements' peer bufpens, we preferentially
9191         schedule loop groups before get groups to avoid unnecessary
9192         execution of get-based groups when the bufpens are already full.
9193         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9194         (get_group_schedule_function): Ditto.
9195         (loop_group_schedule_function): Ditto.
9196         (gst_opt_scheduler_loop_wrapper): Ditto.
9197         (gst_opt_scheduler_iterate): Ditto.
9198
9199         I understand the opt scheduler now, yippee!
9200
9201         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9202         (gst_pad_get_name, gst_pad_set_chain_function) 
9203         (gst_pad_set_get_function, gst_pad_set_event_function) 
9204         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9205         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9206         (gst_pad_set_query_function, gst_pad_get_query_types) 
9207         (gst_pad_get_query_types_default) 
9208         (gst_pad_set_internal_link_function) 
9209         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9210         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9211         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9212         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9213         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9214         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9215         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9216         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9217         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9218         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9219         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9220         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9221         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9222         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9223         argument checks, and some doc fixes.
9224
9225         (gst_pad_custom_new_from_template): Um, does anyone
9226         use these functions? Actually make a custom pad instead of a
9227         normal one.
9228         (gst_pad_try_set_caps): Transpose some checks.
9229         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9230         the pad is in negotiation.
9231         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9232         
9233         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9234
9235         * gst/gstelement.h: 
9236         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9237         on the list.
9238
9239 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9240
9241         * gst/gstbin.c: (gst_bin_add):
9242           add error for not being able to add elements
9243
9244 2004-02-22  Julien MOUTTE <julien@moutte.net>
9245
9246         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9247         audio-codec and video-codec.
9248
9249 2004-02-22  Benjamin Otte  <otte@gnome.org>
9250
9251         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9252
9253         * autogen.sh:
9254           replace test -e with test -x for mkinstalldirs to be more portable.
9255           (fixes #134816)
9256
9257 2004-02-22  Benjamin Otte  <otte@gnome.org>
9258
9259         * gst/gstpad.c:
9260           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9261           too noisy
9262         * gst/gsttag.c: (_gst_tag_initialize):
9263         * gst/gsttag.h:
9264           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9265         * libs/gst/control/dparam.c: (gst_dparam_attach):
9266         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9267           check that types for attached dparams match
9268
9269 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9270
9271         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9272         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9273         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9274           fix errors
9275
9276 2004-02-20  Andy Wingo  <wingo@pobox.com>
9277
9278         * gst/gstbin.c:
9279         * gst/gstbuffer.c:
9280         * gst/gstplugin.c:
9281         * gst/registries/gstxmlregistry.c: 
9282         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9283
9284         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9285         (gst_element_add_pad): DEBUG->INFO, some fixes.
9286         (gst_element_get_compatible_pad_template): Just see if the
9287         templates' caps intersect, not if one is a strict subset of the
9288         other. This conforms more to what gst_pad_link_intersect() does.
9289         (gst_element_class_add_pad_template): Don't memcpy the pad
9290         template, just ref it.
9291         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9292
9293         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9294         (gst_pad_link_filtered): Debug changes.
9295         (gst_pad_link_prepare): New function, consolidated from
9296         can_link_filtered and link_filtered.
9297
9298         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9299         look more like that of the functions in gstelement.c
9300
9301         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9302         object, and return the empty string if object is NULL.
9303
9304         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9305         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9306         LOG, not DEBUG. We still get flex info on debug.
9307
9308         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9309         debug string more verbose.
9310         (plugin_times_older_than): DEBUG->LOG.
9311
9312 2004-02-20  Julien MOUTTE <julien@moutte.net>
9313
9314         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9315         will emit found_tag for each stream they demux with the codec.
9316
9317 2004-02-20  Benjamin Otte  <otte@gnome.org>
9318
9319         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9320           copy navigation event correctly. Check freeing tag lists. 
9321         * gst/gstthread.c: (gst_thread_change_state):
9322           don't abort() on state changing mess - it might happen because of
9323           bugs.
9324         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9325           use boxed functions
9326         * gst/gstvalue.h:
9327           fix GST_VALUE_HOLDS_CAPS
9328
9329 2004-02-19  David Schleef  <ds@schleef.org>
9330
9331         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9332         and use it for GST_FUNCTION.  (bug #134750)
9333
9334 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9335
9336         * po/fr.po:
9337         * po/nl.po:
9338           updating translations
9339
9340 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9341
9342         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9343
9344 2004-02-18  kost@imn.htwk-leipzig.de
9345
9346         reviewed by: David Schleef  <ds@schleef.org>
9347
9348         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9349         for libgstcontrol.
9350
9351 2004-02-18  David Schleef  <ds@schleef.org>
9352
9353         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9354         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9355         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9356         * tools/gst-inspect.c: (print_element_info): Support dumping of
9357         double dparam information.
9358
9359 2004-02-17  David Schleef  <ds@schleef.org>
9360
9361         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9362         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9363         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9364         Use GST_TYPE_CAPS in signal prototype.
9365         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9366         Convert GST_TYPE_CAPS to boxed.
9367         * gst/gstelement.c: (gst_element_class_init):
9368         Use GST_TYPE_TAG_LIST in signal prototype.
9369         * gst/gstindex.c: (gst_index_class_init):
9370         * gst/gstindex.h:
9371         Add GST_TYPE_INDEX_ENTRY type.
9372         * gst/gstmarshal.list:
9373         Add necessary marshal types.
9374         * gst/gstpad.c: (gst_real_pad_class_init),
9375         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9376         (gst_pad_recover_caps_error):
9377         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9378         * gst/gststructure.c: (_gst_structure_initialize),
9379         (gst_structure_copy), (_gst_structure_copy_conditional):
9380         * gst/gststructure.h:
9381         Convert GST_TYPE_STRUCTURE to boxed.
9382         * gst/gsttag.c: (gst_tag_list_get_type):
9383         * gst/gsttag.h:
9384         Add GST_TYPE_TAG_LIST type.
9385
9386 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9387
9388         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9389         to what we agreed with david.
9390         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9391
9392 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9393
9394         * po/nl.po: update translation
9395
9396 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9397
9398         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9399           throw an error if spider is trying to play a mime type there is
9400           no decoder for
9401         * po/POTFILES.in:
9402           add gst/autoplug/gstspider.c for translation
9403
9404 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9405
9406         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9407         silently when the pad is negotiating.
9408
9409 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9410
9411         * docs/faq/Makefile.am:
9412           add script to run gstreamer uninstalled 
9413         * docs/faq/faq.xml:
9414         * docs/faq/developing.xml:
9415         * docs/faq/gst-uninstalled:
9416           extract script to run gstreamer uninstalled
9417         * docs/manuals.mak:
9418           add EXTRA_SOURCES variable for Makefile.am's to set to
9419           use additional SOURCE files for the doc build
9420
9421 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9422
9423         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9424
9425 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9426
9427         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9428         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9429         an error was thrown by osssink. Basically a state change failure for
9430         an element in a different scheduling group was considered as
9431         successful, which means that caps nego was going on and weird stuff
9432         happened. Like I wrote in the comment there, if someone wants to
9433         revert that please drop me a mail explaining why because I really see
9434         no point in keeping that broken behaviour there.
9435         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9436         be empty, we then return NULL which will trigger a nice error when 
9437         pulling from the pad.
9438
9439 2004-02-13  David Schleef  <ds@schleef.org>
9440
9441         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9442         (gst_dparam_get_property), (gst_dparam_set_property),
9443         (gst_dparam_do_update_default):
9444         * libs/gst/control/dparam.h:
9445         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9446         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9447         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9448         (gst_dpsmooth_do_update_double):
9449         * libs/gst/control/dparam_smooth.h:
9450         * libs/gst/control/dparammanager.c:
9451         (gst_dpman_inline_direct_update):
9452         Add support for double dparams.
9453
9454 2004-02-13  David Schleef  <ds@schleef.org>
9455
9456         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9457         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9458
9459 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9460
9461         reviewed by: David Schleef  <ds@schleef.org>
9462
9463         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9464         (gst_fdsrc_init), (gst_fdsrc_set_property),
9465         (gst_fdsrc_get_property), (gst_fdsrc_get):
9466         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9467         and sends an EOS event if file descriptor reading times out.
9468
9469 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9470
9471         * configure.ac:
9472           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9473
9474 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9475
9476         * configure.ac: pass required libxml version as argument
9477         (bug reported by Christophe Fergeau)
9478
9479 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9480   
9481         * docs/gst/gstreamer-docs.sgml:
9482         * docs/gst/tmpl/gstxml.sgml:
9483         * docs/libs/gstreamer-libs-docs.sgml:
9484           version API docs
9485
9486 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9487
9488         * gst/gstinfo.c:
9489         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9490         (gst_registry_pool_feature_filter):
9491         * gst/gstthread.c: (gst_thread_class_init):
9492         * gst/gstvalue.c:
9493           add includes exposed by building without libxml
9494         * gst/indexers/Makefile.am:
9495           do not build fileindex when LOADSAVE disabled; we should have
9496           a better libxml check later since fileindex depends on xml, not
9497           LOADSAVE or REGISTRY
9498         * libs/gst/control/Makefile.am:
9499           link with m
9500         * tools/Makefile.am:
9501           fix wrong source code for gst-xmlinspect
9502
9503 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9504
9505         * configure.ac:
9506           fix gcov help output
9507           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9508         * docs/random/release:
9509           some updated releasing notes
9510         * gstreamer.spec.in:
9511           more updates
9512
9513 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9514
9515         * docs/faq/faq.xml:
9516         * docs/manual/manual.xml:
9517         * docs/pwg/pwg.xml:
9518         * docs/pwg/titlepage.xml:
9519           put version in documentation
9520
9521 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9522
9523         * tools/Makefile.am: fix man page installation
9524
9525 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9526
9527         * configure.ac:
9528           don't check for libxml when load/save and registry disabled (#105844)
9529         * gstreamer.spec.in:
9530           sync with fedora candidate spec
9531
9532 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9533
9534         * po/fr.po:
9535         * po/nl.po:
9536           replace multidisksrc with multifilesrc
9537
9538 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9539
9540         * po/POTFILES.in:
9541           update to multidisksrc => multifilesrc file renaming (#134145)
9542
9543 2004-02-11  David Schleef  <ds@schleef.org>
9544
9545         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9546         * docs/gst/tmpl/gstpadtemplate.sgml: same
9547         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9548         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9549         fixing dance.
9550         * gst/gstutils.c: Remove disabled code that uses GstProps.
9551         * gst/registries/gstxmlregistry.h: same
9552         * docs/random/ds/0.9-suggested-changes: random notes
9553
9554 2004-02-11  kost@imn.htwk-leipzig.de
9555
9556         reviewed by: David Schleef  <ds@schleef.org>
9557
9558         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9559         initialisation of clock (bug #134128)
9560
9561 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9562
9563         * configure.ac:
9564         * gst/elements/Makefile.am:
9565         * gst/elements/gstelements.c:
9566         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9567         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9568         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9569         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9570         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9571         * gst/elements/gstmultifilesrc.h:
9572           rename multidisksrc to multifilesrc (part of #122200)
9573
9574 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9575
9576         * docs/manuals.mak:
9577           fix automake complaints
9578         * gst-element-check.m4:
9579           fix unquotedness
9580
9581 2004-02-11  David Schleef  <ds@schleef.org>
9582
9583         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9584         * gst/gstatomic_impl.h: Disable sparc implementation.
9585
9586 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9587
9588         * gst-element-check.m4:
9589           fix underquoted macros as reported by automake 1.8.x (#133800)
9590         * configure.ac:
9591           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9592           by autopoint (fixes #132996)
9593
9594 2004-02-10  Andy Wingo  <wingo@pobox.com>
9595
9596         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9597         way to do inheritance.
9598         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9599         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9600         Routine docs.
9601         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9602         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9603         doc.
9604         (gst_pad_unlink, gst_pad_is_linked): Docs.
9605         (gst_pad_renegotiate): A brief description of capsnego.
9606         (gst_pad_try_set_caps): Document.
9607         (gst_pad_try_set_caps_nonfixed): Document.
9608         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9609         (gst_pad_set_parent): Deprecated (although not out of the API).
9610         (gst_pad_get_parent): Deprecated, although many plugins use this.
9611         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9612         are private and will go away in 0.9.
9613         (gst_pad_perform_negotiate): Doc.
9614         (gst_pad_link_unnegotiate): I think this is meant to be static.
9615         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9616         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9617         (gst_pad_get_peer): Doc updates.
9618         (gst_pad_caps_change_notify): Doc.
9619         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9620         (gst_ghost_pad_new): Doc fixes.
9621
9622         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9623         (gst_object_check_uniqueness): 
9624
9625         * gst/gstelement.c (gst_element_add_pad) 
9626         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9627         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9628         (gst_element_get_static_pad, gst_element_get_pad_list) 
9629         (gst_element_class_get_pad_template_list) 
9630         (gst_element_class_get_pad_template): Work on the docs.
9631         (gst_element_get_pad_template_list): Uses the class method.
9632         (gst_element_get_compatible_pad_template): Docs, and consolidate
9633         some test conditions. 
9634         (gst_element_get_pad_from_template): New static function.
9635         (gst_element_request_compatible_pad): Docs, and work with
9636         non-request compatible templates. 
9637         (gst_element_get_compatible_pad_filtered): Docs and remove
9638         redundant checks.
9639         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9640         (gst_element_link_filtered, gst_element_link_many) 
9641         (gst_element_link, gst_element_link_pads) 
9642         (gst_element_unlink_many): Docs.
9643
9644 2004-02-05  Andy Wingo  <wingo@pobox.com>
9645
9646         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9647         s/pointer/boxed/.
9648
9649         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9650
9651         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9652         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9653         with the type=GST_TYPE_CAPS. This allows language bindings to know
9654         what kind of data they're dealing with.
9655
9656         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9657         to NULL when g_value_init is called. GstCaps, which rolls its own
9658         type implementation, now does the same instead of allocating empty
9659         caps.
9660         (_gst_caps_initialize, _gst_caps_collect_value,
9661         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9662         table methods. This allows G_VALUE_COLLECT to work.
9663
9664 2004-02-05  Andy Wingo  <wingo@pobox.com>
9665
9666         * configure.ac:
9667         * testsuite/Makefile.am (SUBDIRS): 
9668         * testsuite/ghostpads/Makefile.am: 
9669         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9670
9671         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9672         These two routines are the only ones that set
9673         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9674         pad template. They should be made static, depending on ABI needs.
9675         (gst_real_pad_dispose): Handle the case of ghost pads without a
9676         parent. Assert after dealing with ghost pads that the ghost pad
9677         list is empty.
9678         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9679         set after creation.
9680         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9681         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9682         functions. set_property will call add_ghost_pad/remove_ghost_pad
9683         as appropriate.
9684         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9685
9686         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9687         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9688         (gst_element_remove_pad): Handle ghost pads as well.
9689         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9690         depending on API-stability needs).
9691
9692 2004-02-05  Andy Wingo  <wingo@pobox.com>
9693
9694         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9695         of course they're const
9696
9697 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9698
9699         * tools/Makefile.am:
9700         * tools/gst-feedback:
9701         * tools/gst-feedback-0.7:
9702           make gst-feedback versioned too for consistency
9703
9704 2004-02-11  David Schleef  <ds@schleef.org>
9705
9706         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9707         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9708
9709 2004-02-10  Julien MOUTTE <julien@moutte.net>
9710
9711         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9712         the structure does not contain a valid tag list. Adding a safety check
9713         to remove a noisy warning in that case.
9714
9715 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9716
9717         * gst/gst.c: fix name to be in line with others
9718
9719 2004-02-09  Julien MOUTTE <julien@moutte.net>
9720
9721         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
9722         not shout that loud when len is 0. Just return 0 silently.
9723
9724 2004-02-09  Julien MOUTTE  <julien@moutte.net>
9725
9726         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
9727         because data_unref has one and I prefer the debug to be symetric.
9728         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
9729         were refed when added to the queue and unrefed only once when the queue
9730         was flushed. Now the flush handler unref the buffers two times : first
9731         unref for the ref added when pushing in the queue's tail and second
9732         unref to destroy the flushed buffer.
9733
9734 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9735
9736         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
9737
9738 2004-02-06  David Schleef  <ds@schleef.org>
9739
9740         * docs/random/ds/0.9-suggested-changes: Random ramblings
9741         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
9742         to int before printing.
9743         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
9744         * gst/parse/parse.l: same.  See bug #129600
9745
9746 2004-02-06  David Schleef  <ds@schleef.org>
9747
9748         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
9749         (gst_index_add_entry), (gst_index_add_associationv),
9750         (gst_index_add_association): Add gst_index_add_associationv()
9751         and clean up gst_index_add_association(). #127133
9752
9753 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9754
9755         * autogen.sh: check out common with right tag if CVS/Tag exists
9756
9757 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9758
9759         * testsuite/ghostpads/ghostpads.c: (main):
9760           fix testsuite from segfaulting
9761
9762 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9763
9764         * Makefile.am: add release target
9765         * configure.ac: bump nano to 1
9766         * docs/random/release:
9767
9768 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9769
9770         * gst/gstcaps.h:
9771         * gst/gstelement.c: (gst_element_base_class_init),
9772         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9773         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9774         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9775         (gst_real_pad_dispose):
9776         * gst/gststructure.c: (gst_structure_free),
9777         (gst_structure_from_string):
9778           put reverted patch back in
9779         * gst/gstelement.c: (gst_element_remove_pad):
9780           free explicit caps if they're set
9781         * gst/gstpad.c: (_gst_pad_default_fixate_func):
9782           copy the structure when fixating
9783
9784 2004-02-05  David Schleef  <ds@schleef.org>
9785
9786         * gst/gstmarshal.list:
9787         * gst/gstpad.c: (gst_real_pad_class_init),
9788         (_gst_real_pad_fixate_accumulator):
9789         Revert POINTER->BOXED change in signal marshaller.
9790
9791 === release 0.7.4 ===
9792                                                                                 
9793 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9794                                                                                 
9795         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
9796         * configure.ac: changed for release
9797
9798 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9799
9800         * gstreamer.spec.in:
9801           bump required version of gtk-doc
9802
9803 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9804
9805         * gst/gstcaps.h:
9806         * gst/gstelement.c: (gst_element_base_class_init),
9807         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9808         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9809         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9810         (gst_real_pad_dispose):
9811         * gst/gststructure.c: (gst_structure_free),
9812         (gst_structure_from_string):
9813           revert patch that breaks applications, reapply after release
9814           to get this fixed properly
9815
9816 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9817
9818         * gst/gsttag.c: (_gst_tag_initialize):
9819         * gst/gsttag.h:
9820           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
9821
9822 2004-02-04  David Schleef  <ds@schleef.org>
9823
9824         Fix some memleaks:
9825         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
9826         (gst_spider_plug_from_srcpad):
9827         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
9828
9829 2004-02-04  David Schleef  <ds@schleef.org>
9830
9831         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
9832         a GstRealPad before accessing its structure members.
9833
9834 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9835
9836         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
9837         (gst_clock_get_speed):
9838         * gst/gstclock.h:
9839           reset padding, remove unused fields
9840
9841 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9842
9843         * gst/autoplug/gstspideridentity.c:
9844         (gst_spider_identity_sink_loop_type_finding):
9845           use get_allowed_caps, not get_caps (fixes #132519)
9846         * gst/elements/gsttypefind.c: (stop_typefinding):
9847           use correct order when sending buffers and seeking
9848
9849 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9850
9851         * configure.ac:
9852         * gst/gstelement.h:
9853         * gst/gstpad.h:
9854         * gst/gstqueue.h:
9855           upgrade libtool CURRENT, reset padding
9856
9857 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9858
9859         * configure.ac:
9860           bump to prerelease
9861           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
9862
9863 2004-02-04  David Schleef  <ds@schleef.org>
9864
9865         * docs/random/ds/0.9-suggested-changes: random notes
9866         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
9867         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
9868         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
9869         expansion.
9870         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9871         (gst_filesink_get_query_types): same
9872         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
9873         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
9874         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
9875         to use new GST_PTR_FORMAT.
9876         * gst/gstelement.h: deprecate function factory macros
9877         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
9878         These are our last variadic macros that can't be replaced with
9879         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
9880         attempting to deprecate gst_element_clock_wait().
9881         * gst/gstevent.h: same
9882         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9883         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
9884         * gst/gstpad.h: deprecate function factory macros similar to above.
9885
9886 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9887
9888         * configure.ac:
9889         * tools/Makefile.am:
9890         * tools/gst-run.c: (popt_callback), (hash_print_key),
9891         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
9892         (get_candidates), (main):
9893           add new source file to generate non-versioned wrapper binaries
9894           for our tools.
9895
9896 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9897
9898         * gst/gstevent.c: (_gst_event_free):
9899           actually break; inside the switch statement
9900         * gst/parse/grammar.y:
9901           fix memleak where GValues weren't unset
9902
9903 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9904
9905         * gst/gststructure.c: (gst_structure_from_string):
9906           fix huge memleak
9907         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9908         (new_entry), (gst_type_find_element_chain):
9909         * gst/gstelement.c: (gst_element_base_class_init),
9910         (gst_element_class_set_details):
9911         * gst/gstpad.c: (gst_pad_can_link_filtered):
9912           fix smaller memleaks
9913         * gst/gstpad.c: (gst_real_pad_dispose):
9914           check that explicit caps are gone
9915         * gst/gststructure.c: (gst_structure_free):
9916           actually free the structure
9917         * gst/gstelement.c: (gst_element_clear_pad_caps):
9918           unset explicit caps
9919
9920 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9921
9922         * tools/Makefile.am:
9923           use AM_CFLAGS since all the CFLAGS are the same
9924           use AM_LDFAGS
9925
9926 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9927
9928         * docs/manual/gnome.xml:
9929           expand example a little
9930         * gst/gst.c: (gst_init_with_popt_table),
9931         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
9932           make sure popt option displays are done with right textdomain
9933           use GstPoptOption type
9934         * gst/gst.h:
9935           create GstPoptOption type
9936
9937 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9938
9939         * gst/gsterror.c: (_gst_stream_errors_init):
9940         * gst/gsterror.h:
9941           adding error type for no codec
9942         * po/POTFILES.in:
9943           add gst-inspect
9944         * po/nl.po:
9945           update dutch translation
9946         * tools/gst-inspect.c: (print_element_list), (main):
9947           do proper internationalization
9948         * tools/gst-launch.c: (idle_func):
9949           remove commented out function call
9950
9951 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9952
9953         * docs/README:
9954           add some error fixing notes
9955         * docs/gst/gstreamer-sections.txt:
9956           remove double entries
9957         * docs/gst/tmpl/gstbin.sgml:
9958         * docs/gst/tmpl/gstclock.sgml:
9959           remove override
9960         * docs/gst/tmpl/gstelement.sgml:
9961         * docs/gst/tmpl/gstindex.sgml:
9962         * docs/gst/tmpl/gstobject.sgml:
9963         * docs/gst/tmpl/gstpadtemplate.sgml:
9964         * docs/gst/tmpl/gstreamer-unused.sgml:
9965         * docs/gst/tmpl/gsttag.sgml:
9966         * docs/gst/tmpl/gstthread.sgml:
9967         * docs/gst/tmpl/gstxml.sgml:
9968         * gst/gsttag.h:
9969           sync header prototypes with c decls
9970         * gst/gsttaginterface.c:
9971           fix doc headers
9972
9973 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9974
9975         * gst/parse/Makefile.am:
9976         * gst/gstobject.h:
9977           get rid of gstmarshal.h dependency. It's not needed.
9978         * gst/gst.h:
9979         * gst/elements/gstfakesink.c:
9980         * gst/elements/gstfakesrc.c:
9981         * gst/elements/gstidentity.c:
9982         * gst/gstbin.c:
9983         * gst/gstelement.c:
9984         * gst/gstindex.c:
9985         * gst/gstobject.c:
9986         * gst/gstpad.c:
9987         * gst/gstthread.c:
9988         * gst/gstxml.c:
9989         * libs/gst/control/dparam.c:
9990         * libs/gst/control/dparammanager.c:
9991           include gstmarshal.h.
9992         Fixes #132045
9993
9994 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9995
9996         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9997         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
9998         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
9999         * gst/elements/gstfilesrc.h:
10000           don't ref the filesrc when creating mmaped buffers. Don't keep a
10001           list of not-yet-destroyed buffers.
10002         * gst/gstbuffer.h:
10003           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10004
10005 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10006
10007         * gst/gst.c: (init_pre):
10008           remove textdomain
10009
10010 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10011
10012         * docs/pwg/advanced-events.xml:
10013         * docs/pwg/advanced-scheduling.xml:
10014         * docs/pwg/intro-basics.xml:
10015         * docs/pwg/other-manager.xml:
10016         * docs/pwg/other-nton.xml:
10017         * docs/pwg/other-ntoone.xml:
10018         * docs/pwg/other-oneton.xml:
10019         * docs/pwg/pwg.xml:
10020           All sort of documentation... Forgot what. Point is that I want this
10021           in before I leave. The 'other-*' will be the last section and will
10022           explain issues specific to these type of elements.
10023
10024 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10025
10026         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10027         (gst_filesrc_get_read):
10028           set all the values on buffers that we can
10029
10030 2004-02-02  David Schleef  <ds@schleef.org>
10031
10032         Change usage of isblah() to g_ascii_isblah() to be more locale
10033         independent.  (#133076)
10034         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10035         * gst/gstutils.c:
10036         * gst/parse/parse.l:
10037
10038 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10039
10040         reviewed by: David Schleef  <ds@schleef.org>
10041
10042         Fix memory leaks:
10043         * gst/gstcaps.c: (gst_caps_to_string):
10044         * gst/registries/gstxmlregistry.c:
10045         (gst_xml_registry_add_path_list_func),
10046         (gst_xml_registry_parse_padtemplate):
10047
10048 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10049
10050         * gst/gstelement.c: (gst_element_default_error):
10051           suffix error messages with period
10052
10053 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10054
10055         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10056         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10057         * gst/gsterror.c: (gst_error_get_message):
10058           Suffix with dots
10059         * po/fr.po:
10060         * po/nl.po:
10061           Update translation files
10062
10063 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10064
10065         * gst/autoplug/gstspideridentity.c:
10066         (gst_spider_identity_sink_loop_type_finding):
10067         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10068         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10069         (gst_filesink_close_file), (gst_filesink_handle_event),
10070         (gst_filesink_chain):
10071         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10072         (gst_filesrc_get_read), (gst_filesrc_open_file):
10073         * gst/elements/gstidentity.c: (gst_identity_chain):
10074         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10075         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10076         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10077         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10078         * gst/gsterror.c: (_gst_core_errors_init),
10079         (_gst_library_errors_init), (_gst_resource_errors_init),
10080         (_gst_stream_errors_init), (gst_error_get_message):
10081         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10082         (gst_pad_recover_caps_error), (gst_pad_pull):
10083         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10084         * gst/schedulers/gstbasicscheduler.c:
10085         (gst_basic_scheduler_chainhandler_proxy),
10086         (gst_basic_scheduler_gethandler_proxy),
10087         (gst_basic_scheduler_cothreaded_chain):
10088           Suffix error messages with period.
10089           Use (NULL) instead of NULL
10090
10091 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10092
10093         * docs/gst/tmpl/gstelement.sgml:
10094         * docs/gst/tmpl/gstxml.sgml:
10095         * gst/gstelement.c: (gst_element_error_full):
10096           add element path to error
10097
10098 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10099
10100         * docs/random/mimetypes:
10101           update raw int/float info
10102         * gst/gsttag.c: (_gst_tag_initialize):
10103         * gst/gsttag.h:
10104           add GST_TAG_ENCODER
10105
10106 2004-01-30  David Schleef  <ds@schleef.org>
10107
10108         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10109           missing (#132991)
10110
10111 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10112
10113         reviewed by Benjamin Otte 
10114           parts of the patch submitted in bug #113913
10115
10116         * configure.ac:
10117           use AC_C_INLINE. Use = instead of == with test
10118         * examples/plugins/example.c:
10119         * gst/autoplug/gstspideridentity.c:
10120         * gst/elements/gstfdsrc.c:
10121         * gst/elements/gstfilesrc.c:
10122         * gst/elements/gstidentity.c:
10123         * gst/elements/gstmultidisksrc.c:
10124         * gst/elements/gststatistics.c:
10125         * gst/gstelement.c:
10126         * gst/gstobject.c:
10127         * gst/gstpad.c:
10128         * gst/gstpipeline.c:
10129         * gst/gstthread.c:
10130           don't end enums with a comma
10131         * gst/gstindex.c: (gst_index_compare_func):
10132           do explicit casting to gint
10133         * gst/gsttrace.c: (gst_trace_text_flush):
10134           #define strsize as a macro
10135
10136 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10137
10138         * docs/README:
10139         * docs/gst/gstreamer-docs.sgml:
10140         * docs/gst/gstreamer-sections.txt:
10141         * docs/gst/tmpl/gstelement.sgml:
10142         * docs/gst/tmpl/gsterror.sgml:
10143         * docs/gst/tmpl/gstinterface.sgml:
10144         * docs/gst/tmpl/gstreamer-unused.sgml:
10145         * docs/gst/tmpl/gststructure.sgml:
10146         * docs/gst/tmpl/gsttag.sgml:
10147         * docs/gst/tmpl/gsttaginterface.sgml:
10148         * docs/gst/tmpl/gstvalue.sgml:
10149         make sure all API ends up in the built docs
10150         * gst/gstinterface.c:
10151         * gst/gststructure.c: (gst_structure_id_set_value),
10152         (gst_structure_set_value), (gst_structure_id_get_value):
10153         * gst/gststructure.h:
10154         * gst/gstvalue.h:
10155         sync .h with .c declarations
10156
10157 2004-01-30  Julien Moutte  <julien@moutte.net>
10158
10159         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10160         Ronald will fix riffread.
10161
10162 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10163
10164         * docs/pwg/advanced-interfaces.xml:
10165           Added tuner interface docs.
10166
10167 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10168
10169         * docs/random/mimetypes:
10170           correct Theora information
10171         * gst/gstelement.h:
10172           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10173
10174 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10175
10176         * gst/gstelement.c: (gst_element_error_full):
10177         * gst/gstelement.h:
10178           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10179
10180 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10181
10182         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10183         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10184         again and even before DISCONT.
10185         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10186         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10187         bytestream so that it's not stopping to fill the bytestream if events
10188         different than EOS or DISCONT are received. Instead it process them so
10189         that they go downstream.
10190
10191 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10192
10193         * docs/gst/tmpl/gstelement.sgml:
10194         * docs/gst/tmpl/gstreamer-unused.sgml:
10195         * docs/gst/tmpl/gstxml.sgml:
10196         * gst/autoplug/gstspideridentity.c:
10197         (gst_spider_identity_sink_loop_type_finding):
10198         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10199         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10200         (gst_filesink_close_file), (gst_filesink_handle_event),
10201         (gst_filesink_chain):
10202         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10203         (gst_filesrc_get_read), (gst_filesrc_open_file):
10204         * gst/elements/gstidentity.c: (gst_identity_chain):
10205         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10206         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10207         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10208         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10209         * gst/gstelement.h:
10210         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10211         (gst_pad_recover_caps_error), (gst_pad_pull):
10212         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10213         * gst/schedulers/gstbasicscheduler.c:
10214         (gst_basic_scheduler_chainhandler_proxy),
10215         (gst_basic_scheduler_gethandler_proxy),
10216         (gst_basic_scheduler_cothreaded_chain):
10217           gst_element_error -> GST_ELEMENT_ERROR
10218
10219 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10220
10221         * docs/Makefile.am:
10222         * docs/gst/tmpl/gstelement.sgml:
10223         * docs/gst/tmpl/gstxml.sgml:
10224         * docs/manuals.mak:
10225         * docs/pwg/advanced-request.xml:
10226         * docs/pwg/advanced-scheduling.xml:
10227         * docs/pwg/advanced-tagging.xml:
10228           fix non-validating docbook using CDATA
10229           make sure make check-local gets run first to check if it validates
10230
10231 2004-01-29  Julien MOUTTE <julien@moutte.net>
10232
10233         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10234         handling (up and downstream).
10235         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10236         my_filter thing.
10237
10238 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10239
10240         * docs/pwg/advanced-tagging.xml:
10241           Add docs about tag writing.
10242
10243 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10244
10245         * docs/pwg/advanced-tagging.xml:
10246           Add a part about tag reading and application signalling... Tag
10247           writing still needs to be documented.
10248         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10249           We can set file locations in READY, too.
10250
10251 2004-01-29  Julien MOUTTE <julien@moutte.net>
10252
10253         * docs/random/ds/element-checklist: Adding some notes about src
10254         events.
10255
10256 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10257
10258         * docs/random/mimetypes:
10259           Update docs to point to correct elements for various mimetypes, and
10260           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10261           <stephane.loeuillet@tiscali.fr>.
10262
10263 2004-01-28  David Schleef  <ds@schleef.org>
10264
10265         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10266
10267 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10268
10269         * docs/random/mimetypes:
10270           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10271           undefined"
10272         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10273           make it only work in NULL.
10274         * gst/gstcaps.c:
10275           don't posion NULL caps
10276         * gst/gstelement.c: (gst_element_set_time):
10277           add debugging statement
10278         * gst/gstelement.c: (gst_element_emit_found_tag),
10279         (gst_element_found_tag_func), (gst_element_found_tags):
10280         * gst/gstelement.h:
10281           These functions take const taglists
10282         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10283           fix memleak
10284         * gst/gstpad.c: (gst_pad_event_default):
10285           make more effort on handling discont and clocks, g_warn if everything
10286           fails
10287         * gst/gststructure.c: (gst_structure_remove_fields),
10288         (gst_structure_remove_fields_valist):
10289         * gst/gststructure.h:
10290           add gst_structure_remove_fields(_valist)
10291         * gst/gsttag.c:
10292           fix doc glitch
10293
10294 2004-01-28  David Schleef  <ds@schleef.org>
10295
10296         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10297         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10298         Fix memory leakage of gst_caps_to_string().
10299
10300         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10301         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10302         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10303         (gst_spider_identity_sink_loop_type_finding):
10304         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10305         (find_suggest):
10306         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10307         (gst_pad_set_explicit_caps):
10308         * gst/parse/grammar.y:
10309
10310 2004-01-28  David Schleef  <ds@schleef.org>
10311
10312         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10313         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10314         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10315         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10316         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10317         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10318         (gst_debug_log_default), (_gst_info_printf_extension),
10319         (_gst_info_printf_extension_arginfo):  Add printf extension.
10320         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10321         * gst/gststructure.c: (gst_structure_to_string),
10322         (_gst_structure_parse_value): Use gst_value_deserialize() and
10323         remove old code.
10324         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10325         (gst_value_deserialize_boolean), (gst_strtoi),
10326         (gst_value_deserialize_int), (gst_value_deserialize_double),
10327         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10328         a bunch of deserialize functions and gst_value_deserialize.
10329         * gst/gstvalue.h: er, _de_serialize, not unserialize
10330         * testsuite/caps/string-conversions.c: (main): We don't currently
10331         handle (float) in caps, so convert these to (double).
10332         * testsuite/debug/Makefile.am: Add new test for the printf extension
10333         * testsuite/debug/printf_extension.c: (main): same
10334
10335 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10336
10337         * docs/random/company/time:
10338           Add some docs about clocking and time
10339
10340 2004-01-28  Julien MOUTTE <julien@moutte.net>
10341
10342         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10343
10344 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10345
10346         * docs/pwg/advanced-clock.xml:
10347         * docs/pwg/advanced-dparams.xml:
10348         * docs/pwg/advanced-events.xml:
10349         * docs/pwg/advanced-interfaces.xml:
10350         * docs/pwg/advanced-midi.xml:
10351         * docs/pwg/advanced-request.xml:
10352         * docs/pwg/advanced-scheduling.xml:
10353         * docs/pwg/advanced-tagging.xml:
10354         * docs/pwg/advanced-types.xml:
10355         * docs/pwg/appendix-checklist.xml:
10356         * docs/pwg/building-boiler.xml:
10357         * docs/pwg/building-chainfn.xml:
10358         * docs/pwg/building-filterfactory.xml:
10359         * docs/pwg/building-pads.xml:
10360         * docs/pwg/building-props.xml:
10361         * docs/pwg/building-signals.xml:
10362         * docs/pwg/building-state.xml:
10363         * docs/pwg/building-testapp.xml:
10364         * docs/pwg/intro-basics.xml:
10365         * docs/pwg/intro-preface.xml:
10366         * docs/pwg/other-autoplugger.xml:
10367         * docs/pwg/other-sink.xml:
10368         * docs/pwg/other-source.xml:
10369         * docs/pwg/titlepage.xml:
10370           fix up id's
10371
10372 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10373
10374         * docs/95NonPath:
10375         * docs/HACKING:
10376         * docs/README:
10377         * docs/building-the-docs-on-debian:
10378           collect relevant bits of doc info
10379
10380 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10381
10382         * docs/pwg/advanced_tagging.xml:
10383           Half-assed commit so Thomas can re-arrange document IDs here to be
10384           consistent, too.
10385
10386 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10387
10388         * docs/manual/autoplugging.xml:
10389         * docs/manual/bins-api.xml:
10390         * docs/manual/bins.xml:
10391         * docs/manual/buffers-api.xml:
10392         * docs/manual/buffers.xml:
10393         * docs/manual/clocks.xml:
10394         * docs/manual/components.xml:
10395         * docs/manual/cothreads.xml:
10396         * docs/manual/debugging.xml:
10397         * docs/manual/dparams-app.xml:
10398         * docs/manual/dynamic.xml:
10399         * docs/manual/elements-api.xml:
10400         * docs/manual/elements.xml:
10401         * docs/manual/factories.xml:
10402         * docs/manual/gnome.xml:
10403         * docs/manual/goals.xml:
10404         * docs/manual/helloworld.xml:
10405         * docs/manual/helloworld2.xml:
10406         * docs/manual/init-api.xml:
10407         * docs/manual/intro.xml:
10408         * docs/manual/links-api.xml:
10409         * docs/manual/links.xml:
10410         * docs/manual/manual.xml:
10411         * docs/manual/motivation.xml:
10412         * docs/manual/pads-api.xml:
10413         * docs/manual/pads.xml:
10414         * docs/manual/plugins-api.xml:
10415         * docs/manual/plugins.xml:
10416         * docs/manual/programs.xml:
10417         * docs/manual/queues.xml:
10418         * docs/manual/quotes.xml:
10419         * docs/manual/schedulers.xml:
10420         * docs/manual/states-api.xml:
10421         * docs/manual/states.xml:
10422         * docs/manual/threads.xml:
10423         * docs/manual/typedetection.xml:
10424         * docs/manual/xml.xml:
10425           use chapter, part, section or misc as id starts for all bits
10426
10427 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10428
10429         * docs/gst/gstreamer-sections.txt:
10430           Fix up TITLE of the sections
10431
10432 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10433
10434         * docs/pwg/advanced_interfaces.xml:
10435           Add documentation on propertyprobing.
10436         * docs/pwg/advanced_events.xml:
10437         * docs/pwg/advanced_tagging.xml:
10438         * docs/pwg/building_boiler.xml:
10439         * docs/pwg/building_filterfactory.xml:
10440         * docs/pwg/pwg.xml:
10441           Move filterfactory and tagging into their own chapter, add a chapter
10442           on events. all these are empty placeholders that will be filled in
10443           some day.
10444
10445 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10446
10447         * docs/pwg/advanced_interfaces.xml:
10448           Docs for mixer interface. Also a check for website uploading.
10449
10450 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10451
10452         * docs/HACKING:
10453         * docs/Makefile.am:
10454         * docs/faq/Makefile.am:
10455         * docs/gst/Makefile.am:
10456         * docs/gst/tmpl/gstelement.sgml:
10457         * docs/gst/tmpl/gstplugin.sgml:
10458         * docs/gst/tmpl/gstreamer-unused.sgml:
10459         * docs/libs/Makefile.am:
10460         * docs/manual/Makefile.am:
10461         * docs/manuals.mak:
10462         * docs/pwg/Makefile.am:
10463         * docs/upload.mak:
10464           Separate out upload target and make it similar for
10465           both docbook and gtk-doc docs
10466
10467 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10468
10469         * docs/manuals.mak:
10470           Fix upload target to work with freedesktop
10471
10472 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10473
10474         * docs/pwg/advanced_types.xml:
10475           Add notes on creating your own types.
10476         * docs/pwg/building_boiler.xml:
10477         * docs/pwg/building_pads.xml:
10478         * docs/pwg/building_state.xml:
10479           Add some stuff about how to retrieve values from structures, how
10480           that relates to types and change layout slightly again to be almost
10481           perfect.
10482
10483 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10484
10485         * docs/pwg/advanced_dparams.xml:
10486         * docs/pwg/advanced_scheduling.xml:
10487           Change index layout slightly.
10488
10489 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10490
10491         * docs/pwg/advanced_clock.xml:
10492         * docs/pwg/advanced_interfaces.xml:
10493         * docs/pwg/advanced_midi.xml:
10494           General placeholders for now.
10495         * docs/pwg/advanced_request.xml:
10496           Explanation about sometimes and request pads.
10497         * docs/pwg/advanced_scheduling.xml:
10498           Concept of bytestream, loopfunctions and schedulers.
10499         * docs/pwg/building_boiler.xml:
10500           Add something about plugin-init.
10501
10502 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10503
10504         * docs/pwg/building_pads.xml:
10505           Fix broken docbook
10506
10507 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10508
10509         * docs/pwg/advanced_interfaces.xml:
10510         * docs/pwg/pwg.xml:
10511           Add as a placeholder for future filling-in.
10512         * docs/pwg/basics_autoplugging.xml:
10513         * docs/pwg/basics_buffers.xml:
10514         * docs/pwg/basics_elements.xml:
10515         * docs/pwg/basics_events.xml:
10516         * docs/pwg/basics_plugins.xml:
10517         * docs/pwg/basics_types.xml:
10518           Remove, because unused (this is all in intro_basics.xml).
10519         * docs/pwg/building_signals.xml:
10520           Short intro to signals + reference to GObject docs - we really
10521           shouldn't go into these sort of things to deply because we don't
10522           use them that extensively anyway.
10523         * docs/pwg/building_state.xml:
10524           Explanation of states. Benjamin, please check.
10525         * docs/pwg/building_testapp.xml:
10526           Put everything in one page - putting only a few lines of content
10527           per page doesn't really make sense.
10528
10529           Time to get into the advanced topics. ;).
10530
10531 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10532
10533         * docs/pwg/advanced_types.xml:
10534           Finish documenting the current state of mimetypes.
10535         * docs/pwg/building_boiler.xml:
10536         * docs/pwg/building_chainfn.xml:
10537         * docs/pwg/building_pads.xml:
10538         * docs/pwg/building_props.xml:
10539         * docs/pwg/building_testapp.xml:
10540           Start documenting the "how to build a simple audio filter" part
10541           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10542           states and (maybe?) a short introduction to capsnego in the chapter
10543           on pads (building_pads.xml). Capsnego should probably be explained
10544           fully in advanced_capsnego.xml or so.
10545
10546 2004-01-26  David Schleef  <ds@schleef.org>
10547
10548         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10549         * gst/gstpad.h: Add new function to allow element to (somewhat)
10550         specify non-fixed caps on a pad.
10551         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10552         that I added a few weeks ago.
10553
10554 2004-01-26  David Schleef  <ds@schleef.org>
10555
10556         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10557           making try_set_caps() work with non-fixed caps.
10558
10559 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10560
10561         * docs/pwg/advanced_types.xml:
10562         * docs/pwg/intro_basics.xml:
10563         * docs/pwg/intro_preface.xml:
10564         * docs/pwg/pwg.xml:
10565         * docs/pwg/titlepage.xml:
10566           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10567           in here (docs/random/mimetypes), and will from there on work on both
10568           updating outdated parts and adding missing parts.
10569           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10570
10571 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10572
10573         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10574           policy is set
10575
10576 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10577
10578         * gst/gstelement.h:
10579           remove gst_element_factory_get_version. It doesn't exist anymore.
10580         * gst/gstplugin.c:
10581         * gst/gstplugin.h:
10582           remove gst_plugin_set_name and change gst_plugin_get_longname to
10583           gst_plugin_get_description to match code.
10584         * gst/gsterror.h:
10585           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10586         * gst/gstpad.c: (gst_pad_try_set_caps):
10587           make it work with nonfixed caps.
10588           Note that even in the nonfixed case the link function of the pad
10589           that tries to set caps isn't called.
10590
10591 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10592
10593         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10594           fix bug where buffer was not assembled correctly
10595         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10596           silence by default
10597         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10598           only seek if there's no more buffers that could work without seeking
10599
10600 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10601
10602         * gst/gsttag.c: (_gst_tag_initialize):
10603         * gst/gsttag.h:
10604           Add application tag (for encoding/muxing app).
10605
10606 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10607
10608         * autogen.sh:
10609           make autopoint force, and libtoolize not copy
10610         * common/m4/as-docbook.m4:
10611           added docbook xml catalog setup check
10612         * common/m4/gst-doc.m4:
10613           use docbook check
10614
10615 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10616
10617         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10618         * gst/gsttag.h:
10619           add GstTagFlag
10620
10621 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10622
10623         * docs/gst/gstreamer-sections.txt:
10624         * docs/gst/tmpl/gst.sgml:
10625         * docs/gst/tmpl/gstbuffer.sgml:
10626         * docs/gst/tmpl/gstclock.sgml:
10627         * docs/gst/tmpl/gstelement.sgml:
10628         * docs/gst/tmpl/gstreamer-unused.sgml:
10629         * docs/gst/tmpl/gstxml.sgml:
10630           sync latest API changes to docs
10631
10632 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10633
10634         * gst/gstpluginfeature.c:
10635           fix doc snippet
10636         * tools/gst-inspect.c: (print_element_list):
10637           fix output of typefind
10638           add GPL header
10639         * tools/gst-launch.c:
10640           add GPL header
10641
10642 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10643
10644         * gst/elements/Makefile.am:
10645         * gst/elements/gstelements.c:
10646         * gst/elements/gsttypefindelement.c:
10647         * gst/elements/gsttypefindelement.h:
10648         * po/POTFILES.in:
10649         * po/fr.po:
10650         * po/nl.po:
10651           renamed gsttypefindelement to gsttypefind, conserving CVS history
10652
10653 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10654
10655         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10656         * gst/gsttag.h:
10657           add some tags used in ogg as well
10658           fix _ in replaygain tags
10659
10660 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10661
10662         * gst/gsterror.h:
10663           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10664
10665 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10666
10667         * gst/gstelement.c: (gst_element_error_full):
10668         * gst/gstelement.h:
10669           change _extended to _full
10670
10671 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10672
10673         reviewed by: <delete if not using a buddy>
10674
10675         * docs/gst/tmpl/gst.sgml:
10676         * docs/gst/tmpl/gstbuffer.sgml:
10677         * docs/gst/tmpl/gstclock.sgml:
10678         * docs/gst/tmpl/gstelement.sgml:
10679         * docs/gst/tmpl/gstreamer-unused.sgml:
10680         * docs/gst/tmpl/gstxml.sgml:
10681         * gst/gstelement.c: (gst_element_error_full):
10682         * gst/gstelement.h:
10683
10684 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10685
10686         * gst/gstelement.h: fix _gst_element_error_printf prototype
10687
10688 2004-01-20  David Schleef  <ds@schleef.org>
10689
10690         * gst/gststructure.c: (gst_structure_to_string):
10691         Convert function to use gst_value_serialize().
10692         * gst/gstvalue.c: (gst_value_serialize_list),
10693         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10694         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10695         (gst_value_serialize_int), (gst_value_serialize_double),
10696         (gst_string_wrap), (gst_value_serialize_string),
10697         (gst_value_serialize), (gst_value_deserialize):
10698         * gst/gstvalue.h:
10699         Add implementations for serialize.
10700
10701 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10702
10703         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10704         we want to keep that one in the future or change xvidenc.c to use 
10705         another error.
10706
10707 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10708
10709         * gst/gstelement.c: (_gst_element_error_printf):
10710         * gst/gstelement.h:
10711           privatise function
10712
10713 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10714
10715         * docs/random/error:
10716           doc explaining error system
10717         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10718           cleanup
10719
10720 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10721
10722         * gst/gst-i18n-app.h:
10723         * gst/gst-i18n-lib.h:
10724           remove inclusion of config.h
10725         * po/POTFILES.in:
10726         * po/nl.po:
10727           add gst/gstelement.c
10728
10729 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10730
10731         * po/nl.po: updated Dutch translation
10732
10733 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10734
10735         * gst/gsterror.c: (_gst_core_errors_init),
10736         (_gst_library_errors_init), (_gst_resource_errors_init),
10737         (_gst_stream_errors_init):
10738         remove ending punctuation dots
10739
10740 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10741
10742         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10743         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
10744         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10745         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10746         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10747         use GST_ERROR_SYSTEM
10748
10749 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10750
10751         * gst/gstelement.c: (gst_element_error_printf),
10752         (gst_element_error_extended):
10753         * gst/gstelement.h:
10754           add a helper printf function so we can have NULL values passed.
10755
10756 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10757
10758         * gst/gstelement.h:
10759           add G_STMT macros to gst_element_error, which isn't strictly
10760           necessary but people tell me to anyway.
10761
10762 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10763
10764         * gst/Makefile.am:
10765         * gst/autoplug/gstspideridentity.c:
10766         (gst_spider_identity_sink_loop_type_finding):
10767         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10768         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10769         (gst_filesink_close_file), (gst_filesink_handle_event),
10770         (gst_filesink_chain):
10771         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
10772         (gst_filesrc_map_region), (gst_filesrc_get_read),
10773         (gst_filesrc_open_file):
10774         * gst/elements/gstidentity.c: (gst_identity_chain):
10775         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10776         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10777         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10778         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
10779         * gst/gst.h:
10780         * gst/gst_private.h:
10781         * gst/gstelement.c: (gst_element_class_init),
10782         (gst_element_default_error), (gst_element_error_func),
10783         (gst_element_error_extended):
10784         * gst/gstelement.h:
10785         * gst/gsterror.c: (_gst_core_errors_init),
10786         (_gst_library_errors_init), (_gst_resource_errors_init),
10787         (_gst_stream_errors_init), (gst_error_get_message):
10788         * gst/gsterror.h:
10789         * gst/gstinfo.c: (_gst_debug_init):
10790         * gst/gstmarshal.list:
10791         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10792         (gst_pad_recover_caps_error), (gst_pad_pull):
10793         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10794         * gst/schedulers/gstbasicscheduler.c:
10795         (gst_basic_scheduler_chainhandler_proxy),
10796         (gst_basic_scheduler_gethandler_proxy),
10797         (gst_basic_scheduler_cothreaded_chain):
10798         * po/POTFILES.in:
10799         * po/fr.po:
10800         * po/nl.po:
10801           change error signal
10802           add error categories
10803
10804 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
10805
10806         * gst/gsttag.c: (_gst_tag_initialize):
10807         * gst/gsttag.h:
10808         Add replaygain tag
10809
10810 2004-01-18  Colin Walters  <walters@verbum.org>
10811
10812         * examples/retag/retag.c: Call gst_init before processing
10813         program args.  Add g_assert to _link_many call.
10814
10815 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10816
10817         * gst/gstpad.c: (gst_pad_alloc_buffer):
10818           Return a newly allocated buffer when the pad has no peer.
10819
10820 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10821
10822         * gst/gstclock.c: (gst_clock_get_time):
10823           make it compile with gcc 2.95 again.
10824           Patch by Scott Wheeler
10825
10826 2004-01-15  David Schleef  <ds@schleef.org>
10827
10828         * gst/gstcaps.h:
10829         Added gst_caps_is_simple() macro.
10830         * testsuite/caps/caps.c: (test1):
10831         * testsuite/caps/intersect2.c: (main):
10832         * testsuite/caps/intersection.c: (main):
10833         Fixes to make 'make check' work again after removing
10834         gst_caps_is_chained().
10835
10836 2004-01-15  Leif Johnson <leif@ambient.2y.net>
10837
10838         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
10839         and additions to the MIDI document.
10840
10841 2004-01-15  David Schleef  <ds@schleef.org>
10842
10843         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
10844         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
10845         of GST_RPAD_, since we don't know if it's a real or ghost pad.
10846
10847 2004-01-15  David Schleef  <ds@schleef.org>
10848
10849         * gst/gstqueue.c:
10850         * gst/gstqueue.h:
10851         Fix the spelling of "treshold" and make min_threshold actually
10852         affect the queue.
10853
10854 2004-01-15  David Schleef  <ds@schleef.org>
10855
10856         * gst/gstcaps.c:
10857         Add lots of documentation.
10858         * gst/gstcaps.h:
10859         Deprecate a few functions.
10860         * gst/gstpad.c:
10861         Removed use of deprecated functions.
10862
10863 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10864
10865         * gst/gstpad.c: (gst_pad_is_linked):
10866         * gst/gstpad.h:
10867           implement gst_pad_is_linked
10868         * gst/gstelement.h:
10869           reserve space for initiate_state_change
10870
10871 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10872
10873         * gst/autoplug/gstspideridentity.c:
10874         (gst_spider_identity_sink_loop_type_finding):
10875           break infinite loop by just returning instead of looping
10876         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
10877           set event time difference correctly. Set it to 1 second instead
10878           of 100ms to be more tolerant
10879         * gst/gstelement.c: (gst_element_set_time):
10880           add debugging output
10881
10882 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10883
10884         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
10885           query if buffers are inside the pool, ignore events
10886
10887 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10888
10889         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
10890         (gst_clock_set_speed), (gst_clock_set_active),
10891         (gst_clock_is_active), (gst_clock_reset),
10892         (gst_clock_handle_discont):
10893         * gst/gstclock.h:
10894           deprecate old interface and disable functions that aren't in use
10895           anymore.
10896         * gst/gstelement.h:
10897         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
10898         (gst_element_set_time), (gst_element_adjust_time):
10899           add concept of "element time" and functions to get/set this time.
10900         * gst/gstelement.c: (gst_element_change_state):
10901           update element time correctly.
10902         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10903           This is a debug message, not a g_critical.
10904         * gst/gstpad.c: (gst_pad_event_default):
10905           handle discontinuous events right with element time.
10906         * gst/gstscheduler.c: (gst_scheduler_state_transition):
10907           update to clocking fixes.
10908           set clocks on elements in READY=>PAUSED. The old behaviour caused
10909           a wrong element time on the first element that started playing.
10910         * gst/schedulers/gstbasicscheduler.c:
10911         (gst_basic_scheduler_class_init):
10912         * gst/schedulers/gstoptimalscheduler.c:
10913         (gst_opt_scheduler_class_init):
10914           remove code that just implements the default behaviour.
10915         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
10916           update to use new clocking functions
10917         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
10918         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
10919           update to test new element time.
10920         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
10921           use _get_allowed_caps instead of _get_caps. This catches filtered
10922           caps correctly.
10923         * testsuite/debug/commandline.c:
10924           update for new GST_DEBUG syntax.
10925         * testsuite/threads/Makefile.am:
10926           disable a test that only works sometimes.
10927
10928 2004-01-13  Julien MOUTTE <julien@moutte.net>
10929
10930         * po/LINGUAS: Adding fr.
10931         * po/fr.po: Adding french translation.
10932
10933 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10934
10935         * gst/parse/grammar.y:
10936         * po/POTFILES.in:
10937         * po/nl.po:
10938         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
10939           translate parsing error messages
10940
10941 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10942
10943         * po/POTFILES.in: adding gst-launch
10944         * po/nl.po: updated translation, all 99 strings translated
10945         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
10946         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
10947           fix strings for translation
10948
10949 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10950
10951         * gst/gst.c:
10952           - capitalize beginnings of popt options
10953           - fix strings for translation
10954           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
10955
10956 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10957
10958         * po/README: add some notes on how to update translations
10959
10960 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10961
10962         * ABOUT-NLS: removed, is autogenerated from autopoint
10963         * autogen.sh: add autopoint stuff
10964         * configure.ac: fix up gettext stuff
10965         * gst/Makefile.am: add i18n headers to noinst_HEADERS
10966         * gst/elements/gsttypefindelement.c: add header include
10967         * gst/gettext.h: add header, copy from system-installed header
10968         * gst/gst-i18n-app.h: to be included by each app having translations
10969         * gst/gst-i18n-lib.h: to be included by each lib having translations
10970         * gst/gst.c: (init_pre): fix up gettext calls
10971         * gst/gst_private.h: remove i18n stuff, moving to separate headers
10972         * po/LINGUAS: the new way to specify translations present
10973         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
10974         * po/Makevars: the variables filled in for GStreamer
10975         * po/POTFILES.in: added new files with translations
10976         * po/de.po: has new strings
10977         * po/nl.po: readded, has new strings
10978
10979 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10980
10981         * gst/gsttag.c: fix some strings marked for translation
10982
10983 2004-01-13  Iain <iain@prettypeople.org>
10984
10985         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
10986         group when we add an element to it, cos we unref it when we remove one
10987
10988 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10989
10990         * testsuite/debug/commandline.c: (debug_not_reached):
10991         * testsuite/debug/output.c: (check_message):
10992           fix testsuite
10993
10994 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10995
10996         * examples/cutter/.cvsignore:
10997         * examples/helloworld/.cvsignore:
10998         * examples/launch/.cvsignore:
10999         * examples/manual/.cvsignore:
11000         * examples/mixer/.cvsignore:
11001         * examples/pingpong/.cvsignore:
11002         * examples/plugins/.cvsignore:
11003         * examples/queue/.cvsignore:
11004         * examples/queue2/.cvsignore:
11005         * examples/queue3/.cvsignore:
11006         * examples/queue4/.cvsignore:
11007         * examples/retag/.cvsignore:
11008         * examples/thread/.cvsignore:
11009         * examples/typefind/.cvsignore:
11010         * examples/xml/.cvsignore:
11011         * gst/.cvsignore:
11012         * gst/autoplug/.cvsignore:
11013         * gst/elements/.cvsignore:
11014         * gst/indexers/.cvsignore:
11015         * gst/parse/.cvsignore:
11016         * gst/registries/.cvsignore:
11017         * gst/schedulers/.cvsignore:
11018         * libs/gst/bytestream/.cvsignore:
11019         * libs/gst/control/.cvsignore:
11020         * libs/gst/getbits/.cvsignore:
11021         * tests/.cvsignore:
11022         * tests/bufspeed/.cvsignore:
11023         * tests/instantiate/.cvsignore:
11024         * tests/memchunk/.cvsignore:
11025         * tests/muxing/.cvsignore:
11026         * tests/sched/.cvsignore:
11027         * tests/seeking/.cvsignore:
11028         * tests/threadstate/.cvsignore:
11029         * testsuite/.cvsignore:
11030         * testsuite/caps/.cvsignore:
11031         * testsuite/cleanup/.cvsignore:
11032         * testsuite/dynparams/.cvsignore:
11033         * testsuite/plugin/.cvsignore:
11034         * tools/.cvsignore:
11035           update - this is huge, because it includes *.bb, *.bbg and *.da files
11036           which are generated for gcov.
11037
11038 2004-01-11  David Schleef  <ds@schleef.org>
11039
11040         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11041         a function to parse integers in ways that strto[u]l() does not.
11042
11043 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11044
11045         * tools/gst-inspect.c: (print_caps):
11046           improve output of caps a bit
11047
11048 2004-01-11  David Schleef  <ds@schleef.org>
11049
11050         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11051         inherit correct flags (READONLY and DONTKEEP).
11052
11053 2004-01-11  David Schleef  <ds@schleef.org>
11054
11055         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11056         (gst_filesrc_map_region):
11057         * gst/gstbuffer.c: (_gst_buffer_initialize),
11058         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11059         (gst_buffer_new), (gst_buffer_create_sub),
11060         (gst_buffer_is_span_fast), (gst_buffer_span):
11061         * gst/gstbuffer.h:
11062         Change GstBuffer private structure element names. (all files)
11063         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11064         (gst_queue_link):
11065         * gst/gstqueue.h:
11066         Implement getcaps/pad_link functions that handle the case where
11067         there are data in the queue.
11068
11069 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11070
11071         * gst/elements/gstbufferstore.c:
11072           initialize debugging structure correctly
11073         * gst/elements/gsttee.c: (gst_tee_set_property):
11074           g_object_notify when property was changed
11075         * gst/elements/gsttypefindelement.c:
11076         (gst_type_find_element_change_state):
11077           clear caps correctly
11078
11079 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11080
11081         * gst/gstqueue.c: (gst_queue_init):
11082           Use better defaults for when a queue should block. This
11083           gets rid of jerky playback for quite a few files.
11084           It takes more memory.
11085
11086 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11087
11088         (gst_xml_registry_parse_padtemplate):
11089           make critical message slightly more useful
11090
11091 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11092
11093         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11094         (gst_debug_message_get), (gst_debug_log_default):
11095         * gst/gstinfo.h:
11096           Change gst_debug_log(_valist) to take a const format string.
11097           Change prototype of log function and functions using those to 
11098           take a GstDebugMessage instead of a string that requires using
11099           gst_debug_message_get.
11100
11101 2004-01-08  David Schleef  <ds@schleef.org>
11102
11103         * Makefile.am:
11104         * configure.ac:
11105         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11106         and -ftest-coverage, which allows gcov to show information about
11107         testsuite coverage.
11108
11109 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11110
11111         * gst/gstutils.h:
11112           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11113           GST_PARENT_CALL_WITH_DEFAULT
11114         * gst/elements/gstaggregator.c: 
11115         * gst/elements/gstbufferstore.c: 
11116         * gst/elements/gstfakesink.c: 
11117         * gst/elements/gstfakesrc.c: 
11118         * gst/elements/gstfdsink.c: 
11119         * gst/elements/gstfdsrc.c: 
11120         * gst/elements/gstfilesink.c: 
11121         * gst/elements/gstfilesrc.c: 
11122         * gst/elements/gstidentity.c: 
11123         * gst/elements/gstmd5sink.c: 
11124         * gst/elements/gstmultidisksrc.c:
11125         * gst/elements/gstpipefilter.c: 
11126         * gst/elements/gstshaper.c:
11127         * gst/elements/gststatistics.c:
11128         * gst/elements/gsttee.c:
11129         * gst/elements/gsttypefindelement.c:
11130           use them.
11131
11132 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11133
11134         * docs/gst/gstreamer-docs.sgml: remove props
11135         * docs/gst/gstreamer-sections.txt: remove props
11136         * docs/gst/tmpl/gst.sgml:
11137         * docs/gst/tmpl/gstbin.sgml:
11138         * docs/gst/tmpl/gstbuffer.sgml:
11139         * docs/gst/tmpl/gstcaps.sgml:
11140         * docs/gst/tmpl/gstclock.sgml:
11141         * docs/gst/tmpl/gstelement.sgml:
11142         * docs/gst/tmpl/gstindex.sgml:
11143         * docs/gst/tmpl/gstobject.sgml:
11144         * docs/gst/tmpl/gstpad.sgml:
11145         * docs/gst/tmpl/gstpadtemplate.sgml:
11146         * docs/gst/tmpl/gstreamer-unused.sgml:
11147         * docs/gst/tmpl/gstthread.sgml:
11148         * docs/gst/tmpl/gstxml.sgml:
11149           sync with code reorganization
11150
11151 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11152
11153         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11154         Make the 'Could not find compatible pad' message more informative.
11155
11156 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11157                                                                                 
11158         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11159           Fix for if we pass NULL as property to location.
11160         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11161         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11162           Fix for instantiate-test (see below).
11163         * gst/gststructure.c: (_gst_structure_parse_value):
11164           Fix compile error on gcc-2.96.
11165         * configure.ac:
11166         * tests/Makefile.am:
11167         * tests/instantiate/Makefile.am:
11168         * tests/instantiate/create.c: (create_all_elements), (main):
11169           Add a test that instantiates all elements. This makes it easy to
11170           track dead code for old API/design (like setting event functions
11171           on sink pads and so on).
11172
11173 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11174
11175         * gst/gstcaps.c: (gst_caps_append_structure):
11176           Move the poisoning to allow a NULL structure
11177         * gst/gstevent.c: (_gst_event_free):
11178           When freeing a navigation event, free the structure
11179           also
11180
11181 2004-01-04  David Schleef  <ds@schleef.org>
11182
11183         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11184         Remove usage of gst_pad_proxy_fixate.
11185         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11186         (gst_caps_split_one), (gst_caps_replace):
11187         Add poisoning code.
11188         * gst/gstmarshal.list:
11189         Add pointer__pointer for fixate signal
11190         * gst/gstpad.c: (gst_real_pad_class_init),
11191         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11192         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11193         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11194         Add poisoning code. Add fixate signal on RealPad. Change
11195         set_explicit_caps() to take const GstCaps, like try_set_caps().
11196         * gst/gstpad.h:
11197         * testsuite/caps/Makefile.am:
11198         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11199
11200 2004-01-03  David Schleef  <ds@schleef.org>
11201
11202         * gst/elements/gsttypefindelement.c:
11203         (gst_type_find_element_have_type), (gst_type_find_element_init):
11204         Use gst_pad_use_explicit_caps for src pad.
11205         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11206         before using it.
11207
11208 2004-01-03  David Schleef  <ds@schleef.org>
11209
11210         * gst/gstelement.c: (gst_element_link_pads_filtered),
11211         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11212         that linking was successful.
11213         * gst/gstpad.c: (gst_pad_link_free),
11214         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11215         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11216         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11217         GstPadLinkReturn correctly between functions, and don't fail
11218         when DELAYED is used (DELAYED is very important).  Better
11219         cleanup on unlinking and unnegotiation.  Should fix some spider
11220         bugs.
11221
11222 2004-01-02  David Schleef  <ds@schleef.org>
11223
11224         * gst/gstelement.c: (gst_element_class_init),
11225         (gst_element_base_class_init): ->padtemplates should be cleared
11226         in base_init, since we need to have a fresh list for every
11227         class.  (Alternately, we chould copy the list and share the
11228         actual pad templates (not the list), but that would require
11229         changing every plugin to move pad template registration from
11230         base_init to class_init.)
11231
11232 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11233
11234         * gst/gstelement.c: (gst_element_class_add_pad_template):
11235           Refuse registering a pad template if another pad template
11236           with the same name already exists (#114715).
11237
11238 2004-01-02  David Schleef  <ds@schleef.org>
11239
11240         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11241         (gst_caps_is_equal_fixed): Add new function.
11242         * gst/gstcaps.h: ditto.
11243         * gst/gstpad.c: (gst_real_pad_class_init),
11244         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11245         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11246         check new caps against existing caps -- if they're the same, return
11247         OK without renegotiating.  caps-nego-failed signal fixed so that
11248         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11249         to save an extra caps copy.  Don't complete negotiation if a pad
11250         link function returns DELAYED.
11251
11252 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11253
11254         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11255           Fix wrong g_return_if_fail
11256
11257 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11258
11259         * gst/gstbin.c: (gst_bin_class_init):
11260         Change the marshalling of element_added/element_removed
11261         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11262         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11263
11264 2004-01-01  David Schleef  <ds@schleef.org>
11265
11266         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11267         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11268         (gst_pad_use_explicit_caps):
11269         * gst/gstpad.h:
11270         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11271         to use an internal getcaps and link fuction so that negotiation
11272         always results in the explicitly set caps.
11273         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11274         are particularly useful for decoders.
11275
11276 2003-12-31  David Schleef  <ds@schleef.org>
11277
11278         * gst/elements/gstidentity.c: (gst_identity_class_init),
11279         (gst_identity_init), (gst_identity_chain),
11280         (gst_identity_set_property), (gst_identity_get_property):
11281         * gst/elements/gstidentity.h:
11282         * gst/gstqueue.c: (gst_queue_init):
11283           Negotiation fixes.
11284
11285 2003-12-31  David Schleef  <ds@schleef.org>
11286
11287         * gst/gstcaps.c: (gst_caps_intersect),
11288         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11289           Implement gst_caps_normalize().
11290         * testsuite/caps/normalisation.c: (main):
11291           Add an additional test
11292
11293 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11294
11295         * gst/gstqueue.c: (gst_queue_init):
11296           use gst_pad_proxy_getcaps()
11297
11298 2003-12-31  David Schleef  <ds@schleef.org>
11299
11300         * gst/elements/gstshaper.c: (gst_shaper_link):
11301         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11302         * gst/gstqueue.c: (gst_queue_link):
11303           Negotiation fixes.
11304
11305 2003-12-31  David Schleef  <ds@schleef.org>
11306
11307         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11308         * gst/gstpad.h: Add functions that are useful as default pad
11309         link and fixate functions for elements.
11310
11311 2003-12-30  David Schleef  <ds@schleef.org>
11312
11313         * gst/gstpad.c: (gst_pad_link_try):
11314           Fix segfault when attempting to return to old caps
11315
11316 2003-12-29  David Schleef  <ds@schleef.org>
11317
11318         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11319         (gst_caps_structure_simplify), (gst_caps_simplify):
11320         * gst/gstcaps.h:
11321           Add simplify function
11322         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11323         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11324         * gst/gstpad.h:
11325           Copy over srcnotify, sinknotify when calling old pad_link
11326           functions.  Add new is_negotiated() function.
11327         * gst/gststructure.c: (gst_structure_copy):
11328           Fix an incredibly stupid bug that should have been noticed
11329           weeks ago.  _copy() returned the argument, not the new copy.
11330
11331 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11332
11333         * gst/gstcaps.c: (gst_caps_append):
11334           add sanity checks
11335         * gst/gstcaps.h: (gst_caps_debug):
11336           remove, it doesn't exist anymore.
11337         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11338         (gst_element_threadsafe_properties_post_run):
11339           make debugging messages not clutter up THREAD debug category
11340         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11341         (gst_element_change_state):
11342           update to new caps API
11343         * gst/gstinterface.c: (gst_implements_interface_cast):
11344           don't put vital code in g_return_if_fail
11345         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11346         (gst_pad_link_filtered):
11347           add pst_pad_try_link and use it.
11348         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11349           implement correctly, deprecate first one.
11350         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11351           add and implement.
11352         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11353           implement.
11354         (gst_pad_get_negotiated_caps):
11355           add and implement. Make GST_PAD_CAPS call this function.
11356         (gst_pad_get_caps):
11357           remove unneeded check..
11358         (gst_pad_recover_caps_error):
11359           disable, always return FALSE.
11360         (gst_real_pad_dispose):
11361           don't free caps and appfilter anymore, they're unused.
11362         * gst/gstpad.h:
11363           Reflect changes mentioned above.
11364         * gst/gstsystemclock.c: (gst_system_clock_wait):
11365           Make 'clock is way behind' a debugging message.
11366         * gst/gstthread.c: (gst_thread_change_state):
11367           Fix debugging message
11368
11369 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11370
11371         * gst/gstinfo.h:
11372           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11373         * docs/gst/tmpl/gstreamer-unused.sgml:
11374           removed all traces of cvs conflicts
11375
11376 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11377
11378         * configure.ac:
11379         * gst/schedulers/cothreads_compat.h:
11380         * libs/Makefile.am:
11381           remove last instances of wingo cothread usage
11382
11383 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11384
11385         * gst/gstplugin.c:
11386         * gst/gstversion.h.in:
11387         * gst/parse/grammar.y:
11388           change comment block from /** to /* when not gtk-doc comments
11389
11390 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11391
11392         * gst/gst.c: whitespace and doc style fixes
11393
11394 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11395
11396         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11397
11398 2003-12-24  Colin Walters  <walters@verbum.org>
11399
11400         * gst/elements/gsttypefindelement.c:
11401           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11402           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11403           Don't double-free caps.
11404
11405 2003-12-23  David Schleef  <ds@schleef.org>
11406
11407         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11408           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11409           Many little fixes and additions of debug statements to
11410           get rhythmbox working.
11411
11412 2003-12-23  Colin Walters  <walters@verbum.org>
11413
11414         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11415         Use GST_PAD_LINK_SUCCESSFUL.
11416
11417 2003-12-23  David Schleef  <ds@schleef.org>
11418
11419         * gst/elements/gstaggregator.c:
11420         * gst/elements/gsttee.c:
11421           Use gst_pad_proxy_getcaps().
11422         * gst/gstpad.c:
11423         * gst/gstpad.h:
11424           Add gst_pad_proxy_getcaps(), which filter elements can use
11425           as a generic getcaps implementation.
11426           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11427           was advertised.
11428
11429 2003-12-23  David Schleef  <ds@schleef.org>
11430
11431         * gst/gstpad.c:
11432           Rearrange/rewrite much of the pad negotiation code, since it
11433           resembled pasta.  This actually changes the way some
11434           negotiation works, since the previous code was inconsistent
11435           depending on how it was invoked.  Add (internal) structure
11436           GstPadLink, which is used to hold some information (more in
11437           the future) about the link between two pads.  Fixes a number
11438           of bugs, including random lossage of filter caps when the
11439           initial negotiation is delayed.  A few functions are still
11440           unimplemented.
11441         * gst/gstpad.h:
11442           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11443           these when testing GstPadLinkReturn values instead of comparing
11444           directly.
11445
11446 2003-12-23  David Schleef  <ds@schleef.org>
11447
11448         * gst/gstvalue.c: 
11449         * gst/gstvalue.h:
11450           Rearrange lots of code.  Change registration of compare function
11451           into registration of compare/serialize/deserialize functions.
11452           Doesn't include implementation of gst_value_[de]serialize(),
11453           but that should be easy.
11454
11455 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11456
11457         * docs/gst/gstreamer-sections.txt:
11458         * docs/gst/tmpl/gstprops.sgml: removed
11459         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11460           David removed props and caps code, so let's remove their docs as well.
11461           Removed all no longer existing symbols from gstreamer-sections.txt
11462           
11463 2003-12-22  Colin Walters  <walters@verbum.org>
11464
11465         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11466           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11467           of tags directly.
11468
11469 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11470
11471         * gst/elements/gstelements.c:
11472           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11473         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11474           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11475           gst_caps (peer).
11476
11477 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11478
11479         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11480         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11481         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11482         (gst_spider_identity_sink_loop_type_finding):
11483         * gst/autoplug/gstspideridentity.h:
11484           Fix autoplugging in spider element, so it works with new caps.
11485           This was mainly caused by identifying empty caps incorrectly.
11486
11487 2003-12-22  David Schleef  <ds@schleef.org>
11488
11489         * gststructure.c, gstvalue.c, gstvalue.h: Add
11490           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11491           using g_value_copy()
11492
11493 2003-12-21  David Schleef  <ds@schleef.org>
11494
11495         * many, many files: Merge CAPS branch.  This includes:
11496           - implemention of GstValue and several GstValue types
11497           - implemention of GstStructure
11498           - entire rewrite of GstCaps
11499           - removal of GstProps
11500           - many changes to GstPad to compensate for new caps paradigm
11501           - removal of GstBufferpool
11502         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11503         gstvalue.h, gst/gstcaps[2]*.[ch]:
11504           - rename gstcaps2.[ch] to gstcaps.[ch]
11505
11506 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11507
11508         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11509         (gst_queue_chain), (gst_queue_handle_src_event):
11510           implement timeout for sending events. Workaround for if the
11511           pipeline on this queue is not passing any data.
11512
11513 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11514                                                                                 
11515         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11516         * moved CVS to freedesktop.org
11517