gst/elements/gsttee.c: Core takes STREAM_LOCK for us now.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-25  Wim Taymans  <wim@fluendo.com>
2
3         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
4         (gst_tee_sink_activate):
5         Core takes STREAM_LOCK for us now.
6
7 2005-06-25  Wim Taymans  <wim@fluendo.com>
8
9         * gst/gstelement.c: (gst_element_get_state_func),
10         (gst_element_set_state):
11         * gst/gstelement.h:
12         * gst/gstmessage.c: (gst_message_parse_error),
13         (gst_message_parse_warning):
14         Keep track of current target state while performing a state
15         change so that subclasses can do something interesting.
16         Fix parsing of warning/error messages when GError is NULL.
17
18 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
19
20         * docs/gst/Makefile.am:
21         * docs/gst/gstreamer-docs.sgml:
22         * docs/gst/gstreamer-sections.txt:
23         * docs/gst/gstreamer.types:
24         * docs/gst/tmpl/gstbasesink.sgml:
25         * docs/gst/tmpl/gstbasesrc.sgml:
26         * docs/gst/tmpl/gstbin.sgml:
27         * docs/gst/tmpl/gstcompat.sgml:
28         * docs/gst/tmpl/gstfakesink.sgml:
29         * docs/gst/tmpl/gstfakesrc.sgml:
30         * docs/gst/tmpl/gstfilesink.sgml:
31         * docs/gst/tmpl/gstfilesrc.sgml:
32         * docs/gst/tmpl/gstindex.sgml:
33         * docs/manual/appendix-quotes.xml:
34         * gst/base/gstbasesrc.h:
35         * gst/elements/gstfakesrc.h:
36         * gst/gstmessage.h:
37           start pulling in base classes and elements in our docs
38
39 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
40
41         * docs/gst/Makefile.am:
42         * docs/libs/Makefile.am:
43           fixed make distcheck with gtk-doc 1.3
44
45 2005-06-23  Wim Taymans  <wim@fluendo.com>
46
47         * gst/gstelement.c: (gst_element_get_state_func),
48         (gst_element_set_state), (gst_element_change_state):
49         When the state did not change, also report NO_PREROLL
50         when it matters.
51
52 2005-06-23  Wim Taymans  <wim@fluendo.com>
53
54         * gst/gstpad.c: (gst_pad_event_default):
55         * gst/gstqueue.c: (gst_queue_loop):
56         No unsafe task pausing please.
57
58 2005-06-23  Wim Taymans  <wim@fluendo.com>
59
60         * gst/schedulers/threadscheduler.c:
61         (gst_thread_scheduler_task_start),
62         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
63         Ref the task before pushing it on the threadpool. This
64         makes sure that we have a ref when the threadfunction is
65         actually called.
66
67 2005-06-23  Andy Wingo  <wingo@pobox.com>
68
69         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
70         offset is greater than the file's size.
71
72         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
73         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
74         * gst/gstobject.c (gst_object_class_init): Make the class lock
75         recursive. Wim won't let me drop deep_notify. Decodebin works
76         again, whoopdy doo.
77
78         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
79         internal pad, and hacks accordingly. Doesn't do it on the target
80         pad because we change its caps. Probably catches all cases of
81         interest tho.
82         (gst_ghost_pad_set_property): Connect to notify::caps as
83         appropritate.
84
85         * tests/network-clock.scm (plot-simulation): Pipe data to the
86         elite python skript.
87
88         * tests/network-clock-utils.scm (define-parameter): New macro,
89         defines a parameter that can be set via the command line.
90         (set-parameter!, parse-parameter-arguments): Command line args
91         parser.
92
93         * tests/plot-data: Simple matplotlib-based plotter, takes input on
94         stdin.
95
96 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
97
98         * gst/elements/gsttypefindelement.c:
99         (gst_type_find_element_handle_event):
100           Don't restart typefinding on a discont.
101         * gst/gstelement.c: (gst_element_set_state):
102           Debug spelling fix.
103         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
104           Allow changing mode of an active pad.
105           Debug output fixes.
106         * gst/registries/gstlibxmlregistry.c: (load_feature):
107           Don't cast a static pad template to a normal pad template.
108
109 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
110
111         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
112         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
113           remove gst_strtoll completely, since it didn't actually do
114           anything more than what g_ascii_strtoull already does.
115           check for range errors when deserializing
116           do a cast for the unsigned cases; but further fixing needs
117           a decision on what the interpretation of "(int)" and
118           deserialization should be for values that fall outside the
119           type's boundaries (ie, refuse, or interpret as casting)
120
121 2005-06-23  Wim Taymans  <wim@fluendo.com>
122
123         * check/Makefile.am:
124         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
125         * docs/design/part-live-source.txt:
126         * docs/design/part-states.txt:
127         * gst/base/gstbasesrc.c: (gst_basesrc_init),
128         (gst_basesrc_set_live), (gst_basesrc_is_live),
129         (gst_basesrc_get_range), (gst_basesrc_activate),
130         (gst_basesrc_change_state):
131         * gst/base/gstbasesrc.h:
132         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
133         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
134         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
135         * gst/gstelement.c: (gst_element_get_state_func),
136         (gst_element_set_state):
137         * gst/gstelement.h:
138         * gst/gsttypes.h:
139         * tools/gst-launch.c: (event_loop), (main):
140         Added support for live sources and other elements that
141         cannot do preroll.
142         Updated design docs, added live-source design doc.
143         Implemented live source functionality in basesrc
144         Fix error condition in _bin_get_state()
145         Implement live source handling in -launch.
146         Added check for live sources.
147         Fixed case in GstBin where elements were changed state
148         multiple times.
149
150
151 2005-06-23  Andy Wingo  <wingo@pobox.com>
152
153         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
154         borken refcounting.
155
156         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
157         gst_caps_replace takes care of this for us.
158
159         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
160         gst_pad_set_caps on the target, not just its setcaps() function.
161
162         * tests/network-clock.scm: 
163         * tests/network-clock-utils.scm: A network clock simulator.
164         Something of an algorithmic testbed before doing something in C.
165
166 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
167
168         * check/Makefile.am:
169         * check/gst/capslist.h:
170           copy over from 0.8, and add two with bitmasks specified with
171           (int) 0xFF...
172         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
173           add test to parse everything from capslist.h
174         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
175         (main):
176           add test for structure deserialization
177         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
178           add tests for deserialization of strings to int types
179         * gst/gststructure.c: (gst_structure_nth_field_name):
180         * gst/gststructure.h:
181           add a way to get the name of a field referenced by index
182         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
183           instead of checking if the resulting long long lies between
184           min and max, we check if the long long would fit into
185           a number of bytes for the final type.
186           This fixes cases where a string represents 2^32 - 1, which
187           when cast to int would be the (valid) -1, but is bigger than
188           G_MAXINT
189
190 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
191
192         * gst/parse/grammar.y:
193           add a log line for type deserialization
194
195 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
196
197         * check/gst/gstvalue.c: (START_TEST):
198         * gst/gstvalue.c: (gst_value_deserialize):
199           return long long, not int, so gint64 deserialization actually
200           works.  Is there any flag that makes the compiler check this ?
201           Fixes #308559
202
203 2005-06-22  Wim Taymans  <wim@fluendo.com>
204
205         * gst/gstbuffer.h:
206         Added convenience macros for setting buffers in GValue.
207
208 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
209
210         * check/gst/.cvsignore:
211         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
212           add a test deserializing int64, and comment part out because
213           it fails, yay !
214
215 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
216
217         * check/Makefile.am:
218         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
219         * testsuite/Makefile.am:
220         * testsuite/caps/Makefile.am:
221         * testsuite/caps/value_serialize.c:
222         * testsuite/test_gst_init.c:
223           move a value_serialize test over
224
225 2005-06-20  Wim Taymans  <wim@fluendo.com>
226
227         * gst/gstpad.c:
228         Small doc updates.
229         
230         * gst/gstvalue.c: (gst_value_compare_buffer),
231         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
232         (gst_value_compare_flags), (gst_value_serialize_flags),
233         (gst_value_deserialize_flags), (_gst_value_initialize):
234         Fix serialisation of buffers, they are not boxed types anymore
235
236 2005-06-20  Wim Taymans  <wim@fluendo.com>
237
238         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
239         Testcase to show error in buffer-on-caps serialisation.
240
241 2005-06-20  Andy Wingo  <wingo@pobox.com>
242
243         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
244         will be adding to later.
245
246         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
247         if its socks fill with rocks.
248         (gst_system_clock_obtain): Set the name on object construction.
249         Avoid double-checked locking.
250
251 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
252
253         * gst/gsturi.c: (gst_element_make_from_uri):
254           Fix potential endless loop.
255
256 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
257
258         * check/Makefile.am:
259           add gsttag
260         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
261         (main):
262           move over from testsuite dir and clean up
263         * configure.ac:
264         * gst/gsttag.c:
265         * testsuite/Makefile.am:
266         * testsuite/tags/.cvsignore:
267         * testsuite/tags/Makefile.am:
268         * testsuite/tags/merge.c:
269           remove testsuite/tags
270
271 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
272
273         * docs/gst/gstreamer-sections.txt:
274         * docs/gst/tmpl/gstenumtypes.sgml:
275         * win32/gstenumtypes.c:
276           clean up documentation build a little
277
278 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
279
280         * check/gstcheck.h:
281           add macros for checking refcounts on objects and caps
282         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
283           add some more unit tests
284         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
285         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
286           fix leaked refcounts (I hope :)) so unittest works
287         * gst/gstpad.h:
288           whitespace removal
289
290 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
291
292         * configure.ac: back to HEAD
293
294 === release 0.9.1 ===
295
296 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
297
298         * NEWS:
299         * RELEASE:
300           updated
301
302 2005-06-17  Andy Wingo  <wingo@pobox.com>
303
304         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
305         assert; it's always possible that the pad gets deactivated in
306         between the checks in gstpad.c and the implementation. Rely on
307         finish_preroll() to return a FLUSHING or similar instead of on the
308         assert.
309         
310         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
311         clock and post an EOS message if we come out of finish_preroll in
312         the playing state.
313
314 2005-06-16  David Schleef  <ds@schleef.org>
315
316         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
317         (gst_capsfilter_set_property): Allow NULL as possible value
318         for filter_caps property, indicating GST_CAPS_ANY.
319
320 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
321
322         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
323           fix debug output
324         * gst/schedulers/Makefile.am:
325           use libgst prefix
326         * gstreamer.spec.in:
327           fix spec for it
328
329 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
330
331         * gstreamer.spec.in:
332           clean up
333
334 2005-06-08  Andy Wingo  <wingo@pobox.com>
335
336         * gst/gstutils.c: RPAD fixes all around.
337         (gst_element_link_pads): Refcounting fixes.
338
339         * tools/gst-inspect.c:
340         * tools/gst-xmlinspect.c:
341         * parse/grammar.y:
342         * gst/base/gsttypefindhelper.c:
343         * gst/base/gstbasesink.c:
344         * gst/gstqueue.c: RPAD fixes.
345
346         * gst/gstghostpad.h:
347         * gst/gstghostpad.c: New ghost pad implementation as full proxy
348         pads. The tricky thing is they provide both source and sink
349         interfaces, since they proxy the internal pad for the external
350         pad, and vice versa. Implement with lower-level ProxyPad objects,
351         with the interior proxy pad as a child of the exterior ghost pad.
352         Should write a doc on this.
353         
354         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
355         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
356         gst_object API.
357         
358         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
359         pads are real pads. No ghost pads in this file. Not documenting
360         the myriad s/RPAD/PAD/ and REALIZE fixes.
361         (gst_pad_class_init): Add properties for "direction" and
362         "template". Both are construct-only, so they can't change during
363         the life of the pad. Fixes properly deriving from GstPad.
364         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
365         derived objects, just set properties when creating the objects via
366         g_object_new.
367         (gst_pad_get_parent): Implement as a function, return NULL if the
368         parent is not an element.
369         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
370         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
371         
372         * gst/gstobject.c (gst_object_class_init): Make name a construct
373         property. Don't set it in the object init.
374
375         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
376         with UNKNOWN direction.
377         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
378         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
379         (gst_element_remove_pad): Remove ghost-pad special cases.
380         (gst_element_pads_activate): Remove rpad cruft.
381
382         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
383         catch the pad's-parent-not-an-element case.
384
385         * gst/gst.h: Include gstghostpad.h.
386
387         * gst/gst.c (init_post): No more real, ghost pads.
388
389         * gst/Makefile.am: Add gstghostpad.[ch].
390
391         * check/Makefile.am:
392         * check/gst/gstbin.c:
393         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
394         into a bin creates ghost pads, and that the refcounts are right.
395         Partly moved from gstbin.c.
396
397 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
398
399         * check/gst-libs/.cvsignore:
400         * check/gst/.cvsignore:
401         * check/pipelines/.cvsignore:
402           ignore more
403         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
404         (START_TEST), (cleanup_suite), (main):
405           add some tests related to cleanup after running pipelines
406
407 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
408
409         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
410           add a testsuite for GstBuffer
411
412 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
413
414         * gst/gstminiobject.h:
415           add defines for accessing the refcount
416
417 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
418
419         * Makefile.am: added support for html unit test coverage reports
420
421 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
422
423         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
424           Free existing caps if the capsfilter changes. Add a FIXME about
425           setting those caps on the pads.
426
427         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
428           Before adding a ghost pad to a parent bin, check that there isn't
429           already one for the element on the bin. Prevents infinite recursion
430           when using decodebin in parse pipelines. Andy says he'll rewrite the
431           way this works anyway, so ignore the hack.
432
433 2005-06-02  Andy Wingo  <wingo@pobox.com>
434
435         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
436         file size, pass it on to the type find helper.
437
438         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
439         segment_start and segment_end properly according to the seek
440         method. Segment_end is still a bit flaky because offset can be
441         negative for CUR and END cases, but it takes -1 as an "unset"
442         value.
443
444 2005-06-02  Wim Taymans  <wim@fluendo.com>
445
446         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
447         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
448         (gst_basesink_activate):
449         * gst/base/gstbasesink.h:
450         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
451         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
452         (gst_pad_query), (gst_pad_start_task):
453         * gst/gstpad.h:
454         * gst/gstqueue.c: (gst_queue_bufferalloc),
455         (gst_queue_handle_sink_event), (gst_queue_chain):
456         Bufferalloc: return GstFlowReturn to more accuratly report
457         why allocation failed.
458
459 2005-06-02  Wim Taymans  <wim@fluendo.com>
460
461         * gst/gstpipeline.c: (gst_pipeline_send_event):
462         Take snapshot of state without blocking.
463
464 2005-06-02  Wim Taymans  <wim@fluendo.com>
465
466         * docs/design/part-TODO.txt:
467         * docs/design/part-caps.txt:
468         * docs/design/part-clocks.txt:
469         * docs/design/part-negotiation.txt:
470         * docs/design/part-preroll.txt:
471         Small doc updates 
472
473 2005-05-30  Wim Taymans  <wim@fluendo.com>
474
475         * gst/elements/gstidentity.c: (gst_identity_event),
476         (gst_identity_transform), (gst_identity_get_property):
477         Protect last_message property as it is accessed from
478         multiple threads.
479
480 2005-05-30  Wim Taymans  <wim@fluendo.com>
481
482         * gst/gstelement.c: (gst_element_init),
483         (gst_element_pads_activate), (gst_element_change_state):
484         Slicker pad activation code.
485
486 2005-05-30  Wim Taymans  <wim@fluendo.com>
487
488         * gst/Makefile.am:
489         * gst/gstelement.h:
490         * gst/gstelementfactory.h:
491         * gst/gsttypes.h:
492         Move elementfactory methods to separate .h file.
493
494 2005-05-30  Wim Taymans  <wim@fluendo.com>
495
496         * docs/design/part-overview.txt:
497         * gst/gstsystemclock.h:
498         Small typo fixes, doc updates.
499
500 2005-05-30  Wim Taymans  <wim@fluendo.com>
501
502         * gst/gst.c: (gst_init_get_popt_table), (init_post),
503         (init_popt_callback):
504         Remove cpu-opt flag.
505
506 2005-05-30  Wim Taymans  <wim@fluendo.com>
507
508         * gst/gstbuffer.c: (gst_subbuffer_finalize),
509         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
510         * gst/gstbuffer.h:
511         Avoid typechecking in places where not needed.
512         Added accessor for malloc_data.
513
514 2005-05-30  Wim Taymans  <wim@fluendo.com>
515
516         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
517         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
518         (gst_pad_configure_sink), (gst_pad_configure_src),
519         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
520         (gst_pad_start_task):
521         Propagate errors from _set_caps() in configure_src/sink
522         functions instead of returning TRUE.
523         FLUSH events can travel up and downstream
524
525
526 2005-05-30  Wim Taymans  <wim@fluendo.com>
527
528         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
529         (gst_basesink_activate):
530         Handle EOS in preroll.
531
532 2005-05-30  Wim Taymans  <wim@fluendo.com>
533
534         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
535         (gst_queue_loop), (gst_queue_handle_src_event):
536         Remove old pieces of code
537         Flushing the queue in an upstream event is a very bad idea.
538
539 2005-05-26  Andy Wingo  <wingo@pobox.com>
540
541         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
542         gst_value_set_mini_object so as to add a ref on the object (which
543         will be removed when the value is unset).
544
545         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
546         arg type in ::handoff.
547
548         * gst/gstelement.c (gst_element_change_state): Also deactivate
549         pads in READY->NULL, just in case the element didn't make it to
550         PAUSED. Wingo tested, Wim approved.
551
552 2005-05-26  Wim Taymans  <wim@fluendo.com>
553
554         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
555         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
556         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
557         A flushing pad cannot be used to alloc_buffer from.
558
559 2005-05-26  Wim Taymans  <wim@fluendo.com>
560
561         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
562         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
563         (gst_bus_source_dispatch), (gst_bus_source_finalize),
564         (gst_bus_create_watch), (gst_bus_add_watch_full):
565         * gst/gstbus.h:
566         Implement a real GSource and use g_main_context_wakeup() to
567         signal new messages instead of the socketpair.
568
569 2005-05-25  Wim Taymans  <wim@fluendo.com>
570
571         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
572         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
573         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
574         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
575         (gst_pad_send_event), (gst_pad_start_task):
576         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
577         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
578         (gst_queue_sink_activate), (gst_queue_src_activate),
579         (gst_queue_change_state):
580         * gst/gstqueue.h:
581         Fix state changes for non sinks. We now change sinks, then elements
582         with unconnected srcpads, then the rest.
583         More efficient queue unlocking in flush and state changes.
584         Set the pad activate mode even if it does not have an activate
585         function.
586
587 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
588
589         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
590           Don't go in pull mode for non-seekable sources.
591         * gst/elements/gsttypefindelement.h:
592         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
593         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
594         (free_entry), (stop_typefinding),
595         (gst_type_find_element_handle_event), (find_peek),
596         (gst_type_find_element_chain), (do_pull_typefind),
597         (gst_type_find_element_change_state):
598           Allow typefinding (w/o seeking) in push-mode, simplified version
599           of what was in 0.8.
600         * gst/gstutils.c: (gst_buffer_join):
601         * gst/gstutils.h:
602           gst_buffer_join() from 0.8.
603
604 2005-05-25  Wim Taymans  <wim@fluendo.com>
605
606         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
607         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
608         (gst_pad_send_event), (gst_pad_start_task):
609         Disable attempt at mode switching until it is figured out.
610
611 2005-05-25  Wim Taymans  <wim@fluendo.com>
612
613         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
614         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
615         (gst_basesink_finish_preroll), (gst_basesink_chain),
616         (gst_basesink_loop), (gst_basesink_activate),
617         (gst_basesink_change_state):
618         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
619         (gst_basesrc_get_range), (gst_basesrc_loop),
620         (gst_basesrc_activate):
621         * gst/elements/gsttee.c: (gst_tee_sink_activate):
622         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
623         (gst_real_pad_init), (gst_real_pad_set_property),
624         (gst_real_pad_get_property), (gst_pad_set_active),
625         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
626         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
627         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
628         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
629         (gst_pad_event_default_dispatch), (gst_pad_event_default),
630         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
631         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
632         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
633         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
634         (gst_pad_stop_task):
635         * gst/gstpad.h:
636         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
637         (gst_queue_loop), (gst_queue_src_activate):
638         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
639         (gst_task_get_state):
640         * gst/gsttask.h:
641         * gst/schedulers/threadscheduler.c:
642         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
643         Implement gst_pad_pause/start/stop_task(), take STREAM lock
644         in task function.
645         Remove ACTIVE pad flag, use FLUSHING everywhere
646         Added _pad_chain(), _pad_get_range() to call chain/getrange 
647         functions.
648         Add locks around IS_FLUSHING when reading.
649         Take STREAM lock in chain(), get_range() functions so plugins
650         don't need to take it anymore.
651         
652
653
654 2005-05-25  Wim Taymans  <wim@fluendo.com>
655
656         * tools/gst-launch.c: (event_loop):
657         Unref message after using its contents instead of
658         before.
659
660 2005-05-24  Wim Taymans  <wim@fluendo.com>
661
662         * docs/design/draft-ghostpads.txt:
663         * docs/design/draft-push-pull.txt:
664         * docs/design/draft-query.txt:
665         * docs/design/part-overview.txt:
666         Docs updates, added general overview doc.
667
668 2005-05-21  David Schleef  <ds@schleef.org>
669
670         * docs/gst/tmpl/old/GstBin.sgml:
671         * docs/gst/tmpl/old/GstBuffer.sgml:
672         * docs/gst/tmpl/old/GstCaps.sgml:
673         * docs/gst/tmpl/old/GstClock.sgml:
674         * docs/gst/tmpl/old/GstCompat.sgml:
675         * docs/gst/tmpl/old/GstData.sgml:
676         * docs/gst/tmpl/old/GstElement.sgml:
677         * docs/gst/tmpl/old/GstEvent.sgml:
678         * docs/gst/tmpl/old/GstIndex.sgml:
679         * docs/gst/tmpl/old/GstStructure.sgml:
680         * docs/gst/tmpl/old/GstTag.sgml:
681         * docs/gst/tmpl/old/cothreads.sgml:
682         * docs/gst/tmpl/old/cothreads_compat.sgml:
683         * docs/gst/tmpl/old/gettext.sgml:
684         * docs/gst/tmpl/old/gobject2gtk.sgml:
685         * docs/gst/tmpl/old/grammar.tab.sgml:
686         * docs/gst/tmpl/old/gst-i18n-app.sgml:
687         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
688         * docs/gst/tmpl/old/gst_private.sgml:
689         * docs/gst/tmpl/old/gstaggregator.sgml:
690         * docs/gst/tmpl/old/gstarch.sgml:
691         * docs/gst/tmpl/old/gstatomic_impl.sgml:
692         * docs/gst/tmpl/old/gstbufferstore.sgml:
693         * docs/gst/tmpl/old/gstdata_private.sgml:
694         * docs/gst/tmpl/old/gstdisksink.sgml:
695         * docs/gst/tmpl/old/gstdisksrc.sgml:
696         * docs/gst/tmpl/old/gstelementfactory.sgml:
697         * docs/gst/tmpl/old/gstextratypes.sgml:
698         * docs/gst/tmpl/old/gstfakesink.sgml:
699         * docs/gst/tmpl/old/gstfakesrc.sgml:
700         * docs/gst/tmpl/old/gstfdsink.sgml:
701         * docs/gst/tmpl/old/gstfdsrc.sgml:
702         * docs/gst/tmpl/old/gstfilesink.sgml:
703         * docs/gst/tmpl/old/gstfilesrc.sgml:
704         * docs/gst/tmpl/old/gsthttpsrc.sgml:
705         * docs/gst/tmpl/old/gstidentity.sgml:
706         * docs/gst/tmpl/old/gstindexfactory.sgml:
707         * docs/gst/tmpl/old/gstmarshal.sgml:
708         * docs/gst/tmpl/old/gstmd5sink.sgml:
709         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
710         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
711         * docs/gst/tmpl/old/gstpadtemplate.sgml:
712         * docs/gst/tmpl/old/gstpipefilter.sgml:
713         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
714         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
715         * docs/gst/tmpl/old/gstshaper.sgml:
716         * docs/gst/tmpl/old/gstspider.sgml:
717         * docs/gst/tmpl/old/gstspideridentity.sgml:
718         * docs/gst/tmpl/old/gststatistics.sgml:
719         * docs/gst/tmpl/old/gsttee.sgml:
720         * docs/gst/tmpl/old/gsttimecache.sgml:
721         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
722         * docs/gst/tmpl/old/gstxmlregistry.sgml:
723         * docs/gst/tmpl/old/gthread-cothreads.sgml:
724         * docs/gst/tmpl/old/types.sgml:
725           I didn't intend to add these or check them in.
726
727 2005-05-19  David Schleef  <ds@schleef.org>
728
729         * configure.ac: Use -no-common everywhere.  In a sane world, it
730           would be the default in libtool, because without it, you can't
731           build DLLs on Windows.
732         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
733         * docs/gst/gstreamer-sections.txt:
734         * docs/gst/tmpl/gstcpu.sgml:
735         * docs/gst/tmpl/gstdata.sgml:
736         * docs/gst/tmpl/gstthread.sgml:
737
738 2005-05-19  David Schleef  <ds@schleef.org>
739
740         * gst/gstminiobject.c: (gst_value_set_mini_object),
741         (gst_value_take_mini_object), (gst_value_get_mini_object):
742         * gst/gstminiobject.h: Add GValue set/get functions.
743
744 2005-05-19  Wim Taymans  <wim@fluendo.com>
745
746         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
747         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
748         (gst_subbuffer_init), (gst_buffer_is_span_fast):
749         * gst/gstbuffer.h:
750         * gst/gstbus.c: (gst_bus_post):
751         * gst/gstelement.c: (gst_element_get_random_pad):
752         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
753         Make subbufer unref the parent in finalize.
754         some more debugging info.
755
756
757 2005-05-19  Wim Taymans  <wim@fluendo.com>
758
759         * gst/base/gstbasesink.c: (gst_basesink_class_init),
760         (gst_basesink_init), (gst_basesink_finalize),
761         (gst_basesink_activate), (gst_basesink_change_state):
762         Don't free preroll queue too early.
763
764 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
765
766         * gst/Makefile.am:
767         * gst/ROADMAP:
768           Hi, I'm outdated. Please shoot me.
769
770 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
771
772         * gst/gstpipeline.c: (gst_pipeline_send_event):
773           Do not access variables after they have been deleted.
774
775 2005-05-19  Wim Taymans  <wim@fluendo.com>
776
777         * tools/gst-inspect.c: (print_plugin_features):
778         A plugin feature does unfortunatly not use the
779         object name yet...
780
781 2005-05-18  Wim Taymans  <wim@fluendo.com>
782
783         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
784         Port _span() functions to new subbuffers.
785
786 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
787
788         * gst/gstbin.c: (gst_bin_add_func):
789           Fix clock settery in bins when adding kids after the clock has
790           been selected.
791
792 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
793
794         * gst/elements/gstidentity.c: (gst_identity_class_init):
795           Workaround until signals support GstMiniObject.
796
797 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
798
799         * gst/gstbuffer.c:
800         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
801
802 2005-05-18  Wim Taymans  <wim@fluendo.com>
803
804         * gst/base/Makefile.am:
805         * gst/base/gstadapter.c: (gst_adapter_base_init),
806         (gst_adapter_class_init), (gst_adapter_init),
807         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
808         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
809         (gst_adapter_flush), (gst_adapter_available),
810         (gst_adapter_available_fast):
811         * gst/base/gstadapter.h:
812         Ported and added adapter to the base classes.
813
814 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
815
816         * gst/gst.c:
817         * gst/gstmessage.c:
818           Make sure the class is reffed/unreffed once before threads can be
819           used.  Fixes #304551.
820
821 2005-05-17  Wim Taymans  <wim@fluendo.com>
822
823         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
824         (gst_basesink_chain_unlocked), (gst_basesink_activate):
825         * gst/gstminiobject.c: (gst_mini_object_get_type),
826         (gst_mini_object_free):
827         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
828         (gst_pad_push), (gst_pad_push_event):
829         * gst/gstqueue.c: (gst_queue_change_state):
830         Don't queue buffers in basesink when we are flushing.
831         Unref buffer when flushing in basesink.
832         Flush queue when going to READY
833         Unref buffer when _push() returns an error.
834         Don't free MiniObject instance when refcount is incremented
835         in _finalize() so that we can recover objects.
836
837 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
838
839         * docs/manual/advanced-schedulers.xml:
840         * docs/manual/appendix-checklist.xml:
841         * docs/pwg/advanced-clock.xml:
842         * docs/pwg/advanced-interfaces.xml:
843         * docs/pwg/advanced-request.xml:
844         * docs/pwg/advanced-types.xml:
845         * docs/pwg/intro-preface.xml:
846         * examples/plugins/example.c: (gst_example_get_type),
847         (gst_example_class_init), (gst_example_chain),
848         (gst_example_set_property), (gst_example_get_property),
849         (gst_example_change_state), (plugin_init):
850         * examples/plugins/example.h:
851           small doc fixes
852
853 2005-05-17  Wim Taymans  <wim@fluendo.com>
854
855         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
856         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
857         * gst/gstqueue.c: (gst_queue_change_state):
858         Clear queue when going to READY.
859         Remove IN_SETCAPS flag too.
860
861 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
862
863         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
864           Remove implicit cast from gboolean to GstElementStateReturn;
865           make sure we still return failure in paused => ready case if
866           the parent class fails to change state and our own stop 
867           vfunc succeeds.
868
869 2005-05-17  Wim Taymans  <wim@fluendo.com>
870
871         * tools/gst-launch.c: (event_loop):
872         Message was unreffed too soon.
873
874 2005-05-16  Andy Wingo  <wingo@pobox.com>
875
876         * gst/gstbin.c (sink_iterator_filter): Err... um...
877
878         * check/gst/gstbin.c (test_ghost_pads): New test for the
879         ghosting-if-elements-not-in-same-bin behavior.
880
881 2005-05-16  David Schleef  <ds@schleef.org>
882
883         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
884         accessing refcount directly.
885
886 2005-05-15  David Schleef  <ds@schleef.org>
887
888         * check/Makefile.am: remove GstData checks
889         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
890         * gst/Makefile.am: add miniobject, remove data
891         * gst/gst.h: add miniobject, remove data
892         * gst/gstdata.c: remove
893         * gst/gstdata.h: remove
894         * gst/gstdata_private.h: remove
895         * gst/gsttypes.h: remove GstEvent and GstMessage
896         * gst/gstelement.c: (gst_element_post_message): fix for API changes
897         * gst/gstmarshal.list: change BOXED -> OBJECT
898
899         Implement GstMiniObject.
900         * gst/gstminiobject.c:
901         * gst/gstminiobject.h:
902
903         Modify to be subclasses of GstMiniObject.
904         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
905         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
906         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
907         (gst_subbuffer_get_type), (gst_subbuffer_init),
908         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
909         (gst_buffer_span):
910         * gst/gstbuffer.h:
911         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
912         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
913         (_gst_event_copy), (gst_event_new):
914         * gst/gstevent.h:
915         * gst/gstmessage.c: (_gst_message_initialize),
916         (gst_message_get_type), (gst_message_class_init),
917         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
918         (gst_message_new), (gst_message_new_error),
919         (gst_message_new_warning), (gst_message_new_tag),
920         (gst_message_new_state_changed), (gst_message_new_application):
921         * gst/gstmessage.h:
922         * gst/gstprobe.c: (gst_probe_perform),
923         (gst_probe_dispatcher_dispatch):
924         * gst/gstprobe.h:
925         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
926         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
927         (_gst_query_copy), (gst_query_new):
928
929         Update elements for GstData -> GstMiniObject changes
930         * gst/gstquery.h:
931         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
932         (gst_queue_chain), (gst_queue_loop):
933         * gst/elements/gstbufferstore.c:
934         (gst_buffer_store_add_buffer_func),
935         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
936         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
937         (gst_fakesink_render):
938         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
939         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
940         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
941         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
942         (gst_filesrc_create_read):
943         * gst/elements/gstidentity.c: (gst_identity_class_init):
944         * gst/elements/gsttypefindelement.c:
945         (gst_type_find_element_src_event), (free_entry_buffers),
946         (gst_type_find_element_handle_event):
947         * libs/gst/dataprotocol/dataprotocol.c:
948         (gst_dp_header_from_buffer):
949         * libs/gst/dataprotocol/dataprotocol.h:
950         * libs/gst/dataprotocol/dp-private.h:
951
952 2005-05-15  David Schleef  <ds@schleef.org>
953
954         * gst/elements/gstelements.c: Don't include headers that were
955         just removed.
956
957 2005-05-15  David Schleef  <ds@schleef.org>
958
959         * gst/elements/Makefile.am: Remove some elements that don't
960         need to be in the core (or even exist at all).
961         * gst/elements/gstaggregator.c:
962         * gst/elements/gstaggregator.h:
963         * gst/elements/gstmd5sink.c:
964         * gst/elements/gstmd5sink.h:
965         * gst/elements/gstmultifilesrc.c:
966         * gst/elements/gstmultifilesrc.h:
967         * gst/elements/gstpipefilter.c:
968         * gst/elements/gstpipefilter.h:
969         * gst/elements/gstshaper.c:
970         * gst/elements/gstshaper.h:
971         * gst/elements/gststatistics.c:
972         * gst/elements/gststatistics.h:
973         * po/POTFILES.in: Remove above files.
974
975 2005-05-14  Andy Wingo  <wingo@pobox.com>
976
977         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
978         so as to get the refs right.
979         (sink_iterator_filter): New function, wraps bin_element_is_sink,
980         unreffing objects that don't pass the filter.
981
982         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
983         gst_element_set_bus.
984         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
985         normal cases, this will destroy the bus.
986
987         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
988         object.
989
990         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
991         has no sinks.
992
993 2005-05-13  Andy Wingo  <wingo@pobox.com>
994
995         * gst/gstutils.c (gst_element_link_pads): Instead of calling
996         gst_pad_link, call pad_link_maybe_ghosting,
997         (pad_link_maybe_ghosting): Links pads, making sure that the
998         elements being linked are in the same bin.
999         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1000         Helpers for pad_link_maybe_ghosting.
1001
1002 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1003
1004         * configure.ac:
1005           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1006
1007 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1008
1009         * docs/design/part-element-source.txt:
1010           Mention GstPushSrc
1011
1012 2005-05-12  Wim Taymans  <wim@fluendo.com>
1013
1014         * gst/base/gstbasesink.c: (gst_basesink_init),
1015         (gst_basesink_activate):
1016         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1017         (gst_basesrc_is_seekable):
1018         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1019         (bin_element_is_sink), (gst_bin_change_state):
1020         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1021         * gst/gstelement.h:
1022         Identify sinks by their flag to avoid overly complicated
1023         checks (fow now).
1024         Do state changes even for elements not reachable from the
1025         sinks.
1026         BaseSink is a sink now :)
1027         Some more debugging info in the basesrc.
1028
1029
1030 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1031
1032         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1033           Implement _query on a bin, similar to _send_event.
1034
1035 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1036
1037         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1038           Discont event offset format should be GST_FORMAT_BYTES,
1039           not GST_FORMAT_TIME.
1040
1041 2005-05-12  Wim Taymans  <wim@fluendo.com>
1042
1043         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1044         Same fix as Ronald's but without the signal. 
1045
1046 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1047
1048         * gst/gstutils.c: (gst_element_query_position):
1049           No, an element is not a pad.
1050
1051 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1052
1053         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1054         (gst_bin_get_state):
1055           If a child is removed from a bin while we remove the child from
1056           the bin and while we're retrieving its state, signal this to the
1057           get_state function so we abort the wait (instead of waiting for
1058           a timeout) and can immediately re-iterate over all other elements.
1059
1060 2005-05-12  Wim Taymans  <wim@fluendo.com>
1061
1062         * gst/base/Makefile.am:
1063         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1064         (gst_basesrc_start):
1065         * gst/base/gstbasesrc.h:
1066         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1067         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1068         (gst_pushsrc_init), (gst_pushsrc_create):
1069         * gst/base/gstpushsrc.h:
1070         Added is_seekable to BaseSrc
1071         Added simple PushSrc.
1072
1073 2005-05-11  Wim Taymans  <wim@fluendo.com>
1074
1075         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1076         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1077         (gst_element_link_pads), (gst_element_query_position),
1078         (gst_element_query_convert), (intersect_caps_func),
1079         (gst_pad_query_position), (gst_pad_query_convert):
1080         Fix refcounting in utils function.
1081         No point in trying to activate a pad when it's added, it could
1082         be added from the state change function and then we deadlock, the
1083         element has to decide what to do.
1084
1085 2005-05-10  Andy Wingo  <wingo@pobox.com>
1086
1087         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1088         *all* the arguments.
1089
1090         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1091         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1092         lock (according to the docs -- if this is wrong change the docs).
1093
1094         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1095         flush messages in the NULL state.
1096
1097         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1098         message immediately and return.
1099         (gst_bus_set_flushing): New function. If a bus is flushing, it
1100         flushes out any queued messages and immediately unrefs new
1101         messages. This is so when an element goes to NULL, all of the
1102         unhandled messages coming from it can be freed, and their
1103         references to the element dropped. In other words: message source
1104         ref considered harmful :P
1105
1106         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1107         we're finished with it.
1108
1109         * gst/gstmessage.c (gst_message_new_state_changed): 
1110
1111 2005-05-10  Wim Taymans  <wim@fluendo.com>
1112
1113         * gst/gstvalue.c: (gst_value_compare_flags),
1114         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1115         (_gst_value_initialize):
1116         Added flags serialize/deserialize/compare code.
1117
1118 2005-05-09  Andy Wingo  <wingo@pobox.com>
1119
1120         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1121         Intersect the peer's caps with our caps.
1122
1123 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1124
1125         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1126         * gst/elements/gsttypefindelement.c: (find_peek):
1127           Handle negative offsets better. Fixes decodebin.
1128
1129 2005-05-09  Wim Taymans  <wim@fluendo.com>
1130
1131         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1132         (gst_base_transform_event):
1133         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1134         Implement accept_caps.
1135         Fix silly lock/unlock mismatch in base class.
1136
1137 2005-05-09  Wim Taymans  <wim@fluendo.com>
1138
1139         * docs/design/draft-push-pull.txt:
1140         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1141         * gst/elements/gstfilesink.c: (gst_filesink_init),
1142         (gst_filesink_query):
1143         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1144         (gst_type_find_handle_src_query), (find_element_get_length):
1145         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1146         * gst/gstelement.h:
1147         * gst/gstmessage.c:
1148         * gst/gstmessage.h:
1149         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1150         (gst_real_pad_get_caps_unlocked),
1151         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1152         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1153         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1154         (gst_real_pad_dispose), (gst_real_pad_finalize),
1155         (gst_pad_load_and_link), (gst_pad_save_thyself),
1156         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1157         (gst_pad_check_pull_range), (gst_pad_pull_range),
1158         (gst_pad_template_get_type), (gst_pad_template_class_init),
1159         (gst_pad_template_init), (gst_pad_template_dispose),
1160         (name_is_valid), (gst_static_pad_template_get),
1161         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1162         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1163         (gst_pad_get_element_private), (gst_pad_start_task),
1164         (gst_pad_pause_task), (gst_pad_stop_task),
1165         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1166         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1167         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1168         (gst_ghost_pad_new):
1169         * gst/gstpad.h:
1170         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1171         (gst_query_new_position), (gst_query_set_position),
1172         (gst_query_parse_position), (gst_query_new_convert),
1173         (gst_query_set_convert), (gst_query_parse_convert):
1174         * gst/gstquery.h:
1175         * gst/gstqueryutils.c:
1176         * gst/gstqueryutils.h:
1177         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1178         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1179         (gst_queue_handle_src_query):
1180         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1181         (gst_element_query_position), (gst_element_query_convert),
1182         (intersect_caps_func), (gst_pad_query_position),
1183         (gst_pad_query_convert):
1184         * gst/gstutils.h:
1185         * tools/gst-inspect.c: (print_pad_info):
1186         * tools/gst-xmlinspect.c: (print_element_info):
1187         Remove old query functions. Ported old code.
1188         Added position/convert helper functions to gstutils.
1189         Reordered gstpad.c code, grouping relevant things.
1190         Remove gst_message_new(), always need to speficy a specific
1191         message.
1192
1193
1194 2005-05-09  Andy Wingo  <wingo@pobox.com>
1195
1196         * gst/gstiterator.h: Add some includes.
1197
1198         * gst/gstqueryutils.h: Include more headers.
1199
1200         * gst/gstpad.h:
1201         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1202         some uses of gst_pad_query.
1203
1204         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1205         NULL out parameters.
1206         (gst_query_new_position): New proc, allocates a new position
1207         query.
1208
1209         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1210         gstqueryutils.c to the build.
1211
1212         * gst/gststructure.c (gst_structure_set_valist): Implement with
1213         the generic G_VALUE_COLLECT.
1214         
1215 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1216
1217         * gst/Makefile.am: (gst_headers):
1218         Added gstqueryutils.h to the list of headers to install, that was
1219         a 'nachty' move wingo :)
1220
1221 2005-05-06  Andy Wingo  <wingo@pobox.com>
1222
1223         * gst/gstquery.h
1224         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1225         GstData, init a memchunk.
1226         (standard_definitions): Add a few query types, deprecate a few.
1227         (gst_query_get_type): New proc.
1228         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1229         implementation.
1230         (gst_query_new_application, gst_query_get_structure): New public
1231         procs.
1232
1233         * docs/design/draft-query.txt: Removed LINKS from the query types,
1234         because all the rest can be dispatched to other pads -- seemed
1235         ugly to have a query that couldn't be dispatched. internal_links
1236         is fine as a pad method.
1237
1238         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1239         in gstpad.c, but maintain binary compatibility for the moment.
1240         Will fix before 0.9 is out.
1241
1242         * gst/gstqueryutils.c: 
1243         * gst/gstqueryutils.h: New files, implement 3 methods for each
1244         query type: parse_query, parse_response, and set. Probably need an
1245         allocator as well.
1246
1247         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1248
1249         * gst/elements/gstfilesink.c (gst_filesink_query2):
1250         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1251         query_types, and formats methods.
1252
1253         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1254         (gst_pad_set_query2_function): New functions.
1255         (gst_real_pad_init): Set query2_default as the default query2
1256         function. Basically just dispatches to internally linked pads.
1257
1258         Needs review!
1259         
1260         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1261         without using the atomic operations. Only one thread can possibly
1262         be accessing the data at this point. Changed so as to avoid
1263         gst_atomic operations.
1264
1265 2005-05-06  Wim Taymans  <wim@fluendo.com>
1266
1267         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1268         Also set caps if we use the fallback buffer alloc.
1269
1270 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1271
1272         * docs/gst/Makefile.am:
1273         * docs/gst/gstreamer-docs.sgml:
1274         * docs/gst/gstreamer-sections.txt:
1275         * docs/gst/tmpl/gstatomic.sgml:
1276         * docs/gst/tmpl/gstmemchunk.sgml:
1277         * testsuite/elements/struct_i386.h:
1278         * win32/GStreamer.vcproj:
1279         * win32/Makefile:
1280           Purge GstAtomic stuff from docs and win32 makefiles as well
1281
1282 2005-05-06  Wim Taymans  <wim@fluendo.com>
1283
1284         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1285         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1286         * gst/gstpad.c: (gst_pad_peer_get_caps):
1287         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1288         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1289         (gst_queue_src_activate), (gst_queue_change_state):
1290         * gst/gstqueue.h:
1291         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1292         (intersect_caps_func):
1293         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1294         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1295         Some fixes for the peer_get_caps() change.
1296
1297 2005-05-06  Wim Taymans  <wim@fluendo.com>
1298
1299         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1300         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1301         (gst_basesink_activate):
1302         Actually do something with error codes returned from the push
1303         functions.
1304
1305 2005-05-06  Wim Taymans  <wim@fluendo.com>
1306
1307         * docs/design/part-element-sink.txt:
1308         * docs/design/part-element-source.txt:
1309         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1310         (gst_basesink_event), (gst_basesink_activate):
1311         * gst/base/gstbasesink.h:
1312         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1313         (gst_basesrc_activate):
1314         * gst/base/gstbasesrc.h:
1315         * gst/gstelement.c: (gst_element_pads_activate):
1316         Some more documentation.
1317         Fixed scheduling decision in _pads_activate().
1318
1319 2005-05-05  Andy Wingo  <wingo@pobox.com>
1320
1321         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1322         the test suite.
1323
1324 2005-05-05  Wim Taymans  <wim@fluendo.com>
1325
1326         * gst/base/Makefile.am:
1327         * gst/base/gstbasesink.h:
1328         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1329         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1330         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1331         (gst_collectpads_class_init), (gst_collectpads_init),
1332         (gst_collectpads_finalize), (gst_collectpads_new),
1333         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1334         (find_pad), (gst_collectpads_remove_pad),
1335         (gst_collectpads_is_active), (gst_collectpads_collect),
1336         (gst_collectpads_collect_range), (gst_collectpads_start),
1337         (gst_collectpads_stop), (gst_collectpads_peek),
1338         (gst_collectpads_pop), (gst_collectpads_available),
1339         (gst_collectpads_read), (gst_collectpads_flush),
1340         (gst_collectpads_chain):
1341         * gst/base/gstcollectpads.h:
1342         * gst/elements/Makefile.am:
1343         * gst/elements/gstelements.c:
1344         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1345         (gst_fakesink_get_times), (gst_fakesink_event),
1346         (gst_fakesink_preroll), (gst_fakesink_render):
1347         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1348         (gst_filesink_init), (gst_filesink_set_location),
1349         (gst_filesink_open_file), (gst_filesink_close_file),
1350         (gst_filesink_pad_query), (gst_filesink_event),
1351         (gst_filesink_render), (gst_filesink_change_state):
1352         * gst/elements/gstfilesink.h:
1353         Added object to help in making collect pad based elements.
1354         Ported filesink.
1355         Make event function in sink baseclass return gboolean.
1356
1357 2005-05-05  Wim Taymans  <wim@fluendo.com>
1358
1359         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1360         (gst_bin_get_by_name):
1361         * gst/gstbuffer.h:
1362         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1363         (gst_clock_finalize):
1364         * gst/gstdata.c: (gst_data_replace):
1365         * gst/gstdata.h:
1366         * gst/gstelement.c: (gst_element_request_pad),
1367         (gst_element_pads_activate):
1368         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1369         (gst_object_unref):
1370         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1371         (gst_pad_set_checkgetrange_function),
1372         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1373         (gst_pad_check_pull_range), (gst_pad_pull_range),
1374         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1375         (gst_pad_pause_task), (gst_pad_stop_task):
1376         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1377         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1378         Fix name lookup in GstBin.
1379         Added _data_replace() function and _buffer_replace()
1380         Use finalize method to clean up clock.
1381         Fix refcounting on request pads.
1382         Fix pad schedule mode error.
1383         Some more object refcounting debug info,
1384
1385
1386 2005-05-04  Andy Wingo <wingo@pobox.com>
1387
1388         * check/Makefile.am:
1389         * docs/gst/tmpl/gstatomic.sgml:
1390         * docs/gst/tmpl/gstplugin.sgml:
1391         * gst/base/gstbasesink.c: (gst_basesink_activate):
1392         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1393         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1394         (gst_basesrc_query), (gst_basesrc_set_property),
1395         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1396         (gst_basesrc_activate):
1397         * gst/base/gstbasesrc.h:
1398         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1399         (gst_base_transform_src_activate):
1400         * gst/elements/gstelements.c:
1401         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1402         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1403         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1404         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1405         (gst_type_find_element_checkgetrange),
1406         (gst_type_find_element_activate):
1407         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1408         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1409         (gst_caps_load_thyself):
1410         * gst/gstelement.c: (gst_element_pads_activate),
1411         (gst_element_save_thyself), (gst_element_restore_thyself):
1412         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1413         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1414         * gst/gstpad.h:
1415         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1416         (gst_xml_parse_file), (gst_xml_parse_memory),
1417         (gst_xml_get_element), (gst_xml_make_element):
1418         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1419         (_file_index_id_save_xml), (gst_file_index_commit):
1420         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1421         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1422         (load_paths):
1423         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1424         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1425         * tools/gst-complete.c: (main):
1426         * tools/gst-compprep.c: (main):
1427         * tools/gst-inspect.c: (print_element_properties_info):
1428         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1429         * tools/gst-xmlinspect.c: (print_element_properties):
1430         GCC 4 fixen.
1431         
1432 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1433
1434         * gst/gstplugin.c: (gst_plugin_check_module),
1435         (gst_plugin_check_file), (gst_plugin_load_file):
1436             apply patch from #172526 to make register work on MacOSX
1437
1438 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1439
1440         * docs/gst/tmpl/gstconfig.sgml:
1441         * gst/gstconfig.h.in:
1442           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1443         * testsuite/debug/printf_extension.c: (main):
1444           Do not use GST_PTR_FORMAT on pointers to types with
1445           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1446         * testsuite/elements/property.h:
1447           use correct printf format
1448
1449 2005-05-02  Wim Taymans  <wim@fluendo.com>
1450
1451         * docs/design/draft-push-pull.txt:
1452         * docs/design/draft-query.txt:
1453         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1454         (gst_basesrc_start):
1455         Added draft for new query API.
1456         Added draft for better selecting scheduling methods.
1457         Make basesrc ignore length if the subclass does not support
1458         it.
1459
1460 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1461
1462         * gst/Makefile.am:
1463           possible fixes for automake-1.5 - _LIBADD is reserved
1464
1465 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1466
1467         * docs/faq/Makefile.am:
1468         * docs/manual/Makefile.am:
1469         * docs/manuals.mak:
1470         * docs/pwg/Makefile.am:
1471         * gst/Makefile.am:
1472           possible fixes for automake-1.5
1473
1474 2005-04-28  Wim Taymans  <wim@fluendo.com>
1475
1476         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1477         (gst_basesink_pad_getcaps), (gst_basesink_init),
1478         (gst_basesink_do_sync):
1479         * gst/gstclock.c: (gst_clock_entry_new):
1480         * gst/gstevent.c: (gst_event_discont_get_value):
1481         * gst/gstpipeline.c: (pipeline_bus_handler),
1482         (gst_pipeline_change_state):
1483         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1484         Better debugging of clocking info.
1485         Allow NULL values when getting discont values.
1486
1487 2005-04-27  Wim Taymans  <wim@fluendo.com>
1488
1489         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1490         * check/gst/gstpad.c: (gst_pad_suite):
1491         Increase timeout for checks.
1492
1493 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1494
1495         * check/Makefile.am:
1496           fix the broken rule for cleanup.  Apparently this rule is
1497           only needed on FC2, so maybe this warrants further autotool
1498           inspection.
1499
1500 2005-04-26  Wim Taymans  <wim@fluendo.com>
1501
1502         * gst/gsttrashstack.h:
1503         Ooohh. a nasty one! After having a failed pop() from the stack,
1504         it's possible that the stack is empty. In that case, don't
1505         follow the NULL pointer.
1506
1507 2005-04-25  Wim Taymans  <wim@fluendo.com>
1508
1509         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1510         (gst_pad_set_checkgetrange_function),
1511         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1512         (gst_pad_check_pull_range), (gst_pad_pull_range),
1513         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1514         (gst_pad_pause_task), (gst_pad_stop_task):
1515         * gst/gstplugin.c: (gst_plugin_load):
1516         * gst/gstplugin.h:
1517         Remove gst_library_load as it does more harm than good with
1518         the new g_module flags.
1519         Revert bogus caps template check in pad linking, pad caps
1520         are important when linking not the template, which is more
1521         general than the current caps.
1522
1523 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1524
1525         * gst/autoplug/.cvsignore:
1526         * gst/autoplug/Makefile.am:
1527         * gst/autoplug/gstsearchfuncs.c:
1528         * gst/autoplug/gstsearchfuncs.h:
1529         * gst/autoplug/gstspider.c:
1530         * gst/autoplug/gstspider.h:
1531         * gst/autoplug/gstspideridentity.c:
1532         * gst/autoplug/gstspideridentity.h:
1533         * gst/autoplug/spidertest.c:
1534           Die, spider, die.
1535
1536 2005-04-25  Wim Taymans  <wim@fluendo.com>
1537
1538         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1539         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1540         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1541         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1542         * gst/gstpad.h:
1543         Added stubs for unimplemented functions. 
1544
1545 2005-04-24  David Schleef  <ds@schleef.org>
1546
1547         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1548         please fix.
1549
1550 2005-04-24  David Schleef  <ds@schleef.org>
1551
1552         Convert everything from GstAtomicInt to g_atomic_int_*, and
1553         remove gstatomic.
1554         * gst/Makefile.am:
1555         * gst/gstatomic.c:
1556         * gst/gstatomic.h:
1557         * gst/gstatomic_impl.h:
1558         * gst/gstbuffer.c:
1559         * gst/gstcaps.c:
1560         * gst/gstcaps.h:
1561         * gst/gstclock.c:
1562         * gst/gstclock.h:
1563         * gst/gstdata.c:
1564         * gst/gstdata.h:
1565         * gst/gstdata_private.h:
1566         * gst/gstevent.c:
1567         * gst/gstinfo.c:
1568         * gst/gstinfo.h:
1569         * gst/gstmessage.c:
1570         * gst/gstobject.c:
1571         * gst/gstobject.h:
1572         * gst/gststructure.c:
1573         * gst/gststructure.h:
1574         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1575         * gst/gstutils.h:
1576
1577 2005-04-24  David Schleef  <ds@schleef.org>
1578
1579         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1580         make the regressions tests work.  Remove some code that is no
1581         longer true.
1582         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1583         Disable warning for pads without templates.
1584
1585 2005-04-24  David Schleef  <ds@schleef.org>
1586
1587         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1588         functions that handle filtered links.
1589         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1590         removed functions.
1591         * gst/gstutils.c: Fix/remove utility functions that handle
1592         filtered caps.
1593         * gst/gstutils.h:
1594         * gst/gstvalue.c: Add serialization/deserialization of caps
1595         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1596         requires fixing so that the filter caps notation creates
1597         a capsfilter element and sets the filter_caps property.  I
1598         think everyone probably wants to keep the shorthand notation.
1599         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1600         * docs/gst/tmpl/gstpad.sgml:
1601
1602         * gst/elements/gstelements.c: Register capsfilter element.
1603         * gst/Makefile.am: fix spacing
1604         * docs/random/ds/0.9-suggested-changes: random
1605
1606 2005-04-23  David Schleef  <ds@schleef.org>
1607
1608         * gst/elements/Makefile.am:
1609         * gst/elements/gstcapsfilter.c: New element that acts like an
1610         identity, but filters caps.  Will eventually replace filtered
1611         caps in pad linking.
1612         * gst/gstutils.c: (gst_element_create_all_pads): New function
1613         to create all the ALWAYS pads that are registered with an
1614         element class.  This functionality should eventually be
1615         merged in with GstElement initialization.
1616         * gst/gstutils.h:
1617         * testsuite/trigger/README: part of trigger test code that should
1618         have been checked in a long time ago.
1619
1620 2005-04-23  David Schleef  <ds@schleef.org>
1621
1622         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1623         needed with new versions of libtool (nobody will confirm this),
1624         and hard to carry around.
1625         * gst/autoplug/Makefile.am:
1626         * gst/base/Makefile.am:
1627         * gst/elements/Makefile.am:
1628         * gst/indexers/Makefile.am:
1629         * gst/schedulers/Makefile.am:
1630         * libs/gst/bytestream/Makefile.am:
1631         * libs/gst/control/Makefile.am:
1632         * libs/gst/dataprotocol/Makefile.am:
1633         * libs/gst/getbits/Makefile.am:
1634
1635 2005-04-21  Wim Taymans  <wim@fluendo.com>
1636
1637         * docs/design/draft-push-pull.txt:
1638         * docs/design/part-MT-refcounting.txt:
1639         * docs/design/part-TODO.txt:
1640         * docs/design/part-caps.txt:
1641         * docs/design/part-events.txt:
1642         * docs/design/part-gstbus.txt:
1643         * docs/design/part-gstpipeline.txt:
1644         * docs/design/part-messages.txt:
1645         * docs/design/part-push-pull.txt:
1646         * docs/design/part-query.txt:
1647         Some more docs.
1648
1649 2005-04-21  Wim Taymans  <wim@fluendo.com>
1650
1651         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1652         (gst_message_new), (gst_message_new_error),
1653         (gst_message_new_warning), (gst_message_new_tag),
1654         (gst_message_new_state_changed), (gst_message_new_application),
1655         (gst_message_get_structure):
1656         * gst/gstmessage.h:
1657         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1658         (gst_structure_copy_conditional):
1659         Use parent refcount in GstMessage to ensure GstStructure
1660         consistency.
1661         Cleaned up headers a bit.
1662         
1663
1664 2005-04-20  Wim Taymans  <wim@fluendo.com>
1665
1666         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1667         (gst_basesink_pad_getcaps), (gst_basesink_init),
1668         (gst_basesink_chain_unlocked):
1669         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1670         (gst_type_find_helper):
1671         * gst/elements/gsttypefindelement.c:
1672         (gst_type_find_element_have_type), (gst_type_find_element_init),
1673         (stop_typefinding), (gst_type_find_element_handle_event),
1674         (find_suggest), (gst_type_find_element_chain),
1675         (gst_type_find_element_checkgetrange),
1676         (gst_type_find_element_getrange), (do_typefind),
1677         (gst_type_find_element_activate):
1678         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1679         (gst_buffer_default_free), (gst_buffer_default_copy),
1680         (gst_buffer_set_caps):
1681         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1682         (gst_caps_replace):
1683         * gst/gstmessage.c: (gst_message_new),
1684         (gst_message_new_state_changed):
1685         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1686         (gst_pad_set_checkgetrange_function),
1687         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1688         (gst_pad_set_caps), (gst_pad_check_pull_range),
1689         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1690         * gst/gstpad.h:
1691         * gst/gsttypefind.c: (gst_type_find_register):
1692         Make gst_caps_replace() work like other _replace() functions.
1693         Use _caps_replace() where possible.
1694         Make sure _message_new() initialises its field.
1695         Add gst_static_pad_template_get_caps()
1696
1697
1698 2005-04-18  Andy Wingo  <wingo@pobox.com>
1699
1700         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1701         on the peer, not the pad. I think that was a typo. Pass an extra
1702         arg to see if random access is possible. Activate the pads as
1703         PULL_RANGE if possible.
1704
1705         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1706
1707         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1708         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1709         to PROP_....
1710
1711 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1712
1713         * docs/faq/using.xml:
1714           Add note on gstreamer-properties (#154996).
1715
1716 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1717
1718         * docs/random/bbb/optional-properties:
1719           Some analysis on optional properties.
1720
1721 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1722
1723         * docs/gst/tmpl/gstelementfactory.sgml:
1724         * gst/gstelement.h:
1725         * gst/gstelementfactory.c: (gst_element_factory_init),
1726         (gst_element_factory_cleanup), (gst_element_register),
1727         (__gst_element_factory_add_static_pad_template),
1728         (gst_element_factory_get_static_pad_templates),
1729         (gst_element_factory_can_src_caps),
1730         (gst_element_factory_can_sink_caps):
1731         * gst/registries/Makefile.am:
1732         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1733         (gst_xml_registry_class_init), (gst_xml_registry_init),
1734         (gst_xml_registry_new), (gst_xml_registry_set_property),
1735         (gst_xml_registry_get_property), (get_time), (make_dir),
1736         (gst_xml_registry_get_perms_func),
1737         (plugin_times_older_than_recurse), (plugin_times_older_than),
1738         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1739         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1740         (add_to_char_array), (read_string), (read_uint), (read_enum),
1741         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1742         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1743         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1744         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1745         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1746         (gst_xml_registry_rebuild):
1747         * gst/registries/gstlibxmlregistry.h:
1748         * tools/gst-compprep.c: (main):
1749         * tools/gst-inspect.c: (print_pad_templates_info):
1750         * tools/gst-xmlinspect.c: (print_element_info):
1751           Use libxml2 for registry parsing, use staticpadtemplates in
1752           elementfactories. Makes gst_init() +/- 10x faster.
1753
1754 2005-04-12  Wim Taymans  <wim@fluendo.com>
1755
1756         * gst/base/Makefile.am:
1757         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1758         (gst_basesink_pad_getcaps), (gst_basesink_init),
1759         (gst_basesink_event), (gst_basesink_change_state):
1760         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1761         (gst_basesrc_init), (gst_basesrc_query),
1762         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1763         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1764         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1765         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1766         (gst_basesrc_stop), (gst_basesrc_activate),
1767         (gst_basesrc_change_state):
1768         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1769         (helper_find_suggest), (gst_type_find_helper):
1770         * gst/base/gsttypefindhelper.h:
1771         * gst/elements/Makefile.am:
1772         * gst/elements/gstelements.c:
1773         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1774         (gst_fakesink_get_times), (gst_fakesink_event),
1775         (gst_fakesink_preroll), (gst_fakesink_render):
1776         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1777         (gst_fakesrc_init), (gst_fakesrc_event_handler),
1778         (gst_fakesrc_get_property), (gst_fakesrc_create),
1779         (gst_fakesrc_start), (gst_fakesrc_stop):
1780         * gst/elements/gstfakesrc.h:
1781         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
1782         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1783         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1784         (gst_filesrc_create_read), (gst_filesrc_create),
1785         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
1786         (gst_filesrc_start):
1787         * gst/elements/gsttypefindelement.c:
1788         (gst_type_find_element_have_type), (gst_type_find_element_init),
1789         (start_typefinding), (stop_typefinding), (push_buffer_store),
1790         (gst_type_find_element_handle_event),
1791         (gst_type_find_element_chain),
1792         (gst_type_find_element_checkgetrange),
1793         (gst_type_find_element_getrange), (do_typefind),
1794         (gst_type_find_element_activate),
1795         (gst_type_find_element_change_state):
1796         * gst/elements/gsttypefindelement.h:
1797         * gst/gstpipeline.c: (pipeline_bus_handler):
1798         Added typefind helper.
1799         Small preroll fix in the base sink.
1800         Disable typefind code in basesrc.
1801         Crude port of typefindelement.
1802         Fakesrc cleanups.
1803
1804
1805 2005-04-11  Wim Taymans  <wim@fluendo.com>
1806
1807         * check/gst/gstbus.c: (gstbus_suite):
1808         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
1809         * check/gstcheck.h:
1810           Fix up the timeout so that the test does not fail.
1811
1812 2005-04-06  Wim Taymans  <wim@fluendo.com>
1813
1814         * gst/base/README:
1815         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1816         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
1817         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1818         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1819         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1820         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1821         (gst_basesrc_stop), (gst_basesrc_activate),
1822         (gst_basesrc_change_state), (basesrc_find_peek),
1823         (basesrc_find_suggest), (gst_basesrc_type_find):
1824         * gst/base/gstbasesrc.h:
1825         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
1826         (gst_filesrc_class_init), (gst_filesrc_init),
1827         (gst_filesrc_finalize), (gst_filesrc_set_location),
1828         (gst_filesrc_set_property), (gst_filesrc_get_property),
1829         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1830         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1831         (gst_filesrc_create_read), (gst_filesrc_create),
1832         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
1833         * gst/elements/gstfilesrc.h:
1834         * gst/gstelement.c: (gst_element_get_state_func),
1835         (gst_element_lost_state), (gst_element_pads_activate):
1836         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1837         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1838         (gst_pad_pull_range):
1839         * gst/gstpad.h:
1840         More work on the generic source base class, implement seeking,
1841         query.
1842         Make filesrc extend the base source class.
1843         Added gst_pad_set_checkgetrange_function to GstPad.
1844
1845 2005-04-06  Andy Wingo  <wingo@pobox.com>
1846
1847         * pkgconfig/gstreamer-base.pc.in:
1848         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
1849
1850         * pkgconfig/Makefile.am:
1851         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
1852
1853 2005-04-04  Wim Taymans  <wim@fluendo.com>
1854
1855         * gst/base/Makefile.am:
1856         * gst/base/README:
1857         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1858         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
1859         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
1860         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
1861         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1862         (gst_basesrc_base_init), (gst_basesrc_class_init),
1863         (gst_basesrc_init), (gst_basesrc_get_formats),
1864         (gst_basesrc_get_query_types), (gst_basesrc_query),
1865         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
1866         (gst_basesrc_set_property), (gst_basesrc_get_property),
1867         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
1868         (gst_basesrc_loop), (gst_basesrc_activate),
1869         (gst_basesrc_change_state):
1870         * gst/base/gstbasesrc.h:
1871         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
1872         (gst_fakesrc_class_init), (gst_fakesrc_init),
1873         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
1874         (gst_fakesrc_get_property), (gst_fakesrc_create):
1875         * gst/elements/gstfakesrc.h:
1876         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
1877         (gst_filesrc_open_file), (gst_filesrc_loop),
1878         (gst_filesrc_activate), (filesrc_find_peek),
1879         (gst_filesrc_type_find):
1880         Made base source class, make fakesrc extend it.
1881         Add comments to basesink class.
1882         Some filesrc cleanup.
1883
1884 2005-03-31  David Schleef  <ds@schleef.org>
1885
1886         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
1887         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
1888         expected to link against libgstreamer.
1889         * gst/base/Makefile.am: link against libgstreamer
1890         * gst/elements/Makefile.am: same
1891
1892 2005-03-31  Andy Wingo  <wingo@pobox.com>
1893
1894         * tests/instantiate/Makefile.am:
1895         * tests/instantiate/caps.c: Add test to test speed of caps copy
1896         and free.
1897
1898         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
1899         GMemChunk to be fair.
1900
1901         * gst/gsttrashstack.h: Remove warning about using the fallback
1902         trash stack implementation, it's still faster than malloc.
1903
1904 2005-03-30  Andy Wingo  <wingo@pobox.com>
1905
1906         * tests/complexity.c: Add a copyright.
1907
1908 2005-03-31  Wim Taymans  <wim@fluendo.com>
1909
1910         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
1911         (gst_base_transform_class_init), (gst_base_transform_init),
1912         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
1913         (gst_base_transform_get_property),
1914         (gst_base_transform_sink_activate),
1915         (gst_base_transform_src_activate),
1916         (gst_base_transform_change_state):
1917         * gst/base/gstbasetransform.h:
1918         * gst/elements/gstidentity.c: (gst_identity_class_init),
1919         (gst_identity_event), (gst_identity_check_perfect),
1920         (gst_identity_transform), (gst_identity_start),
1921         (gst_identity_stop):
1922         Added start/stop methods to transform base class so subclasses 
1923         don't need to deal with state changes even.
1924
1925 2005-03-31  Wim Taymans  <wim@fluendo.com>
1926
1927         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
1928         (gst_event_new_discontinuous), (gst_event_discont_get_value):
1929         * gst/gstevent.h:
1930         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1931         (gst_pad_pull_range):
1932         Added rate to the discont event to prepare for variable speed
1933         and reverse playback.
1934
1935 2005-03-29  David Schleef  <ds@schleef.org>
1936
1937         * configure.ac:
1938         * testsuite/trigger/Makefile.am:
1939         * testsuite/trigger/trigger.c: A little example program to show
1940         how trigger-based elements can work.
1941
1942 2005-03-29  Wim Taymans  <wim@fluendo.com>
1943
1944         * gst/base/Makefile.am:
1945         * gst/base/README:
1946         * gst/base/gstbasesink.c: (gst_basesink_get_type),
1947         (gst_basesink_base_init), (gst_basesink_class_init),
1948         (gst_basesink_pad_getcaps), (gst_basesink_init),
1949         (gst_basesink_activate), (gst_basesink_change_state):
1950         * gst/base/gstbasesink.h:
1951         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
1952         (gst_base_transform_base_init), (gst_base_transform_finalize),
1953         (gst_base_transform_class_init), (gst_base_transform_init),
1954         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
1955         (gst_base_transform_event), (gst_base_transform_getrange),
1956         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
1957         (gst_base_transform_set_property),
1958         (gst_base_transform_get_property),
1959         (gst_base_transform_sink_activate),
1960         (gst_base_transform_src_activate),
1961         (gst_base_transform_change_state):
1962         * gst/base/gstbasetransform.h:
1963         * gst/elements/gstidentity.c: (gst_identity_finalize),
1964         (gst_identity_class_init), (gst_identity_init),
1965         (gst_identity_event), (gst_identity_check_perfect),
1966         (gst_identity_transform), (gst_identity_set_property),
1967         (gst_identity_get_property), (gst_identity_change_state):
1968         * gst/elements/gstidentity.h:
1969         * gst/gstelement.c: (gst_element_get_state_func),
1970         (gst_element_lost_state), (gst_element_pads_activate):
1971         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1972         (gst_pad_check_pull_range), (gst_pad_pull_range):
1973         * gst/gstpad.h:
1974         Simplify pad activation.
1975         Added function to check if pull_range can be performed.
1976         Error out when pulling inactive or flushing pads.
1977         Removed const from refcounted types as it does not make sense.
1978         Simplify pad templates in basesink
1979         Added base class for simple 1-to-1 transforms.
1980         Make identity subclass the base transform.
1981
1982 2005-03-29  Andy Wingo  <wingo@pobox.com>
1983
1984         * docs/libs/gstreamer-libs-overrides.txt: 
1985         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
1986         really don't understand what's going on, but like whatever. I want
1987         green buildbot!
1988
1989         * docs/gst/Makefile.am:
1990         * docs/libs/Makefile.am: Dist the overrides files.
1991
1992         * check/Makefile.am (clean-local): Remove .libs directories.
1993
1994         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
1995         elements to EXTRA_DIST, so po/ files are happy.
1996
1997         * po/POTFILES.in: Er, remove it here.
1998
1999         * po/POTFILES: Remove gstspider.c.
2000
2001         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2002
2003         * docs/libs/gstreamer-libs-docs.sgml: 
2004         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2005         bytestream.
2006
2007         * tests/complexity.c (main): Set the length of the preroll queue
2008         on the sinks to prevent a lockup.
2009
2010         * libs/gst/dataprotocol/Makefile.am: 
2011         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2012         the same as the one in check/gst-libs/gdp.c.
2013
2014         * po/, docs/gst/: Commit automatic changes to docs and po files.
2015
2016         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2017         the versioned libgstbase.
2018
2019         * check/Makefile.am: Depend on an unversioned gst-register, seems
2020         to make autoconf happier.
2021
2022         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2023
2024 2005-03-28  Wim Taymans  <wim@fluendo.com>
2025
2026         * configure.ac:
2027         * docs/design/part-gstelement.txt:
2028         * docs/design/part-negotiation.txt:
2029         * docs/design/part-preroll.txt:
2030         * docs/design/part-scheduling.txt:
2031         * docs/design/part-states.txt:
2032         * gst/Makefile.am:
2033         * gst/base/Makefile.am:
2034         * gst/base/README:
2035         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2036         (gst_basesink_base_init), (gst_basesink_class_init),
2037         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2038         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2039         (gst_basesink_set_pad_functions),
2040         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2041         (gst_basesink_set_property), (gst_basesink_get_property),
2042         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2043         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2044         (gst_basesink_preroll_queue_push),
2045         (gst_basesink_preroll_queue_empty),
2046         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2047         (gst_basesink_event), (gst_basesink_get_times),
2048         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2049         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2050         (gst_basesink_loop), (gst_basesink_activate),
2051         (gst_basesink_change_state):
2052         * gst/base/gstbasesink.h:
2053         * gst/elements/Makefile.am:
2054         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2055         (gst_fakesink_class_init), (gst_fakesink_init),
2056         (gst_fakesink_set_property), (gst_fakesink_get_property),
2057         (gst_fakesink_get_times), (gst_fakesink_event),
2058         (gst_fakesink_preroll), (gst_fakesink_render),
2059         (gst_fakesink_change_state):
2060         * gst/elements/gstfakesink.h:
2061         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2062         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2063         * gst/gstelement.c: (gst_element_add_pad),
2064         (gst_element_get_state_func), (gst_element_abort_state),
2065         (gst_element_commit_state), (gst_element_lost_state),
2066         (gst_element_set_state), (gst_element_pads_activate):
2067         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2068         * gst/gstpipeline.c: (gst_pipeline_send_event),
2069         (gst_pipeline_change_state):
2070         Added state change code.
2071         Added/updated docs.
2072         Added sink base class, make fakesink extend the base class.
2073         Small cleanups in GstPipeline.
2074
2075 2005-03-26  David Schleef  <ds@schleef.org>
2076
2077         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2078         is broken and should be implemented in a different library.
2079         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2080         * gst/gst.h: remove gstcpu.h
2081         * gst/gstcpu.c: remove
2082         * gst/gstcpu.h: remove
2083         * gst/Makefile.am.future: Remove this file.  It's ancient.
2084
2085 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2086
2087         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2088         (gst_bin_send_event):
2089           Add default event/set_manager handlers. The set_manager handler
2090           takes care that the manager is distributed over kids that were
2091           already in the bin before the manager was set. The event handler
2092           is a utility virtual function that sends the event over all sinks,
2093           so that gst_element_send_event (bin, event); has the expected
2094           behaviour.
2095         * gst/gstpad.c: (gst_pad_event_default):
2096           Re-install default event handling for discontinuities, so that
2097           seeking works without requiring hacks in applications or extra
2098           code in sinks.
2099         * gst/gstpipeline.c: (gst_pipeline_class_init),
2100         (gst_pipeline_send_event):
2101           Half hack, half utility: set a pipeline to PAUSED for seek events,
2102           since that is the only way we can guarantee a/v sync. Means that
2103           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2104           and it "just works".
2105
2106 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2107
2108         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2109           Lock/unlock mismatch.
2110
2111 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2112
2113         * docs/faq/gst-uninstalled:
2114           add gst-plugins-base
2115         * docs/gst/Makefile.am:
2116           don't error out until docs are fixed
2117         * docs/gst/gstreamer.types:
2118           remove thread
2119
2120 2005-03-22  Wim Taymans  <wim@fluendo.com>
2121
2122         * check/Makefile.am:
2123         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2124         * gst/gststructure.c: (gst_structure_set_valist),
2125         (gst_structure_copy_conditional):
2126         Activated more tests.
2127         Added message test.
2128         Added G_TYPE_POINTER to GstStructure.
2129         
2130
2131 2005-03-22  Wim Taymans  <wim@fluendo.com>
2132
2133         * docs/design/part-TODO.txt:
2134         * docs/design/part-events.txt:
2135         * docs/design/part-gstbin.txt:
2136         * docs/design/part-gstbus.txt:
2137         * docs/design/part-gstpipeline.txt:
2138         * docs/design/part-messages.txt:
2139         * gst/gstbus.c:
2140         * gst/gstmessage.c:
2141         Docs updates
2142
2143 2005-03-21  Wim Taymans  <wim@fluendo.com>
2144
2145         * gst/gstbus.c: (gst_bus_post):
2146         Fix copy-and-paste error.
2147
2148 2005-03-21  Wim Taymans  <wim@fluendo.com>
2149
2150         * check/Makefile.am:
2151         * gst/Makefile.am:
2152         * gst/elements/Makefile.am:
2153         * gst/elements/gstelements.c:
2154         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2155         (gst_fakesink_event), (gst_fakesink_chain):
2156         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2157         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2158         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2159         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2160         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2161         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2162         (gst_fakesrc_loop), (gst_fakesrc_activate),
2163         (gst_fakesrc_change_state):
2164         * gst/elements/gstfakesrc.h:
2165         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2166         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2167         (gst_filesrc_open_file), (gst_filesrc_loop),
2168         (gst_filesrc_activate), (gst_filesrc_change_state),
2169         (filesrc_find_peek), (filesrc_find_suggest),
2170         (gst_filesrc_type_find):
2171         * gst/elements/gstidentity.c: (gst_identity_finalize),
2172         (gst_identity_class_init), (gst_identity_init),
2173         (gst_identity_proxy_getcaps), (identity_queue_push),
2174         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2175         (gst_identity_getrange), (gst_identity_chain),
2176         (gst_identity_sink_loop), (gst_identity_src_loop),
2177         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2178         (gst_identity_set_property), (gst_identity_get_property),
2179         (gst_identity_change_state):
2180         * gst/elements/gstidentity.h:
2181         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2182         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2183         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2184         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2185         (gst_tee_sink_activate):
2186         * gst/elements/gsttee.h:
2187         * gst/gst.c: (gst_register_core_elements), (init_post):
2188         * gst/gst.h:
2189         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2190         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2191         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2192         (gst_bin_change_state):
2193         * gst/gstbin.h:
2194         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2195         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2196         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2197         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2198         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2199         (bus_watch_callback), (bus_watch_destroy),
2200         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2201         (poll_timeout), (gst_bus_poll):
2202         * gst/gstbus.h:
2203         * gst/gstcaps.h:
2204         * gst/gstdata.h:
2205         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2206         (gst_element_post_message), (gst_element_message_full),
2207         (gst_element_get_state_func), (gst_element_get_state),
2208         (gst_element_abort_state), (gst_element_commit_state),
2209         (gst_element_lost_state), (gst_element_set_state),
2210         (gst_element_pads_activate), (gst_element_change_state),
2211         (gst_element_dispose), (gst_element_set_manager_func),
2212         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2213         (gst_element_set_manager), (gst_element_get_manager),
2214         (gst_element_set_bus), (gst_element_get_bus),
2215         (gst_element_set_scheduler), (gst_element_get_scheduler):
2216         * gst/gstelement.h:
2217         * gst/gstevent.c: (gst_event_new_segment_seek),
2218         (gst_event_new_flush):
2219         * gst/gstevent.h:
2220         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2221         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2222         (gst_message_new_eos), (gst_message_new_error),
2223         (gst_message_new_warning), (gst_message_new_tag),
2224         (gst_message_new_state_changed), (gst_message_new_application),
2225         (gst_message_get_structure), (gst_message_parse_tag),
2226         (gst_message_parse_state_changed), (gst_message_parse_error),
2227         (gst_message_parse_warning):
2228         * gst/gstmessage.h:
2229         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2230         (gst_real_pad_set_property), (gst_pad_set_active),
2231         (gst_pad_is_active), (gst_pad_set_blocked_async),
2232         (gst_pad_set_blocked), (gst_pad_is_blocked),
2233         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2234         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2235         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2236         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2237         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2238         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2239         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2240         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2241         (gst_pad_set_caps), (gst_pad_configure_sink),
2242         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2243         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2244         (gst_real_pad_dispose), (gst_real_pad_finalize),
2245         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2246         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2247         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2248         * gst/gstpad.h:
2249         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2250         (pipeline_bus_handler), (gst_pipeline_change_state),
2251         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2252         * gst/gstpipeline.h:
2253         * gst/gstprobe.h:
2254         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2255         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2256         (gst_queue_link_src), (gst_queue_bufferalloc),
2257         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2258         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2259         (gst_queue_loop), (gst_queue_handle_src_event),
2260         (gst_queue_handle_src_query), (gst_queue_src_activate),
2261         (gst_queue_change_state):
2262         * gst/gstqueue.h:
2263         * gst/gstscheduler.c: (gst_scheduler_init),
2264         (gst_scheduler_dispose), (gst_scheduler_create_task),
2265         (gst_scheduler_factory_create):
2266         * gst/gstscheduler.h:
2267         * gst/gststructure.c: (gst_structure_get_type),
2268         (gst_structure_copy_conditional):
2269         * gst/gststructure.h:
2270         * gst/gsttaginterface.h:
2271         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2272         (gst_task_init), (gst_task_dispose), (gst_task_create),
2273         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2274         (gst_task_pause):
2275         * gst/gsttask.h:
2276         * gst/gstthread.c:
2277         * gst/gstthread.h:
2278         * gst/gsttypes.h:
2279         * gst/schedulers/Makefile.am:
2280         * gst/schedulers/cothreads_compat.h:
2281         * gst/schedulers/entryscheduler.c:
2282         * gst/schedulers/faircothreads.c:
2283         * gst/schedulers/faircothreads.h:
2284         * gst/schedulers/fairscheduler.c:
2285         * gst/schedulers/gstbasicscheduler.c:
2286         * gst/schedulers/gstoptimalscheduler.c:
2287         * gst/schedulers/gthread-cothreads.h:
2288         * gst/schedulers/threadscheduler.c:
2289         (gst_thread_scheduler_task_get_type),
2290         (gst_thread_scheduler_task_class_init),
2291         (gst_thread_scheduler_task_init),
2292         (gst_thread_scheduler_task_start),
2293         (gst_thread_scheduler_task_stop),
2294         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2295         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2296         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2297         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2298         (plugin_init):
2299         * libs/gst/Makefile.am:
2300         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2301         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2302         (gst_file_pad_parent_set):
2303         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2304         (gst_dp_event_from_packet):
2305         * tests/complexity.c: (main):
2306         * tests/mass_elements.c: (main):
2307         * testsuite/states/locked.c: (message_received), (main):
2308         * testsuite/states/parent.c: (main):
2309         * tools/gst-inspect.c: (print_element_flag_info),
2310         (print_implementation_info), (print_pad_info):
2311         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2312         (main):
2313         * tools/gst-md5sum.c: (event_loop), (main):
2314         * tools/gst-typefind.c: (main):
2315         * tools/gst-xmlinspect.c: (print_element_info):
2316         Next big merge.
2317         Added GstBus for mainloop integration.
2318         Added GstMessage for sending notifications on the bus.
2319         Added GstTask as an abstraction for pipeline entry points.
2320         Removed GstThread.
2321         Removed Schedulers.
2322         Simplified GstQueue for multithreaded core.
2323         Made _link threadsafe, removed old capsnego.
2324         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2325         Added pad blocking functions.
2326         Reworked scheduling functions in GstPad to prepare for
2327         scheduling updates soon.
2328         Moved events out of data stream.
2329         Simplified GstEvent types.
2330         Added return values to push/pull.
2331         Removed clocking from GstElement.
2332         Added prototypes for state change function for next merge.
2333         Removed iterate from bins and state change management.
2334         Fixed some elements, disabled others for now.
2335         Fixed -inspect and -launch.
2336         Added check for GstBus.
2337
2338 2005-03-10  Wim Taymans  <wim@fluendo.com>
2339
2340         * docs/design/part-MT-refcounting.txt:
2341         * docs/design/part-clocks.txt:
2342         * docs/design/part-gstelement.txt:
2343         * docs/design/part-gstobject.txt:
2344         * docs/design/part-standards.txt:
2345         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2346         (gst_bin_remove_func), (gst_bin_remove):
2347         * gst/gstbin.h:
2348         * gst/gstbuffer.c:
2349         * gst/gstcaps.h:
2350         * testsuite/clock/clock1.c: (main):
2351         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2352         (main):
2353         * testsuite/dlopen/loadgst.c: (do_test):
2354         * testsuite/refcounting/bin.c: (add_remove_test1),
2355         (add_remove_test2), (main):
2356         * testsuite/refcounting/element.c: (main):
2357         * testsuite/refcounting/element_pad.c: (main):
2358         * testsuite/refcounting/pad.c: (main):
2359         * tools/gst-launch.c: (sigint_handler_sighandler):
2360         * tools/gst-typefind.c: (main):
2361         Doc updates.
2362         Added doc about clock.
2363         removed gst_bin_iterate_recurse_up(), marked methods
2364         for removal.
2365         Fix more testsuites.
2366
2367 2005-03-09  Wim Taymans  <wim@fluendo.com>
2368
2369         * gst/gstpad.c: (gst_pad_get_direction),
2370         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2371         (gst_pad_collect_valist):
2372         * testsuite/bins/interface.c: (main):
2373         * testsuite/caps/audioscale.c: (test_caps):
2374         * testsuite/caps/caps.c: (test1), (test2), (test3):
2375         * testsuite/caps/deserialize.c: (main):
2376         * testsuite/caps/enumcaps.c: (main):
2377         * testsuite/caps/filtercaps.c: (main):
2378         * testsuite/caps/intersect2.c: (main):
2379         * testsuite/caps/random.c: (main):
2380         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2381         * testsuite/caps/sets.c: (check_caps):
2382         * testsuite/caps/simplify.c: (check_caps), (main):
2383         * testsuite/caps/subtract.c: (check_caps):
2384         Fix _pad_get_direction wrt ghostpads.
2385         Fix caps testsuite.
2386
2387 2005-03-09  Wim Taymans  <wim@fluendo.com>
2388
2389         * check/Makefile.am:
2390         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2391         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2392         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2393         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2394         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2395         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2396         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2397         (bin_element_is_sink), (gst_bin_iterate_sinks),
2398         (gst_bin_iterate_all_by_interface):
2399         * gst/gstbin.h:
2400         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2401         (gst_element_change_state), (gst_element_dispose),
2402         (gst_element_finalize), (gst_element_set_loop_function):
2403         * gst/gstelement.h:
2404         * gst/gstiterator.c: (find_custom_fold_func):
2405         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2406         (gst_pad_collectv), (gst_pad_collect_valist),
2407         (gst_pad_template_new):
2408         * gst/gstpipeline.c: (gst_pipeline_class_init),
2409         (gst_pipeline_dispose), (gst_pipeline_set_property),
2410         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2411         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2412         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2413         * gst/gstutils.h:
2414         * gst/schedulers/entryscheduler.c:
2415         * gst/schedulers/gstbasicscheduler.c:
2416         (gst_basic_scheduler_cothreaded_chain),
2417         (gst_basic_scheduler_chain_add_element):
2418         * testsuite/bins/interface.c: (main):
2419         Added GstBin test.
2420         Added GstSystemClock test.
2421         Implemented clock distribution code in GstBin.
2422         Implemented iterate sinks method for future use.
2423         Rearranged gstelement.h
2424         Fix GstIterator comparison bug.
2425         Moved some code to GstPipeline, mostly clocking related.
2426
2427 2005-03-09  Wim Taymans  <wim@fluendo.com>
2428
2429         * configure.ac:
2430         * gst/gst_private.h:
2431         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2432         (gst_bin_remove_func), (gst_bin_remove),
2433         (gst_bin_get_by_name_recurse_up):
2434         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2435         (gst_clock_id_compare_func), (gst_clock_id_wait),
2436         (gst_clock_id_wait_async), (gst_clock_init),
2437         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2438         * gst/gstelement.h:
2439         * gst/gstinfo.c: (_gst_debug_init):
2440         * gst/gstobject.h:
2441         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2442         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2443         * gst/gstpad.h:
2444         Bump version number, we're now 0.9.0
2445         Add future debugging category.
2446         Fix NULL _unref() in _get_by_name_recurse_up
2447         Rearrange gstpad.h.
2448         Update some docs.
2449
2450 2005-03-08  Wim Taymans  <wim@fluendo.com>
2451
2452         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2453         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2454         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2455         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2456         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2457         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2458         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2459         * gst/elements/gstidentity.c: (gst_identity_class_init):
2460         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2461         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2462         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2463         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2464         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2465         (gst_tee_link):
2466         * gst/gstelement.c: (gst_element_class_init),
2467         (gst_element_base_class_init), (gst_element_init),
2468         (gst_element_get_random_pad), (gst_element_wait_state_change),
2469         (gst_element_change_state), (gst_element_dispose),
2470         (gst_element_finalize), (gst_element_set_loop_function):
2471         * gst/gstelement.h:
2472         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2473         * gst/gstthread.c: (gst_thread_class_init),
2474         (gst_thread_release_children_locks), (gst_thread_change_state):
2475         * gst/schedulers/gstbasicscheduler.c:
2476         (gst_basic_scheduler_loopfunc_wrapper),
2477         (gst_basic_scheduler_chain_wrapper),
2478         (gst_basic_scheduler_src_wrapper),
2479         (gst_basic_scheduler_remove_element):
2480         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2481         Remove threadsafe properties. Fix elements because GObject
2482         complains when installing a property before declaring a
2483         set/get_property handler.
2484         Rearrange gstelement.h file, use STATE macros for state locks.
2485         Free mutexes in the finalize method instead of dispose.
2486
2487 2005-03-08  Wim Taymans  <wim@fluendo.com>
2488
2489         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2490         * gst/gstthread.c: (gst_thread_release_children_locks):
2491         Added parentage check.
2492         Fix build og GstThread again.
2493
2494 2005-03-08  Wim Taymans  <wim@fluendo.com>
2495
2496         * docs/design/part-MT-refcounting.txt:
2497         * docs/design/part-conventions.txt:
2498         * docs/design/part-gstobject.txt:
2499         * docs/design/part-relations.txt:
2500         * docs/design/part-standards.txt:
2501         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2502         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2503         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2504         (gst_bin_iterate_all_by_interface):
2505         * gst/gstbuffer.h:
2506         * gst/gstclock.h:
2507         * gst/gstelement.c: (gst_element_class_init),
2508         (gst_element_change_state), (gst_element_set_loop_function):
2509         * gst/gstelement.h:
2510         * gst/gstiterator.c:
2511         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2512         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2513         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2514         (gst_object_set_parent), (gst_object_unparent),
2515         (gst_object_check_uniqueness):
2516         * gst/gstobject.h:
2517         Docs updates, clean up some headers.
2518
2519 2005-03-07  Wim Taymans  <wim@fluendo.com>
2520
2521         * check/.cvsignore:
2522         * check/Makefile.am:
2523         * check/gst-libs/.cvsignore:
2524         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2525         * check/gst/.cvsignore:
2526         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2527         (START_TEST), (gstbus_suite), (main):
2528         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2529         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2530         (gst_data_suite), (main):
2531         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2532         (add_fold_func), (gstiterator_suite), (main):
2533         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2534         (thread_name_object), (thread_name_object_default),
2535         (gst_object_name_compare), (gst_object_suite), (main):
2536         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2537         (gst_pad_suite), (main):
2538         * check/gstcheck.c: (gst_check_log_message_func),
2539         (gst_check_log_critical_func), (gst_check_init):
2540         * check/gstcheck.h:
2541         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2542         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2543         Added checks.
2544
2545 2005-03-07  Wim Taymans  <wim@fluendo.com>
2546
2547         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2548         (gst_list_iterator_next), (gst_list_iterator_resync),
2549         (gst_list_iterator_free), (gst_iterator_new_list),
2550         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2551         (gst_iterator_free), (gst_iterator_push), (filter_next),
2552         (filter_resync), (filter_uninit), (filter_free),
2553         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2554         (gst_iterator_foreach), (find_custom_fold_func),
2555         (gst_iterator_find_custom):
2556         * gst/gstiterator.h:
2557         Added missing files.
2558
2559 2005-03-07  Wim Taymans  <wim@fluendo.com>
2560
2561         * Makefile.am:
2562         * configure.ac:
2563         * docs/design/part-MT-refcounting.txt:
2564         * docs/design/part-conventions.txt:
2565         * docs/design/part-gstobject.txt:
2566         * docs/design/part-relations.txt:
2567         * examples/mixer/mixer.c: (main):
2568         * examples/thread/thread.c: (eos), (main):
2569         * gst/Makefile.am:
2570         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2571         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2572         (gst_spider_plug_from_srcpad):
2573         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2574         (gst_spider_identity_change_state),
2575         (gst_spider_identity_sink_loop_type_finding):
2576         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2577         * gst/elements/gstidentity.c: (gst_identity_init):
2578         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2579         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2580         * gst/elements/gsttypefindelement.c: (free_entry):
2581         * gst/gst.c:
2582         * gst/gst.h:
2583         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2584         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2585         (gst_bin_set_index), (gst_bin_set_element_sched),
2586         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2587         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2588         (gst_bin_iterate_elements), (iterate_child_recurse),
2589         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2590         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2591         (compare_interface), (gst_bin_get_by_interface),
2592         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2593         * gst/gstbin.h:
2594         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2595         (gst_buffer_default_free), (gst_buffer_default_copy),
2596         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2597         (gst_buffer_create_sub):
2598         * gst/gstbuffer.h:
2599         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2600         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2601         (gst_caps_unref), (gst_static_caps_get),
2602         (gst_caps_remove_and_get_structure), (gst_caps_append),
2603         (gst_caps_append_structure), (gst_caps_remove_structure),
2604         (gst_caps_copy_nth), (gst_caps_set_simple),
2605         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2606         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2607         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2608         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2609         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2610         (gst_caps_structure_figure_out_union),
2611         (gst_caps_switch_structures), (gst_caps_do_simplify),
2612         (gst_caps_replace), (gst_caps_from_string),
2613         (gst_caps_copy_conditional):
2614         * gst/gstcaps.h:
2615         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2616         (_gst_clock_id_free), (gst_clock_id_unref),
2617         (gst_clock_id_compare_func), (gst_clock_id_wait),
2618         (gst_clock_id_wait_async), (gst_clock_class_init),
2619         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2620         (gst_clock_get_time), (gst_clock_set_time_adjust),
2621         (gst_clock_set_property), (gst_clock_get_property):
2622         * gst/gstclock.h:
2623         * gst/gstcompat.h:
2624         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2625         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2626         * gst/gstdata.h:
2627         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2628         (gst_element_requires_clock), (gst_element_provides_clock),
2629         (gst_element_set_clock), (gst_element_clock_wait),
2630         (gst_element_wait), (gst_element_set_time_delay),
2631         (gst_element_is_indexable), (gst_element_add_pad),
2632         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2633         (pad_compare_name), (gst_element_get_static_pad),
2634         (gst_element_request_pad), (gst_element_get_request_pad),
2635         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2636         (gst_element_class_get_pad_template_list),
2637         (gst_element_class_get_pad_template), (gst_element_error_func),
2638         (gst_element_get_random_pad), (gst_element_get_event_masks),
2639         (gst_element_send_event), (gst_element_seek),
2640         (gst_element_get_query_types), (gst_element_query),
2641         (gst_element_get_formats), (gst_element_convert),
2642         (gst_element_is_locked_state), (gst_element_set_locked_state),
2643         (gst_element_sync_state_with_parent), (gst_element_change_state),
2644         (gst_element_finalize), (gst_element_yield),
2645         (gst_element_interrupt), (gst_element_set_scheduler),
2646         (gst_element_get_scheduler), (gst_element_set_loop_function):
2647         * gst/gstelement.h:
2648         * gst/gstevent.h:
2649         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2650         (gst_format_get_by_nick), (gst_format_get_details),
2651         (gst_format_iterate_definitions):
2652         * gst/gstformat.h:
2653         * gst/gstindex.c: (gst_index_gtype_resolver):
2654         * gst/gstinfo.c:
2655         * gst/gstinfo.h:
2656         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2657         (gst_mem_chunk_free):
2658         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2659         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2660         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2661         (gst_object_dispatch_properties_changed),
2662         (gst_object_set_name_default), (gst_object_set_name),
2663         (gst_object_get_name), (gst_object_set_name_prefix),
2664         (gst_object_get_name_prefix), (gst_object_set_parent),
2665         (gst_object_get_parent), (gst_object_unparent),
2666         (gst_object_check_uniqueness), (gst_object_save_thyself),
2667         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2668         (gst_object_set_property), (gst_object_get_property),
2669         (gst_object_get_path_string):
2670         * gst/gstobject.h:
2671         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2672         (gst_real_pad_init), (gst_real_pad_get_property),
2673         (gst_pad_custom_new), (gst_pad_get_direction),
2674         (gst_pad_set_active), (gst_pad_is_active),
2675         (gst_pad_set_event_function), (gst_pad_is_linked),
2676         (gst_pad_link_free), (gst_pad_link_intersect),
2677         (gst_pad_link_fixate), (gst_pad_set_caps),
2678         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2679         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2680         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2681         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2682         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2683         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2684         (gst_pad_realize), (gst_pad_get_allowed_caps),
2685         (gst_real_pad_dispose), (gst_real_pad_finalize),
2686         (gst_pad_collectv), (gst_pad_collect_valist),
2687         (gst_pad_template_dispose), (gst_pad_template_new),
2688         (gst_pad_get_internal_links):
2689         * gst/gstpad.h:
2690         * gst/gstpipeline.c: (gst_pipeline_dispose),
2691         (gst_pipeline_change_state):
2692         * gst/gstpipeline.h:
2693         * gst/gstplugin.c:
2694         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2695         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2696         * gst/gstpluginfeature.h:
2697         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2698         * gst/gstquery.c: (_gst_query_type_initialize),
2699         (gst_query_type_register), (gst_query_type_get_by_nick),
2700         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2701         * gst/gstquery.h:
2702         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2703         * gst/gstscheduler.c: (gst_scheduler_add_element),
2704         (gst_scheduler_factory_create):
2705         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2706         (gst_structure_free), (gst_structure_set_name),
2707         (gst_structure_id_set_value), (gst_structure_set_value),
2708         (gst_structure_set_valist), (gst_structure_remove_field),
2709         (gst_structure_remove_fields),
2710         (gst_structure_remove_fields_valist),
2711         (gst_structure_remove_all_fields), (gst_structure_foreach),
2712         (gst_structure_map_in_place),
2713         (gst_caps_structure_fixate_field_nearest_int),
2714         (gst_caps_structure_fixate_field_nearest_double):
2715         * gst/gststructure.h:
2716         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2717         (gst_system_clock_init), (gst_system_clock_dispose),
2718         (gst_system_clock_async_thread),
2719         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2720         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2721         * gst/gstsystemclock.h:
2722         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2723         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2724         * gst/gsttaginterface.c:
2725         * gst/gstthread.c: (gst_thread_dispose),
2726         (gst_thread_release_children_locks), (gst_thread_change_state),
2727         (gst_thread_main_loop):
2728         * gst/gsttrashstack.h:
2729         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2730         * gst/gsttypes.h:
2731         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2732         (gst_element_request_pad), (gst_element_get_pad_from_template),
2733         (gst_element_request_compatible_pad),
2734         (gst_element_get_compatible_pad_filtered),
2735         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2736         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2737         (gst_element_link_many), (gst_element_link),
2738         (gst_element_link_pads), (gst_element_unlink_pads),
2739         (gst_element_unlink_many), (gst_element_unlink),
2740         (gst_pad_can_link_filtered), (gst_pad_can_link),
2741         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2742         (gst_object_default_error), (gst_bin_add_many),
2743         (gst_bin_remove_many), (gst_element_populate_std_props),
2744         (gst_element_class_install_std_props), (gst_buffer_merge),
2745         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2746         (link_fold_func), (gst_pad_proxy_setcaps):
2747         * gst/gstutils.h:
2748         * gst/gstvalue.c: (gst_value_deserialize_string):
2749         * gst/parse/grammar.y:
2750         * gst/schedulers/gstbasicscheduler.c:
2751         (gst_basic_scheduler_cothreaded_chain),
2752         (gst_basic_scheduler_chain_recursive_add),
2753         (gst_basic_scheduler_pad_link):
2754         * gst/schedulers/gstoptimalscheduler.c:
2755         (get_group_schedule_function),
2756         (gst_opt_scheduler_state_transition),
2757         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2758         * libs/gst/bytestream/bytestream.c:
2759         * libs/gst/dataprotocol/dataprotocol.c:
2760         (gst_dp_header_from_buffer):
2761         * po/nb.po:
2762         * po/ru.po:
2763         * tests/threadstate/threadstate2.c: (eos):
2764         * tools/gst-compprep.c: (main):
2765         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
2766         (print_pad_info), (print_children_info):
2767         * tools/gst-launch.c: (idle_func), (main):
2768         * tools/gst-md5sum.c: (idle_func), (main):
2769         * tools/gst-xmlinspect.c: (print_element_info):
2770         First THREADED backport attempt, focusing on adding locks and
2771         making sure the API is threadsafe. Needs more work. More docs
2772         follow this week.
2773
2774 2005-02-24  Andy Wingo  <wingo@pobox.com>
2775
2776         * tests/bench-complexity.scm:
2777         * tests/complexity.gnuplot: New files, good for running complexity
2778         benchmarks.
2779
2780         * tests/Makefile.am:
2781         * tests/complexity.c: New test, sets up N elements, at each level
2782         teeing into M streams per element. Eeeenteresting.
2783
2784         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
2785         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
2786         running bench-mass_elements.scm.
2787
2788         * tests/bench-mass_elements.scm: New script, runs mass_elements
2789         for various numbers of identities, outputting the results to a
2790         file. Requires guile 1.6. Just for testing.
2791
2792 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2793
2794         * gst/schedulers/fairscheduler.c:
2795           compile with debug disabled
2796
2797 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2798
2799         * configure.ac:
2800           hunting season on 0.9 is now OPEN
2801
2802 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2803
2804         * docs/libs/tmpl/gstcontrol.sgml:
2805         * docs/libs/tmpl/gstdparam.sgml:
2806         * docs/libs/tmpl/gstdplinint.sgml:
2807         * docs/libs/tmpl/gstdpman.sgml:
2808         * docs/libs/tmpl/gstdpsmooth.sgml:
2809         * docs/libs/tmpl/gstunitconvert.sgml:
2810           more docs for the state of dparams
2811
2812 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2813
2814         * gst/gstelementfactory.c: (gst_element_factory_create):
2815         * gst/gstobject.c: (gst_object_init),
2816         (gst_object_set_name_default), (gst_object_set_name):
2817           name objects by default, not in gst_element_factory_create. Allows
2818           using elements created with g_object_new. (fixes #167283)
2819
2820 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
2821
2822         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
2823           make the time that debugging functions print relative to when
2824           gst_init was called
2825
2826 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
2827
2828         * gst/gsttaginterface.c:
2829           Fix inline docs: tag setter vararg functions are NULL-terminated,
2830           GST_TAG_INVALID doesn't exist any more.
2831
2832 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
2833
2834         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
2835         Allocate the 1 byte more memory that was forgotten!!!!!
2836         fixes memory corruption on 64bit platforms
2837
2838 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
2839
2840         * docs/pwg/building-pads.xml:
2841         * docs/pwg/intro-basics.xml:
2842           fixed a few typos, relabeled introductionary list of types
2843         * docs/random/ensonic/dparams.txt:
2844           more notes abut dparam changes
2845         * libs/gst/control/dparam.c: (gst_dparam_attach):
2846         * libs/gst/control/dparammanager.c:
2847         * libs/gst/control/dparammanager.h:
2848           - many comments and notes on dparam implementation
2849           - new dparams are were not initialized to the default value
2850             from param spec
2851
2852 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
2853
2854         submitted by: Peter Astakhov
2855
2856         * po/LINGUAS:
2857         * po/ru.po:
2858           adding Russian translation
2859
2860 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
2861
2862         * configure.ac:
2863         * docs/gst/Makefile.am:
2864         * docs/libs/Makefile.am:
2865           make sure popt is added to gtk-doc flags.  Fixes #147782.
2866
2867 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
2868
2869         * docs/faq/using.xml:
2870           Fix typo in FAQ (artssink => artsdsink)
2871
2872 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2873
2874         * tools/gst-launch.1.in:
2875           Fix typo (#166699).
2876
2877 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
2878
2879         * docs/faq/using.xml:
2880           Add -v argument to fakesrc/fakesink gst-launch line,
2881           so that the promised output will actually show up.
2882
2883 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2884
2885         * gst/gstthread.c: (gst_thread_change_state):
2886           Implement state-change error handling (#166073).
2887
2888 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2889
2890         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2891           Release interrupt after handling (#166250).
2892
2893 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2894
2895         * configure.ac:
2896           back to HEAD
2897
2898 === release 0.8.9 ===
2899
2900 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2901
2902         * NEWS:
2903         * RELEASE:
2904         * configure.ac:
2905           releasing 0.8.9, "Like Eating Glass"
2906
2907 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
2908
2909         submitted by: Clytie Siddall
2910
2911         * po/vi.po: Added Vietnamese translation
2912
2913 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
2914
2915         patch by: Tim Philipp-Müller
2916
2917         * configure.ac:
2918         * gst/gstpad.c:
2919           unref data when probe function returns FALSE.  Fixes #166362
2920
2921 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2922
2923         * gst/gst.c: (gst_init_get_popt_table):
2924           Fix typo (#166269).
2925
2926 2005-02-04  Andy Wingo  <wingo@pobox.com>
2927
2928         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
2929         the debugging on whether the caps are compatible.
2930
2931 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2932
2933         * docs/manual/basics-elements.xml:
2934           Fix two typos.
2935
2936 2005-02-02  Wim Taymans  <wim@fluendo.com>
2937
2938         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
2939         (schedule_chain), (get_invalid_call), (chain_invalid_call),
2940         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
2941         Remove some FIXMEs after analysing and commenting why they
2942         are not issues.
2943
2944 2005-02-02  Wim Taymans  <wim@fluendo.com>
2945
2946         * gst/schedulers/gstoptimalscheduler.c:
2947         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
2948         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
2949         (get_invalid_call), (chain_invalid_call),
2950         (get_group_schedule_function), (loop_group_schedule_function),
2951         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
2952         (gst_opt_scheduler_state_transition),
2953         (gst_opt_scheduler_add_element),
2954         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
2955         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
2956         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
2957         (gst_opt_scheduler_show):
2958         Added lock to protect scheduler data structures.
2959
2960 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2961
2962         * testsuite/threads/threadi.c: (cb_data):
2963           Fix buglet in test.
2964
2965 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2966
2967         * testsuite/threads/Makefile.am:
2968         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
2969           On Wim's request, split the test in three separately-compiled
2970           tests that each test a very specific bug. Two of them still fail,
2971           will create bugs for those. threadi.c indicates why they fail.
2972
2973 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2974
2975         * gst/schedulers/gstoptimalscheduler.c:
2976         (get_group_schedule_function):
2977           Try to work with the threading mess that queue_link is.
2978
2979 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2980
2981         * gst/gstbin.c: (gst_bin_remove_func):
2982           Explicitely make an element release locks in a group when being
2983           remove from a bin.
2984         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
2985           If there's no scheduler, always return immediately (similar to
2986           gst_element_interrupt).
2987
2988 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2989
2990         * gst/gstbin.c: (gst_bin_child_state_change_func):
2991           Remove a piece of code that could never be reached.
2992         * docs/gst/gstreamer-sections.txt:
2993         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
2994         (gst_pad_call_get_function):
2995         * gst/gstpad.h:
2996         * testsuite/pad/Makefile.am:
2997           Fix #150546, enable tests.
2998
2999 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3000
3001         * docs/pwg/advanced-types.xml:
3002           Fix description for buffer-frames=0.
3003         * docs/gst/tmpl/gstbin.sgml:
3004         * gst/gstbin.c: (gst_bin_child_state_change_func),
3005         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3006         * gst/gstbin.h:
3007         * testsuite/threads/Makefile.am:
3008         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3009         (cb_state), (cb_play), (main):
3010           Fix non-recursive state changes to *really* change the state
3011           of the object, and not just call parent_class->state_change.
3012           Fix a lot of lockups caused by this. Fixes #132775. Add test
3013           for the problem. Also enable test to show #142588 (fixed).
3014         * gst/gstthread.c: (gst_thread_change_state),
3015         (gst_thread_child_state_change):
3016           Don't exit the thread if we go to NULL and are inside thread
3017           context. Instead, return control to the main thread context
3018           and exit from there.
3019         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3020           Don't unset virtual functions, since those may still be used.
3021           That's not necessarily correct, but suffices for now.
3022         * configure.ac:
3023         * testsuite/Makefile.am:
3024         * testsuite/pad/Makefile.am:
3025         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3026         (gst_test_sink_base_init), (gst_test_sink_chain),
3027         (gst_test_sink_init), (main):
3028         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3029         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3030         (main):
3031         * testsuite/pad/link.c: (gst_test_element_class_init),
3032         (gst_test_element_base_init), (gst_test_src_get),
3033         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3034         (gst_test_filter_loop), (gst_test_filter_init),
3035         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3036         (cb_error), (main):
3037           Add tests to show #150546. Pass, but should fail (currently
3038           disabled from the testsuite).
3039         * gst/gstscheduler.c: (gst_scheduler_dispose):
3040           Dereference child schedulers on dispose (#94464).
3041         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3042           Fix typo.
3043         * testsuite/threads/thread.c: (main):
3044           Add more debug.
3045
3046 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3047
3048         * gst/gstpad.c: (gst_pad_push):
3049           Oops, revert previous commit, broke testsuite...
3050
3051 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3052
3053         * gst/gstpad.c: (gst_pad_push):
3054           Add check that the pad on which the push is performed is not a
3055           get-based pad (#150546).
3056
3057 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3058
3059         * gst/elements/gsttypefindelement.c:
3060         (gst_type_find_element_handle_event):
3061           Fix buffer pushing if stream EOSes during typefinding.
3062
3063 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3064
3065         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3066
3067         * gst/gstvalue.c: (gst_string_wrap):
3068           Allow NULL-strings as argument (#165365).
3069
3070 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3071
3072         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3073
3074         * gst/schedulers/faircothreads.c:
3075         (gst_fair_scheduler_cothread_queue_show):
3076           Fix build without debug enabled.
3077
3078 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3079
3080         * docs/gst/gstreamer-sections.txt:
3081         * docs/libs/gstreamer-libs-docs.sgml:
3082         * docs/libs/gstreamer-libs-sections.txt:
3083         * docs/libs/tmpl/gstcontrol.sgml:
3084         * docs/libs/tmpl/gstdparam.sgml:
3085         * docs/libs/tmpl/gstdplinint.sgml:
3086         * docs/libs/tmpl/gstdpman.sgml:
3087         * docs/libs/tmpl/gstdpsmooth.sgml:
3088         * docs/libs/tmpl/gstputbits.sgml:
3089         * docs/libs/tmpl/gstunitconvert.sgml:
3090         * libs/gst/control/dparam.c:
3091         * libs/gst/control/dparam.h:
3092         * libs/gst/control/dparammanager.c:
3093         (gst_dpman_add_required_dparam_callback),
3094         (gst_dpman_add_required_dparam_direct),
3095         (gst_dpman_add_required_dparam_array),
3096         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3097         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3098         (gst_dpman_get_manager)
3099           restructured DParam docs
3100
3101 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3102
3103         * gst-element-check.m4:
3104           Only check for gst-inspect if we haven't already
3105           found it in previous element check runs
3106
3107 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3108
3109         * docs/gst/Makefile.am:
3110         * docs/libs/Makefile.am:
3111           fixed install rules to treat style.css as optional
3112
3113 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3114
3115         * docs/gst/Makefile.am:
3116         * docs/libs/Makefile.am:
3117           install style.css along with docs
3118         * docs/gst/tmpl/gstbin.sgml:
3119         * docs/gst/tmpl/gstclock.sgml:
3120         * docs/gst/tmpl/gstdata.sgml:
3121         * docs/gst/tmpl/gstelement.sgml:
3122         * gst/gstbin.h:
3123         * gst/gstelement.c: (gst_element_class_init):
3124         * gst/gstelement.h:
3125           fixing incomplete docs
3126
3127 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3128
3129         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3130           Don't unref seek event twice when fflush() fails
3131           
3132 2005-01-22  David Schleef  <ds@schleef.org>
3133
3134         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3135
3136 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3137
3138         * docs/gst/Makefile.am:
3139         * docs/libs/Makefile.am:
3140           added params for deprecation guards
3141         * gst/gst.c:
3142         * gst/gst.h:
3143         * gst/gsterror.c: (_gst_resource_errors_init),
3144         (_gst_stream_errors_init):
3145         * gst/gsterror.h:
3146           documented some more enums
3147
3148 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3149         * gst/autoplug/gstspideridentity.c:
3150         Cosmetic fix - spider_find_peek should be static
3151         * gst/parse/parse.l:
3152         Applying fix for #164261
3153
3154 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3155
3156         * docs/gst/gstreamer-sections.txt:
3157         * docs/gst/tmpl/gstplugin.sgml:
3158         * docs/libs/gstreamer-libs-sections.txt:
3159         * docs/libs/tmpl/gstcontrol.sgml:
3160         * gst/gstbuffer.h:
3161         * gst/gsttag.h:
3162         * gst/gstvalue.c:
3163           added docs for the TAG defines
3164
3165 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3166
3167         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3168           Only unref entry if there is an entry.
3169
3170 2005-01-17  Wim Taymans  <wim@fluendo.com>
3171
3172         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3173         (remove_from_group), (schedule_group), (normalize_group),
3174         (gst_opt_scheduler_iterate):
3175         Also ref/unref decoupled elements before iterating the
3176         group since they are not added to the list of elements.
3177
3178 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3179
3180         * docs/manual/highlevel-components.xml:
3181           Add subtitle/streamselection as new features to playbin.
3182
3183 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3184
3185         * docs/manual/manual.xml:
3186           Re-enable dataaccess docs (oops).
3187
3188 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3189
3190         * docs/pwg/advanced-types.xml:
3191         * docs/random/mimetypes:
3192           Add documentation on libsndfile types (#163309), by Steve Baker
3193           <steve@stevebaker.org>.
3194         * gst/gstelement.c: (gst_element_release_request_pad):
3195           If an element has no explicit function, just remove the pad.
3196
3197 2005-01-17  Luca Ognibene  <luogni@tin.it>
3198
3199         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3200
3201         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3202           Fix memleak (#163801).
3203
3204 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3205
3206         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3207           I think this is actually more correct...
3208
3209 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3210
3211         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3212           Another workaround for memory access while destroyed in callback.
3213           Please, someone with refcount knowledge, have a look at this.
3214
3215 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3216
3217         * docs/faq/faq.xml:
3218         * docs/faq/legal.xml:
3219           move the legal Q&A here
3220
3221 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3222
3223         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3224         (gst_tee_request_new_pad):
3225           Fix negotiation.
3226
3227 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3228
3229         * docs/random/omega/caps2:
3230         * testsuite/caps/caps_strings:
3231           replace framerate aproximations by their real value
3232           (24000/1001, 30000/1001, 60000/1001)
3233           Partially fixes bug #164049
3234
3235 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3236
3237         * docs/gst/Makefile.am:
3238           don't fail on the stupid GstPoptOption
3239
3240 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3241
3242         * gst/gstpad.h:
3243         * gst/gstprobe.c:
3244           allow probes to work on ghost pads by realizing the pad
3245           probe debugging
3246
3247 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3248
3249         * docs/gst/gstreamer-sections.txt:
3250         * docs/gst/tmpl/gstpad.sgml:
3251         * gst/gstpad.c: (gst_pad_set_active_recursive):
3252         * gst/gstpad.h:
3253           Add gst_pad_set_active_recursive().
3254
3255 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3256
3257         * docs/random/release:
3258           updates
3259         * gst/gst_private.h:
3260         * gst/gstinfo.c:
3261         * gst/gstobject.c:
3262           move deep_notify logging to a new category
3263         * gst/gstprobe.c:
3264         * gst/gstprobe.h:
3265           add stuff so bindings can wrap probes
3266
3267 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3268
3269         * gst/gstplugin.c: (gst_plugin_load):
3270           Fix plugin loading if plugin/lib was already loaded. Fixes
3271           #163383
3272
3273 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3274
3275         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3276
3277         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3278           Protect plugin loading by a mutex so it's threadsafe. Fixes
3279           #163234.
3280
3281 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3282
3283         * gst/gstevent.c: (_gst_event_copy):
3284           Reference source object when copying events, since it'll be
3285           dereferenced on event dereferencing as well.
3286
3287 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3288
3289         * docs/gst/gstreamer-sections.txt:
3290         * docs/gst/tmpl/gstevent.sgml:
3291         * gst/gstevent.c: (gst_event_new_filler_stamped),
3292         (gst_event_filler_get_duration):
3293         * gst/gstevent.h:
3294           Add two new functions for filler events (which are used to
3295           synchronize streams if one of them is not having any data
3296           for a while) without interrupting the actual data-stream.
3297           Basically a no-op.
3298         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3299         (gst_queue_link_sink), (gst_queue_link_src),
3300         (gst_queue_change_state):
3301           Allow for renegotiation while filled. Required for stream
3302           switching while playing.
3303
3304 2005-01-08  Benjamin Otte  <otte@gnome.org>
3305
3306         * gst/gstelement.c: (gst_element_link_many):
3307           fix up g_return_if_fail's
3308         * po/LINGUAS:
3309         * po/de.po:
3310           add German translation, that was somehow not included
3311
3312 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3313
3314         * docs/random/mimetypes:
3315           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3316           do not add them to riff-lib as they are not common
3317
3318 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3319
3320         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3321           Check for existence of probe after performing the probe before
3322           re-accessing it to prevent segfaults caused by removal of the
3323           probe in the callback.
3324
3325 2005-01-05  David Schleef  <ds@schleef.org>
3326
3327         * testsuite/registry/Makefile.am:
3328         * testsuite/registry/gst-print-formats.c:
3329         (print_pad_templates_info), (print_element_list),
3330         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3331         (g_list_uniqify), (get_pad_templates_info),
3332         (get_element_mime_list), (print_mime_list), (main): A little
3333         program that looks through the registry to find elements of
3334         a given type.  Not particularly interesting as a test, except
3335         that there's no other test covering the same area.
3336
3337 2005-01-05  David Schleef  <ds@schleef.org>
3338
3339         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3340         (fault_handler_sigaction), (fault_spin),
3341         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3342         in signal.h-type signal handlers by not calling forbidden functions,
3343         including gst_element_set_state().
3344
3345 2005-01-05  David Schleef  <ds@schleef.org>
3346
3347         * gst/gstvalue.h: Mark _gst_reserved[] as private
3348
3349 2005-01-05  David Schleef  <ds@schleef.org>
3350
3351         * gst/gstvalue.c: Fix doc build problem.
3352
3353 2005-01-05  David Schleef  <ds@schleef.org>
3354
3355         * gst/gstvalue.c: Add some documentation
3356
3357 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3358
3359         * docs/README:
3360           another shell oneliner for empty return value docs
3361         * gst/gstcaps.c:
3362         * gst/gstvalue.c:
3363         * libs/gst/control/dparam.c:
3364           more doc fixes (parameters and return values)
3365
3366 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3367
3368         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3369
3370         * gst/gstregistry.h:
3371         * gst/registries/gstxmlregistry.c:
3372           Fix macro's for Mingw (fixes #162276).
3373
3374 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3375
3376         * docs/README:
3377           quick shell oneliner to find undocumented members
3378         * docs/gst/tmpl/gstplugin.sgml:
3379         * docs/gst/tmpl/gstscheduler.sgml:
3380         * docs/gst/tmpl/gstthread.sgml:
3381           more enumtypes cleanup
3382         * gst/gsterror.h:
3383           activated documentation comments, now someone needs to document
3384           the enums :(
3385
3386 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3387
3388         * docs/manual/manual.xml:
3389           Add dataaccess part (doh!).
3390
3391 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3392
3393         * docs/manual/advanced-autoplugging.xml:
3394           Fix typo (intiate -> initiate).
3395
3396 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3397
3398         * docs/random/bbb/streamselection:
3399           Add some notes on how to handle multi-subtitle/-audio streams.
3400
3401 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3402
3403         * docs/gst/gstreamer-docs.sgml:
3404         * docs/gst/gstreamer-sections.txt:
3405         * docs/gst/tmpl/gstenumtypes.sgml:
3406         * docs/gst/tmpl/gsterror.sgml:
3407         * docs/gst/tmpl/gstevent.sgml:
3408         * docs/gst/tmpl/gstpad.sgml:
3409         * docs/gst/tmpl/gstpadtemplate.sgml:
3410         * docs/gst/tmpl/gstthread.sgml:
3411           removed gstenumtypes section from docs and put all the enums into
3412           their sections
3413
3414 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3415
3416         * gst/gstplugin.c:
3417           document gst_library_load a bit more (riff special case + return
3418           value if already loaded)
3419         * testsuite/bytestream/filepadsink.c:
3420           plugin name is 'gstbytestream', not 'bytestream'
3421
3422 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3423
3424         * docs/random/bbb/subtitles:
3425           Add some first mind rumblings on proper subtitle support.
3426
3427 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3428
3429         * po/ca.po:
3430         * po/sv.po:
3431           updated translations
3432
3433 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3434
3435         * docs/manual/advanced-dataaccess.xml:
3436           Add section on how to use fakesrc/fakesink/identity in your
3437           application, plus section on how to embed plugins. Also mention
3438           probes.
3439         * docs/manual/appendix-checklist.xml:
3440         * docs/manual/appendix-debugging.xml:
3441         * docs/manual/appendix-gnome.xml:
3442         * docs/manual/appendix-integration.xml:
3443           Debug -> checklist, GNOME -> integration, add sections on Linux,
3444           KDE integration and add other things useful for application
3445           development.
3446         * docs/manual/manual.xml:
3447           Remove some fixmes, update some file pointers.
3448         * docs/pwg/appendix-checklist.xml:
3449           Fix typo.
3450         * docs/pwg/building-boiler.xml:
3451           Remove ugly header and add commented fixme.
3452         * docs/pwg/pwg.xml:
3453           Add fixme.
3454         * examples/manual/Makefile.am:
3455           Add example for added docs.
3456
3457 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3458
3459         * configure.ac:
3460           back to HEAD
3461
3462 === release 0.8.8 ===
3463
3464 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3465
3466         * NEWS:
3467         * RELEASE:
3468         * configure.ac:
3469           Releasing 0.8.8, "I'll Take Care Of You"
3470
3471 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3472
3473         * configure.ac:
3474           second prerelease
3475
3476 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3477
3478         patch by: Wim Taymans
3479
3480         * gst/gstbin.c:
3481           Fix for #159852 - make iterate emission threadsafe
3482
3483 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3484
3485         * docs/faq/cvs.xml:
3486           notes about new fdo account request
3487
3488 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3489
3490         * docs/gst/gstreamer-docs.sgml:
3491         * docs/gst/tmpl/gstenumtypes.sgml:
3492         * docs/gst/tmpl/gstplugin.sgml:
3493         * docs/libs/gstreamer-libs-docs.sgml:
3494           Added missing short docs. Added ids for navigation.
3495
3496 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3497
3498         * docs/manual/advanced-autoplugging.xml:
3499         * docs/manual/advanced-schedulers.xml:
3500         * docs/manual/advanced-threads.xml:
3501           Rewrites. Remove cothreads, go a bit into opt specifically,
3502           document threads and their gotchas, and do some technical stuff
3503           on autoplugging plus add some working examples. Fixes #157395.
3504         * examples/manual/Makefile.am:
3505           Add typefind/autoplugger example (one that actually works).
3506           Remove queue example since it's a duplicate of the thread one.
3507
3508 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3509
3510         * gst/gstvalue.c: (gst_value_deserialize_string):
3511           use deprecated g_value_set_string_take_ownership to keep compatible
3512           with glib 2.2
3513
3514 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3515
3516         * gst/gstvalue.c: (gst_value_deserialize_string):
3517           revert last patch, only dom a g_utf8_validate now before accepting
3518           the string - caps parsing strips " from strings so we can't rely on
3519           them
3520         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3521           disable a test that tested the above and comment it
3522
3523 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3524
3525         Patch reviewed by David Schleef  <ds@schleef.org>
3526
3527         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3528         bug #153882)
3529         * win32/gstenumtypes.h: same
3530
3531 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3532
3533         * gst/gstpad.c: (gst_pad_query):
3534           Do query on realized pad, similar to how convert/send_event handle
3535           this. Also makes sense, since this pad belongs to the function to
3536           which this query will be sent. Fixes #158163.
3537
3538 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3539
3540         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3541
3542 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3543
3544         * docs/faq/general.xml: fix pipeline to actually work
3545
3546 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3547
3548         * gst/gstvalue.c: (gst_value_deserialize_string):
3549           check that a simple string that gets deserialized does not contain
3550           invalid characters
3551         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3552           remove a test that tested a wring behaviour
3553
3554 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3555
3556         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3557
3558         * docs/manual/intro-motivation.xml:
3559           Fix typos.
3560
3561 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3562
3563         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3564
3565         * docs/gst/tmpl/gstprobe.sgml:
3566           Fix documentation of probe callback - it is supposed to return
3567           FALSE, not TRUE, to remove data from the stream (#159087).
3568
3569 2004-12-16  Daniel Gazard  <dany42@free.fr>
3570
3571         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3572
3573         * gst/gstelementfactory.c: (gst_element_factory_create):
3574           Fix compile failure if compiling without libxml2 support (#149936).
3575
3576 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3577
3578         * docs/manual/advanced-autoplugging.xml:
3579         * docs/manual/highlevel-components.xml:
3580           Move spider from autoplugging to components. Autoplugging is for
3581           internals, not for solutions. ;-).
3582
3583 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3584
3585         * docs/random/ds/0.9-suggested-changes:
3586           Make note on device/location/uri property names.
3587
3588 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3589
3590         * docs/manual/advanced-autoplugging.xml:
3591         * docs/manual/advanced-clocks.xml:
3592         * docs/manual/advanced-interfaces.xml:
3593         * docs/manual/advanced-metadata.xml:
3594         * docs/manual/advanced-position.xml:
3595         * docs/manual/advanced-schedulers.xml:
3596         * docs/manual/advanced-threads.xml:
3597         * docs/manual/appendix-gnome.xml:
3598         * docs/manual/appendix-programs.xml:
3599         * docs/manual/appendix-quotes.xml:
3600         * docs/manual/autoplugging.xml:
3601         * docs/manual/basics-bins.xml:
3602         * docs/manual/basics-data.xml:
3603         * docs/manual/basics-elements.xml:
3604         * docs/manual/basics-helloworld.xml:
3605         * docs/manual/basics-init.xml:
3606         * docs/manual/basics-pads.xml:
3607         * docs/manual/basics-plugins.xml:
3608         * docs/manual/bins-api.xml:
3609         * docs/manual/bins.xml:
3610         * docs/manual/buffers-api.xml:
3611         * docs/manual/buffers.xml:
3612         * docs/manual/clocks.xml:
3613         * docs/manual/components.xml:
3614         * docs/manual/cothreads.xml:
3615         * docs/manual/debugging.xml:
3616         * docs/manual/dparams-app.xml:
3617         * docs/manual/dynamic.xml:
3618         * docs/manual/elements-api.xml:
3619         * docs/manual/elements.xml:
3620         * docs/manual/factories.xml:
3621         * docs/manual/gnome.xml:
3622         * docs/manual/goals.xml:
3623         * docs/manual/helloworld.xml:
3624         * docs/manual/helloworld2.xml:
3625         * docs/manual/highlevel-components.xml:
3626         * docs/manual/highlevel-xml.xml:
3627         * docs/manual/init-api.xml:
3628         * docs/manual/intro-basics.xml:
3629         * docs/manual/intro-motivation.xml:
3630         * docs/manual/intro-preface.xml:
3631         * docs/manual/intro.xml:
3632         * docs/manual/links-api.xml:
3633         * docs/manual/links.xml:
3634         * docs/manual/manual.xml:
3635         * docs/manual/motivation.xml:
3636         * docs/manual/pads-api.xml:
3637         * docs/manual/pads.xml:
3638         * docs/manual/plugins-api.xml:
3639         * docs/manual/plugins.xml:
3640         * docs/manual/programs.xml:
3641         * docs/manual/queues.xml:
3642         * docs/manual/quotes.xml:
3643         * docs/manual/schedulers.xml:
3644         * docs/manual/states-api.xml:
3645         * docs/manual/states.xml:
3646         * docs/manual/threads.xml:
3647         * docs/manual/typedetection.xml:
3648         * docs/manual/win32.xml:
3649         * docs/manual/xml.xml:
3650           Try 2. This time, include a short preface as a "general
3651           introduction", also add code blocks around all code samples
3652           so they get compiled. We still need a way to tell readers
3653           the filename of the code sample. In some cases, don't show
3654           all code in the documentation, but do include it in the generated
3655           code. This allows for focussing on specific bits in the docs,
3656           while still having a full test application available.
3657         * examples/manual/Makefile.am:
3658           Fix up examples for new ADM. Add several of the new examples that
3659           were either added or were missing from the build system.
3660         * examples/manual/extract.pl:
3661           Allow nameless blocks.
3662
3663 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3664
3665         * docs/manual/elements-api.xml:
3666         * docs/manual/helloworld.xml:
3667         * examples/manual/extract.pl:
3668           fix last example.  Add example of adding code blocks that are not
3669           shown in docbook output.
3670
3671 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3672
3673         * docs/manual/dynamic.xml:
3674         * docs/manual/elements-api.xml:
3675         * docs/manual/gnome.xml:
3676         * docs/manual/helloworld2.xml:
3677         * docs/manual/init-api.xml:
3678         * docs/manual/queues.xml:
3679         * docs/manual/threads.xml:
3680         * docs/manual/xml.xml:
3681         * examples/manual/extract.pl:
3682           Make it possible to extract example code from separate blocks.
3683           Should make Ronald happy.
3684
3685 2004-12-15  Wim Taymans  <wim@fluendo.com>
3686
3687         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3688         (remove_from_group), (group_elements_set_visited),
3689         (normalize_group), (gst_opt_scheduler_iterate):
3690         Fix bug where a flag was not updated on a decoupled entry point 
3691         because we were just checking the group element list and decoupled
3692         elements are not in that list..
3693
3694 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3695
3696         * docs/manual/advanced-autoplugging.xml:
3697         * docs/manual/advanced-clocks.xml:
3698         * docs/manual/advanced-dparams.xml:
3699         * docs/manual/advanced-interfaces.xml:
3700         * docs/manual/advanced-metadata.xml:
3701         * docs/manual/advanced-position.xml:
3702         * docs/manual/advanced-schedulers.xml:
3703         * docs/manual/advanced-threads.xml:
3704         * docs/manual/appendix-debugging.xml:
3705         * docs/manual/appendix-gnome.xml:
3706         * docs/manual/appendix-programs.xml:
3707         * docs/manual/appendix-quotes.xml:
3708         * docs/manual/appendix-win32.xml:
3709         * docs/manual/autoplugging.xml:
3710         * docs/manual/basics-bins.xml:
3711         * docs/manual/basics-data.xml:
3712         * docs/manual/basics-elements.xml:
3713         * docs/manual/basics-helloworld.xml:
3714         * docs/manual/basics-init.xml:
3715         * docs/manual/basics-pads.xml:
3716         * docs/manual/basics-plugins.xml:
3717         * docs/manual/bins-api.xml:
3718         * docs/manual/bins.xml:
3719         * docs/manual/buffers-api.xml:
3720         * docs/manual/buffers.xml:
3721         * docs/manual/clocks.xml:
3722         * docs/manual/components.xml:
3723         * docs/manual/cothreads.xml:
3724         * docs/manual/debugging.xml:
3725         * docs/manual/dparams-app.xml:
3726         * docs/manual/dynamic.xml:
3727         * docs/manual/elements-api.xml:
3728         * docs/manual/elements.xml:
3729         * docs/manual/factories.xml:
3730         * docs/manual/gnome.xml:
3731         * docs/manual/goals.xml:
3732         * docs/manual/helloworld.xml:
3733         * docs/manual/helloworld2.xml:
3734         * docs/manual/highlevel-components.xml:
3735         * docs/manual/highlevel-xml.xml:
3736         * docs/manual/init-api.xml:
3737         * docs/manual/intro-motivation.xml:
3738         * docs/manual/intro-preface.xml:
3739         * docs/manual/intro.xml:
3740         * docs/manual/links-api.xml:
3741         * docs/manual/links.xml:
3742         * docs/manual/manual.xml:
3743         * docs/manual/motivation.xml:
3744         * docs/manual/pads-api.xml:
3745         * docs/manual/pads.xml:
3746         * docs/manual/plugins-api.xml:
3747         * docs/manual/plugins.xml:
3748         * docs/manual/programs.xml:
3749         * docs/manual/queues.xml:
3750         * docs/manual/quotes.xml:
3751         * docs/manual/schedulers.xml:
3752         * docs/manual/states-api.xml:
3753         * docs/manual/states.xml:
3754         * docs/manual/threads.xml:
3755         * docs/manual/typedetection.xml:
3756         * docs/manual/win32.xml:
3757         * docs/manual/xml.xml:
3758           First try at rewriting the ADM. Needs lotsamore work, but some
3759           parts might already be somewhat useful.
3760         * docs/pwg/advanced-interfaces.xml:
3761           Remove properties interface, it never actually existed (except for
3762           on my HD...).
3763
3764 2004-12-13  David Schleef  <ds@schleef.org>
3765
3766         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
3767         be NULL (bug #160220).
3768
3769 2004-12-13  David Schleef  <ds@schleef.org>
3770
3771         * configure.ac: remove all mmx stuff, because it's not used.
3772         * docs/random/ds/0.9-suggested-changes: additional notes
3773         * include/Makefile.am: we don't use these anymore
3774         * include/mmx.h: remove
3775         * include/sse.h: remove
3776
3777 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3778
3779         * docs/random/mimetypes:
3780           Add FOURCC code for h264 codec (VSSH)
3781           Add alternate FOURCC codes for h263 related codecs
3782
3783 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
3784
3785         * docs/manual/programs.xml:
3786           Added more gst-launch examples.
3787
3788 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3789
3790         * gst/gstqueue.c: (gst_queue_handle_src_query):
3791           Check for availability again.
3792
3793 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3794
3795         * gst/gstcaps.c: (gst_caps_compare_structures):
3796           Simple caps go first. This has the nice side-effect of fixing an
3797           obscure warning.
3798
3799 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3800
3801         * gst/gstversion.h.in:
3802           Protect header.
3803
3804 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3805
3806         * gst/schedulers/gstoptimalscheduler.c:
3807         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
3808         (gst_opt_scheduler_get_wrapper):
3809           When we're recursing into a chain run, only run the directly
3810           related group, not all queued ones. This will fix a possible
3811           deadlock in chains with more than two groups.
3812
3813 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3814
3815         * autogen.sh:
3816           remove patch if autopoint fails
3817
3818 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3819
3820         * docs/gst/gstreamer-sections.txt:
3821           Document Thomas' addition, fix build, make Luis the sheriff happy.
3822
3823 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3824
3825         * gst/gstplugin.c:
3826         * gst/gstplugin.h:
3827           add accessor for version field
3828
3829 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
3830
3831         submitted by: Luca Ferretti <elle.uca@infinito.it>
3832
3833         * po/LINGUAS:
3834         * po/it.po:
3835           New tranlation added: Italian
3836
3837 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3838
3839         * gst/gstpad.c: (gst_pad_is_negotiated),
3840         (gst_pad_get_negotiated_caps):
3841           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
3842           it doesn't actually check the contents), so be sure to hand it
3843           a RealPad else we'll crash.
3844
3845 2004-12-03  Wim Taymans  <wim@fluendo.com>
3846
3847         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3848         (gst_queue_link), (gst_queue_handle_src_query):
3849         Reverted to 1.110 until this makes the testsuite and various
3850         apps work.
3851
3852 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
3853
3854         * docs/upload.mak: fix included CVS conflict strings
3855
3856 2004-12-01  William Jon McCann  <mccann@jhu.edu>
3857
3858         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3859
3860         * gst/gstelement.c: (gst_element_error_full):
3861           Use g_error_new_literal because error text may have
3862           percentage signs in it. Fixes #160019.
3863
3864 2004-12-01  Benjamin Otte  <otte@gnome.org>
3865
3866         * gst/elements/gstbufferstore.c:
3867         (gst_buffer_store_add_buffer_func):
3868           don't try to make subbuffers bigger than they can be. (fixes
3869           #159970)
3870
3871 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3872
3873         * docs/gst/gstreamer-sections.txt:
3874         * docs/gst/tmpl/gstvalue.sgml:
3875           Add new function to docs to fix build.
3876
3877 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3878
3879         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
3880         * gst/gstpad.c: (_gst_pad_default_fixate_value),
3881         (_gst_pad_default_fixate_foreach):
3882         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
3883         * gst/gstvalue.h:
3884           Deprecate _type_is_fixed, use _value_is_fixed instead, since
3885           in some cases (arrays), the fixedness depends on the content.
3886         * gst/gstqueue.c: (gst_queue_handle_src_query):
3887           Check for availability before doing something.
3888
3889 2004-11-29  Wim Taymans  <wim@fluendo.com>
3890
3891         * testsuite/threads/Makefile.am:
3892         * testsuite/threads/signals.c: (gst_test_get_type),
3893         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
3894         (gst_test_set_property), (gst_test_get_property),
3895         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
3896         (gst_test_do_prop), (run_thread), (main):
3897         Added a bunch of testcases that show threadsafety bugs in glib.
3898
3899 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
3900
3901         * docs/manual/programs.xml:
3902           Added a first batch of gst-launch examples, as provided by Ronald
3903           and others from the devel-mlist
3904
3905 2004-11-28  Benjamin Otte  <otte@gnome.org>
3906
3907         * gst/gstelement.c: (gst_element_negotiate_pads):
3908           simplify
3909         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
3910         (gst_value_serialize_string), (gst_value_deserialize_string):
3911           add unwrapping of previously wrapped strings. Fix bug in wrapping
3912           while at it.
3913         * testsuite/caps/value_serialize.c: (test1),
3914         (test_string_serialization), (test_string_deserialization), (main):
3915           add tests for string (de)serialization
3916
3917 2004-11-26  Wim Taymans  <wim@fluendo.com>
3918
3919         * testsuite/threads/159566.c: (object_deep_notify), (main):
3920         * testsuite/threads/Makefile.am:
3921         Added testsuite to show bug #159566
3922
3923 2004-11-25  Wim Taymans  <wim@fluendo.com>
3924
3925         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
3926         (gst_thread_child_state_change), (gst_thread_main_loop):
3927         Ref the thread object in the GThread mainloop. Break out of the
3928         thread mainloop if it holds the last ref. This properly exits
3929         the threads when disposing the thread from its own context. It
3930         also avoids possible deadlocks in the dispose function.
3931
3932 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
3933
3934         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
3935         it is necessary to wait.
3936
3937 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3938
3939         * docs/pwg/building-boiler.xml:
3940           Make description somewhat clearer.
3941
3942 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3943
3944         * docs/upload.mak:
3945           Apparently docs changed location on FDO's server.
3946
3947 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3948
3949         * docs/pwg/appendix-checklist.xml:
3950           Add some random notes on things to check when writing an element.
3951           This list can be extended as people see fit.
3952
3953 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
3954
3955         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
3956         (gst_queue_link_src): Allow for renegotiating the caps of the sink
3957         pad. The queue will now wait until it is empty and forward the new
3958         caps to the source.
3959         * gst/gstbin.c (gst_bin_set_element_sched)
3960         (gst_bin_unset_element_sched): Make sure that all elements and
3961         links are registered and unregistered with the scheduler exactly
3962         once. This elaborates on a fix by Benjamin Otte, but
3963         guarantees that decoupled elements are also registered.
3964
3965 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3966
3967         * docs/manual/quotes.xml:
3968           add a quote
3969         * configure.ac:
3970         * gst/gst.c:
3971         * gst/gstinfo.c:
3972           add LIBDIR and move init message higher up so it's at the start
3973
3974 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3975
3976         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
3977         * gstreamer.spec.in: add fair
3978
3979 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3980
3981         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
3982         * gst/elements/gstidentity.c: (gst_identity_class_init):
3983           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
3984           <teuf@gnome.org> (#157263).
3985         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
3986         (gst_type_find_handle_src_query):
3987           Subtract size of internally stored data from position queries.
3988
3989 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
3990
3991         * gst/schedulers/fairscheduler.c:
3992         * gst/schedulers/faircothreads.c:
3993         * gst/schedulers/faircothreads.h:
3994         New cothread based scheduler: Fair scheduler.
3995         * gst/schedulers/gthread-cothreads.h: 
3996         Add the standard #if around the whole file.
3997         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
3998         compilation of the functions defined in this file. This is
3999         necessary to be able to use this file as a normal header.
4000         * gst/schedulers/Makefile.am: Add compiling support for fair
4001         scheduler.
4002         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4003         scheduler cothreads layer from documentation generation.
4004
4005 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4006
4007         * gst/autoplug/gstspideridentity.c:
4008         (gst_spider_identity_sink_loop_type_finding):
4009           Don't crash if that function is not implemented.
4010
4011 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4012
4013         * docs/pwg/advanced-types.xml:
4014           Another typo.
4015
4016 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4017
4018         * docs/pwg/intro-preface.xml:
4019           Hm, ok, so the brackets weren't really useful...
4020         * docs/pwg/other-ntoone.xml:
4021           Fix embarassing typo.
4022
4023 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4024
4025         * docs/pwg/intro-preface.xml:
4026           Rewrite preface.
4027
4028 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4029
4030         * docs/pwg/advanced-scheduling.xml:
4031         * docs/pwg/advanced-tagging.xml:
4032         * docs/pwg/advanced-types.xml:
4033         * docs/pwg/building-boiler.xml:
4034         * docs/pwg/building-chainfn.xml:
4035         * docs/pwg/building-signals.xml:
4036         * docs/pwg/building-state.xml:
4037         * docs/pwg/building-testapp.xml:
4038         * docs/pwg/intro-basics.xml:
4039         * docs/pwg/other-manager.xml:
4040         * docs/pwg/other-source.xml:
4041           Typo fixes.
4042         * docs/pwg/other-manager.xml:
4043           Add some first content. No example code yet.
4044         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4045           Remove double newlines.
4046
4047 2004-11-04  Wim Taymans  <wim@fluendo.com>
4048
4049         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4050         (remove_from_group), (normalize_group), (group_migrate_connected),
4051         (gst_opt_scheduler_iterate):
4052         * testsuite/schedulers/.cvsignore:
4053         * testsuite/schedulers/Makefile.am:
4054         * testsuite/schedulers/queue_link.c: (main):
4055         Added testcase for scheduler segfault.
4056         Fix scheduler segfault when removing a decoupled
4057         entry point as the last element from a group.
4058
4059 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4060
4061         * gst/gstmarshal.list: add missing marshaller, fixes build
4062
4063 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4064
4065         * docs/random/signal: added notes about using BOXED for GstBuffer
4066         signal marshallers, not POINTER
4067
4068 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4069
4070         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4071         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4072         POINTER=>BOXED changes to marshal GstBuffers
4073
4074 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4075
4076         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4077         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4078
4079 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4080
4081         * docs/gst/gstreamer-sections.txt:
4082         * docs/gst/tmpl/gstcaps.sgml:
4083         * docs/gst/tmpl/gsterror.sgml:
4084         * docs/gst/tmpl/gstinfo.sgml:
4085         * docs/gst/tmpl/gstmacros.sgml:
4086         * docs/gst/tmpl/gstutils.sgml:
4087         * docs/random/ensonic/interfaces.txt:
4088         * gst/gstinfo.h:
4089           added some more docs, removed two obsolete defines
4090
4091 2004-11-02  Kjartan Maraas <as at gnome.org>
4092
4093         reviewed by: Wim Taymans, Ronald Bultje.
4094
4095         * gst/cothreads.c: (cothread_create):
4096         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4097         (gst_bin_child_state_change_func):
4098         * gst/gstbuffer.c: (gst_buffer_span):
4099         * gst/gstelement.c: (gst_element_get_index),
4100         (gst_element_get_event_masks), (gst_element_get_query_types),
4101         (gst_element_get_formats):
4102         * gst/gsterror.c: (_gst_core_errors_init),
4103         (_gst_library_errors_init), (_gst_resource_errors_init),
4104         (_gst_stream_errors_init):
4105         * gst/gstobject.c: (gst_object_default_deep_notify):
4106         * gst/gstpad.c: (gst_pad_get_event_masks),
4107         (gst_pad_get_internal_links_default):
4108         * gst/gstplugin.c: (gst_plugin_register_func),
4109         (gst_plugin_get_module):
4110         * gst/gststructure.c: (gst_structure_get_string),
4111         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4112         (gst_structure_to_abbr):
4113         * gst/gstutils.c: (gst_print_element_args):
4114         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4115         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4116         Aplied part of patch #157127: Cleanup of issues reported by 
4117         sparse.
4118         Also do not try to use cothreads when there is no cothread
4119         context yet.
4120
4121 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4122
4123         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4124         (gst_opt_scheduler_iterate):
4125         Applied patch #154061. Running a pipeline in which an element 
4126         calls GST_ELEMENT_ERROR in the chain function, the opt 
4127         scheduler doesn't unref the chain so it never gets freed.
4128
4129 2004-11-02  Wim Taymans  <wim@fluendo.com>
4130
4131         * gst/gststructure.c: (gst_structure_get_abbrs),
4132         (gst_structure_from_abbr), (gst_structure_to_abbr):
4133         Remove that ugly if-then thing in the code that converts
4134         between strings and types.
4135
4136 2004-11-02  Wim Taymans  <wim@fluendo.com>
4137
4138         * gst/gstscheduler.c: (gst_scheduler_add_element),
4139         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4140         Aplied clock distribution patch, this should fix bug
4141         #148787.
4142
4143 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4144
4145         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4146
4147         * po/LINGUAS:
4148         * po/nb.po:
4149           Added Norwegian Bokmaal translation
4150
4151 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4152
4153         * tools/gst-inspect.c: (print_signal_info):
4154           print signal arguments as pointers if they are
4155
4156 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4157
4158         * docs/pwg/building-boiler.xml:
4159           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4160
4161 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4162
4163         * gst/parse/parse.l:
4164         * testsuite/parse/parse1.c: (main):
4165         Since parse can do 'element name=a:b' make 'a:b.' work as
4166         well. 
4167         Added testcase to verify fix.
4168
4169 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4170
4171         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4172         Use the realpad when printing the direction.
4173         Add extra \n when printing extensions of typefind factories.
4174
4175 2004-10-13  David Schleef  <ds@schleef.org>
4176
4177         * examples/manual/Makefile.am: $< isn't portable in Makefile
4178         rules.
4179
4180 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4181
4182         * docs/gst/tmpl/gstobject.sgml:
4183         * docs/gst/tmpl/gstplugin.sgml:
4184         * docs/gst/tmpl/gstpluginfeature.sgml:
4185         * docs/gst/tmpl/gstregistry.sgml:
4186         * docs/gst/tmpl/gstversion.sgml:
4187         * gst/gstbin.c:
4188           more api documentation
4189         * gst/gstplugin.c: (gst_plugin_register_func),
4190         (gst_plugin_check_file), (gst_plugin_load_file):
4191           better error signaling and logging
4192
4193 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4194
4195         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4196           Subtract current queue contents from position queries.
4197
4198 2004-10-11  Johan Dahlin  <johan@gnome.org>
4199
4200         * gst/gsturi.c (gst_uri_get_location): unescape string
4201         (gst_uri_construct): escape string.
4202
4203 2004-10-11  Benjamin Otte  <otte@gnome.org>
4204
4205         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4206         (gst_pad_try_set_caps_nonfixed):
4207           allow renegotiation of unconnected pads (as inside spider). Simply
4208           return OK if unconnected - mimic try_set_caps there.
4209
4210 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4211
4212         * gst/gstbin.c: (gst_bin_sync_children_state):
4213           Add missing break.
4214
4215 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4216
4217         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4218         Set element to EOS before sending EOS event
4219
4220 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4221
4222         * gst/elements/gsttypefindelement.c:
4223         (gst_type_find_element_handle_event):
4224         Handle EOS events when doing the transition from
4225         typefind to data passing. This should fix the
4226         infinite loops in short files.
4227
4228 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4229
4230         * gst/gstthread.c: (gst_thread_change_state),
4231         (gst_thread_child_state_change):
4232         Make sure no iteration happens while performing
4233         the state change as it could mess up the internal
4234         consistency of the thread state.
4235
4236 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4237
4238         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4239         (gst_thread_change_state), (gst_thread_child_state_change):
4240         Do not try to grab the iterate lock in the state change method
4241         when we are in the same thread as the iterate or else we
4242         could deadlock. Some other cleanups.
4243
4244 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4245
4246         * configure.ac:
4247           bump nano to cvs
4248
4249 === release 0.8.7 ===
4250
4251 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4252
4253         * configure.ac:
4254         * NEWS:
4255         * RELEASE:
4256         * configure.ac:
4257           releasing 0.8.7, "A Cruise"
4258
4259 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4260
4261         * docs/random/mimetypes:
4262         Add an entry for Sony ATRAC3 audio format with mime-type
4263         used by rmdemux et riff-read
4264
4265 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4266
4267         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4268         Push the buffer store instead of clearing it in case that
4269         the stream is not seekable.
4270
4271 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4272
4273         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4274         (gst_thread_main_loop):
4275         Lock the iteration and the state change so that automatic
4276         negotiation and fixation does not happen at the same time
4277         as the in stream negotiation.
4278
4279 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4280
4281         * configure.ac:
4282           bump nano to cvs
4283
4284 === release 0.8.6 ===
4285
4286 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4287
4288         * configure.ac:
4289         * NEWS:
4290         * RELEASE:
4291         * configure.ac:
4292           releasing 0.8.6, "Narc"
4293
4294 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4295
4296         * configure.ac:
4297           prerel bump
4298
4299 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4300
4301         patch by: Steve Lhomme
4302
4303         * gst/elements/gstfakesrc.c:
4304         * gst/elements/gstidentity.c:
4305         * gst/gstthread.c:
4306           Fix for #153881
4307
4308 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4309
4310         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4311         Fix threadsafety of the crc checking function.
4312
4313 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4314
4315         patch by: Ronald Bultje
4316
4317         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4318         (gst_type_find_element_handle_event),
4319         (gst_type_find_element_chain):
4320         * gst/elements/gsttypefindelement.h:
4321          #153657.
4322          Filter out discont event from seekable sources when typefind
4323          asks them to seek.  Fixes typefind with demuxers for
4324          avi, asf and matroska.
4325
4326 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4327
4328         * docs/gst/gstreamer-sections.txt:
4329         * gst/gstcaps.c:
4330         * gst/gstcaps.h:
4331         * gst/gstpad.c:
4332           Revert preferred caps: (#147789)
4333
4334 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4335
4336         * win32/dirent.c:
4337           fix a memory leak
4338
4339 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4340
4341         * configure.ac:
4342           bump for prerelease
4343
4344 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4345
4346         * docs/Makefile.am:
4347         * docs/manual/elements-api.xml:
4348           restructure so that common stuff is shown first
4349         * docs/manual/init-api.xml:
4350           convert to examples
4351         * docs/manual/manual.xml:
4352         * docs/manuals.mak:
4353         * docs/url.entities:
4354           link to API on the website, possibly override later in build
4355         * examples/manual/.cvsignore:
4356           ignore more
4357         * examples/manual/Makefile.am:
4358           add more examples
4359         * examples/manual/extract.pl:
4360           error out on failure
4361
4362 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4363
4364         * docs/gst/tmpl/gstthread.sgml:
4365         * docs/manual/init-api.xml:
4366         * examples/manual/Makefile.am:
4367           convert two code bits to examples
4368
4369 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4370
4371         * gst/gstelement.c: (gst_element_change_state):
4372           Well, actually, I was about to remove this insane assert when
4373           I noticed Wim already did that. A warning is nice so we can
4374           fix actual ugs (using --g-fatal-warnings and backtraces), so
4375           I added that instead.
4376
4377 2004-09-06  Wim Taymans  <wim@fluendo.com>
4378
4379         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4380         (gst_element_threadsafe_properties_post_run),
4381         (gst_element_set_state), (gst_element_change_state):
4382         Added extra refcounting around various places. 
4383
4384 2004-09-06  Wim Taymans  <wim@fluendo.com>
4385
4386         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4387         Fix debug info.
4388
4389 2004-09-06  Wim Taymans  <wim@fluendo.com>
4390
4391         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4392         (remove_from_group):
4393         Some more debug info.
4394
4395 2004-09-03  Wim Taymans  <wim@fluendo.com>
4396
4397         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4398         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4399         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4400         (gst_fakesrc_get), (gst_fakesrc_change_state):
4401         * gst/elements/gstfakesrc.h:
4402         * gst/elements/gstidentity.c: (gst_identity_class_init),
4403         (gst_identity_init), (gst_identity_chain),
4404         (gst_identity_set_property), (gst_identity_get_property),
4405         (gst_identity_change_state):
4406         * gst/elements/gstidentity.h:
4407         Added datarate properties to limit the datarate.
4408
4409 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4410
4411         * gst/autoplug/gstspider.c: (plugin_init):
4412           don't set a rank. We don't want to autoplug by inserting spiders.
4413
4414 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4415
4416         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4417         (gst_spider_identity_plug):
4418           add a template for spider's sink
4419         * gst/gst.c: (gst_register_core_elements):
4420           queue's rank should be NULL, we don't want spider to add it.
4421
4422 2004-08-18  David Schleef  <ds@schleef.org>
4423
4424         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4425         * docs/libs/Makefile.am: same
4426         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4427         * docs/random/ds/0.9-planning: random additions
4428         * docs/random/ds/0.9-suggested-changes: same
4429         * gst/gstxml.h: remove vestigal GstXMLNs definition
4430
4431         Preferred caps: (#147789)
4432         * docs/gst/gstreamer-sections.txt: Add symbols
4433         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4434         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4435         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4436         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4437         (gst_caps_get_preferred), (gst_caps_set_preferred),
4438         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4439         (gst_caps_use_preferred): Handle caps preferences
4440         * gst/gstcaps.h: Add caps preferences
4441         * gst/gstpad.c: (gst_pad_link_get_preferred),
4442         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4443         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4444         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4445         negotiation.
4446
4447 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4448
4449         * gst/autoplug/gstspideridentity.c:
4450         (gst_spider_identity_request_new_pad):
4451         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4452         (gst_aggregator_init):
4453         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4454         (gst_fakesink_init):
4455         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4456         (gst_fakesrc_init):
4457         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4458         (gst_fdsink_init):
4459         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4460         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4461         (gst_filesink_init):
4462         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4463         (gst_filesrc_init):
4464         * gst/elements/gstidentity.c: (gst_identity_base_init),
4465         (gst_identity_init):
4466         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4467         (gst_multifilesrc_init):
4468         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4469         (gst_pipefilter_init):
4470         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4471         (gst_statistics_init):
4472         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4473         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4474           s/gst_pad_new/&_from_template/
4475           register pad templates in the base_init function
4476           add static pad template definitions
4477
4478 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4479
4480         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4481         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4482         * testsuite/refcounting/pad.c: (main):
4483         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4484           s/gst_pad_new/&_from_template/
4485           prepare deprecation of gst_pad_new
4486
4487 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4488
4489         patch by: Luca Ognibene <skaboy81@virgilio.it>
4490
4491         * gst/gstcaps.c:
4492         * gst/gstelement.c:
4493         * gst/gstpad.c:
4494         * gst/gstxml.c:
4495           fix memleaks.  Fixes #150001
4496
4497 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4498
4499         * docs/random/ds/0.9-suggested-changes:
4500           add notes - mostly about pad templates
4501
4502 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4503
4504         * win32/GStreamer.vcproj:
4505           temporary locale files are .gmo not .mo
4506
4507 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4508
4509         * configure.ac: bump nano to cvs
4510
4511 === release 0.8.5 ===
4512
4513 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4514
4515         * configure.ac:
4516           releasing 0.8.5, "Stuttgart"
4517         * NEWS:
4518         * RELEASE:
4519         * configure.ac:
4520         * docs/random/release:
4521           updates for release
4522
4523 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4524
4525         patch by: Wim Taymans (wim@fluendo.com)
4526
4527         * gst/gstbuffer.c:
4528         * gst/gstindex.h:
4529         * libs/gst/dataprotocol/dataprotocol.c:
4530           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4531
4532 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4533
4534         * Makefile.am:
4535         * win32/MANIFEST:
4536           add win32 dir to the build.  Fixes #149981.
4537
4538 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4539
4540         * configure.ac:
4541           bump libtool versioning
4542         * gst/gststructure.c:
4543           mark function as static
4544         * po/af.po:
4545         * po/az.po:
4546         * po/ca.po:
4547         * po/cs.po:
4548         * po/en_GB.po:
4549         * po/fr.po:
4550         * po/nl.po:
4551         * po/sq.po:
4552         * po/sr.po:
4553         * po/sv.po:
4554         * po/tr.po:
4555         * po/uk.po:
4556           translations update
4557         * win32/README.txt:
4558           trademark protection
4559
4560 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4561
4562         * configure.ac:
4563           fix GST_ORIGIN
4564           set GST_PACKAGE to source, and distinguish between release and other
4565         * tools/gst-inspect.c:
4566           print out plugin an element factory is part of so we see this info
4567
4568 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4569
4570         * docs/gst/gstreamer-sections.txt:
4571         * docs/gst/tmpl/gstbuffer.sgml:
4572         * docs/gst/tmpl/gstschedulerfactory.sgml:
4573           reorder docs a little, make GstBuffer's more sensible.
4574         * gst/gstbuffer.h:
4575           API: added GST_BUFFER_FLAG_DELTA_UNIT
4576         * gst/gstscheduler.c:
4577           comment API addition
4578
4579 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4580
4581         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4582           work with non-regular files that can be mmapped (like /dev/zero)
4583         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4584           get rid of typefinds that require a seek when we can't seek instead
4585           of trying them over and over again
4586         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4587           return non-zero failure value when the pipeline was interrupted or
4588           an error occurred
4589
4590 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4591
4592         * win32/config.h:
4593         * win32/GStreamer.vcproj:
4594           compile and install the locales
4595
4596 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4597
4598         * gst/gstvalue.c:
4599           fix a possible memory leak under Windows
4600
4601 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4602
4603         * win32/GStreamer.vcproj:
4604           fix a memory leak that occured under Windows
4605         * win32/gstreamer.def:
4606           add gst_scheduler_register
4607
4608 2004-08-11  Benjamin Otte  <otte@gnome.org>
4609
4610         * docs/gst/gstreamer-sections.txt:
4611         * gst/gstscheduler.c: (gst_scheduler_register):
4612         * gst/gstscheduler.h:
4613           API:
4614           add gst_scheduler_register shortcut similar to gst_element_register
4615         * gst/schedulers/entryscheduler.c: (plugin_init):
4616         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4617         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4618           use it
4619
4620 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4621
4622         * gst/gstvalue.h:
4623           fix a memory leak that occured under Windows
4624
4625 2004-08-10  Colin Walters  <walters@redhat.com>
4626
4627         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4628         Don't use O_EXCL to open temporary registry.  It will prevent
4629         registry creation if a temporary one already exists, which
4630         is unnecessary.
4631
4632 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4633
4634         * docs/gst/gstreamer-sections.txt:
4635         * docs/gst/tmpl/gstvalue.sgml:
4636           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4637
4638 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4639
4640         * win32/gstbytestream.vcproj:
4641         * win32/gstelements.vcproj:
4642         * win32/gstgetbits.vcproj:
4643         * win32/gst-inspect.vcproj:
4644         * win32/gst-launch.vcproj:
4645         * win32/gstoptimalscheduler.vcproj:
4646         * win32/GStreamer.vcproj:
4647         * win32/gst-register.vcproj:
4648         * win32/gstspider.vcproj:
4649           update the include and lib dirs to fit standard libraries as
4650           described in the Win32 manual
4651
4652 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4653
4654         * win32/config.h:
4655         * win32/gstversion.h:
4656           enable NLS again, push the version number for the coming 0.8.5 release
4657
4658 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4659
4660         * gst/gstvalue.h:
4661           export gst_type_XXX for windows DLLs
4662
4663 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4664
4665         * docs/faq/gst-uninstalled:
4666           fix PKG_CONFIG_PATH and PYTHONPATH
4667         * gst/schedulers/Makefile.am:
4668           cleanup
4669         * libs/gst/bytestream/bytestream.c:
4670           remove newline
4671         * po/LINGUAS:
4672         * po/sq.po:
4673           adding Albanian translation (Laurent Dhima)
4674         * po/cs.po:
4675           updated
4676
4677 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4678
4679         * po/ca.po:
4680         * po/sv.po:
4681           updated translations
4682
4683 2004-08-04  Benjamin Otte  <otte@gnome.org>
4684
4685         * tests/mass_elements.c: (main):
4686           allow specifying src and sink element explicitly, so I can test
4687           videotestsrc instead of fakesrc
4688
4689 2004-08-04  Benjamin Otte  <otte@gnome.org>
4690
4691         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4692         (gst_structure_id_empty_new), (gst_structure_empty_new),
4693         (gst_structure_copy):
4694           add gst_structure_id_empty_new_with_size to allow preallocating
4695           value array sizes. Use this in gst_structure_copy to get rid of
4696           reallocs.
4697           don't do quark=>string=>quark when copying structures
4698
4699 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4700
4701         * docs/manual/win32.xml:
4702         * win32/README.txt:
4703           update documentation with the clean version of dependencies
4704
4705 2004-08-03  Benjamin Otte  <otte@gnome.org>
4706
4707         * gst/schedulers/entryscheduler.c:
4708         (gst_entry_scheduler_remove_element):
4709           fix for GST_DISABLE_DEBUG
4710         * tools/gst-launch.c: (print_tag):
4711           fixes for G_DISABLE_ASSERT
4712
4713 2004-08-03  Benjamin Otte  <otte@gnome.org>
4714
4715         * gst/gst.c: (gst_register_core_elements):
4716           fix for G_DISABLE_ASSERT
4717         * gst/gstinfo.c: (__gst_in_valgrind):
4718           add for GST_DISABLE_DEBUG
4719
4720 2004-08-03  Benjamin Otte  <otte@gnome.org>
4721
4722         * gst/parse/parse.l:
4723           fix for G_DISABLE_ASSERT
4724
4725 2004-08-03  Wim Taymans  <wim@fluendo.com>
4726
4727         * gst/gstbin.c: (gst_bin_get_type),
4728         (gst_bin_child_state_change_func):
4729         * gst/gstthread.c: (gst_thread_change_state):
4730         Backported some debug logging from a reverted patch
4731         Don't try to destroy the thread twice. Added some more
4732         debugging in GstThread. Unlock and signal even if we
4733         are in the thread context.
4734
4735 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4736
4737         * po/uk.po:
4738           updated translation
4739
4740 2004-07-30  David Schleef  <ds@schleef.org>
4741
4742         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4743
4744 2004-07-29  David Schleef  <ds@schleef.org>
4745
4746         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4747         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4748
4749 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4750
4751         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4752         (gst_bin_add_func), (gst_bin_remove_func),
4753         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4754         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4755         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4756         (gst_bin_sync_children_state):
4757         * gst/gstbin.h:
4758         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4759         (gst_thread_change_state):
4760         * testsuite/states/Makefile.am:
4761           revert state change patches as agreed so we can rework them
4762           gradually
4763
4764 2004-07-29  Benjamin Otte  <otte@gnome.org>
4765
4766         * libs/gst/control/Makefile.am:
4767           link to libgstreamer (fixes Debian bug 262019, see
4768           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
4769
4770 2004-07-29  Wim Taymans  <wim@fluendo.com>
4771
4772         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4773         (check_from_fraction_convert), (transform_test), (main):
4774         Make the test less pedantic about float roundoff errors.
4775
4776 2004-07-29  Benjamin Otte  <otte@gnome.org>
4777
4778         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
4779         (gst_filesrc_srcpad_event):
4780           make seek events to before start/after end of file not fail, but
4781           seek to start/end instead
4782         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
4783           add more output
4784
4785 2004-07-29  Benjamin Otte  <otte@gnome.org>
4786
4787         * gst/gstpad.c: (gst_pad_set_explicit_caps):
4788           check that caps are fixed
4789         * gst/gstpad.c: (gst_pad_template_new):
4790           don't try to simplify caps, costs too much time on gst_init
4791         * gst/gstplugin.c: (gst_plugin_add_feature):
4792           G_ERROR if features are added twice
4793         * gst/gsttypefind.c: (gst_type_find_register):
4794         * gst/gstelementfactory.c: (gst_element_register):
4795           don't add features twice
4796         * docs/random/ds/0.9-suggested-changes:
4797           add note about possible gst_init optimization
4798
4799 2004-07-28  David Schleef  <ds@schleef.org>
4800
4801         * testsuite/elements/Makefile.am:
4802         * testsuite/elements/struct_i386.h:
4803         * testsuite/elements/struct_size.c: (main):  A little test
4804         to keep distcheck from working if someone changes a structure
4805         size accidentally.
4806
4807 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4808
4809         * docs/libs/Makefile.am:
4810         * docs/libs/gstreamer-libs-docs.sgml:
4811         * docs/libs/gstreamer-libs-sections.txt:
4812         * docs/libs/tmpl/gstbytestream.sgml:
4813         * docs/libs/tmpl/gstcontrol.sgml:
4814         * docs/libs/tmpl/gstdataprotocol.sgml:
4815         * docs/libs/tmpl/gstgetbits.sgml:
4816         * libs/gst/bytestream/Makefile.am:
4817         * libs/gst/bytestream/bytestream.c:
4818         * libs/gst/bytestream/bytestream.h:
4819         * libs/gst/control/Makefile.am:
4820         * libs/gst/dataprotocol/Makefile.am:
4821         * libs/gst/getbits/Makefile.am:
4822         * libs/gst/getbits/getbits.h:
4823           various doc and style fixes, adding bytestream to libs docs.
4824
4825 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4826
4827         * docs/gst/gstreamer-docs.sgml:
4828         * docs/libs/Makefile.am:
4829         * docs/libs/gstreamer-libs-docs.sgml:
4830         * docs/libs/gstreamer-libs-sections.txt:
4831         * libs/gst/control/dparam.c:
4832           more doc fixes.  gst-libs docs now build the same way as gst.
4833
4834 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4835
4836         * configure.ac:
4837         * testsuite/Makefile.am:
4838         * testsuite/bins/Makefile.am:
4839         * testsuite/caps/Makefile.am:
4840         * testsuite/cleanup/Makefile.am:
4841         * testsuite/clock/Makefile.am:
4842         * testsuite/debug/Makefile.am:
4843         * testsuite/dlopen/Makefile.am:
4844         * testsuite/dynparams/Makefile.am:
4845         * testsuite/elements/.cvsignore:
4846         * testsuite/elements/Makefile.am:
4847         * testsuite/enumcaps/Makefile.am:
4848         * testsuite/enumcaps/enumcaps.c:
4849         * testsuite/ghostpads/Makefile.am:
4850         * testsuite/indexers/Makefile.am:
4851         * testsuite/negotiation/Makefile.am:
4852         * testsuite/parse/Makefile.am:
4853         * testsuite/plugin/Makefile.am:
4854         * testsuite/refcounting/Makefile.am:
4855         * testsuite/schedulers/.cvsignore:
4856         * testsuite/states/Makefile.am:
4857         * testsuite/tags/Makefile.am:
4858         * testsuite/threads/Makefile.am:
4859           fold enumcaps into caps dir
4860           clean up Makefile.am's for testsuite
4861
4862 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
4863
4864         * docs/gst/Makefile.am:
4865         * docs/libs/Makefile.am:
4866           clean up docs build.  Fixes needless rebuilding of template files.
4867
4868 2004-07-28  Wim Taymans  <wim@fluendo.com>
4869
4870         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
4871         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
4872         Make sure that a bin state change tries to keep the children
4873         in sync. 
4874         Added debug logging to the thread.
4875
4876 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4877
4878         * win32/GStreamer.vcproj:
4879         * win32/gstreamer.def:
4880           more exports for the plugins
4881
4882 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
4883
4884         * win32/gstgetbits.vcproj:
4885         * win32/gstgetbits.def:
4886         * win32/msvc71.sln:
4887           add support for the getbits plugin
4888
4889 2004-07-27  Wim Taymans  <wim@fluendo.com>
4890
4891         * gst/gstvalue.c: (gst_value_transform_double_fraction),
4892         (gst_value_transform_fraction_double), (_gst_value_initialize):
4893         * testsuite/caps/Makefile.am:
4894         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4895         (check_from_fraction_convert), (transform_test), (main):
4896         Added transform functions between double and fraction.
4897         Added testcase to verify transforms
4898
4899 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4900
4901         * win32/GStreamer.vcproj:
4902           rename GStreamer-0.8.lib to libgstreamer.lib
4903
4904 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4905
4906         * win32/gstelements.vcproj:
4907         * win32/gstoptimalscheduler.vcproj:
4908           fixes for the Release build
4909
4910 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4911
4912         * win32/config.h:
4913           update the version number
4914
4915 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4916
4917         * win32/GStreamer.vcproj:
4918           add gstinterface to the build
4919
4920 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
4921
4922         * win32/gstreamer.def:
4923           add many definitions needed by plugins,
4924           GST_CAT_DEFAULT only available in the Debug build ?
4925
4926 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4927
4928         * gst/gstelement.c: (gst_element_set_eos_recursive):
4929           various whitespace fixes.
4930           doc fix, fixes #148497
4931
4932 2004-07-25  Benjamin Otte  <otte@gnome.org>
4933
4934         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
4935           don't delay links on the sink elements, it causes unnegotiated
4936           links.
4937         * gst/elements/gsttypefindelement.c:
4938         (gst_type_find_element_base_init):
4939           add our padtemplates, we indeed do have some.
4940         * gst/elements/gsttypefindelement.c:
4941         (gst_type_find_element_handle_event),
4942         (gst_type_find_element_chain):
4943           don't push data when typefinding failed.
4944         * gst/gstpad.c: (gst_pad_link_fixate):
4945           check that no fixate function returns empty caps.
4946         * gst/gstpad.c: (gst_pad_push):
4947           check that the link is negotiated before data gets pushed.
4948         * tools/gst-register.c: (main):
4949           don't assert (fixes #148283)
4950
4951 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4952
4953         * docs/gst/gstreamer-sections.txt:
4954         * docs/gst/tmpl/gstconfig.sgml:
4955           add GST_PLUGIN_EXPORT definition
4956
4957 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4958
4959         * gst/gstplugin.h:
4960         * gst/gstconfig.h.in:
4961         * win32/gstconfig.h:
4962         * win32/gstelements.def:
4963         * win32/gstelements.vcproj:
4964         * win32/gstoptimalscheduler.def:
4965         * win32/gstoptimalscheduler.vcproj:
4966         * win32/gstspider.def:
4967         * win32/gstspider.vcproj:
4968           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
4969
4970 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
4971
4972         * docs/gst/gstreamer-sections.txt:
4973           remove GST_CAT_DEFAULT because the type has changed
4974
4975 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4976
4977         * win32/gstbytestream.vcproj:
4978         * win32/gstelements.vcproj:
4979         * win32/gst-inspect.vcproj:
4980         * win32/gst-launch.vcproj:
4981         * win32/gstoptimalscheduler.vcproj:
4982         * win32/GStreamer.vcproj:
4983         * win32/gst-register.vcproj:
4984         * win32/gstspider.vcproj:
4985         * win32/msvc71.sln:
4986           Copy the files where needed after building, The testsuite will be
4987           built separately
4988
4989 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
4990
4991         * win32/config.h:
4992         * win32/README.txt:
4993         * docs/manual/win32.xml:
4994         Fixed the plugin and GStreamer location
4995
4996 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
4997
4998         * win32/gstreamer.def:
4999         More exports for the plugins
5000
5001 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5002
5003         * gst/gstinfo.h:
5004         Marc was right, we need to export literally GST_CAT_DEFAULT
5005
5006 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5007
5008         * win32/config.h:
5009         NLS crashes in gettext, disabled until this is solved
5010
5011 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5012
5013         * win32/gst-inspect.vcproj:
5014         * win32/gst-launch.vcproj:
5015         Should use NLS when available
5016
5017 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5018
5019         * gst/registries/gstxmlregistry.c:
5020         removing the file doesn't seem to be a good idea on Linux
5021
5022 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5023
5024         * gst/registries/gstxmlregistry.c:
5025         Remove the registry before renaming the tempfile (needed for Windows)
5026
5027 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5028
5029         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5030         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5031         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5032         * gst/elements/gstmultifilesrc.h:
5033         Added newmedia property so it generates newmedia events between each
5034         file when property is set, as well as fixed eos handling
5035
5036 2004-07-22  David Schleef  <ds@schleef.org>
5037
5038         * gst/gststructure.c: (gst_structure_id_empty_new),
5039         (gst_structure_empty_new):  Set type field correctly.
5040         * gst/gststructure.h: Check type field correctly.
5041         * testsuite/caps/Makefile.am:
5042         * testsuite/caps/structure.c: (test1), (main): Add a very small
5043         test for structures.
5044
5045 2004-07-22  David Schleef  <ds@schleef.org>
5046
5047         * docs/random/ds/0.9-suggested-changes: more comments
5048         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5049
5050 2004-07-22  Benjamin Otte  <otte@gnome.org>
5051
5052         * gst/gstelementfactory.c: (gst_element_register):
5053           set the factory in the class struct, so gst_element_get_factory
5054           actually works
5055         * gst/parse/grammar.y:
5056           set element to playing when it gets unlocked as we can't rely on the
5057           bin state - all elements in the bin state might still be locked in
5058           NULL)
5059
5060 2004-07-22  Benjamin Otte  <otte@gnome.org>
5061
5062         * gst/gstelement.c: (gst_element_set_state_func):
5063           make this a static function
5064
5065 2004-07-22  Wim Taymans  <wim@fluendo.com>
5066
5067         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5068         (gst_opt_scheduler_pad_link):
5069         fix 147894-2 and the group_link problem.
5070
5071 2004-07-22  Wim Taymans  <wim@fluendo.com>
5072
5073         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5074         (handoff_identity), (main):
5075         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5076         (handoff_identity), (main):
5077         * testsuite/schedulers/Makefile.am:
5078         * testsuite/schedulers/group_link.c: (main):
5079         Show bug in scheduler when linking chain and loop based element 
5080         where the chain based element was not yet in a group.
5081
5082 2004-07-21  Benjamin Otte  <otte@gnome.org>
5083
5084         * gst/.cvsignore:
5085         * gst/autoplug/.cvsignore:
5086         * gst/elements/.cvsignore:
5087         * gst/indexers/.cvsignore:
5088         * libs/gst/bytestream/.cvsignore:
5089         * libs/gst/control/.cvsignore:
5090         * libs/gst/getbits/.cvsignore:
5091         * testsuite/states/.cvsignore:
5092         * testsuite/threads/.cvsignore:
5093           keep this up to date, since I seem to be the only one who cares
5094           about not missing files on commits (editor's note: no you don't,
5095           but feel free to change them at the time you add stuff instead
5096           of later on)
5097
5098 2004-07-21  Benjamin Otte  <otte@gnome.org>
5099
5100         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5101         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5102         (gst_bin_child_state_change_func), (set_kid_state_func),
5103         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5104           make state changes work correctly and reentrant (so removing
5105           elements from bins during state changes of bins doesn't cause
5106           segfaults or even wrong states)
5107           add debugging category and debugging output to print children states
5108         * gst/gstbin.c: (gst_bin_dispose): 
5109           add some assertion checks
5110         * gst/gstbin.h:
5111         * gst/gstbin.c: (gst_bin_sync_children_state):
5112           deprecate this function - it just does gst_bin_set_state (bin,
5113           GST_STATE (bin)) 
5114         * testsuite/threads/queue.c: (main):
5115           don't use gst_bin_sync_children_state anymore
5116         * testsuite/states/Makefile.am:
5117         * testsuite/states/bin.c:
5118           test that the state changes of bins work as expected
5119         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5120           some adjustments to change states correctly, too
5121         * gst/gstthread.c: (gst_thread_change_state):
5122           don't enable/disable "threadsafe" properties, they're unused and
5123           cause random segfaults
5124         * testsuite/threads/Makefile.am:
5125           the queue check randomly passes now, ignore it
5126
5127 2004-07-21  Benjamin Otte  <otte@gnome.org>
5128
5129         * gst/gstpad.c:
5130           check if data is NULL before outputting debug info. (fixes #145100)
5131
5132 2004-07-21  Benjamin Otte  <otte@gnome.org>
5133
5134         * gst/schedulers/entryscheduler.c:
5135         (gst_entry_scheduler_loop_wrapper),
5136         (gst_entry_scheduler_chain_wrapper),
5137         (gst_entry_scheduler_get_wrapper):
5138           reset the state when the cothread starts, so we don't get assertion
5139           failures on restarting of cothreads
5140
5141 2004-07-20  Benjamin Otte  <otte@gnome.org>
5142
5143         * gst/gstelement.c: (gst_element_link_pads_filtered):
5144           use correct sinkpad, if only sinkpad is specified, but not srcpad
5145           (fixes #147889)
5146         * gst/gstelement.c: (gst_element_set_state_func),
5147         (gst_element_change_state): ref/unref the element, signal handlers
5148         could get rid of the element otherwise
5149
5150 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5151
5152         * docs/random/ds/0.9-suggested-changes:
5153           Make note about renaming fixed-list to array.
5154         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5155         (_gst_value_initialize):
5156           Add array intersections.
5157         * testsuite/caps/intersect2.c: (main):
5158           Add test for array intersections.
5159
5160 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5161
5162         * configure.ac: back to cvs
5163
5164 === release 0.8.4 ===
5165
5166 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5167
5168         * configure.ac:
5169           releasing 0.8.4, "Paella"
5170           bump libtool versioning
5171
5172 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5173
5174         * po/LINGUAS:
5175         * po/ca.po:
5176           adding Catalan translation (Jordi Mallach)
5177
5178 2004-07-20  Wim Taymans  <wim@fluendo.com>
5179
5180         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5181         (handoff_identity), (main):
5182         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5183         (handoff_identity), (main):
5184         * testsuite/schedulers/Makefile.am:
5185         Added failing testcase for variant of #147894
5186
5187 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5188
5189         patch by: David Moore
5190
5191         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5192         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5193         (group_migrate_connected):
5194         * testsuite/schedulers/Makefile.am:
5195           fix for #142813 (Deadlock in optimal scheduler)
5196
5197 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5198
5199         patch by: Wim Taymans
5200
5201         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5202         (gst_opt_scheduler_schedule_run_queue),
5203         (gst_opt_scheduler_get_wrapper), (get_group),
5204         (group_migrate_connected):
5205         * testsuite/schedulers/Makefile.am:
5206           fix for #147819 (Add some checks in the opt scheduler)
5207
5208 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5209
5210         patch by: Benjamin Otte
5211
5212         * gst/gstelementfactory.c: (__gst_element_details_set):
5213           fix for #147929: running gst-register in non-utf8 locale can cause
5214           invalid registry
5215
5216 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5217
5218         patch by: Wim Taymans
5219
5220         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5221         (group_has_element), (element_get_reachables_func),
5222         (group_migrate_connected):
5223           fix for #147894 (opt scheduler decoupled elements mismanagement)
5224         * testsuite/schedulers/Makefile.am:
5225           testsuite app now passes
5226
5227 2004-07-19  Wim Taymans  <wim@fluendo.com>
5228
5229         * testsuite/schedulers/147819.c: (handoff_identity1),
5230         (handoff_identity2), (main):
5231         * testsuite/schedulers/Makefile.am:
5232         Added testcase for bug 147819
5233
5234 2004-07-19  Wim Taymans  <wim@fluendo.com>
5235
5236         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5237         (handoff_identity), (main):
5238         * testsuite/schedulers/Makefile.am:
5239         Added testcase for bug 147894
5240
5241 2004-07-16  Wim Taymans  <wim@fluendo.com>
5242
5243         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5244         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5245         * testsuite/schedulers/Makefile.am:
5246         Added testsuite for bug 142183 in its two incarnations. Refcount
5247         is not increased for scheduled elements and threadsafe properties
5248         mutexes are not properly unlocked.
5249
5250 2004-07-16  Wim Taymans  <wim@fluendo.com>
5251
5252         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5253         (create_chain), (destroy_chain), (create_group), (destroy_group),
5254         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5255         (group_dec_link), (gst_opt_scheduler_pad_link),
5256         (group_inc_links_for_element), (group_migrate_connected):
5257         Call group_inc_link with the proper src->sink ordering -- 
5258         break this, and we break sort_chain. patch from wingo for bug
5259         147713.
5260         Partially revert patch 1.89. When adding a loop based element to 
5261         the scheduler, the links to other groups are automatically followed
5262         and incremented. This should not happen because the bin will call
5263         pad_link explicitly for those connection, resulting in them counted 
5264         twice. Results in assertion failure on pipeline cleanup.
5265
5266 2004-07-16  Wim Taymans  <wim@fluendo.com>
5267
5268         * testsuite/schedulers/143777-2.c: (main):
5269         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5270         (main):
5271         * testsuite/schedulers/Makefile.am:
5272         Added cleanup code to testcase 143777-2.
5273         Added testcase to show bug 147713, does not really show the
5274         deadlock as I can't figure out how to trigger it, but it does
5275         demonstrate bad ordering in the scheduler.
5276
5277 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5278
5279         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5280           change strndup to g_strndup.  Fixes #147707
5281
5282 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5283
5284         * po/af.po:
5285         * po/az.po:
5286         * po/cs.po:
5287         * po/en_GB.po:
5288         * po/fr.po:
5289         * po/nl.po:
5290         * po/sr.po:
5291         * po/sv.po:
5292         * po/tr.po:
5293         * po/uk.po:
5294           updated translations
5295
5296 2004-07-16  Benjamin Otte  <otte@gnome.org>
5297
5298         * gst/gstvalue.c: (gst_greatest_common_divisor):
5299           use ints and return ints, fractions only use ints, too, so this
5300           avoids accidently casting multiplications to unsigned
5301         (gst_value_lcopy_fraction): it's ints, not uint32
5302         (gst_value_set_fraction): disallow minint, multiplying and negation
5303           are broken with it
5304         (gst_value_fraction_multiply): fix to make large numbers work and get
5305         rid of the assumption that the multiplication of two ints fits an
5306         int64 - dunno if that's true for all systems
5307         * testsuite/caps/Makefile.am:
5308         * testsuite/caps/fraction-multiply-and-zero.c:
5309         (check_multiplication), (check_equal), (zero_test), (main):
5310           add tests for all the stuff above
5311         * testsuite/caps/value_compare.c: (test1):
5312           fix comment
5313         * tests/.cvsignore:
5314         * testsuite/caps/.cvsignore:
5315         * testsuite/debug/.cvsignore:
5316         * testsuite/dlopen/.cvsignore:
5317         * testsuite/states/.cvsignore:
5318           get up to date
5319
5320 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5321
5322         * docs/manual/bins-api.xml:
5323         * docs/manual/factories.xml:
5324         * docs/manual/helloworld.xml:
5325         * docs/manual/links-api.xml: 
5326           fixes for out of date info, incorrect info and grammar
5327
5328 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5329
5330         * docs/manual/pads.xml:
5331         * docs/manual/pads-api.xml: grammar fix
5332
5333 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5334
5335         * docs/manual/pads-api.xml: typo + grammar fix
5336
5337 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5338
5339         * docs/gst/gstreamer-sections.txt:
5340           add new symbols
5341         * docs/gst/tmpl/gstelement.sgml:
5342         * docs/gst/tmpl/gstpad.sgml:
5343         * docs/gst/tmpl/gsttypes.sgml:
5344         * docs/gst/tmpl/gstvalue.sgml:
5345           update docs
5346         * gst/gststructure.c: (gst_structure_set_valist),
5347         (gst_structure_from_abbr), (gst_structure_to_abbr):
5348         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5349         (gst_greatest_common_divisor), (gst_value_init_fraction),
5350         (gst_value_copy_fraction), (gst_value_collect_fraction),
5351         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5352         (gst_value_get_fraction_numerator),
5353         (gst_value_get_fraction_denominator),
5354         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5355         (gst_value_deserialize_fraction),
5356         (gst_value_transform_fraction_string),
5357         (gst_value_transform_string_fraction),
5358         (gst_value_compare_fraction), (_gst_value_initialize):
5359         * gst/gstvalue.h:
5360           adding GstFraction GValue type, get/set, and multiply
5361         * testsuite/caps/Makefile.am:
5362         * testsuite/caps/fraction.c: (test), (main):
5363         * testsuite/caps/string-conversions.c: (main):
5364         * testsuite/caps/value_compare.c: (test1), (main):
5365           add regression tests for GstFraction
5366
5367 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5368         
5369         * docs/manual/init-api.xml: Grammar fix
5370
5371 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5372
5373         * docs/manual/states.xml: Fix inconsistent information
5374
5375 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5376
5377         * gst/gstelement.c: (gst_element_set_state):
5378         * gst/gstpad.c: (gst_pad_try_set_caps):
5379         * gst/gststructure.c:
5380         * gst/gstthread.c: (gst_thread_child_state_change):
5381         * gst/gstvalue.c: (gst_value_compare_double):
5382         * gst/gstvalue.h:
5383         * testsuite/parse/parse1.c: (main):
5384           debugging additions and style cleanups
5385
5386 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5387
5388         * docs/manual/states.xml: Grammar fix
5389
5390 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5391
5392         * docs/manual/pads.xml: Grammar fix
5393
5394 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5395
5396         * docs/manual/elements.xml: Fixed image reference
5397
5398 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5399
5400         * docs/manual/goals.xml: Grammar fix
5401
5402 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5403
5404         * docs/manual/motivation.xml:
5405         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5406
5407 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5408
5409         * docs/manual/motivation.xml: Fix spelling
5410
5411 2004-07-15  Benjamin Otte  <otte@gnome.org>
5412
5413         * gst/gstelement.h: 
5414           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5415           strings.
5416         * gst/gstelement.c (gst_element_class_init):
5417           GError's are boxed, not objects
5418         * gst/gstmarshal.list:
5419           update list for the fixed error signal
5420
5421 2004-07-14  Andy Wingo  <wingo@pobox.com>
5422
5423         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5424         there all along, but the function wasn't. (guile-gstreamer's build
5425         system uses the address of the function -- I wasn't actually
5426         trying to use this.)
5427
5428 2004-07-14  Andy Wingo  <wingo@pobox.com>
5429
5430         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5431         as gst_pad_proxy_pad_link) just link to every other pad when they
5432         are called. In the case where the graph has cycles, this will mean
5433         that a call to try_set_caps will recurse. Allow this recursion
5434         and return OK, while we wait for the first try_set_caps to give a
5435         proper return value.
5436         (gst_pad_link_call_link_functions): Since this function is the
5437         only one to set the NEGOTIATING flag on a pad, if the flag is set
5438         it means that the link functions have indirectly recursed. If this
5439         happens, error out to avoid infinite recursion and an eventual
5440         SEGV.
5441         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5442         (gst_pad_proxy_getcaps): Intersect the result with the template
5443         caps to ensure that the return value is valid.
5444
5445 2004-07-14  Andy Wingo  <wingo@pobox.com>
5446
5447         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5448         one refcount, the calling function is the owner of the buffer.
5449
5450 2004-07-14  Wim Taymans  <wim@fluendo.com>
5451
5452         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5453         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5454         Fix stupid warning when an element is to be migrated but
5455         is already migrated.
5456
5457 2004-07-14  Wim Taymans  <wim@fluendo.com>
5458
5459         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5460         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5461         Make sure that a single non-loop-based element does not 
5462         end up in a group. This fixes the testsuite again.
5463
5464 2004-07-14  Wim Taymans  <wim@fluendo.com>
5465
5466         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5467         (add_to_group), (merge_groups), (schedule_group),
5468         (gst_opt_scheduler_get_wrapper), (group_elements),
5469         (group_dec_link), (gst_opt_scheduler_pad_link),
5470         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5471         (gst_opt_scheduler_iterate):
5472         move isolated groups to a new chain.
5473         Emit a warning instead of segfaulting in some error cases.
5474         Fix a bug where the link count between groups was not calculated 
5475         correctly. Fixes #144510.
5476
5477 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5478         * gst/elements/gstfilesrc.c:
5479           Binary files support under Windows now OK
5480       
5481 2004-07-13  Benjamin Otte  <otte@gnome.org>
5482
5483           compatibility fixes for Solaris 8/gcc 2.95
5484         * configure.ac:
5485           include libintl libs in LDFLAGS
5486         * gstvalue.c (gst_value_deserialize_buffer):
5487           cast isxdigit stuff to int to silence compiler warning
5488
5489 2004-07-12  Benjamin Otte  <otte@gnome.org>
5490
5491         * gst/gsttypes.h:
5492           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5493           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5494           just causes support madness
5495         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5496           make it work without this
5497         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5498         (gst_file_index_commit):
5499           glib IO channels don't want binary mode
5500         * testsuite/bytestream/filepadsink.c: (main):
5501         * testsuite/bytestream/test1.c: (read_param_file):
5502           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5503
5504 2004-07-12  Benjamin Otte  <otte@gnome.org>
5505
5506         * gst/gstelement.c: (gst_element_class_init),
5507         (gst_element_set_state), (gst_element_set_state_func):
5508           virutalize gst_element_set_state, use set_state member in class
5509           struct that was already added in 0.7 for this.
5510         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5511         (gst_bin_change_state):
5512           make gst_bin_foreach works similar to other foreach functions, plug
5513           memleaks in it. Make functions using it work with the new approach.
5514           Document gst_bin_foreach, so it can be exported if we want to
5515         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5516           use virtualized set_state to make set_state on bins set the state of
5517           all its children.
5518
5519 2004-07-12  Benjamin Otte  <otte@gnome.org>
5520
5521         * configure.ac:
5522           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5523           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5524         * gst/gstpad.c: (gst_pad_alloc_buffer):
5525           allow buffer_alloc functions to return NULL and allocate a normal
5526           buffer in that case
5527
5528 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5529         * gst/elements/gstfilesink.c:
5530         * gst/elements/gstfilesrc.c:
5531         * gst/indexers/gstfileindex.c:
5532         * gst/gsttypes.h:
5533         * testsuite/bytestream/filepadsink.c:
5534         * testsuite/bytestream/test1.c:
5535           Handle binary files under Windows
5536
5537 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5538         * docs/manual/win32.xml:
5539         * win32/config.h:
5540         * win32/gst-register.vcproj:
5541         * win32/gstreamer.def:
5542           Update to another gettext public build
5543
5544 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5545         * gst/gstplugin.c:
5546           Fix an impossible C syntax
5547         * win32/config.h:
5548           Disable i18n under Windows for the moment
5549         * win32/gst-register.vcproj:
5550           Use this configuration
5551
5552 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5553         * docs/manual/quotes.xml:
5554           Keep the quotes file alive
5555         * docs/random/ds/0.9-suggested-changes:
5556           Add the suggestion of including a 'rowstride' as part of video
5557           format caps
5558
5559 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5560
5561         * gst/gstelement.c: (gst_element_set_state),
5562         (gst_element_change_state):
5563           d'oh.  Set PENDING state correctly before forcing bin to change.
5564         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5565         (gst_structure_parse_fixed_list):
5566         * gst/schedulers/gstoptimalscheduler.c:
5567         (gst_opt_scheduler_state_transition):
5568         * testsuite/states/parent.c: (main):
5569           remove comment now that it's fixed.
5570
5571 2004-07-11  Benjamin Otte  <otte@gnome.org>
5572
5573         * gst/gstclock.h:
5574           GST_SECOND shouldn't cause a conversion to unsigned.
5575         * testsuite/clock/.cvsignore:
5576         * testsuite/clock/Makefile.am:
5577         * testsuite/clock/signedness.c: (main):
5578           make sure it never will again
5579
5580 2004-07-11  Andy Wingo  <wingo@pobox.com>
5581
5582         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5583         whose state is higher than the bin state, raise the bin state to
5584         ensure that bin state := highest child state.
5585         
5586 2004-07-11  Andy Wingo  <wingo@pobox.com>
5587
5588         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5589         procedure on the children of a bin. Assumes that the procedure can
5590         change the set of children.
5591         (set_kid_state_func): New static function.
5592         (gst_bin_change_state): Use gst_bin_foreach to call
5593         set_kid_state_func. Fixes a bug: if a child had a state-change
5594         handler that removes it from the bin, there would be a segfault.
5595         Hopefully it should also work in the case where the state-change
5596         handler on one child adds or removes other children. In any case,
5597         fixes should go to gst_bin_foreach.
5598
5599 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5600
5601         * gst/gstelement.c: (gst_element_set_state):
5602           compatibility fix for latest plugins release.  Change loop back
5603           to while {}
5604
5605 2004-07-09  Wim Taymans  <wim@fluendo.com>
5606
5607         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5608         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5609         (gst_thread_main_loop):
5610         Since remove is virtual in GstBin we must not assume the 
5611         elements GList to have anothing useful.
5612         Add some more logging to GstThread and be a bit more paranoid
5613         when resetting the scheduler.
5614         Set the state of the bin to NULL before removing the children.
5615
5616 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5617
5618         * testsuite/threads/Makefile.am:
5619         * testsuite/threads/threadg.c:
5620           added test to check if problem when removing all elements from a
5621           GstThread before setting GstThread state to NULL
5622
5623 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5624
5625         * docs/gst/tmpl/gstelement.sgml:
5626         * docs/gst/tmpl/gsttypes.sgml:
5627         * gst/gstbin.c: (gst_bin_change_state):
5628         * gst/gstelement.c: (gst_element_set_state),
5629         (gst_element_change_state):
5630           rework so that for bins we try to set the state on all children
5631           as well even if the bin is in the correct state already.
5632           change while to do so at least one iteration is done.
5633           For regular elements, we fall back to the previous behaviour for
5634           now since we first need a new plugins release.
5635         * testsuite/states/parent.c: (main):
5636           test for this case
5637           Fixes #123774
5638
5639 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5640
5641         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5642         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5643         (gst_queue_release_locks), (gst_queue_change_state),
5644         (gst_queue_set_property):
5645           add proper lock debugging.  Change dispose to finalize, since
5646           we're freeing mutexes and other stuff which should happen only once.
5647
5648 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5649
5650         * docs/gst/tmpl/gstelement.sgml:
5651         * docs/gst/tmpl/gstplugin.sgml:
5652         * docs/gst/tmpl/gsttypes.sgml:
5653         * docs/pwg/building-state.xml:
5654         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5655         * gst/gstelement.c: (gst_element_change_state):
5656         * gst/gstthread.c: (gst_thread_change_state):
5657           catch wrong state changes in element base class.
5658
5659 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5660
5661         * gst/gstinfo.h:
5662           clean up layout a little.
5663
5664 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5665
5666         * configure.ac:
5667         * testsuite/Makefile.am:
5668         * testsuite/states/Makefile.am:
5669         * testsuite/states/parent.c: (main):
5670           re-enable states testsuite dir.  Add test for state changes and
5671           parent behaviour
5672
5673 2004-07-09  Wim Taymans  <wim@fluendo.com>
5674
5675         * gst/schedulers/gstoptimalscheduler.c:
5676         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5677         (element_get_reachables_func), (element_get_reachables),
5678         (debug_element), (rechain_group), (group_migrate_connected),
5679         (gst_opt_scheduler_pad_unlink):
5680         Do not try to migrate decoupled elements to a new group since
5681         they are not added to groups.
5682
5683 2004-07-08  Benjamin Otte  <otte@gnome.org>
5684
5685         * gst/gstelement.c: (gst_element_error_func):
5686           make reentrant (= allow removing elements in error handler)
5687
5688 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5689
5690         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5691         (gst_pad_send_event), (gst_pad_call_chain_function):
5692           events sent to elements below PAUSED cannot be handled, so
5693           don't try to
5694
5695 2004-07-08  Wim Taymans  <wim@fluendo.com>
5696
5697         * gst/schedulers/gstoptimalscheduler.c:
5698         (chain_recursively_migrate_group), (create_group),
5699         (schedule_group), (gst_opt_scheduler_pad_link),
5700         (group_elements_set_visited), (element_get_reachables_func),
5701         (element_get_reachables), (group_can_reach_group), (debug_element),
5702         (rechain_group), (group_migrate_connected),
5703         (gst_opt_scheduler_pad_unlink):
5704         * testsuite/schedulers/Makefile.am:
5705         Implemented group splitting and rechaining.
5706         Fixes 143777 and 143777-2 in the testsuite.
5707
5708 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5709
5710         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5711           extra debugging
5712         * gst/gstevent.h:
5713         * gst/gstinfo.c: (gst_debug_log_default):
5714           print time nicely.  add thread pointer until someone figures out
5715           a completely portable way of getting at thread id's.
5716         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5717         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5718         (gst_pad_call_chain_function):
5719           extra debugging
5720         * gst/schedulers/gstoptimalscheduler.c:
5721         (get_group_schedule_function), (loop_group_schedule_function),
5722         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5723         (pad_clear_queued), (gst_opt_scheduler_iterate):
5724           rename BUFPEN and friends to DATAPEN since that's what they are.
5725
5726 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5727
5728         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5729         * gst/gstbuffer.h:
5730         * gst/gstpad.c:
5731           cleanups and debugging
5732
5733 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5734
5735         * configure.ac:
5736         * gst/gstvalue.c: (gst_value_compare_enum),
5737         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5738         (gst_value_can_compare), (gst_value_compare):
5739         * testsuite/Makefile.am:
5740         * testsuite/enumcaps/Makefile.am:
5741         * testsuite/enumcaps/enumcaps.c:
5742           Fix enum serialization, deserialization, comparison in caps, add
5743           a test to ensure that this continues working in the future.
5744
5745 2004-07-06  David Schleef  <ds@schleef.org>
5746
5747         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5748         Fix memleak.
5749
5750 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5751
5752         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5753         * gst/gstplugin.h:
5754         * gst/registries/gstxmlregistry.c:
5755         (plugin_times_older_than_recurse), (plugin_times_older_than),
5756         (gst_xml_registry_parse_padtemplate):
5757           only rebuild registry when actual plugins have a newer time than
5758           the registry.  Fixes #145520
5759
5760 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5761
5762         * docs/manual/manual.xml:
5763         * docs/manual/win32.xml:
5764           add chapter on win32 building.  fixes #142422
5765
5766 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5767
5768         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
5769
5770         * gst/autoplug/gstspider.c: (gst_spider_init),
5771         (gst_spider_dispose):
5772           fix spider memleaks.  fixes #137863
5773
5774 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5775
5776         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
5777
5778         * gst/schedulers/gstoptimalscheduler.c:
5779         (gst_opt_scheduler_pad_unlink):
5780           fix SIGBUS error, fixes #145338
5781
5782 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5783
5784         * gst/gstobject.c: (gst_object_replace):
5785         * gst/gstscheduler.c: (gst_scheduler_get_clock):
5786         * gst/gstsystemclock.c: (gst_system_clock_obtain):
5787           clean up clock lifecycle.  Fixes #109831
5788
5789 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5790
5791         * po/LINGUAS:
5792         * po/cs.po:
5793           added Czech translation (Miloslav Trmac)
5794
5795 2004-07-04  David Schleef  <ds@schleef.org>
5796
5797         * tools/Makefile.am:
5798         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5799
5800 2004-07-04  David Schleef  <ds@schleef.org>
5801
5802         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5803
5804 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5805
5806         * gst/gstbin.c: (gst_bin_restore_thyself):
5807           chain to parent restore so the bins get restored correctly
5808           in the editor
5809
5810 2004-07-03  David Schleef  <ds@schleef.org>
5811
5812         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5813         Actually do something in these functions, like before the big
5814         caps change.  (bug #145137)
5815
5816 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5817
5818         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
5819         (gst_element_get_compatible_pad_filtered):
5820         * gst/gstthread.c: (gst_thread_main_loop):
5821           more debugging
5822
5823 2004-07-02  David Schleef  <ds@schleef.org>
5824
5825         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
5826         * gst/gstobject.h:
5827         * gst/gstparse.h:
5828         * gst/gsttrace.h:
5829         * gst/gstxml.h:
5830
5831 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5832
5833         * gst/gstpad.c: (gst_pad_check_schedulers),
5834         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5835         (gst_pad_link_prepare):
5836           revert until testsuite is fixed
5837
5838 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5839
5840         * testsuite/Makefile.am:
5841         * testsuite/caps/filtercaps.c: (main):
5842         * testsuite/clock/clock1.c: (main):
5843         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
5844           fix some more tests
5845
5846 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5847
5848         * testsuite/cleanup/cleanup1.c: (create_pipeline):
5849         * testsuite/cleanup/cleanup2.c: (create_pipeline):
5850         * testsuite/cleanup/cleanup4.c: (main):
5851           fix testsuite
5852
5853 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5854
5855         * libs/gst/control/control.c:
5856         * libs/gst/control/dparam.c:
5857         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
5858         * libs/gst/control/dparammanager.c:
5859         * libs/gst/control/dparammanager.h:
5860         * testsuite/dynparams/Makefile.am:
5861         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
5862         (gst_dptest_change_state), (gst_dptest_chain), (main):
5863           fix testcase for dparams
5864           add debugging category
5865
5866 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
5867
5868         * testsuite/Rules:
5869           change path
5870
5871 2004-07-02  Benjamin Otte  <otte@gnome.org>
5872
5873         * tests/.cvsignore:
5874         * tests/Makefile.am:
5875         * tests/mass_elements.c: (gst_get_current_time), (main):
5876           add simple benchmark to test various speeds of fakesrc ! identity !
5877           identity ! ... ! fakesink.
5878           Usage: mass_elements [num_identities] [num_buffers]
5879           If not specified they default to 1000.
5880
5881 2004-07-02  Benjamin Otte  <otte@gnome.org>
5882
5883         * gst/gstpad.c: (gst_pad_check_schedulers),
5884         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
5885         (gst_pad_link_prepare):
5886           check that pads that get linked belong to the same manager. The old
5887           code allowed linking elements before putting them into bins, so it
5888           worked to link them and then put them in different threads, which
5889           lead to weird behaviour.
5890           Since this effectively disallows linking elements before putting
5891           them in a bin, some applications might not work after this and error
5892           out. If these applications are too critical, we might need to revert
5893           that patch. Please test this before the next release...
5894
5895 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5896
5897         * gst/gstpad.c: (gst_pad_get_caps):
5898           throw an error if the getcaps function does not return a subset of
5899           the template caps.
5900         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
5901           make disconts without position info an error in debugging
5902         * tests/spidey_bench.c: (handoff), (main):
5903           don't count first try when averaging
5904
5905 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5906
5907         * gst/gstplugin.c: (gst_plugin_load_file):
5908           figure out problem with dynamic test
5909
5910 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5911
5912         * docs/gst/Makefile.am:
5913           fix docs build
5914
5915 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5916
5917         * po/POTFILES.in:
5918         * po/af.po:
5919         * po/az.po:
5920         * po/en_GB.po:
5921         * po/fr.po:
5922         * po/nl.po:
5923         * po/sr.po:
5924         * po/sv.po:
5925         * po/tr.po:
5926         * po/uk.po:
5927         * tools/gst-register.c: (plugin_added_func), (main):
5928           i18n-ize -register, fix plural
5929
5930 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5931
5932         * gst/elements/gstidentity.c: (gst_identity_class_init),
5933         (gst_identity_init), (gst_identity_chain),
5934         (gst_identity_set_property), (gst_identity_get_property):
5935         * gst/elements/gstidentity.h:
5936           check for perfect stream
5937
5938 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5939
5940         * gst/elements/gstidentity.c: (gst_identity_chain):
5941           print offset_end
5942
5943 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5944
5945         * docs/gst/Makefile.am:
5946         * docs/gst/gstreamer-docs.sgml:
5947           doc fixes
5948
5949 2004-06-24  David Schleef  <ds@schleef.org>
5950
5951         * autogen.sh:  Remove call to env, since the buildbot isn't
5952         broken anymore.
5953
5954 2004-06-24  Wim Taymans  <wim@fluendo.com>
5955
5956         * gst/elements/Makefile.am:
5957         * gst/elements/gstelements.c:
5958         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
5959         (gst_multifdsink_class_init), (gst_multifdsink_init),
5960         (gst_multifdsink_add), (gst_multifdsink_remove),
5961         (gst_multifdsink_clear), (gst_multifdsink_chain),
5962         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
5963         * gst/elements/gstmultifdsink.h:
5964         Added an element that writes to multiple filedescriptors at once.
5965
5966 2004-06-24  Benjamin Otte  <otte@gnome.org>
5967
5968         * gst/parse/grammar.y:
5969           don't try to link elements before they have been added to bins
5970
5971 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5972
5973         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
5974         (gst_file_pad_get_length):
5975         * libs/gst/bytestream/filepad.h:
5976           add 2 new functions
5977
5978 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5979
5980         * docs/gst/gstreamer-sections.txt:
5981         remove from docs, the define that Benjamin removed from gstelement.h
5982
5983 2004-06-22  Benjamin Otte  <otte@gnome.org>
5984
5985         * gst/gstelement.h:
5986           remove define that referenced a nonexisting GstElement struct member
5987
5988 2004-06-20  Benjamin Otte  <otte@gnome.org>
5989
5990         * gst/gstdata.c: (gst_data_is_writable):
5991           whoops, return values were wrong, so writable data was marked as
5992           non-writable and vice versa. (fixes #143953, spotted by Francis
5993           Labonte)
5994           Shows how rarely we need to copy data ;)
5995
5996 2004-06-20  Benjamin Otte  <otte@gnome.org>
5997
5998         * testsuite/schedulers/.cvsignore:
5999         * testsuite/schedulers/Makefile.am:
6000         * testsuite/schedulers/143777-2.c: (main):
6001           add test for opt breakage in bug #143777
6002
6003 2004-06-20  Benjamin Otte  <otte@gnome.org>
6004
6005         * gst/gstpad.c: (gst_pad_call_chain_function):
6006           check for if we were unlinked while inside the chainfunction (fixes
6007           entrygthread having issues with #143777)
6008         * testsuite/schedulers/143777.c: (main):
6009         * testsuite/schedulers/Makefile.am:
6010           add a test for that fix
6011
6012 2004-06-20  Benjamin Otte  <otte@gnome.org>
6013
6014         * gst/gstvalue.c: (gst_value_set_int_range):
6015           test that start is smaller then end
6016         * libs/gst/bytestream/Makefile.am:
6017         * libs/gst/bytestream/filepad.c: 
6018         * libs/gst/bytestream/filepad.h:
6019           add GstFilePad - a pad that behaves like a FILE*
6020         * testsuite/bytestream/.cvsignore:
6021         * testsuite/bytestream/Makefile.am:
6022         * testsuite/bytestream/filepadsink.c: 
6023           test for the GstFilePad
6024
6025 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6026
6027         * gst/elements/gstidentity.c: (gst_identity_class_init),
6028         (gst_identity_init), (gst_identity_set_clock),
6029         (gst_identity_chain), (gst_identity_set_property),
6030         (gst_identity_get_property):
6031         * gst/elements/gstidentity.h:
6032         * gst/gstclock.c: (gst_clock_id_wait):
6033           add a "sync" property to sync to the clock
6034
6035 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6036
6037         * gst/gstelementfactory.c: (gst_element_factory_create):
6038           make the freakin "elementfactory bla has no type" message more
6039           useful. So we actually can do something when someone shows up
6040           complaining about it.
6041
6042 2004-06-15  Johan Dahlin  <johan@gnome.org>
6043
6044         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6045         found. This matches the old behavior better. Thanks to Thomas for
6046         pointing out.
6047
6048 2004-06-14  David Schleef  <ds@schleef.org>
6049
6050         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6051         -fomit-frame-pointer.  Appears to generate correct code in
6052         other cases as well.
6053
6054 2004-06-14  Johan Dahlin  <johan@gnome.org>
6055
6056         * tools/gst-inspect.c (main): Add two new command line options: -a
6057         to print all elements and -n to print the name on each line. Also
6058         fix some error reporting.
6059         (main): Simplify, remove -n and always print names if -a is specified
6060
6061 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6062
6063         * win32/gstconfig.h:
6064         * win32/GSTreamer.vcproj:
6065         * win32/Makefile:
6066         * gst/gstconfig.h.in:
6067         * gst/gst.h:
6068         * gst/gstbin.h:
6069         * gst/gstelement.h:
6070         * gst/gstevent.h:
6071         * gst/gstobject.h:
6072         * gst/gstpad.h:
6073         * docs/gst/gstreamer-sections.txt:
6074         * docs/gst/tmpl/gstconfig.sgml:
6075           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6076
6077 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6078         * docs/gst/gstreamer-sections.txt:
6079         * docs/gst/tmpl/gstconfig.sgml:
6080         Add the GSTREAMER_EXPORT macro to the docs
6081
6082 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6083
6084         * tools/gst-compprep.c: (handle_xmlerror), (main):
6085         Add a check for the version that introduced SetStructuredError to fix
6086         the build on FC1
6087
6088 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6089
6090         * win32/msvc71.sln:
6091         * win32/testsuite/:
6092           prepare to compile the testsuite with MSVC
6093
6094 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6095
6096         * docs/manual/win32.xml:
6097           attempt to transform the Win32 README into an XML doc
6098
6099 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6100
6101         * gst/gst.c:
6102         * gst/gstbin.*:
6103         * gst/config.h.in:
6104         * gst/gstelement.*:
6105         * gst/gstevent.h:
6106         * gst/gstobject.*:
6107         * gst/gstpad.h:
6108         * tools/gst-register.c:
6109         * win32/gstreamer.def:
6110           extern symbols are now exported for the Windows DLL
6111
6112 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6113
6114         * gst/gstinfo.h:
6115           fix a problem to enable/disable DEBUG under MSVC
6116
6117 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6118
6119         * win32/:
6120           enable more debug code in DEBUG build
6121
6122 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6123
6124         * win32/config.h:
6125         * gst/gst-i18n-app.h:
6126           enable NLS under Windows
6127
6128 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6129         * tools/gst-compprep.c: (handle_xmlerror), (main):
6130           Make an error that baffled me a bit clearer
6131
6132 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6133
6134         * gst/gstqueue.c:
6135           don't use g_queue_get_length () because it's 2.4, use ->length
6136
6137 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6138
6139         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6140
6141         * tools/gst-inspect.c: (print_signal_info):
6142           don't free random data twice. (fixes #144185)
6143
6144 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6145
6146         * gst/gstqueue.c:
6147         * gst/gstqueue.h:
6148           fix removing from the wrong queue on event timeout
6149           fix disposing of the event queue by casting correctly
6150           add mutexes for handling the event queue
6151           someone was sleeping when fixing queue last time around :)
6152
6153 2004-06-10  Johan Dahlin  <johan@gnome.org>
6154
6155         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6156         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6157
6158 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6159
6160         * docs/random/gdp:
6161         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6162         * libs/gst/dataprotocol/dataprotocol.c:
6163         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6164         (gst_dp_buffer_from_header):
6165         * libs/gst/dataprotocol/dataprotocol.h:
6166         * libs/gst/dataprotocol/dp-private.h:
6167           rev version to 0.1, add buffer flags and copy them
6168
6169 2004-06-09  Johan Dahlin  <johan@gnome.org>
6170
6171         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6172         the flags from the buffer we're copying.
6173
6174 2004-06-09  Wim Taymans  <wim@fluendo.com>
6175
6176         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6177         * gst/elements/gstidentity.c: (gst_identity_init),
6178         (gst_identity_chain):
6179         Print more buffer info in fakesink.
6180         Make identity output similar to fakesink.
6181
6182 2004-06-07  Daniel Gazard  <dany42@free.fr>
6183
6184         reviewed by Benjamin Otte  <otte@gnome.org>
6185
6186         * configure.ac:
6187           fix cross compiling not working. (fixes #143741)
6188
6189 2004-06-07  Benjamin Otte  <otte@gnome.org>
6190
6191         * gst/gstelement.c: (gst_element_set_time_delay):
6192           add failure check
6193         * gst/gstinfo.h:
6194           put brackets around macro arguments of GST_TIME_ARGS, add note to
6195           move it to correct header in 0.9
6196
6197 2004-06-07  Benjamin Otte  <otte@gnome.org>
6198
6199         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6200         (gst_file_index_load), (_file_index_id_save_entries),
6201         (gst_file_index_commit), (gst_file_index_add_association),
6202         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6203         (gst_file_index_plugin_init):
6204           make debugging use a default category
6205
6206 2004-06-06  David Moore  <dcm@acm.org>
6207
6208         reviewed by Benjamin Otte  <otte@gnome.org>
6209
6210         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6211         (gst_fdsrc_change_state):
6212           reset offset counter when going READY => PAUSED. (fixes #142903)
6213
6214 2004-06-06  ed@catmur.co.uk
6215
6216         reviewed by Benjamin Otte  <otte@gnome.org>
6217
6218         * gst/registries/gstxmlregistry.c:
6219         (gst_xml_registry_rebuild_recurse):
6220           don't rely on g_dir_open to figure out if a file is a directory, use
6221           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6222           directories. (fixes #142850)
6223
6224 2004-06-06  Benjamin Otte  <otte@gnome.org>
6225
6226         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6227           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6228         * libs/gst/bytestream/adapter.c:
6229         * libs/gst/bytestream/adapter.h:
6230           fix copyright in header and typo in debugging category name
6231
6232 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6233
6234         * configure.ac:
6235           bump nano to cvs
6236
6237 === release 0.8.3 ===
6238
6239 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6240
6241         * configure.ac:
6242           update libtool versioning
6243           do a new release
6244         * docs/gst/tmpl/gstelement.sgml:
6245         * docs/gst/tmpl/gsttypes.sgml:
6246         * gst/gstinfo.c: (_gst_debug_init):
6247           put back GST_CAT_DATAFLOW to fix API breakage
6248
6249 2004-06-04  David Schleef  <ds@schleef.org>
6250
6251         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6252
6253 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6254
6255         * configure.ac:
6256           bump nano to cvs
6257
6258 === release 0.8.2 ===
6259
6260 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6261
6262         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6263           check GST_DEBUG environment variable which is parsed the same way
6264           as --gst-debug=
6265
6266 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6267
6268         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6269                             gstmd5sink.c gstshaper.c gsttee.c
6270                             gsttypefindelement.c
6271         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6272
6273           - removing trailing commas at end of enums
6274             it is correct C99 code but C90 compilers would complain
6275             (AIX, Forte, ...)
6276             ('should' fix #143290, at least partially)
6277
6278 2004-05-27  Wim Taymans  <wim@fluendo.com>
6279
6280         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6281         (chain_group_set_enabled), (create_group), (add_to_group),
6282         (merge_groups), (setup_group_scheduler), (group_elements),
6283         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6284         Don't try to follow the pad connections with other groups
6285         when a loop based element is added to the scheduler because
6286         the bin will inform the scheduler about the pad links a little
6287         later.
6288
6289 2004-05-27  Wim Taymans  <wim@fluendo.com>
6290
6291         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6292         (remove_from_chain), (chain_group_set_enabled),
6293         (setup_group_scheduler), (group_element_set_enabled),
6294         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6295         (gst_opt_scheduler_show):
6296         Elements without a group can do a state change as well, just wait
6297         with the setup of the scheduling function when it is added to a
6298         chain.
6299
6300 2004-05-27  Wim Taymans  <wim@fluendo.com>
6301
6302         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6303         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6304         (merge_groups), (setup_group_scheduler),
6305         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6306         (gst_opt_scheduler_show):
6307         Fixes to maintain internal consistency of the scheduler data
6308         structures. 
6309          - adding an enabled group to a chain should increment the
6310            number of enabled elements in that chain.
6311          - removing an enabled group from a chain could disable the
6312            chain.
6313          - removing a disabled group from a chain could enable the
6314            chain.
6315          - add g_assert when internal inconsistency is detected.
6316          - adding an element to a group could increase the number of
6317            links this group has with other groups.
6318          - merging two groups also merges the chains.
6319          - also show group links in the _show method.
6320            
6321
6322 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6323
6324         * gst/gstcaps.c: (gst_caps_structure_simplify):
6325           don't print error messages when there is no error
6326         * gst/gstvalue.c: (gst_value_compare_int_range):
6327           compare the second value, too
6328         * testsuite/caps/Makefile.am:
6329         * testsuite/caps/random.c: (assert_on_error), (main):
6330           add tests to make sure the two things above are checked for
6331
6332 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6333
6334         * configure.ac:
6335         * libs/gst/dataprotocol/Makefile.am:
6336         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6337         * libs/gst/dataprotocol/dataprotocol.h:
6338           wrap header in GST_ENABLE_NEW.  make code use it
6339
6340 2004-05-23  Johan Dahlin  <johan@gnome.org>
6341
6342         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6343         so verbose and print GstElement signal names all the time.
6344
6345 2004-05-22  David Schleef  <ds@schleef.org>
6346
6347         * gst/registries/gstxmlregistry.c:
6348         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6349         (bug #142957)
6350
6351 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6352
6353         * configure.ac:
6354           scrub cflags for glib2 so gcc doesn't complain when glib is in
6355           /usr/local
6356
6357 2004-05-21  Johan Dahlin  <johan@gnome.org>
6358
6359         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6360         __GNUC__, patch from Brian Cameron, fixes bug #142804
6361
6362 2004-05-20  David Schleef  <ds@schleef.org>
6363
6364         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6365         comparison code.  (bug #142819)
6366
6367 2004-05-20  Wim Taymans  <wim@fluendo.com>
6368
6369         * gst/gstbuffer.c: (gst_buffer_default_copy):
6370         * gst/gstbuffer.h:
6371         Added Comment to a flag.
6372         copy relevant flags in _buffer_copy.
6373
6374 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6375
6376         reviewed by: Wim Taymans <wim at fluendo dot com>
6377
6378         * gst/gstbuffer.h:
6379           add GST_BUFFER_IN_CAPS buffer flag
6380         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6381         (gst_structure_parse_any_list), (gst_structure_parse_list),
6382         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6383         * gst/gstvalue.c: (gst_value_serialize_any_list),
6384         (gst_value_transform_any_list_string),
6385         (gst_value_list_prepend_value), (gst_value_list_append_value),
6386         (gst_value_list_get_size), (gst_value_list_get_value),
6387         (gst_value_transform_list_string),
6388         (gst_value_transform_fixed_list_string),
6389         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6390         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6391         (_gst_value_initialize):
6392         * gst/gstvalue.h:
6393           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6394           < , > as a format.
6395         * testsuite/caps/string-conversions.c: (main):
6396           add regression tests for < >
6397
6398 2004-05-20  Johan Dahlin  <johan@gnome.org>
6399
6400         * docs/gst/Makefile.am (all-local): Re-add
6401
6402 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6403
6404         * docs/gst/Makefile.am:
6405         * docs/gst/gstreamer-docs.sgml:
6406         * docs/libs/Makefile.am:
6407         * docs/libs/gstreamer-libs-docs.sgml:
6408           fix distcheck issues
6409
6410 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6411
6412         * libs/gst/dataprotocol/Makefile.am:
6413           add to autotest
6414
6415 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6416
6417         * libs/gst/dataprotocol/Makefile.am:
6418         * libs/gst/dataprotocol/dataprotocol.c:
6419         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6420         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6421         * libs/gst/dataprotocol/dp-private.h:
6422           use GST macros to read/write fixed length ints
6423           add some more asserts
6424
6425 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6426
6427         * docs/libs/gstreamer-libs-docs.sgml:
6428         * docs/libs/gstreamer-libs-sections.txt:
6429           remove idct and putbits
6430         * configure.ac:
6431         * docs/libs/tmpl/gstdataprotocol.sgml:
6432         * libs/gst/Makefile.am:
6433         * libs/gst/dataprotocol/Makefile.am:
6434         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6435         (buffer_test), (caps_test), (event_test), (main):
6436         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6437         (gst_dp_dump_byte_array), (gst_dp_init),
6438         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6439         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6440         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6441         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6442         (gst_dp_validate_header), (gst_dp_validate_payload),
6443         (gst_dp_validate_packet), (plugin_init):
6444         * libs/gst/dataprotocol/dataprotocol.h:
6445         * libs/gst/dataprotocol/dp-private.h:
6446           add dataprotocol
6447
6448 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6449
6450         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6451           fix int variable deserialization and add a helper so we can actually
6452           debug this.
6453
6454 2004-05-18  David Schleef  <ds@schleef.org>
6455
6456         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6457           argv[0].  Calling yourself is probably not the best way to
6458           construct a test like this, btw.
6459
6460 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6461
6462         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6463           don't claim to be more intelligent than a scheduler when the
6464           scheduler claims the pipeline is stopped
6465         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6466         (safe_cothread_destroy),
6467         (gst_entry_scheduler_remove_all_cothreads),
6468         (gst_entry_scheduler_reset), (_remove_cothread),
6469         (gst_entry_scheduler_state_transition):
6470           hold off cothread destruction if we're not in main cothread
6471         * configure.ac:
6472         * testsuite/Makefile.am:
6473           add new test dir
6474         * testsuite/schedulers/.cvsignore:
6475         * testsuite/schedulers/Makefile.am:
6476           add tests
6477         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6478           check relinking and adding/removing elements from a running pipeline
6479         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6480           check unlinking in a running pipeline
6481         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6482           check unreffing a running pipeline
6483         * testsuite/schedulers/useless_iteration.c: (main):
6484           check iterating a pipeline that contains running threads works
6485
6486 2004-05-18  David Schleef  <ds@schleef.org>
6487
6488         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6489           is false.
6490
6491 2004-05-18  Wim Taymans  <wim@fluendo.com>
6492
6493         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6494         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6495         Fixed an error introduced with patch for 1.63. When setting
6496         a get based element as the entry point in a group, make sure
6497         to mark the group as GET based.
6498
6499 2004-05-18  Wim Taymans  <wim@fluendo.com>
6500
6501         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6502         (setup_group_scheduler), (loop_group_schedule_function),
6503         (gst_opt_scheduler_pad_link):
6504         Added some more debug info and fixed a bug where the group
6505         type was set to LOOP but it was in fact unknown.
6506
6507 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6508
6509         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6510           make resetting scheduler work twice in a row
6511
6512 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6513
6514         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6515         (CREATE_USERIALIZATION), (_gst_value_initialize),
6516         (gst_value_compare_float), (gst_value_serialize_float),
6517         (gst_value_deserialize_float), (gst_value_compare_enum),
6518         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6519           add serialization and comparison functions for long, int64, enum and
6520           float values
6521         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6522           use best serialization function in type hierarchy instead of only a
6523           matching one. This is required for enums to work.
6524         * gst/parse/grammar.y:
6525           use gst_caps_deserialize
6526         * testsuite/parse/Makefile.am:
6527           parse1 now works
6528         * testsuite/parse/parse1.c: (main):
6529           remove aggregator check, aggregator is broken, this test works now
6530           but fails because of bug #138012
6531         * testsuite/parse/parse2.c: (main):
6532           s/xvideosink/xvimagesink - this test looks a lot like we should
6533           disable it
6534
6535 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6536
6537         * gst/gstelement.c: (gst_element_class_init):
6538           whoops, store the signal id correctly
6539         * gst/schedulers/gstbasicscheduler.c:
6540         (gst_basic_scheduler_chain_wrapper):
6541           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6542           chain function isn't linked
6543
6544 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6545         * configure.ac:
6546         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6547         support until we decide where the flags should be used
6548         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6549         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6550         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6551         Output refused caps in the debug info
6552
6553 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6554
6555         * gst/elements/gstidentity.c: (gst_identity_chain):
6556           add duration debug
6557         * gst/gstinfo.c: (gst_debug_log_default):
6558           add timestamp
6559
6560 2004-05-13  Benjamin Otte  <otte@gnome.org>
6561
6562         * gst/gstpipeline.c: (gst_pipeline_dispose),
6563         (gst_pipeline_change_state):
6564           call gst_scheduler_reset on dispose (fixes #141416)
6565
6566 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6567
6568         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6569           compute mapsize correctly
6570         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6571           use correct datatypes when calling a varargs function
6572         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6573           push a DISCONT event as first thing
6574         * gst/gst_private.h:
6575         * gst/gstinfo.c: (_gst_debug_init):
6576           remove GST_DATAFLOW debugging category
6577         * gst/gstbin.c: (gst_bin_iterate):
6578           use GST_SCHEDULING category
6579         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6580         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6581         (gst_pad_call_get_function):
6582           add GST_DATAFLOW to easily track flow of buffers or events.
6583         * gst/gstqueue.c: (gst_queue_get_type),
6584         (gst_queue_handle_pending_events), (gst_queue_chain),
6585         (gst_queue_get), (gst_queue_handle_src_event):
6586           use own static debugging category GST_DATAFLOW for dataflow,
6587           use DEBUG category for showing which path events go, use LOG
6588           category for buffers.
6589
6590 2004-05-10  David Schleef  <ds@schleef.org>
6591
6592         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6593
6594 2004-05-10  David Schleef  <ds@schleef.org>
6595
6596         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6597         symbols, because otherwise we don't know what they are.  Thanks,
6598         the GStreamer team.
6599         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6600
6601 2004-05-10  David Schleef  <ds@schleef.org>
6602
6603         (from Steve Lhomme)
6604         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6605         are deleted.  Fix.
6606         * win32/Makefile.inspect:
6607         * win32/Makefile.launch:
6608         * win32/Makefile.register:
6609
6610 2004-05-10  David Schleef  <ds@schleef.org>
6611
6612         * gst/gstinfo.h: Add missing inline function.
6613         * gst/gsttrace.c: add include
6614         * gst/parse/grammar.y: remove unused code
6615         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6616         more portable.
6617         * tools/gst-register.c: wrap unistd.h
6618         
6619         More additions/fixes from Steve for the MSVC build.
6620         * win32/GStreamer.vcproj:
6621         * win32/Makefile:
6622         * win32/Makefile.inspect:
6623         * win32/Makefile.launch:
6624         * win32/Makefile.register:
6625         * win32/README.txt:
6626         * win32/gst-inspect.vcproj:
6627         * win32/gst-launch.vcproj:
6628         * win32/gst-register.vcproj:
6629         * win32/gstbytestream.def:
6630         * win32/gstbytestream.vcproj:
6631         * win32/gstconfig.h:
6632         * win32/gstelements.def:
6633         * win32/gstelements.vcproj:
6634         * win32/gstenumtypes.c:
6635         * win32/gstenumtypes.h:
6636         * win32/gstoptimalscheduler.def:
6637         * win32/gstoptimalscheduler.vcproj:
6638         * win32/gstreamer.def:
6639         * win32/gstspider.def:
6640         * win32/gstspider.vcproj:
6641         * win32/gstversion.h:
6642         * win32/msvc71.sln:
6643
6644 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6645
6646         * gst/gstelement.c: (gst_element_class_init),
6647         (gst_element_no_more_pads):
6648         * gst/gstelement.h:
6649           add gst_element_no_more_pads and the "no-more-pads" signal
6650
6651 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6652
6653         * gst/gstregistry.c: (gst_registry_add_plugin):
6654           refuse to add plugins when a plugin with same name is already
6655           registered. Fixes a bunch of "How to remove plugins?" issues.
6656           May lead to other problems though, let's test
6657
6658 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6659
6660         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6661         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6662         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6663
6664 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6665
6666         * tests/Makefile.am: fix am16 issue
6667
6668 2004-05-09  Benjamin Otte  <otte@gnome.org>
6669
6670         * libs/gst/bytestream/Makefile.am:
6671           we should indeed add .c files to makefiles or they won't be built
6672           (d'oh)
6673
6674 2004-05-08  Benjamin Otte  <otte@gnome.org>
6675
6676         * gst/gstpad.c: (gst_pad_proxy_fixate):
6677           really reduce the set of caps
6678
6679 2004-05-08  Benjamin Otte  <otte@gnome.org>
6680
6681         * tests/Makefile.am:
6682         * tests/spidey_bench.c: (handoff), (main):
6683           add benchmark to test how long spider needs to create a pipeline
6684
6685 2004-05-08  Benjamin Otte  <otte@gnome.org>
6686
6687         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6688           mark links as unengaged when unnegotiating instead of deactivating.
6689           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6690
6691 2004-05-08  Benjamin Otte  <otte@gnome.org>
6692
6693         * docs/manual/helloworld.xml:
6694           s/audiosink/osssink (patch by Patrick Guimond)
6695
6696 2004-05-07  David Schleef  <ds@schleef.org>
6697
6698         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6699         since it contains important stuff.
6700
6701 2004-05-07  David Schleef  <ds@schleef.org>
6702
6703         * testsuite/caps/caps.c: (test3), (main): A check for appending
6704         ANY caps.
6705
6706 2004-05-07  David Schleef  <ds@schleef.org>
6707
6708         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6709         which may contain commas.  Fixes detection of -Wa,-mregnames
6710
6711 2004-05-06  David Schleef  <ds@schleef.org>
6712
6713         Changes to handle compilers that don't have variadic macro
6714         support.  In particular, glib headers define some inlines
6715         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6716         builds.
6717         * gst/Makefile.am:
6718         * gst/cothreads.c:
6719         * gst/elements/gstfdsink.c:
6720         * gst/elements/gstfdsrc.c:
6721         * gst/elements/gstfilesink.c:
6722         * gst/elements/gstfilesrc.c:
6723         * gst/gst_private.h:
6724         * gst/gstatomic.c:
6725         * gst/gstcaps.c: (gst_caps_append):
6726         * gst/gstcpu.c: (gst_cpuid_i386):
6727         * gst/gstelement.c:
6728         * gst/gsterror.c:
6729         * gst/gstfilter.c:
6730         * gst/gstinfo.h:
6731         * gst/gstprobe.c:
6732         * gst/gstquery.c:
6733         * gst/gstregistry.c:
6734         * gst/gststructure.c:
6735         * gst/gsttaginterface.c:
6736         * gst/gsttrace.c: (gst_trace_new):
6737         * gst/gsttrashstack.c:
6738         * gst/gsturi.c:
6739         * gst/gstvalue.c:
6740         * gst/parse/grammar.y:
6741         * gst/parse/parse.l:
6742         * tools/gst-inspect.c: (main):
6743         * tools/gst-launch.c: (main):
6744         * tools/gst-xmlinspect.c: (PUT_STRING):
6745
6746 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6747
6748         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6749         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6750         * gst/elements/gstfilesrc.h:
6751           send NEW_MEDIA events correctly
6752         * gst/elements/gsttypefindelement.c: (start_typefinding),
6753         (gst_type_find_element_handle_event):
6754           restart typefinding when we get a NEW_MEDIA event
6755         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6756         (gst_bin_dispose):
6757           don't die when someone removes elements in callbacks
6758         * gst/gstelement.c: (gst_element_change_state):
6759           improve debugging
6760         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
6761           we need a NEW_MEDIA event to engage a link
6762         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
6763           don't g_print debugging stuff
6764         * testsuite/caps/simplify.c: (check_caps):
6765
6766 2004-05-04  Benjamin Otte  <otte@gnome.org>
6767
6768         * gst/parse/grammar.y:
6769           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
6770
6771 2004-05-04  Benjamin Otte  <otte@gnome.org>
6772
6773         * testsuite/caps/renegotiate.c: (main):
6774           improve output in error case
6775
6776 2004-05-04  Benjamin Otte  <otte@gnome.org>
6777
6778         * gst/parse/grammar.y:
6779           fix assert to not trigger when there's no error argument
6780         * gst/parse/parse.l:
6781           fix definition of caps to allow more than two structures
6782         * testsuite/caps/Makefile.am:
6783         * testsuite/caps/renegotiate.c: (main):
6784           it's sinesrc and works in that case
6785
6786 2004-05-04  Wim Taymans  <wim@fluendo.com>
6787
6788         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6789         (group_dec_link), (gst_opt_scheduler_pad_unlink):
6790         when removing an element from a group, we always need to
6791         decrement the link count that this group had with other 
6792         groups through the element.
6793         added an extra assert to catch inconsistencies when decrementing
6794         the link count.
6795
6796 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6797
6798         * configure.ac:
6799         * docs/gst/Makefile.am:
6800         * docs/gst/gstreamer-sections.txt:
6801         * docs/gst/tmpl/gstcompat.sgml:
6802         * examples/appreader/Makefile.am:
6803         * examples/cutter/Makefile.am:
6804         * examples/events/Makefile.am:
6805         * examples/helloworld/Makefile.am:
6806         * examples/helloworld2/Makefile.am:
6807         * examples/launch/Makefile.am:
6808         * examples/manual/Makefile.am:
6809         * examples/mixer/Makefile.am:
6810         * examples/pingpong/Makefile.am:
6811         * examples/plugins/Makefile.am:
6812         * examples/queue/Makefile.am:
6813         * examples/queue2/Makefile.am:
6814         * examples/queue3/Makefile.am:
6815         * examples/queue4/Makefile.am:
6816         * examples/retag/Makefile.am:
6817         * examples/thread/Makefile.am:
6818         * examples/typefind/Makefile.am:
6819         * examples/xml/Makefile.am:
6820         * gst/Makefile.am:
6821         * gst/autoplug/Makefile.am:
6822         * gst/elements/Makefile.am:
6823         * gst/gstcompat.h:
6824         * gst/indexers/Makefile.am:
6825         * gst/parse/Makefile.am:
6826         * gst/registries/Makefile.am:
6827         * gst/schedulers/Makefile.am:
6828         * libs/gst/bytestream/Makefile.am:
6829         * libs/gst/control/Makefile.am:
6830         * libs/gst/getbits/Makefile.am:
6831         * po/af.po:
6832         * po/az.po:
6833         * po/en_GB.po:
6834         * po/fr.po:
6835         * po/nl.po:
6836         * po/sr.po:
6837         * po/sv.po:
6838         * po/tr.po:
6839         * po/uk.po:
6840         * tests/Makefile.am:
6841         * tests/bufspeed/Makefile.am:
6842         * tests/instantiate/Makefile.am:
6843         * tests/memchunk/Makefile.am:
6844         * tests/muxing/Makefile.am:
6845         * tests/negotiation/Makefile.am:
6846         * tests/probes/Makefile.am:
6847         * tests/sched/Makefile.am:
6848         * tests/seeking/Makefile.am:
6849         * tests/threadstate/Makefile.am:
6850         * testsuite/caps/Makefile.am:
6851         * testsuite/cleanup/Makefile.am:
6852         * testsuite/dlopen/Makefile.am:
6853         * testsuite/dynparams/Makefile.am:
6854         * testsuite/plugin/Makefile.am:
6855         * testsuite/states/Makefile.am:
6856         * tools/Makefile.am:
6857           reorganize compile/link flags to be consistent
6858           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
6859
6860 2004-05-04  David Schleef  <ds@schleef.org>
6861
6862         The "once more, with feeling" check-in.
6863         * testsuite/caps/Makefile.am: dist caps_strings
6864         * testsuite/caps/renegotiate.c: (main): This test triggers a
6865           segfault in the core.  Marking as failing.
6866
6867 2004-05-03  David Schleef  <ds@schleef.org>
6868
6869         * testsuite/caps/deserialize.c: (main): Fix problems noticed
6870           by the build bots.
6871         * testsuite/caps/renegotiate.c: (main): Same.
6872
6873 2004-05-03  David Schleef  <ds@schleef.org>
6874
6875         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
6876
6877 2004-05-03  David Schleef  <ds@schleef.org>
6878
6879         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
6880           variable to find our source file.
6881
6882 2004-05-03  David Schleef  <ds@schleef.org>
6883
6884         * configure.ac:  Link plugins with libgstreamer and dependent
6885           libraries
6886         * testsuite/caps/Makefile.am:
6887         * testsuite/caps/caps_strings:
6888         * testsuite/caps/deserialize.c: (main): Add a little test to slog
6889           through a file of caps strings and test each one
6890
6891 2004-05-04  Benjamin Otte  <otte@gnome.org>
6892
6893         * libs/gst/bytestream/Makefile.am:
6894         * libs/gst/bytestream/adapter.c: 
6895         * libs/gst/bytestream/adapter.h:
6896           add GstAdapter, similar to bytestream, but doesn't require ugly event
6897           handling or uglier loopbased elements
6898
6899 2004-05-03  David Schleef  <ds@schleef.org>
6900
6901         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
6902         * testsuite/caps/erathostenes.c:
6903         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
6904
6905 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6906
6907         * docs/pwg/pwg.xml:
6908           remove hardcoded stylesheet path (duh)
6909         * docs/random/release:
6910         * docs/gst/gstreamer-sections.txt:
6911         * gst/Makefile.am:
6912         * gst/gst.h:
6913         * gst/gst_private.h:
6914         * gst/gstcaps.c:
6915         * gst/gstevent.c:
6916         * gst/gstformat.c:
6917         * gst/gstinfo.c:
6918         * gst/gstinfo.h:
6919         * gst/gstinterface.c:
6920         * gst/gstmemchunk.c:
6921         * gst/gstprobe.c:
6922         * gst/gstquery.c:
6923         * gst/gstregistry.c:
6924         * gst/gstregistrypool.c:
6925         * gst/gststructure.c:
6926         * gst/gsttaginterface.c:
6927         * gst/gstthread.c:
6928         * gst/gsttrace.c:
6929         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
6930         * gst/gsturi.c:
6931         * gst/gstvalue.c:
6932           deprecate gst_info; remove gstlog.h
6933    
6934
6935 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6936
6937         * Makefile.am:
6938         * po/en_GB.po:
6939         * po/sv.po:
6940         * po/uk.po:
6941           updated translations
6942
6943 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6944
6945         * gst/gstbin.c: (gst_bin_dispose):
6946           better debugging
6947
6948 2004-05-03  Johan Dahlin  <johan@gnome.org>
6949
6950         * gst/schedulers/gstoptimalscheduler.c
6951         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
6952         really is a GstElement. Avoids critical when running gst-launch -v
6953         and a oggdemux/decoding pipeline.
6954
6955 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6956
6957         * docs/gst/tmpl/gstpipeline.sgml :
6958         * docs/manual/elements-api.xml :
6959                 doc fix by Patrick Guimond (Protector) from devel ML
6960                 reviewed by ronald
6961
6962 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6963
6964         * docs/gst/Makefile.am :
6965         * docs/libs/Makefile.am :
6966                 apply a patch from Arwed v. Merkatz so that gtk-doc
6967                 generated docs install (same for .devhelp file)
6968                 (fixes part 1 of #138836)
6969
6970 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6971
6972         * docs/faq/dependencies.xml: typo
6973         * docs/faq/getting.xml :
6974             - fix download URL for new gstreamer site
6975             - hide sf.net download page as latest version aren't there
6976             - fix apt URLs
6977             - fill "get via CVS" paragraph (link to dev page on the site)
6978         * docs/faq/general.xml:
6979             hide status tables as they no more exists
6980             change case on plugins license file to reflect reality
6981         * docs/faq/troubleshooting.xml:
6982             remove the wiki question/answer as there is no more wiki
6983
6984 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
6985
6986         * gst/gsterror.h:
6987           include the headers needed for declarations used in this header
6988
6989 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6990
6991         * docs/random/uraeus/gstreamer_and_midi.txt :
6992           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
6993           (fixes #132288)
6994
6995 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
6996
6997         reviewed by Benjamin Otte  <otte@gnome.org>
6998
6999         * gst/schedulers/gthread-cothreads.h:
7000           free allocated data for main cothread, too when destroying context
7001           (fixes #141417)
7002
7003 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7004
7005         * docs/manual/goals.xml : remove duplicated paragraph at end 
7006         of doc page (fixes #141448)
7007
7008 2004-04-29  David Schleef  <ds@schleef.org>
7009
7010         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7011         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7012
7013 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7014
7015         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7016           fix property
7017         * gst/gstcaps.c:
7018           fix doc string
7019         * po/POTFILES.in:
7020           rename typefind source file
7021
7022 2004-04-28  David Schleef  <ds@schleef.org>
7023
7024         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7025         * win32/GStreamer.vcproj:
7026         * win32/Makefile:
7027         * win32/config.h:
7028         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7029         (_trewinddir), (_ttelldir), (_tseekdir):
7030         * win32/dirent.h:
7031         * win32/gst-inspect.vcproj:
7032         * win32/gst-launch.vcproj:
7033         * win32/gst-register.vcproj:
7034         * win32/gstbytestream.vcproj:
7035         * win32/gstelements.vcproj:
7036         * win32/gstoptimalscheduler.vcproj:
7037         * win32/gstspider.vcproj:
7038         * win32/gtchar.h:
7039         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7040         * win32/mman.h:
7041         * win32/mman.inl:
7042         * win32/msvc71.sln:
7043
7044 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7045
7046         * gst/gst.c: (init_post):
7047         * gst/gstinfo.c:
7048           remove useless _gst_progname stuff
7049         * tools/gst-inspect.c: (print_field), (print_caps):
7050           improve caps output
7051
7052 2004-04-28  David Schleef  <ds@schleef.org>
7053
7054         Disable parsing of a lot of files that aren't part of the
7055         exported API.  Move corresponding template files to old/,
7056         waiting for removal when they don't contain anything
7057         interesting.
7058         * docs/gst/Makefile.am:
7059         * docs/gst/gstreamer-sections.txt:
7060         * docs/gst/tmpl/cothreads.sgml:
7061         * docs/gst/tmpl/cothreads_compat.sgml:
7062         * docs/gst/tmpl/gettext.sgml:
7063         * docs/gst/tmpl/gobject2gtk.sgml:
7064         * docs/gst/tmpl/grammar.tab.sgml:
7065         * docs/gst/tmpl/gst-i18n-app.sgml:
7066         * docs/gst/tmpl/gst-i18n-lib.sgml:
7067         * docs/gst/tmpl/gst_private.sgml:
7068         * docs/gst/tmpl/gstaggregator.sgml:
7069         * docs/gst/tmpl/gstarch.sgml:
7070         * docs/gst/tmpl/gstatomic_impl.sgml:
7071         * docs/gst/tmpl/gstbufferstore.sgml:
7072         * docs/gst/tmpl/gstdata_private.sgml:
7073         * docs/gst/tmpl/gstdisksink.sgml:
7074         * docs/gst/tmpl/gstdisksrc.sgml:
7075         * docs/gst/tmpl/gstelementfactory.sgml:
7076         * docs/gst/tmpl/gstextratypes.sgml:
7077         * docs/gst/tmpl/gstfakesink.sgml:
7078         * docs/gst/tmpl/gstfakesrc.sgml:
7079         * docs/gst/tmpl/gstfdsink.sgml:
7080         * docs/gst/tmpl/gstfdsrc.sgml:
7081         * docs/gst/tmpl/gstfilesink.sgml:
7082         * docs/gst/tmpl/gstfilesrc.sgml:
7083         * docs/gst/tmpl/gsthttpsrc.sgml:
7084         * docs/gst/tmpl/gstidentity.sgml:
7085         * docs/gst/tmpl/gstindexfactory.sgml:
7086         * docs/gst/tmpl/gstmarshal.sgml:
7087         * docs/gst/tmpl/gstmd5sink.sgml:
7088         * docs/gst/tmpl/gstmultidisksrc.sgml:
7089         * docs/gst/tmpl/gstmultifilesrc.sgml:
7090         * docs/gst/tmpl/gstpadtemplate.sgml:
7091         * docs/gst/tmpl/gstpipefilter.sgml:
7092         * docs/gst/tmpl/gstschedulerfactory.sgml:
7093         * docs/gst/tmpl/gstsearchfuncs.sgml:
7094         * docs/gst/tmpl/gstshaper.sgml:
7095         * docs/gst/tmpl/gstspider.sgml:
7096         * docs/gst/tmpl/gstspideridentity.sgml:
7097         * docs/gst/tmpl/gststatistics.sgml:
7098         * docs/gst/tmpl/gsttee.sgml:
7099         * docs/gst/tmpl/gsttimecache.sgml:
7100         * docs/gst/tmpl/gsttypefind.sgml:
7101         * docs/gst/tmpl/gsttypefindfactory.sgml:
7102         * docs/gst/tmpl/gstxmlregistry.sgml:
7103         * docs/gst/tmpl/gthread-cothreads.sgml:
7104         * docs/gst/tmpl/old/cothreads.sgml:
7105         * docs/gst/tmpl/old/cothreads_compat.sgml:
7106         * docs/gst/tmpl/old/gettext.sgml:
7107         * docs/gst/tmpl/old/gobject2gtk.sgml:
7108         * docs/gst/tmpl/old/grammar.tab.sgml:
7109         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7110         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7111         * docs/gst/tmpl/old/gst_private.sgml:
7112         * docs/gst/tmpl/old/gstaggregator.sgml:
7113         * docs/gst/tmpl/old/gstarch.sgml:
7114         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7115         * docs/gst/tmpl/old/gstbufferstore.sgml:
7116         * docs/gst/tmpl/old/gstdata_private.sgml:
7117         * docs/gst/tmpl/old/gstdisksink.sgml:
7118         * docs/gst/tmpl/old/gstdisksrc.sgml:
7119         * docs/gst/tmpl/old/gstelementfactory.sgml:
7120         * docs/gst/tmpl/old/gstextratypes.sgml:
7121         * docs/gst/tmpl/old/gstfakesink.sgml:
7122         * docs/gst/tmpl/old/gstfakesrc.sgml:
7123         * docs/gst/tmpl/old/gstfdsink.sgml:
7124         * docs/gst/tmpl/old/gstfdsrc.sgml:
7125         * docs/gst/tmpl/old/gstfilesink.sgml:
7126         * docs/gst/tmpl/old/gstfilesrc.sgml:
7127         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7128         * docs/gst/tmpl/old/gstidentity.sgml:
7129         * docs/gst/tmpl/old/gstindexfactory.sgml:
7130         * docs/gst/tmpl/old/gstmarshal.sgml:
7131         * docs/gst/tmpl/old/gstmd5sink.sgml:
7132         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7133         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7134         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7135         * docs/gst/tmpl/old/gstpipefilter.sgml:
7136         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7137         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7138         * docs/gst/tmpl/old/gstshaper.sgml:
7139         * docs/gst/tmpl/old/gstspider.sgml:
7140         * docs/gst/tmpl/old/gstspideridentity.sgml:
7141         * docs/gst/tmpl/old/gststatistics.sgml:
7142         * docs/gst/tmpl/old/gsttee.sgml:
7143         * docs/gst/tmpl/old/gsttimecache.sgml:
7144         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7145         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7146         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7147         * docs/gst/tmpl/old/types.sgml:
7148         * docs/gst/tmpl/types.sgml:
7149
7150         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7151         gtkdoc-scan doesn't like files with the same name in different
7152         directories.
7153         * gst/elements/Makefile.am:
7154         * gst/elements/gstelements.c:
7155         * gst/elements/gsttypefind.c: 
7156         * gst/elements/gsttypefind.h:
7157         * gst/elements/gsttypefindelement.c:
7158         * gst/elements/gsttypefindelement.h:
7159
7160 2004-04-28  David Schleef  <ds@schleef.org>
7161
7162         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7163         patch (bug #141317):
7164         * gst/gst-i18n-lib.h: Allow disabling gettext.
7165         * gst/gstatomic_impl.h: disable warning when it's dumb.
7166         * gst/gstclock.c: fix include
7167         * gst/gstcompat.h: fix variadic macro
7168         * gst/gstinfo.c: fix include
7169         * gst/gstmacros.h: add defines for inlines on MSVC
7170         * gst/gstplugin.c: fix includes
7171         * gst/gstregistry.c: fix includes
7172         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7173         * gst/gstsystemclock.c: fix include
7174         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7175         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7176         * gst/registries/gstxmlregistry.c:
7177         (gst_xml_registry_parse_element_factory): fix use of non-portable
7178         functions
7179         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7180         * libs/gst/control/dparammanager.h: same
7181
7182 2004-04-28  David Schleef  <ds@schleef.org>
7183
7184         Move a bunch of unused files to old/ with names that are
7185         not case-insensitive-unique.  These files still contain some
7186         useful information that needs to be merged into gstbin.sgml,
7187         etc., so they shouldn't be deleted yet.
7188         * docs/gst/tmpl/GstBin.sgml:
7189         * docs/gst/tmpl/GstBuffer.sgml:
7190         * docs/gst/tmpl/GstCaps.sgml:
7191         * docs/gst/tmpl/GstClock.sgml:
7192         * docs/gst/tmpl/GstCompat.sgml:
7193         * docs/gst/tmpl/GstData.sgml:
7194         * docs/gst/tmpl/GstElement.sgml:
7195         * docs/gst/tmpl/GstEvent.sgml:
7196         * docs/gst/tmpl/GstIndex.sgml:
7197         * docs/gst/tmpl/GstStructure.sgml:
7198         * docs/gst/tmpl/GstTag.sgml:
7199         * docs/gst/tmpl/old/GstBin.sgml:
7200         * docs/gst/tmpl/old/GstBuffer.sgml:
7201         * docs/gst/tmpl/old/GstCaps.sgml:
7202         * docs/gst/tmpl/old/GstClock.sgml:
7203         * docs/gst/tmpl/old/GstCompat.sgml:
7204         * docs/gst/tmpl/old/GstData.sgml:
7205         * docs/gst/tmpl/old/GstElement.sgml:
7206         * docs/gst/tmpl/old/GstEvent.sgml:
7207         * docs/gst/tmpl/old/GstIndex.sgml:
7208         * docs/gst/tmpl/old/GstStructure.sgml:
7209         * docs/gst/tmpl/old/GstTag.sgml:
7210
7211 2004-04-28  David Schleef  <ds@schleef.org>
7212
7213         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7214         (gst_caps_append), (gst_caps_append_structure),
7215         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7216         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7217         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7218         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7219         (gst_caps_intersect), (gst_caps_normalize),
7220         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7221         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7222         * gst/gstcaps.h: use GST_IS_CAPS().
7223
7224 2004-04-26  David Schleef  <ds@schleef.org>
7225
7226         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7227         assembly.  gcc doesn't handle it correctly. (bug #141083)
7228         * gst/gsttrashstack.h: same
7229
7230 2004-04-25  Benjamin Otte  <otte@gnome.org>
7231
7232         * gst/gstelement.c: (gst_element_change_state):
7233           fix assertion to do an int comparison
7234
7235 2004-04-25  Benjamin Otte  <otte@gnome.org>
7236
7237         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7238           better debugging output on error
7239
7240 2004-04-25  Benjamin Otte  <otte@gnome.org>
7241
7242         * gst/gstcaps.c: (gst_caps_subtract):
7243           fix memleak
7244
7245 2004-04-23  Benjamin Otte  <otte@gnome.org>
7246
7247         * gst/gstvalue.c: (gst_value_compare_buffer),
7248         (_gst_value_initialize):
7249           add comparison function for buffers
7250
7251 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7252
7253         * docs/pwg/pwg.xml:
7254           Just found out that this so-called "ima-wav" format is really
7255           just "dvi adpcm" (according to the MS WAV documentation). So
7256           renaming it. We didn't use it yet anyway.
7257
7258 2004-04-23  Benjamin Otte  <otte@gnome.org>
7259
7260         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7261           call gst_caps_is_subset
7262
7263 2004-04-23  Benjamin Otte  <otte@gnome.org>
7264
7265         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7266         (gst_caps_is_subset):
7267           add documentation
7268
7269 2004-04-23  Benjamin Otte  <otte@gnome.org>
7270           
7271         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7272         (gst_caps_structure_subtract), (gst_caps_subtract),
7273         (gst_caps_structure_figure_out_union),
7274         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7275           fix simplifying and subtracting not working correctly with optional
7276           properties
7277           solve assorted problems that make it now simplify ebven more
7278         * docs/gst/tmpl/gstcaps.sgml:
7279         * gst/gstcaps.h:
7280           make gst_caps_do_simplify return a bool to indicate if it simplified
7281         * testsuite/caps/simplify.c: (main):
7282           add more checks. The tests is quite a bit useless right now because
7283           the core is heavily simplifying itself.
7284         * testsuite/caps/caps.h:
7285           fix caps to contain all optional properties
7286
7287 2004-04-22  Benjamin Otte  <otte@gnome.org>
7288
7289         * docs/gst/tmpl/gstcaps.sgml:
7290         * docs/gst/tmpl/gstfilesrc.sgml:
7291         * docs/gst/tmpl/gststructure.sgml:
7292         * docs/gst/tmpl/gstvalue.sgml:
7293           update for recent API changes
7294         * gst/gstcaps.c: (gst_caps_do_simplify):
7295           fix to stop trying with a freed structure
7296         * gst/gstpad.c: (gst_pad_link_fixate):
7297           simplify caps
7298         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7299           remove C++ comment
7300         * gst/gstpad.h:
7301           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7302         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7303         (gst_structure_to_string):
7304           keep the correct type when using lists of ranges
7305         * gst/gstvalue.c: (gst_value_list_prepend_value),
7306         (gst_value_list_append_value):
7307           copy the value before adding to the list (d'oh)
7308         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7309         (gst_value_subtract_int_range_int_range):
7310           handle overflows correctly
7311         * gst/gstvalue.c: (gst_value_subtract_from_list):
7312           fix memleak
7313         * testsuite/caps/caps.h:
7314           add a caps that caused segfaults
7315
7316 2004-04-22  Benjamin Otte  <otte@gnome.org>
7317
7318         * testsuite/refcounting/pad.c: (main):
7319           fix test
7320
7321 2004-04-22  Benjamin Otte  <otte@gnome.org>
7322
7323         * gst/gstcaps.c: (gst_caps_subtract):
7324           allow subtracting ANY and EMPTY from ANY caps
7325
7326 2004-04-22  Benjamin Otte  <otte@gnome.org>
7327
7328         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7329         (gst_caps_union):
7330           only simplify in functions that create new caps. Simplifying in
7331           gst_caps_append breaks tests.
7332
7333 2004-04-22  Benjamin Otte  <otte@gnome.org>
7334
7335         * gst/gstcaps.c: (gst_caps_structure_simplify):
7336           unset GValue after use
7337         * gst/gstcaps.c: (gst_caps_append), 
7338         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7339           use gst_caps_simplify (reduces registry size by 30%)
7340         * gst/gstpad.c: (gst_pad_template_new):
7341           don't allow NULL caps
7342
7343 2004-04-22  Benjamin Otte  <otte@gnome.org>
7344
7345         * docs/gst/gstreamer-sections.txt:
7346           add gst_caps_do_simplify
7347         * gst/gstcaps.c:
7348           add documentation for gst_caps_do_simplify
7349         * gst/gstvalue.h:
7350           fix typo in gst_value_register_subtract_func declaration for gst-doc
7351
7352 2004-04-22  Benjamin Otte  <otte@gnome.org>
7353
7354         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7355           fix bug when converting from empty string.
7356         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7357         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7358           use gst_caps_new_empty to allocate a new caps. Only that function
7359           allocates memory for caps now.
7360         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7361         (gst_caps_remove_structure):
7362           add ability to remove one structure (but not to header yet)
7363         * gst/gstcaps.c: (gst_caps_compare_structures),
7364         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7365         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7366         * gst/gstcaps.h:
7367           add gst_caps_do_simplify that tries to simplify a caps in place.
7368           Deprecate old gst_caps_simplify function.
7369         * testsuite/caps/caps.h:
7370           add caps.h containing a common set of caps to test against.
7371         * testsuite/caps/sets.c: (check_caps), (main):
7372           use it.
7373         * testsuite/caps/.cvsignore:
7374         * testsuite/caps/Makefile.am:
7375         * testsuite/caps/simplify.c: (check_caps), (main):
7376           add test to check correctness and efficency of caps simplification.
7377
7378 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7379
7380         reviewed by Benjamin Otte  <otte@gnome.org>
7381
7382         * gst/gstparse.c: (_gst_parse_escape):
7383           Free the GString used in _gst_parse_escape()
7384
7385 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7386
7387         * gst/gstpad.c: (gst_pad_link_negotiate):
7388           refuse to link if the link is not possible
7389         * configure.ac:
7390         * testsuite/Makefile.am:
7391         * testsuite/negotiation/.cvsignore:
7392         * testsuite/negotiation/Makefile.am:
7393         * testsuite/negotiation/pad_link.c: (main):
7394           add test that checks the above behaviour
7395
7396 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7397
7398         * docs/gst/gstreamer-sections.txt:
7399           add newly added API
7400
7401 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7402
7403         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7404         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7405         (gst_filesrc_open_file), (gst_filesrc_close_file),
7406         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7407         * gst/elements/gstfilesrc.h:
7408           add support for non-regular files (#140734)
7409
7410 2004-04-21  Benjamin Otte  <otte@gnome.org>
7411
7412         * gst/gstpad.c: (gst_pad_link_fixate):
7413           add sophisticated error checking code to see if fixation functions
7414           did their fixation right
7415
7416 2004-04-21  Benjamin Otte  <otte@gnome.org>
7417
7418         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7419           check for ANY caps before appending/unioning
7420         * gst/gstcaps.c: (gst_caps_is_subset),
7421         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7422         (gst_caps_structure_subtract), (gst_caps_subtract):
7423         * gst/gstcaps.h:
7424           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7425           the API. deprecate gst_caps_is_equal_fixed
7426         * gst/gstpad.c: (gst_pad_try_set_caps):
7427         * gst/gstqueue.c: (gst_queue_link):
7428           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7429         * gst/gststructure.c: (gst_structure_get_name_id):
7430         * gst/gststructure.h:
7431           add function gst_structure_get_name_id
7432         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7433         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7434         (gst_value_subtract_int_range_int_range),
7435         (gst_value_subtract_double_double_range),
7436         (gst_value_subtract_double_range_double),
7437         (gst_value_subtract_double_range_double_range),
7438         (gst_value_subtract_from_list), (gst_value_subtract_list),
7439         (gst_value_can_intersect), (gst_value_subtract),
7440         (gst_value_can_subtract), (gst_value_register_subtract_func),
7441         (_gst_value_initialize):
7442         * gst/gstvalue.h:
7443           add support for subtracting values from each other. Note that
7444           subtracting means subtracting as in set theory. Required for caps
7445           stuff above.
7446         * testsuite/caps/.cvsignore:
7447         * testsuite/caps/Makefile.am:
7448         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7449         * testsuite/caps/sets.c: (check_caps), (main):
7450         * testsuite/caps/subtract.c: (check_caps), (main):
7451           add tests for subtraction and equality code.
7452
7453 2004-04-20  David Schleef  <ds@schleef.org>
7454
7455         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7456         * gst/indexers/Makefile.am:
7457         * gst/schedulers/Makefile.am:
7458         * libs/gst/bytestream/Makefile.am:
7459         * libs/gst/control/Makefile.am:
7460         * libs/gst/getbits/Makefile.am:
7461
7462 2004-04-20  David Schleef  <ds@schleef.org>
7463
7464         * common/as-libtool.mak: Fine-tune DLL building.
7465         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7466         (like gst-plugins)
7467         * examples/plugins/Makefile.am: remove plugindir
7468         * gst/autoplug/Makefile.am: DLL building fixes
7469         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7470         Windows.
7471         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7472         * gst/indexers/Makefile.am: DLL building fixes
7473         * gst/schedulers/Makefile.am: DLL building fixes.
7474         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7475         * libs/gst/control/Makefile.am: same
7476         * libs/gst/getbits/Makefile.am: same
7477         * testsuite/Makefile.am: New dlopen directory
7478         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7479         when dlopened.
7480         * testsuite/dlopen/dlopen_gst.c: (main): same
7481         * testsuite/dlopen/loadgst.c: (do_test): same
7482
7483 2004-04-20  David Schleef  <ds@schleef.org>
7484
7485         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7486         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7487
7488 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7489
7490         * gst/gstelement.c: (gst_element_wait),
7491         (gst_element_set_time_delay), (gst_element_change_state):
7492           Use GST_TIME_*
7493
7494 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7495
7496         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7497         (gst_spider_identity_plug):
7498           improve debugging messages
7499         * gst/gstbin.c: (gst_bin_remove_func):
7500           make sure the state_change function is only called with simple state
7501           transitions
7502
7503 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7504
7505         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7506         (gst_fakesink_set_property), (gst_fakesink_chain):
7507         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7508         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7509         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7510         * gst/elements/gstidentity.c: (gst_identity_chain),
7511         (gst_identity_set_property):
7512         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7513         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7514           add warnings to _set_property for unknown arguments
7515           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7516
7517 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7518
7519         * Makefile.am:
7520         * docs/manuals.mak:
7521           add .po file download snippet
7522           fix a bug in the doc makefile
7523
7524 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7525
7526         * Makefile.am:
7527         * po/LINGUAS:
7528         * po/en_GB.po:
7529           Added en_GB translation (Gareth Owen)
7530
7531 2004-04-20  Johan Dahlin  <johan@gnome.org>
7532
7533         * gst/gstpad.c (_invent_event): Clean up
7534
7535 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7536
7537         * testsuite/caps/filtercaps.c: (main):
7538           fix test to test things correctly (caps are complicated)
7539
7540 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7541
7542         * testsuite/caps/Makefile.am:
7543         * testsuite/caps/filtercaps.c: (main):
7544           add test (that doesn't work right now, but should)
7545
7546 2004-04-19  David Schleef  <ds@schleef.org>
7547
7548         * configure.ac: Add test for allowing unaligned access.  Add define
7549         to put in gstconfig.h.
7550         * docs/gst/gstreamer-sections.txt: New symbols
7551         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7552         * docs/gst/tmpl/gstfilesrc.sgml:
7553         * docs/gst/tmpl/gstparse.sgml:
7554         * docs/gst/tmpl/gsttypes.sgml:
7555         * docs/gst/tmpl/gstutils.sgml:
7556         * docs/gst/tmpl/gstvalue.sgml:
7557         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7558         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7559         on most !i386/!powerpc architectures.  From Daniel Gazard
7560         <daniel.gazard@free.fr>.  (bug #140156)
7561         * po/af.po: Check in changes made by gettext.
7562         * po/az.po:
7563         * po/fr.po:
7564         * po/nl.po:
7565         * po/sr.po:
7566         * po/sv.po:
7567
7568 2004-04-20  Benjamin Otte  <otte@gnome.org>
7569
7570         * gst/schedulers/entryscheduler.c: 
7571         (gst_entry_scheduler_yield):
7572           refuse to yield when decoupled elements insist on doing that.
7573           At least it's better than crashing
7574
7575 2004-04-19  David Schleef  <ds@schleef.org>
7576
7577         * docs/libs/Makefile.am: Change sinclude to include
7578         * docs/gst/Makefile.am: same
7579         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7580
7581 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7582
7583         * po/LINGUAS:
7584         * po/uk.po:
7585           Added Ukrainian translation (Maxim V. Dziumanenko)
7586
7587 2004-04-19  Johan Dahlin  <johan@gnome.org>
7588
7589         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7590         checking here, do it before calling the function.
7591         Clean up, use for loops instead of while loops while iterating
7592         over lists.
7593
7594         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7595         in debug message.
7596         (gst_spider_create_and_plug): Improve debug message.
7597         General: Replace while loops which iterates over GLists with for
7598         loops. Which are much cleaner, improves readability, especially
7599         for gst_spider_identity_plug
7600
7601         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7602         fixes bug 140477
7603
7604 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7605
7606         * po/LINGUAS:
7607         * po/tr.po:
7608           Added Turkish translation (Baris Cicek)
7609
7610 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7611
7612         * docs/faq/troubleshooting.xml:
7613           Mention gst-register in the FAQ (fixes 139045).
7614
7615 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7616
7617         * docs/gst/gstreamer-sections.txt:
7618
7619 2004-04-17  Benjamin Otte  <otte@gnome.org>
7620
7621         * gst/gstelement.c: (gst_element_dispose):
7622           simplify
7623         * gst/gstpad.c: (gst_pad_call_chain_function):
7624           don't create loads of events due to bad macro usage
7625
7626 2004-04-16  David Schleef  <ds@schleef.org>
7627
7628         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7629         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7630         * gst/gstvalue.c: (gst_value_serialize_buffer),
7631         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7632         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7633         to indicate types that are fixed wrt caps or not.  Switching to
7634         this function fixes (bug #140298).
7635         * gst/gstvalue.h:
7636
7637 2004-04-16  David Schleef  <ds@schleef.org>
7638
7639         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7640         for GST_UNALIGNED_ACESS, since we essentially know which archs
7641         are ok.
7642
7643 2004-04-17  Benjamin Otte  <otte@gnome.org>
7644
7645         * docs/gst/Makefile.am:
7646           ignore gst/parse directory when building docs (fixes #140205)
7647
7648 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7649
7650         * testsuite/refcounting/mem.c: (vmsize):
7651           do error checking
7652
7653 2004-04-16  Johan Dahlin  <johan@gnome.org>
7654
7655         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7656         and gst_pad_call_get_function.
7657
7658 2004-04-15  David Schleef  <ds@schleef.org>
7659
7660         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7661         checks if we can access unaligned memory.
7662         * configure.ac: Use it.
7663
7664 2004-04-16  Benjamin Otte  <otte@gnome.org>
7665
7666         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7667         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7668         * gst/elements/gstfilesrc.h:
7669           s/seek_happened/need_discont/ and require discont before sending any
7670           data
7671
7672 2004-04-15  David Schleef  <ds@schleef.org>
7673
7674         * gst/gstvalue.c: (gst_value_serialize_buffer),
7675         (gst_value_deserialize_buffer), (_gst_value_initialize):
7676         Register these types as fundamental types. (bug #140015)
7677
7678 2004-04-16  Benjamin Otte  <otte@gnome.org>
7679
7680         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7681         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7682         (gst_pad_pull):
7683           implement enforcing discont events before buffers are passed. This
7684           allows state changes of only some elements and later correctly going
7685           on where they left off (or in short: you can now set audio sinks to
7686           NULL to release the device when the pipeline is paused)
7687         * gst/gstpad.c: (gst_pad_call_chain_function),
7688         (gst_pad_call_get_function):
7689         * gst/gstpad.h:
7690           add gst_pad_call_chain_function and gst_pad_call_get_function for
7691           scheduler interaction. They are required because of the changes
7692           above.
7693         * gst/schedulers/entryscheduler.c: (get_buffer),
7694         (gst_entry_scheduler_chain_wrapper),
7695         (gst_entry_scheduler_get_wrapper),
7696         (gst_entry_scheduler_state_transition),
7697         (gst_entry_scheduler_pad_link):
7698         * gst/schedulers/gstbasicscheduler.c:
7699         (gst_basic_scheduler_chain_wrapper),
7700         (gst_basic_scheduler_src_wrapper),
7701         (gst_basic_scheduler_chainhandler_proxy),
7702         (gst_basic_scheduler_gethandler_proxy),
7703         (gst_basic_scheduler_cothreaded_chain),
7704         (gst_basic_scheduler_chain_elements):
7705         * gst/schedulers/gstoptimalscheduler.c:
7706         (get_group_schedule_function), (pad_clear_queued),
7707         (gst_opt_scheduler_pad_link):
7708           use the new functions instead of calling get/chain-functions
7709           directly.
7710
7711 2004-04-15  David Schleef  <ds@schleef.org>
7712
7713         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7714         * docs/gst/tmpl/gstinfo.sgml: same
7715         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7716         gtk-doc put here.
7717         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7718         * examples/queue/queue.c: (main):  We iterate pipelines, not
7719         bins.  (bug #139996)
7720
7721 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7722
7723         * docs/pwg/advanced-types.xml:
7724           Add MS RLE support. Also document Qt RLE although I have no sample
7725           files for that yet. And document an extra property for ADPCM.
7726
7727 2004-04-15  David Schleef  <ds@schleef.org>
7728
7729         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7730         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7731         Windows.
7732
7733 2004-04-15  David Schleef  <ds@schleef.org>
7734
7735         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7736         symbol names to not conflict with new gstinfo.h symbols.
7737         * gst/gstinfo.h: Add inline functions for all those crazy
7738         compilers that don't know how to handle variadic macros (MSVC).
7739
7740 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7741
7742         * configure.ac: bump nano to 1
7743
7744 === release 0.8.1 ===
7745
7746 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7747
7748         * NEWS:
7749         * RELEASE:
7750         * configure.ac:
7751           releasing 0.8.1, "Snow Brigade"
7752
7753 2004-04-14  David Schleef  <ds@schleef.org>
7754
7755         * testsuite/Makefile.am: define tests_ignore
7756         * testsuite/Rules: Added new tests_ignore, which get compiled,
7757         but not run (generally because they're inconsistent or have
7758         heisenbugs).  Now we can ensure all the .c files compile in
7759         testsuite/.
7760         * testsuite/bins/Makefile.am: define tests_ignore
7761         * testsuite/bytestream/Makefile.am:
7762         * testsuite/caps/Makefile.am:
7763         * testsuite/clock/Makefile.am:
7764         * testsuite/debug/Makefile.am:
7765         * testsuite/debug/global.c: (gst_debug_log_one),
7766         (gst_debug_log_two): Fix compilation problem.
7767         * testsuite/dynparams/Makefile.am:
7768         * testsuite/elements/Makefile.am:
7769         * testsuite/ghostpads/Makefile.am:
7770         * testsuite/indexers/Makefile.am:
7771         * testsuite/parse/Makefile.am:
7772         * testsuite/plugin/Makefile.am:
7773         * testsuite/refcounting/Makefile.am:
7774         * testsuite/refcounting/element_pad.c: (main): Don't return leak
7775         results, because it's not calculated correctly.
7776         * testsuite/refcounting/pad.c: (main): same
7777         * testsuite/states/Makefile.am:
7778         * testsuite/tags/Makefile.am:
7779         * testsuite/threads/Makefile.am:
7780
7781 2004-04-14  David Schleef  <ds@schleef.org>
7782
7783         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
7784         generating bad code around the cpu detection asm code.
7785
7786 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7787
7788         * tools/gst-inspect.c: (print_element_info):
7789           print numeric version of rank as well, since we added some - 1
7790           rank values to elements
7791
7792 2004-04-13  David Schleef  <ds@schleef.org>
7793
7794         * configure.ac:  Disable various code when compiling for MinGW.
7795         * gst/elements/Makefile.am:
7796         * gst/elements/gstelements.c:
7797         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7798         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7799         * gst/registries/gstxmlregistry.c: (make_dir):
7800
7801 2004-04-13  David Schleef  <ds@schleef.org>
7802
7803         * gst/Makefile.am:
7804         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7805         assembly.
7806         * gst/gstcpuid_i386.s: remove
7807
7808 2004-04-13  David Schleef  <ds@schleef.org>
7809
7810         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
7811         seems to think it needs to be done.
7812         * docs/gst/tmpl/gstfakesink.sgml:
7813         * docs/gst/tmpl/gstfakesrc.sgml:
7814         * docs/gst/tmpl/gstfdsink.sgml:
7815         * docs/gst/tmpl/gstfdsrc.sgml:
7816         * docs/gst/tmpl/gstfilesink.sgml:
7817         * docs/gst/tmpl/gstfilesrc.sgml:
7818         * docs/gst/tmpl/gstidentity.sgml:
7819         * docs/gst/tmpl/gstmd5sink.sgml:
7820         * docs/gst/tmpl/gstmultifilesrc.sgml:
7821         * docs/gst/tmpl/gstpipefilter.sgml:
7822         * docs/gst/tmpl/gstshaper.sgml:
7823         * docs/gst/tmpl/gstspider.sgml:
7824         * docs/gst/tmpl/gstspideridentity.sgml:
7825         * docs/gst/tmpl/gststatistics.sgml:
7826         * docs/gst/tmpl/gsttee.sgml:
7827         * docs/gst/tmpl/gsttypefind.sgml:
7828         * docs/gst/tmpl/gstutils.sgml:
7829
7830 2004-04-13  David Schleef  <ds@schleef.org>
7831
7832         * configure.ac: Changes to remove POSIXisms (mmap in this case)
7833         and to build DLLs on Windows.
7834         * gst/Makefile.am:
7835         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7836         (gst_filesrc_open_file):
7837         * gst/schedulers/Makefile.am:
7838
7839 2004-04-13  David Schleef  <ds@schleef.org>
7840
7841         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
7842         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
7843         fixating lists.
7844
7845 2004-04-12  David Schleef  <ds@schleef.org>
7846
7847         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
7848         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
7849         to using it.
7850         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
7851         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
7852         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
7853         * gst/gststructure.c: (gst_structure_set_valist),
7854         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
7855         support for buffers.
7856         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
7857         intended to be const.
7858         * gst/gsttag.h: same
7859         * gst/gstvalue.c: (gst_value_serialize_buffer),
7860         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
7861         to (de)serialize buffers.
7862         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
7863         * testsuite/caps/string-conversions.c: (main):
7864         * testsuite/caps/value_serialize.c: add new test
7865
7866 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7867
7868         * docs/pwg/advanced-types.xml:
7869           Document MS video 1 (video/x-msvideocodec) mimetype/format.
7870
7871 2004-04-11  Benjamin Otte  <otte@gnome.org>
7872
7873         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
7874           rename categories to basic_*
7875         * gst/schedulers/gstbasicscheduler.c: 
7876         (gst_basic_scheduler_chain_wrapper),
7877         (gst_basic_scheduler_chainhandler_proxy),
7878         (gst_basic_scheduler_gethandler_proxy),
7879         (gst_basic_scheduler_eventhandler_proxy):
7880           debugging category fixes - put common stuff in log category
7881         * gst/schedulers/gstbasicscheduler.c: 
7882         (gst_basic_scheduler_chain_elements):
7883           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
7884           active and linking two active chains
7885
7886 2004-04-10  Benjamin Otte  <otte@gnome.org>
7887
7888         * docs/pwg/intro-preface.xml:
7889           fix dead links and remove reference to Wiki
7890
7891 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7892
7893         * gst/schedulers/gstbasicscheduler.c:
7894           make sure we can switch back to the main function if we're still in
7895           the main function (supposed to fix #139617)
7896         * gst/schedulers/gthread-cothreads.h:
7897           don't throw an error when switching to the same cothread
7898
7899 2004-04-09  Benjamin Otte  <otte@gnome.org>
7900
7901         * gst/gstbin.c: (gst_bin_get_type):
7902         * gst/gstclock.c: (gst_clock_get_type):
7903         * gst/gstindex.c: (gst_index_get_type):
7904         * gst/gstobject.c: (gst_object_get_type),
7905         (gst_signal_object_get_type):
7906         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
7907         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
7908         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
7909         * gst/gstqueue.c: (gst_queue_get_type):
7910         * gst/gstregistry.c: (gst_registry_get_type):
7911         * gst/gstsystemclock.c: (gst_system_clock_get_type):
7912         * gst/gstthread.c: (gst_thread_get_type):
7913           don't use memchunks for these objects, use malloc instead
7914
7915 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
7916
7917         * docs/gst/.cvsignore:
7918         * docs/gst/Makefile.am:
7919         * docs/gst/gstreamer-sections.txt:
7920         * docs/gst/tmpl/gstaggregator.sgml:
7921         * docs/gst/tmpl/gstbuffer.sgml:
7922         * docs/gst/tmpl/gstclock.sgml:
7923         * docs/gst/tmpl/gstelement.sgml:
7924         * docs/gst/tmpl/gstfakesink.sgml:
7925         * docs/gst/tmpl/gstfakesrc.sgml:
7926         * docs/gst/tmpl/gstfdsink.sgml:
7927         * docs/gst/tmpl/gstfdsrc.sgml:
7928         * docs/gst/tmpl/gstfilesink.sgml:
7929         * docs/gst/tmpl/gstfilesrc.sgml:
7930         * docs/gst/tmpl/gstidentity.sgml:
7931         * docs/gst/tmpl/gstindex.sgml:
7932         * docs/gst/tmpl/gstinfo.sgml:
7933         * docs/gst/tmpl/gstmd5sink.sgml:
7934         * docs/gst/tmpl/gstmultifilesrc.sgml:
7935         * docs/gst/tmpl/gstpad.sgml:
7936         * docs/gst/tmpl/gstpipefilter.sgml:
7937         * docs/gst/tmpl/gstpipeline.sgml:
7938         * docs/gst/tmpl/gstpluginfeature.sgml:
7939         * docs/gst/tmpl/gstqueue.sgml:
7940         * docs/gst/tmpl/gstregistry.sgml:
7941         * docs/gst/tmpl/gstscheduler.sgml:
7942         * docs/gst/tmpl/gstshaper.sgml:
7943         * docs/gst/tmpl/gstspider.sgml:
7944         * docs/gst/tmpl/gstspideridentity.sgml:
7945         * docs/gst/tmpl/gststatistics.sgml:
7946         * docs/gst/tmpl/gstsystemclock.sgml:
7947         * docs/gst/tmpl/gsttee.sgml:
7948         * docs/gst/tmpl/gstthread.sgml:
7949         * docs/gst/tmpl/gsttypefind.sgml:
7950         * docs/gst/tmpl/gstutils.sgml:
7951           further doc build fixes
7952
7953 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7954
7955         * docs/gst/Makefile.am:
7956           make docs exit on scanning problems
7957           fix nonsrcdir build issues
7958         * docs/gst/gstreamer-sections.txt:
7959           adding stuff from -unused
7960         * gst/gstqueue.h:
7961           create GstQueueSize
7962         * gst/schedulers/cothreads_compat.h:
7963           fix cothread warnings
7964
7965 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
7966
7967         * docs/gst/gstreamer-sections.txt:
7968           remove defines deprecated by Benjamin
7969
7970 2004-04-07  Benjamin Otte  <otte@gnome.org>
7971
7972         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
7973           when the buffer is complete, don't check if other buffers are needed
7974         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
7975           check that the offset is >0 so we don't try to read before the
7976           beginning of the file
7977         * gst/gstpad.c: (gst_pad_set_pad_template):
7978           sink the template, so we don't end up with 130k pad templates
7979
7980 2004-04-06  Benjamin Otte  <otte@gnome.org>
7981
7982         * gst/autoplug/gstspider.c: (gst_spider_link_add):
7983           don't ref the element, adding already reffed it. And we didn't unref
7984           it later anyway... (huge memleak when you used many spider elements)
7985         * gst/gstelement.c: (gst_element_base_class_finalize):
7986         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
7987         (gst_element_register):
7988         * gst/gsturi.c: (gst_element_make_from_uri):
7989           use gst_object_(un)ref instead of g_object(un)ref
7990
7991 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7992
7993         * gst/gstbuffer.h:
7994           remove macro that wouldn't work anymore because struct member has
7995           been removed.
7996         * gst/schedulers/entryscheduler.c: (schedule_forward):
7997           fix segfault for unconnected pads
7998         
7999 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8000
8001         reviewed by David Schleef <ds@schleef.org>
8002
8003         * gst/gstinfo.h:
8004           *_FORMAT modifiers should require putting a % in front of them for
8005           consistency reasons.
8006
8007 2004-04-05  Colin Walters  <walters@redhat.com>
8008
8009         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8010         space.
8011
8012 2004-04-05  Benjamin Otte  <otte@gnome.org>
8013
8014         * configure.ac:
8015         * gst/Makefile.am:
8016         * gst/gst_private.h:
8017         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8018           add support for detecting if GStreamer runs inside valgrind.
8019           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8020           print a big message in valgrind that GStreamer has detected it's
8021           running inside and might now use different code.
8022         * gst/gstmemchunk.c: (populate), (free_area),
8023         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8024         (gst_mem_chunk_free):
8025           flag memchunks for valgrind, so it can detect leaking of chunks.
8026           This allows detecting leaks of GstBuffer and GstEvent correctly
8027           inside valgrind.
8028
8029 2004-04-05  David Schleef  <ds@schleef.org>
8030
8031         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8032           jensgr@gmx.net (Jens Granseuer)
8033
8034 2004-04-05  David Schleef  <ds@schleef.org>
8035
8036         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8037         (gst_buffer_default_free), (gst_buffer_default_copy),
8038         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8039         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8040         structures in one place.
8041
8042 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8043
8044         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8045           (GST_TIME_FORMAT, GST_TIME_ARGS)
8046
8047 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8048
8049         * testsuite/elements/Makefile.am:
8050           disable test until it stops breaking make distcheck
8051
8052 2004-04-05  Johan Dahlin  <johan@gnome.org>
8053
8054         * po/sv.po: Updated translation
8055
8056 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8057
8058         * gst/gstplugin.c: (gst_plugin_load_file):
8059           fix segfault for when original plugin was loaded statically
8060
8061 2004-04-05  Benjamin Otte  <otte@gnome.org>
8062
8063         * testsuite/debug/category.c: (main):
8064         * testsuite/debug/commandline.c: (main):
8065         * testsuite/debug/output.c: (main):
8066           fix tests to work again with debugging enabled
8067
8068 2004-04-05  Benjamin Otte  <otte@gnome.org>
8069
8070         * gst/schedulers/gstbasicscheduler.c:
8071         (gst_basic_scheduler_pad_link):
8072           fix to work with recent scheduling changes
8073
8074 2004-04-05  Benjamin Otte  <otte@gnome.org>
8075
8076         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8077         prepareChangeLog doesn't work when cvs indents):
8078           don't throw an error when no element can be scheduled, there's too
8079           many weird reasons why it doesn't work. Return STOPPED instead.
8080           decoupled elemts' schedulability doesn't depend on bufpens.
8081
8082 2004-04-04  Benjamin Otte  <otte@gnome.org>
8083
8084         * gst/schedulers/gstbasicscheduler.c:
8085         (gst_basic_scheduler_pad_select):
8086           fix uninitialized variable warnings
8087
8088 2004-04-04  Benjamin Otte  <otte@gnome.org>
8089
8090         * gst/gstpad.c: (gst_pad_collect_valist):
8091           fix uninitialized variable warning
8092         * gst/schedulers/entryscheduler.c: (schedule_forward):
8093           fix shadowed variable
8094
8095 2004-04-04  Benjamin Otte  <otte@gnome.org>
8096
8097         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8098         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8099         (gst_pad_select):
8100         * gst/gstpad.h:
8101         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8102         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8103         * gst/gstscheduler.h:
8104           implement gst_pad_collect as replacement for gst_pad_select.
8105           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8106           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8107           new pad_select, lock and unlock calls.
8108         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8109         * gst/cothreads.h:
8110         * gst/schedulers/cothreads_compat.h:
8111         * gst/schedulers/gthread-cothreads.h:
8112           remove unused cothread_lock and cothread_unlock calls
8113         * gst/schedulers/entryscheduler.c:
8114         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8115         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8116         (gst_entry_scheduler_pad_select):
8117           update to new API
8118         * gst/schedulers/gstbasicscheduler.c:
8119         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8120         (gst_basic_scheduler_pad_select):
8121           remove useless lock and unlock calls, update pad_select to new API
8122           (untested)
8123         * gst/schedulers/gstoptimalscheduler.c:
8124         (gst_opt_scheduler_class_init):
8125           remove useless select, lock and unlock function calls
8126         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8127           use gst_pad_collect instead of gst_pad_select
8128
8129 2004-04-04  Benjamin Otte  <otte@gnome.org>
8130
8131         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8132         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8133         (schedule_next_element), (print_entry):
8134           add can_schedule_pad to handle element states.
8135           add schedule_forward to select the correct entry to schedule next
8136
8137 2004-04-03  Benjamin Otte  <otte@gnome.org>
8138
8139         * gst/schedulers/entryscheduler.c: 
8140           remove unused variable, fix error inside Rb, fix compile warning in
8141           unreachable code
8142
8143 2004-04-03  Benjamin Otte  <otte@gnome.org>
8144
8145         * gst/schedulers/entryscheduler.c:
8146           completely revamp the inner workings, so it's a lot easier to
8147           understand and extend
8148
8149 2004-04-03  Andy Wingo  <wingo@pobox.com>
8150
8151         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8152         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8153         This allows better introspection of pipeline topology.
8154         (add_to_chain): Don't do trickery to put loop elements first;
8155         rather, queue a chain sort by marking the chain as dirty.
8156         (remove_from_chain): Mark the chain dirty.
8157         (sort_chain): New function. Sorts the group list so that terminal
8158         sinks are first. This means elements on the sink side will be
8159         preferentially sscheduled before elements on the src side of the
8160         pipeline.
8161         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8162         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8163         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8164         (group_inc_link): Change argument and variable names to match the
8165         new link structure member names (src and sink).
8166         (group_dec_link): Add some description
8167
8168 2004-04-03  Benjamin Otte  <otte@gnome.org>
8169
8170         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8171         * gst/gstinfo.h:
8172         * testsuite/debug/category.c: (main):
8173         * testsuite/debug/commandline.c: (main):
8174         * testsuite/debug/output.c: (main):
8175         * testsuite/debug/printf_extension.c: (main):
8176           fix to successfully build and test with --disable-gst-debug
8177           configure switch (fixes #138705)
8178
8179 2004-04-03  Benjamin Otte  <otte@gnome.org>
8180
8181         * docs/pwg/building-boiler.xml:
8182           add cvs login line and s/anonymous/anoncvs/
8183
8184 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8185
8186         reviewed by Benjamin Otte  <otte@gnome.org>
8187
8188         * gst/gststructure.c: (gst_structure_free):
8189           memleak fix: free fields array (partial fix for #134839)
8190
8191 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8192
8193         * docs/random/ds/0.9-suggested-changes:
8194           Add a note to change handoff use in fakesrc to be usable in
8195           a more generic way (fakesrc should be renamed to appsrc or so).
8196         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8197           Change signal type to scope, so we can fill the buffer in the
8198           handoff handler (that's the whole use of this signal...).
8199
8200 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8201
8202         * docs/pwg/other-ntoone.xml:
8203           Document muxers and n-to-1 elements.
8204
8205 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8206
8207         * gst/registries/gstxmlregistry.c
8208         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8209         determine if a file is a G_MODULE. The old one discards paths
8210         containing "so" somewhere in the middle. My home directory is
8211         called "soto". Go figure...
8212
8213 2004-03-31  David Schleef  <ds@schleef.org>
8214
8215         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8216         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8217         * gst/gstbuffer.h:
8218
8219 2004-03-31  David Schleef  <ds@schleef.org>
8220
8221         * gst/gstvalue.c: (gst_value_union_int_int_range),
8222         (gst_value_union_int_range_int_range), (gst_value_can_union),
8223         (gst_value_union), (_gst_value_initialize):  Add some union
8224         implementations.  We didn't have any previously.
8225         * testsuite/caps/Makefile.am:
8226         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8227         (gst_audioscale_getcaps), (test_caps), (main): A little test
8228         that is the same as the caps manipulation in audioscale.
8229
8230 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8231
8232         * docs/faq/general.xml:
8233           add entry about "does gst support format X?"
8234
8235 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8236
8237         * gst/gstthread.c:
8238           fix docs
8239         * gst/gstutils.h:
8240           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8241
8242 2004-03-30  Benjamin Otte  <otte@gnome.org>
8243
8244         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8245           set the offset of the buffer to the requested offset
8246         * gst/elements/gsttypefind.c: (stop_typefinding):
8247           revert patch 1.18 (which I unfortunately don't know the reason for).
8248           This is needed to allow downstream elements to seek. Otherwise
8249           typefind might overwrite a previous seek by downstream elements.
8250           This lead to errors with id3tag and typefind on some mp3s.
8251         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8252         (gst_entry_scheduler_iterate):
8253           be more verbose when debugging
8254
8255 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8256
8257         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8258           make sure we don't get NULL strings
8259
8260 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8261
8262         * gst/gstcaps.c:
8263         * gst/gstelement.c:
8264         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8265         * gst/gstindex.c: (gst_index_resolver_get_type),
8266         (gst_index_get_type), (gst_index_factory_get_type):
8267         * gst/gstinfo.c:
8268         * gst/gstpad.c:
8269         * gst/gstplugin.c:
8270         * gst/gsturi.c: (gst_uri_handler_get_type):
8271         * gst/gstvalue.c:
8272           first batch of documentation fixes
8273
8274 2004-03-29  David Schleef  <ds@schleef.org>
8275
8276         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8277         * docs/gst/gstreamer-docs.sgml:  More hacking
8278         * docs/gst/gstreamer-sections.txt:
8279         * docs/gst/tmpl/cothreads_compat.sgml:
8280         * docs/gst/tmpl/gstcaps.sgml:
8281         * docs/gst/tmpl/gstclock.sgml:
8282         * docs/gst/tmpl/gstelement.sgml:
8283         * docs/gst/tmpl/gstevent.sgml:
8284         * docs/gst/tmpl/gstpad.sgml:
8285         * docs/gst/tmpl/gstutils.sgml:
8286         * docs/gst/tmpl/gstxml.sgml:
8287         * docs/gst/tmpl/gthread-cothreads.sgml:
8288         * docs/random/ds/0.9-suggested-changes:
8289         * gst/elements/gstfakesink.h: doc fixes
8290         * gst/elements/gstfakesrc.h: doc fixes
8291         * gst/gstcaps.c: doc fixes
8292         * gst/gstcaps.h: doc fixes
8293         * gst/gstelement.c: doc fixes
8294         * gst/gstelement.h: doc fixes
8295         * gst/gstindex.c: doc fixes
8296         * gst/gstinfo.c: doc fixes
8297         * gst/gstpad.c: doc fixes
8298         * gst/gstpad.h: doc fixes
8299         * gst/gstplugin.c: doc fixes
8300         * gst/gsttypefind.h: doc fixes
8301         * gst/gsturi.c: doc fixes
8302         * gst/gstvalue.c: doc fixes
8303
8304 2004-03-29  Colin Walters  <walters@redhat.com>
8305
8306         * gst/registries/gstxmlregistry.c (get_time)
8307         (plugin_times_older_than_recurse):
8308         Use the result of stat to determine whether a path is a file,
8309         so we don't attempt to opendir() files.
8310
8311 2004-03-29  Benjamin Otte  <otte@gnome.org>
8312
8313         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8314           print caps in debugging output when setting caps failed
8315         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8316         (schedule_next_element), (get_buffer), (run_chainhandler),
8317         (element_may_start), (gst_entry_scheduler_chain_handler),
8318         (gst_entry_scheduler_get_handler),
8319         (gst_entry_scheduler_state_transition),
8320         (gst_entry_scheduler_pad_link):
8321           make this scheduler a testcase for mandatory
8322           discont-before-first-buffer which is needed if we want to allow apps
8323           to release the sound device.
8324           add SCHED_ASSERT macro to print scheduler state before an assertion
8325           triggers.
8326
8327 2004-03-29  Benjamin Otte  <otte@gnome.org>
8328
8329         * COPYING:
8330           replace by LGPL (former COPYING.LIB). The core is completely
8331           licensed LGPL.
8332         * COPYING.LIB:
8333           remove
8334
8335 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8336
8337         * po/af.po:
8338         * po/sv.po:
8339           updated Afrikaans and Swedish
8340
8341 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8342
8343         * po/LINGUAS:
8344         * po/az.po:
8345           adding Azerbaijani (Mətin Əmirov)
8346
8347 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8348
8349         * gst/gstelement.h: 
8350         * gst/gstelement.c (gst_element_set_time_delay): New function for
8351         setting element time taking into account a hardware buffering
8352         delay.
8353         (gst_element_set_time): Now just an invocation of
8354         gst_element_set_time_delay.
8355         * gst/gstclock.h: 
8356         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8357         allowing to set event times in the future.
8358         (gst_clock_get_event_time): Now just an invocation of
8359         gst_clock_get_event_time_delay.
8360
8361 2004-03-28  Benjamin Otte  <otte@gnome.org>
8362
8363         * gst/gstbin.c: (gst_bin_set_element_sched),
8364         (gst_bin_unset_element_sched):
8365           don't add decoupled elements to schedulers - otherwise it's
8366           impossible to control if a link to a decoupled element was already
8367           removed from a scheduler or not.
8368         * gst/schedulers/cothreads_compat.h:
8369         * gst/schedulers/gthread-cothreads.h:
8370           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8371           is no "unused" warning.
8372         * gst/schedulers/Makefile.am:
8373         * gst/schedulers/entryscheduler.c:
8374           add new scheduler, based on ideas from talking to David and Martin.
8375           It's supposed to be small and correct. Currently it's also slow (but
8376           it's not noticable)
8377         * examples/retag/retag.c: (main):
8378         * testsuite/bytestream/test1.c: (main):
8379           fix missing NULLs at end of variadic functions
8380         * testsuite/elements/.cvsignore:
8381           update
8382
8383 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8384
8385         * gst/gstevent.h:
8386         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8387
8388 2004-03-25  David Schleef  <ds@schleef.org>
8389
8390         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8391         * docs/gst/tmpl/gstaggregator.sgml:
8392         * docs/gst/tmpl/gstautoplugfactory.sgml:
8393         * docs/gst/tmpl/gstbin.sgml:
8394         * docs/gst/tmpl/gstbuffer.sgml:
8395         * docs/gst/tmpl/gstbufferstore.sgml:
8396         * docs/gst/tmpl/gstfakesink.sgml:
8397         * docs/gst/tmpl/gstfakesrc.sgml:
8398         * docs/gst/tmpl/gstmd5sink.sgml:
8399         * docs/gst/tmpl/gstreamer-unused.sgml:
8400         * docs/gst/tmpl/gstsearchfuncs.sgml:
8401         * docs/gst/tmpl/gstshaper.sgml:
8402         * docs/gst/tmpl/gstspider.sgml:
8403         * docs/gst/tmpl/gsttee.sgml:
8404         * docs/gst/tmpl/gstutils.sgml:
8405         * docs/gst/tmpl/gstvalue.sgml:
8406         * docs/gst/tmpl/gstxml.sgml:
8407         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8408         and we don't support it.
8409         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8410         (gst_use_threads), (gst_has_threads): same
8411         * gst/gstthreaddummy.c: same
8412         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8413         * gst/autoplug/gstspider.h: same
8414         * gst/elements/gstaggregator.h: Remove bogus function from header
8415         * gst/elements/gstfakesink.h: same
8416         * gst/elements/gstfakesrc.h: same
8417         * gst/elements/gstmd5sink.h: same
8418         * gst/elements/gstshaper.h: same
8419         * gst/elements/gsttee.h: same
8420         * gst/gstbin.c: doc fixes
8421         * gst/gstbin.h: Remove unused definition.
8422         * gst/gstbuffer.c: doc fixes
8423         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8424         * gst/gstfilter.c: doc fixes
8425         * gst/gsttag.c: doc fixes
8426         * gst/gstvalue.c: doc fixes
8427
8428 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8429
8430         * docs/pwg/advanced-types.xml:
8431           Document typefinding.
8432         * docs/pwg/other-oneton.xml:
8433           Document one-to-n elements, demuxers and parsers.
8434
8435 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8436
8437         reviewed by: David Schleef  <ds@schleef.org>
8438
8439         * configure.ac: Check bison version (bug #127838)
8440
8441 2004-03-25  David Schleef  <ds@schleef.org>
8442
8443         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8444         * docs/gst/gstreamer-sections.txt:
8445         * docs/gst/tmpl/gstautoplug.sgml:
8446         * docs/gst/tmpl/gststaticautoplug.sgml:
8447         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8448         * docs/gst/tmpl/gstutils.sgml:
8449         * docs/gst/tmpl/gstxml.sgml:
8450
8451 2004-03-24  David Schleef  <ds@schleef.org>
8452
8453         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8454         manual being such complete crap, that I decided to do major
8455         hacking of it.  This checkin replaces any fine tuning that
8456         may have been done previously, with the benefit of actually
8457         being complete for much of the API that was changed since
8458         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8459         * docs/gst/gstreamer-sections.txt:
8460         * docs/gst/tmpl/GstBin.sgml:
8461         * docs/gst/tmpl/GstBuffer.sgml:
8462         * docs/gst/tmpl/GstCaps.sgml:
8463         * docs/gst/tmpl/GstClock.sgml:
8464         * docs/gst/tmpl/GstCompat.sgml:
8465         * docs/gst/tmpl/GstData.sgml:
8466         * docs/gst/tmpl/GstElement.sgml:
8467         * docs/gst/tmpl/GstEvent.sgml:
8468         * docs/gst/tmpl/GstIndex.sgml:
8469         * docs/gst/tmpl/GstStructure.sgml:
8470         * docs/gst/tmpl/GstTag.sgml:
8471         * docs/gst/tmpl/cothreads.sgml:
8472         * docs/gst/tmpl/cothreads_compat.sgml:
8473         * docs/gst/tmpl/gettext.sgml:
8474         * docs/gst/tmpl/grammar.tab.sgml:
8475         * docs/gst/tmpl/gst-i18n-app.sgml:
8476         * docs/gst/tmpl/gst-i18n-lib.sgml:
8477         * docs/gst/tmpl/gst.sgml:
8478         * docs/gst/tmpl/gst_private.sgml:
8479         * docs/gst/tmpl/gstaggregator.sgml:
8480         * docs/gst/tmpl/gstarch.sgml:
8481         * docs/gst/tmpl/gstatomic.sgml:
8482         * docs/gst/tmpl/gstatomic_impl.sgml:
8483         * docs/gst/tmpl/gstbin.sgml:
8484         * docs/gst/tmpl/gstbuffer.sgml:
8485         * docs/gst/tmpl/gstbufferstore.sgml:
8486         * docs/gst/tmpl/gstcaps.sgml:
8487         * docs/gst/tmpl/gstclock.sgml:
8488         * docs/gst/tmpl/gstcompat.sgml:
8489         * docs/gst/tmpl/gstconfig.sgml:
8490         * docs/gst/tmpl/gstcpu.sgml:
8491         * docs/gst/tmpl/gstdata.sgml:
8492         * docs/gst/tmpl/gstdata_private.sgml:
8493         * docs/gst/tmpl/gstelement.sgml:
8494         * docs/gst/tmpl/gstenumtypes.sgml:
8495         * docs/gst/tmpl/gsterror.sgml:
8496         * docs/gst/tmpl/gstevent.sgml:
8497         * docs/gst/tmpl/gstfakesink.sgml:
8498         * docs/gst/tmpl/gstfakesrc.sgml:
8499         * docs/gst/tmpl/gstfilesink.sgml:
8500         * docs/gst/tmpl/gstfilter.sgml:
8501         * docs/gst/tmpl/gstindex.sgml:
8502         * docs/gst/tmpl/gstinfo.sgml:
8503         * docs/gst/tmpl/gstinterface.sgml:
8504         * docs/gst/tmpl/gstlog.sgml:
8505         * docs/gst/tmpl/gstmacros.sgml:
8506         * docs/gst/tmpl/gstmarshal.sgml:
8507         * docs/gst/tmpl/gstmd5sink.sgml:
8508         * docs/gst/tmpl/gstmultifilesrc.sgml:
8509         * docs/gst/tmpl/gstobject.sgml:
8510         * docs/gst/tmpl/gstpad.sgml:
8511         * docs/gst/tmpl/gstparse.sgml:
8512         * docs/gst/tmpl/gstpipeline.sgml:
8513         * docs/gst/tmpl/gstplugin.sgml:
8514         * docs/gst/tmpl/gstpluginfeature.sgml:
8515         * docs/gst/tmpl/gstqueue.sgml:
8516         * docs/gst/tmpl/gstreamer-unused.sgml:
8517         * docs/gst/tmpl/gstregistry.sgml:
8518         * docs/gst/tmpl/gstregistrypool.sgml:
8519         * docs/gst/tmpl/gstscheduler.sgml:
8520         * docs/gst/tmpl/gstsearchfuncs.sgml:
8521         * docs/gst/tmpl/gstshaper.sgml:
8522         * docs/gst/tmpl/gstspider.sgml:
8523         * docs/gst/tmpl/gstspideridentity.sgml:
8524         * docs/gst/tmpl/gststructure.sgml:
8525         * docs/gst/tmpl/gstsystemclock.sgml:
8526         * docs/gst/tmpl/gsttag.sgml:
8527         * docs/gst/tmpl/gsttaginterface.sgml:
8528         * docs/gst/tmpl/gsttee.sgml:
8529         * docs/gst/tmpl/gstthread.sgml:
8530         * docs/gst/tmpl/gsttrace.sgml:
8531         * docs/gst/tmpl/gsttrashstack.sgml:
8532         * docs/gst/tmpl/gsttypefind.sgml:
8533         * docs/gst/tmpl/gsttypes.sgml:
8534         * docs/gst/tmpl/gsturi.sgml:
8535         * docs/gst/tmpl/gsturitype.sgml:
8536         * docs/gst/tmpl/gstutils.sgml:
8537         * docs/gst/tmpl/gstvalue.sgml:
8538         * docs/gst/tmpl/gstversion.sgml:
8539         * docs/gst/tmpl/gstxml.sgml:
8540         * docs/gst/tmpl/gstxmlregistry.sgml:
8541         * docs/gst/tmpl/gthread-cothreads.sgml:
8542         * docs/gst/tmpl/types.sgml:
8543
8544 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8545
8546         * docs/pwg/other-sink.xml:
8547         * docs/pwg/other-source.xml:
8548           Documentation on how to write source and sink elements. Other
8549           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8550           manager, autoplugger) are all still pending.
8551
8552 2004-03-25  Benjamin Otte  <otte@gnome.org>
8553
8554         * testsuite/elements/Makefile.am:
8555         * testsuite/elements/gst-compprep-check:
8556           add check to make sure gst-compprep works
8557         * testsuite/elements/gst-inspect-check.in:
8558           improve initialization output
8559         * testsuite/Makefile.am:
8560         * testsuite/gst-inspect-check:
8561           remove old file
8562
8563 2004-03-24  David Schleef  <ds@schleef.org>
8564
8565         * testsuite/elements/Makefile.am:
8566         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8567         to the testsuite.
8568
8569 2004-03-24  Benjamin Otte  <otte@gnome.org>
8570
8571         * libs/gst/control/dparam.c: (gst_dparam_attach),
8572         (gst_dparam_detach):
8573         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8574           fix lvalue casts for real
8575
8576 2004-03-24  Benjamin Otte  <otte@gnome.org>
8577
8578         * gst/schedulers/gstbasicscheduler.c:
8579         (gst_basic_scheduler_src_wrapper):
8580         * gst/schedulers/gstoptimalscheduler.c:
8581         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8582         (pad_clear_queued), (gst_opt_scheduler_add_element),
8583         (gst_opt_scheduler_remove_element):
8584           fix GStreamer to not have issues with lvalue casts anymore (fixes
8585           #136841)
8586
8587 2004-03-24  Benjamin Otte  <otte@gnome.org>
8588
8589         * gst/gstelement.c:
8590           add documentation about a gobject quirk where the object hasn't the
8591           correct class pointer set on initialization
8592         * gst/schedulers/gstbasicscheduler.c:
8593         (gst_basic_scheduler_src_wrapper):
8594           make sure to not run into an infinite loop
8595
8596 2004-03-22  Benjamin Otte  <otte@gnome.org>
8597
8598         * gst/gstutils.c: (gst_util_dump_mem):
8599         * gst/gstutils.h:
8600           first argument of gst_util_dump_mem should be const
8601
8602 2004-03-22  Johan Dahlin  <johan@gnome.org>
8603
8604         * gst/gstvalue.h: Clean up a little bit.
8605
8606 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8607
8608         reviewed by Benjamin Otte  <otte@gnome.org>
8609
8610         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8611         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8612         (gst_aggregator_class_init), (gst_aggregator_init):
8613         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8614         (gst_filesrc_dispose), (gst_filesrc_set_location):
8615         * gst/elements/gstidentity.c: (gst_identity_finalize),
8616         (gst_identity_class_init), (gst_identity_chain):
8617         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8618         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8619         (gst_statistics_class_init):
8620         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8621         (gst_tee_get_property):
8622           clean up used memory in this elements correctly on teardown (closes
8623           #137279)
8624
8625 2004-03-20  Colin Walters  <walters@redhat.com>
8626
8627         * gst/registries/gstxmlregistry.c:
8628         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8629         registry saving atomic.
8630
8631 2004-03-20  Colin Walters  <walters@redhat.com>
8632
8633         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8634         Just use
8635         access() instead of actually creating and deleting files.
8636
8637 2004-03-18  David Schleef  <ds@schleef.org>
8638
8639         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8640         (bug #137625)
8641
8642 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8643
8644         * po/sv.po: updated translation (Christian Rose)
8645
8646 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8647
8648         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8649         (gst_filesink_get_query_types), (_do_init),
8650         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8651           return FALSE silently
8652         * po/af.po: updated translation (Petri Jooste)
8653
8654 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8655
8656         * Makefile.am:
8657         * configure.ac:
8658           dist common properly
8659         * po/af.po:
8660         * po/fr.po:
8661         * po/nl.po:
8662         * po/sr.po:
8663         * po/sv.po:
8664           refreshing translations
8665
8666 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8667
8668         * po/LINGUAS:
8669         * po/sv.po:
8670         * po/af.po:
8671           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8672
8673 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8674
8675         * Makefile.am: use common/release.mak
8676
8677 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8678
8679         * docs/faq/gst-uninstalled:
8680           adding gst-monkeysaudio to the list of possible plugin dirs
8681
8682 2004-03-16  David Schleef  <ds@schleef.org>
8683
8684         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8685         (gst_init_check_with_popt_table):  Fix some gettext strings to
8686         make them easier to translate.  Required making the strings
8687         non-const.
8688
8689 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8690
8691         * configure.ac: bump nano to 1
8692
8693 === release 0.8.0 ===
8694
8695 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8696
8697         * configure.ac: release 0.8.0, "Executive Slacks"
8698
8699 2004-03-16  Johan Dahlin  <johan@gnome.org>
8700
8701         * gst/schedulers/gstoptimalscheduler.c
8702         (gst_opt_scheduler_pad_unlink): Remove double ;,
8703         spotted by Scott Wheeler
8704
8705 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8706
8707         * configure.ac: bump libtool version
8708
8709 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8710
8711         * gst/gstcaps.h:
8712         * gst/gststructure.h:
8713           add reserved padding
8714
8715 2004-03-15  Benjamin Otte  <otte@gnome.org>
8716
8717         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8718           set the first parameter for select call correctly.
8719           (fixes #137230)
8720
8721 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8722
8723         * *.c,*.h: don't mix tabs and spaces
8724
8725 2004-03-15  Johan Dahlin  <johan@gnome.org>
8726
8727         * gst/schedulers/gstoptimalscheduler.c
8728         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8729         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8730
8731         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8732         
8733 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8734
8735         * testsuite/Rules:
8736           fix gst-register rules
8737
8738 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8739
8740         * testsuite/Rules:
8741           use versioned gst-register
8742
8743 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8744
8745         * docs/libs/gstreamer-libs-sections.txt:
8746           remove </SUBSECTION>
8747         * gst/gstplugin.c:
8748         * gst/gstregistry.c: (gst_registry_add_plugin):
8749         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8750         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8751           add debugging and fix some comment blocks
8752
8753 2004-03-15  Johan Dahlin  <johan@gnome.org>
8754
8755         * *.h: Revert indent changes.
8756         
8757 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8758
8759         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8760           g_error_free the g_error
8761         * tools/gst-feedback-m.m:
8762           check for other versions of gstreamer
8763         * tools/gst-indent:
8764           use sh, not bash
8765
8766 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8767
8768         * tools/gst-register.c: do not spill paths when registries are not
8769           writable, until we fix the "user running gst-register" case.
8770
8771 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8772
8773         * *.c, *.h: commit of gst-indent run on core
8774
8775 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8776
8777         * tools/gst-indent:
8778         * tools/Makefile.am:
8779           add our indentation style as a script
8780
8781 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8782
8783         * po/sr.po:
8784         * po/LINGUAS:
8785           added Serbian translation
8786
8787 2004-03-13  Benjamin Otte  <otte@gnome.org>
8788
8789         * gst/gstelement.c:
8790           add documentation note about gst_element_found_tags_for_pad not
8791           being usable in getfunctions. (see #137042)
8792
8793 2004-03-12  David Schleef  <ds@schleef.org>
8794
8795         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8796         change API right now!  Readd gst_caps_is_simple() macro.
8797         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8798         uninitialized variable.  I'd bet this caused crashes.
8799         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8800
8801 2004-03-12  Johan Dahlin  <johan@gnome.org>
8802
8803         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8804         * gst/gstcaps.h: Clean up
8805
8806         * gst/gst.c (init_post): call gst_caps_get_type() instead of
8807         _gst_caps_initalize()
8808
8809         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
8810         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
8811
8812         * gst/gststructure.c (gst_structure_get_type): Ditto
8813
8814         * gst/gststructure.h: Ditto
8815         
8816 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8817
8818         * gst/gstqueue.c: (gst_queue_init):
8819           Reset default max. values in queues. Reason is simply to avoid
8820           braindead use. If you want wider values, use the properties. The
8821           default is supposed to always work. Wider values would make this
8822           beast a memory hog by default (250 full-PAL RGB32 video frames?
8823           That's 440 MB! No thank you).
8824
8825 2004-03-10  David Schleef  <ds@schleef.org>
8826
8827         * tools/gst-run.c: (main):  Fix crash when no relevant tools
8828         were found.  (bug #136793)
8829
8830 2004-03-10  Johan Dahlin  <johan@gnome.org>
8831
8832         * gst/schedulers/gstoptimalscheduler.c
8833         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
8834         links to elements within the same group, so we can finally remove
8835         that annoying warning. Refactor the code a little bit
8836         (group_dec_links_for_element): Split out
8837
8838 2004-03-09  David Schleef  <ds@schleef.org>
8839
8840         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
8841         (bug #134863)
8842
8843 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8844
8845         * configure.ac: first bug fix due to major/minor bump
8846
8847 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8848
8849         * configure.ac: bump nano to 1
8850
8851 === release 0.7.6 ===
8852
8853 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
8854
8855         * NEWS:
8856         * RELEASE:
8857         * configure.ac:
8858           releasing 0.7.6, "Almost"
8859         * po/fr.po:
8860         * po/nl.po:
8861         * tools/Makefile.am:
8862         * tools/gst-feedback-m.m:
8863           unversioned source
8864
8865 2004-03-09  Johan Dahlin  <johan@gnome.org>
8866
8867         Reviewed by: Thomas Vander Stichele
8868
8869         * gst/gstelement.c (gst_element_class_init): register second
8870         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
8871         language bindings can (de)marshall correctly.
8872
8873         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
8874
8875         * gst/gsterror.c (gst_g_error_get_type): New function
8876
8877         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
8878         with VOID:OBJECT,OBJECT,STRING 
8879
8880 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
8881
8882         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
8883         Free a leaked g_timer on early returns.
8884
8885 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8886
8887         * docs/pwg/advanced-types.xml:
8888           Add cinepak description.
8889
8890 2004-03-07  David Schleef  <ds@schleef.org>
8891
8892         * docs/random/mimetypes:  Added cinepak description
8893
8894 2004-03-07  Andy Wingo  <wingo@pobox.com>
8895
8896         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
8897
8898         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
8899         there are no links to other groups when a group is destroyed.
8900         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
8901         removed from a group, make sure the link count to elements linked
8902         to other pads is appropriately decremented. This really fixes
8903         #135672.
8904
8905         The 1.60->1.61 patch has been reapplied in light of this fix.
8906
8907         * gst/gstelement.c (gst_element_dispose): Really protect against
8908         multiple invocations this time.
8909
8910 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8911
8912         * docs/gst/gstreamer-sections.txt:
8913         * docs/gst/tmpl/gsttag.sgml:
8914           remove some deprecated functions, document some existing ones
8915         * gst/gsttag.c: (gst_tag_get_flag):
8916         * gst/gsttag.h:
8917           add accessor function
8918
8919 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
8920
8921         * docs/gst/gstreamer-sections.txt:
8922         * docs/gst/tmpl/gsttag.sgml:
8923         * docs/gst/tmpl/gstxml.sgml:
8924         * gst/gsttag.c: (gst_tag_get_flag):
8925         * gst/gsttag.h:
8926
8927 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
8928
8929         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
8930         leak
8931
8932 2004-03-05  David Schleef  <ds@schleef.org>
8933
8934         * REQUIREMENTS: Add bison and flex.
8935         * configure.ac: Fix comment about bison.
8936         * docs/random/ds/0.9-suggested-changes: yer ma
8937         * tools/gst-inspect.c: (print_element_info):  Fix warning.
8938
8939 2004-03-05  Benjamin Otte  <otte@gnome.org>
8940
8941         * gst/gstelement.c: (gst_element_error_full):
8942           revert recent recursive state changing commit - messing with other
8943           elements' states is evil and should be done by apps only.
8944
8945 2004-03-05  Benjamin Otte  <otte@gnome.org>
8946
8947         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
8948           check for empty intersection instead of NULL caps
8949         (gst_element_get_compatible_pad_filtered):
8950           remove old workaround that is only a bug nowadays
8951
8952 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8953
8954         * gst/gstelement.c: (gst_element_error_full):
8955           make elements try to recursively change state to PAUSED on all
8956           parents after an error to suppress ensuing warnings
8957         * gst/parse/grammar.y:
8958           make it check if it was able to sync the state, and throw an error
8959           if not, so stuff like
8960           oggdemux ! vorbisdec ! osssink gets caught
8961
8962 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8963
8964         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
8965           it contains lib64; use AS_AC_EXPAND to handle it properly
8966
8967 2004-03-05  David Schleef  <ds@schleef.org>
8968
8969         * gst/gstcpuid_i386.s:  Remove unused code
8970         * libs/gst/getbits/getbits.c: (gst_getbits_init),
8971         (gst_getbits_newbuf): Remove MMX code
8972         * libs/gst/getbits/getbits.h: Remove MMX code
8973
8974 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
8975
8976         * debian/.cvsignore:
8977         * debian/README.Debian:
8978         * debian/changelog:
8979         * debian/control:
8980         * debian/control.in:
8981         * debian/copyright:
8982         * debian/gstreamer-core-libs-dev.files:
8983         * debian/gstreamer-core-libs.files:
8984         * debian/gstreamer-core.files:
8985         * debian/gstreamer-core.postinst:
8986         * debian/gstreamer-core.postrm:
8987         * debian/gstreamer-doc.files:
8988         * debian/gstreamer-doc.links:
8989         * debian/gstreamer-doc.lintian:
8990         * debian/gstreamer-runtime.files:
8991         * debian/gstreamer-runtime.manpages:
8992         * debian/gstreamer-runtime.postinst:
8993         * debian/gstreamer-runtime.postrm:
8994         * debian/gstreamer-tools.files:
8995         * debian/gstreamer-tools.manpages:
8996         * debian/libgstreamer-dev.files:
8997         * debian/libgstreamer0.4.1.files:
8998         * debian/libgstreamerVERSION.files:
8999         * debian/rules:
9000         Debian package info not maintained here.
9001
9002 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9003
9004         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9005         * gst/gstbin.c: (gst_bin_class_init):
9006         * gst/gstelement.c: (gst_element_class_init):
9007         * gst/gstindex.c: (gst_index_class_init):
9008         * gst/gstobject.c: (gst_object_class_init),
9009         (gst_signal_object_class_init):
9010         * gst/gstpad.c: (gst_pad_template_class_init):
9011         * gst/gstregistry.c: (gst_registry_class_init):
9012         * gst/gsturi.c: (gst_uri_handler_base_init):
9013         * gst/gstxml.c: (gst_xml_class_init):
9014         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9015         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9016           make all signal names use dashes instead of underscore
9017
9018 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9019
9020         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9021
9022 2004-03-03  Benjamin Otte  <otte@gnome.org>
9023
9024         * gst/schedulers/gstoptimalscheduler.c:
9025           revert last commit by Andy Wingo. It causes segfaults on unreffing
9026           in Rhythmbox. (see bug #135672)
9027
9028 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9029
9030         * po/fr.po: fix typo
9031
9032 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9033
9034         * tools/gst-inspect.c: (main): 
9035         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9036
9037 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9038
9039         * configure.ac:
9040           get GLIB_ONLY and POPT flags for the nonversioned binaries
9041         * tools/Makefile.am:
9042           use them
9043
9044 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9045
9046         * gst/gst.c: (init_post):
9047           change so that GST_REGISTRY now is where the global registry gets
9048           saved, since that is where plugins now get attached to first, and
9049           spilled over to the user registry.  Note that in the case of using
9050           GST_REGISTRY env var, we don't want to affect any real registries
9051           beyond the one given by this var, and thus we don't set a user
9052           registry to spill to.  So make sure GST_REGISTRY is writable.
9053
9054 2004-03-01  David Schleef  <ds@schleef.org>
9055
9056         * AUTHORS:  Added some names.  Add yourself if you're missing.
9057
9058 2004-03-01  David Schleef  <ds@schleef.org>
9059
9060         * MAINTAINERS: Add
9061
9062 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9063
9064         * configure.ac:
9065           remove whitespace
9066         * docs/gst/tmpl/gstbuffer.sgml:
9067         * docs/gst/tmpl/gstdata.sgml:
9068         * docs/gst/tmpl/gstreamer-unused.sgml:
9069         * docs/gst/tmpl/gstxml.sgml:
9070           doc update
9071         * docs/manuals.mak:
9072           add a FIXME
9073         * docs/pwg/intro-preface.xml:
9074         * docs/pwg/pwg.xml:
9075           remove GNOME
9076         * gst/gst.c: (init_post):
9077           try GST_PLUGIN_PATH paths for the _global_registry first
9078         * gst/gstelement.h:
9079           add the error message as well, otherwise (null) debug info doesn't
9080           make much sense
9081         * tools/gst-register.c: (main):
9082           spill paths to next registry if this registry is not writable
9083         * po/fr.po:
9084         * po/nl.po:
9085           translation updates
9086
9087 2004-03-01  Johan Dahlin  <johan@gnome.org>
9088
9089         * gst/gstbuffer.c (_gst_buffer_initialize): 
9090         * gst/gstdata.c (gst_data_get_type): 
9091         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9092         instead of ref, since some applications that uses GBoxed
9093         routines depends on a function that actually returns a copy.
9094
9095 2004-02-27  Benjamin Otte  <otte@gnome.org>
9096
9097         * gst/gstbuffer.h:
9098           remove gst_buffer_free, use gst_data_unref
9099         * gst/gstdata.c: (gst_data_get_type):
9100           use refcounting in GstData GBoxed registration
9101         * gst/gstdata.h:
9102           remove gst_data_free, use gst_data_unref
9103
9104 2004-02-27  Johan Dahlin  <johan@gnome.org>
9105
9106         * gst/gstdata.c (gst_data_get_type): New function, register
9107         GstData as a GBoxed type.
9108
9109         * gst/gstdata.h (GST_TYPE_DATA): New macro
9110
9111 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9112
9113         * Makefile.am:
9114         * gstreamer.spec.in:
9115           put back RELEASE
9116         * gst/Makefile.am:
9117           clean up non-disting of built files
9118         * testsuite/debug/commandline.c:
9119           test fix for option rename
9120
9121 2004-02-26  David Schleef  <ds@schleef.org>
9122
9123         * configure.ac:  We don't really need glib-2.3.  Also remove
9124         some unneeded checks for library functions.
9125         * gst/Makefile.am:  Instead, we need to not dist files created
9126         by glib-genmarshal.
9127
9128 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9129
9130         * configure.ac:
9131           bump glib required version to 2.3.0 for g_value_takes_boxed
9132
9133  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9134
9135         * common/m4/gst-docs.m4
9136         change flavour text from enable to disable as enable is our default
9137         closes bug Bug 135304
9138
9139 === release 0.7.5 ===
9140  
9141  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9142  
9143         * NEWS:
9144           instate NEWS file
9145         * Makefile.am:
9146         * gstreamer.spec.in:
9147         * RELEASE:
9148           put back release
9149         * configure.ac:
9150         * docs/random/release:
9151           more updates
9152
9153 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9154
9155         * gst/gsttag.c: (_gst_tag_initialize):
9156         * po/fr.po:
9157         * po/nl.po:
9158           remove hyphen from codec tags
9159
9160 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9161
9162         * gst/parse/Makefile.am:
9163           fix dependency so that a make from a clean build works the first
9164           time
9165
9166 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9167
9168         * docs/random/release:
9169           update release strategy
9170         * po/fr.po:
9171           auto-update po file
9172         * po/nl.po:
9173           update dutch translation
9174
9175 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9176
9177         * docs/manual/debugging.xml:
9178         fix manual for new debugging system
9179
9180 2004-02-25  Andy Wingo  <wingo@pobox.com>
9181
9182         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9183         gst_pad_link_prepare. Please email the list with specific reasons
9184         for reverting.
9185
9186 2004-02-24  Andy Wingo  <wingo@pobox.com>
9187
9188         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9189         invocations.
9190
9191         * gst/schedulers/gstoptimalscheduler.c:
9192         I added a mess of prototypes at the top of the file by way of
9193         documentation. Some of the operations on chains and groups were
9194         re-organized.
9195
9196         (create_group): Added a type argument so if the group is enabled,
9197         the setup_group_scheduler knows what to do.
9198         (group_elements): Added a type argument here, too, to be passed on
9199         to create_group.
9200         (group_element_set_enabled): If an unlinked PLAYING element is
9201         added to a bin, we have to create a new group to hold the element,
9202         and this function will be called before the group is added to the
9203         chain. Thus we have a valid case for group->chain==NULL. Instead
9204         of calling chain_group_set_enabled, just set the flag on the group
9205         (the chain's status will be set when the group is added to it).
9206         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9207         Setup the group scheduler when the group is enabled, not
9208         specifically when an element goes PAUSED->PLAYING. This means
9209         PLAYING elements can be added, linked, and scheduled into a
9210         PLAYING pipeline, as was intended.
9211         (add_to_group): Don't ref the group twice. I don't know when this
9212         double-ref got in here. Removing it has the potential to cause
9213         segfaults if other parts of the scheduler are buggy. If you find
9214         that the scheduler is segfaulting for you, put in an extra ref
9215         here and see if that hacks over the underlying issue. Of course,
9216         then find out what code is unreffing a group it doesn't own...
9217         (create_group): Make the extra refcount floating, and remove it
9218         after adding the element. This means that...
9219         (unref_group): Destroy when the refcount reaches 0, not 1, like
9220         every other refcounted object in the known universe.
9221         (remove_from_group): When a group becomes empty, set it to be not
9222         active, and remove it from its chain. Don't unref it again,
9223         there's no floating reference any more.
9224         (destroy_group): We have to remove the group from the chain in
9225         remove_from_group (rather than here) to break refcounting cycles
9226         (the chain always has a ref on the group). So assert that
9227         group->chain==NULL.
9228         (ref_group_by_count): Removed, it was commented out anyway.
9229         (merge_chains): Use the remove_from_chain and add_to_chain
9230         primitives to do the reparenting, instead of rolling our own
9231         implementation.
9232         (add_to_chain): The first non-disabled group in the chain's group
9233         list will be the entry point for the chain. Because buffers can
9234         accumulate in loop elements' peer bufpens, we preferentially
9235         schedule loop groups before get groups to avoid unnecessary
9236         execution of get-based groups when the bufpens are already full.
9237         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9238         (get_group_schedule_function): Ditto.
9239         (loop_group_schedule_function): Ditto.
9240         (gst_opt_scheduler_loop_wrapper): Ditto.
9241         (gst_opt_scheduler_iterate): Ditto.
9242
9243         I understand the opt scheduler now, yippee!
9244
9245         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9246         (gst_pad_get_name, gst_pad_set_chain_function) 
9247         (gst_pad_set_get_function, gst_pad_set_event_function) 
9248         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9249         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9250         (gst_pad_set_query_function, gst_pad_get_query_types) 
9251         (gst_pad_get_query_types_default) 
9252         (gst_pad_set_internal_link_function) 
9253         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9254         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9255         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9256         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9257         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9258         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9259         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9260         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9261         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9262         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9263         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9264         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9265         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9266         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9267         argument checks, and some doc fixes.
9268
9269         (gst_pad_custom_new_from_template): Um, does anyone
9270         use these functions? Actually make a custom pad instead of a
9271         normal one.
9272         (gst_pad_try_set_caps): Transpose some checks.
9273         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9274         the pad is in negotiation.
9275         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9276         
9277         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9278
9279         * gst/gstelement.h: 
9280         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9281         on the list.
9282
9283 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9284
9285         * gst/gstbin.c: (gst_bin_add):
9286           add error for not being able to add elements
9287
9288 2004-02-22  Julien MOUTTE <julien@moutte.net>
9289
9290         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9291         audio-codec and video-codec.
9292
9293 2004-02-22  Benjamin Otte  <otte@gnome.org>
9294
9295         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9296
9297         * autogen.sh:
9298           replace test -e with test -x for mkinstalldirs to be more portable.
9299           (fixes #134816)
9300
9301 2004-02-22  Benjamin Otte  <otte@gnome.org>
9302
9303         * gst/gstpad.c:
9304           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9305           too noisy
9306         * gst/gsttag.c: (_gst_tag_initialize):
9307         * gst/gsttag.h:
9308           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9309         * libs/gst/control/dparam.c: (gst_dparam_attach):
9310         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9311           check that types for attached dparams match
9312
9313 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9314
9315         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9316         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9317         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9318           fix errors
9319
9320 2004-02-20  Andy Wingo  <wingo@pobox.com>
9321
9322         * gst/gstbin.c:
9323         * gst/gstbuffer.c:
9324         * gst/gstplugin.c:
9325         * gst/registries/gstxmlregistry.c: 
9326         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9327
9328         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9329         (gst_element_add_pad): DEBUG->INFO, some fixes.
9330         (gst_element_get_compatible_pad_template): Just see if the
9331         templates' caps intersect, not if one is a strict subset of the
9332         other. This conforms more to what gst_pad_link_intersect() does.
9333         (gst_element_class_add_pad_template): Don't memcpy the pad
9334         template, just ref it.
9335         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9336
9337         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9338         (gst_pad_link_filtered): Debug changes.
9339         (gst_pad_link_prepare): New function, consolidated from
9340         can_link_filtered and link_filtered.
9341
9342         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9343         look more like that of the functions in gstelement.c
9344
9345         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9346         object, and return the empty string if object is NULL.
9347
9348         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9349         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9350         LOG, not DEBUG. We still get flex info on debug.
9351
9352         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9353         debug string more verbose.
9354         (plugin_times_older_than): DEBUG->LOG.
9355
9356 2004-02-20  Julien MOUTTE <julien@moutte.net>
9357
9358         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9359         will emit found_tag for each stream they demux with the codec.
9360
9361 2004-02-20  Benjamin Otte  <otte@gnome.org>
9362
9363         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9364           copy navigation event correctly. Check freeing tag lists. 
9365         * gst/gstthread.c: (gst_thread_change_state):
9366           don't abort() on state changing mess - it might happen because of
9367           bugs.
9368         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9369           use boxed functions
9370         * gst/gstvalue.h:
9371           fix GST_VALUE_HOLDS_CAPS
9372
9373 2004-02-19  David Schleef  <ds@schleef.org>
9374
9375         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9376         and use it for GST_FUNCTION.  (bug #134750)
9377
9378 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9379
9380         * po/fr.po:
9381         * po/nl.po:
9382           updating translations
9383
9384 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9385
9386         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9387
9388 2004-02-18  kost@imn.htwk-leipzig.de
9389
9390         reviewed by: David Schleef  <ds@schleef.org>
9391
9392         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9393         for libgstcontrol.
9394
9395 2004-02-18  David Schleef  <ds@schleef.org>
9396
9397         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9398         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9399         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9400         * tools/gst-inspect.c: (print_element_info): Support dumping of
9401         double dparam information.
9402
9403 2004-02-17  David Schleef  <ds@schleef.org>
9404
9405         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9406         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9407         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9408         Use GST_TYPE_CAPS in signal prototype.
9409         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9410         Convert GST_TYPE_CAPS to boxed.
9411         * gst/gstelement.c: (gst_element_class_init):
9412         Use GST_TYPE_TAG_LIST in signal prototype.
9413         * gst/gstindex.c: (gst_index_class_init):
9414         * gst/gstindex.h:
9415         Add GST_TYPE_INDEX_ENTRY type.
9416         * gst/gstmarshal.list:
9417         Add necessary marshal types.
9418         * gst/gstpad.c: (gst_real_pad_class_init),
9419         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9420         (gst_pad_recover_caps_error):
9421         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9422         * gst/gststructure.c: (_gst_structure_initialize),
9423         (gst_structure_copy), (_gst_structure_copy_conditional):
9424         * gst/gststructure.h:
9425         Convert GST_TYPE_STRUCTURE to boxed.
9426         * gst/gsttag.c: (gst_tag_list_get_type):
9427         * gst/gsttag.h:
9428         Add GST_TYPE_TAG_LIST type.
9429
9430 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9431
9432         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9433         to what we agreed with david.
9434         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9435
9436 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9437
9438         * po/nl.po: update translation
9439
9440 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9441
9442         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9443           throw an error if spider is trying to play a mime type there is
9444           no decoder for
9445         * po/POTFILES.in:
9446           add gst/autoplug/gstspider.c for translation
9447
9448 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9449
9450         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9451         silently when the pad is negotiating.
9452
9453 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9454
9455         * docs/faq/Makefile.am:
9456           add script to run gstreamer uninstalled 
9457         * docs/faq/faq.xml:
9458         * docs/faq/developing.xml:
9459         * docs/faq/gst-uninstalled:
9460           extract script to run gstreamer uninstalled
9461         * docs/manuals.mak:
9462           add EXTRA_SOURCES variable for Makefile.am's to set to
9463           use additional SOURCE files for the doc build
9464
9465 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9466
9467         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9468
9469 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9470
9471         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9472         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9473         an error was thrown by osssink. Basically a state change failure for
9474         an element in a different scheduling group was considered as
9475         successful, which means that caps nego was going on and weird stuff
9476         happened. Like I wrote in the comment there, if someone wants to
9477         revert that please drop me a mail explaining why because I really see
9478         no point in keeping that broken behaviour there.
9479         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9480         be empty, we then return NULL which will trigger a nice error when 
9481         pulling from the pad.
9482
9483 2004-02-13  David Schleef  <ds@schleef.org>
9484
9485         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9486         (gst_dparam_get_property), (gst_dparam_set_property),
9487         (gst_dparam_do_update_default):
9488         * libs/gst/control/dparam.h:
9489         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9490         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9491         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9492         (gst_dpsmooth_do_update_double):
9493         * libs/gst/control/dparam_smooth.h:
9494         * libs/gst/control/dparammanager.c:
9495         (gst_dpman_inline_direct_update):
9496         Add support for double dparams.
9497
9498 2004-02-13  David Schleef  <ds@schleef.org>
9499
9500         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9501         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9502
9503 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9504
9505         reviewed by: David Schleef  <ds@schleef.org>
9506
9507         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9508         (gst_fdsrc_init), (gst_fdsrc_set_property),
9509         (gst_fdsrc_get_property), (gst_fdsrc_get):
9510         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9511         and sends an EOS event if file descriptor reading times out.
9512
9513 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9514
9515         * configure.ac:
9516           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9517
9518 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9519
9520         * configure.ac: pass required libxml version as argument
9521         (bug reported by Christophe Fergeau)
9522
9523 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9524   
9525         * docs/gst/gstreamer-docs.sgml:
9526         * docs/gst/tmpl/gstxml.sgml:
9527         * docs/libs/gstreamer-libs-docs.sgml:
9528           version API docs
9529
9530 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9531
9532         * gst/gstinfo.c:
9533         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9534         (gst_registry_pool_feature_filter):
9535         * gst/gstthread.c: (gst_thread_class_init):
9536         * gst/gstvalue.c:
9537           add includes exposed by building without libxml
9538         * gst/indexers/Makefile.am:
9539           do not build fileindex when LOADSAVE disabled; we should have
9540           a better libxml check later since fileindex depends on xml, not
9541           LOADSAVE or REGISTRY
9542         * libs/gst/control/Makefile.am:
9543           link with m
9544         * tools/Makefile.am:
9545           fix wrong source code for gst-xmlinspect
9546
9547 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9548
9549         * configure.ac:
9550           fix gcov help output
9551           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9552         * docs/random/release:
9553           some updated releasing notes
9554         * gstreamer.spec.in:
9555           more updates
9556
9557 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9558
9559         * docs/faq/faq.xml:
9560         * docs/manual/manual.xml:
9561         * docs/pwg/pwg.xml:
9562         * docs/pwg/titlepage.xml:
9563           put version in documentation
9564
9565 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9566
9567         * tools/Makefile.am: fix man page installation
9568
9569 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9570
9571         * configure.ac:
9572           don't check for libxml when load/save and registry disabled (#105844)
9573         * gstreamer.spec.in:
9574           sync with fedora candidate spec
9575
9576 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9577
9578         * po/fr.po:
9579         * po/nl.po:
9580           replace multidisksrc with multifilesrc
9581
9582 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9583
9584         * po/POTFILES.in:
9585           update to multidisksrc => multifilesrc file renaming (#134145)
9586
9587 2004-02-11  David Schleef  <ds@schleef.org>
9588
9589         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9590         * docs/gst/tmpl/gstpadtemplate.sgml: same
9591         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9592         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9593         fixing dance.
9594         * gst/gstutils.c: Remove disabled code that uses GstProps.
9595         * gst/registries/gstxmlregistry.h: same
9596         * docs/random/ds/0.9-suggested-changes: random notes
9597
9598 2004-02-11  kost@imn.htwk-leipzig.de
9599
9600         reviewed by: David Schleef  <ds@schleef.org>
9601
9602         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9603         initialisation of clock (bug #134128)
9604
9605 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9606
9607         * configure.ac:
9608         * gst/elements/Makefile.am:
9609         * gst/elements/gstelements.c:
9610         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9611         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9612         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9613         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9614         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9615         * gst/elements/gstmultifilesrc.h:
9616           rename multidisksrc to multifilesrc (part of #122200)
9617
9618 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9619
9620         * docs/manuals.mak:
9621           fix automake complaints
9622         * gst-element-check.m4:
9623           fix unquotedness
9624
9625 2004-02-11  David Schleef  <ds@schleef.org>
9626
9627         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9628         * gst/gstatomic_impl.h: Disable sparc implementation.
9629
9630 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9631
9632         * gst-element-check.m4:
9633           fix underquoted macros as reported by automake 1.8.x (#133800)
9634         * configure.ac:
9635           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9636           by autopoint (fixes #132996)
9637
9638 2004-02-10  Andy Wingo  <wingo@pobox.com>
9639
9640         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9641         way to do inheritance.
9642         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9643         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9644         Routine docs.
9645         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9646         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9647         doc.
9648         (gst_pad_unlink, gst_pad_is_linked): Docs.
9649         (gst_pad_renegotiate): A brief description of capsnego.
9650         (gst_pad_try_set_caps): Document.
9651         (gst_pad_try_set_caps_nonfixed): Document.
9652         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9653         (gst_pad_set_parent): Deprecated (although not out of the API).
9654         (gst_pad_get_parent): Deprecated, although many plugins use this.
9655         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9656         are private and will go away in 0.9.
9657         (gst_pad_perform_negotiate): Doc.
9658         (gst_pad_link_unnegotiate): I think this is meant to be static.
9659         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9660         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9661         (gst_pad_get_peer): Doc updates.
9662         (gst_pad_caps_change_notify): Doc.
9663         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9664         (gst_ghost_pad_new): Doc fixes.
9665
9666         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9667         (gst_object_check_uniqueness): 
9668
9669         * gst/gstelement.c (gst_element_add_pad) 
9670         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9671         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9672         (gst_element_get_static_pad, gst_element_get_pad_list) 
9673         (gst_element_class_get_pad_template_list) 
9674         (gst_element_class_get_pad_template): Work on the docs.
9675         (gst_element_get_pad_template_list): Uses the class method.
9676         (gst_element_get_compatible_pad_template): Docs, and consolidate
9677         some test conditions. 
9678         (gst_element_get_pad_from_template): New static function.
9679         (gst_element_request_compatible_pad): Docs, and work with
9680         non-request compatible templates. 
9681         (gst_element_get_compatible_pad_filtered): Docs and remove
9682         redundant checks.
9683         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9684         (gst_element_link_filtered, gst_element_link_many) 
9685         (gst_element_link, gst_element_link_pads) 
9686         (gst_element_unlink_many): Docs.
9687
9688 2004-02-05  Andy Wingo  <wingo@pobox.com>
9689
9690         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9691         s/pointer/boxed/.
9692
9693         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9694
9695         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9696         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9697         with the type=GST_TYPE_CAPS. This allows language bindings to know
9698         what kind of data they're dealing with.
9699
9700         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9701         to NULL when g_value_init is called. GstCaps, which rolls its own
9702         type implementation, now does the same instead of allocating empty
9703         caps.
9704         (_gst_caps_initialize, _gst_caps_collect_value,
9705         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9706         table methods. This allows G_VALUE_COLLECT to work.
9707
9708 2004-02-05  Andy Wingo  <wingo@pobox.com>
9709
9710         * configure.ac:
9711         * testsuite/Makefile.am (SUBDIRS): 
9712         * testsuite/ghostpads/Makefile.am: 
9713         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9714
9715         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9716         These two routines are the only ones that set
9717         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9718         pad template. They should be made static, depending on ABI needs.
9719         (gst_real_pad_dispose): Handle the case of ghost pads without a
9720         parent. Assert after dealing with ghost pads that the ghost pad
9721         list is empty.
9722         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9723         set after creation.
9724         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9725         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9726         functions. set_property will call add_ghost_pad/remove_ghost_pad
9727         as appropriate.
9728         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9729
9730         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9731         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9732         (gst_element_remove_pad): Handle ghost pads as well.
9733         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9734         depending on API-stability needs).
9735
9736 2004-02-05  Andy Wingo  <wingo@pobox.com>
9737
9738         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9739         of course they're const
9740
9741 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9742
9743         * tools/Makefile.am:
9744         * tools/gst-feedback:
9745         * tools/gst-feedback-0.7:
9746           make gst-feedback versioned too for consistency
9747
9748 2004-02-11  David Schleef  <ds@schleef.org>
9749
9750         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9751         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9752
9753 2004-02-10  Julien MOUTTE <julien@moutte.net>
9754
9755         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9756         the structure does not contain a valid tag list. Adding a safety check
9757         to remove a noisy warning in that case.
9758
9759 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9760
9761         * gst/gst.c: fix name to be in line with others
9762
9763 2004-02-09  Julien MOUTTE <julien@moutte.net>
9764
9765         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
9766         not shout that loud when len is 0. Just return 0 silently.
9767
9768 2004-02-09  Julien MOUTTE  <julien@moutte.net>
9769
9770         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
9771         because data_unref has one and I prefer the debug to be symetric.
9772         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
9773         were refed when added to the queue and unrefed only once when the queue
9774         was flushed. Now the flush handler unref the buffers two times : first
9775         unref for the ref added when pushing in the queue's tail and second
9776         unref to destroy the flushed buffer.
9777
9778 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9779
9780         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
9781
9782 2004-02-06  David Schleef  <ds@schleef.org>
9783
9784         * docs/random/ds/0.9-suggested-changes: Random ramblings
9785         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
9786         to int before printing.
9787         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
9788         * gst/parse/parse.l: same.  See bug #129600
9789
9790 2004-02-06  David Schleef  <ds@schleef.org>
9791
9792         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
9793         (gst_index_add_entry), (gst_index_add_associationv),
9794         (gst_index_add_association): Add gst_index_add_associationv()
9795         and clean up gst_index_add_association(). #127133
9796
9797 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9798
9799         * autogen.sh: check out common with right tag if CVS/Tag exists
9800
9801 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9802
9803         * testsuite/ghostpads/ghostpads.c: (main):
9804           fix testsuite from segfaulting
9805
9806 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9807
9808         * Makefile.am: add release target
9809         * configure.ac: bump nano to 1
9810         * docs/random/release:
9811
9812 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9813
9814         * gst/gstcaps.h:
9815         * gst/gstelement.c: (gst_element_base_class_init),
9816         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9817         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9818         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9819         (gst_real_pad_dispose):
9820         * gst/gststructure.c: (gst_structure_free),
9821         (gst_structure_from_string):
9822           put reverted patch back in
9823         * gst/gstelement.c: (gst_element_remove_pad):
9824           free explicit caps if they're set
9825         * gst/gstpad.c: (_gst_pad_default_fixate_func):
9826           copy the structure when fixating
9827
9828 2004-02-05  David Schleef  <ds@schleef.org>
9829
9830         * gst/gstmarshal.list:
9831         * gst/gstpad.c: (gst_real_pad_class_init),
9832         (_gst_real_pad_fixate_accumulator):
9833         Revert POINTER->BOXED change in signal marshaller.
9834
9835 === release 0.7.4 ===
9836                                                                                 
9837 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9838                                                                                 
9839         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
9840         * configure.ac: changed for release
9841
9842 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
9843
9844         * gstreamer.spec.in:
9845           bump required version of gtk-doc
9846
9847 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9848
9849         * gst/gstcaps.h:
9850         * gst/gstelement.c: (gst_element_base_class_init),
9851         (gst_element_class_set_details), (gst_element_clear_pad_caps):
9852         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9853         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
9854         (gst_real_pad_dispose):
9855         * gst/gststructure.c: (gst_structure_free),
9856         (gst_structure_from_string):
9857           revert patch that breaks applications, reapply after release
9858           to get this fixed properly
9859
9860 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9861
9862         * gst/gsttag.c: (_gst_tag_initialize):
9863         * gst/gsttag.h:
9864           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
9865
9866 2004-02-04  David Schleef  <ds@schleef.org>
9867
9868         Fix some memleaks:
9869         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
9870         (gst_spider_plug_from_srcpad):
9871         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
9872
9873 2004-02-04  David Schleef  <ds@schleef.org>
9874
9875         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
9876         a GstRealPad before accessing its structure members.
9877
9878 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9879
9880         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
9881         (gst_clock_get_speed):
9882         * gst/gstclock.h:
9883           reset padding, remove unused fields
9884
9885 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9886
9887         * gst/autoplug/gstspideridentity.c:
9888         (gst_spider_identity_sink_loop_type_finding):
9889           use get_allowed_caps, not get_caps (fixes #132519)
9890         * gst/elements/gsttypefind.c: (stop_typefinding):
9891           use correct order when sending buffers and seeking
9892
9893 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9894
9895         * configure.ac:
9896         * gst/gstelement.h:
9897         * gst/gstpad.h:
9898         * gst/gstqueue.h:
9899           upgrade libtool CURRENT, reset padding
9900
9901 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9902
9903         * configure.ac:
9904           bump to prerelease
9905           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
9906
9907 2004-02-04  David Schleef  <ds@schleef.org>
9908
9909         * docs/random/ds/0.9-suggested-changes: random notes
9910         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
9911         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
9912         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
9913         expansion.
9914         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9915         (gst_filesink_get_query_types): same
9916         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
9917         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
9918         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
9919         to use new GST_PTR_FORMAT.
9920         * gst/gstelement.h: deprecate function factory macros
9921         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
9922         These are our last variadic macros that can't be replaced with
9923         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
9924         attempting to deprecate gst_element_clock_wait().
9925         * gst/gstevent.h: same
9926         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9927         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
9928         * gst/gstpad.h: deprecate function factory macros similar to above.
9929
9930 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9931
9932         * configure.ac:
9933         * tools/Makefile.am:
9934         * tools/gst-run.c: (popt_callback), (hash_print_key),
9935         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
9936         (get_candidates), (main):
9937           add new source file to generate non-versioned wrapper binaries
9938           for our tools.
9939
9940 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9941
9942         * gst/gstevent.c: (_gst_event_free):
9943           actually break; inside the switch statement
9944         * gst/parse/grammar.y:
9945           fix memleak where GValues weren't unset
9946
9947 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9948
9949         * gst/gststructure.c: (gst_structure_from_string):
9950           fix huge memleak
9951         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
9952         (new_entry), (gst_type_find_element_chain):
9953         * gst/gstelement.c: (gst_element_base_class_init),
9954         (gst_element_class_set_details):
9955         * gst/gstpad.c: (gst_pad_can_link_filtered):
9956           fix smaller memleaks
9957         * gst/gstpad.c: (gst_real_pad_dispose):
9958           check that explicit caps are gone
9959         * gst/gststructure.c: (gst_structure_free):
9960           actually free the structure
9961         * gst/gstelement.c: (gst_element_clear_pad_caps):
9962           unset explicit caps
9963
9964 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9965
9966         * tools/Makefile.am:
9967           use AM_CFLAGS since all the CFLAGS are the same
9968           use AM_LDFAGS
9969
9970 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9971
9972         * docs/manual/gnome.xml:
9973           expand example a little
9974         * gst/gst.c: (gst_init_with_popt_table),
9975         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
9976           make sure popt option displays are done with right textdomain
9977           use GstPoptOption type
9978         * gst/gst.h:
9979           create GstPoptOption type
9980
9981 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9982
9983         * gst/gsterror.c: (_gst_stream_errors_init):
9984         * gst/gsterror.h:
9985           adding error type for no codec
9986         * po/POTFILES.in:
9987           add gst-inspect
9988         * po/nl.po:
9989           update dutch translation
9990         * tools/gst-inspect.c: (print_element_list), (main):
9991           do proper internationalization
9992         * tools/gst-launch.c: (idle_func):
9993           remove commented out function call
9994
9995 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9996
9997         * docs/README:
9998           add some error fixing notes
9999         * docs/gst/gstreamer-sections.txt:
10000           remove double entries
10001         * docs/gst/tmpl/gstbin.sgml:
10002         * docs/gst/tmpl/gstclock.sgml:
10003           remove override
10004         * docs/gst/tmpl/gstelement.sgml:
10005         * docs/gst/tmpl/gstindex.sgml:
10006         * docs/gst/tmpl/gstobject.sgml:
10007         * docs/gst/tmpl/gstpadtemplate.sgml:
10008         * docs/gst/tmpl/gstreamer-unused.sgml:
10009         * docs/gst/tmpl/gsttag.sgml:
10010         * docs/gst/tmpl/gstthread.sgml:
10011         * docs/gst/tmpl/gstxml.sgml:
10012         * gst/gsttag.h:
10013           sync header prototypes with c decls
10014         * gst/gsttaginterface.c:
10015           fix doc headers
10016
10017 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10018
10019         * gst/parse/Makefile.am:
10020         * gst/gstobject.h:
10021           get rid of gstmarshal.h dependency. It's not needed.
10022         * gst/gst.h:
10023         * gst/elements/gstfakesink.c:
10024         * gst/elements/gstfakesrc.c:
10025         * gst/elements/gstidentity.c:
10026         * gst/gstbin.c:
10027         * gst/gstelement.c:
10028         * gst/gstindex.c:
10029         * gst/gstobject.c:
10030         * gst/gstpad.c:
10031         * gst/gstthread.c:
10032         * gst/gstxml.c:
10033         * libs/gst/control/dparam.c:
10034         * libs/gst/control/dparammanager.c:
10035           include gstmarshal.h.
10036         Fixes #132045
10037
10038 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10039
10040         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10041         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10042         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10043         * gst/elements/gstfilesrc.h:
10044           don't ref the filesrc when creating mmaped buffers. Don't keep a
10045           list of not-yet-destroyed buffers.
10046         * gst/gstbuffer.h:
10047           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10048
10049 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10050
10051         * gst/gst.c: (init_pre):
10052           remove textdomain
10053
10054 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10055
10056         * docs/pwg/advanced-events.xml:
10057         * docs/pwg/advanced-scheduling.xml:
10058         * docs/pwg/intro-basics.xml:
10059         * docs/pwg/other-manager.xml:
10060         * docs/pwg/other-nton.xml:
10061         * docs/pwg/other-ntoone.xml:
10062         * docs/pwg/other-oneton.xml:
10063         * docs/pwg/pwg.xml:
10064           All sort of documentation... Forgot what. Point is that I want this
10065           in before I leave. The 'other-*' will be the last section and will
10066           explain issues specific to these type of elements.
10067
10068 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10069
10070         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10071         (gst_filesrc_get_read):
10072           set all the values on buffers that we can
10073
10074 2004-02-02  David Schleef  <ds@schleef.org>
10075
10076         Change usage of isblah() to g_ascii_isblah() to be more locale
10077         independent.  (#133076)
10078         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10079         * gst/gstutils.c:
10080         * gst/parse/parse.l:
10081
10082 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10083
10084         reviewed by: David Schleef  <ds@schleef.org>
10085
10086         Fix memory leaks:
10087         * gst/gstcaps.c: (gst_caps_to_string):
10088         * gst/registries/gstxmlregistry.c:
10089         (gst_xml_registry_add_path_list_func),
10090         (gst_xml_registry_parse_padtemplate):
10091
10092 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10093
10094         * gst/gstelement.c: (gst_element_default_error):
10095           suffix error messages with period
10096
10097 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10098
10099         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10100         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10101         * gst/gsterror.c: (gst_error_get_message):
10102           Suffix with dots
10103         * po/fr.po:
10104         * po/nl.po:
10105           Update translation files
10106
10107 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10108
10109         * gst/autoplug/gstspideridentity.c:
10110         (gst_spider_identity_sink_loop_type_finding):
10111         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10112         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10113         (gst_filesink_close_file), (gst_filesink_handle_event),
10114         (gst_filesink_chain):
10115         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10116         (gst_filesrc_get_read), (gst_filesrc_open_file):
10117         * gst/elements/gstidentity.c: (gst_identity_chain):
10118         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10119         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10120         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10121         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10122         * gst/gsterror.c: (_gst_core_errors_init),
10123         (_gst_library_errors_init), (_gst_resource_errors_init),
10124         (_gst_stream_errors_init), (gst_error_get_message):
10125         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10126         (gst_pad_recover_caps_error), (gst_pad_pull):
10127         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10128         * gst/schedulers/gstbasicscheduler.c:
10129         (gst_basic_scheduler_chainhandler_proxy),
10130         (gst_basic_scheduler_gethandler_proxy),
10131         (gst_basic_scheduler_cothreaded_chain):
10132           Suffix error messages with period.
10133           Use (NULL) instead of NULL
10134
10135 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10136
10137         * docs/gst/tmpl/gstelement.sgml:
10138         * docs/gst/tmpl/gstxml.sgml:
10139         * gst/gstelement.c: (gst_element_error_full):
10140           add element path to error
10141
10142 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10143
10144         * docs/random/mimetypes:
10145           update raw int/float info
10146         * gst/gsttag.c: (_gst_tag_initialize):
10147         * gst/gsttag.h:
10148           add GST_TAG_ENCODER
10149
10150 2004-01-30  David Schleef  <ds@schleef.org>
10151
10152         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10153           missing (#132991)
10154
10155 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10156
10157         reviewed by Benjamin Otte 
10158           parts of the patch submitted in bug #113913
10159
10160         * configure.ac:
10161           use AC_C_INLINE. Use = instead of == with test
10162         * examples/plugins/example.c:
10163         * gst/autoplug/gstspideridentity.c:
10164         * gst/elements/gstfdsrc.c:
10165         * gst/elements/gstfilesrc.c:
10166         * gst/elements/gstidentity.c:
10167         * gst/elements/gstmultidisksrc.c:
10168         * gst/elements/gststatistics.c:
10169         * gst/gstelement.c:
10170         * gst/gstobject.c:
10171         * gst/gstpad.c:
10172         * gst/gstpipeline.c:
10173         * gst/gstthread.c:
10174           don't end enums with a comma
10175         * gst/gstindex.c: (gst_index_compare_func):
10176           do explicit casting to gint
10177         * gst/gsttrace.c: (gst_trace_text_flush):
10178           #define strsize as a macro
10179
10180 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10181
10182         * docs/README:
10183         * docs/gst/gstreamer-docs.sgml:
10184         * docs/gst/gstreamer-sections.txt:
10185         * docs/gst/tmpl/gstelement.sgml:
10186         * docs/gst/tmpl/gsterror.sgml:
10187         * docs/gst/tmpl/gstinterface.sgml:
10188         * docs/gst/tmpl/gstreamer-unused.sgml:
10189         * docs/gst/tmpl/gststructure.sgml:
10190         * docs/gst/tmpl/gsttag.sgml:
10191         * docs/gst/tmpl/gsttaginterface.sgml:
10192         * docs/gst/tmpl/gstvalue.sgml:
10193         make sure all API ends up in the built docs
10194         * gst/gstinterface.c:
10195         * gst/gststructure.c: (gst_structure_id_set_value),
10196         (gst_structure_set_value), (gst_structure_id_get_value):
10197         * gst/gststructure.h:
10198         * gst/gstvalue.h:
10199         sync .h with .c declarations
10200
10201 2004-01-30  Julien Moutte  <julien@moutte.net>
10202
10203         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10204         Ronald will fix riffread.
10205
10206 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10207
10208         * docs/pwg/advanced-interfaces.xml:
10209           Added tuner interface docs.
10210
10211 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10212
10213         * docs/random/mimetypes:
10214           correct Theora information
10215         * gst/gstelement.h:
10216           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10217
10218 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10219
10220         * gst/gstelement.c: (gst_element_error_full):
10221         * gst/gstelement.h:
10222           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10223
10224 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10225
10226         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10227         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10228         again and even before DISCONT.
10229         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10230         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10231         bytestream so that it's not stopping to fill the bytestream if events
10232         different than EOS or DISCONT are received. Instead it process them so
10233         that they go downstream.
10234
10235 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10236
10237         * docs/gst/tmpl/gstelement.sgml:
10238         * docs/gst/tmpl/gstreamer-unused.sgml:
10239         * docs/gst/tmpl/gstxml.sgml:
10240         * gst/autoplug/gstspideridentity.c:
10241         (gst_spider_identity_sink_loop_type_finding):
10242         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10243         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10244         (gst_filesink_close_file), (gst_filesink_handle_event),
10245         (gst_filesink_chain):
10246         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10247         (gst_filesrc_get_read), (gst_filesrc_open_file):
10248         * gst/elements/gstidentity.c: (gst_identity_chain):
10249         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10250         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10251         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10252         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10253         * gst/gstelement.h:
10254         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10255         (gst_pad_recover_caps_error), (gst_pad_pull):
10256         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10257         * gst/schedulers/gstbasicscheduler.c:
10258         (gst_basic_scheduler_chainhandler_proxy),
10259         (gst_basic_scheduler_gethandler_proxy),
10260         (gst_basic_scheduler_cothreaded_chain):
10261           gst_element_error -> GST_ELEMENT_ERROR
10262
10263 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10264
10265         * docs/Makefile.am:
10266         * docs/gst/tmpl/gstelement.sgml:
10267         * docs/gst/tmpl/gstxml.sgml:
10268         * docs/manuals.mak:
10269         * docs/pwg/advanced-request.xml:
10270         * docs/pwg/advanced-scheduling.xml:
10271         * docs/pwg/advanced-tagging.xml:
10272           fix non-validating docbook using CDATA
10273           make sure make check-local gets run first to check if it validates
10274
10275 2004-01-29  Julien MOUTTE <julien@moutte.net>
10276
10277         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10278         handling (up and downstream).
10279         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10280         my_filter thing.
10281
10282 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10283
10284         * docs/pwg/advanced-tagging.xml:
10285           Add docs about tag writing.
10286
10287 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10288
10289         * docs/pwg/advanced-tagging.xml:
10290           Add a part about tag reading and application signalling... Tag
10291           writing still needs to be documented.
10292         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10293           We can set file locations in READY, too.
10294
10295 2004-01-29  Julien MOUTTE <julien@moutte.net>
10296
10297         * docs/random/ds/element-checklist: Adding some notes about src
10298         events.
10299
10300 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10301
10302         * docs/random/mimetypes:
10303           Update docs to point to correct elements for various mimetypes, and
10304           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10305           <stephane.loeuillet@tiscali.fr>.
10306
10307 2004-01-28  David Schleef  <ds@schleef.org>
10308
10309         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10310
10311 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10312
10313         * docs/random/mimetypes:
10314           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10315           undefined"
10316         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10317           make it only work in NULL.
10318         * gst/gstcaps.c:
10319           don't posion NULL caps
10320         * gst/gstelement.c: (gst_element_set_time):
10321           add debugging statement
10322         * gst/gstelement.c: (gst_element_emit_found_tag),
10323         (gst_element_found_tag_func), (gst_element_found_tags):
10324         * gst/gstelement.h:
10325           These functions take const taglists
10326         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10327           fix memleak
10328         * gst/gstpad.c: (gst_pad_event_default):
10329           make more effort on handling discont and clocks, g_warn if everything
10330           fails
10331         * gst/gststructure.c: (gst_structure_remove_fields),
10332         (gst_structure_remove_fields_valist):
10333         * gst/gststructure.h:
10334           add gst_structure_remove_fields(_valist)
10335         * gst/gsttag.c:
10336           fix doc glitch
10337
10338 2004-01-28  David Schleef  <ds@schleef.org>
10339
10340         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10341         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10342         Fix memory leakage of gst_caps_to_string().
10343
10344         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10345         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10346         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10347         (gst_spider_identity_sink_loop_type_finding):
10348         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10349         (find_suggest):
10350         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10351         (gst_pad_set_explicit_caps):
10352         * gst/parse/grammar.y:
10353
10354 2004-01-28  David Schleef  <ds@schleef.org>
10355
10356         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10357         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10358         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10359         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10360         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10361         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10362         (gst_debug_log_default), (_gst_info_printf_extension),
10363         (_gst_info_printf_extension_arginfo):  Add printf extension.
10364         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10365         * gst/gststructure.c: (gst_structure_to_string),
10366         (_gst_structure_parse_value): Use gst_value_deserialize() and
10367         remove old code.
10368         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10369         (gst_value_deserialize_boolean), (gst_strtoi),
10370         (gst_value_deserialize_int), (gst_value_deserialize_double),
10371         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10372         a bunch of deserialize functions and gst_value_deserialize.
10373         * gst/gstvalue.h: er, _de_serialize, not unserialize
10374         * testsuite/caps/string-conversions.c: (main): We don't currently
10375         handle (float) in caps, so convert these to (double).
10376         * testsuite/debug/Makefile.am: Add new test for the printf extension
10377         * testsuite/debug/printf_extension.c: (main): same
10378
10379 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10380
10381         * docs/random/company/time:
10382           Add some docs about clocking and time
10383
10384 2004-01-28  Julien MOUTTE <julien@moutte.net>
10385
10386         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10387
10388 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10389
10390         * docs/pwg/advanced-clock.xml:
10391         * docs/pwg/advanced-dparams.xml:
10392         * docs/pwg/advanced-events.xml:
10393         * docs/pwg/advanced-interfaces.xml:
10394         * docs/pwg/advanced-midi.xml:
10395         * docs/pwg/advanced-request.xml:
10396         * docs/pwg/advanced-scheduling.xml:
10397         * docs/pwg/advanced-tagging.xml:
10398         * docs/pwg/advanced-types.xml:
10399         * docs/pwg/appendix-checklist.xml:
10400         * docs/pwg/building-boiler.xml:
10401         * docs/pwg/building-chainfn.xml:
10402         * docs/pwg/building-filterfactory.xml:
10403         * docs/pwg/building-pads.xml:
10404         * docs/pwg/building-props.xml:
10405         * docs/pwg/building-signals.xml:
10406         * docs/pwg/building-state.xml:
10407         * docs/pwg/building-testapp.xml:
10408         * docs/pwg/intro-basics.xml:
10409         * docs/pwg/intro-preface.xml:
10410         * docs/pwg/other-autoplugger.xml:
10411         * docs/pwg/other-sink.xml:
10412         * docs/pwg/other-source.xml:
10413         * docs/pwg/titlepage.xml:
10414           fix up id's
10415
10416 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10417
10418         * docs/95NonPath:
10419         * docs/HACKING:
10420         * docs/README:
10421         * docs/building-the-docs-on-debian:
10422           collect relevant bits of doc info
10423
10424 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10425
10426         * docs/pwg/advanced_tagging.xml:
10427           Half-assed commit so Thomas can re-arrange document IDs here to be
10428           consistent, too.
10429
10430 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10431
10432         * docs/manual/autoplugging.xml:
10433         * docs/manual/bins-api.xml:
10434         * docs/manual/bins.xml:
10435         * docs/manual/buffers-api.xml:
10436         * docs/manual/buffers.xml:
10437         * docs/manual/clocks.xml:
10438         * docs/manual/components.xml:
10439         * docs/manual/cothreads.xml:
10440         * docs/manual/debugging.xml:
10441         * docs/manual/dparams-app.xml:
10442         * docs/manual/dynamic.xml:
10443         * docs/manual/elements-api.xml:
10444         * docs/manual/elements.xml:
10445         * docs/manual/factories.xml:
10446         * docs/manual/gnome.xml:
10447         * docs/manual/goals.xml:
10448         * docs/manual/helloworld.xml:
10449         * docs/manual/helloworld2.xml:
10450         * docs/manual/init-api.xml:
10451         * docs/manual/intro.xml:
10452         * docs/manual/links-api.xml:
10453         * docs/manual/links.xml:
10454         * docs/manual/manual.xml:
10455         * docs/manual/motivation.xml:
10456         * docs/manual/pads-api.xml:
10457         * docs/manual/pads.xml:
10458         * docs/manual/plugins-api.xml:
10459         * docs/manual/plugins.xml:
10460         * docs/manual/programs.xml:
10461         * docs/manual/queues.xml:
10462         * docs/manual/quotes.xml:
10463         * docs/manual/schedulers.xml:
10464         * docs/manual/states-api.xml:
10465         * docs/manual/states.xml:
10466         * docs/manual/threads.xml:
10467         * docs/manual/typedetection.xml:
10468         * docs/manual/xml.xml:
10469           use chapter, part, section or misc as id starts for all bits
10470
10471 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10472
10473         * docs/gst/gstreamer-sections.txt:
10474           Fix up TITLE of the sections
10475
10476 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10477
10478         * docs/pwg/advanced_interfaces.xml:
10479           Add documentation on propertyprobing.
10480         * docs/pwg/advanced_events.xml:
10481         * docs/pwg/advanced_tagging.xml:
10482         * docs/pwg/building_boiler.xml:
10483         * docs/pwg/building_filterfactory.xml:
10484         * docs/pwg/pwg.xml:
10485           Move filterfactory and tagging into their own chapter, add a chapter
10486           on events. all these are empty placeholders that will be filled in
10487           some day.
10488
10489 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10490
10491         * docs/pwg/advanced_interfaces.xml:
10492           Docs for mixer interface. Also a check for website uploading.
10493
10494 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10495
10496         * docs/HACKING:
10497         * docs/Makefile.am:
10498         * docs/faq/Makefile.am:
10499         * docs/gst/Makefile.am:
10500         * docs/gst/tmpl/gstelement.sgml:
10501         * docs/gst/tmpl/gstplugin.sgml:
10502         * docs/gst/tmpl/gstreamer-unused.sgml:
10503         * docs/libs/Makefile.am:
10504         * docs/manual/Makefile.am:
10505         * docs/manuals.mak:
10506         * docs/pwg/Makefile.am:
10507         * docs/upload.mak:
10508           Separate out upload target and make it similar for
10509           both docbook and gtk-doc docs
10510
10511 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10512
10513         * docs/manuals.mak:
10514           Fix upload target to work with freedesktop
10515
10516 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10517
10518         * docs/pwg/advanced_types.xml:
10519           Add notes on creating your own types.
10520         * docs/pwg/building_boiler.xml:
10521         * docs/pwg/building_pads.xml:
10522         * docs/pwg/building_state.xml:
10523           Add some stuff about how to retrieve values from structures, how
10524           that relates to types and change layout slightly again to be almost
10525           perfect.
10526
10527 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10528
10529         * docs/pwg/advanced_dparams.xml:
10530         * docs/pwg/advanced_scheduling.xml:
10531           Change index layout slightly.
10532
10533 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10534
10535         * docs/pwg/advanced_clock.xml:
10536         * docs/pwg/advanced_interfaces.xml:
10537         * docs/pwg/advanced_midi.xml:
10538           General placeholders for now.
10539         * docs/pwg/advanced_request.xml:
10540           Explanation about sometimes and request pads.
10541         * docs/pwg/advanced_scheduling.xml:
10542           Concept of bytestream, loopfunctions and schedulers.
10543         * docs/pwg/building_boiler.xml:
10544           Add something about plugin-init.
10545
10546 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10547
10548         * docs/pwg/building_pads.xml:
10549           Fix broken docbook
10550
10551 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10552
10553         * docs/pwg/advanced_interfaces.xml:
10554         * docs/pwg/pwg.xml:
10555           Add as a placeholder for future filling-in.
10556         * docs/pwg/basics_autoplugging.xml:
10557         * docs/pwg/basics_buffers.xml:
10558         * docs/pwg/basics_elements.xml:
10559         * docs/pwg/basics_events.xml:
10560         * docs/pwg/basics_plugins.xml:
10561         * docs/pwg/basics_types.xml:
10562           Remove, because unused (this is all in intro_basics.xml).
10563         * docs/pwg/building_signals.xml:
10564           Short intro to signals + reference to GObject docs - we really
10565           shouldn't go into these sort of things to deply because we don't
10566           use them that extensively anyway.
10567         * docs/pwg/building_state.xml:
10568           Explanation of states. Benjamin, please check.
10569         * docs/pwg/building_testapp.xml:
10570           Put everything in one page - putting only a few lines of content
10571           per page doesn't really make sense.
10572
10573           Time to get into the advanced topics. ;).
10574
10575 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10576
10577         * docs/pwg/advanced_types.xml:
10578           Finish documenting the current state of mimetypes.
10579         * docs/pwg/building_boiler.xml:
10580         * docs/pwg/building_chainfn.xml:
10581         * docs/pwg/building_pads.xml:
10582         * docs/pwg/building_props.xml:
10583         * docs/pwg/building_testapp.xml:
10584           Start documenting the "how to build a simple audio filter" part
10585           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10586           states and (maybe?) a short introduction to capsnego in the chapter
10587           on pads (building_pads.xml). Capsnego should probably be explained
10588           fully in advanced_capsnego.xml or so.
10589
10590 2004-01-26  David Schleef  <ds@schleef.org>
10591
10592         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10593         * gst/gstpad.h: Add new function to allow element to (somewhat)
10594         specify non-fixed caps on a pad.
10595         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10596         that I added a few weeks ago.
10597
10598 2004-01-26  David Schleef  <ds@schleef.org>
10599
10600         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10601           making try_set_caps() work with non-fixed caps.
10602
10603 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10604
10605         * docs/pwg/advanced_types.xml:
10606         * docs/pwg/intro_basics.xml:
10607         * docs/pwg/intro_preface.xml:
10608         * docs/pwg/pwg.xml:
10609         * docs/pwg/titlepage.xml:
10610           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10611           in here (docs/random/mimetypes), and will from there on work on both
10612           updating outdated parts and adding missing parts.
10613           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10614
10615 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10616
10617         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10618           policy is set
10619
10620 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10621
10622         * gst/gstelement.h:
10623           remove gst_element_factory_get_version. It doesn't exist anymore.
10624         * gst/gstplugin.c:
10625         * gst/gstplugin.h:
10626           remove gst_plugin_set_name and change gst_plugin_get_longname to
10627           gst_plugin_get_description to match code.
10628         * gst/gsterror.h:
10629           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10630         * gst/gstpad.c: (gst_pad_try_set_caps):
10631           make it work with nonfixed caps.
10632           Note that even in the nonfixed case the link function of the pad
10633           that tries to set caps isn't called.
10634
10635 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10636
10637         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10638           fix bug where buffer was not assembled correctly
10639         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10640           silence by default
10641         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10642           only seek if there's no more buffers that could work without seeking
10643
10644 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10645
10646         * gst/gsttag.c: (_gst_tag_initialize):
10647         * gst/gsttag.h:
10648           Add application tag (for encoding/muxing app).
10649
10650 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10651
10652         * autogen.sh:
10653           make autopoint force, and libtoolize not copy
10654         * common/m4/as-docbook.m4:
10655           added docbook xml catalog setup check
10656         * common/m4/gst-doc.m4:
10657           use docbook check
10658
10659 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10660
10661         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10662         * gst/gsttag.h:
10663           add GstTagFlag
10664
10665 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10666
10667         * docs/gst/gstreamer-sections.txt:
10668         * docs/gst/tmpl/gst.sgml:
10669         * docs/gst/tmpl/gstbuffer.sgml:
10670         * docs/gst/tmpl/gstclock.sgml:
10671         * docs/gst/tmpl/gstelement.sgml:
10672         * docs/gst/tmpl/gstreamer-unused.sgml:
10673         * docs/gst/tmpl/gstxml.sgml:
10674           sync latest API changes to docs
10675
10676 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10677
10678         * gst/gstpluginfeature.c:
10679           fix doc snippet
10680         * tools/gst-inspect.c: (print_element_list):
10681           fix output of typefind
10682           add GPL header
10683         * tools/gst-launch.c:
10684           add GPL header
10685
10686 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10687
10688         * gst/elements/Makefile.am:
10689         * gst/elements/gstelements.c:
10690         * gst/elements/gsttypefindelement.c:
10691         * gst/elements/gsttypefindelement.h:
10692         * po/POTFILES.in:
10693         * po/fr.po:
10694         * po/nl.po:
10695           renamed gsttypefindelement to gsttypefind, conserving CVS history
10696
10697 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10698
10699         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10700         * gst/gsttag.h:
10701           add some tags used in ogg as well
10702           fix _ in replaygain tags
10703
10704 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10705
10706         * gst/gsterror.h:
10707           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10708
10709 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10710
10711         * gst/gstelement.c: (gst_element_error_full):
10712         * gst/gstelement.h:
10713           change _extended to _full
10714
10715 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10716
10717         reviewed by: <delete if not using a buddy>
10718
10719         * docs/gst/tmpl/gst.sgml:
10720         * docs/gst/tmpl/gstbuffer.sgml:
10721         * docs/gst/tmpl/gstclock.sgml:
10722         * docs/gst/tmpl/gstelement.sgml:
10723         * docs/gst/tmpl/gstreamer-unused.sgml:
10724         * docs/gst/tmpl/gstxml.sgml:
10725         * gst/gstelement.c: (gst_element_error_full):
10726         * gst/gstelement.h:
10727
10728 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10729
10730         * gst/gstelement.h: fix _gst_element_error_printf prototype
10731
10732 2004-01-20  David Schleef  <ds@schleef.org>
10733
10734         * gst/gststructure.c: (gst_structure_to_string):
10735         Convert function to use gst_value_serialize().
10736         * gst/gstvalue.c: (gst_value_serialize_list),
10737         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10738         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10739         (gst_value_serialize_int), (gst_value_serialize_double),
10740         (gst_string_wrap), (gst_value_serialize_string),
10741         (gst_value_serialize), (gst_value_deserialize):
10742         * gst/gstvalue.h:
10743         Add implementations for serialize.
10744
10745 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10746
10747         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10748         we want to keep that one in the future or change xvidenc.c to use 
10749         another error.
10750
10751 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10752
10753         * gst/gstelement.c: (_gst_element_error_printf):
10754         * gst/gstelement.h:
10755           privatise function
10756
10757 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10758
10759         * docs/random/error:
10760           doc explaining error system
10761         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10762           cleanup
10763
10764 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10765
10766         * gst/gst-i18n-app.h:
10767         * gst/gst-i18n-lib.h:
10768           remove inclusion of config.h
10769         * po/POTFILES.in:
10770         * po/nl.po:
10771           add gst/gstelement.c
10772
10773 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10774
10775         * po/nl.po: updated Dutch translation
10776
10777 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10778
10779         * gst/gsterror.c: (_gst_core_errors_init),
10780         (_gst_library_errors_init), (_gst_resource_errors_init),
10781         (_gst_stream_errors_init):
10782         remove ending punctuation dots
10783
10784 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10785
10786         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10787         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
10788         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10789         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10790         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10791         use GST_ERROR_SYSTEM
10792
10793 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10794
10795         * gst/gstelement.c: (gst_element_error_printf),
10796         (gst_element_error_extended):
10797         * gst/gstelement.h:
10798           add a helper printf function so we can have NULL values passed.
10799
10800 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10801
10802         * gst/gstelement.h:
10803           add G_STMT macros to gst_element_error, which isn't strictly
10804           necessary but people tell me to anyway.
10805
10806 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
10807
10808         * gst/Makefile.am:
10809         * gst/autoplug/gstspideridentity.c:
10810         (gst_spider_identity_sink_loop_type_finding):
10811         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10812         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10813         (gst_filesink_close_file), (gst_filesink_handle_event),
10814         (gst_filesink_chain):
10815         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
10816         (gst_filesrc_map_region), (gst_filesrc_get_read),
10817         (gst_filesrc_open_file):
10818         * gst/elements/gstidentity.c: (gst_identity_chain):
10819         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10820         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10821         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10822         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
10823         * gst/gst.h:
10824         * gst/gst_private.h:
10825         * gst/gstelement.c: (gst_element_class_init),
10826         (gst_element_default_error), (gst_element_error_func),
10827         (gst_element_error_extended):
10828         * gst/gstelement.h:
10829         * gst/gsterror.c: (_gst_core_errors_init),
10830         (_gst_library_errors_init), (_gst_resource_errors_init),
10831         (_gst_stream_errors_init), (gst_error_get_message):
10832         * gst/gsterror.h:
10833         * gst/gstinfo.c: (_gst_debug_init):
10834         * gst/gstmarshal.list:
10835         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10836         (gst_pad_recover_caps_error), (gst_pad_pull):
10837         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10838         * gst/schedulers/gstbasicscheduler.c:
10839         (gst_basic_scheduler_chainhandler_proxy),
10840         (gst_basic_scheduler_gethandler_proxy),
10841         (gst_basic_scheduler_cothreaded_chain):
10842         * po/POTFILES.in:
10843         * po/fr.po:
10844         * po/nl.po:
10845           change error signal
10846           add error categories
10847
10848 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
10849
10850         * gst/gsttag.c: (_gst_tag_initialize):
10851         * gst/gsttag.h:
10852         Add replaygain tag
10853
10854 2004-01-18  Colin Walters  <walters@verbum.org>
10855
10856         * examples/retag/retag.c: Call gst_init before processing
10857         program args.  Add g_assert to _link_many call.
10858
10859 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10860
10861         * gst/gstpad.c: (gst_pad_alloc_buffer):
10862           Return a newly allocated buffer when the pad has no peer.
10863
10864 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10865
10866         * gst/gstclock.c: (gst_clock_get_time):
10867           make it compile with gcc 2.95 again.
10868           Patch by Scott Wheeler
10869
10870 2004-01-15  David Schleef  <ds@schleef.org>
10871
10872         * gst/gstcaps.h:
10873         Added gst_caps_is_simple() macro.
10874         * testsuite/caps/caps.c: (test1):
10875         * testsuite/caps/intersect2.c: (main):
10876         * testsuite/caps/intersection.c: (main):
10877         Fixes to make 'make check' work again after removing
10878         gst_caps_is_chained().
10879
10880 2004-01-15  Leif Johnson <leif@ambient.2y.net>
10881
10882         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
10883         and additions to the MIDI document.
10884
10885 2004-01-15  David Schleef  <ds@schleef.org>
10886
10887         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
10888         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
10889         of GST_RPAD_, since we don't know if it's a real or ghost pad.
10890
10891 2004-01-15  David Schleef  <ds@schleef.org>
10892
10893         * gst/gstqueue.c:
10894         * gst/gstqueue.h:
10895         Fix the spelling of "treshold" and make min_threshold actually
10896         affect the queue.
10897
10898 2004-01-15  David Schleef  <ds@schleef.org>
10899
10900         * gst/gstcaps.c:
10901         Add lots of documentation.
10902         * gst/gstcaps.h:
10903         Deprecate a few functions.
10904         * gst/gstpad.c:
10905         Removed use of deprecated functions.
10906
10907 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10908
10909         * gst/gstpad.c: (gst_pad_is_linked):
10910         * gst/gstpad.h:
10911           implement gst_pad_is_linked
10912         * gst/gstelement.h:
10913           reserve space for initiate_state_change
10914
10915 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10916
10917         * gst/autoplug/gstspideridentity.c:
10918         (gst_spider_identity_sink_loop_type_finding):
10919           break infinite loop by just returning instead of looping
10920         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
10921           set event time difference correctly. Set it to 1 second instead
10922           of 100ms to be more tolerant
10923         * gst/gstelement.c: (gst_element_set_time):
10924           add debugging output
10925
10926 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10927
10928         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
10929           query if buffers are inside the pool, ignore events
10930
10931 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10932
10933         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
10934         (gst_clock_set_speed), (gst_clock_set_active),
10935         (gst_clock_is_active), (gst_clock_reset),
10936         (gst_clock_handle_discont):
10937         * gst/gstclock.h:
10938           deprecate old interface and disable functions that aren't in use
10939           anymore.
10940         * gst/gstelement.h:
10941         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
10942         (gst_element_set_time), (gst_element_adjust_time):
10943           add concept of "element time" and functions to get/set this time.
10944         * gst/gstelement.c: (gst_element_change_state):
10945           update element time correctly.
10946         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
10947           This is a debug message, not a g_critical.
10948         * gst/gstpad.c: (gst_pad_event_default):
10949           handle discontinuous events right with element time.
10950         * gst/gstscheduler.c: (gst_scheduler_state_transition):
10951           update to clocking fixes.
10952           set clocks on elements in READY=>PAUSED. The old behaviour caused
10953           a wrong element time on the first element that started playing.
10954         * gst/schedulers/gstbasicscheduler.c:
10955         (gst_basic_scheduler_class_init):
10956         * gst/schedulers/gstoptimalscheduler.c:
10957         (gst_opt_scheduler_class_init):
10958           remove code that just implements the default behaviour.
10959         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
10960           update to use new clocking functions
10961         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
10962         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
10963           update to test new element time.
10964         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
10965           use _get_allowed_caps instead of _get_caps. This catches filtered
10966           caps correctly.
10967         * testsuite/debug/commandline.c:
10968           update for new GST_DEBUG syntax.
10969         * testsuite/threads/Makefile.am:
10970           disable a test that only works sometimes.
10971
10972 2004-01-13  Julien MOUTTE <julien@moutte.net>
10973
10974         * po/LINGUAS: Adding fr.
10975         * po/fr.po: Adding french translation.
10976
10977 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10978
10979         * gst/parse/grammar.y:
10980         * po/POTFILES.in:
10981         * po/nl.po:
10982         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
10983           translate parsing error messages
10984
10985 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10986
10987         * po/POTFILES.in: adding gst-launch
10988         * po/nl.po: updated translation, all 99 strings translated
10989         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
10990         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
10991           fix strings for translation
10992
10993 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10994
10995         * gst/gst.c:
10996           - capitalize beginnings of popt options
10997           - fix strings for translation
10998           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
10999
11000 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11001
11002         * po/README: add some notes on how to update translations
11003
11004 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11005
11006         * ABOUT-NLS: removed, is autogenerated from autopoint
11007         * autogen.sh: add autopoint stuff
11008         * configure.ac: fix up gettext stuff
11009         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11010         * gst/elements/gsttypefindelement.c: add header include
11011         * gst/gettext.h: add header, copy from system-installed header
11012         * gst/gst-i18n-app.h: to be included by each app having translations
11013         * gst/gst-i18n-lib.h: to be included by each lib having translations
11014         * gst/gst.c: (init_pre): fix up gettext calls
11015         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11016         * po/LINGUAS: the new way to specify translations present
11017         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11018         * po/Makevars: the variables filled in for GStreamer
11019         * po/POTFILES.in: added new files with translations
11020         * po/de.po: has new strings
11021         * po/nl.po: readded, has new strings
11022
11023 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11024
11025         * gst/gsttag.c: fix some strings marked for translation
11026
11027 2004-01-13  Iain <iain@prettypeople.org>
11028
11029         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11030         group when we add an element to it, cos we unref it when we remove one
11031
11032 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11033
11034         * testsuite/debug/commandline.c: (debug_not_reached):
11035         * testsuite/debug/output.c: (check_message):
11036           fix testsuite
11037
11038 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11039
11040         * examples/cutter/.cvsignore:
11041         * examples/helloworld/.cvsignore:
11042         * examples/launch/.cvsignore:
11043         * examples/manual/.cvsignore:
11044         * examples/mixer/.cvsignore:
11045         * examples/pingpong/.cvsignore:
11046         * examples/plugins/.cvsignore:
11047         * examples/queue/.cvsignore:
11048         * examples/queue2/.cvsignore:
11049         * examples/queue3/.cvsignore:
11050         * examples/queue4/.cvsignore:
11051         * examples/retag/.cvsignore:
11052         * examples/thread/.cvsignore:
11053         * examples/typefind/.cvsignore:
11054         * examples/xml/.cvsignore:
11055         * gst/.cvsignore:
11056         * gst/autoplug/.cvsignore:
11057         * gst/elements/.cvsignore:
11058         * gst/indexers/.cvsignore:
11059         * gst/parse/.cvsignore:
11060         * gst/registries/.cvsignore:
11061         * gst/schedulers/.cvsignore:
11062         * libs/gst/bytestream/.cvsignore:
11063         * libs/gst/control/.cvsignore:
11064         * libs/gst/getbits/.cvsignore:
11065         * tests/.cvsignore:
11066         * tests/bufspeed/.cvsignore:
11067         * tests/instantiate/.cvsignore:
11068         * tests/memchunk/.cvsignore:
11069         * tests/muxing/.cvsignore:
11070         * tests/sched/.cvsignore:
11071         * tests/seeking/.cvsignore:
11072         * tests/threadstate/.cvsignore:
11073         * testsuite/.cvsignore:
11074         * testsuite/caps/.cvsignore:
11075         * testsuite/cleanup/.cvsignore:
11076         * testsuite/dynparams/.cvsignore:
11077         * testsuite/plugin/.cvsignore:
11078         * tools/.cvsignore:
11079           update - this is huge, because it includes *.bb, *.bbg and *.da files
11080           which are generated for gcov.
11081
11082 2004-01-11  David Schleef  <ds@schleef.org>
11083
11084         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11085         a function to parse integers in ways that strto[u]l() does not.
11086
11087 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11088
11089         * tools/gst-inspect.c: (print_caps):
11090           improve output of caps a bit
11091
11092 2004-01-11  David Schleef  <ds@schleef.org>
11093
11094         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11095         inherit correct flags (READONLY and DONTKEEP).
11096
11097 2004-01-11  David Schleef  <ds@schleef.org>
11098
11099         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11100         (gst_filesrc_map_region):
11101         * gst/gstbuffer.c: (_gst_buffer_initialize),
11102         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11103         (gst_buffer_new), (gst_buffer_create_sub),
11104         (gst_buffer_is_span_fast), (gst_buffer_span):
11105         * gst/gstbuffer.h:
11106         Change GstBuffer private structure element names. (all files)
11107         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11108         (gst_queue_link):
11109         * gst/gstqueue.h:
11110         Implement getcaps/pad_link functions that handle the case where
11111         there are data in the queue.
11112
11113 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11114
11115         * gst/elements/gstbufferstore.c:
11116           initialize debugging structure correctly
11117         * gst/elements/gsttee.c: (gst_tee_set_property):
11118           g_object_notify when property was changed
11119         * gst/elements/gsttypefindelement.c:
11120         (gst_type_find_element_change_state):
11121           clear caps correctly
11122
11123 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11124
11125         * gst/gstqueue.c: (gst_queue_init):
11126           Use better defaults for when a queue should block. This
11127           gets rid of jerky playback for quite a few files.
11128           It takes more memory.
11129
11130 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11131
11132         (gst_xml_registry_parse_padtemplate):
11133           make critical message slightly more useful
11134
11135 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11136
11137         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11138         (gst_debug_message_get), (gst_debug_log_default):
11139         * gst/gstinfo.h:
11140           Change gst_debug_log(_valist) to take a const format string.
11141           Change prototype of log function and functions using those to 
11142           take a GstDebugMessage instead of a string that requires using
11143           gst_debug_message_get.
11144
11145 2004-01-08  David Schleef  <ds@schleef.org>
11146
11147         * Makefile.am:
11148         * configure.ac:
11149         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11150         and -ftest-coverage, which allows gcov to show information about
11151         testsuite coverage.
11152
11153 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11154
11155         * gst/gstutils.h:
11156           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11157           GST_PARENT_CALL_WITH_DEFAULT
11158         * gst/elements/gstaggregator.c: 
11159         * gst/elements/gstbufferstore.c: 
11160         * gst/elements/gstfakesink.c: 
11161         * gst/elements/gstfakesrc.c: 
11162         * gst/elements/gstfdsink.c: 
11163         * gst/elements/gstfdsrc.c: 
11164         * gst/elements/gstfilesink.c: 
11165         * gst/elements/gstfilesrc.c: 
11166         * gst/elements/gstidentity.c: 
11167         * gst/elements/gstmd5sink.c: 
11168         * gst/elements/gstmultidisksrc.c:
11169         * gst/elements/gstpipefilter.c: 
11170         * gst/elements/gstshaper.c:
11171         * gst/elements/gststatistics.c:
11172         * gst/elements/gsttee.c:
11173         * gst/elements/gsttypefindelement.c:
11174           use them.
11175
11176 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11177
11178         * docs/gst/gstreamer-docs.sgml: remove props
11179         * docs/gst/gstreamer-sections.txt: remove props
11180         * docs/gst/tmpl/gst.sgml:
11181         * docs/gst/tmpl/gstbin.sgml:
11182         * docs/gst/tmpl/gstbuffer.sgml:
11183         * docs/gst/tmpl/gstcaps.sgml:
11184         * docs/gst/tmpl/gstclock.sgml:
11185         * docs/gst/tmpl/gstelement.sgml:
11186         * docs/gst/tmpl/gstindex.sgml:
11187         * docs/gst/tmpl/gstobject.sgml:
11188         * docs/gst/tmpl/gstpad.sgml:
11189         * docs/gst/tmpl/gstpadtemplate.sgml:
11190         * docs/gst/tmpl/gstreamer-unused.sgml:
11191         * docs/gst/tmpl/gstthread.sgml:
11192         * docs/gst/tmpl/gstxml.sgml:
11193           sync with code reorganization
11194
11195 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11196
11197         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11198         Make the 'Could not find compatible pad' message more informative.
11199
11200 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11201                                                                                 
11202         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11203           Fix for if we pass NULL as property to location.
11204         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11205         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11206           Fix for instantiate-test (see below).
11207         * gst/gststructure.c: (_gst_structure_parse_value):
11208           Fix compile error on gcc-2.96.
11209         * configure.ac:
11210         * tests/Makefile.am:
11211         * tests/instantiate/Makefile.am:
11212         * tests/instantiate/create.c: (create_all_elements), (main):
11213           Add a test that instantiates all elements. This makes it easy to
11214           track dead code for old API/design (like setting event functions
11215           on sink pads and so on).
11216
11217 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11218
11219         * gst/gstcaps.c: (gst_caps_append_structure):
11220           Move the poisoning to allow a NULL structure
11221         * gst/gstevent.c: (_gst_event_free):
11222           When freeing a navigation event, free the structure
11223           also
11224
11225 2004-01-04  David Schleef  <ds@schleef.org>
11226
11227         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11228         Remove usage of gst_pad_proxy_fixate.
11229         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11230         (gst_caps_split_one), (gst_caps_replace):
11231         Add poisoning code.
11232         * gst/gstmarshal.list:
11233         Add pointer__pointer for fixate signal
11234         * gst/gstpad.c: (gst_real_pad_class_init),
11235         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11236         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11237         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11238         Add poisoning code. Add fixate signal on RealPad. Change
11239         set_explicit_caps() to take const GstCaps, like try_set_caps().
11240         * gst/gstpad.h:
11241         * testsuite/caps/Makefile.am:
11242         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11243
11244 2004-01-03  David Schleef  <ds@schleef.org>
11245
11246         * gst/elements/gsttypefindelement.c:
11247         (gst_type_find_element_have_type), (gst_type_find_element_init):
11248         Use gst_pad_use_explicit_caps for src pad.
11249         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11250         before using it.
11251
11252 2004-01-03  David Schleef  <ds@schleef.org>
11253
11254         * gst/gstelement.c: (gst_element_link_pads_filtered),
11255         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11256         that linking was successful.
11257         * gst/gstpad.c: (gst_pad_link_free),
11258         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11259         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11260         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11261         GstPadLinkReturn correctly between functions, and don't fail
11262         when DELAYED is used (DELAYED is very important).  Better
11263         cleanup on unlinking and unnegotiation.  Should fix some spider
11264         bugs.
11265
11266 2004-01-02  David Schleef  <ds@schleef.org>
11267
11268         * gst/gstelement.c: (gst_element_class_init),
11269         (gst_element_base_class_init): ->padtemplates should be cleared
11270         in base_init, since we need to have a fresh list for every
11271         class.  (Alternately, we chould copy the list and share the
11272         actual pad templates (not the list), but that would require
11273         changing every plugin to move pad template registration from
11274         base_init to class_init.)
11275
11276 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11277
11278         * gst/gstelement.c: (gst_element_class_add_pad_template):
11279           Refuse registering a pad template if another pad template
11280           with the same name already exists (#114715).
11281
11282 2004-01-02  David Schleef  <ds@schleef.org>
11283
11284         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11285         (gst_caps_is_equal_fixed): Add new function.
11286         * gst/gstcaps.h: ditto.
11287         * gst/gstpad.c: (gst_real_pad_class_init),
11288         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11289         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11290         check new caps against existing caps -- if they're the same, return
11291         OK without renegotiating.  caps-nego-failed signal fixed so that
11292         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11293         to save an extra caps copy.  Don't complete negotiation if a pad
11294         link function returns DELAYED.
11295
11296 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11297
11298         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11299           Fix wrong g_return_if_fail
11300
11301 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11302
11303         * gst/gstbin.c: (gst_bin_class_init):
11304         Change the marshalling of element_added/element_removed
11305         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11306         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11307
11308 2004-01-01  David Schleef  <ds@schleef.org>
11309
11310         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11311         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11312         (gst_pad_use_explicit_caps):
11313         * gst/gstpad.h:
11314         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11315         to use an internal getcaps and link fuction so that negotiation
11316         always results in the explicitly set caps.
11317         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11318         are particularly useful for decoders.
11319
11320 2003-12-31  David Schleef  <ds@schleef.org>
11321
11322         * gst/elements/gstidentity.c: (gst_identity_class_init),
11323         (gst_identity_init), (gst_identity_chain),
11324         (gst_identity_set_property), (gst_identity_get_property):
11325         * gst/elements/gstidentity.h:
11326         * gst/gstqueue.c: (gst_queue_init):
11327           Negotiation fixes.
11328
11329 2003-12-31  David Schleef  <ds@schleef.org>
11330
11331         * gst/gstcaps.c: (gst_caps_intersect),
11332         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11333           Implement gst_caps_normalize().
11334         * testsuite/caps/normalisation.c: (main):
11335           Add an additional test
11336
11337 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11338
11339         * gst/gstqueue.c: (gst_queue_init):
11340           use gst_pad_proxy_getcaps()
11341
11342 2003-12-31  David Schleef  <ds@schleef.org>
11343
11344         * gst/elements/gstshaper.c: (gst_shaper_link):
11345         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11346         * gst/gstqueue.c: (gst_queue_link):
11347           Negotiation fixes.
11348
11349 2003-12-31  David Schleef  <ds@schleef.org>
11350
11351         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11352         * gst/gstpad.h: Add functions that are useful as default pad
11353         link and fixate functions for elements.
11354
11355 2003-12-30  David Schleef  <ds@schleef.org>
11356
11357         * gst/gstpad.c: (gst_pad_link_try):
11358           Fix segfault when attempting to return to old caps
11359
11360 2003-12-29  David Schleef  <ds@schleef.org>
11361
11362         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11363         (gst_caps_structure_simplify), (gst_caps_simplify):
11364         * gst/gstcaps.h:
11365           Add simplify function
11366         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11367         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11368         * gst/gstpad.h:
11369           Copy over srcnotify, sinknotify when calling old pad_link
11370           functions.  Add new is_negotiated() function.
11371         * gst/gststructure.c: (gst_structure_copy):
11372           Fix an incredibly stupid bug that should have been noticed
11373           weeks ago.  _copy() returned the argument, not the new copy.
11374
11375 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11376
11377         * gst/gstcaps.c: (gst_caps_append):
11378           add sanity checks
11379         * gst/gstcaps.h: (gst_caps_debug):
11380           remove, it doesn't exist anymore.
11381         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11382         (gst_element_threadsafe_properties_post_run):
11383           make debugging messages not clutter up THREAD debug category
11384         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11385         (gst_element_change_state):
11386           update to new caps API
11387         * gst/gstinterface.c: (gst_implements_interface_cast):
11388           don't put vital code in g_return_if_fail
11389         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11390         (gst_pad_link_filtered):
11391           add pst_pad_try_link and use it.
11392         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11393           implement correctly, deprecate first one.
11394         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11395           add and implement.
11396         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11397           implement.
11398         (gst_pad_get_negotiated_caps):
11399           add and implement. Make GST_PAD_CAPS call this function.
11400         (gst_pad_get_caps):
11401           remove unneeded check..
11402         (gst_pad_recover_caps_error):
11403           disable, always return FALSE.
11404         (gst_real_pad_dispose):
11405           don't free caps and appfilter anymore, they're unused.
11406         * gst/gstpad.h:
11407           Reflect changes mentioned above.
11408         * gst/gstsystemclock.c: (gst_system_clock_wait):
11409           Make 'clock is way behind' a debugging message.
11410         * gst/gstthread.c: (gst_thread_change_state):
11411           Fix debugging message
11412
11413 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11414
11415         * gst/gstinfo.h:
11416           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11417         * docs/gst/tmpl/gstreamer-unused.sgml:
11418           removed all traces of cvs conflicts
11419
11420 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11421
11422         * configure.ac:
11423         * gst/schedulers/cothreads_compat.h:
11424         * libs/Makefile.am:
11425           remove last instances of wingo cothread usage
11426
11427 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11428
11429         * gst/gstplugin.c:
11430         * gst/gstversion.h.in:
11431         * gst/parse/grammar.y:
11432           change comment block from /** to /* when not gtk-doc comments
11433
11434 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11435
11436         * gst/gst.c: whitespace and doc style fixes
11437
11438 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11439
11440         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11441
11442 2003-12-24  Colin Walters  <walters@verbum.org>
11443
11444         * gst/elements/gsttypefindelement.c:
11445           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11446           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11447           Don't double-free caps.
11448
11449 2003-12-23  David Schleef  <ds@schleef.org>
11450
11451         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11452           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11453           Many little fixes and additions of debug statements to
11454           get rhythmbox working.
11455
11456 2003-12-23  Colin Walters  <walters@verbum.org>
11457
11458         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11459         Use GST_PAD_LINK_SUCCESSFUL.
11460
11461 2003-12-23  David Schleef  <ds@schleef.org>
11462
11463         * gst/elements/gstaggregator.c:
11464         * gst/elements/gsttee.c:
11465           Use gst_pad_proxy_getcaps().
11466         * gst/gstpad.c:
11467         * gst/gstpad.h:
11468           Add gst_pad_proxy_getcaps(), which filter elements can use
11469           as a generic getcaps implementation.
11470           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11471           was advertised.
11472
11473 2003-12-23  David Schleef  <ds@schleef.org>
11474
11475         * gst/gstpad.c:
11476           Rearrange/rewrite much of the pad negotiation code, since it
11477           resembled pasta.  This actually changes the way some
11478           negotiation works, since the previous code was inconsistent
11479           depending on how it was invoked.  Add (internal) structure
11480           GstPadLink, which is used to hold some information (more in
11481           the future) about the link between two pads.  Fixes a number
11482           of bugs, including random lossage of filter caps when the
11483           initial negotiation is delayed.  A few functions are still
11484           unimplemented.
11485         * gst/gstpad.h:
11486           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11487           these when testing GstPadLinkReturn values instead of comparing
11488           directly.
11489
11490 2003-12-23  David Schleef  <ds@schleef.org>
11491
11492         * gst/gstvalue.c: 
11493         * gst/gstvalue.h:
11494           Rearrange lots of code.  Change registration of compare function
11495           into registration of compare/serialize/deserialize functions.
11496           Doesn't include implementation of gst_value_[de]serialize(),
11497           but that should be easy.
11498
11499 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11500
11501         * docs/gst/gstreamer-sections.txt:
11502         * docs/gst/tmpl/gstprops.sgml: removed
11503         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11504           David removed props and caps code, so let's remove their docs as well.
11505           Removed all no longer existing symbols from gstreamer-sections.txt
11506           
11507 2003-12-22  Colin Walters  <walters@verbum.org>
11508
11509         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11510           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11511           of tags directly.
11512
11513 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11514
11515         * gst/elements/gstelements.c:
11516           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11517         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11518           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11519           gst_caps (peer).
11520
11521 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11522
11523         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11524         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11525         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11526         (gst_spider_identity_sink_loop_type_finding):
11527         * gst/autoplug/gstspideridentity.h:
11528           Fix autoplugging in spider element, so it works with new caps.
11529           This was mainly caused by identifying empty caps incorrectly.
11530
11531 2003-12-22  David Schleef  <ds@schleef.org>
11532
11533         * gststructure.c, gstvalue.c, gstvalue.h: Add
11534           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11535           using g_value_copy()
11536
11537 2003-12-21  David Schleef  <ds@schleef.org>
11538
11539         * many, many files: Merge CAPS branch.  This includes:
11540           - implemention of GstValue and several GstValue types
11541           - implemention of GstStructure
11542           - entire rewrite of GstCaps
11543           - removal of GstProps
11544           - many changes to GstPad to compensate for new caps paradigm
11545           - removal of GstBufferpool
11546         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11547         gstvalue.h, gst/gstcaps[2]*.[ch]:
11548           - rename gstcaps2.[ch] to gstcaps.[ch]
11549
11550 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11551
11552         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11553         (gst_queue_chain), (gst_queue_handle_src_event):
11554           implement timeout for sending events. Workaround for if the
11555           pipeline on this queue is not passing any data.
11556
11557 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11558                                                                                 
11559         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11560         * moved CVS to freedesktop.org
11561