docs/gst/: Docs fixes.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-28  Wim Taymans  <wim@fluendo.com>
2
3         * docs/gst/gstreamer.types:
4         * docs/gst/tmpl/gstbasesrc.sgml:
5         * docs/gst/tmpl/gstpad.sgml:
6         Docs fixes.
7
8 2005-06-28  Wim Taymans  <wim@fluendo.com>
9
10         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
11         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
12         (gst_proxy_pad_do_fixatecaps):
13         Correctly proxy the check_pull_range function.
14
15 2005-06-28  Andy Wingo  <wingo@pobox.com>
16
17         * tests/network-clock.scm: Removed need for slib.
18         
19 2005-06-28  Wim Taymans  <wim@fluendo.com>
20
21         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
22         (gst_basesink_preroll_queue_flush):
23         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
24         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
25         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
26         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
27         (gst_proxy_pad_set_property):
28         * gst/gstpad.c:
29         * gst/gstpad.h:
30         * gst/gstqueue.c: (gst_queue_init):
31         The deprecated pad loop function is removed now.
32
33 2005-06-28  Andy Wingo  <wingo@pobox.com>
34
35         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
36         New parameters, simulate network packet loss.
37
38         * tests/network-clock-utils.scm: Initialize the RNG.
39
40 2005-06-28  Wim Taymans  <wim@fluendo.com>
41
42         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
43         (gst_basesink_event), (gst_basesink_deactivate):
44         Flushing the preroll queue always needs to unlock the waiters.
45
46 2005-06-28  Edward Hervey  <edward@fluendo.com>
47
48         * gst/gstpipeline.c: (gst_pipeline_send_event): 
49         Wheen a seek was successful on a pipeline, set the stream_time to the
50         seek offset in order to have a synchronized stream_time.
51
52 2005-06-28  Wim Taymans  <wim@fluendo.com>
53
54         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
55         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
56         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
57         (gst_proxy_pad_do_fixatecaps):
58         Call wrapper function instead of just calling the function
59         pointers. This takes care of any locking and whatmore.
60
61 2005-06-28  Wim Taymans  <wim@fluendo.com>
62
63         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
64         (gst_pad_pull_range):
65         * gst/gstpad.h:
66         CONNECTED -> LINKED.
67
68 2005-06-28  Andy Wingo  <wingo@pobox.com>
69
70         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
71         source-munging commit!!!
72
73         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
74         (gst_object_sink): Take gpointer arguments, not GstObject --
75         avoids casts. Like GLib.
76
77         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
78         activate.
79
80 2005-06-27  Andy Wingo  <wingo@pobox.com>
81
82         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
83         remaining buffer.
84
85         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
86         returns a sorted copy of the trace list.
87         (gst_alloc_trace_print_live): New API, only prints traces with
88         live objects. Sort the list.
89         (gst_alloc_trace_print_all): Sort the list.
90         (gst_alloc_trace_print): Align columns.
91
92         * gst/elements/gstttypefindelement.c:
93         * gst/elements/gsttee.c:
94         * gst/base/gstbasesrc.c:
95         * gst/base/gstbasesink.c:
96         * gst/base/gstbasetransform.c:
97         * gst/gstqueue.c: Adapt for pad activation changes.
98
99         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
100         sched.
101         (gst_pipeline_dispose): Drop ref on sched.
102
103         * gst/gstpad.c (gst_pad_init): Set the default activate func.
104         (gst_pad_activate_default): Push mode by default.
105         (pre_activate_switch, post_activate_switch): New stubs, things to
106         do before and after switching activation modes on pads.
107         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
108         the pad's activate function to choose which mode to activate.
109         Shortcut on deactivation and call the right function directly.
110         (gst_pad_activate_pull): New API, (de)activates a pad in pull
111         mode.
112         (gst_pad_activate_push): New API, same for push mode.
113         (gst_pad_set_activate_function) 
114         (gst_pad_set_activatepull_function) 
115         (gst_pad_set_activatepush_function): Setters for new API.
116
117         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
118         Trace all miniobjects.
119         (gst_mini_object_make_writable): Unref the arg if we copy, like
120         gst_caps_make_writable.
121
122         * gst/gstmessage.c (_gst_message_initialize): No trace init.
123
124         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
125         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
126         Adapt for new pad API.
127
128         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
129
130         * gst/gstelement.h:
131         * gst/gstelement.c (gst_element_iterate_src_pads) 
132         (gst_element_iterate_sink_pads): New API functions.
133         
134         * gst/gstelement.c (iterator_fold_with_resync): New utility,
135         should fold into gstiterator.c in some form.
136         (gst_element_pads_activate): Simplified via use of fold and
137         delegation of decisions to gstpad->activate.
138
139         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
140         help in debugging.
141
142         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
143         class once in init, like gstmessage. Didn't run into this issue
144         but it seems correct. Don't initialize a trace, gstminiobject does
145         that.
146
147         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
148         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
149         to the bus.
150         (assert_live_count): New util function, uses alloc traces to check
151         cleanup.
152
153         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
154         To be modified when unlink drops the internal pad.
155
156 2005-06-27  Wim Taymans  <wim@fluendo.com>
157
158         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
159         (gst_bin_change_state):
160         Cleanup the get_state() function a little, make sure it
161         iterates the same set of elements.
162         Added stub iterate_state_order().
163
164 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
165
166         * docs/gst/gstreamer-docs.sgml:
167         * docs/gst/gstreamer-sections.txt:
168         * docs/gst/gstreamer.types:
169         * docs/gst/tmpl/gstbasesink.sgml:
170         * docs/gst/tmpl/gstbasesrc.sgml:
171         * docs/gst/tmpl/gstbasetransform.sgml:
172         * docs/gst/tmpl/gstelement.sgml:
173         * docs/gst/tmpl/gstiterator.sgml:
174         * gst/base/gstbasesrc.c:
175         * gst/base/gstbasesrc.h:
176         * gst/base/gstbasetransform.h:
177         * gst/gstelement.c:
178         * gst/gstiterator.h:
179           adding basetransform and iterator docs
180
181 2005-06-27  Andy Wingo  <wingo@pobox.com>
182
183         * docs/design/part-activation.txt: Notes on how activation should
184         work -- not quite implemented yet.
185
186 2005-06-25  Wim Taymans  <wim@fluendo.com>
187
188         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
189         At least get the chain function correct, needs more
190         fixing.
191
192 2005-06-25  Wim Taymans  <wim@fluendo.com>
193
194         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
195         (gst_basesink_handle_object), (gst_basesink_event),
196         (gst_basesink_do_sync), (gst_basesink_handle_event),
197         (gst_basesink_change_state):
198         * gst/gsttask.h:
199         Right, two problems here: ghostpads don't take locks and
200         glib _rec_mutex_lock_full() with depth==0 still locks.
201         Catch illegal locking and g_warn them.
202
203 2005-06-25  Wim Taymans  <wim@fluendo.com>
204
205         * check/states/sinks.c: (START_TEST), (gst_object_suite):
206         Have to check for completion now...
207
208 2005-06-25  Wim Taymans  <wim@fluendo.com>
209
210         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
211         (gst_basesink_handle_object), (gst_basesink_event),
212         (gst_basesink_do_sync), (gst_basesink_handle_event),
213         (gst_basesink_change_state):
214         * gst/gstpad.h:
215         Unlock STREAM_LOCK whatever the recursion was.
216
217 2005-06-25  Wim Taymans  <wim@fluendo.com>
218
219         * gst/base/gstbasesink.c: (gst_basesink_set_property),
220         (gst_basesink_preroll_queue_empty),
221         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
222         (gst_basesink_event), (gst_basesink_do_sync),
223         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
224         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
225         (gst_basesink_change_state):
226         Reworked the base sink, handle event and buffer serialisation
227         correctly and removed possible deadlock.
228         Handle EOS correctly.
229
230 2005-06-25  Wim Taymans  <wim@fluendo.com>
231
232         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
233         (gst_pipeline_change_state):
234         * tools/gst-launch.c: (check_intr), (event_loop), (main):
235         Allow elements to post EOS in the state change function.
236         Fix up -launch, make it exit the poll loop when the
237         pipeline actually changed state.
238         Fix up warning parsing in -launch.
239
240 2005-06-25  Wim Taymans  <wim@fluendo.com>
241
242         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
243         (gst_tee_sink_activate):
244         Core takes STREAM_LOCK for us now.
245
246 2005-06-25  Wim Taymans  <wim@fluendo.com>
247
248         * gst/gstelement.c: (gst_element_get_state_func),
249         (gst_element_set_state):
250         * gst/gstelement.h:
251         * gst/gstmessage.c: (gst_message_parse_error),
252         (gst_message_parse_warning):
253         Keep track of current target state while performing a state
254         change so that subclasses can do something interesting.
255         Fix parsing of warning/error messages when GError is NULL.
256
257 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
258
259         * docs/gst/Makefile.am:
260         * docs/gst/gstreamer-docs.sgml:
261         * docs/gst/gstreamer-sections.txt:
262         * docs/gst/gstreamer.types:
263         * docs/gst/tmpl/gstbasesink.sgml:
264         * docs/gst/tmpl/gstbasesrc.sgml:
265         * docs/gst/tmpl/gstbin.sgml:
266         * docs/gst/tmpl/gstcompat.sgml:
267         * docs/gst/tmpl/gstfakesink.sgml:
268         * docs/gst/tmpl/gstfakesrc.sgml:
269         * docs/gst/tmpl/gstfilesink.sgml:
270         * docs/gst/tmpl/gstfilesrc.sgml:
271         * docs/gst/tmpl/gstindex.sgml:
272         * docs/manual/appendix-quotes.xml:
273         * gst/base/gstbasesrc.h:
274         * gst/elements/gstfakesrc.h:
275         * gst/gstmessage.h:
276           start pulling in base classes and elements in our docs
277
278 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
279
280         * docs/gst/Makefile.am:
281         * docs/libs/Makefile.am:
282           fixed make distcheck with gtk-doc 1.3
283
284 2005-06-23  Wim Taymans  <wim@fluendo.com>
285
286         * gst/gstelement.c: (gst_element_get_state_func),
287         (gst_element_set_state), (gst_element_change_state):
288         When the state did not change, also report NO_PREROLL
289         when it matters.
290
291 2005-06-23  Wim Taymans  <wim@fluendo.com>
292
293         * gst/gstpad.c: (gst_pad_event_default):
294         * gst/gstqueue.c: (gst_queue_loop):
295         No unsafe task pausing please.
296
297 2005-06-23  Wim Taymans  <wim@fluendo.com>
298
299         * gst/schedulers/threadscheduler.c:
300         (gst_thread_scheduler_task_start),
301         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
302         Ref the task before pushing it on the threadpool. This
303         makes sure that we have a ref when the threadfunction is
304         actually called.
305
306 2005-06-23  Andy Wingo  <wingo@pobox.com>
307
308         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
309         offset is greater than the file's size.
310
311         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
312         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
313         * gst/gstobject.c (gst_object_class_init): Make the class lock
314         recursive. Wim won't let me drop deep_notify. Decodebin works
315         again, whoopdy doo.
316
317         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
318         internal pad, and hacks accordingly. Doesn't do it on the target
319         pad because we change its caps. Probably catches all cases of
320         interest tho.
321         (gst_ghost_pad_set_property): Connect to notify::caps as
322         appropritate.
323
324         * tests/network-clock.scm (plot-simulation): Pipe data to the
325         elite python skript.
326
327         * tests/network-clock-utils.scm (define-parameter): New macro,
328         defines a parameter that can be set via the command line.
329         (set-parameter!, parse-parameter-arguments): Command line args
330         parser.
331
332         * tests/plot-data: Simple matplotlib-based plotter, takes input on
333         stdin.
334
335 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
336
337         * gst/elements/gsttypefindelement.c:
338         (gst_type_find_element_handle_event):
339           Don't restart typefinding on a discont.
340         * gst/gstelement.c: (gst_element_set_state):
341           Debug spelling fix.
342         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
343           Allow changing mode of an active pad.
344           Debug output fixes.
345         * gst/registries/gstlibxmlregistry.c: (load_feature):
346           Don't cast a static pad template to a normal pad template.
347
348 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
349
350         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
351         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
352           remove gst_strtoll completely, since it didn't actually do
353           anything more than what g_ascii_strtoull already does.
354           check for range errors when deserializing
355           do a cast for the unsigned cases; but further fixing needs
356           a decision on what the interpretation of "(int)" and
357           deserialization should be for values that fall outside the
358           type's boundaries (ie, refuse, or interpret as casting)
359
360 2005-06-23  Wim Taymans  <wim@fluendo.com>
361
362         * check/Makefile.am:
363         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
364         * docs/design/part-live-source.txt:
365         * docs/design/part-states.txt:
366         * gst/base/gstbasesrc.c: (gst_basesrc_init),
367         (gst_basesrc_set_live), (gst_basesrc_is_live),
368         (gst_basesrc_get_range), (gst_basesrc_activate),
369         (gst_basesrc_change_state):
370         * gst/base/gstbasesrc.h:
371         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
372         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
373         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
374         * gst/gstelement.c: (gst_element_get_state_func),
375         (gst_element_set_state):
376         * gst/gstelement.h:
377         * gst/gsttypes.h:
378         * tools/gst-launch.c: (event_loop), (main):
379         Added support for live sources and other elements that
380         cannot do preroll.
381         Updated design docs, added live-source design doc.
382         Implemented live source functionality in basesrc
383         Fix error condition in _bin_get_state()
384         Implement live source handling in -launch.
385         Added check for live sources.
386         Fixed case in GstBin where elements were changed state
387         multiple times.
388
389
390 2005-06-23  Andy Wingo  <wingo@pobox.com>
391
392         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
393         borken refcounting.
394
395         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
396         gst_caps_replace takes care of this for us.
397
398         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
399         gst_pad_set_caps on the target, not just its setcaps() function.
400
401         * tests/network-clock.scm: 
402         * tests/network-clock-utils.scm: A network clock simulator.
403         Something of an algorithmic testbed before doing something in C.
404
405 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
406
407         * check/Makefile.am:
408         * check/gst/capslist.h:
409           copy over from 0.8, and add two with bitmasks specified with
410           (int) 0xFF...
411         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
412           add test to parse everything from capslist.h
413         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
414         (main):
415           add test for structure deserialization
416         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
417           add tests for deserialization of strings to int types
418         * gst/gststructure.c: (gst_structure_nth_field_name):
419         * gst/gststructure.h:
420           add a way to get the name of a field referenced by index
421         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
422           instead of checking if the resulting long long lies between
423           min and max, we check if the long long would fit into
424           a number of bytes for the final type.
425           This fixes cases where a string represents 2^32 - 1, which
426           when cast to int would be the (valid) -1, but is bigger than
427           G_MAXINT
428
429 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
430
431         * gst/parse/grammar.y:
432           add a log line for type deserialization
433
434 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
435
436         * check/gst/gstvalue.c: (START_TEST):
437         * gst/gstvalue.c: (gst_value_deserialize):
438           return long long, not int, so gint64 deserialization actually
439           works.  Is there any flag that makes the compiler check this ?
440           Fixes #308559
441
442 2005-06-22  Wim Taymans  <wim@fluendo.com>
443
444         * gst/gstbuffer.h:
445         Added convenience macros for setting buffers in GValue.
446
447 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
448
449         * check/gst/.cvsignore:
450         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
451           add a test deserializing int64, and comment part out because
452           it fails, yay !
453
454 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
455
456         * check/Makefile.am:
457         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
458         * testsuite/Makefile.am:
459         * testsuite/caps/Makefile.am:
460         * testsuite/caps/value_serialize.c:
461         * testsuite/test_gst_init.c:
462           move a value_serialize test over
463
464 2005-06-20  Wim Taymans  <wim@fluendo.com>
465
466         * gst/gstpad.c:
467         Small doc updates.
468         
469         * gst/gstvalue.c: (gst_value_compare_buffer),
470         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
471         (gst_value_compare_flags), (gst_value_serialize_flags),
472         (gst_value_deserialize_flags), (_gst_value_initialize):
473         Fix serialisation of buffers, they are not boxed types anymore
474
475 2005-06-20  Wim Taymans  <wim@fluendo.com>
476
477         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
478         Testcase to show error in buffer-on-caps serialisation.
479
480 2005-06-20  Andy Wingo  <wingo@pobox.com>
481
482         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
483         will be adding to later.
484
485         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
486         if its socks fill with rocks.
487         (gst_system_clock_obtain): Set the name on object construction.
488         Avoid double-checked locking.
489
490 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
491
492         * gst/gsturi.c: (gst_element_make_from_uri):
493           Fix potential endless loop.
494
495 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
496
497         * check/Makefile.am:
498           add gsttag
499         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
500         (main):
501           move over from testsuite dir and clean up
502         * configure.ac:
503         * gst/gsttag.c:
504         * testsuite/Makefile.am:
505         * testsuite/tags/.cvsignore:
506         * testsuite/tags/Makefile.am:
507         * testsuite/tags/merge.c:
508           remove testsuite/tags
509
510 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
511
512         * docs/gst/gstreamer-sections.txt:
513         * docs/gst/tmpl/gstenumtypes.sgml:
514         * win32/gstenumtypes.c:
515           clean up documentation build a little
516
517 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
518
519         * check/gstcheck.h:
520           add macros for checking refcounts on objects and caps
521         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
522           add some more unit tests
523         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
524         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
525           fix leaked refcounts (I hope :)) so unittest works
526         * gst/gstpad.h:
527           whitespace removal
528
529 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
530
531         * configure.ac: back to HEAD
532
533 === release 0.9.1 ===
534
535 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
536
537         * NEWS:
538         * RELEASE:
539           updated
540
541 2005-06-17  Andy Wingo  <wingo@pobox.com>
542
543         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
544         assert; it's always possible that the pad gets deactivated in
545         between the checks in gstpad.c and the implementation. Rely on
546         finish_preroll() to return a FLUSHING or similar instead of on the
547         assert.
548         
549         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
550         clock and post an EOS message if we come out of finish_preroll in
551         the playing state.
552
553 2005-06-16  David Schleef  <ds@schleef.org>
554
555         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
556         (gst_capsfilter_set_property): Allow NULL as possible value
557         for filter_caps property, indicating GST_CAPS_ANY.
558
559 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
560
561         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
562           fix debug output
563         * gst/schedulers/Makefile.am:
564           use libgst prefix
565         * gstreamer.spec.in:
566           fix spec for it
567
568 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
569
570         * gstreamer.spec.in:
571           clean up
572
573 2005-06-08  Andy Wingo  <wingo@pobox.com>
574
575         * gst/gstutils.c: RPAD fixes all around.
576         (gst_element_link_pads): Refcounting fixes.
577
578         * tools/gst-inspect.c:
579         * tools/gst-xmlinspect.c:
580         * parse/grammar.y:
581         * gst/base/gsttypefindhelper.c:
582         * gst/base/gstbasesink.c:
583         * gst/gstqueue.c: RPAD fixes.
584
585         * gst/gstghostpad.h:
586         * gst/gstghostpad.c: New ghost pad implementation as full proxy
587         pads. The tricky thing is they provide both source and sink
588         interfaces, since they proxy the internal pad for the external
589         pad, and vice versa. Implement with lower-level ProxyPad objects,
590         with the interior proxy pad as a child of the exterior ghost pad.
591         Should write a doc on this.
592         
593         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
594         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
595         gst_object API.
596         
597         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
598         pads are real pads. No ghost pads in this file. Not documenting
599         the myriad s/RPAD/PAD/ and REALIZE fixes.
600         (gst_pad_class_init): Add properties for "direction" and
601         "template". Both are construct-only, so they can't change during
602         the life of the pad. Fixes properly deriving from GstPad.
603         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
604         derived objects, just set properties when creating the objects via
605         g_object_new.
606         (gst_pad_get_parent): Implement as a function, return NULL if the
607         parent is not an element.
608         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
609         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
610         
611         * gst/gstobject.c (gst_object_class_init): Make name a construct
612         property. Don't set it in the object init.
613
614         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
615         with UNKNOWN direction.
616         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
617         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
618         (gst_element_remove_pad): Remove ghost-pad special cases.
619         (gst_element_pads_activate): Remove rpad cruft.
620
621         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
622         catch the pad's-parent-not-an-element case.
623
624         * gst/gst.h: Include gstghostpad.h.
625
626         * gst/gst.c (init_post): No more real, ghost pads.
627
628         * gst/Makefile.am: Add gstghostpad.[ch].
629
630         * check/Makefile.am:
631         * check/gst/gstbin.c:
632         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
633         into a bin creates ghost pads, and that the refcounts are right.
634         Partly moved from gstbin.c.
635
636 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
637
638         * check/gst-libs/.cvsignore:
639         * check/gst/.cvsignore:
640         * check/pipelines/.cvsignore:
641           ignore more
642         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
643         (START_TEST), (cleanup_suite), (main):
644           add some tests related to cleanup after running pipelines
645
646 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
647
648         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
649           add a testsuite for GstBuffer
650
651 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
652
653         * gst/gstminiobject.h:
654           add defines for accessing the refcount
655
656 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
657
658         * Makefile.am: added support for html unit test coverage reports
659
660 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
661
662         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
663           Free existing caps if the capsfilter changes. Add a FIXME about
664           setting those caps on the pads.
665
666         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
667           Before adding a ghost pad to a parent bin, check that there isn't
668           already one for the element on the bin. Prevents infinite recursion
669           when using decodebin in parse pipelines. Andy says he'll rewrite the
670           way this works anyway, so ignore the hack.
671
672 2005-06-02  Andy Wingo  <wingo@pobox.com>
673
674         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
675         file size, pass it on to the type find helper.
676
677         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
678         segment_start and segment_end properly according to the seek
679         method. Segment_end is still a bit flaky because offset can be
680         negative for CUR and END cases, but it takes -1 as an "unset"
681         value.
682
683 2005-06-02  Wim Taymans  <wim@fluendo.com>
684
685         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
686         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
687         (gst_basesink_activate):
688         * gst/base/gstbasesink.h:
689         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
690         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
691         (gst_pad_query), (gst_pad_start_task):
692         * gst/gstpad.h:
693         * gst/gstqueue.c: (gst_queue_bufferalloc),
694         (gst_queue_handle_sink_event), (gst_queue_chain):
695         Bufferalloc: return GstFlowReturn to more accuratly report
696         why allocation failed.
697
698 2005-06-02  Wim Taymans  <wim@fluendo.com>
699
700         * gst/gstpipeline.c: (gst_pipeline_send_event):
701         Take snapshot of state without blocking.
702
703 2005-06-02  Wim Taymans  <wim@fluendo.com>
704
705         * docs/design/part-TODO.txt:
706         * docs/design/part-caps.txt:
707         * docs/design/part-clocks.txt:
708         * docs/design/part-negotiation.txt:
709         * docs/design/part-preroll.txt:
710         Small doc updates 
711
712 2005-05-30  Wim Taymans  <wim@fluendo.com>
713
714         * gst/elements/gstidentity.c: (gst_identity_event),
715         (gst_identity_transform), (gst_identity_get_property):
716         Protect last_message property as it is accessed from
717         multiple threads.
718
719 2005-05-30  Wim Taymans  <wim@fluendo.com>
720
721         * gst/gstelement.c: (gst_element_init),
722         (gst_element_pads_activate), (gst_element_change_state):
723         Slicker pad activation code.
724
725 2005-05-30  Wim Taymans  <wim@fluendo.com>
726
727         * gst/Makefile.am:
728         * gst/gstelement.h:
729         * gst/gstelementfactory.h:
730         * gst/gsttypes.h:
731         Move elementfactory methods to separate .h file.
732
733 2005-05-30  Wim Taymans  <wim@fluendo.com>
734
735         * docs/design/part-overview.txt:
736         * gst/gstsystemclock.h:
737         Small typo fixes, doc updates.
738
739 2005-05-30  Wim Taymans  <wim@fluendo.com>
740
741         * gst/gst.c: (gst_init_get_popt_table), (init_post),
742         (init_popt_callback):
743         Remove cpu-opt flag.
744
745 2005-05-30  Wim Taymans  <wim@fluendo.com>
746
747         * gst/gstbuffer.c: (gst_subbuffer_finalize),
748         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
749         * gst/gstbuffer.h:
750         Avoid typechecking in places where not needed.
751         Added accessor for malloc_data.
752
753 2005-05-30  Wim Taymans  <wim@fluendo.com>
754
755         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
756         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
757         (gst_pad_configure_sink), (gst_pad_configure_src),
758         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
759         (gst_pad_start_task):
760         Propagate errors from _set_caps() in configure_src/sink
761         functions instead of returning TRUE.
762         FLUSH events can travel up and downstream
763
764
765 2005-05-30  Wim Taymans  <wim@fluendo.com>
766
767         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
768         (gst_basesink_activate):
769         Handle EOS in preroll.
770
771 2005-05-30  Wim Taymans  <wim@fluendo.com>
772
773         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
774         (gst_queue_loop), (gst_queue_handle_src_event):
775         Remove old pieces of code
776         Flushing the queue in an upstream event is a very bad idea.
777
778 2005-05-26  Andy Wingo  <wingo@pobox.com>
779
780         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
781         gst_value_set_mini_object so as to add a ref on the object (which
782         will be removed when the value is unset).
783
784         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
785         arg type in ::handoff.
786
787         * gst/gstelement.c (gst_element_change_state): Also deactivate
788         pads in READY->NULL, just in case the element didn't make it to
789         PAUSED. Wingo tested, Wim approved.
790
791 2005-05-26  Wim Taymans  <wim@fluendo.com>
792
793         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
794         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
795         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
796         A flushing pad cannot be used to alloc_buffer from.
797
798 2005-05-26  Wim Taymans  <wim@fluendo.com>
799
800         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
801         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
802         (gst_bus_source_dispatch), (gst_bus_source_finalize),
803         (gst_bus_create_watch), (gst_bus_add_watch_full):
804         * gst/gstbus.h:
805         Implement a real GSource and use g_main_context_wakeup() to
806         signal new messages instead of the socketpair.
807
808 2005-05-25  Wim Taymans  <wim@fluendo.com>
809
810         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
811         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
812         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
813         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
814         (gst_pad_send_event), (gst_pad_start_task):
815         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
816         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
817         (gst_queue_sink_activate), (gst_queue_src_activate),
818         (gst_queue_change_state):
819         * gst/gstqueue.h:
820         Fix state changes for non sinks. We now change sinks, then elements
821         with unconnected srcpads, then the rest.
822         More efficient queue unlocking in flush and state changes.
823         Set the pad activate mode even if it does not have an activate
824         function.
825
826 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
827
828         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
829           Don't go in pull mode for non-seekable sources.
830         * gst/elements/gsttypefindelement.h:
831         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
832         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
833         (free_entry), (stop_typefinding),
834         (gst_type_find_element_handle_event), (find_peek),
835         (gst_type_find_element_chain), (do_pull_typefind),
836         (gst_type_find_element_change_state):
837           Allow typefinding (w/o seeking) in push-mode, simplified version
838           of what was in 0.8.
839         * gst/gstutils.c: (gst_buffer_join):
840         * gst/gstutils.h:
841           gst_buffer_join() from 0.8.
842
843 2005-05-25  Wim Taymans  <wim@fluendo.com>
844
845         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
846         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
847         (gst_pad_send_event), (gst_pad_start_task):
848         Disable attempt at mode switching until it is figured out.
849
850 2005-05-25  Wim Taymans  <wim@fluendo.com>
851
852         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
853         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
854         (gst_basesink_finish_preroll), (gst_basesink_chain),
855         (gst_basesink_loop), (gst_basesink_activate),
856         (gst_basesink_change_state):
857         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
858         (gst_basesrc_get_range), (gst_basesrc_loop),
859         (gst_basesrc_activate):
860         * gst/elements/gsttee.c: (gst_tee_sink_activate):
861         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
862         (gst_real_pad_init), (gst_real_pad_set_property),
863         (gst_real_pad_get_property), (gst_pad_set_active),
864         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
865         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
866         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
867         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
868         (gst_pad_event_default_dispatch), (gst_pad_event_default),
869         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
870         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
871         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
872         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
873         (gst_pad_stop_task):
874         * gst/gstpad.h:
875         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
876         (gst_queue_loop), (gst_queue_src_activate):
877         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
878         (gst_task_get_state):
879         * gst/gsttask.h:
880         * gst/schedulers/threadscheduler.c:
881         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
882         Implement gst_pad_pause/start/stop_task(), take STREAM lock
883         in task function.
884         Remove ACTIVE pad flag, use FLUSHING everywhere
885         Added _pad_chain(), _pad_get_range() to call chain/getrange 
886         functions.
887         Add locks around IS_FLUSHING when reading.
888         Take STREAM lock in chain(), get_range() functions so plugins
889         don't need to take it anymore.
890         
891
892
893 2005-05-25  Wim Taymans  <wim@fluendo.com>
894
895         * tools/gst-launch.c: (event_loop):
896         Unref message after using its contents instead of
897         before.
898
899 2005-05-24  Wim Taymans  <wim@fluendo.com>
900
901         * docs/design/draft-ghostpads.txt:
902         * docs/design/draft-push-pull.txt:
903         * docs/design/draft-query.txt:
904         * docs/design/part-overview.txt:
905         Docs updates, added general overview doc.
906
907 2005-05-21  David Schleef  <ds@schleef.org>
908
909         * docs/gst/tmpl/old/GstBin.sgml:
910         * docs/gst/tmpl/old/GstBuffer.sgml:
911         * docs/gst/tmpl/old/GstCaps.sgml:
912         * docs/gst/tmpl/old/GstClock.sgml:
913         * docs/gst/tmpl/old/GstCompat.sgml:
914         * docs/gst/tmpl/old/GstData.sgml:
915         * docs/gst/tmpl/old/GstElement.sgml:
916         * docs/gst/tmpl/old/GstEvent.sgml:
917         * docs/gst/tmpl/old/GstIndex.sgml:
918         * docs/gst/tmpl/old/GstStructure.sgml:
919         * docs/gst/tmpl/old/GstTag.sgml:
920         * docs/gst/tmpl/old/cothreads.sgml:
921         * docs/gst/tmpl/old/cothreads_compat.sgml:
922         * docs/gst/tmpl/old/gettext.sgml:
923         * docs/gst/tmpl/old/gobject2gtk.sgml:
924         * docs/gst/tmpl/old/grammar.tab.sgml:
925         * docs/gst/tmpl/old/gst-i18n-app.sgml:
926         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
927         * docs/gst/tmpl/old/gst_private.sgml:
928         * docs/gst/tmpl/old/gstaggregator.sgml:
929         * docs/gst/tmpl/old/gstarch.sgml:
930         * docs/gst/tmpl/old/gstatomic_impl.sgml:
931         * docs/gst/tmpl/old/gstbufferstore.sgml:
932         * docs/gst/tmpl/old/gstdata_private.sgml:
933         * docs/gst/tmpl/old/gstdisksink.sgml:
934         * docs/gst/tmpl/old/gstdisksrc.sgml:
935         * docs/gst/tmpl/old/gstelementfactory.sgml:
936         * docs/gst/tmpl/old/gstextratypes.sgml:
937         * docs/gst/tmpl/old/gstfakesink.sgml:
938         * docs/gst/tmpl/old/gstfakesrc.sgml:
939         * docs/gst/tmpl/old/gstfdsink.sgml:
940         * docs/gst/tmpl/old/gstfdsrc.sgml:
941         * docs/gst/tmpl/old/gstfilesink.sgml:
942         * docs/gst/tmpl/old/gstfilesrc.sgml:
943         * docs/gst/tmpl/old/gsthttpsrc.sgml:
944         * docs/gst/tmpl/old/gstidentity.sgml:
945         * docs/gst/tmpl/old/gstindexfactory.sgml:
946         * docs/gst/tmpl/old/gstmarshal.sgml:
947         * docs/gst/tmpl/old/gstmd5sink.sgml:
948         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
949         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
950         * docs/gst/tmpl/old/gstpadtemplate.sgml:
951         * docs/gst/tmpl/old/gstpipefilter.sgml:
952         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
953         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
954         * docs/gst/tmpl/old/gstshaper.sgml:
955         * docs/gst/tmpl/old/gstspider.sgml:
956         * docs/gst/tmpl/old/gstspideridentity.sgml:
957         * docs/gst/tmpl/old/gststatistics.sgml:
958         * docs/gst/tmpl/old/gsttee.sgml:
959         * docs/gst/tmpl/old/gsttimecache.sgml:
960         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
961         * docs/gst/tmpl/old/gstxmlregistry.sgml:
962         * docs/gst/tmpl/old/gthread-cothreads.sgml:
963         * docs/gst/tmpl/old/types.sgml:
964           I didn't intend to add these or check them in.
965
966 2005-05-19  David Schleef  <ds@schleef.org>
967
968         * configure.ac: Use -no-common everywhere.  In a sane world, it
969           would be the default in libtool, because without it, you can't
970           build DLLs on Windows.
971         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
972         * docs/gst/gstreamer-sections.txt:
973         * docs/gst/tmpl/gstcpu.sgml:
974         * docs/gst/tmpl/gstdata.sgml:
975         * docs/gst/tmpl/gstthread.sgml:
976
977 2005-05-19  David Schleef  <ds@schleef.org>
978
979         * gst/gstminiobject.c: (gst_value_set_mini_object),
980         (gst_value_take_mini_object), (gst_value_get_mini_object):
981         * gst/gstminiobject.h: Add GValue set/get functions.
982
983 2005-05-19  Wim Taymans  <wim@fluendo.com>
984
985         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
986         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
987         (gst_subbuffer_init), (gst_buffer_is_span_fast):
988         * gst/gstbuffer.h:
989         * gst/gstbus.c: (gst_bus_post):
990         * gst/gstelement.c: (gst_element_get_random_pad):
991         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
992         Make subbufer unref the parent in finalize.
993         some more debugging info.
994
995
996 2005-05-19  Wim Taymans  <wim@fluendo.com>
997
998         * gst/base/gstbasesink.c: (gst_basesink_class_init),
999         (gst_basesink_init), (gst_basesink_finalize),
1000         (gst_basesink_activate), (gst_basesink_change_state):
1001         Don't free preroll queue too early.
1002
1003 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1004
1005         * gst/Makefile.am:
1006         * gst/ROADMAP:
1007           Hi, I'm outdated. Please shoot me.
1008
1009 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1010
1011         * gst/gstpipeline.c: (gst_pipeline_send_event):
1012           Do not access variables after they have been deleted.
1013
1014 2005-05-19  Wim Taymans  <wim@fluendo.com>
1015
1016         * tools/gst-inspect.c: (print_plugin_features):
1017         A plugin feature does unfortunatly not use the
1018         object name yet...
1019
1020 2005-05-18  Wim Taymans  <wim@fluendo.com>
1021
1022         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
1023         Port _span() functions to new subbuffers.
1024
1025 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1026
1027         * gst/gstbin.c: (gst_bin_add_func):
1028           Fix clock settery in bins when adding kids after the clock has
1029           been selected.
1030
1031 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1032
1033         * gst/elements/gstidentity.c: (gst_identity_class_init):
1034           Workaround until signals support GstMiniObject.
1035
1036 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1037
1038         * gst/gstbuffer.c:
1039         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
1040
1041 2005-05-18  Wim Taymans  <wim@fluendo.com>
1042
1043         * gst/base/Makefile.am:
1044         * gst/base/gstadapter.c: (gst_adapter_base_init),
1045         (gst_adapter_class_init), (gst_adapter_init),
1046         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1047         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1048         (gst_adapter_flush), (gst_adapter_available),
1049         (gst_adapter_available_fast):
1050         * gst/base/gstadapter.h:
1051         Ported and added adapter to the base classes.
1052
1053 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1054
1055         * gst/gst.c:
1056         * gst/gstmessage.c:
1057           Make sure the class is reffed/unreffed once before threads can be
1058           used.  Fixes #304551.
1059
1060 2005-05-17  Wim Taymans  <wim@fluendo.com>
1061
1062         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1063         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1064         * gst/gstminiobject.c: (gst_mini_object_get_type),
1065         (gst_mini_object_free):
1066         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1067         (gst_pad_push), (gst_pad_push_event):
1068         * gst/gstqueue.c: (gst_queue_change_state):
1069         Don't queue buffers in basesink when we are flushing.
1070         Unref buffer when flushing in basesink.
1071         Flush queue when going to READY
1072         Unref buffer when _push() returns an error.
1073         Don't free MiniObject instance when refcount is incremented
1074         in _finalize() so that we can recover objects.
1075
1076 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1077
1078         * docs/manual/advanced-schedulers.xml:
1079         * docs/manual/appendix-checklist.xml:
1080         * docs/pwg/advanced-clock.xml:
1081         * docs/pwg/advanced-interfaces.xml:
1082         * docs/pwg/advanced-request.xml:
1083         * docs/pwg/advanced-types.xml:
1084         * docs/pwg/intro-preface.xml:
1085         * examples/plugins/example.c: (gst_example_get_type),
1086         (gst_example_class_init), (gst_example_chain),
1087         (gst_example_set_property), (gst_example_get_property),
1088         (gst_example_change_state), (plugin_init):
1089         * examples/plugins/example.h:
1090           small doc fixes
1091
1092 2005-05-17  Wim Taymans  <wim@fluendo.com>
1093
1094         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1095         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1096         * gst/gstqueue.c: (gst_queue_change_state):
1097         Clear queue when going to READY.
1098         Remove IN_SETCAPS flag too.
1099
1100 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1101
1102         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1103           Remove implicit cast from gboolean to GstElementStateReturn;
1104           make sure we still return failure in paused => ready case if
1105           the parent class fails to change state and our own stop 
1106           vfunc succeeds.
1107
1108 2005-05-17  Wim Taymans  <wim@fluendo.com>
1109
1110         * tools/gst-launch.c: (event_loop):
1111         Message was unreffed too soon.
1112
1113 2005-05-16  Andy Wingo  <wingo@pobox.com>
1114
1115         * gst/gstbin.c (sink_iterator_filter): Err... um...
1116
1117         * check/gst/gstbin.c (test_ghost_pads): New test for the
1118         ghosting-if-elements-not-in-same-bin behavior.
1119
1120 2005-05-16  David Schleef  <ds@schleef.org>
1121
1122         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1123         accessing refcount directly.
1124
1125 2005-05-15  David Schleef  <ds@schleef.org>
1126
1127         * check/Makefile.am: remove GstData checks
1128         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1129         * gst/Makefile.am: add miniobject, remove data
1130         * gst/gst.h: add miniobject, remove data
1131         * gst/gstdata.c: remove
1132         * gst/gstdata.h: remove
1133         * gst/gstdata_private.h: remove
1134         * gst/gsttypes.h: remove GstEvent and GstMessage
1135         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1136         * gst/gstmarshal.list: change BOXED -> OBJECT
1137
1138         Implement GstMiniObject.
1139         * gst/gstminiobject.c:
1140         * gst/gstminiobject.h:
1141
1142         Modify to be subclasses of GstMiniObject.
1143         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1144         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1145         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1146         (gst_subbuffer_get_type), (gst_subbuffer_init),
1147         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1148         (gst_buffer_span):
1149         * gst/gstbuffer.h:
1150         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1151         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1152         (_gst_event_copy), (gst_event_new):
1153         * gst/gstevent.h:
1154         * gst/gstmessage.c: (_gst_message_initialize),
1155         (gst_message_get_type), (gst_message_class_init),
1156         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1157         (gst_message_new), (gst_message_new_error),
1158         (gst_message_new_warning), (gst_message_new_tag),
1159         (gst_message_new_state_changed), (gst_message_new_application):
1160         * gst/gstmessage.h:
1161         * gst/gstprobe.c: (gst_probe_perform),
1162         (gst_probe_dispatcher_dispatch):
1163         * gst/gstprobe.h:
1164         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1165         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1166         (_gst_query_copy), (gst_query_new):
1167
1168         Update elements for GstData -> GstMiniObject changes
1169         * gst/gstquery.h:
1170         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1171         (gst_queue_chain), (gst_queue_loop):
1172         * gst/elements/gstbufferstore.c:
1173         (gst_buffer_store_add_buffer_func),
1174         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1175         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1176         (gst_fakesink_render):
1177         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1178         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1179         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1180         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1181         (gst_filesrc_create_read):
1182         * gst/elements/gstidentity.c: (gst_identity_class_init):
1183         * gst/elements/gsttypefindelement.c:
1184         (gst_type_find_element_src_event), (free_entry_buffers),
1185         (gst_type_find_element_handle_event):
1186         * libs/gst/dataprotocol/dataprotocol.c:
1187         (gst_dp_header_from_buffer):
1188         * libs/gst/dataprotocol/dataprotocol.h:
1189         * libs/gst/dataprotocol/dp-private.h:
1190
1191 2005-05-15  David Schleef  <ds@schleef.org>
1192
1193         * gst/elements/gstelements.c: Don't include headers that were
1194         just removed.
1195
1196 2005-05-15  David Schleef  <ds@schleef.org>
1197
1198         * gst/elements/Makefile.am: Remove some elements that don't
1199         need to be in the core (or even exist at all).
1200         * gst/elements/gstaggregator.c:
1201         * gst/elements/gstaggregator.h:
1202         * gst/elements/gstmd5sink.c:
1203         * gst/elements/gstmd5sink.h:
1204         * gst/elements/gstmultifilesrc.c:
1205         * gst/elements/gstmultifilesrc.h:
1206         * gst/elements/gstpipefilter.c:
1207         * gst/elements/gstpipefilter.h:
1208         * gst/elements/gstshaper.c:
1209         * gst/elements/gstshaper.h:
1210         * gst/elements/gststatistics.c:
1211         * gst/elements/gststatistics.h:
1212         * po/POTFILES.in: Remove above files.
1213
1214 2005-05-14  Andy Wingo  <wingo@pobox.com>
1215
1216         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1217         so as to get the refs right.
1218         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1219         unreffing objects that don't pass the filter.
1220
1221         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1222         gst_element_set_bus.
1223         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1224         normal cases, this will destroy the bus.
1225
1226         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1227         object.
1228
1229         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1230         has no sinks.
1231
1232 2005-05-13  Andy Wingo  <wingo@pobox.com>
1233
1234         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1235         gst_pad_link, call pad_link_maybe_ghosting,
1236         (pad_link_maybe_ghosting): Links pads, making sure that the
1237         elements being linked are in the same bin.
1238         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1239         Helpers for pad_link_maybe_ghosting.
1240
1241 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1242
1243         * configure.ac:
1244           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1245
1246 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1247
1248         * docs/design/part-element-source.txt:
1249           Mention GstPushSrc
1250
1251 2005-05-12  Wim Taymans  <wim@fluendo.com>
1252
1253         * gst/base/gstbasesink.c: (gst_basesink_init),
1254         (gst_basesink_activate):
1255         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1256         (gst_basesrc_is_seekable):
1257         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1258         (bin_element_is_sink), (gst_bin_change_state):
1259         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1260         * gst/gstelement.h:
1261         Identify sinks by their flag to avoid overly complicated
1262         checks (fow now).
1263         Do state changes even for elements not reachable from the
1264         sinks.
1265         BaseSink is a sink now :)
1266         Some more debugging info in the basesrc.
1267
1268
1269 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1270
1271         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1272           Implement _query on a bin, similar to _send_event.
1273
1274 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1275
1276         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1277           Discont event offset format should be GST_FORMAT_BYTES,
1278           not GST_FORMAT_TIME.
1279
1280 2005-05-12  Wim Taymans  <wim@fluendo.com>
1281
1282         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1283         Same fix as Ronald's but without the signal. 
1284
1285 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1286
1287         * gst/gstutils.c: (gst_element_query_position):
1288           No, an element is not a pad.
1289
1290 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1291
1292         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1293         (gst_bin_get_state):
1294           If a child is removed from a bin while we remove the child from
1295           the bin and while we're retrieving its state, signal this to the
1296           get_state function so we abort the wait (instead of waiting for
1297           a timeout) and can immediately re-iterate over all other elements.
1298
1299 2005-05-12  Wim Taymans  <wim@fluendo.com>
1300
1301         * gst/base/Makefile.am:
1302         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1303         (gst_basesrc_start):
1304         * gst/base/gstbasesrc.h:
1305         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1306         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1307         (gst_pushsrc_init), (gst_pushsrc_create):
1308         * gst/base/gstpushsrc.h:
1309         Added is_seekable to BaseSrc
1310         Added simple PushSrc.
1311
1312 2005-05-11  Wim Taymans  <wim@fluendo.com>
1313
1314         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1315         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1316         (gst_element_link_pads), (gst_element_query_position),
1317         (gst_element_query_convert), (intersect_caps_func),
1318         (gst_pad_query_position), (gst_pad_query_convert):
1319         Fix refcounting in utils function.
1320         No point in trying to activate a pad when it's added, it could
1321         be added from the state change function and then we deadlock, the
1322         element has to decide what to do.
1323
1324 2005-05-10  Andy Wingo  <wingo@pobox.com>
1325
1326         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1327         *all* the arguments.
1328
1329         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1330         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1331         lock (according to the docs -- if this is wrong change the docs).
1332
1333         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1334         flush messages in the NULL state.
1335
1336         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1337         message immediately and return.
1338         (gst_bus_set_flushing): New function. If a bus is flushing, it
1339         flushes out any queued messages and immediately unrefs new
1340         messages. This is so when an element goes to NULL, all of the
1341         unhandled messages coming from it can be freed, and their
1342         references to the element dropped. In other words: message source
1343         ref considered harmful :P
1344
1345         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1346         we're finished with it.
1347
1348         * gst/gstmessage.c (gst_message_new_state_changed): 
1349
1350 2005-05-10  Wim Taymans  <wim@fluendo.com>
1351
1352         * gst/gstvalue.c: (gst_value_compare_flags),
1353         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1354         (_gst_value_initialize):
1355         Added flags serialize/deserialize/compare code.
1356
1357 2005-05-09  Andy Wingo  <wingo@pobox.com>
1358
1359         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1360         Intersect the peer's caps with our caps.
1361
1362 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1363
1364         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1365         * gst/elements/gsttypefindelement.c: (find_peek):
1366           Handle negative offsets better. Fixes decodebin.
1367
1368 2005-05-09  Wim Taymans  <wim@fluendo.com>
1369
1370         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1371         (gst_base_transform_event):
1372         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1373         Implement accept_caps.
1374         Fix silly lock/unlock mismatch in base class.
1375
1376 2005-05-09  Wim Taymans  <wim@fluendo.com>
1377
1378         * docs/design/draft-push-pull.txt:
1379         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1380         * gst/elements/gstfilesink.c: (gst_filesink_init),
1381         (gst_filesink_query):
1382         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1383         (gst_type_find_handle_src_query), (find_element_get_length):
1384         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1385         * gst/gstelement.h:
1386         * gst/gstmessage.c:
1387         * gst/gstmessage.h:
1388         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1389         (gst_real_pad_get_caps_unlocked),
1390         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1391         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1392         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1393         (gst_real_pad_dispose), (gst_real_pad_finalize),
1394         (gst_pad_load_and_link), (gst_pad_save_thyself),
1395         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1396         (gst_pad_check_pull_range), (gst_pad_pull_range),
1397         (gst_pad_template_get_type), (gst_pad_template_class_init),
1398         (gst_pad_template_init), (gst_pad_template_dispose),
1399         (name_is_valid), (gst_static_pad_template_get),
1400         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1401         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1402         (gst_pad_get_element_private), (gst_pad_start_task),
1403         (gst_pad_pause_task), (gst_pad_stop_task),
1404         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1405         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1406         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1407         (gst_ghost_pad_new):
1408         * gst/gstpad.h:
1409         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1410         (gst_query_new_position), (gst_query_set_position),
1411         (gst_query_parse_position), (gst_query_new_convert),
1412         (gst_query_set_convert), (gst_query_parse_convert):
1413         * gst/gstquery.h:
1414         * gst/gstqueryutils.c:
1415         * gst/gstqueryutils.h:
1416         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1417         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1418         (gst_queue_handle_src_query):
1419         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1420         (gst_element_query_position), (gst_element_query_convert),
1421         (intersect_caps_func), (gst_pad_query_position),
1422         (gst_pad_query_convert):
1423         * gst/gstutils.h:
1424         * tools/gst-inspect.c: (print_pad_info):
1425         * tools/gst-xmlinspect.c: (print_element_info):
1426         Remove old query functions. Ported old code.
1427         Added position/convert helper functions to gstutils.
1428         Reordered gstpad.c code, grouping relevant things.
1429         Remove gst_message_new(), always need to speficy a specific
1430         message.
1431
1432
1433 2005-05-09  Andy Wingo  <wingo@pobox.com>
1434
1435         * gst/gstiterator.h: Add some includes.
1436
1437         * gst/gstqueryutils.h: Include more headers.
1438
1439         * gst/gstpad.h:
1440         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1441         some uses of gst_pad_query.
1442
1443         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1444         NULL out parameters.
1445         (gst_query_new_position): New proc, allocates a new position
1446         query.
1447
1448         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1449         gstqueryutils.c to the build.
1450
1451         * gst/gststructure.c (gst_structure_set_valist): Implement with
1452         the generic G_VALUE_COLLECT.
1453         
1454 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1455
1456         * gst/Makefile.am: (gst_headers):
1457         Added gstqueryutils.h to the list of headers to install, that was
1458         a 'nachty' move wingo :)
1459
1460 2005-05-06  Andy Wingo  <wingo@pobox.com>
1461
1462         * gst/gstquery.h
1463         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1464         GstData, init a memchunk.
1465         (standard_definitions): Add a few query types, deprecate a few.
1466         (gst_query_get_type): New proc.
1467         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1468         implementation.
1469         (gst_query_new_application, gst_query_get_structure): New public
1470         procs.
1471
1472         * docs/design/draft-query.txt: Removed LINKS from the query types,
1473         because all the rest can be dispatched to other pads -- seemed
1474         ugly to have a query that couldn't be dispatched. internal_links
1475         is fine as a pad method.
1476
1477         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1478         in gstpad.c, but maintain binary compatibility for the moment.
1479         Will fix before 0.9 is out.
1480
1481         * gst/gstqueryutils.c: 
1482         * gst/gstqueryutils.h: New files, implement 3 methods for each
1483         query type: parse_query, parse_response, and set. Probably need an
1484         allocator as well.
1485
1486         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1487
1488         * gst/elements/gstfilesink.c (gst_filesink_query2):
1489         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1490         query_types, and formats methods.
1491
1492         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1493         (gst_pad_set_query2_function): New functions.
1494         (gst_real_pad_init): Set query2_default as the default query2
1495         function. Basically just dispatches to internally linked pads.
1496
1497         Needs review!
1498         
1499         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1500         without using the atomic operations. Only one thread can possibly
1501         be accessing the data at this point. Changed so as to avoid
1502         gst_atomic operations.
1503
1504 2005-05-06  Wim Taymans  <wim@fluendo.com>
1505
1506         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1507         Also set caps if we use the fallback buffer alloc.
1508
1509 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1510
1511         * docs/gst/Makefile.am:
1512         * docs/gst/gstreamer-docs.sgml:
1513         * docs/gst/gstreamer-sections.txt:
1514         * docs/gst/tmpl/gstatomic.sgml:
1515         * docs/gst/tmpl/gstmemchunk.sgml:
1516         * testsuite/elements/struct_i386.h:
1517         * win32/GStreamer.vcproj:
1518         * win32/Makefile:
1519           Purge GstAtomic stuff from docs and win32 makefiles as well
1520
1521 2005-05-06  Wim Taymans  <wim@fluendo.com>
1522
1523         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1524         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1525         * gst/gstpad.c: (gst_pad_peer_get_caps):
1526         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1527         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1528         (gst_queue_src_activate), (gst_queue_change_state):
1529         * gst/gstqueue.h:
1530         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1531         (intersect_caps_func):
1532         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1533         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1534         Some fixes for the peer_get_caps() change.
1535
1536 2005-05-06  Wim Taymans  <wim@fluendo.com>
1537
1538         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1539         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1540         (gst_basesink_activate):
1541         Actually do something with error codes returned from the push
1542         functions.
1543
1544 2005-05-06  Wim Taymans  <wim@fluendo.com>
1545
1546         * docs/design/part-element-sink.txt:
1547         * docs/design/part-element-source.txt:
1548         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1549         (gst_basesink_event), (gst_basesink_activate):
1550         * gst/base/gstbasesink.h:
1551         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1552         (gst_basesrc_activate):
1553         * gst/base/gstbasesrc.h:
1554         * gst/gstelement.c: (gst_element_pads_activate):
1555         Some more documentation.
1556         Fixed scheduling decision in _pads_activate().
1557
1558 2005-05-05  Andy Wingo  <wingo@pobox.com>
1559
1560         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1561         the test suite.
1562
1563 2005-05-05  Wim Taymans  <wim@fluendo.com>
1564
1565         * gst/base/Makefile.am:
1566         * gst/base/gstbasesink.h:
1567         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1568         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1569         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1570         (gst_collectpads_class_init), (gst_collectpads_init),
1571         (gst_collectpads_finalize), (gst_collectpads_new),
1572         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1573         (find_pad), (gst_collectpads_remove_pad),
1574         (gst_collectpads_is_active), (gst_collectpads_collect),
1575         (gst_collectpads_collect_range), (gst_collectpads_start),
1576         (gst_collectpads_stop), (gst_collectpads_peek),
1577         (gst_collectpads_pop), (gst_collectpads_available),
1578         (gst_collectpads_read), (gst_collectpads_flush),
1579         (gst_collectpads_chain):
1580         * gst/base/gstcollectpads.h:
1581         * gst/elements/Makefile.am:
1582         * gst/elements/gstelements.c:
1583         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1584         (gst_fakesink_get_times), (gst_fakesink_event),
1585         (gst_fakesink_preroll), (gst_fakesink_render):
1586         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1587         (gst_filesink_init), (gst_filesink_set_location),
1588         (gst_filesink_open_file), (gst_filesink_close_file),
1589         (gst_filesink_pad_query), (gst_filesink_event),
1590         (gst_filesink_render), (gst_filesink_change_state):
1591         * gst/elements/gstfilesink.h:
1592         Added object to help in making collect pad based elements.
1593         Ported filesink.
1594         Make event function in sink baseclass return gboolean.
1595
1596 2005-05-05  Wim Taymans  <wim@fluendo.com>
1597
1598         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1599         (gst_bin_get_by_name):
1600         * gst/gstbuffer.h:
1601         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1602         (gst_clock_finalize):
1603         * gst/gstdata.c: (gst_data_replace):
1604         * gst/gstdata.h:
1605         * gst/gstelement.c: (gst_element_request_pad),
1606         (gst_element_pads_activate):
1607         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1608         (gst_object_unref):
1609         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1610         (gst_pad_set_checkgetrange_function),
1611         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1612         (gst_pad_check_pull_range), (gst_pad_pull_range),
1613         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1614         (gst_pad_pause_task), (gst_pad_stop_task):
1615         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1616         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1617         Fix name lookup in GstBin.
1618         Added _data_replace() function and _buffer_replace()
1619         Use finalize method to clean up clock.
1620         Fix refcounting on request pads.
1621         Fix pad schedule mode error.
1622         Some more object refcounting debug info,
1623
1624
1625 2005-05-04  Andy Wingo <wingo@pobox.com>
1626
1627         * check/Makefile.am:
1628         * docs/gst/tmpl/gstatomic.sgml:
1629         * docs/gst/tmpl/gstplugin.sgml:
1630         * gst/base/gstbasesink.c: (gst_basesink_activate):
1631         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1632         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1633         (gst_basesrc_query), (gst_basesrc_set_property),
1634         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1635         (gst_basesrc_activate):
1636         * gst/base/gstbasesrc.h:
1637         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1638         (gst_base_transform_src_activate):
1639         * gst/elements/gstelements.c:
1640         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1641         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1642         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1643         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1644         (gst_type_find_element_checkgetrange),
1645         (gst_type_find_element_activate):
1646         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1647         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1648         (gst_caps_load_thyself):
1649         * gst/gstelement.c: (gst_element_pads_activate),
1650         (gst_element_save_thyself), (gst_element_restore_thyself):
1651         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1652         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1653         * gst/gstpad.h:
1654         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1655         (gst_xml_parse_file), (gst_xml_parse_memory),
1656         (gst_xml_get_element), (gst_xml_make_element):
1657         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1658         (_file_index_id_save_xml), (gst_file_index_commit):
1659         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1660         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1661         (load_paths):
1662         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1663         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1664         * tools/gst-complete.c: (main):
1665         * tools/gst-compprep.c: (main):
1666         * tools/gst-inspect.c: (print_element_properties_info):
1667         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1668         * tools/gst-xmlinspect.c: (print_element_properties):
1669         GCC 4 fixen.
1670         
1671 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1672
1673         * gst/gstplugin.c: (gst_plugin_check_module),
1674         (gst_plugin_check_file), (gst_plugin_load_file):
1675             apply patch from #172526 to make register work on MacOSX
1676
1677 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1678
1679         * docs/gst/tmpl/gstconfig.sgml:
1680         * gst/gstconfig.h.in:
1681           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1682         * testsuite/debug/printf_extension.c: (main):
1683           Do not use GST_PTR_FORMAT on pointers to types with
1684           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1685         * testsuite/elements/property.h:
1686           use correct printf format
1687
1688 2005-05-02  Wim Taymans  <wim@fluendo.com>
1689
1690         * docs/design/draft-push-pull.txt:
1691         * docs/design/draft-query.txt:
1692         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1693         (gst_basesrc_start):
1694         Added draft for new query API.
1695         Added draft for better selecting scheduling methods.
1696         Make basesrc ignore length if the subclass does not support
1697         it.
1698
1699 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1700
1701         * gst/Makefile.am:
1702           possible fixes for automake-1.5 - _LIBADD is reserved
1703
1704 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1705
1706         * docs/faq/Makefile.am:
1707         * docs/manual/Makefile.am:
1708         * docs/manuals.mak:
1709         * docs/pwg/Makefile.am:
1710         * gst/Makefile.am:
1711           possible fixes for automake-1.5
1712
1713 2005-04-28  Wim Taymans  <wim@fluendo.com>
1714
1715         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1716         (gst_basesink_pad_getcaps), (gst_basesink_init),
1717         (gst_basesink_do_sync):
1718         * gst/gstclock.c: (gst_clock_entry_new):
1719         * gst/gstevent.c: (gst_event_discont_get_value):
1720         * gst/gstpipeline.c: (pipeline_bus_handler),
1721         (gst_pipeline_change_state):
1722         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1723         Better debugging of clocking info.
1724         Allow NULL values when getting discont values.
1725
1726 2005-04-27  Wim Taymans  <wim@fluendo.com>
1727
1728         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1729         * check/gst/gstpad.c: (gst_pad_suite):
1730         Increase timeout for checks.
1731
1732 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1733
1734         * check/Makefile.am:
1735           fix the broken rule for cleanup.  Apparently this rule is
1736           only needed on FC2, so maybe this warrants further autotool
1737           inspection.
1738
1739 2005-04-26  Wim Taymans  <wim@fluendo.com>
1740
1741         * gst/gsttrashstack.h:
1742         Ooohh. a nasty one! After having a failed pop() from the stack,
1743         it's possible that the stack is empty. In that case, don't
1744         follow the NULL pointer.
1745
1746 2005-04-25  Wim Taymans  <wim@fluendo.com>
1747
1748         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1749         (gst_pad_set_checkgetrange_function),
1750         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1751         (gst_pad_check_pull_range), (gst_pad_pull_range),
1752         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1753         (gst_pad_pause_task), (gst_pad_stop_task):
1754         * gst/gstplugin.c: (gst_plugin_load):
1755         * gst/gstplugin.h:
1756         Remove gst_library_load as it does more harm than good with
1757         the new g_module flags.
1758         Revert bogus caps template check in pad linking, pad caps
1759         are important when linking not the template, which is more
1760         general than the current caps.
1761
1762 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1763
1764         * gst/autoplug/.cvsignore:
1765         * gst/autoplug/Makefile.am:
1766         * gst/autoplug/gstsearchfuncs.c:
1767         * gst/autoplug/gstsearchfuncs.h:
1768         * gst/autoplug/gstspider.c:
1769         * gst/autoplug/gstspider.h:
1770         * gst/autoplug/gstspideridentity.c:
1771         * gst/autoplug/gstspideridentity.h:
1772         * gst/autoplug/spidertest.c:
1773           Die, spider, die.
1774
1775 2005-04-25  Wim Taymans  <wim@fluendo.com>
1776
1777         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1778         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1779         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1780         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1781         * gst/gstpad.h:
1782         Added stubs for unimplemented functions. 
1783
1784 2005-04-24  David Schleef  <ds@schleef.org>
1785
1786         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1787         please fix.
1788
1789 2005-04-24  David Schleef  <ds@schleef.org>
1790
1791         Convert everything from GstAtomicInt to g_atomic_int_*, and
1792         remove gstatomic.
1793         * gst/Makefile.am:
1794         * gst/gstatomic.c:
1795         * gst/gstatomic.h:
1796         * gst/gstatomic_impl.h:
1797         * gst/gstbuffer.c:
1798         * gst/gstcaps.c:
1799         * gst/gstcaps.h:
1800         * gst/gstclock.c:
1801         * gst/gstclock.h:
1802         * gst/gstdata.c:
1803         * gst/gstdata.h:
1804         * gst/gstdata_private.h:
1805         * gst/gstevent.c:
1806         * gst/gstinfo.c:
1807         * gst/gstinfo.h:
1808         * gst/gstmessage.c:
1809         * gst/gstobject.c:
1810         * gst/gstobject.h:
1811         * gst/gststructure.c:
1812         * gst/gststructure.h:
1813         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1814         * gst/gstutils.h:
1815
1816 2005-04-24  David Schleef  <ds@schleef.org>
1817
1818         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1819         make the regressions tests work.  Remove some code that is no
1820         longer true.
1821         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1822         Disable warning for pads without templates.
1823
1824 2005-04-24  David Schleef  <ds@schleef.org>
1825
1826         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1827         functions that handle filtered links.
1828         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1829         removed functions.
1830         * gst/gstutils.c: Fix/remove utility functions that handle
1831         filtered caps.
1832         * gst/gstutils.h:
1833         * gst/gstvalue.c: Add serialization/deserialization of caps
1834         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1835         requires fixing so that the filter caps notation creates
1836         a capsfilter element and sets the filter_caps property.  I
1837         think everyone probably wants to keep the shorthand notation.
1838         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1839         * docs/gst/tmpl/gstpad.sgml:
1840
1841         * gst/elements/gstelements.c: Register capsfilter element.
1842         * gst/Makefile.am: fix spacing
1843         * docs/random/ds/0.9-suggested-changes: random
1844
1845 2005-04-23  David Schleef  <ds@schleef.org>
1846
1847         * gst/elements/Makefile.am:
1848         * gst/elements/gstcapsfilter.c: New element that acts like an
1849         identity, but filters caps.  Will eventually replace filtered
1850         caps in pad linking.
1851         * gst/gstutils.c: (gst_element_create_all_pads): New function
1852         to create all the ALWAYS pads that are registered with an
1853         element class.  This functionality should eventually be
1854         merged in with GstElement initialization.
1855         * gst/gstutils.h:
1856         * testsuite/trigger/README: part of trigger test code that should
1857         have been checked in a long time ago.
1858
1859 2005-04-23  David Schleef  <ds@schleef.org>
1860
1861         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1862         needed with new versions of libtool (nobody will confirm this),
1863         and hard to carry around.
1864         * gst/autoplug/Makefile.am:
1865         * gst/base/Makefile.am:
1866         * gst/elements/Makefile.am:
1867         * gst/indexers/Makefile.am:
1868         * gst/schedulers/Makefile.am:
1869         * libs/gst/bytestream/Makefile.am:
1870         * libs/gst/control/Makefile.am:
1871         * libs/gst/dataprotocol/Makefile.am:
1872         * libs/gst/getbits/Makefile.am:
1873
1874 2005-04-21  Wim Taymans  <wim@fluendo.com>
1875
1876         * docs/design/draft-push-pull.txt:
1877         * docs/design/part-MT-refcounting.txt:
1878         * docs/design/part-TODO.txt:
1879         * docs/design/part-caps.txt:
1880         * docs/design/part-events.txt:
1881         * docs/design/part-gstbus.txt:
1882         * docs/design/part-gstpipeline.txt:
1883         * docs/design/part-messages.txt:
1884         * docs/design/part-push-pull.txt:
1885         * docs/design/part-query.txt:
1886         Some more docs.
1887
1888 2005-04-21  Wim Taymans  <wim@fluendo.com>
1889
1890         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1891         (gst_message_new), (gst_message_new_error),
1892         (gst_message_new_warning), (gst_message_new_tag),
1893         (gst_message_new_state_changed), (gst_message_new_application),
1894         (gst_message_get_structure):
1895         * gst/gstmessage.h:
1896         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1897         (gst_structure_copy_conditional):
1898         Use parent refcount in GstMessage to ensure GstStructure
1899         consistency.
1900         Cleaned up headers a bit.
1901         
1902
1903 2005-04-20  Wim Taymans  <wim@fluendo.com>
1904
1905         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1906         (gst_basesink_pad_getcaps), (gst_basesink_init),
1907         (gst_basesink_chain_unlocked):
1908         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1909         (gst_type_find_helper):
1910         * gst/elements/gsttypefindelement.c:
1911         (gst_type_find_element_have_type), (gst_type_find_element_init),
1912         (stop_typefinding), (gst_type_find_element_handle_event),
1913         (find_suggest), (gst_type_find_element_chain),
1914         (gst_type_find_element_checkgetrange),
1915         (gst_type_find_element_getrange), (do_typefind),
1916         (gst_type_find_element_activate):
1917         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1918         (gst_buffer_default_free), (gst_buffer_default_copy),
1919         (gst_buffer_set_caps):
1920         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1921         (gst_caps_replace):
1922         * gst/gstmessage.c: (gst_message_new),
1923         (gst_message_new_state_changed):
1924         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1925         (gst_pad_set_checkgetrange_function),
1926         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1927         (gst_pad_set_caps), (gst_pad_check_pull_range),
1928         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1929         * gst/gstpad.h:
1930         * gst/gsttypefind.c: (gst_type_find_register):
1931         Make gst_caps_replace() work like other _replace() functions.
1932         Use _caps_replace() where possible.
1933         Make sure _message_new() initialises its field.
1934         Add gst_static_pad_template_get_caps()
1935
1936
1937 2005-04-18  Andy Wingo  <wingo@pobox.com>
1938
1939         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1940         on the peer, not the pad. I think that was a typo. Pass an extra
1941         arg to see if random access is possible. Activate the pads as
1942         PULL_RANGE if possible.
1943
1944         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1945
1946         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1947         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1948         to PROP_....
1949
1950 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1951
1952         * docs/faq/using.xml:
1953           Add note on gstreamer-properties (#154996).
1954
1955 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1956
1957         * docs/random/bbb/optional-properties:
1958           Some analysis on optional properties.
1959
1960 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1961
1962         * docs/gst/tmpl/gstelementfactory.sgml:
1963         * gst/gstelement.h:
1964         * gst/gstelementfactory.c: (gst_element_factory_init),
1965         (gst_element_factory_cleanup), (gst_element_register),
1966         (__gst_element_factory_add_static_pad_template),
1967         (gst_element_factory_get_static_pad_templates),
1968         (gst_element_factory_can_src_caps),
1969         (gst_element_factory_can_sink_caps):
1970         * gst/registries/Makefile.am:
1971         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1972         (gst_xml_registry_class_init), (gst_xml_registry_init),
1973         (gst_xml_registry_new), (gst_xml_registry_set_property),
1974         (gst_xml_registry_get_property), (get_time), (make_dir),
1975         (gst_xml_registry_get_perms_func),
1976         (plugin_times_older_than_recurse), (plugin_times_older_than),
1977         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1978         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1979         (add_to_char_array), (read_string), (read_uint), (read_enum),
1980         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1981         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1982         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1983         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1984         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1985         (gst_xml_registry_rebuild):
1986         * gst/registries/gstlibxmlregistry.h:
1987         * tools/gst-compprep.c: (main):
1988         * tools/gst-inspect.c: (print_pad_templates_info):
1989         * tools/gst-xmlinspect.c: (print_element_info):
1990           Use libxml2 for registry parsing, use staticpadtemplates in
1991           elementfactories. Makes gst_init() +/- 10x faster.
1992
1993 2005-04-12  Wim Taymans  <wim@fluendo.com>
1994
1995         * gst/base/Makefile.am:
1996         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1997         (gst_basesink_pad_getcaps), (gst_basesink_init),
1998         (gst_basesink_event), (gst_basesink_change_state):
1999         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2000         (gst_basesrc_init), (gst_basesrc_query),
2001         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2002         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2003         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2004         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2005         (gst_basesrc_stop), (gst_basesrc_activate),
2006         (gst_basesrc_change_state):
2007         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2008         (helper_find_suggest), (gst_type_find_helper):
2009         * gst/base/gsttypefindhelper.h:
2010         * gst/elements/Makefile.am:
2011         * gst/elements/gstelements.c:
2012         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2013         (gst_fakesink_get_times), (gst_fakesink_event),
2014         (gst_fakesink_preroll), (gst_fakesink_render):
2015         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2016         (gst_fakesrc_init), (gst_fakesrc_event_handler),
2017         (gst_fakesrc_get_property), (gst_fakesrc_create),
2018         (gst_fakesrc_start), (gst_fakesrc_stop):
2019         * gst/elements/gstfakesrc.h:
2020         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
2021         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2022         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2023         (gst_filesrc_create_read), (gst_filesrc_create),
2024         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
2025         (gst_filesrc_start):
2026         * gst/elements/gsttypefindelement.c:
2027         (gst_type_find_element_have_type), (gst_type_find_element_init),
2028         (start_typefinding), (stop_typefinding), (push_buffer_store),
2029         (gst_type_find_element_handle_event),
2030         (gst_type_find_element_chain),
2031         (gst_type_find_element_checkgetrange),
2032         (gst_type_find_element_getrange), (do_typefind),
2033         (gst_type_find_element_activate),
2034         (gst_type_find_element_change_state):
2035         * gst/elements/gsttypefindelement.h:
2036         * gst/gstpipeline.c: (pipeline_bus_handler):
2037         Added typefind helper.
2038         Small preroll fix in the base sink.
2039         Disable typefind code in basesrc.
2040         Crude port of typefindelement.
2041         Fakesrc cleanups.
2042
2043
2044 2005-04-11  Wim Taymans  <wim@fluendo.com>
2045
2046         * check/gst/gstbus.c: (gstbus_suite):
2047         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2048         * check/gstcheck.h:
2049           Fix up the timeout so that the test does not fail.
2050
2051 2005-04-06  Wim Taymans  <wim@fluendo.com>
2052
2053         * gst/base/README:
2054         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2055         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2056         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2057         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2058         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2059         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2060         (gst_basesrc_stop), (gst_basesrc_activate),
2061         (gst_basesrc_change_state), (basesrc_find_peek),
2062         (basesrc_find_suggest), (gst_basesrc_type_find):
2063         * gst/base/gstbasesrc.h:
2064         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2065         (gst_filesrc_class_init), (gst_filesrc_init),
2066         (gst_filesrc_finalize), (gst_filesrc_set_location),
2067         (gst_filesrc_set_property), (gst_filesrc_get_property),
2068         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2069         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2070         (gst_filesrc_create_read), (gst_filesrc_create),
2071         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2072         * gst/elements/gstfilesrc.h:
2073         * gst/gstelement.c: (gst_element_get_state_func),
2074         (gst_element_lost_state), (gst_element_pads_activate):
2075         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2076         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2077         (gst_pad_pull_range):
2078         * gst/gstpad.h:
2079         More work on the generic source base class, implement seeking,
2080         query.
2081         Make filesrc extend the base source class.
2082         Added gst_pad_set_checkgetrange_function to GstPad.
2083
2084 2005-04-06  Andy Wingo  <wingo@pobox.com>
2085
2086         * pkgconfig/gstreamer-base.pc.in:
2087         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2088
2089         * pkgconfig/Makefile.am:
2090         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2091
2092 2005-04-04  Wim Taymans  <wim@fluendo.com>
2093
2094         * gst/base/Makefile.am:
2095         * gst/base/README:
2096         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2097         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2098         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2099         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2100         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2101         (gst_basesrc_base_init), (gst_basesrc_class_init),
2102         (gst_basesrc_init), (gst_basesrc_get_formats),
2103         (gst_basesrc_get_query_types), (gst_basesrc_query),
2104         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2105         (gst_basesrc_set_property), (gst_basesrc_get_property),
2106         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2107         (gst_basesrc_loop), (gst_basesrc_activate),
2108         (gst_basesrc_change_state):
2109         * gst/base/gstbasesrc.h:
2110         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2111         (gst_fakesrc_class_init), (gst_fakesrc_init),
2112         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2113         (gst_fakesrc_get_property), (gst_fakesrc_create):
2114         * gst/elements/gstfakesrc.h:
2115         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2116         (gst_filesrc_open_file), (gst_filesrc_loop),
2117         (gst_filesrc_activate), (filesrc_find_peek),
2118         (gst_filesrc_type_find):
2119         Made base source class, make fakesrc extend it.
2120         Add comments to basesink class.
2121         Some filesrc cleanup.
2122
2123 2005-03-31  David Schleef  <ds@schleef.org>
2124
2125         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2126         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2127         expected to link against libgstreamer.
2128         * gst/base/Makefile.am: link against libgstreamer
2129         * gst/elements/Makefile.am: same
2130
2131 2005-03-31  Andy Wingo  <wingo@pobox.com>
2132
2133         * tests/instantiate/Makefile.am:
2134         * tests/instantiate/caps.c: Add test to test speed of caps copy
2135         and free.
2136
2137         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2138         GMemChunk to be fair.
2139
2140         * gst/gsttrashstack.h: Remove warning about using the fallback
2141         trash stack implementation, it's still faster than malloc.
2142
2143 2005-03-30  Andy Wingo  <wingo@pobox.com>
2144
2145         * tests/complexity.c: Add a copyright.
2146
2147 2005-03-31  Wim Taymans  <wim@fluendo.com>
2148
2149         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2150         (gst_base_transform_class_init), (gst_base_transform_init),
2151         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2152         (gst_base_transform_get_property),
2153         (gst_base_transform_sink_activate),
2154         (gst_base_transform_src_activate),
2155         (gst_base_transform_change_state):
2156         * gst/base/gstbasetransform.h:
2157         * gst/elements/gstidentity.c: (gst_identity_class_init),
2158         (gst_identity_event), (gst_identity_check_perfect),
2159         (gst_identity_transform), (gst_identity_start),
2160         (gst_identity_stop):
2161         Added start/stop methods to transform base class so subclasses 
2162         don't need to deal with state changes even.
2163
2164 2005-03-31  Wim Taymans  <wim@fluendo.com>
2165
2166         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2167         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2168         * gst/gstevent.h:
2169         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2170         (gst_pad_pull_range):
2171         Added rate to the discont event to prepare for variable speed
2172         and reverse playback.
2173
2174 2005-03-29  David Schleef  <ds@schleef.org>
2175
2176         * configure.ac:
2177         * testsuite/trigger/Makefile.am:
2178         * testsuite/trigger/trigger.c: A little example program to show
2179         how trigger-based elements can work.
2180
2181 2005-03-29  Wim Taymans  <wim@fluendo.com>
2182
2183         * gst/base/Makefile.am:
2184         * gst/base/README:
2185         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2186         (gst_basesink_base_init), (gst_basesink_class_init),
2187         (gst_basesink_pad_getcaps), (gst_basesink_init),
2188         (gst_basesink_activate), (gst_basesink_change_state):
2189         * gst/base/gstbasesink.h:
2190         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2191         (gst_base_transform_base_init), (gst_base_transform_finalize),
2192         (gst_base_transform_class_init), (gst_base_transform_init),
2193         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2194         (gst_base_transform_event), (gst_base_transform_getrange),
2195         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2196         (gst_base_transform_set_property),
2197         (gst_base_transform_get_property),
2198         (gst_base_transform_sink_activate),
2199         (gst_base_transform_src_activate),
2200         (gst_base_transform_change_state):
2201         * gst/base/gstbasetransform.h:
2202         * gst/elements/gstidentity.c: (gst_identity_finalize),
2203         (gst_identity_class_init), (gst_identity_init),
2204         (gst_identity_event), (gst_identity_check_perfect),
2205         (gst_identity_transform), (gst_identity_set_property),
2206         (gst_identity_get_property), (gst_identity_change_state):
2207         * gst/elements/gstidentity.h:
2208         * gst/gstelement.c: (gst_element_get_state_func),
2209         (gst_element_lost_state), (gst_element_pads_activate):
2210         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2211         (gst_pad_check_pull_range), (gst_pad_pull_range):
2212         * gst/gstpad.h:
2213         Simplify pad activation.
2214         Added function to check if pull_range can be performed.
2215         Error out when pulling inactive or flushing pads.
2216         Removed const from refcounted types as it does not make sense.
2217         Simplify pad templates in basesink
2218         Added base class for simple 1-to-1 transforms.
2219         Make identity subclass the base transform.
2220
2221 2005-03-29  Andy Wingo  <wingo@pobox.com>
2222
2223         * docs/libs/gstreamer-libs-overrides.txt: 
2224         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2225         really don't understand what's going on, but like whatever. I want
2226         green buildbot!
2227
2228         * docs/gst/Makefile.am:
2229         * docs/libs/Makefile.am: Dist the overrides files.
2230
2231         * check/Makefile.am (clean-local): Remove .libs directories.
2232
2233         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2234         elements to EXTRA_DIST, so po/ files are happy.
2235
2236         * po/POTFILES.in: Er, remove it here.
2237
2238         * po/POTFILES: Remove gstspider.c.
2239
2240         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2241
2242         * docs/libs/gstreamer-libs-docs.sgml: 
2243         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2244         bytestream.
2245
2246         * tests/complexity.c (main): Set the length of the preroll queue
2247         on the sinks to prevent a lockup.
2248
2249         * libs/gst/dataprotocol/Makefile.am: 
2250         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2251         the same as the one in check/gst-libs/gdp.c.
2252
2253         * po/, docs/gst/: Commit automatic changes to docs and po files.
2254
2255         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2256         the versioned libgstbase.
2257
2258         * check/Makefile.am: Depend on an unversioned gst-register, seems
2259         to make autoconf happier.
2260
2261         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2262
2263 2005-03-28  Wim Taymans  <wim@fluendo.com>
2264
2265         * configure.ac:
2266         * docs/design/part-gstelement.txt:
2267         * docs/design/part-negotiation.txt:
2268         * docs/design/part-preroll.txt:
2269         * docs/design/part-scheduling.txt:
2270         * docs/design/part-states.txt:
2271         * gst/Makefile.am:
2272         * gst/base/Makefile.am:
2273         * gst/base/README:
2274         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2275         (gst_basesink_base_init), (gst_basesink_class_init),
2276         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2277         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2278         (gst_basesink_set_pad_functions),
2279         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2280         (gst_basesink_set_property), (gst_basesink_get_property),
2281         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2282         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2283         (gst_basesink_preroll_queue_push),
2284         (gst_basesink_preroll_queue_empty),
2285         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2286         (gst_basesink_event), (gst_basesink_get_times),
2287         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2288         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2289         (gst_basesink_loop), (gst_basesink_activate),
2290         (gst_basesink_change_state):
2291         * gst/base/gstbasesink.h:
2292         * gst/elements/Makefile.am:
2293         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2294         (gst_fakesink_class_init), (gst_fakesink_init),
2295         (gst_fakesink_set_property), (gst_fakesink_get_property),
2296         (gst_fakesink_get_times), (gst_fakesink_event),
2297         (gst_fakesink_preroll), (gst_fakesink_render),
2298         (gst_fakesink_change_state):
2299         * gst/elements/gstfakesink.h:
2300         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2301         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2302         * gst/gstelement.c: (gst_element_add_pad),
2303         (gst_element_get_state_func), (gst_element_abort_state),
2304         (gst_element_commit_state), (gst_element_lost_state),
2305         (gst_element_set_state), (gst_element_pads_activate):
2306         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2307         * gst/gstpipeline.c: (gst_pipeline_send_event),
2308         (gst_pipeline_change_state):
2309         Added state change code.
2310         Added/updated docs.
2311         Added sink base class, make fakesink extend the base class.
2312         Small cleanups in GstPipeline.
2313
2314 2005-03-26  David Schleef  <ds@schleef.org>
2315
2316         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2317         is broken and should be implemented in a different library.
2318         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2319         * gst/gst.h: remove gstcpu.h
2320         * gst/gstcpu.c: remove
2321         * gst/gstcpu.h: remove
2322         * gst/Makefile.am.future: Remove this file.  It's ancient.
2323
2324 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2325
2326         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2327         (gst_bin_send_event):
2328           Add default event/set_manager handlers. The set_manager handler
2329           takes care that the manager is distributed over kids that were
2330           already in the bin before the manager was set. The event handler
2331           is a utility virtual function that sends the event over all sinks,
2332           so that gst_element_send_event (bin, event); has the expected
2333           behaviour.
2334         * gst/gstpad.c: (gst_pad_event_default):
2335           Re-install default event handling for discontinuities, so that
2336           seeking works without requiring hacks in applications or extra
2337           code in sinks.
2338         * gst/gstpipeline.c: (gst_pipeline_class_init),
2339         (gst_pipeline_send_event):
2340           Half hack, half utility: set a pipeline to PAUSED for seek events,
2341           since that is the only way we can guarantee a/v sync. Means that
2342           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2343           and it "just works".
2344
2345 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2346
2347         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2348           Lock/unlock mismatch.
2349
2350 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2351
2352         * docs/faq/gst-uninstalled:
2353           add gst-plugins-base
2354         * docs/gst/Makefile.am:
2355           don't error out until docs are fixed
2356         * docs/gst/gstreamer.types:
2357           remove thread
2358
2359 2005-03-22  Wim Taymans  <wim@fluendo.com>
2360
2361         * check/Makefile.am:
2362         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2363         * gst/gststructure.c: (gst_structure_set_valist),
2364         (gst_structure_copy_conditional):
2365         Activated more tests.
2366         Added message test.
2367         Added G_TYPE_POINTER to GstStructure.
2368         
2369
2370 2005-03-22  Wim Taymans  <wim@fluendo.com>
2371
2372         * docs/design/part-TODO.txt:
2373         * docs/design/part-events.txt:
2374         * docs/design/part-gstbin.txt:
2375         * docs/design/part-gstbus.txt:
2376         * docs/design/part-gstpipeline.txt:
2377         * docs/design/part-messages.txt:
2378         * gst/gstbus.c:
2379         * gst/gstmessage.c:
2380         Docs updates
2381
2382 2005-03-21  Wim Taymans  <wim@fluendo.com>
2383
2384         * gst/gstbus.c: (gst_bus_post):
2385         Fix copy-and-paste error.
2386
2387 2005-03-21  Wim Taymans  <wim@fluendo.com>
2388
2389         * check/Makefile.am:
2390         * gst/Makefile.am:
2391         * gst/elements/Makefile.am:
2392         * gst/elements/gstelements.c:
2393         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2394         (gst_fakesink_event), (gst_fakesink_chain):
2395         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2396         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2397         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2398         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2399         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2400         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2401         (gst_fakesrc_loop), (gst_fakesrc_activate),
2402         (gst_fakesrc_change_state):
2403         * gst/elements/gstfakesrc.h:
2404         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2405         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2406         (gst_filesrc_open_file), (gst_filesrc_loop),
2407         (gst_filesrc_activate), (gst_filesrc_change_state),
2408         (filesrc_find_peek), (filesrc_find_suggest),
2409         (gst_filesrc_type_find):
2410         * gst/elements/gstidentity.c: (gst_identity_finalize),
2411         (gst_identity_class_init), (gst_identity_init),
2412         (gst_identity_proxy_getcaps), (identity_queue_push),
2413         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2414         (gst_identity_getrange), (gst_identity_chain),
2415         (gst_identity_sink_loop), (gst_identity_src_loop),
2416         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2417         (gst_identity_set_property), (gst_identity_get_property),
2418         (gst_identity_change_state):
2419         * gst/elements/gstidentity.h:
2420         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2421         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2422         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2423         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2424         (gst_tee_sink_activate):
2425         * gst/elements/gsttee.h:
2426         * gst/gst.c: (gst_register_core_elements), (init_post):
2427         * gst/gst.h:
2428         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2429         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2430         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2431         (gst_bin_change_state):
2432         * gst/gstbin.h:
2433         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2434         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2435         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2436         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2437         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2438         (bus_watch_callback), (bus_watch_destroy),
2439         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2440         (poll_timeout), (gst_bus_poll):
2441         * gst/gstbus.h:
2442         * gst/gstcaps.h:
2443         * gst/gstdata.h:
2444         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2445         (gst_element_post_message), (gst_element_message_full),
2446         (gst_element_get_state_func), (gst_element_get_state),
2447         (gst_element_abort_state), (gst_element_commit_state),
2448         (gst_element_lost_state), (gst_element_set_state),
2449         (gst_element_pads_activate), (gst_element_change_state),
2450         (gst_element_dispose), (gst_element_set_manager_func),
2451         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2452         (gst_element_set_manager), (gst_element_get_manager),
2453         (gst_element_set_bus), (gst_element_get_bus),
2454         (gst_element_set_scheduler), (gst_element_get_scheduler):
2455         * gst/gstelement.h:
2456         * gst/gstevent.c: (gst_event_new_segment_seek),
2457         (gst_event_new_flush):
2458         * gst/gstevent.h:
2459         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2460         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2461         (gst_message_new_eos), (gst_message_new_error),
2462         (gst_message_new_warning), (gst_message_new_tag),
2463         (gst_message_new_state_changed), (gst_message_new_application),
2464         (gst_message_get_structure), (gst_message_parse_tag),
2465         (gst_message_parse_state_changed), (gst_message_parse_error),
2466         (gst_message_parse_warning):
2467         * gst/gstmessage.h:
2468         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2469         (gst_real_pad_set_property), (gst_pad_set_active),
2470         (gst_pad_is_active), (gst_pad_set_blocked_async),
2471         (gst_pad_set_blocked), (gst_pad_is_blocked),
2472         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2473         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2474         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2475         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2476         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2477         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2478         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2479         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2480         (gst_pad_set_caps), (gst_pad_configure_sink),
2481         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2482         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2483         (gst_real_pad_dispose), (gst_real_pad_finalize),
2484         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2485         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2486         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2487         * gst/gstpad.h:
2488         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2489         (pipeline_bus_handler), (gst_pipeline_change_state),
2490         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2491         * gst/gstpipeline.h:
2492         * gst/gstprobe.h:
2493         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2494         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2495         (gst_queue_link_src), (gst_queue_bufferalloc),
2496         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2497         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2498         (gst_queue_loop), (gst_queue_handle_src_event),
2499         (gst_queue_handle_src_query), (gst_queue_src_activate),
2500         (gst_queue_change_state):
2501         * gst/gstqueue.h:
2502         * gst/gstscheduler.c: (gst_scheduler_init),
2503         (gst_scheduler_dispose), (gst_scheduler_create_task),
2504         (gst_scheduler_factory_create):
2505         * gst/gstscheduler.h:
2506         * gst/gststructure.c: (gst_structure_get_type),
2507         (gst_structure_copy_conditional):
2508         * gst/gststructure.h:
2509         * gst/gsttaginterface.h:
2510         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2511         (gst_task_init), (gst_task_dispose), (gst_task_create),
2512         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2513         (gst_task_pause):
2514         * gst/gsttask.h:
2515         * gst/gstthread.c:
2516         * gst/gstthread.h:
2517         * gst/gsttypes.h:
2518         * gst/schedulers/Makefile.am:
2519         * gst/schedulers/cothreads_compat.h:
2520         * gst/schedulers/entryscheduler.c:
2521         * gst/schedulers/faircothreads.c:
2522         * gst/schedulers/faircothreads.h:
2523         * gst/schedulers/fairscheduler.c:
2524         * gst/schedulers/gstbasicscheduler.c:
2525         * gst/schedulers/gstoptimalscheduler.c:
2526         * gst/schedulers/gthread-cothreads.h:
2527         * gst/schedulers/threadscheduler.c:
2528         (gst_thread_scheduler_task_get_type),
2529         (gst_thread_scheduler_task_class_init),
2530         (gst_thread_scheduler_task_init),
2531         (gst_thread_scheduler_task_start),
2532         (gst_thread_scheduler_task_stop),
2533         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2534         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2535         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2536         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2537         (plugin_init):
2538         * libs/gst/Makefile.am:
2539         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2540         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2541         (gst_file_pad_parent_set):
2542         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2543         (gst_dp_event_from_packet):
2544         * tests/complexity.c: (main):
2545         * tests/mass_elements.c: (main):
2546         * testsuite/states/locked.c: (message_received), (main):
2547         * testsuite/states/parent.c: (main):
2548         * tools/gst-inspect.c: (print_element_flag_info),
2549         (print_implementation_info), (print_pad_info):
2550         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2551         (main):
2552         * tools/gst-md5sum.c: (event_loop), (main):
2553         * tools/gst-typefind.c: (main):
2554         * tools/gst-xmlinspect.c: (print_element_info):
2555         Next big merge.
2556         Added GstBus for mainloop integration.
2557         Added GstMessage for sending notifications on the bus.
2558         Added GstTask as an abstraction for pipeline entry points.
2559         Removed GstThread.
2560         Removed Schedulers.
2561         Simplified GstQueue for multithreaded core.
2562         Made _link threadsafe, removed old capsnego.
2563         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2564         Added pad blocking functions.
2565         Reworked scheduling functions in GstPad to prepare for
2566         scheduling updates soon.
2567         Moved events out of data stream.
2568         Simplified GstEvent types.
2569         Added return values to push/pull.
2570         Removed clocking from GstElement.
2571         Added prototypes for state change function for next merge.
2572         Removed iterate from bins and state change management.
2573         Fixed some elements, disabled others for now.
2574         Fixed -inspect and -launch.
2575         Added check for GstBus.
2576
2577 2005-03-10  Wim Taymans  <wim@fluendo.com>
2578
2579         * docs/design/part-MT-refcounting.txt:
2580         * docs/design/part-clocks.txt:
2581         * docs/design/part-gstelement.txt:
2582         * docs/design/part-gstobject.txt:
2583         * docs/design/part-standards.txt:
2584         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2585         (gst_bin_remove_func), (gst_bin_remove):
2586         * gst/gstbin.h:
2587         * gst/gstbuffer.c:
2588         * gst/gstcaps.h:
2589         * testsuite/clock/clock1.c: (main):
2590         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2591         (main):
2592         * testsuite/dlopen/loadgst.c: (do_test):
2593         * testsuite/refcounting/bin.c: (add_remove_test1),
2594         (add_remove_test2), (main):
2595         * testsuite/refcounting/element.c: (main):
2596         * testsuite/refcounting/element_pad.c: (main):
2597         * testsuite/refcounting/pad.c: (main):
2598         * tools/gst-launch.c: (sigint_handler_sighandler):
2599         * tools/gst-typefind.c: (main):
2600         Doc updates.
2601         Added doc about clock.
2602         removed gst_bin_iterate_recurse_up(), marked methods
2603         for removal.
2604         Fix more testsuites.
2605
2606 2005-03-09  Wim Taymans  <wim@fluendo.com>
2607
2608         * gst/gstpad.c: (gst_pad_get_direction),
2609         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2610         (gst_pad_collect_valist):
2611         * testsuite/bins/interface.c: (main):
2612         * testsuite/caps/audioscale.c: (test_caps):
2613         * testsuite/caps/caps.c: (test1), (test2), (test3):
2614         * testsuite/caps/deserialize.c: (main):
2615         * testsuite/caps/enumcaps.c: (main):
2616         * testsuite/caps/filtercaps.c: (main):
2617         * testsuite/caps/intersect2.c: (main):
2618         * testsuite/caps/random.c: (main):
2619         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2620         * testsuite/caps/sets.c: (check_caps):
2621         * testsuite/caps/simplify.c: (check_caps), (main):
2622         * testsuite/caps/subtract.c: (check_caps):
2623         Fix _pad_get_direction wrt ghostpads.
2624         Fix caps testsuite.
2625
2626 2005-03-09  Wim Taymans  <wim@fluendo.com>
2627
2628         * check/Makefile.am:
2629         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2630         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2631         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2632         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2633         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2634         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2635         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2636         (bin_element_is_sink), (gst_bin_iterate_sinks),
2637         (gst_bin_iterate_all_by_interface):
2638         * gst/gstbin.h:
2639         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2640         (gst_element_change_state), (gst_element_dispose),
2641         (gst_element_finalize), (gst_element_set_loop_function):
2642         * gst/gstelement.h:
2643         * gst/gstiterator.c: (find_custom_fold_func):
2644         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2645         (gst_pad_collectv), (gst_pad_collect_valist),
2646         (gst_pad_template_new):
2647         * gst/gstpipeline.c: (gst_pipeline_class_init),
2648         (gst_pipeline_dispose), (gst_pipeline_set_property),
2649         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2650         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2651         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2652         * gst/gstutils.h:
2653         * gst/schedulers/entryscheduler.c:
2654         * gst/schedulers/gstbasicscheduler.c:
2655         (gst_basic_scheduler_cothreaded_chain),
2656         (gst_basic_scheduler_chain_add_element):
2657         * testsuite/bins/interface.c: (main):
2658         Added GstBin test.
2659         Added GstSystemClock test.
2660         Implemented clock distribution code in GstBin.
2661         Implemented iterate sinks method for future use.
2662         Rearranged gstelement.h
2663         Fix GstIterator comparison bug.
2664         Moved some code to GstPipeline, mostly clocking related.
2665
2666 2005-03-09  Wim Taymans  <wim@fluendo.com>
2667
2668         * configure.ac:
2669         * gst/gst_private.h:
2670         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2671         (gst_bin_remove_func), (gst_bin_remove),
2672         (gst_bin_get_by_name_recurse_up):
2673         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2674         (gst_clock_id_compare_func), (gst_clock_id_wait),
2675         (gst_clock_id_wait_async), (gst_clock_init),
2676         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2677         * gst/gstelement.h:
2678         * gst/gstinfo.c: (_gst_debug_init):
2679         * gst/gstobject.h:
2680         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2681         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2682         * gst/gstpad.h:
2683         Bump version number, we're now 0.9.0
2684         Add future debugging category.
2685         Fix NULL _unref() in _get_by_name_recurse_up
2686         Rearrange gstpad.h.
2687         Update some docs.
2688
2689 2005-03-08  Wim Taymans  <wim@fluendo.com>
2690
2691         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2692         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2693         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2694         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2695         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2696         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2697         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2698         * gst/elements/gstidentity.c: (gst_identity_class_init):
2699         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2700         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2701         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2702         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2703         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2704         (gst_tee_link):
2705         * gst/gstelement.c: (gst_element_class_init),
2706         (gst_element_base_class_init), (gst_element_init),
2707         (gst_element_get_random_pad), (gst_element_wait_state_change),
2708         (gst_element_change_state), (gst_element_dispose),
2709         (gst_element_finalize), (gst_element_set_loop_function):
2710         * gst/gstelement.h:
2711         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2712         * gst/gstthread.c: (gst_thread_class_init),
2713         (gst_thread_release_children_locks), (gst_thread_change_state):
2714         * gst/schedulers/gstbasicscheduler.c:
2715         (gst_basic_scheduler_loopfunc_wrapper),
2716         (gst_basic_scheduler_chain_wrapper),
2717         (gst_basic_scheduler_src_wrapper),
2718         (gst_basic_scheduler_remove_element):
2719         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2720         Remove threadsafe properties. Fix elements because GObject
2721         complains when installing a property before declaring a
2722         set/get_property handler.
2723         Rearrange gstelement.h file, use STATE macros for state locks.
2724         Free mutexes in the finalize method instead of dispose.
2725
2726 2005-03-08  Wim Taymans  <wim@fluendo.com>
2727
2728         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2729         * gst/gstthread.c: (gst_thread_release_children_locks):
2730         Added parentage check.
2731         Fix build og GstThread again.
2732
2733 2005-03-08  Wim Taymans  <wim@fluendo.com>
2734
2735         * docs/design/part-MT-refcounting.txt:
2736         * docs/design/part-conventions.txt:
2737         * docs/design/part-gstobject.txt:
2738         * docs/design/part-relations.txt:
2739         * docs/design/part-standards.txt:
2740         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2741         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2742         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2743         (gst_bin_iterate_all_by_interface):
2744         * gst/gstbuffer.h:
2745         * gst/gstclock.h:
2746         * gst/gstelement.c: (gst_element_class_init),
2747         (gst_element_change_state), (gst_element_set_loop_function):
2748         * gst/gstelement.h:
2749         * gst/gstiterator.c:
2750         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2751         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2752         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2753         (gst_object_set_parent), (gst_object_unparent),
2754         (gst_object_check_uniqueness):
2755         * gst/gstobject.h:
2756         Docs updates, clean up some headers.
2757
2758 2005-03-07  Wim Taymans  <wim@fluendo.com>
2759
2760         * check/.cvsignore:
2761         * check/Makefile.am:
2762         * check/gst-libs/.cvsignore:
2763         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2764         * check/gst/.cvsignore:
2765         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2766         (START_TEST), (gstbus_suite), (main):
2767         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2768         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2769         (gst_data_suite), (main):
2770         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2771         (add_fold_func), (gstiterator_suite), (main):
2772         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2773         (thread_name_object), (thread_name_object_default),
2774         (gst_object_name_compare), (gst_object_suite), (main):
2775         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2776         (gst_pad_suite), (main):
2777         * check/gstcheck.c: (gst_check_log_message_func),
2778         (gst_check_log_critical_func), (gst_check_init):
2779         * check/gstcheck.h:
2780         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2781         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2782         Added checks.
2783
2784 2005-03-07  Wim Taymans  <wim@fluendo.com>
2785
2786         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2787         (gst_list_iterator_next), (gst_list_iterator_resync),
2788         (gst_list_iterator_free), (gst_iterator_new_list),
2789         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2790         (gst_iterator_free), (gst_iterator_push), (filter_next),
2791         (filter_resync), (filter_uninit), (filter_free),
2792         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2793         (gst_iterator_foreach), (find_custom_fold_func),
2794         (gst_iterator_find_custom):
2795         * gst/gstiterator.h:
2796         Added missing files.
2797
2798 2005-03-07  Wim Taymans  <wim@fluendo.com>
2799
2800         * Makefile.am:
2801         * configure.ac:
2802         * docs/design/part-MT-refcounting.txt:
2803         * docs/design/part-conventions.txt:
2804         * docs/design/part-gstobject.txt:
2805         * docs/design/part-relations.txt:
2806         * examples/mixer/mixer.c: (main):
2807         * examples/thread/thread.c: (eos), (main):
2808         * gst/Makefile.am:
2809         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2810         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2811         (gst_spider_plug_from_srcpad):
2812         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2813         (gst_spider_identity_change_state),
2814         (gst_spider_identity_sink_loop_type_finding):
2815         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2816         * gst/elements/gstidentity.c: (gst_identity_init):
2817         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2818         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2819         * gst/elements/gsttypefindelement.c: (free_entry):
2820         * gst/gst.c:
2821         * gst/gst.h:
2822         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2823         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2824         (gst_bin_set_index), (gst_bin_set_element_sched),
2825         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2826         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2827         (gst_bin_iterate_elements), (iterate_child_recurse),
2828         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2829         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2830         (compare_interface), (gst_bin_get_by_interface),
2831         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2832         * gst/gstbin.h:
2833         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2834         (gst_buffer_default_free), (gst_buffer_default_copy),
2835         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2836         (gst_buffer_create_sub):
2837         * gst/gstbuffer.h:
2838         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2839         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2840         (gst_caps_unref), (gst_static_caps_get),
2841         (gst_caps_remove_and_get_structure), (gst_caps_append),
2842         (gst_caps_append_structure), (gst_caps_remove_structure),
2843         (gst_caps_copy_nth), (gst_caps_set_simple),
2844         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2845         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2846         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2847         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2848         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2849         (gst_caps_structure_figure_out_union),
2850         (gst_caps_switch_structures), (gst_caps_do_simplify),
2851         (gst_caps_replace), (gst_caps_from_string),
2852         (gst_caps_copy_conditional):
2853         * gst/gstcaps.h:
2854         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2855         (_gst_clock_id_free), (gst_clock_id_unref),
2856         (gst_clock_id_compare_func), (gst_clock_id_wait),
2857         (gst_clock_id_wait_async), (gst_clock_class_init),
2858         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2859         (gst_clock_get_time), (gst_clock_set_time_adjust),
2860         (gst_clock_set_property), (gst_clock_get_property):
2861         * gst/gstclock.h:
2862         * gst/gstcompat.h:
2863         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2864         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2865         * gst/gstdata.h:
2866         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2867         (gst_element_requires_clock), (gst_element_provides_clock),
2868         (gst_element_set_clock), (gst_element_clock_wait),
2869         (gst_element_wait), (gst_element_set_time_delay),
2870         (gst_element_is_indexable), (gst_element_add_pad),
2871         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2872         (pad_compare_name), (gst_element_get_static_pad),
2873         (gst_element_request_pad), (gst_element_get_request_pad),
2874         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2875         (gst_element_class_get_pad_template_list),
2876         (gst_element_class_get_pad_template), (gst_element_error_func),
2877         (gst_element_get_random_pad), (gst_element_get_event_masks),
2878         (gst_element_send_event), (gst_element_seek),
2879         (gst_element_get_query_types), (gst_element_query),
2880         (gst_element_get_formats), (gst_element_convert),
2881         (gst_element_is_locked_state), (gst_element_set_locked_state),
2882         (gst_element_sync_state_with_parent), (gst_element_change_state),
2883         (gst_element_finalize), (gst_element_yield),
2884         (gst_element_interrupt), (gst_element_set_scheduler),
2885         (gst_element_get_scheduler), (gst_element_set_loop_function):
2886         * gst/gstelement.h:
2887         * gst/gstevent.h:
2888         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2889         (gst_format_get_by_nick), (gst_format_get_details),
2890         (gst_format_iterate_definitions):
2891         * gst/gstformat.h:
2892         * gst/gstindex.c: (gst_index_gtype_resolver):
2893         * gst/gstinfo.c:
2894         * gst/gstinfo.h:
2895         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2896         (gst_mem_chunk_free):
2897         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2898         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2899         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2900         (gst_object_dispatch_properties_changed),
2901         (gst_object_set_name_default), (gst_object_set_name),
2902         (gst_object_get_name), (gst_object_set_name_prefix),
2903         (gst_object_get_name_prefix), (gst_object_set_parent),
2904         (gst_object_get_parent), (gst_object_unparent),
2905         (gst_object_check_uniqueness), (gst_object_save_thyself),
2906         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2907         (gst_object_set_property), (gst_object_get_property),
2908         (gst_object_get_path_string):
2909         * gst/gstobject.h:
2910         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2911         (gst_real_pad_init), (gst_real_pad_get_property),
2912         (gst_pad_custom_new), (gst_pad_get_direction),
2913         (gst_pad_set_active), (gst_pad_is_active),
2914         (gst_pad_set_event_function), (gst_pad_is_linked),
2915         (gst_pad_link_free), (gst_pad_link_intersect),
2916         (gst_pad_link_fixate), (gst_pad_set_caps),
2917         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2918         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2919         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2920         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2921         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2922         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2923         (gst_pad_realize), (gst_pad_get_allowed_caps),
2924         (gst_real_pad_dispose), (gst_real_pad_finalize),
2925         (gst_pad_collectv), (gst_pad_collect_valist),
2926         (gst_pad_template_dispose), (gst_pad_template_new),
2927         (gst_pad_get_internal_links):
2928         * gst/gstpad.h:
2929         * gst/gstpipeline.c: (gst_pipeline_dispose),
2930         (gst_pipeline_change_state):
2931         * gst/gstpipeline.h:
2932         * gst/gstplugin.c:
2933         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2934         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2935         * gst/gstpluginfeature.h:
2936         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2937         * gst/gstquery.c: (_gst_query_type_initialize),
2938         (gst_query_type_register), (gst_query_type_get_by_nick),
2939         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2940         * gst/gstquery.h:
2941         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2942         * gst/gstscheduler.c: (gst_scheduler_add_element),
2943         (gst_scheduler_factory_create):
2944         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2945         (gst_structure_free), (gst_structure_set_name),
2946         (gst_structure_id_set_value), (gst_structure_set_value),
2947         (gst_structure_set_valist), (gst_structure_remove_field),
2948         (gst_structure_remove_fields),
2949         (gst_structure_remove_fields_valist),
2950         (gst_structure_remove_all_fields), (gst_structure_foreach),
2951         (gst_structure_map_in_place),
2952         (gst_caps_structure_fixate_field_nearest_int),
2953         (gst_caps_structure_fixate_field_nearest_double):
2954         * gst/gststructure.h:
2955         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2956         (gst_system_clock_init), (gst_system_clock_dispose),
2957         (gst_system_clock_async_thread),
2958         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2959         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2960         * gst/gstsystemclock.h:
2961         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2962         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2963         * gst/gsttaginterface.c:
2964         * gst/gstthread.c: (gst_thread_dispose),
2965         (gst_thread_release_children_locks), (gst_thread_change_state),
2966         (gst_thread_main_loop):
2967         * gst/gsttrashstack.h:
2968         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2969         * gst/gsttypes.h:
2970         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2971         (gst_element_request_pad), (gst_element_get_pad_from_template),
2972         (gst_element_request_compatible_pad),
2973         (gst_element_get_compatible_pad_filtered),
2974         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2975         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2976         (gst_element_link_many), (gst_element_link),
2977         (gst_element_link_pads), (gst_element_unlink_pads),
2978         (gst_element_unlink_many), (gst_element_unlink),
2979         (gst_pad_can_link_filtered), (gst_pad_can_link),
2980         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2981         (gst_object_default_error), (gst_bin_add_many),
2982         (gst_bin_remove_many), (gst_element_populate_std_props),
2983         (gst_element_class_install_std_props), (gst_buffer_merge),
2984         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2985         (link_fold_func), (gst_pad_proxy_setcaps):
2986         * gst/gstutils.h:
2987         * gst/gstvalue.c: (gst_value_deserialize_string):
2988         * gst/parse/grammar.y:
2989         * gst/schedulers/gstbasicscheduler.c:
2990         (gst_basic_scheduler_cothreaded_chain),
2991         (gst_basic_scheduler_chain_recursive_add),
2992         (gst_basic_scheduler_pad_link):
2993         * gst/schedulers/gstoptimalscheduler.c:
2994         (get_group_schedule_function),
2995         (gst_opt_scheduler_state_transition),
2996         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2997         * libs/gst/bytestream/bytestream.c:
2998         * libs/gst/dataprotocol/dataprotocol.c:
2999         (gst_dp_header_from_buffer):
3000         * po/nb.po:
3001         * po/ru.po:
3002         * tests/threadstate/threadstate2.c: (eos):
3003         * tools/gst-compprep.c: (main):
3004         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
3005         (print_pad_info), (print_children_info):
3006         * tools/gst-launch.c: (idle_func), (main):
3007         * tools/gst-md5sum.c: (idle_func), (main):
3008         * tools/gst-xmlinspect.c: (print_element_info):
3009         First THREADED backport attempt, focusing on adding locks and
3010         making sure the API is threadsafe. Needs more work. More docs
3011         follow this week.
3012
3013 2005-02-24  Andy Wingo  <wingo@pobox.com>
3014
3015         * tests/bench-complexity.scm:
3016         * tests/complexity.gnuplot: New files, good for running complexity
3017         benchmarks.
3018
3019         * tests/Makefile.am:
3020         * tests/complexity.c: New test, sets up N elements, at each level
3021         teeing into M streams per element. Eeeenteresting.
3022
3023         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
3024         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
3025         running bench-mass_elements.scm.
3026
3027         * tests/bench-mass_elements.scm: New script, runs mass_elements
3028         for various numbers of identities, outputting the results to a
3029         file. Requires guile 1.6. Just for testing.
3030
3031 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3032
3033         * gst/schedulers/fairscheduler.c:
3034           compile with debug disabled
3035
3036 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3037
3038         * configure.ac:
3039           hunting season on 0.9 is now OPEN
3040
3041 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
3042
3043         * docs/libs/tmpl/gstcontrol.sgml:
3044         * docs/libs/tmpl/gstdparam.sgml:
3045         * docs/libs/tmpl/gstdplinint.sgml:
3046         * docs/libs/tmpl/gstdpman.sgml:
3047         * docs/libs/tmpl/gstdpsmooth.sgml:
3048         * docs/libs/tmpl/gstunitconvert.sgml:
3049           more docs for the state of dparams
3050
3051 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3052
3053         * gst/gstelementfactory.c: (gst_element_factory_create):
3054         * gst/gstobject.c: (gst_object_init),
3055         (gst_object_set_name_default), (gst_object_set_name):
3056           name objects by default, not in gst_element_factory_create. Allows
3057           using elements created with g_object_new. (fixes #167283)
3058
3059 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3060
3061         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3062           make the time that debugging functions print relative to when
3063           gst_init was called
3064
3065 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3066
3067         * gst/gsttaginterface.c:
3068           Fix inline docs: tag setter vararg functions are NULL-terminated,
3069           GST_TAG_INVALID doesn't exist any more.
3070
3071 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3072
3073         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3074         Allocate the 1 byte more memory that was forgotten!!!!!
3075         fixes memory corruption on 64bit platforms
3076
3077 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3078
3079         * docs/pwg/building-pads.xml:
3080         * docs/pwg/intro-basics.xml:
3081           fixed a few typos, relabeled introductionary list of types
3082         * docs/random/ensonic/dparams.txt:
3083           more notes abut dparam changes
3084         * libs/gst/control/dparam.c: (gst_dparam_attach):
3085         * libs/gst/control/dparammanager.c:
3086         * libs/gst/control/dparammanager.h:
3087           - many comments and notes on dparam implementation
3088           - new dparams are were not initialized to the default value
3089             from param spec
3090
3091 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3092
3093         submitted by: Peter Astakhov
3094
3095         * po/LINGUAS:
3096         * po/ru.po:
3097           adding Russian translation
3098
3099 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3100
3101         * configure.ac:
3102         * docs/gst/Makefile.am:
3103         * docs/libs/Makefile.am:
3104           make sure popt is added to gtk-doc flags.  Fixes #147782.
3105
3106 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3107
3108         * docs/faq/using.xml:
3109           Fix typo in FAQ (artssink => artsdsink)
3110
3111 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3112
3113         * tools/gst-launch.1.in:
3114           Fix typo (#166699).
3115
3116 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3117
3118         * docs/faq/using.xml:
3119           Add -v argument to fakesrc/fakesink gst-launch line,
3120           so that the promised output will actually show up.
3121
3122 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3123
3124         * gst/gstthread.c: (gst_thread_change_state):
3125           Implement state-change error handling (#166073).
3126
3127 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3128
3129         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3130           Release interrupt after handling (#166250).
3131
3132 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3133
3134         * configure.ac:
3135           back to HEAD
3136
3137 === release 0.8.9 ===
3138
3139 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3140
3141         * NEWS:
3142         * RELEASE:
3143         * configure.ac:
3144           releasing 0.8.9, "Like Eating Glass"
3145
3146 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3147
3148         submitted by: Clytie Siddall
3149
3150         * po/vi.po: Added Vietnamese translation
3151
3152 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3153
3154         patch by: Tim Philipp-Müller
3155
3156         * configure.ac:
3157         * gst/gstpad.c:
3158           unref data when probe function returns FALSE.  Fixes #166362
3159
3160 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3161
3162         * gst/gst.c: (gst_init_get_popt_table):
3163           Fix typo (#166269).
3164
3165 2005-02-04  Andy Wingo  <wingo@pobox.com>
3166
3167         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3168         the debugging on whether the caps are compatible.
3169
3170 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3171
3172         * docs/manual/basics-elements.xml:
3173           Fix two typos.
3174
3175 2005-02-02  Wim Taymans  <wim@fluendo.com>
3176
3177         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3178         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3179         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3180         Remove some FIXMEs after analysing and commenting why they
3181         are not issues.
3182
3183 2005-02-02  Wim Taymans  <wim@fluendo.com>
3184
3185         * gst/schedulers/gstoptimalscheduler.c:
3186         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3187         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3188         (get_invalid_call), (chain_invalid_call),
3189         (get_group_schedule_function), (loop_group_schedule_function),
3190         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3191         (gst_opt_scheduler_state_transition),
3192         (gst_opt_scheduler_add_element),
3193         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3194         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3195         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3196         (gst_opt_scheduler_show):
3197         Added lock to protect scheduler data structures.
3198
3199 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3200
3201         * testsuite/threads/threadi.c: (cb_data):
3202           Fix buglet in test.
3203
3204 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3205
3206         * testsuite/threads/Makefile.am:
3207         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3208           On Wim's request, split the test in three separately-compiled
3209           tests that each test a very specific bug. Two of them still fail,
3210           will create bugs for those. threadi.c indicates why they fail.
3211
3212 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3213
3214         * gst/schedulers/gstoptimalscheduler.c:
3215         (get_group_schedule_function):
3216           Try to work with the threading mess that queue_link is.
3217
3218 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3219
3220         * gst/gstbin.c: (gst_bin_remove_func):
3221           Explicitely make an element release locks in a group when being
3222           remove from a bin.
3223         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3224           If there's no scheduler, always return immediately (similar to
3225           gst_element_interrupt).
3226
3227 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3228
3229         * gst/gstbin.c: (gst_bin_child_state_change_func):
3230           Remove a piece of code that could never be reached.
3231         * docs/gst/gstreamer-sections.txt:
3232         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3233         (gst_pad_call_get_function):
3234         * gst/gstpad.h:
3235         * testsuite/pad/Makefile.am:
3236           Fix #150546, enable tests.
3237
3238 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3239
3240         * docs/pwg/advanced-types.xml:
3241           Fix description for buffer-frames=0.
3242         * docs/gst/tmpl/gstbin.sgml:
3243         * gst/gstbin.c: (gst_bin_child_state_change_func),
3244         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3245         * gst/gstbin.h:
3246         * testsuite/threads/Makefile.am:
3247         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3248         (cb_state), (cb_play), (main):
3249           Fix non-recursive state changes to *really* change the state
3250           of the object, and not just call parent_class->state_change.
3251           Fix a lot of lockups caused by this. Fixes #132775. Add test
3252           for the problem. Also enable test to show #142588 (fixed).
3253         * gst/gstthread.c: (gst_thread_change_state),
3254         (gst_thread_child_state_change):
3255           Don't exit the thread if we go to NULL and are inside thread
3256           context. Instead, return control to the main thread context
3257           and exit from there.
3258         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3259           Don't unset virtual functions, since those may still be used.
3260           That's not necessarily correct, but suffices for now.
3261         * configure.ac:
3262         * testsuite/Makefile.am:
3263         * testsuite/pad/Makefile.am:
3264         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3265         (gst_test_sink_base_init), (gst_test_sink_chain),
3266         (gst_test_sink_init), (main):
3267         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3268         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3269         (main):
3270         * testsuite/pad/link.c: (gst_test_element_class_init),
3271         (gst_test_element_base_init), (gst_test_src_get),
3272         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3273         (gst_test_filter_loop), (gst_test_filter_init),
3274         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3275         (cb_error), (main):
3276           Add tests to show #150546. Pass, but should fail (currently
3277           disabled from the testsuite).
3278         * gst/gstscheduler.c: (gst_scheduler_dispose):
3279           Dereference child schedulers on dispose (#94464).
3280         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3281           Fix typo.
3282         * testsuite/threads/thread.c: (main):
3283           Add more debug.
3284
3285 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3286
3287         * gst/gstpad.c: (gst_pad_push):
3288           Oops, revert previous commit, broke testsuite...
3289
3290 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3291
3292         * gst/gstpad.c: (gst_pad_push):
3293           Add check that the pad on which the push is performed is not a
3294           get-based pad (#150546).
3295
3296 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3297
3298         * gst/elements/gsttypefindelement.c:
3299         (gst_type_find_element_handle_event):
3300           Fix buffer pushing if stream EOSes during typefinding.
3301
3302 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3303
3304         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3305
3306         * gst/gstvalue.c: (gst_string_wrap):
3307           Allow NULL-strings as argument (#165365).
3308
3309 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3310
3311         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3312
3313         * gst/schedulers/faircothreads.c:
3314         (gst_fair_scheduler_cothread_queue_show):
3315           Fix build without debug enabled.
3316
3317 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3318
3319         * docs/gst/gstreamer-sections.txt:
3320         * docs/libs/gstreamer-libs-docs.sgml:
3321         * docs/libs/gstreamer-libs-sections.txt:
3322         * docs/libs/tmpl/gstcontrol.sgml:
3323         * docs/libs/tmpl/gstdparam.sgml:
3324         * docs/libs/tmpl/gstdplinint.sgml:
3325         * docs/libs/tmpl/gstdpman.sgml:
3326         * docs/libs/tmpl/gstdpsmooth.sgml:
3327         * docs/libs/tmpl/gstputbits.sgml:
3328         * docs/libs/tmpl/gstunitconvert.sgml:
3329         * libs/gst/control/dparam.c:
3330         * libs/gst/control/dparam.h:
3331         * libs/gst/control/dparammanager.c:
3332         (gst_dpman_add_required_dparam_callback),
3333         (gst_dpman_add_required_dparam_direct),
3334         (gst_dpman_add_required_dparam_array),
3335         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3336         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3337         (gst_dpman_get_manager)
3338           restructured DParam docs
3339
3340 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3341
3342         * gst-element-check.m4:
3343           Only check for gst-inspect if we haven't already
3344           found it in previous element check runs
3345
3346 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3347
3348         * docs/gst/Makefile.am:
3349         * docs/libs/Makefile.am:
3350           fixed install rules to treat style.css as optional
3351
3352 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3353
3354         * docs/gst/Makefile.am:
3355         * docs/libs/Makefile.am:
3356           install style.css along with docs
3357         * docs/gst/tmpl/gstbin.sgml:
3358         * docs/gst/tmpl/gstclock.sgml:
3359         * docs/gst/tmpl/gstdata.sgml:
3360         * docs/gst/tmpl/gstelement.sgml:
3361         * gst/gstbin.h:
3362         * gst/gstelement.c: (gst_element_class_init):
3363         * gst/gstelement.h:
3364           fixing incomplete docs
3365
3366 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3367
3368         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3369           Don't unref seek event twice when fflush() fails
3370           
3371 2005-01-22  David Schleef  <ds@schleef.org>
3372
3373         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3374
3375 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3376
3377         * docs/gst/Makefile.am:
3378         * docs/libs/Makefile.am:
3379           added params for deprecation guards
3380         * gst/gst.c:
3381         * gst/gst.h:
3382         * gst/gsterror.c: (_gst_resource_errors_init),
3383         (_gst_stream_errors_init):
3384         * gst/gsterror.h:
3385           documented some more enums
3386
3387 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3388         * gst/autoplug/gstspideridentity.c:
3389         Cosmetic fix - spider_find_peek should be static
3390         * gst/parse/parse.l:
3391         Applying fix for #164261
3392
3393 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3394
3395         * docs/gst/gstreamer-sections.txt:
3396         * docs/gst/tmpl/gstplugin.sgml:
3397         * docs/libs/gstreamer-libs-sections.txt:
3398         * docs/libs/tmpl/gstcontrol.sgml:
3399         * gst/gstbuffer.h:
3400         * gst/gsttag.h:
3401         * gst/gstvalue.c:
3402           added docs for the TAG defines
3403
3404 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3405
3406         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3407           Only unref entry if there is an entry.
3408
3409 2005-01-17  Wim Taymans  <wim@fluendo.com>
3410
3411         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3412         (remove_from_group), (schedule_group), (normalize_group),
3413         (gst_opt_scheduler_iterate):
3414         Also ref/unref decoupled elements before iterating the
3415         group since they are not added to the list of elements.
3416
3417 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3418
3419         * docs/manual/highlevel-components.xml:
3420           Add subtitle/streamselection as new features to playbin.
3421
3422 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3423
3424         * docs/manual/manual.xml:
3425           Re-enable dataaccess docs (oops).
3426
3427 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3428
3429         * docs/pwg/advanced-types.xml:
3430         * docs/random/mimetypes:
3431           Add documentation on libsndfile types (#163309), by Steve Baker
3432           <steve@stevebaker.org>.
3433         * gst/gstelement.c: (gst_element_release_request_pad):
3434           If an element has no explicit function, just remove the pad.
3435
3436 2005-01-17  Luca Ognibene  <luogni@tin.it>
3437
3438         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3439
3440         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3441           Fix memleak (#163801).
3442
3443 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3444
3445         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3446           I think this is actually more correct...
3447
3448 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3449
3450         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3451           Another workaround for memory access while destroyed in callback.
3452           Please, someone with refcount knowledge, have a look at this.
3453
3454 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3455
3456         * docs/faq/faq.xml:
3457         * docs/faq/legal.xml:
3458           move the legal Q&A here
3459
3460 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3461
3462         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3463         (gst_tee_request_new_pad):
3464           Fix negotiation.
3465
3466 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3467
3468         * docs/random/omega/caps2:
3469         * testsuite/caps/caps_strings:
3470           replace framerate aproximations by their real value
3471           (24000/1001, 30000/1001, 60000/1001)
3472           Partially fixes bug #164049
3473
3474 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3475
3476         * docs/gst/Makefile.am:
3477           don't fail on the stupid GstPoptOption
3478
3479 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3480
3481         * gst/gstpad.h:
3482         * gst/gstprobe.c:
3483           allow probes to work on ghost pads by realizing the pad
3484           probe debugging
3485
3486 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3487
3488         * docs/gst/gstreamer-sections.txt:
3489         * docs/gst/tmpl/gstpad.sgml:
3490         * gst/gstpad.c: (gst_pad_set_active_recursive):
3491         * gst/gstpad.h:
3492           Add gst_pad_set_active_recursive().
3493
3494 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3495
3496         * docs/random/release:
3497           updates
3498         * gst/gst_private.h:
3499         * gst/gstinfo.c:
3500         * gst/gstobject.c:
3501           move deep_notify logging to a new category
3502         * gst/gstprobe.c:
3503         * gst/gstprobe.h:
3504           add stuff so bindings can wrap probes
3505
3506 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3507
3508         * gst/gstplugin.c: (gst_plugin_load):
3509           Fix plugin loading if plugin/lib was already loaded. Fixes
3510           #163383
3511
3512 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3513
3514         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3515
3516         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3517           Protect plugin loading by a mutex so it's threadsafe. Fixes
3518           #163234.
3519
3520 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3521
3522         * gst/gstevent.c: (_gst_event_copy):
3523           Reference source object when copying events, since it'll be
3524           dereferenced on event dereferencing as well.
3525
3526 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3527
3528         * docs/gst/gstreamer-sections.txt:
3529         * docs/gst/tmpl/gstevent.sgml:
3530         * gst/gstevent.c: (gst_event_new_filler_stamped),
3531         (gst_event_filler_get_duration):
3532         * gst/gstevent.h:
3533           Add two new functions for filler events (which are used to
3534           synchronize streams if one of them is not having any data
3535           for a while) without interrupting the actual data-stream.
3536           Basically a no-op.
3537         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3538         (gst_queue_link_sink), (gst_queue_link_src),
3539         (gst_queue_change_state):
3540           Allow for renegotiation while filled. Required for stream
3541           switching while playing.
3542
3543 2005-01-08  Benjamin Otte  <otte@gnome.org>
3544
3545         * gst/gstelement.c: (gst_element_link_many):
3546           fix up g_return_if_fail's
3547         * po/LINGUAS:
3548         * po/de.po:
3549           add German translation, that was somehow not included
3550
3551 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3552
3553         * docs/random/mimetypes:
3554           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3555           do not add them to riff-lib as they are not common
3556
3557 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3558
3559         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3560           Check for existence of probe after performing the probe before
3561           re-accessing it to prevent segfaults caused by removal of the
3562           probe in the callback.
3563
3564 2005-01-05  David Schleef  <ds@schleef.org>
3565
3566         * testsuite/registry/Makefile.am:
3567         * testsuite/registry/gst-print-formats.c:
3568         (print_pad_templates_info), (print_element_list),
3569         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3570         (g_list_uniqify), (get_pad_templates_info),
3571         (get_element_mime_list), (print_mime_list), (main): A little
3572         program that looks through the registry to find elements of
3573         a given type.  Not particularly interesting as a test, except
3574         that there's no other test covering the same area.
3575
3576 2005-01-05  David Schleef  <ds@schleef.org>
3577
3578         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3579         (fault_handler_sigaction), (fault_spin),
3580         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3581         in signal.h-type signal handlers by not calling forbidden functions,
3582         including gst_element_set_state().
3583
3584 2005-01-05  David Schleef  <ds@schleef.org>
3585
3586         * gst/gstvalue.h: Mark _gst_reserved[] as private
3587
3588 2005-01-05  David Schleef  <ds@schleef.org>
3589
3590         * gst/gstvalue.c: Fix doc build problem.
3591
3592 2005-01-05  David Schleef  <ds@schleef.org>
3593
3594         * gst/gstvalue.c: Add some documentation
3595
3596 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3597
3598         * docs/README:
3599           another shell oneliner for empty return value docs
3600         * gst/gstcaps.c:
3601         * gst/gstvalue.c:
3602         * libs/gst/control/dparam.c:
3603           more doc fixes (parameters and return values)
3604
3605 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3606
3607         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3608
3609         * gst/gstregistry.h:
3610         * gst/registries/gstxmlregistry.c:
3611           Fix macro's for Mingw (fixes #162276).
3612
3613 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3614
3615         * docs/README:
3616           quick shell oneliner to find undocumented members
3617         * docs/gst/tmpl/gstplugin.sgml:
3618         * docs/gst/tmpl/gstscheduler.sgml:
3619         * docs/gst/tmpl/gstthread.sgml:
3620           more enumtypes cleanup
3621         * gst/gsterror.h:
3622           activated documentation comments, now someone needs to document
3623           the enums :(
3624
3625 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3626
3627         * docs/manual/manual.xml:
3628           Add dataaccess part (doh!).
3629
3630 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3631
3632         * docs/manual/advanced-autoplugging.xml:
3633           Fix typo (intiate -> initiate).
3634
3635 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3636
3637         * docs/random/bbb/streamselection:
3638           Add some notes on how to handle multi-subtitle/-audio streams.
3639
3640 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3641
3642         * docs/gst/gstreamer-docs.sgml:
3643         * docs/gst/gstreamer-sections.txt:
3644         * docs/gst/tmpl/gstenumtypes.sgml:
3645         * docs/gst/tmpl/gsterror.sgml:
3646         * docs/gst/tmpl/gstevent.sgml:
3647         * docs/gst/tmpl/gstpad.sgml:
3648         * docs/gst/tmpl/gstpadtemplate.sgml:
3649         * docs/gst/tmpl/gstthread.sgml:
3650           removed gstenumtypes section from docs and put all the enums into
3651           their sections
3652
3653 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3654
3655         * gst/gstplugin.c:
3656           document gst_library_load a bit more (riff special case + return
3657           value if already loaded)
3658         * testsuite/bytestream/filepadsink.c:
3659           plugin name is 'gstbytestream', not 'bytestream'
3660
3661 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3662
3663         * docs/random/bbb/subtitles:
3664           Add some first mind rumblings on proper subtitle support.
3665
3666 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3667
3668         * po/ca.po:
3669         * po/sv.po:
3670           updated translations
3671
3672 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3673
3674         * docs/manual/advanced-dataaccess.xml:
3675           Add section on how to use fakesrc/fakesink/identity in your
3676           application, plus section on how to embed plugins. Also mention
3677           probes.
3678         * docs/manual/appendix-checklist.xml:
3679         * docs/manual/appendix-debugging.xml:
3680         * docs/manual/appendix-gnome.xml:
3681         * docs/manual/appendix-integration.xml:
3682           Debug -> checklist, GNOME -> integration, add sections on Linux,
3683           KDE integration and add other things useful for application
3684           development.
3685         * docs/manual/manual.xml:
3686           Remove some fixmes, update some file pointers.
3687         * docs/pwg/appendix-checklist.xml:
3688           Fix typo.
3689         * docs/pwg/building-boiler.xml:
3690           Remove ugly header and add commented fixme.
3691         * docs/pwg/pwg.xml:
3692           Add fixme.
3693         * examples/manual/Makefile.am:
3694           Add example for added docs.
3695
3696 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3697
3698         * configure.ac:
3699           back to HEAD
3700
3701 === release 0.8.8 ===
3702
3703 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3704
3705         * NEWS:
3706         * RELEASE:
3707         * configure.ac:
3708           Releasing 0.8.8, "I'll Take Care Of You"
3709
3710 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3711
3712         * configure.ac:
3713           second prerelease
3714
3715 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3716
3717         patch by: Wim Taymans
3718
3719         * gst/gstbin.c:
3720           Fix for #159852 - make iterate emission threadsafe
3721
3722 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3723
3724         * docs/faq/cvs.xml:
3725           notes about new fdo account request
3726
3727 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3728
3729         * docs/gst/gstreamer-docs.sgml:
3730         * docs/gst/tmpl/gstenumtypes.sgml:
3731         * docs/gst/tmpl/gstplugin.sgml:
3732         * docs/libs/gstreamer-libs-docs.sgml:
3733           Added missing short docs. Added ids for navigation.
3734
3735 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3736
3737         * docs/manual/advanced-autoplugging.xml:
3738         * docs/manual/advanced-schedulers.xml:
3739         * docs/manual/advanced-threads.xml:
3740           Rewrites. Remove cothreads, go a bit into opt specifically,
3741           document threads and their gotchas, and do some technical stuff
3742           on autoplugging plus add some working examples. Fixes #157395.
3743         * examples/manual/Makefile.am:
3744           Add typefind/autoplugger example (one that actually works).
3745           Remove queue example since it's a duplicate of the thread one.
3746
3747 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3748
3749         * gst/gstvalue.c: (gst_value_deserialize_string):
3750           use deprecated g_value_set_string_take_ownership to keep compatible
3751           with glib 2.2
3752
3753 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3754
3755         * gst/gstvalue.c: (gst_value_deserialize_string):
3756           revert last patch, only dom a g_utf8_validate now before accepting
3757           the string - caps parsing strips " from strings so we can't rely on
3758           them
3759         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3760           disable a test that tested the above and comment it
3761
3762 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3763
3764         Patch reviewed by David Schleef  <ds@schleef.org>
3765
3766         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3767         bug #153882)
3768         * win32/gstenumtypes.h: same
3769
3770 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3771
3772         * gst/gstpad.c: (gst_pad_query):
3773           Do query on realized pad, similar to how convert/send_event handle
3774           this. Also makes sense, since this pad belongs to the function to
3775           which this query will be sent. Fixes #158163.
3776
3777 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3778
3779         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3780
3781 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3782
3783         * docs/faq/general.xml: fix pipeline to actually work
3784
3785 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3786
3787         * gst/gstvalue.c: (gst_value_deserialize_string):
3788           check that a simple string that gets deserialized does not contain
3789           invalid characters
3790         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3791           remove a test that tested a wring behaviour
3792
3793 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3794
3795         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3796
3797         * docs/manual/intro-motivation.xml:
3798           Fix typos.
3799
3800 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3801
3802         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3803
3804         * docs/gst/tmpl/gstprobe.sgml:
3805           Fix documentation of probe callback - it is supposed to return
3806           FALSE, not TRUE, to remove data from the stream (#159087).
3807
3808 2004-12-16  Daniel Gazard  <dany42@free.fr>
3809
3810         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3811
3812         * gst/gstelementfactory.c: (gst_element_factory_create):
3813           Fix compile failure if compiling without libxml2 support (#149936).
3814
3815 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3816
3817         * docs/manual/advanced-autoplugging.xml:
3818         * docs/manual/highlevel-components.xml:
3819           Move spider from autoplugging to components. Autoplugging is for
3820           internals, not for solutions. ;-).
3821
3822 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3823
3824         * docs/random/ds/0.9-suggested-changes:
3825           Make note on device/location/uri property names.
3826
3827 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3828
3829         * docs/manual/advanced-autoplugging.xml:
3830         * docs/manual/advanced-clocks.xml:
3831         * docs/manual/advanced-interfaces.xml:
3832         * docs/manual/advanced-metadata.xml:
3833         * docs/manual/advanced-position.xml:
3834         * docs/manual/advanced-schedulers.xml:
3835         * docs/manual/advanced-threads.xml:
3836         * docs/manual/appendix-gnome.xml:
3837         * docs/manual/appendix-programs.xml:
3838         * docs/manual/appendix-quotes.xml:
3839         * docs/manual/autoplugging.xml:
3840         * docs/manual/basics-bins.xml:
3841         * docs/manual/basics-data.xml:
3842         * docs/manual/basics-elements.xml:
3843         * docs/manual/basics-helloworld.xml:
3844         * docs/manual/basics-init.xml:
3845         * docs/manual/basics-pads.xml:
3846         * docs/manual/basics-plugins.xml:
3847         * docs/manual/bins-api.xml:
3848         * docs/manual/bins.xml:
3849         * docs/manual/buffers-api.xml:
3850         * docs/manual/buffers.xml:
3851         * docs/manual/clocks.xml:
3852         * docs/manual/components.xml:
3853         * docs/manual/cothreads.xml:
3854         * docs/manual/debugging.xml:
3855         * docs/manual/dparams-app.xml:
3856         * docs/manual/dynamic.xml:
3857         * docs/manual/elements-api.xml:
3858         * docs/manual/elements.xml:
3859         * docs/manual/factories.xml:
3860         * docs/manual/gnome.xml:
3861         * docs/manual/goals.xml:
3862         * docs/manual/helloworld.xml:
3863         * docs/manual/helloworld2.xml:
3864         * docs/manual/highlevel-components.xml:
3865         * docs/manual/highlevel-xml.xml:
3866         * docs/manual/init-api.xml:
3867         * docs/manual/intro-basics.xml:
3868         * docs/manual/intro-motivation.xml:
3869         * docs/manual/intro-preface.xml:
3870         * docs/manual/intro.xml:
3871         * docs/manual/links-api.xml:
3872         * docs/manual/links.xml:
3873         * docs/manual/manual.xml:
3874         * docs/manual/motivation.xml:
3875         * docs/manual/pads-api.xml:
3876         * docs/manual/pads.xml:
3877         * docs/manual/plugins-api.xml:
3878         * docs/manual/plugins.xml:
3879         * docs/manual/programs.xml:
3880         * docs/manual/queues.xml:
3881         * docs/manual/quotes.xml:
3882         * docs/manual/schedulers.xml:
3883         * docs/manual/states-api.xml:
3884         * docs/manual/states.xml:
3885         * docs/manual/threads.xml:
3886         * docs/manual/typedetection.xml:
3887         * docs/manual/win32.xml:
3888         * docs/manual/xml.xml:
3889           Try 2. This time, include a short preface as a "general
3890           introduction", also add code blocks around all code samples
3891           so they get compiled. We still need a way to tell readers
3892           the filename of the code sample. In some cases, don't show
3893           all code in the documentation, but do include it in the generated
3894           code. This allows for focussing on specific bits in the docs,
3895           while still having a full test application available.
3896         * examples/manual/Makefile.am:
3897           Fix up examples for new ADM. Add several of the new examples that
3898           were either added or were missing from the build system.
3899         * examples/manual/extract.pl:
3900           Allow nameless blocks.
3901
3902 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3903
3904         * docs/manual/elements-api.xml:
3905         * docs/manual/helloworld.xml:
3906         * examples/manual/extract.pl:
3907           fix last example.  Add example of adding code blocks that are not
3908           shown in docbook output.
3909
3910 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3911
3912         * docs/manual/dynamic.xml:
3913         * docs/manual/elements-api.xml:
3914         * docs/manual/gnome.xml:
3915         * docs/manual/helloworld2.xml:
3916         * docs/manual/init-api.xml:
3917         * docs/manual/queues.xml:
3918         * docs/manual/threads.xml:
3919         * docs/manual/xml.xml:
3920         * examples/manual/extract.pl:
3921           Make it possible to extract example code from separate blocks.
3922           Should make Ronald happy.
3923
3924 2004-12-15  Wim Taymans  <wim@fluendo.com>
3925
3926         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3927         (remove_from_group), (group_elements_set_visited),
3928         (normalize_group), (gst_opt_scheduler_iterate):
3929         Fix bug where a flag was not updated on a decoupled entry point 
3930         because we were just checking the group element list and decoupled
3931         elements are not in that list..
3932
3933 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3934
3935         * docs/manual/advanced-autoplugging.xml:
3936         * docs/manual/advanced-clocks.xml:
3937         * docs/manual/advanced-dparams.xml:
3938         * docs/manual/advanced-interfaces.xml:
3939         * docs/manual/advanced-metadata.xml:
3940         * docs/manual/advanced-position.xml:
3941         * docs/manual/advanced-schedulers.xml:
3942         * docs/manual/advanced-threads.xml:
3943         * docs/manual/appendix-debugging.xml:
3944         * docs/manual/appendix-gnome.xml:
3945         * docs/manual/appendix-programs.xml:
3946         * docs/manual/appendix-quotes.xml:
3947         * docs/manual/appendix-win32.xml:
3948         * docs/manual/autoplugging.xml:
3949         * docs/manual/basics-bins.xml:
3950         * docs/manual/basics-data.xml:
3951         * docs/manual/basics-elements.xml:
3952         * docs/manual/basics-helloworld.xml:
3953         * docs/manual/basics-init.xml:
3954         * docs/manual/basics-pads.xml:
3955         * docs/manual/basics-plugins.xml:
3956         * docs/manual/bins-api.xml:
3957         * docs/manual/bins.xml:
3958         * docs/manual/buffers-api.xml:
3959         * docs/manual/buffers.xml:
3960         * docs/manual/clocks.xml:
3961         * docs/manual/components.xml:
3962         * docs/manual/cothreads.xml:
3963         * docs/manual/debugging.xml:
3964         * docs/manual/dparams-app.xml:
3965         * docs/manual/dynamic.xml:
3966         * docs/manual/elements-api.xml:
3967         * docs/manual/elements.xml:
3968         * docs/manual/factories.xml:
3969         * docs/manual/gnome.xml:
3970         * docs/manual/goals.xml:
3971         * docs/manual/helloworld.xml:
3972         * docs/manual/helloworld2.xml:
3973         * docs/manual/highlevel-components.xml:
3974         * docs/manual/highlevel-xml.xml:
3975         * docs/manual/init-api.xml:
3976         * docs/manual/intro-motivation.xml:
3977         * docs/manual/intro-preface.xml:
3978         * docs/manual/intro.xml:
3979         * docs/manual/links-api.xml:
3980         * docs/manual/links.xml:
3981         * docs/manual/manual.xml:
3982         * docs/manual/motivation.xml:
3983         * docs/manual/pads-api.xml:
3984         * docs/manual/pads.xml:
3985         * docs/manual/plugins-api.xml:
3986         * docs/manual/plugins.xml:
3987         * docs/manual/programs.xml:
3988         * docs/manual/queues.xml:
3989         * docs/manual/quotes.xml:
3990         * docs/manual/schedulers.xml:
3991         * docs/manual/states-api.xml:
3992         * docs/manual/states.xml:
3993         * docs/manual/threads.xml:
3994         * docs/manual/typedetection.xml:
3995         * docs/manual/win32.xml:
3996         * docs/manual/xml.xml:
3997           First try at rewriting the ADM. Needs lotsamore work, but some
3998           parts might already be somewhat useful.
3999         * docs/pwg/advanced-interfaces.xml:
4000           Remove properties interface, it never actually existed (except for
4001           on my HD...).
4002
4003 2004-12-13  David Schleef  <ds@schleef.org>
4004
4005         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
4006         be NULL (bug #160220).
4007
4008 2004-12-13  David Schleef  <ds@schleef.org>
4009
4010         * configure.ac: remove all mmx stuff, because it's not used.
4011         * docs/random/ds/0.9-suggested-changes: additional notes
4012         * include/Makefile.am: we don't use these anymore
4013         * include/mmx.h: remove
4014         * include/sse.h: remove
4015
4016 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4017
4018         * docs/random/mimetypes:
4019           Add FOURCC code for h264 codec (VSSH)
4020           Add alternate FOURCC codes for h263 related codecs
4021
4022 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
4023
4024         * docs/manual/programs.xml:
4025           Added more gst-launch examples.
4026
4027 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4028
4029         * gst/gstqueue.c: (gst_queue_handle_src_query):
4030           Check for availability again.
4031
4032 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4033
4034         * gst/gstcaps.c: (gst_caps_compare_structures):
4035           Simple caps go first. This has the nice side-effect of fixing an
4036           obscure warning.
4037
4038 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4039
4040         * gst/gstversion.h.in:
4041           Protect header.
4042
4043 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4044
4045         * gst/schedulers/gstoptimalscheduler.c:
4046         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4047         (gst_opt_scheduler_get_wrapper):
4048           When we're recursing into a chain run, only run the directly
4049           related group, not all queued ones. This will fix a possible
4050           deadlock in chains with more than two groups.
4051
4052 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4053
4054         * autogen.sh:
4055           remove patch if autopoint fails
4056
4057 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4058
4059         * docs/gst/gstreamer-sections.txt:
4060           Document Thomas' addition, fix build, make Luis the sheriff happy.
4061
4062 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4063
4064         * gst/gstplugin.c:
4065         * gst/gstplugin.h:
4066           add accessor for version field
4067
4068 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4069
4070         submitted by: Luca Ferretti <elle.uca@infinito.it>
4071
4072         * po/LINGUAS:
4073         * po/it.po:
4074           New tranlation added: Italian
4075
4076 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4077
4078         * gst/gstpad.c: (gst_pad_is_negotiated),
4079         (gst_pad_get_negotiated_caps):
4080           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4081           it doesn't actually check the contents), so be sure to hand it
4082           a RealPad else we'll crash.
4083
4084 2004-12-03  Wim Taymans  <wim@fluendo.com>
4085
4086         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4087         (gst_queue_link), (gst_queue_handle_src_query):
4088         Reverted to 1.110 until this makes the testsuite and various
4089         apps work.
4090
4091 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4092
4093         * docs/upload.mak: fix included CVS conflict strings
4094
4095 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4096
4097         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4098
4099         * gst/gstelement.c: (gst_element_error_full):
4100           Use g_error_new_literal because error text may have
4101           percentage signs in it. Fixes #160019.
4102
4103 2004-12-01  Benjamin Otte  <otte@gnome.org>
4104
4105         * gst/elements/gstbufferstore.c:
4106         (gst_buffer_store_add_buffer_func):
4107           don't try to make subbuffers bigger than they can be. (fixes
4108           #159970)
4109
4110 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4111
4112         * docs/gst/gstreamer-sections.txt:
4113         * docs/gst/tmpl/gstvalue.sgml:
4114           Add new function to docs to fix build.
4115
4116 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4117
4118         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4119         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4120         (_gst_pad_default_fixate_foreach):
4121         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4122         * gst/gstvalue.h:
4123           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4124           in some cases (arrays), the fixedness depends on the content.
4125         * gst/gstqueue.c: (gst_queue_handle_src_query):
4126           Check for availability before doing something.
4127
4128 2004-11-29  Wim Taymans  <wim@fluendo.com>
4129
4130         * testsuite/threads/Makefile.am:
4131         * testsuite/threads/signals.c: (gst_test_get_type),
4132         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4133         (gst_test_set_property), (gst_test_get_property),
4134         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4135         (gst_test_do_prop), (run_thread), (main):
4136         Added a bunch of testcases that show threadsafety bugs in glib.
4137
4138 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4139
4140         * docs/manual/programs.xml:
4141           Added a first batch of gst-launch examples, as provided by Ronald
4142           and others from the devel-mlist
4143
4144 2004-11-28  Benjamin Otte  <otte@gnome.org>
4145
4146         * gst/gstelement.c: (gst_element_negotiate_pads):
4147           simplify
4148         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4149         (gst_value_serialize_string), (gst_value_deserialize_string):
4150           add unwrapping of previously wrapped strings. Fix bug in wrapping
4151           while at it.
4152         * testsuite/caps/value_serialize.c: (test1),
4153         (test_string_serialization), (test_string_deserialization), (main):
4154           add tests for string (de)serialization
4155
4156 2004-11-26  Wim Taymans  <wim@fluendo.com>
4157
4158         * testsuite/threads/159566.c: (object_deep_notify), (main):
4159         * testsuite/threads/Makefile.am:
4160         Added testsuite to show bug #159566
4161
4162 2004-11-25  Wim Taymans  <wim@fluendo.com>
4163
4164         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4165         (gst_thread_child_state_change), (gst_thread_main_loop):
4166         Ref the thread object in the GThread mainloop. Break out of the
4167         thread mainloop if it holds the last ref. This properly exits
4168         the threads when disposing the thread from its own context. It
4169         also avoids possible deadlocks in the dispose function.
4170
4171 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4172
4173         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4174         it is necessary to wait.
4175
4176 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4177
4178         * docs/pwg/building-boiler.xml:
4179           Make description somewhat clearer.
4180
4181 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4182
4183         * docs/upload.mak:
4184           Apparently docs changed location on FDO's server.
4185
4186 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4187
4188         * docs/pwg/appendix-checklist.xml:
4189           Add some random notes on things to check when writing an element.
4190           This list can be extended as people see fit.
4191
4192 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4193
4194         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4195         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4196         pad. The queue will now wait until it is empty and forward the new
4197         caps to the source.
4198         * gst/gstbin.c (gst_bin_set_element_sched)
4199         (gst_bin_unset_element_sched): Make sure that all elements and
4200         links are registered and unregistered with the scheduler exactly
4201         once. This elaborates on a fix by Benjamin Otte, but
4202         guarantees that decoupled elements are also registered.
4203
4204 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4205
4206         * docs/manual/quotes.xml:
4207           add a quote
4208         * configure.ac:
4209         * gst/gst.c:
4210         * gst/gstinfo.c:
4211           add LIBDIR and move init message higher up so it's at the start
4212
4213 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4214
4215         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4216         * gstreamer.spec.in: add fair
4217
4218 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4219
4220         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4221         * gst/elements/gstidentity.c: (gst_identity_class_init):
4222           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4223           <teuf@gnome.org> (#157263).
4224         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4225         (gst_type_find_handle_src_query):
4226           Subtract size of internally stored data from position queries.
4227
4228 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4229
4230         * gst/schedulers/fairscheduler.c:
4231         * gst/schedulers/faircothreads.c:
4232         * gst/schedulers/faircothreads.h:
4233         New cothread based scheduler: Fair scheduler.
4234         * gst/schedulers/gthread-cothreads.h: 
4235         Add the standard #if around the whole file.
4236         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4237         compilation of the functions defined in this file. This is
4238         necessary to be able to use this file as a normal header.
4239         * gst/schedulers/Makefile.am: Add compiling support for fair
4240         scheduler.
4241         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4242         scheduler cothreads layer from documentation generation.
4243
4244 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4245
4246         * gst/autoplug/gstspideridentity.c:
4247         (gst_spider_identity_sink_loop_type_finding):
4248           Don't crash if that function is not implemented.
4249
4250 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4251
4252         * docs/pwg/advanced-types.xml:
4253           Another typo.
4254
4255 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4256
4257         * docs/pwg/intro-preface.xml:
4258           Hm, ok, so the brackets weren't really useful...
4259         * docs/pwg/other-ntoone.xml:
4260           Fix embarassing typo.
4261
4262 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4263
4264         * docs/pwg/intro-preface.xml:
4265           Rewrite preface.
4266
4267 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4268
4269         * docs/pwg/advanced-scheduling.xml:
4270         * docs/pwg/advanced-tagging.xml:
4271         * docs/pwg/advanced-types.xml:
4272         * docs/pwg/building-boiler.xml:
4273         * docs/pwg/building-chainfn.xml:
4274         * docs/pwg/building-signals.xml:
4275         * docs/pwg/building-state.xml:
4276         * docs/pwg/building-testapp.xml:
4277         * docs/pwg/intro-basics.xml:
4278         * docs/pwg/other-manager.xml:
4279         * docs/pwg/other-source.xml:
4280           Typo fixes.
4281         * docs/pwg/other-manager.xml:
4282           Add some first content. No example code yet.
4283         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4284           Remove double newlines.
4285
4286 2004-11-04  Wim Taymans  <wim@fluendo.com>
4287
4288         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4289         (remove_from_group), (normalize_group), (group_migrate_connected),
4290         (gst_opt_scheduler_iterate):
4291         * testsuite/schedulers/.cvsignore:
4292         * testsuite/schedulers/Makefile.am:
4293         * testsuite/schedulers/queue_link.c: (main):
4294         Added testcase for scheduler segfault.
4295         Fix scheduler segfault when removing a decoupled
4296         entry point as the last element from a group.
4297
4298 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4299
4300         * gst/gstmarshal.list: add missing marshaller, fixes build
4301
4302 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4303
4304         * docs/random/signal: added notes about using BOXED for GstBuffer
4305         signal marshallers, not POINTER
4306
4307 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4308
4309         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4310         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4311         POINTER=>BOXED changes to marshal GstBuffers
4312
4313 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4314
4315         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4316         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4317
4318 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4319
4320         * docs/gst/gstreamer-sections.txt:
4321         * docs/gst/tmpl/gstcaps.sgml:
4322         * docs/gst/tmpl/gsterror.sgml:
4323         * docs/gst/tmpl/gstinfo.sgml:
4324         * docs/gst/tmpl/gstmacros.sgml:
4325         * docs/gst/tmpl/gstutils.sgml:
4326         * docs/random/ensonic/interfaces.txt:
4327         * gst/gstinfo.h:
4328           added some more docs, removed two obsolete defines
4329
4330 2004-11-02  Kjartan Maraas <as at gnome.org>
4331
4332         reviewed by: Wim Taymans, Ronald Bultje.
4333
4334         * gst/cothreads.c: (cothread_create):
4335         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4336         (gst_bin_child_state_change_func):
4337         * gst/gstbuffer.c: (gst_buffer_span):
4338         * gst/gstelement.c: (gst_element_get_index),
4339         (gst_element_get_event_masks), (gst_element_get_query_types),
4340         (gst_element_get_formats):
4341         * gst/gsterror.c: (_gst_core_errors_init),
4342         (_gst_library_errors_init), (_gst_resource_errors_init),
4343         (_gst_stream_errors_init):
4344         * gst/gstobject.c: (gst_object_default_deep_notify):
4345         * gst/gstpad.c: (gst_pad_get_event_masks),
4346         (gst_pad_get_internal_links_default):
4347         * gst/gstplugin.c: (gst_plugin_register_func),
4348         (gst_plugin_get_module):
4349         * gst/gststructure.c: (gst_structure_get_string),
4350         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4351         (gst_structure_to_abbr):
4352         * gst/gstutils.c: (gst_print_element_args):
4353         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4354         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4355         Aplied part of patch #157127: Cleanup of issues reported by 
4356         sparse.
4357         Also do not try to use cothreads when there is no cothread
4358         context yet.
4359
4360 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4361
4362         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4363         (gst_opt_scheduler_iterate):
4364         Applied patch #154061. Running a pipeline in which an element 
4365         calls GST_ELEMENT_ERROR in the chain function, the opt 
4366         scheduler doesn't unref the chain so it never gets freed.
4367
4368 2004-11-02  Wim Taymans  <wim@fluendo.com>
4369
4370         * gst/gststructure.c: (gst_structure_get_abbrs),
4371         (gst_structure_from_abbr), (gst_structure_to_abbr):
4372         Remove that ugly if-then thing in the code that converts
4373         between strings and types.
4374
4375 2004-11-02  Wim Taymans  <wim@fluendo.com>
4376
4377         * gst/gstscheduler.c: (gst_scheduler_add_element),
4378         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4379         Aplied clock distribution patch, this should fix bug
4380         #148787.
4381
4382 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4383
4384         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4385
4386         * po/LINGUAS:
4387         * po/nb.po:
4388           Added Norwegian Bokmaal translation
4389
4390 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4391
4392         * tools/gst-inspect.c: (print_signal_info):
4393           print signal arguments as pointers if they are
4394
4395 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4396
4397         * docs/pwg/building-boiler.xml:
4398           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4399
4400 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4401
4402         * gst/parse/parse.l:
4403         * testsuite/parse/parse1.c: (main):
4404         Since parse can do 'element name=a:b' make 'a:b.' work as
4405         well. 
4406         Added testcase to verify fix.
4407
4408 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4409
4410         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4411         Use the realpad when printing the direction.
4412         Add extra \n when printing extensions of typefind factories.
4413
4414 2004-10-13  David Schleef  <ds@schleef.org>
4415
4416         * examples/manual/Makefile.am: $< isn't portable in Makefile
4417         rules.
4418
4419 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4420
4421         * docs/gst/tmpl/gstobject.sgml:
4422         * docs/gst/tmpl/gstplugin.sgml:
4423         * docs/gst/tmpl/gstpluginfeature.sgml:
4424         * docs/gst/tmpl/gstregistry.sgml:
4425         * docs/gst/tmpl/gstversion.sgml:
4426         * gst/gstbin.c:
4427           more api documentation
4428         * gst/gstplugin.c: (gst_plugin_register_func),
4429         (gst_plugin_check_file), (gst_plugin_load_file):
4430           better error signaling and logging
4431
4432 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4433
4434         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4435           Subtract current queue contents from position queries.
4436
4437 2004-10-11  Johan Dahlin  <johan@gnome.org>
4438
4439         * gst/gsturi.c (gst_uri_get_location): unescape string
4440         (gst_uri_construct): escape string.
4441
4442 2004-10-11  Benjamin Otte  <otte@gnome.org>
4443
4444         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4445         (gst_pad_try_set_caps_nonfixed):
4446           allow renegotiation of unconnected pads (as inside spider). Simply
4447           return OK if unconnected - mimic try_set_caps there.
4448
4449 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4450
4451         * gst/gstbin.c: (gst_bin_sync_children_state):
4452           Add missing break.
4453
4454 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4455
4456         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4457         Set element to EOS before sending EOS event
4458
4459 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4460
4461         * gst/elements/gsttypefindelement.c:
4462         (gst_type_find_element_handle_event):
4463         Handle EOS events when doing the transition from
4464         typefind to data passing. This should fix the
4465         infinite loops in short files.
4466
4467 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4468
4469         * gst/gstthread.c: (gst_thread_change_state),
4470         (gst_thread_child_state_change):
4471         Make sure no iteration happens while performing
4472         the state change as it could mess up the internal
4473         consistency of the thread state.
4474
4475 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4476
4477         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4478         (gst_thread_change_state), (gst_thread_child_state_change):
4479         Do not try to grab the iterate lock in the state change method
4480         when we are in the same thread as the iterate or else we
4481         could deadlock. Some other cleanups.
4482
4483 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4484
4485         * configure.ac:
4486           bump nano to cvs
4487
4488 === release 0.8.7 ===
4489
4490 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4491
4492         * configure.ac:
4493         * NEWS:
4494         * RELEASE:
4495         * configure.ac:
4496           releasing 0.8.7, "A Cruise"
4497
4498 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4499
4500         * docs/random/mimetypes:
4501         Add an entry for Sony ATRAC3 audio format with mime-type
4502         used by rmdemux et riff-read
4503
4504 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4505
4506         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4507         Push the buffer store instead of clearing it in case that
4508         the stream is not seekable.
4509
4510 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4511
4512         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4513         (gst_thread_main_loop):
4514         Lock the iteration and the state change so that automatic
4515         negotiation and fixation does not happen at the same time
4516         as the in stream negotiation.
4517
4518 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4519
4520         * configure.ac:
4521           bump nano to cvs
4522
4523 === release 0.8.6 ===
4524
4525 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4526
4527         * configure.ac:
4528         * NEWS:
4529         * RELEASE:
4530         * configure.ac:
4531           releasing 0.8.6, "Narc"
4532
4533 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4534
4535         * configure.ac:
4536           prerel bump
4537
4538 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4539
4540         patch by: Steve Lhomme
4541
4542         * gst/elements/gstfakesrc.c:
4543         * gst/elements/gstidentity.c:
4544         * gst/gstthread.c:
4545           Fix for #153881
4546
4547 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4548
4549         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4550         Fix threadsafety of the crc checking function.
4551
4552 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4553
4554         patch by: Ronald Bultje
4555
4556         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4557         (gst_type_find_element_handle_event),
4558         (gst_type_find_element_chain):
4559         * gst/elements/gsttypefindelement.h:
4560          #153657.
4561          Filter out discont event from seekable sources when typefind
4562          asks them to seek.  Fixes typefind with demuxers for
4563          avi, asf and matroska.
4564
4565 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4566
4567         * docs/gst/gstreamer-sections.txt:
4568         * gst/gstcaps.c:
4569         * gst/gstcaps.h:
4570         * gst/gstpad.c:
4571           Revert preferred caps: (#147789)
4572
4573 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4574
4575         * win32/dirent.c:
4576           fix a memory leak
4577
4578 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4579
4580         * configure.ac:
4581           bump for prerelease
4582
4583 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4584
4585         * docs/Makefile.am:
4586         * docs/manual/elements-api.xml:
4587           restructure so that common stuff is shown first
4588         * docs/manual/init-api.xml:
4589           convert to examples
4590         * docs/manual/manual.xml:
4591         * docs/manuals.mak:
4592         * docs/url.entities:
4593           link to API on the website, possibly override later in build
4594         * examples/manual/.cvsignore:
4595           ignore more
4596         * examples/manual/Makefile.am:
4597           add more examples
4598         * examples/manual/extract.pl:
4599           error out on failure
4600
4601 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4602
4603         * docs/gst/tmpl/gstthread.sgml:
4604         * docs/manual/init-api.xml:
4605         * examples/manual/Makefile.am:
4606           convert two code bits to examples
4607
4608 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4609
4610         * gst/gstelement.c: (gst_element_change_state):
4611           Well, actually, I was about to remove this insane assert when
4612           I noticed Wim already did that. A warning is nice so we can
4613           fix actual ugs (using --g-fatal-warnings and backtraces), so
4614           I added that instead.
4615
4616 2004-09-06  Wim Taymans  <wim@fluendo.com>
4617
4618         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4619         (gst_element_threadsafe_properties_post_run),
4620         (gst_element_set_state), (gst_element_change_state):
4621         Added extra refcounting around various places. 
4622
4623 2004-09-06  Wim Taymans  <wim@fluendo.com>
4624
4625         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4626         Fix debug info.
4627
4628 2004-09-06  Wim Taymans  <wim@fluendo.com>
4629
4630         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4631         (remove_from_group):
4632         Some more debug info.
4633
4634 2004-09-03  Wim Taymans  <wim@fluendo.com>
4635
4636         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4637         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4638         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4639         (gst_fakesrc_get), (gst_fakesrc_change_state):
4640         * gst/elements/gstfakesrc.h:
4641         * gst/elements/gstidentity.c: (gst_identity_class_init),
4642         (gst_identity_init), (gst_identity_chain),
4643         (gst_identity_set_property), (gst_identity_get_property),
4644         (gst_identity_change_state):
4645         * gst/elements/gstidentity.h:
4646         Added datarate properties to limit the datarate.
4647
4648 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4649
4650         * gst/autoplug/gstspider.c: (plugin_init):
4651           don't set a rank. We don't want to autoplug by inserting spiders.
4652
4653 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4654
4655         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4656         (gst_spider_identity_plug):
4657           add a template for spider's sink
4658         * gst/gst.c: (gst_register_core_elements):
4659           queue's rank should be NULL, we don't want spider to add it.
4660
4661 2004-08-18  David Schleef  <ds@schleef.org>
4662
4663         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4664         * docs/libs/Makefile.am: same
4665         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4666         * docs/random/ds/0.9-planning: random additions
4667         * docs/random/ds/0.9-suggested-changes: same
4668         * gst/gstxml.h: remove vestigal GstXMLNs definition
4669
4670         Preferred caps: (#147789)
4671         * docs/gst/gstreamer-sections.txt: Add symbols
4672         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4673         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4674         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4675         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4676         (gst_caps_get_preferred), (gst_caps_set_preferred),
4677         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4678         (gst_caps_use_preferred): Handle caps preferences
4679         * gst/gstcaps.h: Add caps preferences
4680         * gst/gstpad.c: (gst_pad_link_get_preferred),
4681         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4682         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4683         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4684         negotiation.
4685
4686 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4687
4688         * gst/autoplug/gstspideridentity.c:
4689         (gst_spider_identity_request_new_pad):
4690         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4691         (gst_aggregator_init):
4692         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4693         (gst_fakesink_init):
4694         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4695         (gst_fakesrc_init):
4696         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4697         (gst_fdsink_init):
4698         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4699         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4700         (gst_filesink_init):
4701         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4702         (gst_filesrc_init):
4703         * gst/elements/gstidentity.c: (gst_identity_base_init),
4704         (gst_identity_init):
4705         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4706         (gst_multifilesrc_init):
4707         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4708         (gst_pipefilter_init):
4709         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4710         (gst_statistics_init):
4711         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4712         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4713           s/gst_pad_new/&_from_template/
4714           register pad templates in the base_init function
4715           add static pad template definitions
4716
4717 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4718
4719         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4720         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4721         * testsuite/refcounting/pad.c: (main):
4722         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4723           s/gst_pad_new/&_from_template/
4724           prepare deprecation of gst_pad_new
4725
4726 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4727
4728         patch by: Luca Ognibene <skaboy81@virgilio.it>
4729
4730         * gst/gstcaps.c:
4731         * gst/gstelement.c:
4732         * gst/gstpad.c:
4733         * gst/gstxml.c:
4734           fix memleaks.  Fixes #150001
4735
4736 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4737
4738         * docs/random/ds/0.9-suggested-changes:
4739           add notes - mostly about pad templates
4740
4741 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4742
4743         * win32/GStreamer.vcproj:
4744           temporary locale files are .gmo not .mo
4745
4746 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4747
4748         * configure.ac: bump nano to cvs
4749
4750 === release 0.8.5 ===
4751
4752 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4753
4754         * configure.ac:
4755           releasing 0.8.5, "Stuttgart"
4756         * NEWS:
4757         * RELEASE:
4758         * configure.ac:
4759         * docs/random/release:
4760           updates for release
4761
4762 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4763
4764         patch by: Wim Taymans (wim@fluendo.com)
4765
4766         * gst/gstbuffer.c:
4767         * gst/gstindex.h:
4768         * libs/gst/dataprotocol/dataprotocol.c:
4769           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4770
4771 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4772
4773         * Makefile.am:
4774         * win32/MANIFEST:
4775           add win32 dir to the build.  Fixes #149981.
4776
4777 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4778
4779         * configure.ac:
4780           bump libtool versioning
4781         * gst/gststructure.c:
4782           mark function as static
4783         * po/af.po:
4784         * po/az.po:
4785         * po/ca.po:
4786         * po/cs.po:
4787         * po/en_GB.po:
4788         * po/fr.po:
4789         * po/nl.po:
4790         * po/sq.po:
4791         * po/sr.po:
4792         * po/sv.po:
4793         * po/tr.po:
4794         * po/uk.po:
4795           translations update
4796         * win32/README.txt:
4797           trademark protection
4798
4799 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4800
4801         * configure.ac:
4802           fix GST_ORIGIN
4803           set GST_PACKAGE to source, and distinguish between release and other
4804         * tools/gst-inspect.c:
4805           print out plugin an element factory is part of so we see this info
4806
4807 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4808
4809         * docs/gst/gstreamer-sections.txt:
4810         * docs/gst/tmpl/gstbuffer.sgml:
4811         * docs/gst/tmpl/gstschedulerfactory.sgml:
4812           reorder docs a little, make GstBuffer's more sensible.
4813         * gst/gstbuffer.h:
4814           API: added GST_BUFFER_FLAG_DELTA_UNIT
4815         * gst/gstscheduler.c:
4816           comment API addition
4817
4818 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4819
4820         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4821           work with non-regular files that can be mmapped (like /dev/zero)
4822         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4823           get rid of typefinds that require a seek when we can't seek instead
4824           of trying them over and over again
4825         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4826           return non-zero failure value when the pipeline was interrupted or
4827           an error occurred
4828
4829 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4830
4831         * win32/config.h:
4832         * win32/GStreamer.vcproj:
4833           compile and install the locales
4834
4835 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4836
4837         * gst/gstvalue.c:
4838           fix a possible memory leak under Windows
4839
4840 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4841
4842         * win32/GStreamer.vcproj:
4843           fix a memory leak that occured under Windows
4844         * win32/gstreamer.def:
4845           add gst_scheduler_register
4846
4847 2004-08-11  Benjamin Otte  <otte@gnome.org>
4848
4849         * docs/gst/gstreamer-sections.txt:
4850         * gst/gstscheduler.c: (gst_scheduler_register):
4851         * gst/gstscheduler.h:
4852           API:
4853           add gst_scheduler_register shortcut similar to gst_element_register
4854         * gst/schedulers/entryscheduler.c: (plugin_init):
4855         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4856         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4857           use it
4858
4859 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4860
4861         * gst/gstvalue.h:
4862           fix a memory leak that occured under Windows
4863
4864 2004-08-10  Colin Walters  <walters@redhat.com>
4865
4866         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4867         Don't use O_EXCL to open temporary registry.  It will prevent
4868         registry creation if a temporary one already exists, which
4869         is unnecessary.
4870
4871 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4872
4873         * docs/gst/gstreamer-sections.txt:
4874         * docs/gst/tmpl/gstvalue.sgml:
4875           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4876
4877 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4878
4879         * win32/gstbytestream.vcproj:
4880         * win32/gstelements.vcproj:
4881         * win32/gstgetbits.vcproj:
4882         * win32/gst-inspect.vcproj:
4883         * win32/gst-launch.vcproj:
4884         * win32/gstoptimalscheduler.vcproj:
4885         * win32/GStreamer.vcproj:
4886         * win32/gst-register.vcproj:
4887         * win32/gstspider.vcproj:
4888           update the include and lib dirs to fit standard libraries as
4889           described in the Win32 manual
4890
4891 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4892
4893         * win32/config.h:
4894         * win32/gstversion.h:
4895           enable NLS again, push the version number for the coming 0.8.5 release
4896
4897 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4898
4899         * gst/gstvalue.h:
4900           export gst_type_XXX for windows DLLs
4901
4902 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4903
4904         * docs/faq/gst-uninstalled:
4905           fix PKG_CONFIG_PATH and PYTHONPATH
4906         * gst/schedulers/Makefile.am:
4907           cleanup
4908         * libs/gst/bytestream/bytestream.c:
4909           remove newline
4910         * po/LINGUAS:
4911         * po/sq.po:
4912           adding Albanian translation (Laurent Dhima)
4913         * po/cs.po:
4914           updated
4915
4916 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4917
4918         * po/ca.po:
4919         * po/sv.po:
4920           updated translations
4921
4922 2004-08-04  Benjamin Otte  <otte@gnome.org>
4923
4924         * tests/mass_elements.c: (main):
4925           allow specifying src and sink element explicitly, so I can test
4926           videotestsrc instead of fakesrc
4927
4928 2004-08-04  Benjamin Otte  <otte@gnome.org>
4929
4930         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4931         (gst_structure_id_empty_new), (gst_structure_empty_new),
4932         (gst_structure_copy):
4933           add gst_structure_id_empty_new_with_size to allow preallocating
4934           value array sizes. Use this in gst_structure_copy to get rid of
4935           reallocs.
4936           don't do quark=>string=>quark when copying structures
4937
4938 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4939
4940         * docs/manual/win32.xml:
4941         * win32/README.txt:
4942           update documentation with the clean version of dependencies
4943
4944 2004-08-03  Benjamin Otte  <otte@gnome.org>
4945
4946         * gst/schedulers/entryscheduler.c:
4947         (gst_entry_scheduler_remove_element):
4948           fix for GST_DISABLE_DEBUG
4949         * tools/gst-launch.c: (print_tag):
4950           fixes for G_DISABLE_ASSERT
4951
4952 2004-08-03  Benjamin Otte  <otte@gnome.org>
4953
4954         * gst/gst.c: (gst_register_core_elements):
4955           fix for G_DISABLE_ASSERT
4956         * gst/gstinfo.c: (__gst_in_valgrind):
4957           add for GST_DISABLE_DEBUG
4958
4959 2004-08-03  Benjamin Otte  <otte@gnome.org>
4960
4961         * gst/parse/parse.l:
4962           fix for G_DISABLE_ASSERT
4963
4964 2004-08-03  Wim Taymans  <wim@fluendo.com>
4965
4966         * gst/gstbin.c: (gst_bin_get_type),
4967         (gst_bin_child_state_change_func):
4968         * gst/gstthread.c: (gst_thread_change_state):
4969         Backported some debug logging from a reverted patch
4970         Don't try to destroy the thread twice. Added some more
4971         debugging in GstThread. Unlock and signal even if we
4972         are in the thread context.
4973
4974 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4975
4976         * po/uk.po:
4977           updated translation
4978
4979 2004-07-30  David Schleef  <ds@schleef.org>
4980
4981         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4982
4983 2004-07-29  David Schleef  <ds@schleef.org>
4984
4985         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4986         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4987
4988 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4989
4990         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4991         (gst_bin_add_func), (gst_bin_remove_func),
4992         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4993         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4994         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4995         (gst_bin_sync_children_state):
4996         * gst/gstbin.h:
4997         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4998         (gst_thread_change_state):
4999         * testsuite/states/Makefile.am:
5000           revert state change patches as agreed so we can rework them
5001           gradually
5002
5003 2004-07-29  Benjamin Otte  <otte@gnome.org>
5004
5005         * libs/gst/control/Makefile.am:
5006           link to libgstreamer (fixes Debian bug 262019, see
5007           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
5008
5009 2004-07-29  Wim Taymans  <wim@fluendo.com>
5010
5011         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5012         (check_from_fraction_convert), (transform_test), (main):
5013         Make the test less pedantic about float roundoff errors.
5014
5015 2004-07-29  Benjamin Otte  <otte@gnome.org>
5016
5017         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
5018         (gst_filesrc_srcpad_event):
5019           make seek events to before start/after end of file not fail, but
5020           seek to start/end instead
5021         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
5022           add more output
5023
5024 2004-07-29  Benjamin Otte  <otte@gnome.org>
5025
5026         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5027           check that caps are fixed
5028         * gst/gstpad.c: (gst_pad_template_new):
5029           don't try to simplify caps, costs too much time on gst_init
5030         * gst/gstplugin.c: (gst_plugin_add_feature):
5031           G_ERROR if features are added twice
5032         * gst/gsttypefind.c: (gst_type_find_register):
5033         * gst/gstelementfactory.c: (gst_element_register):
5034           don't add features twice
5035         * docs/random/ds/0.9-suggested-changes:
5036           add note about possible gst_init optimization
5037
5038 2004-07-28  David Schleef  <ds@schleef.org>
5039
5040         * testsuite/elements/Makefile.am:
5041         * testsuite/elements/struct_i386.h:
5042         * testsuite/elements/struct_size.c: (main):  A little test
5043         to keep distcheck from working if someone changes a structure
5044         size accidentally.
5045
5046 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5047
5048         * docs/libs/Makefile.am:
5049         * docs/libs/gstreamer-libs-docs.sgml:
5050         * docs/libs/gstreamer-libs-sections.txt:
5051         * docs/libs/tmpl/gstbytestream.sgml:
5052         * docs/libs/tmpl/gstcontrol.sgml:
5053         * docs/libs/tmpl/gstdataprotocol.sgml:
5054         * docs/libs/tmpl/gstgetbits.sgml:
5055         * libs/gst/bytestream/Makefile.am:
5056         * libs/gst/bytestream/bytestream.c:
5057         * libs/gst/bytestream/bytestream.h:
5058         * libs/gst/control/Makefile.am:
5059         * libs/gst/dataprotocol/Makefile.am:
5060         * libs/gst/getbits/Makefile.am:
5061         * libs/gst/getbits/getbits.h:
5062           various doc and style fixes, adding bytestream to libs docs.
5063
5064 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5065
5066         * docs/gst/gstreamer-docs.sgml:
5067         * docs/libs/Makefile.am:
5068         * docs/libs/gstreamer-libs-docs.sgml:
5069         * docs/libs/gstreamer-libs-sections.txt:
5070         * libs/gst/control/dparam.c:
5071           more doc fixes.  gst-libs docs now build the same way as gst.
5072
5073 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5074
5075         * configure.ac:
5076         * testsuite/Makefile.am:
5077         * testsuite/bins/Makefile.am:
5078         * testsuite/caps/Makefile.am:
5079         * testsuite/cleanup/Makefile.am:
5080         * testsuite/clock/Makefile.am:
5081         * testsuite/debug/Makefile.am:
5082         * testsuite/dlopen/Makefile.am:
5083         * testsuite/dynparams/Makefile.am:
5084         * testsuite/elements/.cvsignore:
5085         * testsuite/elements/Makefile.am:
5086         * testsuite/enumcaps/Makefile.am:
5087         * testsuite/enumcaps/enumcaps.c:
5088         * testsuite/ghostpads/Makefile.am:
5089         * testsuite/indexers/Makefile.am:
5090         * testsuite/negotiation/Makefile.am:
5091         * testsuite/parse/Makefile.am:
5092         * testsuite/plugin/Makefile.am:
5093         * testsuite/refcounting/Makefile.am:
5094         * testsuite/schedulers/.cvsignore:
5095         * testsuite/states/Makefile.am:
5096         * testsuite/tags/Makefile.am:
5097         * testsuite/threads/Makefile.am:
5098           fold enumcaps into caps dir
5099           clean up Makefile.am's for testsuite
5100
5101 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5102
5103         * docs/gst/Makefile.am:
5104         * docs/libs/Makefile.am:
5105           clean up docs build.  Fixes needless rebuilding of template files.
5106
5107 2004-07-28  Wim Taymans  <wim@fluendo.com>
5108
5109         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5110         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5111         Make sure that a bin state change tries to keep the children
5112         in sync. 
5113         Added debug logging to the thread.
5114
5115 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5116
5117         * win32/GStreamer.vcproj:
5118         * win32/gstreamer.def:
5119           more exports for the plugins
5120
5121 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5122
5123         * win32/gstgetbits.vcproj:
5124         * win32/gstgetbits.def:
5125         * win32/msvc71.sln:
5126           add support for the getbits plugin
5127
5128 2004-07-27  Wim Taymans  <wim@fluendo.com>
5129
5130         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5131         (gst_value_transform_fraction_double), (_gst_value_initialize):
5132         * testsuite/caps/Makefile.am:
5133         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5134         (check_from_fraction_convert), (transform_test), (main):
5135         Added transform functions between double and fraction.
5136         Added testcase to verify transforms
5137
5138 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5139
5140         * win32/GStreamer.vcproj:
5141           rename GStreamer-0.8.lib to libgstreamer.lib
5142
5143 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5144
5145         * win32/gstelements.vcproj:
5146         * win32/gstoptimalscheduler.vcproj:
5147           fixes for the Release build
5148
5149 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5150
5151         * win32/config.h:
5152           update the version number
5153
5154 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5155
5156         * win32/GStreamer.vcproj:
5157           add gstinterface to the build
5158
5159 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5160
5161         * win32/gstreamer.def:
5162           add many definitions needed by plugins,
5163           GST_CAT_DEFAULT only available in the Debug build ?
5164
5165 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5166
5167         * gst/gstelement.c: (gst_element_set_eos_recursive):
5168           various whitespace fixes.
5169           doc fix, fixes #148497
5170
5171 2004-07-25  Benjamin Otte  <otte@gnome.org>
5172
5173         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5174           don't delay links on the sink elements, it causes unnegotiated
5175           links.
5176         * gst/elements/gsttypefindelement.c:
5177         (gst_type_find_element_base_init):
5178           add our padtemplates, we indeed do have some.
5179         * gst/elements/gsttypefindelement.c:
5180         (gst_type_find_element_handle_event),
5181         (gst_type_find_element_chain):
5182           don't push data when typefinding failed.
5183         * gst/gstpad.c: (gst_pad_link_fixate):
5184           check that no fixate function returns empty caps.
5185         * gst/gstpad.c: (gst_pad_push):
5186           check that the link is negotiated before data gets pushed.
5187         * tools/gst-register.c: (main):
5188           don't assert (fixes #148283)
5189
5190 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5191
5192         * docs/gst/gstreamer-sections.txt:
5193         * docs/gst/tmpl/gstconfig.sgml:
5194           add GST_PLUGIN_EXPORT definition
5195
5196 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5197
5198         * gst/gstplugin.h:
5199         * gst/gstconfig.h.in:
5200         * win32/gstconfig.h:
5201         * win32/gstelements.def:
5202         * win32/gstelements.vcproj:
5203         * win32/gstoptimalscheduler.def:
5204         * win32/gstoptimalscheduler.vcproj:
5205         * win32/gstspider.def:
5206         * win32/gstspider.vcproj:
5207           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5208
5209 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5210
5211         * docs/gst/gstreamer-sections.txt:
5212           remove GST_CAT_DEFAULT because the type has changed
5213
5214 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5215
5216         * win32/gstbytestream.vcproj:
5217         * win32/gstelements.vcproj:
5218         * win32/gst-inspect.vcproj:
5219         * win32/gst-launch.vcproj:
5220         * win32/gstoptimalscheduler.vcproj:
5221         * win32/GStreamer.vcproj:
5222         * win32/gst-register.vcproj:
5223         * win32/gstspider.vcproj:
5224         * win32/msvc71.sln:
5225           Copy the files where needed after building, The testsuite will be
5226           built separately
5227
5228 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5229
5230         * win32/config.h:
5231         * win32/README.txt:
5232         * docs/manual/win32.xml:
5233         Fixed the plugin and GStreamer location
5234
5235 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5236
5237         * win32/gstreamer.def:
5238         More exports for the plugins
5239
5240 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5241
5242         * gst/gstinfo.h:
5243         Marc was right, we need to export literally GST_CAT_DEFAULT
5244
5245 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5246
5247         * win32/config.h:
5248         NLS crashes in gettext, disabled until this is solved
5249
5250 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5251
5252         * win32/gst-inspect.vcproj:
5253         * win32/gst-launch.vcproj:
5254         Should use NLS when available
5255
5256 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5257
5258         * gst/registries/gstxmlregistry.c:
5259         removing the file doesn't seem to be a good idea on Linux
5260
5261 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5262
5263         * gst/registries/gstxmlregistry.c:
5264         Remove the registry before renaming the tempfile (needed for Windows)
5265
5266 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5267
5268         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5269         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5270         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5271         * gst/elements/gstmultifilesrc.h:
5272         Added newmedia property so it generates newmedia events between each
5273         file when property is set, as well as fixed eos handling
5274
5275 2004-07-22  David Schleef  <ds@schleef.org>
5276
5277         * gst/gststructure.c: (gst_structure_id_empty_new),
5278         (gst_structure_empty_new):  Set type field correctly.
5279         * gst/gststructure.h: Check type field correctly.
5280         * testsuite/caps/Makefile.am:
5281         * testsuite/caps/structure.c: (test1), (main): Add a very small
5282         test for structures.
5283
5284 2004-07-22  David Schleef  <ds@schleef.org>
5285
5286         * docs/random/ds/0.9-suggested-changes: more comments
5287         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5288
5289 2004-07-22  Benjamin Otte  <otte@gnome.org>
5290
5291         * gst/gstelementfactory.c: (gst_element_register):
5292           set the factory in the class struct, so gst_element_get_factory
5293           actually works
5294         * gst/parse/grammar.y:
5295           set element to playing when it gets unlocked as we can't rely on the
5296           bin state - all elements in the bin state might still be locked in
5297           NULL)
5298
5299 2004-07-22  Benjamin Otte  <otte@gnome.org>
5300
5301         * gst/gstelement.c: (gst_element_set_state_func):
5302           make this a static function
5303
5304 2004-07-22  Wim Taymans  <wim@fluendo.com>
5305
5306         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5307         (gst_opt_scheduler_pad_link):
5308         fix 147894-2 and the group_link problem.
5309
5310 2004-07-22  Wim Taymans  <wim@fluendo.com>
5311
5312         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5313         (handoff_identity), (main):
5314         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5315         (handoff_identity), (main):
5316         * testsuite/schedulers/Makefile.am:
5317         * testsuite/schedulers/group_link.c: (main):
5318         Show bug in scheduler when linking chain and loop based element 
5319         where the chain based element was not yet in a group.
5320
5321 2004-07-21  Benjamin Otte  <otte@gnome.org>
5322
5323         * gst/.cvsignore:
5324         * gst/autoplug/.cvsignore:
5325         * gst/elements/.cvsignore:
5326         * gst/indexers/.cvsignore:
5327         * libs/gst/bytestream/.cvsignore:
5328         * libs/gst/control/.cvsignore:
5329         * libs/gst/getbits/.cvsignore:
5330         * testsuite/states/.cvsignore:
5331         * testsuite/threads/.cvsignore:
5332           keep this up to date, since I seem to be the only one who cares
5333           about not missing files on commits (editor's note: no you don't,
5334           but feel free to change them at the time you add stuff instead
5335           of later on)
5336
5337 2004-07-21  Benjamin Otte  <otte@gnome.org>
5338
5339         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5340         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5341         (gst_bin_child_state_change_func), (set_kid_state_func),
5342         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5343           make state changes work correctly and reentrant (so removing
5344           elements from bins during state changes of bins doesn't cause
5345           segfaults or even wrong states)
5346           add debugging category and debugging output to print children states
5347         * gst/gstbin.c: (gst_bin_dispose): 
5348           add some assertion checks
5349         * gst/gstbin.h:
5350         * gst/gstbin.c: (gst_bin_sync_children_state):
5351           deprecate this function - it just does gst_bin_set_state (bin,
5352           GST_STATE (bin)) 
5353         * testsuite/threads/queue.c: (main):
5354           don't use gst_bin_sync_children_state anymore
5355         * testsuite/states/Makefile.am:
5356         * testsuite/states/bin.c:
5357           test that the state changes of bins work as expected
5358         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5359           some adjustments to change states correctly, too
5360         * gst/gstthread.c: (gst_thread_change_state):
5361           don't enable/disable "threadsafe" properties, they're unused and
5362           cause random segfaults
5363         * testsuite/threads/Makefile.am:
5364           the queue check randomly passes now, ignore it
5365
5366 2004-07-21  Benjamin Otte  <otte@gnome.org>
5367
5368         * gst/gstpad.c:
5369           check if data is NULL before outputting debug info. (fixes #145100)
5370
5371 2004-07-21  Benjamin Otte  <otte@gnome.org>
5372
5373         * gst/schedulers/entryscheduler.c:
5374         (gst_entry_scheduler_loop_wrapper),
5375         (gst_entry_scheduler_chain_wrapper),
5376         (gst_entry_scheduler_get_wrapper):
5377           reset the state when the cothread starts, so we don't get assertion
5378           failures on restarting of cothreads
5379
5380 2004-07-20  Benjamin Otte  <otte@gnome.org>
5381
5382         * gst/gstelement.c: (gst_element_link_pads_filtered):
5383           use correct sinkpad, if only sinkpad is specified, but not srcpad
5384           (fixes #147889)
5385         * gst/gstelement.c: (gst_element_set_state_func),
5386         (gst_element_change_state): ref/unref the element, signal handlers
5387         could get rid of the element otherwise
5388
5389 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5390
5391         * docs/random/ds/0.9-suggested-changes:
5392           Make note about renaming fixed-list to array.
5393         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5394         (_gst_value_initialize):
5395           Add array intersections.
5396         * testsuite/caps/intersect2.c: (main):
5397           Add test for array intersections.
5398
5399 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5400
5401         * configure.ac: back to cvs
5402
5403 === release 0.8.4 ===
5404
5405 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5406
5407         * configure.ac:
5408           releasing 0.8.4, "Paella"
5409           bump libtool versioning
5410
5411 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5412
5413         * po/LINGUAS:
5414         * po/ca.po:
5415           adding Catalan translation (Jordi Mallach)
5416
5417 2004-07-20  Wim Taymans  <wim@fluendo.com>
5418
5419         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5420         (handoff_identity), (main):
5421         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5422         (handoff_identity), (main):
5423         * testsuite/schedulers/Makefile.am:
5424         Added failing testcase for variant of #147894
5425
5426 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5427
5428         patch by: David Moore
5429
5430         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5431         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5432         (group_migrate_connected):
5433         * testsuite/schedulers/Makefile.am:
5434           fix for #142813 (Deadlock in optimal scheduler)
5435
5436 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5437
5438         patch by: Wim Taymans
5439
5440         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5441         (gst_opt_scheduler_schedule_run_queue),
5442         (gst_opt_scheduler_get_wrapper), (get_group),
5443         (group_migrate_connected):
5444         * testsuite/schedulers/Makefile.am:
5445           fix for #147819 (Add some checks in the opt scheduler)
5446
5447 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5448
5449         patch by: Benjamin Otte
5450
5451         * gst/gstelementfactory.c: (__gst_element_details_set):
5452           fix for #147929: running gst-register in non-utf8 locale can cause
5453           invalid registry
5454
5455 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5456
5457         patch by: Wim Taymans
5458
5459         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5460         (group_has_element), (element_get_reachables_func),
5461         (group_migrate_connected):
5462           fix for #147894 (opt scheduler decoupled elements mismanagement)
5463         * testsuite/schedulers/Makefile.am:
5464           testsuite app now passes
5465
5466 2004-07-19  Wim Taymans  <wim@fluendo.com>
5467
5468         * testsuite/schedulers/147819.c: (handoff_identity1),
5469         (handoff_identity2), (main):
5470         * testsuite/schedulers/Makefile.am:
5471         Added testcase for bug 147819
5472
5473 2004-07-19  Wim Taymans  <wim@fluendo.com>
5474
5475         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5476         (handoff_identity), (main):
5477         * testsuite/schedulers/Makefile.am:
5478         Added testcase for bug 147894
5479
5480 2004-07-16  Wim Taymans  <wim@fluendo.com>
5481
5482         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5483         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5484         * testsuite/schedulers/Makefile.am:
5485         Added testsuite for bug 142183 in its two incarnations. Refcount
5486         is not increased for scheduled elements and threadsafe properties
5487         mutexes are not properly unlocked.
5488
5489 2004-07-16  Wim Taymans  <wim@fluendo.com>
5490
5491         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5492         (create_chain), (destroy_chain), (create_group), (destroy_group),
5493         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5494         (group_dec_link), (gst_opt_scheduler_pad_link),
5495         (group_inc_links_for_element), (group_migrate_connected):
5496         Call group_inc_link with the proper src->sink ordering -- 
5497         break this, and we break sort_chain. patch from wingo for bug
5498         147713.
5499         Partially revert patch 1.89. When adding a loop based element to 
5500         the scheduler, the links to other groups are automatically followed
5501         and incremented. This should not happen because the bin will call
5502         pad_link explicitly for those connection, resulting in them counted 
5503         twice. Results in assertion failure on pipeline cleanup.
5504
5505 2004-07-16  Wim Taymans  <wim@fluendo.com>
5506
5507         * testsuite/schedulers/143777-2.c: (main):
5508         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5509         (main):
5510         * testsuite/schedulers/Makefile.am:
5511         Added cleanup code to testcase 143777-2.
5512         Added testcase to show bug 147713, does not really show the
5513         deadlock as I can't figure out how to trigger it, but it does
5514         demonstrate bad ordering in the scheduler.
5515
5516 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5517
5518         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5519           change strndup to g_strndup.  Fixes #147707
5520
5521 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5522
5523         * po/af.po:
5524         * po/az.po:
5525         * po/cs.po:
5526         * po/en_GB.po:
5527         * po/fr.po:
5528         * po/nl.po:
5529         * po/sr.po:
5530         * po/sv.po:
5531         * po/tr.po:
5532         * po/uk.po:
5533           updated translations
5534
5535 2004-07-16  Benjamin Otte  <otte@gnome.org>
5536
5537         * gst/gstvalue.c: (gst_greatest_common_divisor):
5538           use ints and return ints, fractions only use ints, too, so this
5539           avoids accidently casting multiplications to unsigned
5540         (gst_value_lcopy_fraction): it's ints, not uint32
5541         (gst_value_set_fraction): disallow minint, multiplying and negation
5542           are broken with it
5543         (gst_value_fraction_multiply): fix to make large numbers work and get
5544         rid of the assumption that the multiplication of two ints fits an
5545         int64 - dunno if that's true for all systems
5546         * testsuite/caps/Makefile.am:
5547         * testsuite/caps/fraction-multiply-and-zero.c:
5548         (check_multiplication), (check_equal), (zero_test), (main):
5549           add tests for all the stuff above
5550         * testsuite/caps/value_compare.c: (test1):
5551           fix comment
5552         * tests/.cvsignore:
5553         * testsuite/caps/.cvsignore:
5554         * testsuite/debug/.cvsignore:
5555         * testsuite/dlopen/.cvsignore:
5556         * testsuite/states/.cvsignore:
5557           get up to date
5558
5559 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5560
5561         * docs/manual/bins-api.xml:
5562         * docs/manual/factories.xml:
5563         * docs/manual/helloworld.xml:
5564         * docs/manual/links-api.xml: 
5565           fixes for out of date info, incorrect info and grammar
5566
5567 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5568
5569         * docs/manual/pads.xml:
5570         * docs/manual/pads-api.xml: grammar fix
5571
5572 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5573
5574         * docs/manual/pads-api.xml: typo + grammar fix
5575
5576 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5577
5578         * docs/gst/gstreamer-sections.txt:
5579           add new symbols
5580         * docs/gst/tmpl/gstelement.sgml:
5581         * docs/gst/tmpl/gstpad.sgml:
5582         * docs/gst/tmpl/gsttypes.sgml:
5583         * docs/gst/tmpl/gstvalue.sgml:
5584           update docs
5585         * gst/gststructure.c: (gst_structure_set_valist),
5586         (gst_structure_from_abbr), (gst_structure_to_abbr):
5587         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5588         (gst_greatest_common_divisor), (gst_value_init_fraction),
5589         (gst_value_copy_fraction), (gst_value_collect_fraction),
5590         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5591         (gst_value_get_fraction_numerator),
5592         (gst_value_get_fraction_denominator),
5593         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5594         (gst_value_deserialize_fraction),
5595         (gst_value_transform_fraction_string),
5596         (gst_value_transform_string_fraction),
5597         (gst_value_compare_fraction), (_gst_value_initialize):
5598         * gst/gstvalue.h:
5599           adding GstFraction GValue type, get/set, and multiply
5600         * testsuite/caps/Makefile.am:
5601         * testsuite/caps/fraction.c: (test), (main):
5602         * testsuite/caps/string-conversions.c: (main):
5603         * testsuite/caps/value_compare.c: (test1), (main):
5604           add regression tests for GstFraction
5605
5606 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5607         
5608         * docs/manual/init-api.xml: Grammar fix
5609
5610 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5611
5612         * docs/manual/states.xml: Fix inconsistent information
5613
5614 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5615
5616         * gst/gstelement.c: (gst_element_set_state):
5617         * gst/gstpad.c: (gst_pad_try_set_caps):
5618         * gst/gststructure.c:
5619         * gst/gstthread.c: (gst_thread_child_state_change):
5620         * gst/gstvalue.c: (gst_value_compare_double):
5621         * gst/gstvalue.h:
5622         * testsuite/parse/parse1.c: (main):
5623           debugging additions and style cleanups
5624
5625 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5626
5627         * docs/manual/states.xml: Grammar fix
5628
5629 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5630
5631         * docs/manual/pads.xml: Grammar fix
5632
5633 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5634
5635         * docs/manual/elements.xml: Fixed image reference
5636
5637 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5638
5639         * docs/manual/goals.xml: Grammar fix
5640
5641 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5642
5643         * docs/manual/motivation.xml:
5644         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5645
5646 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5647
5648         * docs/manual/motivation.xml: Fix spelling
5649
5650 2004-07-15  Benjamin Otte  <otte@gnome.org>
5651
5652         * gst/gstelement.h: 
5653           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5654           strings.
5655         * gst/gstelement.c (gst_element_class_init):
5656           GError's are boxed, not objects
5657         * gst/gstmarshal.list:
5658           update list for the fixed error signal
5659
5660 2004-07-14  Andy Wingo  <wingo@pobox.com>
5661
5662         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5663         there all along, but the function wasn't. (guile-gstreamer's build
5664         system uses the address of the function -- I wasn't actually
5665         trying to use this.)
5666
5667 2004-07-14  Andy Wingo  <wingo@pobox.com>
5668
5669         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5670         as gst_pad_proxy_pad_link) just link to every other pad when they
5671         are called. In the case where the graph has cycles, this will mean
5672         that a call to try_set_caps will recurse. Allow this recursion
5673         and return OK, while we wait for the first try_set_caps to give a
5674         proper return value.
5675         (gst_pad_link_call_link_functions): Since this function is the
5676         only one to set the NEGOTIATING flag on a pad, if the flag is set
5677         it means that the link functions have indirectly recursed. If this
5678         happens, error out to avoid infinite recursion and an eventual
5679         SEGV.
5680         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5681         (gst_pad_proxy_getcaps): Intersect the result with the template
5682         caps to ensure that the return value is valid.
5683
5684 2004-07-14  Andy Wingo  <wingo@pobox.com>
5685
5686         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5687         one refcount, the calling function is the owner of the buffer.
5688
5689 2004-07-14  Wim Taymans  <wim@fluendo.com>
5690
5691         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5692         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5693         Fix stupid warning when an element is to be migrated but
5694         is already migrated.
5695
5696 2004-07-14  Wim Taymans  <wim@fluendo.com>
5697
5698         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5699         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5700         Make sure that a single non-loop-based element does not 
5701         end up in a group. This fixes the testsuite again.
5702
5703 2004-07-14  Wim Taymans  <wim@fluendo.com>
5704
5705         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5706         (add_to_group), (merge_groups), (schedule_group),
5707         (gst_opt_scheduler_get_wrapper), (group_elements),
5708         (group_dec_link), (gst_opt_scheduler_pad_link),
5709         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5710         (gst_opt_scheduler_iterate):
5711         move isolated groups to a new chain.
5712         Emit a warning instead of segfaulting in some error cases.
5713         Fix a bug where the link count between groups was not calculated 
5714         correctly. Fixes #144510.
5715
5716 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5717         * gst/elements/gstfilesrc.c:
5718           Binary files support under Windows now OK
5719       
5720 2004-07-13  Benjamin Otte  <otte@gnome.org>
5721
5722           compatibility fixes for Solaris 8/gcc 2.95
5723         * configure.ac:
5724           include libintl libs in LDFLAGS
5725         * gstvalue.c (gst_value_deserialize_buffer):
5726           cast isxdigit stuff to int to silence compiler warning
5727
5728 2004-07-12  Benjamin Otte  <otte@gnome.org>
5729
5730         * gst/gsttypes.h:
5731           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5732           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5733           just causes support madness
5734         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5735           make it work without this
5736         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5737         (gst_file_index_commit):
5738           glib IO channels don't want binary mode
5739         * testsuite/bytestream/filepadsink.c: (main):
5740         * testsuite/bytestream/test1.c: (read_param_file):
5741           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5742
5743 2004-07-12  Benjamin Otte  <otte@gnome.org>
5744
5745         * gst/gstelement.c: (gst_element_class_init),
5746         (gst_element_set_state), (gst_element_set_state_func):
5747           virutalize gst_element_set_state, use set_state member in class
5748           struct that was already added in 0.7 for this.
5749         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5750         (gst_bin_change_state):
5751           make gst_bin_foreach works similar to other foreach functions, plug
5752           memleaks in it. Make functions using it work with the new approach.
5753           Document gst_bin_foreach, so it can be exported if we want to
5754         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5755           use virtualized set_state to make set_state on bins set the state of
5756           all its children.
5757
5758 2004-07-12  Benjamin Otte  <otte@gnome.org>
5759
5760         * configure.ac:
5761           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5762           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5763         * gst/gstpad.c: (gst_pad_alloc_buffer):
5764           allow buffer_alloc functions to return NULL and allocate a normal
5765           buffer in that case
5766
5767 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5768         * gst/elements/gstfilesink.c:
5769         * gst/elements/gstfilesrc.c:
5770         * gst/indexers/gstfileindex.c:
5771         * gst/gsttypes.h:
5772         * testsuite/bytestream/filepadsink.c:
5773         * testsuite/bytestream/test1.c:
5774           Handle binary files under Windows
5775
5776 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5777         * docs/manual/win32.xml:
5778         * win32/config.h:
5779         * win32/gst-register.vcproj:
5780         * win32/gstreamer.def:
5781           Update to another gettext public build
5782
5783 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5784         * gst/gstplugin.c:
5785           Fix an impossible C syntax
5786         * win32/config.h:
5787           Disable i18n under Windows for the moment
5788         * win32/gst-register.vcproj:
5789           Use this configuration
5790
5791 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5792         * docs/manual/quotes.xml:
5793           Keep the quotes file alive
5794         * docs/random/ds/0.9-suggested-changes:
5795           Add the suggestion of including a 'rowstride' as part of video
5796           format caps
5797
5798 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5799
5800         * gst/gstelement.c: (gst_element_set_state),
5801         (gst_element_change_state):
5802           d'oh.  Set PENDING state correctly before forcing bin to change.
5803         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5804         (gst_structure_parse_fixed_list):
5805         * gst/schedulers/gstoptimalscheduler.c:
5806         (gst_opt_scheduler_state_transition):
5807         * testsuite/states/parent.c: (main):
5808           remove comment now that it's fixed.
5809
5810 2004-07-11  Benjamin Otte  <otte@gnome.org>
5811
5812         * gst/gstclock.h:
5813           GST_SECOND shouldn't cause a conversion to unsigned.
5814         * testsuite/clock/.cvsignore:
5815         * testsuite/clock/Makefile.am:
5816         * testsuite/clock/signedness.c: (main):
5817           make sure it never will again
5818
5819 2004-07-11  Andy Wingo  <wingo@pobox.com>
5820
5821         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5822         whose state is higher than the bin state, raise the bin state to
5823         ensure that bin state := highest child state.
5824         
5825 2004-07-11  Andy Wingo  <wingo@pobox.com>
5826
5827         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5828         procedure on the children of a bin. Assumes that the procedure can
5829         change the set of children.
5830         (set_kid_state_func): New static function.
5831         (gst_bin_change_state): Use gst_bin_foreach to call
5832         set_kid_state_func. Fixes a bug: if a child had a state-change
5833         handler that removes it from the bin, there would be a segfault.
5834         Hopefully it should also work in the case where the state-change
5835         handler on one child adds or removes other children. In any case,
5836         fixes should go to gst_bin_foreach.
5837
5838 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5839
5840         * gst/gstelement.c: (gst_element_set_state):
5841           compatibility fix for latest plugins release.  Change loop back
5842           to while {}
5843
5844 2004-07-09  Wim Taymans  <wim@fluendo.com>
5845
5846         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5847         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5848         (gst_thread_main_loop):
5849         Since remove is virtual in GstBin we must not assume the 
5850         elements GList to have anothing useful.
5851         Add some more logging to GstThread and be a bit more paranoid
5852         when resetting the scheduler.
5853         Set the state of the bin to NULL before removing the children.
5854
5855 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5856
5857         * testsuite/threads/Makefile.am:
5858         * testsuite/threads/threadg.c:
5859           added test to check if problem when removing all elements from a
5860           GstThread before setting GstThread state to NULL
5861
5862 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5863
5864         * docs/gst/tmpl/gstelement.sgml:
5865         * docs/gst/tmpl/gsttypes.sgml:
5866         * gst/gstbin.c: (gst_bin_change_state):
5867         * gst/gstelement.c: (gst_element_set_state),
5868         (gst_element_change_state):
5869           rework so that for bins we try to set the state on all children
5870           as well even if the bin is in the correct state already.
5871           change while to do so at least one iteration is done.
5872           For regular elements, we fall back to the previous behaviour for
5873           now since we first need a new plugins release.
5874         * testsuite/states/parent.c: (main):
5875           test for this case
5876           Fixes #123774
5877
5878 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5879
5880         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5881         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5882         (gst_queue_release_locks), (gst_queue_change_state),
5883         (gst_queue_set_property):
5884           add proper lock debugging.  Change dispose to finalize, since
5885           we're freeing mutexes and other stuff which should happen only once.
5886
5887 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5888
5889         * docs/gst/tmpl/gstelement.sgml:
5890         * docs/gst/tmpl/gstplugin.sgml:
5891         * docs/gst/tmpl/gsttypes.sgml:
5892         * docs/pwg/building-state.xml:
5893         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5894         * gst/gstelement.c: (gst_element_change_state):
5895         * gst/gstthread.c: (gst_thread_change_state):
5896           catch wrong state changes in element base class.
5897
5898 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5899
5900         * gst/gstinfo.h:
5901           clean up layout a little.
5902
5903 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5904
5905         * configure.ac:
5906         * testsuite/Makefile.am:
5907         * testsuite/states/Makefile.am:
5908         * testsuite/states/parent.c: (main):
5909           re-enable states testsuite dir.  Add test for state changes and
5910           parent behaviour
5911
5912 2004-07-09  Wim Taymans  <wim@fluendo.com>
5913
5914         * gst/schedulers/gstoptimalscheduler.c:
5915         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5916         (element_get_reachables_func), (element_get_reachables),
5917         (debug_element), (rechain_group), (group_migrate_connected),
5918         (gst_opt_scheduler_pad_unlink):
5919         Do not try to migrate decoupled elements to a new group since
5920         they are not added to groups.
5921
5922 2004-07-08  Benjamin Otte  <otte@gnome.org>
5923
5924         * gst/gstelement.c: (gst_element_error_func):
5925           make reentrant (= allow removing elements in error handler)
5926
5927 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5928
5929         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5930         (gst_pad_send_event), (gst_pad_call_chain_function):
5931           events sent to elements below PAUSED cannot be handled, so
5932           don't try to
5933
5934 2004-07-08  Wim Taymans  <wim@fluendo.com>
5935
5936         * gst/schedulers/gstoptimalscheduler.c:
5937         (chain_recursively_migrate_group), (create_group),
5938         (schedule_group), (gst_opt_scheduler_pad_link),
5939         (group_elements_set_visited), (element_get_reachables_func),
5940         (element_get_reachables), (group_can_reach_group), (debug_element),
5941         (rechain_group), (group_migrate_connected),
5942         (gst_opt_scheduler_pad_unlink):
5943         * testsuite/schedulers/Makefile.am:
5944         Implemented group splitting and rechaining.
5945         Fixes 143777 and 143777-2 in the testsuite.
5946
5947 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5948
5949         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5950           extra debugging
5951         * gst/gstevent.h:
5952         * gst/gstinfo.c: (gst_debug_log_default):
5953           print time nicely.  add thread pointer until someone figures out
5954           a completely portable way of getting at thread id's.
5955         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5956         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5957         (gst_pad_call_chain_function):
5958           extra debugging
5959         * gst/schedulers/gstoptimalscheduler.c:
5960         (get_group_schedule_function), (loop_group_schedule_function),
5961         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5962         (pad_clear_queued), (gst_opt_scheduler_iterate):
5963           rename BUFPEN and friends to DATAPEN since that's what they are.
5964
5965 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5966
5967         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5968         * gst/gstbuffer.h:
5969         * gst/gstpad.c:
5970           cleanups and debugging
5971
5972 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5973
5974         * configure.ac:
5975         * gst/gstvalue.c: (gst_value_compare_enum),
5976         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5977         (gst_value_can_compare), (gst_value_compare):
5978         * testsuite/Makefile.am:
5979         * testsuite/enumcaps/Makefile.am:
5980         * testsuite/enumcaps/enumcaps.c:
5981           Fix enum serialization, deserialization, comparison in caps, add
5982           a test to ensure that this continues working in the future.
5983
5984 2004-07-06  David Schleef  <ds@schleef.org>
5985
5986         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5987         Fix memleak.
5988
5989 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5990
5991         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5992         * gst/gstplugin.h:
5993         * gst/registries/gstxmlregistry.c:
5994         (plugin_times_older_than_recurse), (plugin_times_older_than),
5995         (gst_xml_registry_parse_padtemplate):
5996           only rebuild registry when actual plugins have a newer time than
5997           the registry.  Fixes #145520
5998
5999 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6000
6001         * docs/manual/manual.xml:
6002         * docs/manual/win32.xml:
6003           add chapter on win32 building.  fixes #142422
6004
6005 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6006
6007         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
6008
6009         * gst/autoplug/gstspider.c: (gst_spider_init),
6010         (gst_spider_dispose):
6011           fix spider memleaks.  fixes #137863
6012
6013 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6014
6015         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
6016
6017         * gst/schedulers/gstoptimalscheduler.c:
6018         (gst_opt_scheduler_pad_unlink):
6019           fix SIGBUS error, fixes #145338
6020
6021 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6022
6023         * gst/gstobject.c: (gst_object_replace):
6024         * gst/gstscheduler.c: (gst_scheduler_get_clock):
6025         * gst/gstsystemclock.c: (gst_system_clock_obtain):
6026           clean up clock lifecycle.  Fixes #109831
6027
6028 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6029
6030         * po/LINGUAS:
6031         * po/cs.po:
6032           added Czech translation (Miloslav Trmac)
6033
6034 2004-07-04  David Schleef  <ds@schleef.org>
6035
6036         * tools/Makefile.am:
6037         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
6038
6039 2004-07-04  David Schleef  <ds@schleef.org>
6040
6041         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
6042
6043 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6044
6045         * gst/gstbin.c: (gst_bin_restore_thyself):
6046           chain to parent restore so the bins get restored correctly
6047           in the editor
6048
6049 2004-07-03  David Schleef  <ds@schleef.org>
6050
6051         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6052         Actually do something in these functions, like before the big
6053         caps change.  (bug #145137)
6054
6055 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6056
6057         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6058         (gst_element_get_compatible_pad_filtered):
6059         * gst/gstthread.c: (gst_thread_main_loop):
6060           more debugging
6061
6062 2004-07-02  David Schleef  <ds@schleef.org>
6063
6064         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6065         * gst/gstobject.h:
6066         * gst/gstparse.h:
6067         * gst/gsttrace.h:
6068         * gst/gstxml.h:
6069
6070 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6071
6072         * gst/gstpad.c: (gst_pad_check_schedulers),
6073         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6074         (gst_pad_link_prepare):
6075           revert until testsuite is fixed
6076
6077 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6078
6079         * testsuite/Makefile.am:
6080         * testsuite/caps/filtercaps.c: (main):
6081         * testsuite/clock/clock1.c: (main):
6082         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6083           fix some more tests
6084
6085 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6086
6087         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6088         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6089         * testsuite/cleanup/cleanup4.c: (main):
6090           fix testsuite
6091
6092 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6093
6094         * libs/gst/control/control.c:
6095         * libs/gst/control/dparam.c:
6096         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6097         * libs/gst/control/dparammanager.c:
6098         * libs/gst/control/dparammanager.h:
6099         * testsuite/dynparams/Makefile.am:
6100         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6101         (gst_dptest_change_state), (gst_dptest_chain), (main):
6102           fix testcase for dparams
6103           add debugging category
6104
6105 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6106
6107         * testsuite/Rules:
6108           change path
6109
6110 2004-07-02  Benjamin Otte  <otte@gnome.org>
6111
6112         * tests/.cvsignore:
6113         * tests/Makefile.am:
6114         * tests/mass_elements.c: (gst_get_current_time), (main):
6115           add simple benchmark to test various speeds of fakesrc ! identity !
6116           identity ! ... ! fakesink.
6117           Usage: mass_elements [num_identities] [num_buffers]
6118           If not specified they default to 1000.
6119
6120 2004-07-02  Benjamin Otte  <otte@gnome.org>
6121
6122         * gst/gstpad.c: (gst_pad_check_schedulers),
6123         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6124         (gst_pad_link_prepare):
6125           check that pads that get linked belong to the same manager. The old
6126           code allowed linking elements before putting them into bins, so it
6127           worked to link them and then put them in different threads, which
6128           lead to weird behaviour.
6129           Since this effectively disallows linking elements before putting
6130           them in a bin, some applications might not work after this and error
6131           out. If these applications are too critical, we might need to revert
6132           that patch. Please test this before the next release...
6133
6134 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6135
6136         * gst/gstpad.c: (gst_pad_get_caps):
6137           throw an error if the getcaps function does not return a subset of
6138           the template caps.
6139         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6140           make disconts without position info an error in debugging
6141         * tests/spidey_bench.c: (handoff), (main):
6142           don't count first try when averaging
6143
6144 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6145
6146         * gst/gstplugin.c: (gst_plugin_load_file):
6147           figure out problem with dynamic test
6148
6149 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6150
6151         * docs/gst/Makefile.am:
6152           fix docs build
6153
6154 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6155
6156         * po/POTFILES.in:
6157         * po/af.po:
6158         * po/az.po:
6159         * po/en_GB.po:
6160         * po/fr.po:
6161         * po/nl.po:
6162         * po/sr.po:
6163         * po/sv.po:
6164         * po/tr.po:
6165         * po/uk.po:
6166         * tools/gst-register.c: (plugin_added_func), (main):
6167           i18n-ize -register, fix plural
6168
6169 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6170
6171         * gst/elements/gstidentity.c: (gst_identity_class_init),
6172         (gst_identity_init), (gst_identity_chain),
6173         (gst_identity_set_property), (gst_identity_get_property):
6174         * gst/elements/gstidentity.h:
6175           check for perfect stream
6176
6177 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6178
6179         * gst/elements/gstidentity.c: (gst_identity_chain):
6180           print offset_end
6181
6182 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6183
6184         * docs/gst/Makefile.am:
6185         * docs/gst/gstreamer-docs.sgml:
6186           doc fixes
6187
6188 2004-06-24  David Schleef  <ds@schleef.org>
6189
6190         * autogen.sh:  Remove call to env, since the buildbot isn't
6191         broken anymore.
6192
6193 2004-06-24  Wim Taymans  <wim@fluendo.com>
6194
6195         * gst/elements/Makefile.am:
6196         * gst/elements/gstelements.c:
6197         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6198         (gst_multifdsink_class_init), (gst_multifdsink_init),
6199         (gst_multifdsink_add), (gst_multifdsink_remove),
6200         (gst_multifdsink_clear), (gst_multifdsink_chain),
6201         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6202         * gst/elements/gstmultifdsink.h:
6203         Added an element that writes to multiple filedescriptors at once.
6204
6205 2004-06-24  Benjamin Otte  <otte@gnome.org>
6206
6207         * gst/parse/grammar.y:
6208           don't try to link elements before they have been added to bins
6209
6210 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6211
6212         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6213         (gst_file_pad_get_length):
6214         * libs/gst/bytestream/filepad.h:
6215           add 2 new functions
6216
6217 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6218
6219         * docs/gst/gstreamer-sections.txt:
6220         remove from docs, the define that Benjamin removed from gstelement.h
6221
6222 2004-06-22  Benjamin Otte  <otte@gnome.org>
6223
6224         * gst/gstelement.h:
6225           remove define that referenced a nonexisting GstElement struct member
6226
6227 2004-06-20  Benjamin Otte  <otte@gnome.org>
6228
6229         * gst/gstdata.c: (gst_data_is_writable):
6230           whoops, return values were wrong, so writable data was marked as
6231           non-writable and vice versa. (fixes #143953, spotted by Francis
6232           Labonte)
6233           Shows how rarely we need to copy data ;)
6234
6235 2004-06-20  Benjamin Otte  <otte@gnome.org>
6236
6237         * testsuite/schedulers/.cvsignore:
6238         * testsuite/schedulers/Makefile.am:
6239         * testsuite/schedulers/143777-2.c: (main):
6240           add test for opt breakage in bug #143777
6241
6242 2004-06-20  Benjamin Otte  <otte@gnome.org>
6243
6244         * gst/gstpad.c: (gst_pad_call_chain_function):
6245           check for if we were unlinked while inside the chainfunction (fixes
6246           entrygthread having issues with #143777)
6247         * testsuite/schedulers/143777.c: (main):
6248         * testsuite/schedulers/Makefile.am:
6249           add a test for that fix
6250
6251 2004-06-20  Benjamin Otte  <otte@gnome.org>
6252
6253         * gst/gstvalue.c: (gst_value_set_int_range):
6254           test that start is smaller then end
6255         * libs/gst/bytestream/Makefile.am:
6256         * libs/gst/bytestream/filepad.c: 
6257         * libs/gst/bytestream/filepad.h:
6258           add GstFilePad - a pad that behaves like a FILE*
6259         * testsuite/bytestream/.cvsignore:
6260         * testsuite/bytestream/Makefile.am:
6261         * testsuite/bytestream/filepadsink.c: 
6262           test for the GstFilePad
6263
6264 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6265
6266         * gst/elements/gstidentity.c: (gst_identity_class_init),
6267         (gst_identity_init), (gst_identity_set_clock),
6268         (gst_identity_chain), (gst_identity_set_property),
6269         (gst_identity_get_property):
6270         * gst/elements/gstidentity.h:
6271         * gst/gstclock.c: (gst_clock_id_wait):
6272           add a "sync" property to sync to the clock
6273
6274 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6275
6276         * gst/gstelementfactory.c: (gst_element_factory_create):
6277           make the freakin "elementfactory bla has no type" message more
6278           useful. So we actually can do something when someone shows up
6279           complaining about it.
6280
6281 2004-06-15  Johan Dahlin  <johan@gnome.org>
6282
6283         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6284         found. This matches the old behavior better. Thanks to Thomas for
6285         pointing out.
6286
6287 2004-06-14  David Schleef  <ds@schleef.org>
6288
6289         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6290         -fomit-frame-pointer.  Appears to generate correct code in
6291         other cases as well.
6292
6293 2004-06-14  Johan Dahlin  <johan@gnome.org>
6294
6295         * tools/gst-inspect.c (main): Add two new command line options: -a
6296         to print all elements and -n to print the name on each line. Also
6297         fix some error reporting.
6298         (main): Simplify, remove -n and always print names if -a is specified
6299
6300 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6301
6302         * win32/gstconfig.h:
6303         * win32/GSTreamer.vcproj:
6304         * win32/Makefile:
6305         * gst/gstconfig.h.in:
6306         * gst/gst.h:
6307         * gst/gstbin.h:
6308         * gst/gstelement.h:
6309         * gst/gstevent.h:
6310         * gst/gstobject.h:
6311         * gst/gstpad.h:
6312         * docs/gst/gstreamer-sections.txt:
6313         * docs/gst/tmpl/gstconfig.sgml:
6314           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6315
6316 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6317         * docs/gst/gstreamer-sections.txt:
6318         * docs/gst/tmpl/gstconfig.sgml:
6319         Add the GSTREAMER_EXPORT macro to the docs
6320
6321 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6322
6323         * tools/gst-compprep.c: (handle_xmlerror), (main):
6324         Add a check for the version that introduced SetStructuredError to fix
6325         the build on FC1
6326
6327 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6328
6329         * win32/msvc71.sln:
6330         * win32/testsuite/:
6331           prepare to compile the testsuite with MSVC
6332
6333 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6334
6335         * docs/manual/win32.xml:
6336           attempt to transform the Win32 README into an XML doc
6337
6338 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6339
6340         * gst/gst.c:
6341         * gst/gstbin.*:
6342         * gst/config.h.in:
6343         * gst/gstelement.*:
6344         * gst/gstevent.h:
6345         * gst/gstobject.*:
6346         * gst/gstpad.h:
6347         * tools/gst-register.c:
6348         * win32/gstreamer.def:
6349           extern symbols are now exported for the Windows DLL
6350
6351 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6352
6353         * gst/gstinfo.h:
6354           fix a problem to enable/disable DEBUG under MSVC
6355
6356 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6357
6358         * win32/:
6359           enable more debug code in DEBUG build
6360
6361 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6362
6363         * win32/config.h:
6364         * gst/gst-i18n-app.h:
6365           enable NLS under Windows
6366
6367 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6368         * tools/gst-compprep.c: (handle_xmlerror), (main):
6369           Make an error that baffled me a bit clearer
6370
6371 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6372
6373         * gst/gstqueue.c:
6374           don't use g_queue_get_length () because it's 2.4, use ->length
6375
6376 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6377
6378         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6379
6380         * tools/gst-inspect.c: (print_signal_info):
6381           don't free random data twice. (fixes #144185)
6382
6383 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6384
6385         * gst/gstqueue.c:
6386         * gst/gstqueue.h:
6387           fix removing from the wrong queue on event timeout
6388           fix disposing of the event queue by casting correctly
6389           add mutexes for handling the event queue
6390           someone was sleeping when fixing queue last time around :)
6391
6392 2004-06-10  Johan Dahlin  <johan@gnome.org>
6393
6394         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6395         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6396
6397 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6398
6399         * docs/random/gdp:
6400         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6401         * libs/gst/dataprotocol/dataprotocol.c:
6402         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6403         (gst_dp_buffer_from_header):
6404         * libs/gst/dataprotocol/dataprotocol.h:
6405         * libs/gst/dataprotocol/dp-private.h:
6406           rev version to 0.1, add buffer flags and copy them
6407
6408 2004-06-09  Johan Dahlin  <johan@gnome.org>
6409
6410         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6411         the flags from the buffer we're copying.
6412
6413 2004-06-09  Wim Taymans  <wim@fluendo.com>
6414
6415         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6416         * gst/elements/gstidentity.c: (gst_identity_init),
6417         (gst_identity_chain):
6418         Print more buffer info in fakesink.
6419         Make identity output similar to fakesink.
6420
6421 2004-06-07  Daniel Gazard  <dany42@free.fr>
6422
6423         reviewed by Benjamin Otte  <otte@gnome.org>
6424
6425         * configure.ac:
6426           fix cross compiling not working. (fixes #143741)
6427
6428 2004-06-07  Benjamin Otte  <otte@gnome.org>
6429
6430         * gst/gstelement.c: (gst_element_set_time_delay):
6431           add failure check
6432         * gst/gstinfo.h:
6433           put brackets around macro arguments of GST_TIME_ARGS, add note to
6434           move it to correct header in 0.9
6435
6436 2004-06-07  Benjamin Otte  <otte@gnome.org>
6437
6438         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6439         (gst_file_index_load), (_file_index_id_save_entries),
6440         (gst_file_index_commit), (gst_file_index_add_association),
6441         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6442         (gst_file_index_plugin_init):
6443           make debugging use a default category
6444
6445 2004-06-06  David Moore  <dcm@acm.org>
6446
6447         reviewed by Benjamin Otte  <otte@gnome.org>
6448
6449         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6450         (gst_fdsrc_change_state):
6451           reset offset counter when going READY => PAUSED. (fixes #142903)
6452
6453 2004-06-06  ed@catmur.co.uk
6454
6455         reviewed by Benjamin Otte  <otte@gnome.org>
6456
6457         * gst/registries/gstxmlregistry.c:
6458         (gst_xml_registry_rebuild_recurse):
6459           don't rely on g_dir_open to figure out if a file is a directory, use
6460           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6461           directories. (fixes #142850)
6462
6463 2004-06-06  Benjamin Otte  <otte@gnome.org>
6464
6465         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6466           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6467         * libs/gst/bytestream/adapter.c:
6468         * libs/gst/bytestream/adapter.h:
6469           fix copyright in header and typo in debugging category name
6470
6471 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6472
6473         * configure.ac:
6474           bump nano to cvs
6475
6476 === release 0.8.3 ===
6477
6478 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6479
6480         * configure.ac:
6481           update libtool versioning
6482           do a new release
6483         * docs/gst/tmpl/gstelement.sgml:
6484         * docs/gst/tmpl/gsttypes.sgml:
6485         * gst/gstinfo.c: (_gst_debug_init):
6486           put back GST_CAT_DATAFLOW to fix API breakage
6487
6488 2004-06-04  David Schleef  <ds@schleef.org>
6489
6490         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6491
6492 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6493
6494         * configure.ac:
6495           bump nano to cvs
6496
6497 === release 0.8.2 ===
6498
6499 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6500
6501         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6502           check GST_DEBUG environment variable which is parsed the same way
6503           as --gst-debug=
6504
6505 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6506
6507         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6508                             gstmd5sink.c gstshaper.c gsttee.c
6509                             gsttypefindelement.c
6510         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6511
6512           - removing trailing commas at end of enums
6513             it is correct C99 code but C90 compilers would complain
6514             (AIX, Forte, ...)
6515             ('should' fix #143290, at least partially)
6516
6517 2004-05-27  Wim Taymans  <wim@fluendo.com>
6518
6519         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6520         (chain_group_set_enabled), (create_group), (add_to_group),
6521         (merge_groups), (setup_group_scheduler), (group_elements),
6522         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6523         Don't try to follow the pad connections with other groups
6524         when a loop based element is added to the scheduler because
6525         the bin will inform the scheduler about the pad links a little
6526         later.
6527
6528 2004-05-27  Wim Taymans  <wim@fluendo.com>
6529
6530         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6531         (remove_from_chain), (chain_group_set_enabled),
6532         (setup_group_scheduler), (group_element_set_enabled),
6533         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6534         (gst_opt_scheduler_show):
6535         Elements without a group can do a state change as well, just wait
6536         with the setup of the scheduling function when it is added to a
6537         chain.
6538
6539 2004-05-27  Wim Taymans  <wim@fluendo.com>
6540
6541         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6542         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6543         (merge_groups), (setup_group_scheduler),
6544         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6545         (gst_opt_scheduler_show):
6546         Fixes to maintain internal consistency of the scheduler data
6547         structures. 
6548          - adding an enabled group to a chain should increment the
6549            number of enabled elements in that chain.
6550          - removing an enabled group from a chain could disable the
6551            chain.
6552          - removing a disabled group from a chain could enable the
6553            chain.
6554          - add g_assert when internal inconsistency is detected.
6555          - adding an element to a group could increase the number of
6556            links this group has with other groups.
6557          - merging two groups also merges the chains.
6558          - also show group links in the _show method.
6559            
6560
6561 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6562
6563         * gst/gstcaps.c: (gst_caps_structure_simplify):
6564           don't print error messages when there is no error
6565         * gst/gstvalue.c: (gst_value_compare_int_range):
6566           compare the second value, too
6567         * testsuite/caps/Makefile.am:
6568         * testsuite/caps/random.c: (assert_on_error), (main):
6569           add tests to make sure the two things above are checked for
6570
6571 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6572
6573         * configure.ac:
6574         * libs/gst/dataprotocol/Makefile.am:
6575         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6576         * libs/gst/dataprotocol/dataprotocol.h:
6577           wrap header in GST_ENABLE_NEW.  make code use it
6578
6579 2004-05-23  Johan Dahlin  <johan@gnome.org>
6580
6581         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6582         so verbose and print GstElement signal names all the time.
6583
6584 2004-05-22  David Schleef  <ds@schleef.org>
6585
6586         * gst/registries/gstxmlregistry.c:
6587         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6588         (bug #142957)
6589
6590 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6591
6592         * configure.ac:
6593           scrub cflags for glib2 so gcc doesn't complain when glib is in
6594           /usr/local
6595
6596 2004-05-21  Johan Dahlin  <johan@gnome.org>
6597
6598         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6599         __GNUC__, patch from Brian Cameron, fixes bug #142804
6600
6601 2004-05-20  David Schleef  <ds@schleef.org>
6602
6603         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6604         comparison code.  (bug #142819)
6605
6606 2004-05-20  Wim Taymans  <wim@fluendo.com>
6607
6608         * gst/gstbuffer.c: (gst_buffer_default_copy):
6609         * gst/gstbuffer.h:
6610         Added Comment to a flag.
6611         copy relevant flags in _buffer_copy.
6612
6613 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6614
6615         reviewed by: Wim Taymans <wim at fluendo dot com>
6616
6617         * gst/gstbuffer.h:
6618           add GST_BUFFER_IN_CAPS buffer flag
6619         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6620         (gst_structure_parse_any_list), (gst_structure_parse_list),
6621         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6622         * gst/gstvalue.c: (gst_value_serialize_any_list),
6623         (gst_value_transform_any_list_string),
6624         (gst_value_list_prepend_value), (gst_value_list_append_value),
6625         (gst_value_list_get_size), (gst_value_list_get_value),
6626         (gst_value_transform_list_string),
6627         (gst_value_transform_fixed_list_string),
6628         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6629         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6630         (_gst_value_initialize):
6631         * gst/gstvalue.h:
6632           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6633           < , > as a format.
6634         * testsuite/caps/string-conversions.c: (main):
6635           add regression tests for < >
6636
6637 2004-05-20  Johan Dahlin  <johan@gnome.org>
6638
6639         * docs/gst/Makefile.am (all-local): Re-add
6640
6641 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6642
6643         * docs/gst/Makefile.am:
6644         * docs/gst/gstreamer-docs.sgml:
6645         * docs/libs/Makefile.am:
6646         * docs/libs/gstreamer-libs-docs.sgml:
6647           fix distcheck issues
6648
6649 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6650
6651         * libs/gst/dataprotocol/Makefile.am:
6652           add to autotest
6653
6654 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6655
6656         * libs/gst/dataprotocol/Makefile.am:
6657         * libs/gst/dataprotocol/dataprotocol.c:
6658         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6659         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6660         * libs/gst/dataprotocol/dp-private.h:
6661           use GST macros to read/write fixed length ints
6662           add some more asserts
6663
6664 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6665
6666         * docs/libs/gstreamer-libs-docs.sgml:
6667         * docs/libs/gstreamer-libs-sections.txt:
6668           remove idct and putbits
6669         * configure.ac:
6670         * docs/libs/tmpl/gstdataprotocol.sgml:
6671         * libs/gst/Makefile.am:
6672         * libs/gst/dataprotocol/Makefile.am:
6673         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6674         (buffer_test), (caps_test), (event_test), (main):
6675         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6676         (gst_dp_dump_byte_array), (gst_dp_init),
6677         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6678         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6679         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6680         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6681         (gst_dp_validate_header), (gst_dp_validate_payload),
6682         (gst_dp_validate_packet), (plugin_init):
6683         * libs/gst/dataprotocol/dataprotocol.h:
6684         * libs/gst/dataprotocol/dp-private.h:
6685           add dataprotocol
6686
6687 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6688
6689         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6690           fix int variable deserialization and add a helper so we can actually
6691           debug this.
6692
6693 2004-05-18  David Schleef  <ds@schleef.org>
6694
6695         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6696           argv[0].  Calling yourself is probably not the best way to
6697           construct a test like this, btw.
6698
6699 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6700
6701         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6702           don't claim to be more intelligent than a scheduler when the
6703           scheduler claims the pipeline is stopped
6704         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6705         (safe_cothread_destroy),
6706         (gst_entry_scheduler_remove_all_cothreads),
6707         (gst_entry_scheduler_reset), (_remove_cothread),
6708         (gst_entry_scheduler_state_transition):
6709           hold off cothread destruction if we're not in main cothread
6710         * configure.ac:
6711         * testsuite/Makefile.am:
6712           add new test dir
6713         * testsuite/schedulers/.cvsignore:
6714         * testsuite/schedulers/Makefile.am:
6715           add tests
6716         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6717           check relinking and adding/removing elements from a running pipeline
6718         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6719           check unlinking in a running pipeline
6720         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6721           check unreffing a running pipeline
6722         * testsuite/schedulers/useless_iteration.c: (main):
6723           check iterating a pipeline that contains running threads works
6724
6725 2004-05-18  David Schleef  <ds@schleef.org>
6726
6727         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6728           is false.
6729
6730 2004-05-18  Wim Taymans  <wim@fluendo.com>
6731
6732         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6733         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6734         Fixed an error introduced with patch for 1.63. When setting
6735         a get based element as the entry point in a group, make sure
6736         to mark the group as GET based.
6737
6738 2004-05-18  Wim Taymans  <wim@fluendo.com>
6739
6740         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6741         (setup_group_scheduler), (loop_group_schedule_function),
6742         (gst_opt_scheduler_pad_link):
6743         Added some more debug info and fixed a bug where the group
6744         type was set to LOOP but it was in fact unknown.
6745
6746 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6747
6748         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6749           make resetting scheduler work twice in a row
6750
6751 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6752
6753         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6754         (CREATE_USERIALIZATION), (_gst_value_initialize),
6755         (gst_value_compare_float), (gst_value_serialize_float),
6756         (gst_value_deserialize_float), (gst_value_compare_enum),
6757         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6758           add serialization and comparison functions for long, int64, enum and
6759           float values
6760         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6761           use best serialization function in type hierarchy instead of only a
6762           matching one. This is required for enums to work.
6763         * gst/parse/grammar.y:
6764           use gst_caps_deserialize
6765         * testsuite/parse/Makefile.am:
6766           parse1 now works
6767         * testsuite/parse/parse1.c: (main):
6768           remove aggregator check, aggregator is broken, this test works now
6769           but fails because of bug #138012
6770         * testsuite/parse/parse2.c: (main):
6771           s/xvideosink/xvimagesink - this test looks a lot like we should
6772           disable it
6773
6774 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6775
6776         * gst/gstelement.c: (gst_element_class_init):
6777           whoops, store the signal id correctly
6778         * gst/schedulers/gstbasicscheduler.c:
6779         (gst_basic_scheduler_chain_wrapper):
6780           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6781           chain function isn't linked
6782
6783 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6784         * configure.ac:
6785         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6786         support until we decide where the flags should be used
6787         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6788         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6789         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6790         Output refused caps in the debug info
6791
6792 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6793
6794         * gst/elements/gstidentity.c: (gst_identity_chain):
6795           add duration debug
6796         * gst/gstinfo.c: (gst_debug_log_default):
6797           add timestamp
6798
6799 2004-05-13  Benjamin Otte  <otte@gnome.org>
6800
6801         * gst/gstpipeline.c: (gst_pipeline_dispose),
6802         (gst_pipeline_change_state):
6803           call gst_scheduler_reset on dispose (fixes #141416)
6804
6805 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6806
6807         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6808           compute mapsize correctly
6809         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6810           use correct datatypes when calling a varargs function
6811         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6812           push a DISCONT event as first thing
6813         * gst/gst_private.h:
6814         * gst/gstinfo.c: (_gst_debug_init):
6815           remove GST_DATAFLOW debugging category
6816         * gst/gstbin.c: (gst_bin_iterate):
6817           use GST_SCHEDULING category
6818         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6819         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6820         (gst_pad_call_get_function):
6821           add GST_DATAFLOW to easily track flow of buffers or events.
6822         * gst/gstqueue.c: (gst_queue_get_type),
6823         (gst_queue_handle_pending_events), (gst_queue_chain),
6824         (gst_queue_get), (gst_queue_handle_src_event):
6825           use own static debugging category GST_DATAFLOW for dataflow,
6826           use DEBUG category for showing which path events go, use LOG
6827           category for buffers.
6828
6829 2004-05-10  David Schleef  <ds@schleef.org>
6830
6831         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6832
6833 2004-05-10  David Schleef  <ds@schleef.org>
6834
6835         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6836         symbols, because otherwise we don't know what they are.  Thanks,
6837         the GStreamer team.
6838         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6839
6840 2004-05-10  David Schleef  <ds@schleef.org>
6841
6842         (from Steve Lhomme)
6843         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6844         are deleted.  Fix.
6845         * win32/Makefile.inspect:
6846         * win32/Makefile.launch:
6847         * win32/Makefile.register:
6848
6849 2004-05-10  David Schleef  <ds@schleef.org>
6850
6851         * gst/gstinfo.h: Add missing inline function.
6852         * gst/gsttrace.c: add include
6853         * gst/parse/grammar.y: remove unused code
6854         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6855         more portable.
6856         * tools/gst-register.c: wrap unistd.h
6857         
6858         More additions/fixes from Steve for the MSVC build.
6859         * win32/GStreamer.vcproj:
6860         * win32/Makefile:
6861         * win32/Makefile.inspect:
6862         * win32/Makefile.launch:
6863         * win32/Makefile.register:
6864         * win32/README.txt:
6865         * win32/gst-inspect.vcproj:
6866         * win32/gst-launch.vcproj:
6867         * win32/gst-register.vcproj:
6868         * win32/gstbytestream.def:
6869         * win32/gstbytestream.vcproj:
6870         * win32/gstconfig.h:
6871         * win32/gstelements.def:
6872         * win32/gstelements.vcproj:
6873         * win32/gstenumtypes.c:
6874         * win32/gstenumtypes.h:
6875         * win32/gstoptimalscheduler.def:
6876         * win32/gstoptimalscheduler.vcproj:
6877         * win32/gstreamer.def:
6878         * win32/gstspider.def:
6879         * win32/gstspider.vcproj:
6880         * win32/gstversion.h:
6881         * win32/msvc71.sln:
6882
6883 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6884
6885         * gst/gstelement.c: (gst_element_class_init),
6886         (gst_element_no_more_pads):
6887         * gst/gstelement.h:
6888           add gst_element_no_more_pads and the "no-more-pads" signal
6889
6890 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6891
6892         * gst/gstregistry.c: (gst_registry_add_plugin):
6893           refuse to add plugins when a plugin with same name is already
6894           registered. Fixes a bunch of "How to remove plugins?" issues.
6895           May lead to other problems though, let's test
6896
6897 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6898
6899         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6900         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6901         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6902
6903 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6904
6905         * tests/Makefile.am: fix am16 issue
6906
6907 2004-05-09  Benjamin Otte  <otte@gnome.org>
6908
6909         * libs/gst/bytestream/Makefile.am:
6910           we should indeed add .c files to makefiles or they won't be built
6911           (d'oh)
6912
6913 2004-05-08  Benjamin Otte  <otte@gnome.org>
6914
6915         * gst/gstpad.c: (gst_pad_proxy_fixate):
6916           really reduce the set of caps
6917
6918 2004-05-08  Benjamin Otte  <otte@gnome.org>
6919
6920         * tests/Makefile.am:
6921         * tests/spidey_bench.c: (handoff), (main):
6922           add benchmark to test how long spider needs to create a pipeline
6923
6924 2004-05-08  Benjamin Otte  <otte@gnome.org>
6925
6926         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6927           mark links as unengaged when unnegotiating instead of deactivating.
6928           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6929
6930 2004-05-08  Benjamin Otte  <otte@gnome.org>
6931
6932         * docs/manual/helloworld.xml:
6933           s/audiosink/osssink (patch by Patrick Guimond)
6934
6935 2004-05-07  David Schleef  <ds@schleef.org>
6936
6937         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6938         since it contains important stuff.
6939
6940 2004-05-07  David Schleef  <ds@schleef.org>
6941
6942         * testsuite/caps/caps.c: (test3), (main): A check for appending
6943         ANY caps.
6944
6945 2004-05-07  David Schleef  <ds@schleef.org>
6946
6947         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6948         which may contain commas.  Fixes detection of -Wa,-mregnames
6949
6950 2004-05-06  David Schleef  <ds@schleef.org>
6951
6952         Changes to handle compilers that don't have variadic macro
6953         support.  In particular, glib headers define some inlines
6954         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6955         builds.
6956         * gst/Makefile.am:
6957         * gst/cothreads.c:
6958         * gst/elements/gstfdsink.c:
6959         * gst/elements/gstfdsrc.c:
6960         * gst/elements/gstfilesink.c:
6961         * gst/elements/gstfilesrc.c:
6962         * gst/gst_private.h:
6963         * gst/gstatomic.c:
6964         * gst/gstcaps.c: (gst_caps_append):
6965         * gst/gstcpu.c: (gst_cpuid_i386):
6966         * gst/gstelement.c:
6967         * gst/gsterror.c:
6968         * gst/gstfilter.c:
6969         * gst/gstinfo.h:
6970         * gst/gstprobe.c:
6971         * gst/gstquery.c:
6972         * gst/gstregistry.c:
6973         * gst/gststructure.c:
6974         * gst/gsttaginterface.c:
6975         * gst/gsttrace.c: (gst_trace_new):
6976         * gst/gsttrashstack.c:
6977         * gst/gsturi.c:
6978         * gst/gstvalue.c:
6979         * gst/parse/grammar.y:
6980         * gst/parse/parse.l:
6981         * tools/gst-inspect.c: (main):
6982         * tools/gst-launch.c: (main):
6983         * tools/gst-xmlinspect.c: (PUT_STRING):
6984
6985 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6986
6987         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6988         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6989         * gst/elements/gstfilesrc.h:
6990           send NEW_MEDIA events correctly
6991         * gst/elements/gsttypefindelement.c: (start_typefinding),
6992         (gst_type_find_element_handle_event):
6993           restart typefinding when we get a NEW_MEDIA event
6994         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6995         (gst_bin_dispose):
6996           don't die when someone removes elements in callbacks
6997         * gst/gstelement.c: (gst_element_change_state):
6998           improve debugging
6999         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
7000           we need a NEW_MEDIA event to engage a link
7001         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
7002           don't g_print debugging stuff
7003         * testsuite/caps/simplify.c: (check_caps):
7004
7005 2004-05-04  Benjamin Otte  <otte@gnome.org>
7006
7007         * gst/parse/grammar.y:
7008           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
7009
7010 2004-05-04  Benjamin Otte  <otte@gnome.org>
7011
7012         * testsuite/caps/renegotiate.c: (main):
7013           improve output in error case
7014
7015 2004-05-04  Benjamin Otte  <otte@gnome.org>
7016
7017         * gst/parse/grammar.y:
7018           fix assert to not trigger when there's no error argument
7019         * gst/parse/parse.l:
7020           fix definition of caps to allow more than two structures
7021         * testsuite/caps/Makefile.am:
7022         * testsuite/caps/renegotiate.c: (main):
7023           it's sinesrc and works in that case
7024
7025 2004-05-04  Wim Taymans  <wim@fluendo.com>
7026
7027         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7028         (group_dec_link), (gst_opt_scheduler_pad_unlink):
7029         when removing an element from a group, we always need to
7030         decrement the link count that this group had with other 
7031         groups through the element.
7032         added an extra assert to catch inconsistencies when decrementing
7033         the link count.
7034
7035 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7036
7037         * configure.ac:
7038         * docs/gst/Makefile.am:
7039         * docs/gst/gstreamer-sections.txt:
7040         * docs/gst/tmpl/gstcompat.sgml:
7041         * examples/appreader/Makefile.am:
7042         * examples/cutter/Makefile.am:
7043         * examples/events/Makefile.am:
7044         * examples/helloworld/Makefile.am:
7045         * examples/helloworld2/Makefile.am:
7046         * examples/launch/Makefile.am:
7047         * examples/manual/Makefile.am:
7048         * examples/mixer/Makefile.am:
7049         * examples/pingpong/Makefile.am:
7050         * examples/plugins/Makefile.am:
7051         * examples/queue/Makefile.am:
7052         * examples/queue2/Makefile.am:
7053         * examples/queue3/Makefile.am:
7054         * examples/queue4/Makefile.am:
7055         * examples/retag/Makefile.am:
7056         * examples/thread/Makefile.am:
7057         * examples/typefind/Makefile.am:
7058         * examples/xml/Makefile.am:
7059         * gst/Makefile.am:
7060         * gst/autoplug/Makefile.am:
7061         * gst/elements/Makefile.am:
7062         * gst/gstcompat.h:
7063         * gst/indexers/Makefile.am:
7064         * gst/parse/Makefile.am:
7065         * gst/registries/Makefile.am:
7066         * gst/schedulers/Makefile.am:
7067         * libs/gst/bytestream/Makefile.am:
7068         * libs/gst/control/Makefile.am:
7069         * libs/gst/getbits/Makefile.am:
7070         * po/af.po:
7071         * po/az.po:
7072         * po/en_GB.po:
7073         * po/fr.po:
7074         * po/nl.po:
7075         * po/sr.po:
7076         * po/sv.po:
7077         * po/tr.po:
7078         * po/uk.po:
7079         * tests/Makefile.am:
7080         * tests/bufspeed/Makefile.am:
7081         * tests/instantiate/Makefile.am:
7082         * tests/memchunk/Makefile.am:
7083         * tests/muxing/Makefile.am:
7084         * tests/negotiation/Makefile.am:
7085         * tests/probes/Makefile.am:
7086         * tests/sched/Makefile.am:
7087         * tests/seeking/Makefile.am:
7088         * tests/threadstate/Makefile.am:
7089         * testsuite/caps/Makefile.am:
7090         * testsuite/cleanup/Makefile.am:
7091         * testsuite/dlopen/Makefile.am:
7092         * testsuite/dynparams/Makefile.am:
7093         * testsuite/plugin/Makefile.am:
7094         * testsuite/states/Makefile.am:
7095         * tools/Makefile.am:
7096           reorganize compile/link flags to be consistent
7097           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7098
7099 2004-05-04  David Schleef  <ds@schleef.org>
7100
7101         The "once more, with feeling" check-in.
7102         * testsuite/caps/Makefile.am: dist caps_strings
7103         * testsuite/caps/renegotiate.c: (main): This test triggers a
7104           segfault in the core.  Marking as failing.
7105
7106 2004-05-03  David Schleef  <ds@schleef.org>
7107
7108         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7109           by the build bots.
7110         * testsuite/caps/renegotiate.c: (main): Same.
7111
7112 2004-05-03  David Schleef  <ds@schleef.org>
7113
7114         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7115
7116 2004-05-03  David Schleef  <ds@schleef.org>
7117
7118         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7119           variable to find our source file.
7120
7121 2004-05-03  David Schleef  <ds@schleef.org>
7122
7123         * configure.ac:  Link plugins with libgstreamer and dependent
7124           libraries
7125         * testsuite/caps/Makefile.am:
7126         * testsuite/caps/caps_strings:
7127         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7128           through a file of caps strings and test each one
7129
7130 2004-05-04  Benjamin Otte  <otte@gnome.org>
7131
7132         * libs/gst/bytestream/Makefile.am:
7133         * libs/gst/bytestream/adapter.c: 
7134         * libs/gst/bytestream/adapter.h:
7135           add GstAdapter, similar to bytestream, but doesn't require ugly event
7136           handling or uglier loopbased elements
7137
7138 2004-05-03  David Schleef  <ds@schleef.org>
7139
7140         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7141         * testsuite/caps/erathostenes.c:
7142         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7143
7144 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7145
7146         * docs/pwg/pwg.xml:
7147           remove hardcoded stylesheet path (duh)
7148         * docs/random/release:
7149         * docs/gst/gstreamer-sections.txt:
7150         * gst/Makefile.am:
7151         * gst/gst.h:
7152         * gst/gst_private.h:
7153         * gst/gstcaps.c:
7154         * gst/gstevent.c:
7155         * gst/gstformat.c:
7156         * gst/gstinfo.c:
7157         * gst/gstinfo.h:
7158         * gst/gstinterface.c:
7159         * gst/gstmemchunk.c:
7160         * gst/gstprobe.c:
7161         * gst/gstquery.c:
7162         * gst/gstregistry.c:
7163         * gst/gstregistrypool.c:
7164         * gst/gststructure.c:
7165         * gst/gsttaginterface.c:
7166         * gst/gstthread.c:
7167         * gst/gsttrace.c:
7168         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7169         * gst/gsturi.c:
7170         * gst/gstvalue.c:
7171           deprecate gst_info; remove gstlog.h
7172    
7173
7174 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7175
7176         * Makefile.am:
7177         * po/en_GB.po:
7178         * po/sv.po:
7179         * po/uk.po:
7180           updated translations
7181
7182 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7183
7184         * gst/gstbin.c: (gst_bin_dispose):
7185           better debugging
7186
7187 2004-05-03  Johan Dahlin  <johan@gnome.org>
7188
7189         * gst/schedulers/gstoptimalscheduler.c
7190         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7191         really is a GstElement. Avoids critical when running gst-launch -v
7192         and a oggdemux/decoding pipeline.
7193
7194 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7195
7196         * docs/gst/tmpl/gstpipeline.sgml :
7197         * docs/manual/elements-api.xml :
7198                 doc fix by Patrick Guimond (Protector) from devel ML
7199                 reviewed by ronald
7200
7201 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7202
7203         * docs/gst/Makefile.am :
7204         * docs/libs/Makefile.am :
7205                 apply a patch from Arwed v. Merkatz so that gtk-doc
7206                 generated docs install (same for .devhelp file)
7207                 (fixes part 1 of #138836)
7208
7209 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7210
7211         * docs/faq/dependencies.xml: typo
7212         * docs/faq/getting.xml :
7213             - fix download URL for new gstreamer site
7214             - hide sf.net download page as latest version aren't there
7215             - fix apt URLs
7216             - fill "get via CVS" paragraph (link to dev page on the site)
7217         * docs/faq/general.xml:
7218             hide status tables as they no more exists
7219             change case on plugins license file to reflect reality
7220         * docs/faq/troubleshooting.xml:
7221             remove the wiki question/answer as there is no more wiki
7222
7223 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7224
7225         * gst/gsterror.h:
7226           include the headers needed for declarations used in this header
7227
7228 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7229
7230         * docs/random/uraeus/gstreamer_and_midi.txt :
7231           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7232           (fixes #132288)
7233
7234 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7235
7236         reviewed by Benjamin Otte  <otte@gnome.org>
7237
7238         * gst/schedulers/gthread-cothreads.h:
7239           free allocated data for main cothread, too when destroying context
7240           (fixes #141417)
7241
7242 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7243
7244         * docs/manual/goals.xml : remove duplicated paragraph at end 
7245         of doc page (fixes #141448)
7246
7247 2004-04-29  David Schleef  <ds@schleef.org>
7248
7249         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7250         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7251
7252 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7253
7254         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7255           fix property
7256         * gst/gstcaps.c:
7257           fix doc string
7258         * po/POTFILES.in:
7259           rename typefind source file
7260
7261 2004-04-28  David Schleef  <ds@schleef.org>
7262
7263         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7264         * win32/GStreamer.vcproj:
7265         * win32/Makefile:
7266         * win32/config.h:
7267         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7268         (_trewinddir), (_ttelldir), (_tseekdir):
7269         * win32/dirent.h:
7270         * win32/gst-inspect.vcproj:
7271         * win32/gst-launch.vcproj:
7272         * win32/gst-register.vcproj:
7273         * win32/gstbytestream.vcproj:
7274         * win32/gstelements.vcproj:
7275         * win32/gstoptimalscheduler.vcproj:
7276         * win32/gstspider.vcproj:
7277         * win32/gtchar.h:
7278         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7279         * win32/mman.h:
7280         * win32/mman.inl:
7281         * win32/msvc71.sln:
7282
7283 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7284
7285         * gst/gst.c: (init_post):
7286         * gst/gstinfo.c:
7287           remove useless _gst_progname stuff
7288         * tools/gst-inspect.c: (print_field), (print_caps):
7289           improve caps output
7290
7291 2004-04-28  David Schleef  <ds@schleef.org>
7292
7293         Disable parsing of a lot of files that aren't part of the
7294         exported API.  Move corresponding template files to old/,
7295         waiting for removal when they don't contain anything
7296         interesting.
7297         * docs/gst/Makefile.am:
7298         * docs/gst/gstreamer-sections.txt:
7299         * docs/gst/tmpl/cothreads.sgml:
7300         * docs/gst/tmpl/cothreads_compat.sgml:
7301         * docs/gst/tmpl/gettext.sgml:
7302         * docs/gst/tmpl/gobject2gtk.sgml:
7303         * docs/gst/tmpl/grammar.tab.sgml:
7304         * docs/gst/tmpl/gst-i18n-app.sgml:
7305         * docs/gst/tmpl/gst-i18n-lib.sgml:
7306         * docs/gst/tmpl/gst_private.sgml:
7307         * docs/gst/tmpl/gstaggregator.sgml:
7308         * docs/gst/tmpl/gstarch.sgml:
7309         * docs/gst/tmpl/gstatomic_impl.sgml:
7310         * docs/gst/tmpl/gstbufferstore.sgml:
7311         * docs/gst/tmpl/gstdata_private.sgml:
7312         * docs/gst/tmpl/gstdisksink.sgml:
7313         * docs/gst/tmpl/gstdisksrc.sgml:
7314         * docs/gst/tmpl/gstelementfactory.sgml:
7315         * docs/gst/tmpl/gstextratypes.sgml:
7316         * docs/gst/tmpl/gstfakesink.sgml:
7317         * docs/gst/tmpl/gstfakesrc.sgml:
7318         * docs/gst/tmpl/gstfdsink.sgml:
7319         * docs/gst/tmpl/gstfdsrc.sgml:
7320         * docs/gst/tmpl/gstfilesink.sgml:
7321         * docs/gst/tmpl/gstfilesrc.sgml:
7322         * docs/gst/tmpl/gsthttpsrc.sgml:
7323         * docs/gst/tmpl/gstidentity.sgml:
7324         * docs/gst/tmpl/gstindexfactory.sgml:
7325         * docs/gst/tmpl/gstmarshal.sgml:
7326         * docs/gst/tmpl/gstmd5sink.sgml:
7327         * docs/gst/tmpl/gstmultidisksrc.sgml:
7328         * docs/gst/tmpl/gstmultifilesrc.sgml:
7329         * docs/gst/tmpl/gstpadtemplate.sgml:
7330         * docs/gst/tmpl/gstpipefilter.sgml:
7331         * docs/gst/tmpl/gstschedulerfactory.sgml:
7332         * docs/gst/tmpl/gstsearchfuncs.sgml:
7333         * docs/gst/tmpl/gstshaper.sgml:
7334         * docs/gst/tmpl/gstspider.sgml:
7335         * docs/gst/tmpl/gstspideridentity.sgml:
7336         * docs/gst/tmpl/gststatistics.sgml:
7337         * docs/gst/tmpl/gsttee.sgml:
7338         * docs/gst/tmpl/gsttimecache.sgml:
7339         * docs/gst/tmpl/gsttypefind.sgml:
7340         * docs/gst/tmpl/gsttypefindfactory.sgml:
7341         * docs/gst/tmpl/gstxmlregistry.sgml:
7342         * docs/gst/tmpl/gthread-cothreads.sgml:
7343         * docs/gst/tmpl/old/cothreads.sgml:
7344         * docs/gst/tmpl/old/cothreads_compat.sgml:
7345         * docs/gst/tmpl/old/gettext.sgml:
7346         * docs/gst/tmpl/old/gobject2gtk.sgml:
7347         * docs/gst/tmpl/old/grammar.tab.sgml:
7348         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7349         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7350         * docs/gst/tmpl/old/gst_private.sgml:
7351         * docs/gst/tmpl/old/gstaggregator.sgml:
7352         * docs/gst/tmpl/old/gstarch.sgml:
7353         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7354         * docs/gst/tmpl/old/gstbufferstore.sgml:
7355         * docs/gst/tmpl/old/gstdata_private.sgml:
7356         * docs/gst/tmpl/old/gstdisksink.sgml:
7357         * docs/gst/tmpl/old/gstdisksrc.sgml:
7358         * docs/gst/tmpl/old/gstelementfactory.sgml:
7359         * docs/gst/tmpl/old/gstextratypes.sgml:
7360         * docs/gst/tmpl/old/gstfakesink.sgml:
7361         * docs/gst/tmpl/old/gstfakesrc.sgml:
7362         * docs/gst/tmpl/old/gstfdsink.sgml:
7363         * docs/gst/tmpl/old/gstfdsrc.sgml:
7364         * docs/gst/tmpl/old/gstfilesink.sgml:
7365         * docs/gst/tmpl/old/gstfilesrc.sgml:
7366         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7367         * docs/gst/tmpl/old/gstidentity.sgml:
7368         * docs/gst/tmpl/old/gstindexfactory.sgml:
7369         * docs/gst/tmpl/old/gstmarshal.sgml:
7370         * docs/gst/tmpl/old/gstmd5sink.sgml:
7371         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7372         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7373         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7374         * docs/gst/tmpl/old/gstpipefilter.sgml:
7375         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7376         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7377         * docs/gst/tmpl/old/gstshaper.sgml:
7378         * docs/gst/tmpl/old/gstspider.sgml:
7379         * docs/gst/tmpl/old/gstspideridentity.sgml:
7380         * docs/gst/tmpl/old/gststatistics.sgml:
7381         * docs/gst/tmpl/old/gsttee.sgml:
7382         * docs/gst/tmpl/old/gsttimecache.sgml:
7383         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7384         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7385         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7386         * docs/gst/tmpl/old/types.sgml:
7387         * docs/gst/tmpl/types.sgml:
7388
7389         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7390         gtkdoc-scan doesn't like files with the same name in different
7391         directories.
7392         * gst/elements/Makefile.am:
7393         * gst/elements/gstelements.c:
7394         * gst/elements/gsttypefind.c: 
7395         * gst/elements/gsttypefind.h:
7396         * gst/elements/gsttypefindelement.c:
7397         * gst/elements/gsttypefindelement.h:
7398
7399 2004-04-28  David Schleef  <ds@schleef.org>
7400
7401         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7402         patch (bug #141317):
7403         * gst/gst-i18n-lib.h: Allow disabling gettext.
7404         * gst/gstatomic_impl.h: disable warning when it's dumb.
7405         * gst/gstclock.c: fix include
7406         * gst/gstcompat.h: fix variadic macro
7407         * gst/gstinfo.c: fix include
7408         * gst/gstmacros.h: add defines for inlines on MSVC
7409         * gst/gstplugin.c: fix includes
7410         * gst/gstregistry.c: fix includes
7411         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7412         * gst/gstsystemclock.c: fix include
7413         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7414         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7415         * gst/registries/gstxmlregistry.c:
7416         (gst_xml_registry_parse_element_factory): fix use of non-portable
7417         functions
7418         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7419         * libs/gst/control/dparammanager.h: same
7420
7421 2004-04-28  David Schleef  <ds@schleef.org>
7422
7423         Move a bunch of unused files to old/ with names that are
7424         not case-insensitive-unique.  These files still contain some
7425         useful information that needs to be merged into gstbin.sgml,
7426         etc., so they shouldn't be deleted yet.
7427         * docs/gst/tmpl/GstBin.sgml:
7428         * docs/gst/tmpl/GstBuffer.sgml:
7429         * docs/gst/tmpl/GstCaps.sgml:
7430         * docs/gst/tmpl/GstClock.sgml:
7431         * docs/gst/tmpl/GstCompat.sgml:
7432         * docs/gst/tmpl/GstData.sgml:
7433         * docs/gst/tmpl/GstElement.sgml:
7434         * docs/gst/tmpl/GstEvent.sgml:
7435         * docs/gst/tmpl/GstIndex.sgml:
7436         * docs/gst/tmpl/GstStructure.sgml:
7437         * docs/gst/tmpl/GstTag.sgml:
7438         * docs/gst/tmpl/old/GstBin.sgml:
7439         * docs/gst/tmpl/old/GstBuffer.sgml:
7440         * docs/gst/tmpl/old/GstCaps.sgml:
7441         * docs/gst/tmpl/old/GstClock.sgml:
7442         * docs/gst/tmpl/old/GstCompat.sgml:
7443         * docs/gst/tmpl/old/GstData.sgml:
7444         * docs/gst/tmpl/old/GstElement.sgml:
7445         * docs/gst/tmpl/old/GstEvent.sgml:
7446         * docs/gst/tmpl/old/GstIndex.sgml:
7447         * docs/gst/tmpl/old/GstStructure.sgml:
7448         * docs/gst/tmpl/old/GstTag.sgml:
7449
7450 2004-04-28  David Schleef  <ds@schleef.org>
7451
7452         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7453         (gst_caps_append), (gst_caps_append_structure),
7454         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7455         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7456         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7457         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7458         (gst_caps_intersect), (gst_caps_normalize),
7459         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7460         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7461         * gst/gstcaps.h: use GST_IS_CAPS().
7462
7463 2004-04-26  David Schleef  <ds@schleef.org>
7464
7465         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7466         assembly.  gcc doesn't handle it correctly. (bug #141083)
7467         * gst/gsttrashstack.h: same
7468
7469 2004-04-25  Benjamin Otte  <otte@gnome.org>
7470
7471         * gst/gstelement.c: (gst_element_change_state):
7472           fix assertion to do an int comparison
7473
7474 2004-04-25  Benjamin Otte  <otte@gnome.org>
7475
7476         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7477           better debugging output on error
7478
7479 2004-04-25  Benjamin Otte  <otte@gnome.org>
7480
7481         * gst/gstcaps.c: (gst_caps_subtract):
7482           fix memleak
7483
7484 2004-04-23  Benjamin Otte  <otte@gnome.org>
7485
7486         * gst/gstvalue.c: (gst_value_compare_buffer),
7487         (_gst_value_initialize):
7488           add comparison function for buffers
7489
7490 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7491
7492         * docs/pwg/pwg.xml:
7493           Just found out that this so-called "ima-wav" format is really
7494           just "dvi adpcm" (according to the MS WAV documentation). So
7495           renaming it. We didn't use it yet anyway.
7496
7497 2004-04-23  Benjamin Otte  <otte@gnome.org>
7498
7499         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7500           call gst_caps_is_subset
7501
7502 2004-04-23  Benjamin Otte  <otte@gnome.org>
7503
7504         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7505         (gst_caps_is_subset):
7506           add documentation
7507
7508 2004-04-23  Benjamin Otte  <otte@gnome.org>
7509           
7510         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7511         (gst_caps_structure_subtract), (gst_caps_subtract),
7512         (gst_caps_structure_figure_out_union),
7513         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7514           fix simplifying and subtracting not working correctly with optional
7515           properties
7516           solve assorted problems that make it now simplify ebven more
7517         * docs/gst/tmpl/gstcaps.sgml:
7518         * gst/gstcaps.h:
7519           make gst_caps_do_simplify return a bool to indicate if it simplified
7520         * testsuite/caps/simplify.c: (main):
7521           add more checks. The tests is quite a bit useless right now because
7522           the core is heavily simplifying itself.
7523         * testsuite/caps/caps.h:
7524           fix caps to contain all optional properties
7525
7526 2004-04-22  Benjamin Otte  <otte@gnome.org>
7527
7528         * docs/gst/tmpl/gstcaps.sgml:
7529         * docs/gst/tmpl/gstfilesrc.sgml:
7530         * docs/gst/tmpl/gststructure.sgml:
7531         * docs/gst/tmpl/gstvalue.sgml:
7532           update for recent API changes
7533         * gst/gstcaps.c: (gst_caps_do_simplify):
7534           fix to stop trying with a freed structure
7535         * gst/gstpad.c: (gst_pad_link_fixate):
7536           simplify caps
7537         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7538           remove C++ comment
7539         * gst/gstpad.h:
7540           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7541         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7542         (gst_structure_to_string):
7543           keep the correct type when using lists of ranges
7544         * gst/gstvalue.c: (gst_value_list_prepend_value),
7545         (gst_value_list_append_value):
7546           copy the value before adding to the list (d'oh)
7547         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7548         (gst_value_subtract_int_range_int_range):
7549           handle overflows correctly
7550         * gst/gstvalue.c: (gst_value_subtract_from_list):
7551           fix memleak
7552         * testsuite/caps/caps.h:
7553           add a caps that caused segfaults
7554
7555 2004-04-22  Benjamin Otte  <otte@gnome.org>
7556
7557         * testsuite/refcounting/pad.c: (main):
7558           fix test
7559
7560 2004-04-22  Benjamin Otte  <otte@gnome.org>
7561
7562         * gst/gstcaps.c: (gst_caps_subtract):
7563           allow subtracting ANY and EMPTY from ANY caps
7564
7565 2004-04-22  Benjamin Otte  <otte@gnome.org>
7566
7567         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7568         (gst_caps_union):
7569           only simplify in functions that create new caps. Simplifying in
7570           gst_caps_append breaks tests.
7571
7572 2004-04-22  Benjamin Otte  <otte@gnome.org>
7573
7574         * gst/gstcaps.c: (gst_caps_structure_simplify):
7575           unset GValue after use
7576         * gst/gstcaps.c: (gst_caps_append), 
7577         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7578           use gst_caps_simplify (reduces registry size by 30%)
7579         * gst/gstpad.c: (gst_pad_template_new):
7580           don't allow NULL caps
7581
7582 2004-04-22  Benjamin Otte  <otte@gnome.org>
7583
7584         * docs/gst/gstreamer-sections.txt:
7585           add gst_caps_do_simplify
7586         * gst/gstcaps.c:
7587           add documentation for gst_caps_do_simplify
7588         * gst/gstvalue.h:
7589           fix typo in gst_value_register_subtract_func declaration for gst-doc
7590
7591 2004-04-22  Benjamin Otte  <otte@gnome.org>
7592
7593         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7594           fix bug when converting from empty string.
7595         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7596         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7597           use gst_caps_new_empty to allocate a new caps. Only that function
7598           allocates memory for caps now.
7599         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7600         (gst_caps_remove_structure):
7601           add ability to remove one structure (but not to header yet)
7602         * gst/gstcaps.c: (gst_caps_compare_structures),
7603         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7604         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7605         * gst/gstcaps.h:
7606           add gst_caps_do_simplify that tries to simplify a caps in place.
7607           Deprecate old gst_caps_simplify function.
7608         * testsuite/caps/caps.h:
7609           add caps.h containing a common set of caps to test against.
7610         * testsuite/caps/sets.c: (check_caps), (main):
7611           use it.
7612         * testsuite/caps/.cvsignore:
7613         * testsuite/caps/Makefile.am:
7614         * testsuite/caps/simplify.c: (check_caps), (main):
7615           add test to check correctness and efficency of caps simplification.
7616
7617 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7618
7619         reviewed by Benjamin Otte  <otte@gnome.org>
7620
7621         * gst/gstparse.c: (_gst_parse_escape):
7622           Free the GString used in _gst_parse_escape()
7623
7624 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7625
7626         * gst/gstpad.c: (gst_pad_link_negotiate):
7627           refuse to link if the link is not possible
7628         * configure.ac:
7629         * testsuite/Makefile.am:
7630         * testsuite/negotiation/.cvsignore:
7631         * testsuite/negotiation/Makefile.am:
7632         * testsuite/negotiation/pad_link.c: (main):
7633           add test that checks the above behaviour
7634
7635 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7636
7637         * docs/gst/gstreamer-sections.txt:
7638           add newly added API
7639
7640 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7641
7642         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7643         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7644         (gst_filesrc_open_file), (gst_filesrc_close_file),
7645         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7646         * gst/elements/gstfilesrc.h:
7647           add support for non-regular files (#140734)
7648
7649 2004-04-21  Benjamin Otte  <otte@gnome.org>
7650
7651         * gst/gstpad.c: (gst_pad_link_fixate):
7652           add sophisticated error checking code to see if fixation functions
7653           did their fixation right
7654
7655 2004-04-21  Benjamin Otte  <otte@gnome.org>
7656
7657         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7658           check for ANY caps before appending/unioning
7659         * gst/gstcaps.c: (gst_caps_is_subset),
7660         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7661         (gst_caps_structure_subtract), (gst_caps_subtract):
7662         * gst/gstcaps.h:
7663           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7664           the API. deprecate gst_caps_is_equal_fixed
7665         * gst/gstpad.c: (gst_pad_try_set_caps):
7666         * gst/gstqueue.c: (gst_queue_link):
7667           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7668         * gst/gststructure.c: (gst_structure_get_name_id):
7669         * gst/gststructure.h:
7670           add function gst_structure_get_name_id
7671         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7672         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7673         (gst_value_subtract_int_range_int_range),
7674         (gst_value_subtract_double_double_range),
7675         (gst_value_subtract_double_range_double),
7676         (gst_value_subtract_double_range_double_range),
7677         (gst_value_subtract_from_list), (gst_value_subtract_list),
7678         (gst_value_can_intersect), (gst_value_subtract),
7679         (gst_value_can_subtract), (gst_value_register_subtract_func),
7680         (_gst_value_initialize):
7681         * gst/gstvalue.h:
7682           add support for subtracting values from each other. Note that
7683           subtracting means subtracting as in set theory. Required for caps
7684           stuff above.
7685         * testsuite/caps/.cvsignore:
7686         * testsuite/caps/Makefile.am:
7687         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7688         * testsuite/caps/sets.c: (check_caps), (main):
7689         * testsuite/caps/subtract.c: (check_caps), (main):
7690           add tests for subtraction and equality code.
7691
7692 2004-04-20  David Schleef  <ds@schleef.org>
7693
7694         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7695         * gst/indexers/Makefile.am:
7696         * gst/schedulers/Makefile.am:
7697         * libs/gst/bytestream/Makefile.am:
7698         * libs/gst/control/Makefile.am:
7699         * libs/gst/getbits/Makefile.am:
7700
7701 2004-04-20  David Schleef  <ds@schleef.org>
7702
7703         * common/as-libtool.mak: Fine-tune DLL building.
7704         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7705         (like gst-plugins)
7706         * examples/plugins/Makefile.am: remove plugindir
7707         * gst/autoplug/Makefile.am: DLL building fixes
7708         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7709         Windows.
7710         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7711         * gst/indexers/Makefile.am: DLL building fixes
7712         * gst/schedulers/Makefile.am: DLL building fixes.
7713         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7714         * libs/gst/control/Makefile.am: same
7715         * libs/gst/getbits/Makefile.am: same
7716         * testsuite/Makefile.am: New dlopen directory
7717         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7718         when dlopened.
7719         * testsuite/dlopen/dlopen_gst.c: (main): same
7720         * testsuite/dlopen/loadgst.c: (do_test): same
7721
7722 2004-04-20  David Schleef  <ds@schleef.org>
7723
7724         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7725         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7726
7727 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7728
7729         * gst/gstelement.c: (gst_element_wait),
7730         (gst_element_set_time_delay), (gst_element_change_state):
7731           Use GST_TIME_*
7732
7733 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7734
7735         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7736         (gst_spider_identity_plug):
7737           improve debugging messages
7738         * gst/gstbin.c: (gst_bin_remove_func):
7739           make sure the state_change function is only called with simple state
7740           transitions
7741
7742 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7743
7744         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7745         (gst_fakesink_set_property), (gst_fakesink_chain):
7746         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7747         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7748         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7749         * gst/elements/gstidentity.c: (gst_identity_chain),
7750         (gst_identity_set_property):
7751         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7752         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7753           add warnings to _set_property for unknown arguments
7754           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7755
7756 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7757
7758         * Makefile.am:
7759         * docs/manuals.mak:
7760           add .po file download snippet
7761           fix a bug in the doc makefile
7762
7763 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7764
7765         * Makefile.am:
7766         * po/LINGUAS:
7767         * po/en_GB.po:
7768           Added en_GB translation (Gareth Owen)
7769
7770 2004-04-20  Johan Dahlin  <johan@gnome.org>
7771
7772         * gst/gstpad.c (_invent_event): Clean up
7773
7774 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7775
7776         * testsuite/caps/filtercaps.c: (main):
7777           fix test to test things correctly (caps are complicated)
7778
7779 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7780
7781         * testsuite/caps/Makefile.am:
7782         * testsuite/caps/filtercaps.c: (main):
7783           add test (that doesn't work right now, but should)
7784
7785 2004-04-19  David Schleef  <ds@schleef.org>
7786
7787         * configure.ac: Add test for allowing unaligned access.  Add define
7788         to put in gstconfig.h.
7789         * docs/gst/gstreamer-sections.txt: New symbols
7790         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7791         * docs/gst/tmpl/gstfilesrc.sgml:
7792         * docs/gst/tmpl/gstparse.sgml:
7793         * docs/gst/tmpl/gsttypes.sgml:
7794         * docs/gst/tmpl/gstutils.sgml:
7795         * docs/gst/tmpl/gstvalue.sgml:
7796         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7797         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7798         on most !i386/!powerpc architectures.  From Daniel Gazard
7799         <daniel.gazard@free.fr>.  (bug #140156)
7800         * po/af.po: Check in changes made by gettext.
7801         * po/az.po:
7802         * po/fr.po:
7803         * po/nl.po:
7804         * po/sr.po:
7805         * po/sv.po:
7806
7807 2004-04-20  Benjamin Otte  <otte@gnome.org>
7808
7809         * gst/schedulers/entryscheduler.c: 
7810         (gst_entry_scheduler_yield):
7811           refuse to yield when decoupled elements insist on doing that.
7812           At least it's better than crashing
7813
7814 2004-04-19  David Schleef  <ds@schleef.org>
7815
7816         * docs/libs/Makefile.am: Change sinclude to include
7817         * docs/gst/Makefile.am: same
7818         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7819
7820 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7821
7822         * po/LINGUAS:
7823         * po/uk.po:
7824           Added Ukrainian translation (Maxim V. Dziumanenko)
7825
7826 2004-04-19  Johan Dahlin  <johan@gnome.org>
7827
7828         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7829         checking here, do it before calling the function.
7830         Clean up, use for loops instead of while loops while iterating
7831         over lists.
7832
7833         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7834         in debug message.
7835         (gst_spider_create_and_plug): Improve debug message.
7836         General: Replace while loops which iterates over GLists with for
7837         loops. Which are much cleaner, improves readability, especially
7838         for gst_spider_identity_plug
7839
7840         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7841         fixes bug 140477
7842
7843 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7844
7845         * po/LINGUAS:
7846         * po/tr.po:
7847           Added Turkish translation (Baris Cicek)
7848
7849 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7850
7851         * docs/faq/troubleshooting.xml:
7852           Mention gst-register in the FAQ (fixes 139045).
7853
7854 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7855
7856         * docs/gst/gstreamer-sections.txt:
7857
7858 2004-04-17  Benjamin Otte  <otte@gnome.org>
7859
7860         * gst/gstelement.c: (gst_element_dispose):
7861           simplify
7862         * gst/gstpad.c: (gst_pad_call_chain_function):
7863           don't create loads of events due to bad macro usage
7864
7865 2004-04-16  David Schleef  <ds@schleef.org>
7866
7867         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7868         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7869         * gst/gstvalue.c: (gst_value_serialize_buffer),
7870         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7871         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7872         to indicate types that are fixed wrt caps or not.  Switching to
7873         this function fixes (bug #140298).
7874         * gst/gstvalue.h:
7875
7876 2004-04-16  David Schleef  <ds@schleef.org>
7877
7878         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7879         for GST_UNALIGNED_ACESS, since we essentially know which archs
7880         are ok.
7881
7882 2004-04-17  Benjamin Otte  <otte@gnome.org>
7883
7884         * docs/gst/Makefile.am:
7885           ignore gst/parse directory when building docs (fixes #140205)
7886
7887 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7888
7889         * testsuite/refcounting/mem.c: (vmsize):
7890           do error checking
7891
7892 2004-04-16  Johan Dahlin  <johan@gnome.org>
7893
7894         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7895         and gst_pad_call_get_function.
7896
7897 2004-04-15  David Schleef  <ds@schleef.org>
7898
7899         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7900         checks if we can access unaligned memory.
7901         * configure.ac: Use it.
7902
7903 2004-04-16  Benjamin Otte  <otte@gnome.org>
7904
7905         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7906         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7907         * gst/elements/gstfilesrc.h:
7908           s/seek_happened/need_discont/ and require discont before sending any
7909           data
7910
7911 2004-04-15  David Schleef  <ds@schleef.org>
7912
7913         * gst/gstvalue.c: (gst_value_serialize_buffer),
7914         (gst_value_deserialize_buffer), (_gst_value_initialize):
7915         Register these types as fundamental types. (bug #140015)
7916
7917 2004-04-16  Benjamin Otte  <otte@gnome.org>
7918
7919         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7920         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7921         (gst_pad_pull):
7922           implement enforcing discont events before buffers are passed. This
7923           allows state changes of only some elements and later correctly going
7924           on where they left off (or in short: you can now set audio sinks to
7925           NULL to release the device when the pipeline is paused)
7926         * gst/gstpad.c: (gst_pad_call_chain_function),
7927         (gst_pad_call_get_function):
7928         * gst/gstpad.h:
7929           add gst_pad_call_chain_function and gst_pad_call_get_function for
7930           scheduler interaction. They are required because of the changes
7931           above.
7932         * gst/schedulers/entryscheduler.c: (get_buffer),
7933         (gst_entry_scheduler_chain_wrapper),
7934         (gst_entry_scheduler_get_wrapper),
7935         (gst_entry_scheduler_state_transition),
7936         (gst_entry_scheduler_pad_link):
7937         * gst/schedulers/gstbasicscheduler.c:
7938         (gst_basic_scheduler_chain_wrapper),
7939         (gst_basic_scheduler_src_wrapper),
7940         (gst_basic_scheduler_chainhandler_proxy),
7941         (gst_basic_scheduler_gethandler_proxy),
7942         (gst_basic_scheduler_cothreaded_chain),
7943         (gst_basic_scheduler_chain_elements):
7944         * gst/schedulers/gstoptimalscheduler.c:
7945         (get_group_schedule_function), (pad_clear_queued),
7946         (gst_opt_scheduler_pad_link):
7947           use the new functions instead of calling get/chain-functions
7948           directly.
7949
7950 2004-04-15  David Schleef  <ds@schleef.org>
7951
7952         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7953         * docs/gst/tmpl/gstinfo.sgml: same
7954         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7955         gtk-doc put here.
7956         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7957         * examples/queue/queue.c: (main):  We iterate pipelines, not
7958         bins.  (bug #139996)
7959
7960 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7961
7962         * docs/pwg/advanced-types.xml:
7963           Add MS RLE support. Also document Qt RLE although I have no sample
7964           files for that yet. And document an extra property for ADPCM.
7965
7966 2004-04-15  David Schleef  <ds@schleef.org>
7967
7968         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7969         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7970         Windows.
7971
7972 2004-04-15  David Schleef  <ds@schleef.org>
7973
7974         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7975         symbol names to not conflict with new gstinfo.h symbols.
7976         * gst/gstinfo.h: Add inline functions for all those crazy
7977         compilers that don't know how to handle variadic macros (MSVC).
7978
7979 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7980
7981         * configure.ac: bump nano to 1
7982
7983 === release 0.8.1 ===
7984
7985 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7986
7987         * NEWS:
7988         * RELEASE:
7989         * configure.ac:
7990           releasing 0.8.1, "Snow Brigade"
7991
7992 2004-04-14  David Schleef  <ds@schleef.org>
7993
7994         * testsuite/Makefile.am: define tests_ignore
7995         * testsuite/Rules: Added new tests_ignore, which get compiled,
7996         but not run (generally because they're inconsistent or have
7997         heisenbugs).  Now we can ensure all the .c files compile in
7998         testsuite/.
7999         * testsuite/bins/Makefile.am: define tests_ignore
8000         * testsuite/bytestream/Makefile.am:
8001         * testsuite/caps/Makefile.am:
8002         * testsuite/clock/Makefile.am:
8003         * testsuite/debug/Makefile.am:
8004         * testsuite/debug/global.c: (gst_debug_log_one),
8005         (gst_debug_log_two): Fix compilation problem.
8006         * testsuite/dynparams/Makefile.am:
8007         * testsuite/elements/Makefile.am:
8008         * testsuite/ghostpads/Makefile.am:
8009         * testsuite/indexers/Makefile.am:
8010         * testsuite/parse/Makefile.am:
8011         * testsuite/plugin/Makefile.am:
8012         * testsuite/refcounting/Makefile.am:
8013         * testsuite/refcounting/element_pad.c: (main): Don't return leak
8014         results, because it's not calculated correctly.
8015         * testsuite/refcounting/pad.c: (main): same
8016         * testsuite/states/Makefile.am:
8017         * testsuite/tags/Makefile.am:
8018         * testsuite/threads/Makefile.am:
8019
8020 2004-04-14  David Schleef  <ds@schleef.org>
8021
8022         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
8023         generating bad code around the cpu detection asm code.
8024
8025 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8026
8027         * tools/gst-inspect.c: (print_element_info):
8028           print numeric version of rank as well, since we added some - 1
8029           rank values to elements
8030
8031 2004-04-13  David Schleef  <ds@schleef.org>
8032
8033         * configure.ac:  Disable various code when compiling for MinGW.
8034         * gst/elements/Makefile.am:
8035         * gst/elements/gstelements.c:
8036         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8037         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
8038         * gst/registries/gstxmlregistry.c: (make_dir):
8039
8040 2004-04-13  David Schleef  <ds@schleef.org>
8041
8042         * gst/Makefile.am:
8043         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
8044         assembly.
8045         * gst/gstcpuid_i386.s: remove
8046
8047 2004-04-13  David Schleef  <ds@schleef.org>
8048
8049         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8050         seems to think it needs to be done.
8051         * docs/gst/tmpl/gstfakesink.sgml:
8052         * docs/gst/tmpl/gstfakesrc.sgml:
8053         * docs/gst/tmpl/gstfdsink.sgml:
8054         * docs/gst/tmpl/gstfdsrc.sgml:
8055         * docs/gst/tmpl/gstfilesink.sgml:
8056         * docs/gst/tmpl/gstfilesrc.sgml:
8057         * docs/gst/tmpl/gstidentity.sgml:
8058         * docs/gst/tmpl/gstmd5sink.sgml:
8059         * docs/gst/tmpl/gstmultifilesrc.sgml:
8060         * docs/gst/tmpl/gstpipefilter.sgml:
8061         * docs/gst/tmpl/gstshaper.sgml:
8062         * docs/gst/tmpl/gstspider.sgml:
8063         * docs/gst/tmpl/gstspideridentity.sgml:
8064         * docs/gst/tmpl/gststatistics.sgml:
8065         * docs/gst/tmpl/gsttee.sgml:
8066         * docs/gst/tmpl/gsttypefind.sgml:
8067         * docs/gst/tmpl/gstutils.sgml:
8068
8069 2004-04-13  David Schleef  <ds@schleef.org>
8070
8071         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8072         and to build DLLs on Windows.
8073         * gst/Makefile.am:
8074         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8075         (gst_filesrc_open_file):
8076         * gst/schedulers/Makefile.am:
8077
8078 2004-04-13  David Schleef  <ds@schleef.org>
8079
8080         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8081         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8082         fixating lists.
8083
8084 2004-04-12  David Schleef  <ds@schleef.org>
8085
8086         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8087         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8088         to using it.
8089         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8090         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8091         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8092         * gst/gststructure.c: (gst_structure_set_valist),
8093         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8094         support for buffers.
8095         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8096         intended to be const.
8097         * gst/gsttag.h: same
8098         * gst/gstvalue.c: (gst_value_serialize_buffer),
8099         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8100         to (de)serialize buffers.
8101         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8102         * testsuite/caps/string-conversions.c: (main):
8103         * testsuite/caps/value_serialize.c: add new test
8104
8105 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8106
8107         * docs/pwg/advanced-types.xml:
8108           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8109
8110 2004-04-11  Benjamin Otte  <otte@gnome.org>
8111
8112         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8113           rename categories to basic_*
8114         * gst/schedulers/gstbasicscheduler.c: 
8115         (gst_basic_scheduler_chain_wrapper),
8116         (gst_basic_scheduler_chainhandler_proxy),
8117         (gst_basic_scheduler_gethandler_proxy),
8118         (gst_basic_scheduler_eventhandler_proxy):
8119           debugging category fixes - put common stuff in log category
8120         * gst/schedulers/gstbasicscheduler.c: 
8121         (gst_basic_scheduler_chain_elements):
8122           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8123           active and linking two active chains
8124
8125 2004-04-10  Benjamin Otte  <otte@gnome.org>
8126
8127         * docs/pwg/intro-preface.xml:
8128           fix dead links and remove reference to Wiki
8129
8130 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8131
8132         * gst/schedulers/gstbasicscheduler.c:
8133           make sure we can switch back to the main function if we're still in
8134           the main function (supposed to fix #139617)
8135         * gst/schedulers/gthread-cothreads.h:
8136           don't throw an error when switching to the same cothread
8137
8138 2004-04-09  Benjamin Otte  <otte@gnome.org>
8139
8140         * gst/gstbin.c: (gst_bin_get_type):
8141         * gst/gstclock.c: (gst_clock_get_type):
8142         * gst/gstindex.c: (gst_index_get_type):
8143         * gst/gstobject.c: (gst_object_get_type),
8144         (gst_signal_object_get_type):
8145         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8146         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8147         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8148         * gst/gstqueue.c: (gst_queue_get_type):
8149         * gst/gstregistry.c: (gst_registry_get_type):
8150         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8151         * gst/gstthread.c: (gst_thread_get_type):
8152           don't use memchunks for these objects, use malloc instead
8153
8154 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8155
8156         * docs/gst/.cvsignore:
8157         * docs/gst/Makefile.am:
8158         * docs/gst/gstreamer-sections.txt:
8159         * docs/gst/tmpl/gstaggregator.sgml:
8160         * docs/gst/tmpl/gstbuffer.sgml:
8161         * docs/gst/tmpl/gstclock.sgml:
8162         * docs/gst/tmpl/gstelement.sgml:
8163         * docs/gst/tmpl/gstfakesink.sgml:
8164         * docs/gst/tmpl/gstfakesrc.sgml:
8165         * docs/gst/tmpl/gstfdsink.sgml:
8166         * docs/gst/tmpl/gstfdsrc.sgml:
8167         * docs/gst/tmpl/gstfilesink.sgml:
8168         * docs/gst/tmpl/gstfilesrc.sgml:
8169         * docs/gst/tmpl/gstidentity.sgml:
8170         * docs/gst/tmpl/gstindex.sgml:
8171         * docs/gst/tmpl/gstinfo.sgml:
8172         * docs/gst/tmpl/gstmd5sink.sgml:
8173         * docs/gst/tmpl/gstmultifilesrc.sgml:
8174         * docs/gst/tmpl/gstpad.sgml:
8175         * docs/gst/tmpl/gstpipefilter.sgml:
8176         * docs/gst/tmpl/gstpipeline.sgml:
8177         * docs/gst/tmpl/gstpluginfeature.sgml:
8178         * docs/gst/tmpl/gstqueue.sgml:
8179         * docs/gst/tmpl/gstregistry.sgml:
8180         * docs/gst/tmpl/gstscheduler.sgml:
8181         * docs/gst/tmpl/gstshaper.sgml:
8182         * docs/gst/tmpl/gstspider.sgml:
8183         * docs/gst/tmpl/gstspideridentity.sgml:
8184         * docs/gst/tmpl/gststatistics.sgml:
8185         * docs/gst/tmpl/gstsystemclock.sgml:
8186         * docs/gst/tmpl/gsttee.sgml:
8187         * docs/gst/tmpl/gstthread.sgml:
8188         * docs/gst/tmpl/gsttypefind.sgml:
8189         * docs/gst/tmpl/gstutils.sgml:
8190           further doc build fixes
8191
8192 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8193
8194         * docs/gst/Makefile.am:
8195           make docs exit on scanning problems
8196           fix nonsrcdir build issues
8197         * docs/gst/gstreamer-sections.txt:
8198           adding stuff from -unused
8199         * gst/gstqueue.h:
8200           create GstQueueSize
8201         * gst/schedulers/cothreads_compat.h:
8202           fix cothread warnings
8203
8204 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8205
8206         * docs/gst/gstreamer-sections.txt:
8207           remove defines deprecated by Benjamin
8208
8209 2004-04-07  Benjamin Otte  <otte@gnome.org>
8210
8211         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8212           when the buffer is complete, don't check if other buffers are needed
8213         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8214           check that the offset is >0 so we don't try to read before the
8215           beginning of the file
8216         * gst/gstpad.c: (gst_pad_set_pad_template):
8217           sink the template, so we don't end up with 130k pad templates
8218
8219 2004-04-06  Benjamin Otte  <otte@gnome.org>
8220
8221         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8222           don't ref the element, adding already reffed it. And we didn't unref
8223           it later anyway... (huge memleak when you used many spider elements)
8224         * gst/gstelement.c: (gst_element_base_class_finalize):
8225         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8226         (gst_element_register):
8227         * gst/gsturi.c: (gst_element_make_from_uri):
8228           use gst_object_(un)ref instead of g_object(un)ref
8229
8230 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8231
8232         * gst/gstbuffer.h:
8233           remove macro that wouldn't work anymore because struct member has
8234           been removed.
8235         * gst/schedulers/entryscheduler.c: (schedule_forward):
8236           fix segfault for unconnected pads
8237         
8238 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8239
8240         reviewed by David Schleef <ds@schleef.org>
8241
8242         * gst/gstinfo.h:
8243           *_FORMAT modifiers should require putting a % in front of them for
8244           consistency reasons.
8245
8246 2004-04-05  Colin Walters  <walters@redhat.com>
8247
8248         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8249         space.
8250
8251 2004-04-05  Benjamin Otte  <otte@gnome.org>
8252
8253         * configure.ac:
8254         * gst/Makefile.am:
8255         * gst/gst_private.h:
8256         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8257           add support for detecting if GStreamer runs inside valgrind.
8258           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8259           print a big message in valgrind that GStreamer has detected it's
8260           running inside and might now use different code.
8261         * gst/gstmemchunk.c: (populate), (free_area),
8262         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8263         (gst_mem_chunk_free):
8264           flag memchunks for valgrind, so it can detect leaking of chunks.
8265           This allows detecting leaks of GstBuffer and GstEvent correctly
8266           inside valgrind.
8267
8268 2004-04-05  David Schleef  <ds@schleef.org>
8269
8270         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8271           jensgr@gmx.net (Jens Granseuer)
8272
8273 2004-04-05  David Schleef  <ds@schleef.org>
8274
8275         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8276         (gst_buffer_default_free), (gst_buffer_default_copy),
8277         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8278         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8279         structures in one place.
8280
8281 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8282
8283         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8284           (GST_TIME_FORMAT, GST_TIME_ARGS)
8285
8286 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8287
8288         * testsuite/elements/Makefile.am:
8289           disable test until it stops breaking make distcheck
8290
8291 2004-04-05  Johan Dahlin  <johan@gnome.org>
8292
8293         * po/sv.po: Updated translation
8294
8295 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8296
8297         * gst/gstplugin.c: (gst_plugin_load_file):
8298           fix segfault for when original plugin was loaded statically
8299
8300 2004-04-05  Benjamin Otte  <otte@gnome.org>
8301
8302         * testsuite/debug/category.c: (main):
8303         * testsuite/debug/commandline.c: (main):
8304         * testsuite/debug/output.c: (main):
8305           fix tests to work again with debugging enabled
8306
8307 2004-04-05  Benjamin Otte  <otte@gnome.org>
8308
8309         * gst/schedulers/gstbasicscheduler.c:
8310         (gst_basic_scheduler_pad_link):
8311           fix to work with recent scheduling changes
8312
8313 2004-04-05  Benjamin Otte  <otte@gnome.org>
8314
8315         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8316         prepareChangeLog doesn't work when cvs indents):
8317           don't throw an error when no element can be scheduled, there's too
8318           many weird reasons why it doesn't work. Return STOPPED instead.
8319           decoupled elemts' schedulability doesn't depend on bufpens.
8320
8321 2004-04-04  Benjamin Otte  <otte@gnome.org>
8322
8323         * gst/schedulers/gstbasicscheduler.c:
8324         (gst_basic_scheduler_pad_select):
8325           fix uninitialized variable warnings
8326
8327 2004-04-04  Benjamin Otte  <otte@gnome.org>
8328
8329         * gst/gstpad.c: (gst_pad_collect_valist):
8330           fix uninitialized variable warning
8331         * gst/schedulers/entryscheduler.c: (schedule_forward):
8332           fix shadowed variable
8333
8334 2004-04-04  Benjamin Otte  <otte@gnome.org>
8335
8336         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8337         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8338         (gst_pad_select):
8339         * gst/gstpad.h:
8340         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8341         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8342         * gst/gstscheduler.h:
8343           implement gst_pad_collect as replacement for gst_pad_select.
8344           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8345           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8346           new pad_select, lock and unlock calls.
8347         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8348         * gst/cothreads.h:
8349         * gst/schedulers/cothreads_compat.h:
8350         * gst/schedulers/gthread-cothreads.h:
8351           remove unused cothread_lock and cothread_unlock calls
8352         * gst/schedulers/entryscheduler.c:
8353         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8354         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8355         (gst_entry_scheduler_pad_select):
8356           update to new API
8357         * gst/schedulers/gstbasicscheduler.c:
8358         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8359         (gst_basic_scheduler_pad_select):
8360           remove useless lock and unlock calls, update pad_select to new API
8361           (untested)
8362         * gst/schedulers/gstoptimalscheduler.c:
8363         (gst_opt_scheduler_class_init):
8364           remove useless select, lock and unlock function calls
8365         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8366           use gst_pad_collect instead of gst_pad_select
8367
8368 2004-04-04  Benjamin Otte  <otte@gnome.org>
8369
8370         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8371         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8372         (schedule_next_element), (print_entry):
8373           add can_schedule_pad to handle element states.
8374           add schedule_forward to select the correct entry to schedule next
8375
8376 2004-04-03  Benjamin Otte  <otte@gnome.org>
8377
8378         * gst/schedulers/entryscheduler.c: 
8379           remove unused variable, fix error inside Rb, fix compile warning in
8380           unreachable code
8381
8382 2004-04-03  Benjamin Otte  <otte@gnome.org>
8383
8384         * gst/schedulers/entryscheduler.c:
8385           completely revamp the inner workings, so it's a lot easier to
8386           understand and extend
8387
8388 2004-04-03  Andy Wingo  <wingo@pobox.com>
8389
8390         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8391         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8392         This allows better introspection of pipeline topology.
8393         (add_to_chain): Don't do trickery to put loop elements first;
8394         rather, queue a chain sort by marking the chain as dirty.
8395         (remove_from_chain): Mark the chain dirty.
8396         (sort_chain): New function. Sorts the group list so that terminal
8397         sinks are first. This means elements on the sink side will be
8398         preferentially sscheduled before elements on the src side of the
8399         pipeline.
8400         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8401         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8402         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8403         (group_inc_link): Change argument and variable names to match the
8404         new link structure member names (src and sink).
8405         (group_dec_link): Add some description
8406
8407 2004-04-03  Benjamin Otte  <otte@gnome.org>
8408
8409         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8410         * gst/gstinfo.h:
8411         * testsuite/debug/category.c: (main):
8412         * testsuite/debug/commandline.c: (main):
8413         * testsuite/debug/output.c: (main):
8414         * testsuite/debug/printf_extension.c: (main):
8415           fix to successfully build and test with --disable-gst-debug
8416           configure switch (fixes #138705)
8417
8418 2004-04-03  Benjamin Otte  <otte@gnome.org>
8419
8420         * docs/pwg/building-boiler.xml:
8421           add cvs login line and s/anonymous/anoncvs/
8422
8423 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8424
8425         reviewed by Benjamin Otte  <otte@gnome.org>
8426
8427         * gst/gststructure.c: (gst_structure_free):
8428           memleak fix: free fields array (partial fix for #134839)
8429
8430 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8431
8432         * docs/random/ds/0.9-suggested-changes:
8433           Add a note to change handoff use in fakesrc to be usable in
8434           a more generic way (fakesrc should be renamed to appsrc or so).
8435         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8436           Change signal type to scope, so we can fill the buffer in the
8437           handoff handler (that's the whole use of this signal...).
8438
8439 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8440
8441         * docs/pwg/other-ntoone.xml:
8442           Document muxers and n-to-1 elements.
8443
8444 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8445
8446         * gst/registries/gstxmlregistry.c
8447         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8448         determine if a file is a G_MODULE. The old one discards paths
8449         containing "so" somewhere in the middle. My home directory is
8450         called "soto". Go figure...
8451
8452 2004-03-31  David Schleef  <ds@schleef.org>
8453
8454         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8455         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8456         * gst/gstbuffer.h:
8457
8458 2004-03-31  David Schleef  <ds@schleef.org>
8459
8460         * gst/gstvalue.c: (gst_value_union_int_int_range),
8461         (gst_value_union_int_range_int_range), (gst_value_can_union),
8462         (gst_value_union), (_gst_value_initialize):  Add some union
8463         implementations.  We didn't have any previously.
8464         * testsuite/caps/Makefile.am:
8465         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8466         (gst_audioscale_getcaps), (test_caps), (main): A little test
8467         that is the same as the caps manipulation in audioscale.
8468
8469 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8470
8471         * docs/faq/general.xml:
8472           add entry about "does gst support format X?"
8473
8474 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8475
8476         * gst/gstthread.c:
8477           fix docs
8478         * gst/gstutils.h:
8479           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8480
8481 2004-03-30  Benjamin Otte  <otte@gnome.org>
8482
8483         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8484           set the offset of the buffer to the requested offset
8485         * gst/elements/gsttypefind.c: (stop_typefinding):
8486           revert patch 1.18 (which I unfortunately don't know the reason for).
8487           This is needed to allow downstream elements to seek. Otherwise
8488           typefind might overwrite a previous seek by downstream elements.
8489           This lead to errors with id3tag and typefind on some mp3s.
8490         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8491         (gst_entry_scheduler_iterate):
8492           be more verbose when debugging
8493
8494 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8495
8496         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8497           make sure we don't get NULL strings
8498
8499 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8500
8501         * gst/gstcaps.c:
8502         * gst/gstelement.c:
8503         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8504         * gst/gstindex.c: (gst_index_resolver_get_type),
8505         (gst_index_get_type), (gst_index_factory_get_type):
8506         * gst/gstinfo.c:
8507         * gst/gstpad.c:
8508         * gst/gstplugin.c:
8509         * gst/gsturi.c: (gst_uri_handler_get_type):
8510         * gst/gstvalue.c:
8511           first batch of documentation fixes
8512
8513 2004-03-29  David Schleef  <ds@schleef.org>
8514
8515         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8516         * docs/gst/gstreamer-docs.sgml:  More hacking
8517         * docs/gst/gstreamer-sections.txt:
8518         * docs/gst/tmpl/cothreads_compat.sgml:
8519         * docs/gst/tmpl/gstcaps.sgml:
8520         * docs/gst/tmpl/gstclock.sgml:
8521         * docs/gst/tmpl/gstelement.sgml:
8522         * docs/gst/tmpl/gstevent.sgml:
8523         * docs/gst/tmpl/gstpad.sgml:
8524         * docs/gst/tmpl/gstutils.sgml:
8525         * docs/gst/tmpl/gstxml.sgml:
8526         * docs/gst/tmpl/gthread-cothreads.sgml:
8527         * docs/random/ds/0.9-suggested-changes:
8528         * gst/elements/gstfakesink.h: doc fixes
8529         * gst/elements/gstfakesrc.h: doc fixes
8530         * gst/gstcaps.c: doc fixes
8531         * gst/gstcaps.h: doc fixes
8532         * gst/gstelement.c: doc fixes
8533         * gst/gstelement.h: doc fixes
8534         * gst/gstindex.c: doc fixes
8535         * gst/gstinfo.c: doc fixes
8536         * gst/gstpad.c: doc fixes
8537         * gst/gstpad.h: doc fixes
8538         * gst/gstplugin.c: doc fixes
8539         * gst/gsttypefind.h: doc fixes
8540         * gst/gsturi.c: doc fixes
8541         * gst/gstvalue.c: doc fixes
8542
8543 2004-03-29  Colin Walters  <walters@redhat.com>
8544
8545         * gst/registries/gstxmlregistry.c (get_time)
8546         (plugin_times_older_than_recurse):
8547         Use the result of stat to determine whether a path is a file,
8548         so we don't attempt to opendir() files.
8549
8550 2004-03-29  Benjamin Otte  <otte@gnome.org>
8551
8552         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8553           print caps in debugging output when setting caps failed
8554         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8555         (schedule_next_element), (get_buffer), (run_chainhandler),
8556         (element_may_start), (gst_entry_scheduler_chain_handler),
8557         (gst_entry_scheduler_get_handler),
8558         (gst_entry_scheduler_state_transition),
8559         (gst_entry_scheduler_pad_link):
8560           make this scheduler a testcase for mandatory
8561           discont-before-first-buffer which is needed if we want to allow apps
8562           to release the sound device.
8563           add SCHED_ASSERT macro to print scheduler state before an assertion
8564           triggers.
8565
8566 2004-03-29  Benjamin Otte  <otte@gnome.org>
8567
8568         * COPYING:
8569           replace by LGPL (former COPYING.LIB). The core is completely
8570           licensed LGPL.
8571         * COPYING.LIB:
8572           remove
8573
8574 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8575
8576         * po/af.po:
8577         * po/sv.po:
8578           updated Afrikaans and Swedish
8579
8580 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8581
8582         * po/LINGUAS:
8583         * po/az.po:
8584           adding Azerbaijani (Mətin Əmirov)
8585
8586 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8587
8588         * gst/gstelement.h: 
8589         * gst/gstelement.c (gst_element_set_time_delay): New function for
8590         setting element time taking into account a hardware buffering
8591         delay.
8592         (gst_element_set_time): Now just an invocation of
8593         gst_element_set_time_delay.
8594         * gst/gstclock.h: 
8595         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8596         allowing to set event times in the future.
8597         (gst_clock_get_event_time): Now just an invocation of
8598         gst_clock_get_event_time_delay.
8599
8600 2004-03-28  Benjamin Otte  <otte@gnome.org>
8601
8602         * gst/gstbin.c: (gst_bin_set_element_sched),
8603         (gst_bin_unset_element_sched):
8604           don't add decoupled elements to schedulers - otherwise it's
8605           impossible to control if a link to a decoupled element was already
8606           removed from a scheduler or not.
8607         * gst/schedulers/cothreads_compat.h:
8608         * gst/schedulers/gthread-cothreads.h:
8609           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8610           is no "unused" warning.
8611         * gst/schedulers/Makefile.am:
8612         * gst/schedulers/entryscheduler.c:
8613           add new scheduler, based on ideas from talking to David and Martin.
8614           It's supposed to be small and correct. Currently it's also slow (but
8615           it's not noticable)
8616         * examples/retag/retag.c: (main):
8617         * testsuite/bytestream/test1.c: (main):
8618           fix missing NULLs at end of variadic functions
8619         * testsuite/elements/.cvsignore:
8620           update
8621
8622 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8623
8624         * gst/gstevent.h:
8625         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8626
8627 2004-03-25  David Schleef  <ds@schleef.org>
8628
8629         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8630         * docs/gst/tmpl/gstaggregator.sgml:
8631         * docs/gst/tmpl/gstautoplugfactory.sgml:
8632         * docs/gst/tmpl/gstbin.sgml:
8633         * docs/gst/tmpl/gstbuffer.sgml:
8634         * docs/gst/tmpl/gstbufferstore.sgml:
8635         * docs/gst/tmpl/gstfakesink.sgml:
8636         * docs/gst/tmpl/gstfakesrc.sgml:
8637         * docs/gst/tmpl/gstmd5sink.sgml:
8638         * docs/gst/tmpl/gstreamer-unused.sgml:
8639         * docs/gst/tmpl/gstsearchfuncs.sgml:
8640         * docs/gst/tmpl/gstshaper.sgml:
8641         * docs/gst/tmpl/gstspider.sgml:
8642         * docs/gst/tmpl/gsttee.sgml:
8643         * docs/gst/tmpl/gstutils.sgml:
8644         * docs/gst/tmpl/gstvalue.sgml:
8645         * docs/gst/tmpl/gstxml.sgml:
8646         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8647         and we don't support it.
8648         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8649         (gst_use_threads), (gst_has_threads): same
8650         * gst/gstthreaddummy.c: same
8651         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8652         * gst/autoplug/gstspider.h: same
8653         * gst/elements/gstaggregator.h: Remove bogus function from header
8654         * gst/elements/gstfakesink.h: same
8655         * gst/elements/gstfakesrc.h: same
8656         * gst/elements/gstmd5sink.h: same
8657         * gst/elements/gstshaper.h: same
8658         * gst/elements/gsttee.h: same
8659         * gst/gstbin.c: doc fixes
8660         * gst/gstbin.h: Remove unused definition.
8661         * gst/gstbuffer.c: doc fixes
8662         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8663         * gst/gstfilter.c: doc fixes
8664         * gst/gsttag.c: doc fixes
8665         * gst/gstvalue.c: doc fixes
8666
8667 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8668
8669         * docs/pwg/advanced-types.xml:
8670           Document typefinding.
8671         * docs/pwg/other-oneton.xml:
8672           Document one-to-n elements, demuxers and parsers.
8673
8674 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8675
8676         reviewed by: David Schleef  <ds@schleef.org>
8677
8678         * configure.ac: Check bison version (bug #127838)
8679
8680 2004-03-25  David Schleef  <ds@schleef.org>
8681
8682         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8683         * docs/gst/gstreamer-sections.txt:
8684         * docs/gst/tmpl/gstautoplug.sgml:
8685         * docs/gst/tmpl/gststaticautoplug.sgml:
8686         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8687         * docs/gst/tmpl/gstutils.sgml:
8688         * docs/gst/tmpl/gstxml.sgml:
8689
8690 2004-03-24  David Schleef  <ds@schleef.org>
8691
8692         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8693         manual being such complete crap, that I decided to do major
8694         hacking of it.  This checkin replaces any fine tuning that
8695         may have been done previously, with the benefit of actually
8696         being complete for much of the API that was changed since
8697         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8698         * docs/gst/gstreamer-sections.txt:
8699         * docs/gst/tmpl/GstBin.sgml:
8700         * docs/gst/tmpl/GstBuffer.sgml:
8701         * docs/gst/tmpl/GstCaps.sgml:
8702         * docs/gst/tmpl/GstClock.sgml:
8703         * docs/gst/tmpl/GstCompat.sgml:
8704         * docs/gst/tmpl/GstData.sgml:
8705         * docs/gst/tmpl/GstElement.sgml:
8706         * docs/gst/tmpl/GstEvent.sgml:
8707         * docs/gst/tmpl/GstIndex.sgml:
8708         * docs/gst/tmpl/GstStructure.sgml:
8709         * docs/gst/tmpl/GstTag.sgml:
8710         * docs/gst/tmpl/cothreads.sgml:
8711         * docs/gst/tmpl/cothreads_compat.sgml:
8712         * docs/gst/tmpl/gettext.sgml:
8713         * docs/gst/tmpl/grammar.tab.sgml:
8714         * docs/gst/tmpl/gst-i18n-app.sgml:
8715         * docs/gst/tmpl/gst-i18n-lib.sgml:
8716         * docs/gst/tmpl/gst.sgml:
8717         * docs/gst/tmpl/gst_private.sgml:
8718         * docs/gst/tmpl/gstaggregator.sgml:
8719         * docs/gst/tmpl/gstarch.sgml:
8720         * docs/gst/tmpl/gstatomic.sgml:
8721         * docs/gst/tmpl/gstatomic_impl.sgml:
8722         * docs/gst/tmpl/gstbin.sgml:
8723         * docs/gst/tmpl/gstbuffer.sgml:
8724         * docs/gst/tmpl/gstbufferstore.sgml:
8725         * docs/gst/tmpl/gstcaps.sgml:
8726         * docs/gst/tmpl/gstclock.sgml:
8727         * docs/gst/tmpl/gstcompat.sgml:
8728         * docs/gst/tmpl/gstconfig.sgml:
8729         * docs/gst/tmpl/gstcpu.sgml:
8730         * docs/gst/tmpl/gstdata.sgml:
8731         * docs/gst/tmpl/gstdata_private.sgml:
8732         * docs/gst/tmpl/gstelement.sgml:
8733         * docs/gst/tmpl/gstenumtypes.sgml:
8734         * docs/gst/tmpl/gsterror.sgml:
8735         * docs/gst/tmpl/gstevent.sgml:
8736         * docs/gst/tmpl/gstfakesink.sgml:
8737         * docs/gst/tmpl/gstfakesrc.sgml:
8738         * docs/gst/tmpl/gstfilesink.sgml:
8739         * docs/gst/tmpl/gstfilter.sgml:
8740         * docs/gst/tmpl/gstindex.sgml:
8741         * docs/gst/tmpl/gstinfo.sgml:
8742         * docs/gst/tmpl/gstinterface.sgml:
8743         * docs/gst/tmpl/gstlog.sgml:
8744         * docs/gst/tmpl/gstmacros.sgml:
8745         * docs/gst/tmpl/gstmarshal.sgml:
8746         * docs/gst/tmpl/gstmd5sink.sgml:
8747         * docs/gst/tmpl/gstmultifilesrc.sgml:
8748         * docs/gst/tmpl/gstobject.sgml:
8749         * docs/gst/tmpl/gstpad.sgml:
8750         * docs/gst/tmpl/gstparse.sgml:
8751         * docs/gst/tmpl/gstpipeline.sgml:
8752         * docs/gst/tmpl/gstplugin.sgml:
8753         * docs/gst/tmpl/gstpluginfeature.sgml:
8754         * docs/gst/tmpl/gstqueue.sgml:
8755         * docs/gst/tmpl/gstreamer-unused.sgml:
8756         * docs/gst/tmpl/gstregistry.sgml:
8757         * docs/gst/tmpl/gstregistrypool.sgml:
8758         * docs/gst/tmpl/gstscheduler.sgml:
8759         * docs/gst/tmpl/gstsearchfuncs.sgml:
8760         * docs/gst/tmpl/gstshaper.sgml:
8761         * docs/gst/tmpl/gstspider.sgml:
8762         * docs/gst/tmpl/gstspideridentity.sgml:
8763         * docs/gst/tmpl/gststructure.sgml:
8764         * docs/gst/tmpl/gstsystemclock.sgml:
8765         * docs/gst/tmpl/gsttag.sgml:
8766         * docs/gst/tmpl/gsttaginterface.sgml:
8767         * docs/gst/tmpl/gsttee.sgml:
8768         * docs/gst/tmpl/gstthread.sgml:
8769         * docs/gst/tmpl/gsttrace.sgml:
8770         * docs/gst/tmpl/gsttrashstack.sgml:
8771         * docs/gst/tmpl/gsttypefind.sgml:
8772         * docs/gst/tmpl/gsttypes.sgml:
8773         * docs/gst/tmpl/gsturi.sgml:
8774         * docs/gst/tmpl/gsturitype.sgml:
8775         * docs/gst/tmpl/gstutils.sgml:
8776         * docs/gst/tmpl/gstvalue.sgml:
8777         * docs/gst/tmpl/gstversion.sgml:
8778         * docs/gst/tmpl/gstxml.sgml:
8779         * docs/gst/tmpl/gstxmlregistry.sgml:
8780         * docs/gst/tmpl/gthread-cothreads.sgml:
8781         * docs/gst/tmpl/types.sgml:
8782
8783 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8784
8785         * docs/pwg/other-sink.xml:
8786         * docs/pwg/other-source.xml:
8787           Documentation on how to write source and sink elements. Other
8788           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8789           manager, autoplugger) are all still pending.
8790
8791 2004-03-25  Benjamin Otte  <otte@gnome.org>
8792
8793         * testsuite/elements/Makefile.am:
8794         * testsuite/elements/gst-compprep-check:
8795           add check to make sure gst-compprep works
8796         * testsuite/elements/gst-inspect-check.in:
8797           improve initialization output
8798         * testsuite/Makefile.am:
8799         * testsuite/gst-inspect-check:
8800           remove old file
8801
8802 2004-03-24  David Schleef  <ds@schleef.org>
8803
8804         * testsuite/elements/Makefile.am:
8805         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8806         to the testsuite.
8807
8808 2004-03-24  Benjamin Otte  <otte@gnome.org>
8809
8810         * libs/gst/control/dparam.c: (gst_dparam_attach),
8811         (gst_dparam_detach):
8812         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8813           fix lvalue casts for real
8814
8815 2004-03-24  Benjamin Otte  <otte@gnome.org>
8816
8817         * gst/schedulers/gstbasicscheduler.c:
8818         (gst_basic_scheduler_src_wrapper):
8819         * gst/schedulers/gstoptimalscheduler.c:
8820         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8821         (pad_clear_queued), (gst_opt_scheduler_add_element),
8822         (gst_opt_scheduler_remove_element):
8823           fix GStreamer to not have issues with lvalue casts anymore (fixes
8824           #136841)
8825
8826 2004-03-24  Benjamin Otte  <otte@gnome.org>
8827
8828         * gst/gstelement.c:
8829           add documentation about a gobject quirk where the object hasn't the
8830           correct class pointer set on initialization
8831         * gst/schedulers/gstbasicscheduler.c:
8832         (gst_basic_scheduler_src_wrapper):
8833           make sure to not run into an infinite loop
8834
8835 2004-03-22  Benjamin Otte  <otte@gnome.org>
8836
8837         * gst/gstutils.c: (gst_util_dump_mem):
8838         * gst/gstutils.h:
8839           first argument of gst_util_dump_mem should be const
8840
8841 2004-03-22  Johan Dahlin  <johan@gnome.org>
8842
8843         * gst/gstvalue.h: Clean up a little bit.
8844
8845 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8846
8847         reviewed by Benjamin Otte  <otte@gnome.org>
8848
8849         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8850         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8851         (gst_aggregator_class_init), (gst_aggregator_init):
8852         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8853         (gst_filesrc_dispose), (gst_filesrc_set_location):
8854         * gst/elements/gstidentity.c: (gst_identity_finalize),
8855         (gst_identity_class_init), (gst_identity_chain):
8856         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8857         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8858         (gst_statistics_class_init):
8859         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8860         (gst_tee_get_property):
8861           clean up used memory in this elements correctly on teardown (closes
8862           #137279)
8863
8864 2004-03-20  Colin Walters  <walters@redhat.com>
8865
8866         * gst/registries/gstxmlregistry.c:
8867         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8868         registry saving atomic.
8869
8870 2004-03-20  Colin Walters  <walters@redhat.com>
8871
8872         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8873         Just use
8874         access() instead of actually creating and deleting files.
8875
8876 2004-03-18  David Schleef  <ds@schleef.org>
8877
8878         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8879         (bug #137625)
8880
8881 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8882
8883         * po/sv.po: updated translation (Christian Rose)
8884
8885 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8886
8887         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8888         (gst_filesink_get_query_types), (_do_init),
8889         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8890           return FALSE silently
8891         * po/af.po: updated translation (Petri Jooste)
8892
8893 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8894
8895         * Makefile.am:
8896         * configure.ac:
8897           dist common properly
8898         * po/af.po:
8899         * po/fr.po:
8900         * po/nl.po:
8901         * po/sr.po:
8902         * po/sv.po:
8903           refreshing translations
8904
8905 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8906
8907         * po/LINGUAS:
8908         * po/sv.po:
8909         * po/af.po:
8910           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8911
8912 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8913
8914         * Makefile.am: use common/release.mak
8915
8916 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8917
8918         * docs/faq/gst-uninstalled:
8919           adding gst-monkeysaudio to the list of possible plugin dirs
8920
8921 2004-03-16  David Schleef  <ds@schleef.org>
8922
8923         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8924         (gst_init_check_with_popt_table):  Fix some gettext strings to
8925         make them easier to translate.  Required making the strings
8926         non-const.
8927
8928 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8929
8930         * configure.ac: bump nano to 1
8931
8932 === release 0.8.0 ===
8933
8934 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8935
8936         * configure.ac: release 0.8.0, "Executive Slacks"
8937
8938 2004-03-16  Johan Dahlin  <johan@gnome.org>
8939
8940         * gst/schedulers/gstoptimalscheduler.c
8941         (gst_opt_scheduler_pad_unlink): Remove double ;,
8942         spotted by Scott Wheeler
8943
8944 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8945
8946         * configure.ac: bump libtool version
8947
8948 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8949
8950         * gst/gstcaps.h:
8951         * gst/gststructure.h:
8952           add reserved padding
8953
8954 2004-03-15  Benjamin Otte  <otte@gnome.org>
8955
8956         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8957           set the first parameter for select call correctly.
8958           (fixes #137230)
8959
8960 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8961
8962         * *.c,*.h: don't mix tabs and spaces
8963
8964 2004-03-15  Johan Dahlin  <johan@gnome.org>
8965
8966         * gst/schedulers/gstoptimalscheduler.c
8967         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8968         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8969
8970         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8971         
8972 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8973
8974         * testsuite/Rules:
8975           fix gst-register rules
8976
8977 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8978
8979         * testsuite/Rules:
8980           use versioned gst-register
8981
8982 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8983
8984         * docs/libs/gstreamer-libs-sections.txt:
8985           remove </SUBSECTION>
8986         * gst/gstplugin.c:
8987         * gst/gstregistry.c: (gst_registry_add_plugin):
8988         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8989         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8990           add debugging and fix some comment blocks
8991
8992 2004-03-15  Johan Dahlin  <johan@gnome.org>
8993
8994         * *.h: Revert indent changes.
8995         
8996 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8997
8998         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8999           g_error_free the g_error
9000         * tools/gst-feedback-m.m:
9001           check for other versions of gstreamer
9002         * tools/gst-indent:
9003           use sh, not bash
9004
9005 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9006
9007         * tools/gst-register.c: do not spill paths when registries are not
9008           writable, until we fix the "user running gst-register" case.
9009
9010 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9011
9012         * *.c, *.h: commit of gst-indent run on core
9013
9014 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9015
9016         * tools/gst-indent:
9017         * tools/Makefile.am:
9018           add our indentation style as a script
9019
9020 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9021
9022         * po/sr.po:
9023         * po/LINGUAS:
9024           added Serbian translation
9025
9026 2004-03-13  Benjamin Otte  <otte@gnome.org>
9027
9028         * gst/gstelement.c:
9029           add documentation note about gst_element_found_tags_for_pad not
9030           being usable in getfunctions. (see #137042)
9031
9032 2004-03-12  David Schleef  <ds@schleef.org>
9033
9034         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
9035         change API right now!  Readd gst_caps_is_simple() macro.
9036         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
9037         uninitialized variable.  I'd bet this caused crashes.
9038         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
9039
9040 2004-03-12  Johan Dahlin  <johan@gnome.org>
9041
9042         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
9043         * gst/gstcaps.h: Clean up
9044
9045         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9046         _gst_caps_initalize()
9047
9048         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9049         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9050
9051         * gst/gststructure.c (gst_structure_get_type): Ditto
9052
9053         * gst/gststructure.h: Ditto
9054         
9055 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9056
9057         * gst/gstqueue.c: (gst_queue_init):
9058           Reset default max. values in queues. Reason is simply to avoid
9059           braindead use. If you want wider values, use the properties. The
9060           default is supposed to always work. Wider values would make this
9061           beast a memory hog by default (250 full-PAL RGB32 video frames?
9062           That's 440 MB! No thank you).
9063
9064 2004-03-10  David Schleef  <ds@schleef.org>
9065
9066         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9067         were found.  (bug #136793)
9068
9069 2004-03-10  Johan Dahlin  <johan@gnome.org>
9070
9071         * gst/schedulers/gstoptimalscheduler.c
9072         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9073         links to elements within the same group, so we can finally remove
9074         that annoying warning. Refactor the code a little bit
9075         (group_dec_links_for_element): Split out
9076
9077 2004-03-09  David Schleef  <ds@schleef.org>
9078
9079         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9080         (bug #134863)
9081
9082 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9083
9084         * configure.ac: first bug fix due to major/minor bump
9085
9086 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9087
9088         * configure.ac: bump nano to 1
9089
9090 === release 0.7.6 ===
9091
9092 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9093
9094         * NEWS:
9095         * RELEASE:
9096         * configure.ac:
9097           releasing 0.7.6, "Almost"
9098         * po/fr.po:
9099         * po/nl.po:
9100         * tools/Makefile.am:
9101         * tools/gst-feedback-m.m:
9102           unversioned source
9103
9104 2004-03-09  Johan Dahlin  <johan@gnome.org>
9105
9106         Reviewed by: Thomas Vander Stichele
9107
9108         * gst/gstelement.c (gst_element_class_init): register second
9109         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9110         language bindings can (de)marshall correctly.
9111
9112         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9113
9114         * gst/gsterror.c (gst_g_error_get_type): New function
9115
9116         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9117         with VOID:OBJECT,OBJECT,STRING 
9118
9119 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9120
9121         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9122         Free a leaked g_timer on early returns.
9123
9124 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9125
9126         * docs/pwg/advanced-types.xml:
9127           Add cinepak description.
9128
9129 2004-03-07  David Schleef  <ds@schleef.org>
9130
9131         * docs/random/mimetypes:  Added cinepak description
9132
9133 2004-03-07  Andy Wingo  <wingo@pobox.com>
9134
9135         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9136
9137         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9138         there are no links to other groups when a group is destroyed.
9139         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9140         removed from a group, make sure the link count to elements linked
9141         to other pads is appropriately decremented. This really fixes
9142         #135672.
9143
9144         The 1.60->1.61 patch has been reapplied in light of this fix.
9145
9146         * gst/gstelement.c (gst_element_dispose): Really protect against
9147         multiple invocations this time.
9148
9149 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9150
9151         * docs/gst/gstreamer-sections.txt:
9152         * docs/gst/tmpl/gsttag.sgml:
9153           remove some deprecated functions, document some existing ones
9154         * gst/gsttag.c: (gst_tag_get_flag):
9155         * gst/gsttag.h:
9156           add accessor function
9157
9158 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9159
9160         * docs/gst/gstreamer-sections.txt:
9161         * docs/gst/tmpl/gsttag.sgml:
9162         * docs/gst/tmpl/gstxml.sgml:
9163         * gst/gsttag.c: (gst_tag_get_flag):
9164         * gst/gsttag.h:
9165
9166 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9167
9168         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9169         leak
9170
9171 2004-03-05  David Schleef  <ds@schleef.org>
9172
9173         * REQUIREMENTS: Add bison and flex.
9174         * configure.ac: Fix comment about bison.
9175         * docs/random/ds/0.9-suggested-changes: yer ma
9176         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9177
9178 2004-03-05  Benjamin Otte  <otte@gnome.org>
9179
9180         * gst/gstelement.c: (gst_element_error_full):
9181           revert recent recursive state changing commit - messing with other
9182           elements' states is evil and should be done by apps only.
9183
9184 2004-03-05  Benjamin Otte  <otte@gnome.org>
9185
9186         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9187           check for empty intersection instead of NULL caps
9188         (gst_element_get_compatible_pad_filtered):
9189           remove old workaround that is only a bug nowadays
9190
9191 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9192
9193         * gst/gstelement.c: (gst_element_error_full):
9194           make elements try to recursively change state to PAUSED on all
9195           parents after an error to suppress ensuing warnings
9196         * gst/parse/grammar.y:
9197           make it check if it was able to sync the state, and throw an error
9198           if not, so stuff like
9199           oggdemux ! vorbisdec ! osssink gets caught
9200
9201 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9202
9203         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9204           it contains lib64; use AS_AC_EXPAND to handle it properly
9205
9206 2004-03-05  David Schleef  <ds@schleef.org>
9207
9208         * gst/gstcpuid_i386.s:  Remove unused code
9209         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9210         (gst_getbits_newbuf): Remove MMX code
9211         * libs/gst/getbits/getbits.h: Remove MMX code
9212
9213 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9214
9215         * debian/.cvsignore:
9216         * debian/README.Debian:
9217         * debian/changelog:
9218         * debian/control:
9219         * debian/control.in:
9220         * debian/copyright:
9221         * debian/gstreamer-core-libs-dev.files:
9222         * debian/gstreamer-core-libs.files:
9223         * debian/gstreamer-core.files:
9224         * debian/gstreamer-core.postinst:
9225         * debian/gstreamer-core.postrm:
9226         * debian/gstreamer-doc.files:
9227         * debian/gstreamer-doc.links:
9228         * debian/gstreamer-doc.lintian:
9229         * debian/gstreamer-runtime.files:
9230         * debian/gstreamer-runtime.manpages:
9231         * debian/gstreamer-runtime.postinst:
9232         * debian/gstreamer-runtime.postrm:
9233         * debian/gstreamer-tools.files:
9234         * debian/gstreamer-tools.manpages:
9235         * debian/libgstreamer-dev.files:
9236         * debian/libgstreamer0.4.1.files:
9237         * debian/libgstreamerVERSION.files:
9238         * debian/rules:
9239         Debian package info not maintained here.
9240
9241 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9242
9243         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9244         * gst/gstbin.c: (gst_bin_class_init):
9245         * gst/gstelement.c: (gst_element_class_init):
9246         * gst/gstindex.c: (gst_index_class_init):
9247         * gst/gstobject.c: (gst_object_class_init),
9248         (gst_signal_object_class_init):
9249         * gst/gstpad.c: (gst_pad_template_class_init):
9250         * gst/gstregistry.c: (gst_registry_class_init):
9251         * gst/gsturi.c: (gst_uri_handler_base_init):
9252         * gst/gstxml.c: (gst_xml_class_init):
9253         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9254         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9255           make all signal names use dashes instead of underscore
9256
9257 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9258
9259         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9260
9261 2004-03-03  Benjamin Otte  <otte@gnome.org>
9262
9263         * gst/schedulers/gstoptimalscheduler.c:
9264           revert last commit by Andy Wingo. It causes segfaults on unreffing
9265           in Rhythmbox. (see bug #135672)
9266
9267 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9268
9269         * po/fr.po: fix typo
9270
9271 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9272
9273         * tools/gst-inspect.c: (main): 
9274         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9275
9276 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9277
9278         * configure.ac:
9279           get GLIB_ONLY and POPT flags for the nonversioned binaries
9280         * tools/Makefile.am:
9281           use them
9282
9283 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9284
9285         * gst/gst.c: (init_post):
9286           change so that GST_REGISTRY now is where the global registry gets
9287           saved, since that is where plugins now get attached to first, and
9288           spilled over to the user registry.  Note that in the case of using
9289           GST_REGISTRY env var, we don't want to affect any real registries
9290           beyond the one given by this var, and thus we don't set a user
9291           registry to spill to.  So make sure GST_REGISTRY is writable.
9292
9293 2004-03-01  David Schleef  <ds@schleef.org>
9294
9295         * AUTHORS:  Added some names.  Add yourself if you're missing.
9296
9297 2004-03-01  David Schleef  <ds@schleef.org>
9298
9299         * MAINTAINERS: Add
9300
9301 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9302
9303         * configure.ac:
9304           remove whitespace
9305         * docs/gst/tmpl/gstbuffer.sgml:
9306         * docs/gst/tmpl/gstdata.sgml:
9307         * docs/gst/tmpl/gstreamer-unused.sgml:
9308         * docs/gst/tmpl/gstxml.sgml:
9309           doc update
9310         * docs/manuals.mak:
9311           add a FIXME
9312         * docs/pwg/intro-preface.xml:
9313         * docs/pwg/pwg.xml:
9314           remove GNOME
9315         * gst/gst.c: (init_post):
9316           try GST_PLUGIN_PATH paths for the _global_registry first
9317         * gst/gstelement.h:
9318           add the error message as well, otherwise (null) debug info doesn't
9319           make much sense
9320         * tools/gst-register.c: (main):
9321           spill paths to next registry if this registry is not writable
9322         * po/fr.po:
9323         * po/nl.po:
9324           translation updates
9325
9326 2004-03-01  Johan Dahlin  <johan@gnome.org>
9327
9328         * gst/gstbuffer.c (_gst_buffer_initialize): 
9329         * gst/gstdata.c (gst_data_get_type): 
9330         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9331         instead of ref, since some applications that uses GBoxed
9332         routines depends on a function that actually returns a copy.
9333
9334 2004-02-27  Benjamin Otte  <otte@gnome.org>
9335
9336         * gst/gstbuffer.h:
9337           remove gst_buffer_free, use gst_data_unref
9338         * gst/gstdata.c: (gst_data_get_type):
9339           use refcounting in GstData GBoxed registration
9340         * gst/gstdata.h:
9341           remove gst_data_free, use gst_data_unref
9342
9343 2004-02-27  Johan Dahlin  <johan@gnome.org>
9344
9345         * gst/gstdata.c (gst_data_get_type): New function, register
9346         GstData as a GBoxed type.
9347
9348         * gst/gstdata.h (GST_TYPE_DATA): New macro
9349
9350 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9351
9352         * Makefile.am:
9353         * gstreamer.spec.in:
9354           put back RELEASE
9355         * gst/Makefile.am:
9356           clean up non-disting of built files
9357         * testsuite/debug/commandline.c:
9358           test fix for option rename
9359
9360 2004-02-26  David Schleef  <ds@schleef.org>
9361
9362         * configure.ac:  We don't really need glib-2.3.  Also remove
9363         some unneeded checks for library functions.
9364         * gst/Makefile.am:  Instead, we need to not dist files created
9365         by glib-genmarshal.
9366
9367 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9368
9369         * configure.ac:
9370           bump glib required version to 2.3.0 for g_value_takes_boxed
9371
9372  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9373
9374         * common/m4/gst-docs.m4
9375         change flavour text from enable to disable as enable is our default
9376         closes bug Bug 135304
9377
9378 === release 0.7.5 ===
9379  
9380  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9381  
9382         * NEWS:
9383           instate NEWS file
9384         * Makefile.am:
9385         * gstreamer.spec.in:
9386         * RELEASE:
9387           put back release
9388         * configure.ac:
9389         * docs/random/release:
9390           more updates
9391
9392 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9393
9394         * gst/gsttag.c: (_gst_tag_initialize):
9395         * po/fr.po:
9396         * po/nl.po:
9397           remove hyphen from codec tags
9398
9399 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9400
9401         * gst/parse/Makefile.am:
9402           fix dependency so that a make from a clean build works the first
9403           time
9404
9405 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9406
9407         * docs/random/release:
9408           update release strategy
9409         * po/fr.po:
9410           auto-update po file
9411         * po/nl.po:
9412           update dutch translation
9413
9414 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9415
9416         * docs/manual/debugging.xml:
9417         fix manual for new debugging system
9418
9419 2004-02-25  Andy Wingo  <wingo@pobox.com>
9420
9421         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9422         gst_pad_link_prepare. Please email the list with specific reasons
9423         for reverting.
9424
9425 2004-02-24  Andy Wingo  <wingo@pobox.com>
9426
9427         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9428         invocations.
9429
9430         * gst/schedulers/gstoptimalscheduler.c:
9431         I added a mess of prototypes at the top of the file by way of
9432         documentation. Some of the operations on chains and groups were
9433         re-organized.
9434
9435         (create_group): Added a type argument so if the group is enabled,
9436         the setup_group_scheduler knows what to do.
9437         (group_elements): Added a type argument here, too, to be passed on
9438         to create_group.
9439         (group_element_set_enabled): If an unlinked PLAYING element is
9440         added to a bin, we have to create a new group to hold the element,
9441         and this function will be called before the group is added to the
9442         chain. Thus we have a valid case for group->chain==NULL. Instead
9443         of calling chain_group_set_enabled, just set the flag on the group
9444         (the chain's status will be set when the group is added to it).
9445         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9446         Setup the group scheduler when the group is enabled, not
9447         specifically when an element goes PAUSED->PLAYING. This means
9448         PLAYING elements can be added, linked, and scheduled into a
9449         PLAYING pipeline, as was intended.
9450         (add_to_group): Don't ref the group twice. I don't know when this
9451         double-ref got in here. Removing it has the potential to cause
9452         segfaults if other parts of the scheduler are buggy. If you find
9453         that the scheduler is segfaulting for you, put in an extra ref
9454         here and see if that hacks over the underlying issue. Of course,
9455         then find out what code is unreffing a group it doesn't own...
9456         (create_group): Make the extra refcount floating, and remove it
9457         after adding the element. This means that...
9458         (unref_group): Destroy when the refcount reaches 0, not 1, like
9459         every other refcounted object in the known universe.
9460         (remove_from_group): When a group becomes empty, set it to be not
9461         active, and remove it from its chain. Don't unref it again,
9462         there's no floating reference any more.
9463         (destroy_group): We have to remove the group from the chain in
9464         remove_from_group (rather than here) to break refcounting cycles
9465         (the chain always has a ref on the group). So assert that
9466         group->chain==NULL.
9467         (ref_group_by_count): Removed, it was commented out anyway.
9468         (merge_chains): Use the remove_from_chain and add_to_chain
9469         primitives to do the reparenting, instead of rolling our own
9470         implementation.
9471         (add_to_chain): The first non-disabled group in the chain's group
9472         list will be the entry point for the chain. Because buffers can
9473         accumulate in loop elements' peer bufpens, we preferentially
9474         schedule loop groups before get groups to avoid unnecessary
9475         execution of get-based groups when the bufpens are already full.
9476         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9477         (get_group_schedule_function): Ditto.
9478         (loop_group_schedule_function): Ditto.
9479         (gst_opt_scheduler_loop_wrapper): Ditto.
9480         (gst_opt_scheduler_iterate): Ditto.
9481
9482         I understand the opt scheduler now, yippee!
9483
9484         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9485         (gst_pad_get_name, gst_pad_set_chain_function) 
9486         (gst_pad_set_get_function, gst_pad_set_event_function) 
9487         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9488         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9489         (gst_pad_set_query_function, gst_pad_get_query_types) 
9490         (gst_pad_get_query_types_default) 
9491         (gst_pad_set_internal_link_function) 
9492         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9493         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9494         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9495         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9496         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9497         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9498         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9499         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9500         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9501         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9502         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9503         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9504         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9505         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9506         argument checks, and some doc fixes.
9507
9508         (gst_pad_custom_new_from_template): Um, does anyone
9509         use these functions? Actually make a custom pad instead of a
9510         normal one.
9511         (gst_pad_try_set_caps): Transpose some checks.
9512         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9513         the pad is in negotiation.
9514         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9515         
9516         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9517
9518         * gst/gstelement.h: 
9519         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9520         on the list.
9521
9522 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9523
9524         * gst/gstbin.c: (gst_bin_add):
9525           add error for not being able to add elements
9526
9527 2004-02-22  Julien MOUTTE <julien@moutte.net>
9528
9529         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9530         audio-codec and video-codec.
9531
9532 2004-02-22  Benjamin Otte  <otte@gnome.org>
9533
9534         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9535
9536         * autogen.sh:
9537           replace test -e with test -x for mkinstalldirs to be more portable.
9538           (fixes #134816)
9539
9540 2004-02-22  Benjamin Otte  <otte@gnome.org>
9541
9542         * gst/gstpad.c:
9543           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9544           too noisy
9545         * gst/gsttag.c: (_gst_tag_initialize):
9546         * gst/gsttag.h:
9547           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9548         * libs/gst/control/dparam.c: (gst_dparam_attach):
9549         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9550           check that types for attached dparams match
9551
9552 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9553
9554         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9555         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9556         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9557           fix errors
9558
9559 2004-02-20  Andy Wingo  <wingo@pobox.com>
9560
9561         * gst/gstbin.c:
9562         * gst/gstbuffer.c:
9563         * gst/gstplugin.c:
9564         * gst/registries/gstxmlregistry.c: 
9565         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9566
9567         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9568         (gst_element_add_pad): DEBUG->INFO, some fixes.
9569         (gst_element_get_compatible_pad_template): Just see if the
9570         templates' caps intersect, not if one is a strict subset of the
9571         other. This conforms more to what gst_pad_link_intersect() does.
9572         (gst_element_class_add_pad_template): Don't memcpy the pad
9573         template, just ref it.
9574         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9575
9576         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9577         (gst_pad_link_filtered): Debug changes.
9578         (gst_pad_link_prepare): New function, consolidated from
9579         can_link_filtered and link_filtered.
9580
9581         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9582         look more like that of the functions in gstelement.c
9583
9584         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9585         object, and return the empty string if object is NULL.
9586
9587         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9588         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9589         LOG, not DEBUG. We still get flex info on debug.
9590
9591         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9592         debug string more verbose.
9593         (plugin_times_older_than): DEBUG->LOG.
9594
9595 2004-02-20  Julien MOUTTE <julien@moutte.net>
9596
9597         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9598         will emit found_tag for each stream they demux with the codec.
9599
9600 2004-02-20  Benjamin Otte  <otte@gnome.org>
9601
9602         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9603           copy navigation event correctly. Check freeing tag lists. 
9604         * gst/gstthread.c: (gst_thread_change_state):
9605           don't abort() on state changing mess - it might happen because of
9606           bugs.
9607         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9608           use boxed functions
9609         * gst/gstvalue.h:
9610           fix GST_VALUE_HOLDS_CAPS
9611
9612 2004-02-19  David Schleef  <ds@schleef.org>
9613
9614         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9615         and use it for GST_FUNCTION.  (bug #134750)
9616
9617 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9618
9619         * po/fr.po:
9620         * po/nl.po:
9621           updating translations
9622
9623 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9624
9625         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9626
9627 2004-02-18  kost@imn.htwk-leipzig.de
9628
9629         reviewed by: David Schleef  <ds@schleef.org>
9630
9631         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9632         for libgstcontrol.
9633
9634 2004-02-18  David Schleef  <ds@schleef.org>
9635
9636         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9637         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9638         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9639         * tools/gst-inspect.c: (print_element_info): Support dumping of
9640         double dparam information.
9641
9642 2004-02-17  David Schleef  <ds@schleef.org>
9643
9644         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9645         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9646         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9647         Use GST_TYPE_CAPS in signal prototype.
9648         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9649         Convert GST_TYPE_CAPS to boxed.
9650         * gst/gstelement.c: (gst_element_class_init):
9651         Use GST_TYPE_TAG_LIST in signal prototype.
9652         * gst/gstindex.c: (gst_index_class_init):
9653         * gst/gstindex.h:
9654         Add GST_TYPE_INDEX_ENTRY type.
9655         * gst/gstmarshal.list:
9656         Add necessary marshal types.
9657         * gst/gstpad.c: (gst_real_pad_class_init),
9658         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9659         (gst_pad_recover_caps_error):
9660         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9661         * gst/gststructure.c: (_gst_structure_initialize),
9662         (gst_structure_copy), (_gst_structure_copy_conditional):
9663         * gst/gststructure.h:
9664         Convert GST_TYPE_STRUCTURE to boxed.
9665         * gst/gsttag.c: (gst_tag_list_get_type):
9666         * gst/gsttag.h:
9667         Add GST_TYPE_TAG_LIST type.
9668
9669 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9670
9671         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9672         to what we agreed with david.
9673         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9674
9675 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9676
9677         * po/nl.po: update translation
9678
9679 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9680
9681         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9682           throw an error if spider is trying to play a mime type there is
9683           no decoder for
9684         * po/POTFILES.in:
9685           add gst/autoplug/gstspider.c for translation
9686
9687 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9688
9689         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9690         silently when the pad is negotiating.
9691
9692 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9693
9694         * docs/faq/Makefile.am:
9695           add script to run gstreamer uninstalled 
9696         * docs/faq/faq.xml:
9697         * docs/faq/developing.xml:
9698         * docs/faq/gst-uninstalled:
9699           extract script to run gstreamer uninstalled
9700         * docs/manuals.mak:
9701           add EXTRA_SOURCES variable for Makefile.am's to set to
9702           use additional SOURCE files for the doc build
9703
9704 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9705
9706         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9707
9708 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9709
9710         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9711         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9712         an error was thrown by osssink. Basically a state change failure for
9713         an element in a different scheduling group was considered as
9714         successful, which means that caps nego was going on and weird stuff
9715         happened. Like I wrote in the comment there, if someone wants to
9716         revert that please drop me a mail explaining why because I really see
9717         no point in keeping that broken behaviour there.
9718         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9719         be empty, we then return NULL which will trigger a nice error when 
9720         pulling from the pad.
9721
9722 2004-02-13  David Schleef  <ds@schleef.org>
9723
9724         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9725         (gst_dparam_get_property), (gst_dparam_set_property),
9726         (gst_dparam_do_update_default):
9727         * libs/gst/control/dparam.h:
9728         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9729         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9730         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9731         (gst_dpsmooth_do_update_double):
9732         * libs/gst/control/dparam_smooth.h:
9733         * libs/gst/control/dparammanager.c:
9734         (gst_dpman_inline_direct_update):
9735         Add support for double dparams.
9736
9737 2004-02-13  David Schleef  <ds@schleef.org>
9738
9739         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9740         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9741
9742 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9743
9744         reviewed by: David Schleef  <ds@schleef.org>
9745
9746         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9747         (gst_fdsrc_init), (gst_fdsrc_set_property),
9748         (gst_fdsrc_get_property), (gst_fdsrc_get):
9749         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9750         and sends an EOS event if file descriptor reading times out.
9751
9752 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9753
9754         * configure.ac:
9755           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9756
9757 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9758
9759         * configure.ac: pass required libxml version as argument
9760         (bug reported by Christophe Fergeau)
9761
9762 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9763   
9764         * docs/gst/gstreamer-docs.sgml:
9765         * docs/gst/tmpl/gstxml.sgml:
9766         * docs/libs/gstreamer-libs-docs.sgml:
9767           version API docs
9768
9769 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9770
9771         * gst/gstinfo.c:
9772         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9773         (gst_registry_pool_feature_filter):
9774         * gst/gstthread.c: (gst_thread_class_init):
9775         * gst/gstvalue.c:
9776           add includes exposed by building without libxml
9777         * gst/indexers/Makefile.am:
9778           do not build fileindex when LOADSAVE disabled; we should have
9779           a better libxml check later since fileindex depends on xml, not
9780           LOADSAVE or REGISTRY
9781         * libs/gst/control/Makefile.am:
9782           link with m
9783         * tools/Makefile.am:
9784           fix wrong source code for gst-xmlinspect
9785
9786 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9787
9788         * configure.ac:
9789           fix gcov help output
9790           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9791         * docs/random/release:
9792           some updated releasing notes
9793         * gstreamer.spec.in:
9794           more updates
9795
9796 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9797
9798         * docs/faq/faq.xml:
9799         * docs/manual/manual.xml:
9800         * docs/pwg/pwg.xml:
9801         * docs/pwg/titlepage.xml:
9802           put version in documentation
9803
9804 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9805
9806         * tools/Makefile.am: fix man page installation
9807
9808 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9809
9810         * configure.ac:
9811           don't check for libxml when load/save and registry disabled (#105844)
9812         * gstreamer.spec.in:
9813           sync with fedora candidate spec
9814
9815 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9816
9817         * po/fr.po:
9818         * po/nl.po:
9819           replace multidisksrc with multifilesrc
9820
9821 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9822
9823         * po/POTFILES.in:
9824           update to multidisksrc => multifilesrc file renaming (#134145)
9825
9826 2004-02-11  David Schleef  <ds@schleef.org>
9827
9828         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9829         * docs/gst/tmpl/gstpadtemplate.sgml: same
9830         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9831         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9832         fixing dance.
9833         * gst/gstutils.c: Remove disabled code that uses GstProps.
9834         * gst/registries/gstxmlregistry.h: same
9835         * docs/random/ds/0.9-suggested-changes: random notes
9836
9837 2004-02-11  kost@imn.htwk-leipzig.de
9838
9839         reviewed by: David Schleef  <ds@schleef.org>
9840
9841         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9842         initialisation of clock (bug #134128)
9843
9844 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9845
9846         * configure.ac:
9847         * gst/elements/Makefile.am:
9848         * gst/elements/gstelements.c:
9849         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9850         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9851         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9852         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9853         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9854         * gst/elements/gstmultifilesrc.h:
9855           rename multidisksrc to multifilesrc (part of #122200)
9856
9857 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9858
9859         * docs/manuals.mak:
9860           fix automake complaints
9861         * gst-element-check.m4:
9862           fix unquotedness
9863
9864 2004-02-11  David Schleef  <ds@schleef.org>
9865
9866         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9867         * gst/gstatomic_impl.h: Disable sparc implementation.
9868
9869 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9870
9871         * gst-element-check.m4:
9872           fix underquoted macros as reported by automake 1.8.x (#133800)
9873         * configure.ac:
9874           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9875           by autopoint (fixes #132996)
9876
9877 2004-02-10  Andy Wingo  <wingo@pobox.com>
9878
9879         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9880         way to do inheritance.
9881         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9882         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9883         Routine docs.
9884         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9885         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9886         doc.
9887         (gst_pad_unlink, gst_pad_is_linked): Docs.
9888         (gst_pad_renegotiate): A brief description of capsnego.
9889         (gst_pad_try_set_caps): Document.
9890         (gst_pad_try_set_caps_nonfixed): Document.
9891         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9892         (gst_pad_set_parent): Deprecated (although not out of the API).
9893         (gst_pad_get_parent): Deprecated, although many plugins use this.
9894         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9895         are private and will go away in 0.9.
9896         (gst_pad_perform_negotiate): Doc.
9897         (gst_pad_link_unnegotiate): I think this is meant to be static.
9898         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9899         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9900         (gst_pad_get_peer): Doc updates.
9901         (gst_pad_caps_change_notify): Doc.
9902         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9903         (gst_ghost_pad_new): Doc fixes.
9904
9905         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9906         (gst_object_check_uniqueness): 
9907
9908         * gst/gstelement.c (gst_element_add_pad) 
9909         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9910         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9911         (gst_element_get_static_pad, gst_element_get_pad_list) 
9912         (gst_element_class_get_pad_template_list) 
9913         (gst_element_class_get_pad_template): Work on the docs.
9914         (gst_element_get_pad_template_list): Uses the class method.
9915         (gst_element_get_compatible_pad_template): Docs, and consolidate
9916         some test conditions. 
9917         (gst_element_get_pad_from_template): New static function.
9918         (gst_element_request_compatible_pad): Docs, and work with
9919         non-request compatible templates. 
9920         (gst_element_get_compatible_pad_filtered): Docs and remove
9921         redundant checks.
9922         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9923         (gst_element_link_filtered, gst_element_link_many) 
9924         (gst_element_link, gst_element_link_pads) 
9925         (gst_element_unlink_many): Docs.
9926
9927 2004-02-05  Andy Wingo  <wingo@pobox.com>
9928
9929         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9930         s/pointer/boxed/.
9931
9932         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9933
9934         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9935         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9936         with the type=GST_TYPE_CAPS. This allows language bindings to know
9937         what kind of data they're dealing with.
9938
9939         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9940         to NULL when g_value_init is called. GstCaps, which rolls its own
9941         type implementation, now does the same instead of allocating empty
9942         caps.
9943         (_gst_caps_initialize, _gst_caps_collect_value,
9944         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9945         table methods. This allows G_VALUE_COLLECT to work.
9946
9947 2004-02-05  Andy Wingo  <wingo@pobox.com>
9948
9949         * configure.ac:
9950         * testsuite/Makefile.am (SUBDIRS): 
9951         * testsuite/ghostpads/Makefile.am: 
9952         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9953
9954         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9955         These two routines are the only ones that set
9956         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9957         pad template. They should be made static, depending on ABI needs.
9958         (gst_real_pad_dispose): Handle the case of ghost pads without a
9959         parent. Assert after dealing with ghost pads that the ghost pad
9960         list is empty.
9961         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9962         set after creation.
9963         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9964         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9965         functions. set_property will call add_ghost_pad/remove_ghost_pad
9966         as appropriate.
9967         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9968
9969         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9970         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9971         (gst_element_remove_pad): Handle ghost pads as well.
9972         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9973         depending on API-stability needs).
9974
9975 2004-02-05  Andy Wingo  <wingo@pobox.com>
9976
9977         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9978         of course they're const
9979
9980 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9981
9982         * tools/Makefile.am:
9983         * tools/gst-feedback:
9984         * tools/gst-feedback-0.7:
9985           make gst-feedback versioned too for consistency
9986
9987 2004-02-11  David Schleef  <ds@schleef.org>
9988
9989         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9990         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9991
9992 2004-02-10  Julien MOUTTE <julien@moutte.net>
9993
9994         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9995         the structure does not contain a valid tag list. Adding a safety check
9996         to remove a noisy warning in that case.
9997
9998 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9999
10000         * gst/gst.c: fix name to be in line with others
10001
10002 2004-02-09  Julien MOUTTE <julien@moutte.net>
10003
10004         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
10005         not shout that loud when len is 0. Just return 0 silently.
10006
10007 2004-02-09  Julien MOUTTE  <julien@moutte.net>
10008
10009         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
10010         because data_unref has one and I prefer the debug to be symetric.
10011         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
10012         were refed when added to the queue and unrefed only once when the queue
10013         was flushed. Now the flush handler unref the buffers two times : first
10014         unref for the ref added when pushing in the queue's tail and second
10015         unref to destroy the flushed buffer.
10016
10017 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10018
10019         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
10020
10021 2004-02-06  David Schleef  <ds@schleef.org>
10022
10023         * docs/random/ds/0.9-suggested-changes: Random ramblings
10024         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
10025         to int before printing.
10026         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
10027         * gst/parse/parse.l: same.  See bug #129600
10028
10029 2004-02-06  David Schleef  <ds@schleef.org>
10030
10031         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
10032         (gst_index_add_entry), (gst_index_add_associationv),
10033         (gst_index_add_association): Add gst_index_add_associationv()
10034         and clean up gst_index_add_association(). #127133
10035
10036 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10037
10038         * autogen.sh: check out common with right tag if CVS/Tag exists
10039
10040 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10041
10042         * testsuite/ghostpads/ghostpads.c: (main):
10043           fix testsuite from segfaulting
10044
10045 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10046
10047         * Makefile.am: add release target
10048         * configure.ac: bump nano to 1
10049         * docs/random/release:
10050
10051 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10052
10053         * gst/gstcaps.h:
10054         * gst/gstelement.c: (gst_element_base_class_init),
10055         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10056         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10057         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10058         (gst_real_pad_dispose):
10059         * gst/gststructure.c: (gst_structure_free),
10060         (gst_structure_from_string):
10061           put reverted patch back in
10062         * gst/gstelement.c: (gst_element_remove_pad):
10063           free explicit caps if they're set
10064         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10065           copy the structure when fixating
10066
10067 2004-02-05  David Schleef  <ds@schleef.org>
10068
10069         * gst/gstmarshal.list:
10070         * gst/gstpad.c: (gst_real_pad_class_init),
10071         (_gst_real_pad_fixate_accumulator):
10072         Revert POINTER->BOXED change in signal marshaller.
10073
10074 === release 0.7.4 ===
10075                                                                                 
10076 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10077                                                                                 
10078         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10079         * configure.ac: changed for release
10080
10081 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10082
10083         * gstreamer.spec.in:
10084           bump required version of gtk-doc
10085
10086 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10087
10088         * gst/gstcaps.h:
10089         * gst/gstelement.c: (gst_element_base_class_init),
10090         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10091         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10092         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10093         (gst_real_pad_dispose):
10094         * gst/gststructure.c: (gst_structure_free),
10095         (gst_structure_from_string):
10096           revert patch that breaks applications, reapply after release
10097           to get this fixed properly
10098
10099 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10100
10101         * gst/gsttag.c: (_gst_tag_initialize):
10102         * gst/gsttag.h:
10103           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10104
10105 2004-02-04  David Schleef  <ds@schleef.org>
10106
10107         Fix some memleaks:
10108         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10109         (gst_spider_plug_from_srcpad):
10110         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10111
10112 2004-02-04  David Schleef  <ds@schleef.org>
10113
10114         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10115         a GstRealPad before accessing its structure members.
10116
10117 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10118
10119         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10120         (gst_clock_get_speed):
10121         * gst/gstclock.h:
10122           reset padding, remove unused fields
10123
10124 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10125
10126         * gst/autoplug/gstspideridentity.c:
10127         (gst_spider_identity_sink_loop_type_finding):
10128           use get_allowed_caps, not get_caps (fixes #132519)
10129         * gst/elements/gsttypefind.c: (stop_typefinding):
10130           use correct order when sending buffers and seeking
10131
10132 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10133
10134         * configure.ac:
10135         * gst/gstelement.h:
10136         * gst/gstpad.h:
10137         * gst/gstqueue.h:
10138           upgrade libtool CURRENT, reset padding
10139
10140 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10141
10142         * configure.ac:
10143           bump to prerelease
10144           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10145
10146 2004-02-04  David Schleef  <ds@schleef.org>
10147
10148         * docs/random/ds/0.9-suggested-changes: random notes
10149         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10150         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10151         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10152         expansion.
10153         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10154         (gst_filesink_get_query_types): same
10155         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10156         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10157         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10158         to use new GST_PTR_FORMAT.
10159         * gst/gstelement.h: deprecate function factory macros
10160         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10161         These are our last variadic macros that can't be replaced with
10162         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10163         attempting to deprecate gst_element_clock_wait().
10164         * gst/gstevent.h: same
10165         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10166         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10167         * gst/gstpad.h: deprecate function factory macros similar to above.
10168
10169 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10170
10171         * configure.ac:
10172         * tools/Makefile.am:
10173         * tools/gst-run.c: (popt_callback), (hash_print_key),
10174         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10175         (get_candidates), (main):
10176           add new source file to generate non-versioned wrapper binaries
10177           for our tools.
10178
10179 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10180
10181         * gst/gstevent.c: (_gst_event_free):
10182           actually break; inside the switch statement
10183         * gst/parse/grammar.y:
10184           fix memleak where GValues weren't unset
10185
10186 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10187
10188         * gst/gststructure.c: (gst_structure_from_string):
10189           fix huge memleak
10190         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10191         (new_entry), (gst_type_find_element_chain):
10192         * gst/gstelement.c: (gst_element_base_class_init),
10193         (gst_element_class_set_details):
10194         * gst/gstpad.c: (gst_pad_can_link_filtered):
10195           fix smaller memleaks
10196         * gst/gstpad.c: (gst_real_pad_dispose):
10197           check that explicit caps are gone
10198         * gst/gststructure.c: (gst_structure_free):
10199           actually free the structure
10200         * gst/gstelement.c: (gst_element_clear_pad_caps):
10201           unset explicit caps
10202
10203 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10204
10205         * tools/Makefile.am:
10206           use AM_CFLAGS since all the CFLAGS are the same
10207           use AM_LDFAGS
10208
10209 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10210
10211         * docs/manual/gnome.xml:
10212           expand example a little
10213         * gst/gst.c: (gst_init_with_popt_table),
10214         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10215           make sure popt option displays are done with right textdomain
10216           use GstPoptOption type
10217         * gst/gst.h:
10218           create GstPoptOption type
10219
10220 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10221
10222         * gst/gsterror.c: (_gst_stream_errors_init):
10223         * gst/gsterror.h:
10224           adding error type for no codec
10225         * po/POTFILES.in:
10226           add gst-inspect
10227         * po/nl.po:
10228           update dutch translation
10229         * tools/gst-inspect.c: (print_element_list), (main):
10230           do proper internationalization
10231         * tools/gst-launch.c: (idle_func):
10232           remove commented out function call
10233
10234 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10235
10236         * docs/README:
10237           add some error fixing notes
10238         * docs/gst/gstreamer-sections.txt:
10239           remove double entries
10240         * docs/gst/tmpl/gstbin.sgml:
10241         * docs/gst/tmpl/gstclock.sgml:
10242           remove override
10243         * docs/gst/tmpl/gstelement.sgml:
10244         * docs/gst/tmpl/gstindex.sgml:
10245         * docs/gst/tmpl/gstobject.sgml:
10246         * docs/gst/tmpl/gstpadtemplate.sgml:
10247         * docs/gst/tmpl/gstreamer-unused.sgml:
10248         * docs/gst/tmpl/gsttag.sgml:
10249         * docs/gst/tmpl/gstthread.sgml:
10250         * docs/gst/tmpl/gstxml.sgml:
10251         * gst/gsttag.h:
10252           sync header prototypes with c decls
10253         * gst/gsttaginterface.c:
10254           fix doc headers
10255
10256 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10257
10258         * gst/parse/Makefile.am:
10259         * gst/gstobject.h:
10260           get rid of gstmarshal.h dependency. It's not needed.
10261         * gst/gst.h:
10262         * gst/elements/gstfakesink.c:
10263         * gst/elements/gstfakesrc.c:
10264         * gst/elements/gstidentity.c:
10265         * gst/gstbin.c:
10266         * gst/gstelement.c:
10267         * gst/gstindex.c:
10268         * gst/gstobject.c:
10269         * gst/gstpad.c:
10270         * gst/gstthread.c:
10271         * gst/gstxml.c:
10272         * libs/gst/control/dparam.c:
10273         * libs/gst/control/dparammanager.c:
10274           include gstmarshal.h.
10275         Fixes #132045
10276
10277 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10278
10279         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10280         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10281         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10282         * gst/elements/gstfilesrc.h:
10283           don't ref the filesrc when creating mmaped buffers. Don't keep a
10284           list of not-yet-destroyed buffers.
10285         * gst/gstbuffer.h:
10286           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10287
10288 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10289
10290         * gst/gst.c: (init_pre):
10291           remove textdomain
10292
10293 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10294
10295         * docs/pwg/advanced-events.xml:
10296         * docs/pwg/advanced-scheduling.xml:
10297         * docs/pwg/intro-basics.xml:
10298         * docs/pwg/other-manager.xml:
10299         * docs/pwg/other-nton.xml:
10300         * docs/pwg/other-ntoone.xml:
10301         * docs/pwg/other-oneton.xml:
10302         * docs/pwg/pwg.xml:
10303           All sort of documentation... Forgot what. Point is that I want this
10304           in before I leave. The 'other-*' will be the last section and will
10305           explain issues specific to these type of elements.
10306
10307 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10308
10309         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10310         (gst_filesrc_get_read):
10311           set all the values on buffers that we can
10312
10313 2004-02-02  David Schleef  <ds@schleef.org>
10314
10315         Change usage of isblah() to g_ascii_isblah() to be more locale
10316         independent.  (#133076)
10317         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10318         * gst/gstutils.c:
10319         * gst/parse/parse.l:
10320
10321 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10322
10323         reviewed by: David Schleef  <ds@schleef.org>
10324
10325         Fix memory leaks:
10326         * gst/gstcaps.c: (gst_caps_to_string):
10327         * gst/registries/gstxmlregistry.c:
10328         (gst_xml_registry_add_path_list_func),
10329         (gst_xml_registry_parse_padtemplate):
10330
10331 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10332
10333         * gst/gstelement.c: (gst_element_default_error):
10334           suffix error messages with period
10335
10336 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10337
10338         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10339         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10340         * gst/gsterror.c: (gst_error_get_message):
10341           Suffix with dots
10342         * po/fr.po:
10343         * po/nl.po:
10344           Update translation files
10345
10346 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10347
10348         * gst/autoplug/gstspideridentity.c:
10349         (gst_spider_identity_sink_loop_type_finding):
10350         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10351         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10352         (gst_filesink_close_file), (gst_filesink_handle_event),
10353         (gst_filesink_chain):
10354         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10355         (gst_filesrc_get_read), (gst_filesrc_open_file):
10356         * gst/elements/gstidentity.c: (gst_identity_chain):
10357         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10358         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10359         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10360         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10361         * gst/gsterror.c: (_gst_core_errors_init),
10362         (_gst_library_errors_init), (_gst_resource_errors_init),
10363         (_gst_stream_errors_init), (gst_error_get_message):
10364         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10365         (gst_pad_recover_caps_error), (gst_pad_pull):
10366         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10367         * gst/schedulers/gstbasicscheduler.c:
10368         (gst_basic_scheduler_chainhandler_proxy),
10369         (gst_basic_scheduler_gethandler_proxy),
10370         (gst_basic_scheduler_cothreaded_chain):
10371           Suffix error messages with period.
10372           Use (NULL) instead of NULL
10373
10374 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10375
10376         * docs/gst/tmpl/gstelement.sgml:
10377         * docs/gst/tmpl/gstxml.sgml:
10378         * gst/gstelement.c: (gst_element_error_full):
10379           add element path to error
10380
10381 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10382
10383         * docs/random/mimetypes:
10384           update raw int/float info
10385         * gst/gsttag.c: (_gst_tag_initialize):
10386         * gst/gsttag.h:
10387           add GST_TAG_ENCODER
10388
10389 2004-01-30  David Schleef  <ds@schleef.org>
10390
10391         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10392           missing (#132991)
10393
10394 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10395
10396         reviewed by Benjamin Otte 
10397           parts of the patch submitted in bug #113913
10398
10399         * configure.ac:
10400           use AC_C_INLINE. Use = instead of == with test
10401         * examples/plugins/example.c:
10402         * gst/autoplug/gstspideridentity.c:
10403         * gst/elements/gstfdsrc.c:
10404         * gst/elements/gstfilesrc.c:
10405         * gst/elements/gstidentity.c:
10406         * gst/elements/gstmultidisksrc.c:
10407         * gst/elements/gststatistics.c:
10408         * gst/gstelement.c:
10409         * gst/gstobject.c:
10410         * gst/gstpad.c:
10411         * gst/gstpipeline.c:
10412         * gst/gstthread.c:
10413           don't end enums with a comma
10414         * gst/gstindex.c: (gst_index_compare_func):
10415           do explicit casting to gint
10416         * gst/gsttrace.c: (gst_trace_text_flush):
10417           #define strsize as a macro
10418
10419 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10420
10421         * docs/README:
10422         * docs/gst/gstreamer-docs.sgml:
10423         * docs/gst/gstreamer-sections.txt:
10424         * docs/gst/tmpl/gstelement.sgml:
10425         * docs/gst/tmpl/gsterror.sgml:
10426         * docs/gst/tmpl/gstinterface.sgml:
10427         * docs/gst/tmpl/gstreamer-unused.sgml:
10428         * docs/gst/tmpl/gststructure.sgml:
10429         * docs/gst/tmpl/gsttag.sgml:
10430         * docs/gst/tmpl/gsttaginterface.sgml:
10431         * docs/gst/tmpl/gstvalue.sgml:
10432         make sure all API ends up in the built docs
10433         * gst/gstinterface.c:
10434         * gst/gststructure.c: (gst_structure_id_set_value),
10435         (gst_structure_set_value), (gst_structure_id_get_value):
10436         * gst/gststructure.h:
10437         * gst/gstvalue.h:
10438         sync .h with .c declarations
10439
10440 2004-01-30  Julien Moutte  <julien@moutte.net>
10441
10442         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10443         Ronald will fix riffread.
10444
10445 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10446
10447         * docs/pwg/advanced-interfaces.xml:
10448           Added tuner interface docs.
10449
10450 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10451
10452         * docs/random/mimetypes:
10453           correct Theora information
10454         * gst/gstelement.h:
10455           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10456
10457 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10458
10459         * gst/gstelement.c: (gst_element_error_full):
10460         * gst/gstelement.h:
10461           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10462
10463 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10464
10465         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10466         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10467         again and even before DISCONT.
10468         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10469         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10470         bytestream so that it's not stopping to fill the bytestream if events
10471         different than EOS or DISCONT are received. Instead it process them so
10472         that they go downstream.
10473
10474 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10475
10476         * docs/gst/tmpl/gstelement.sgml:
10477         * docs/gst/tmpl/gstreamer-unused.sgml:
10478         * docs/gst/tmpl/gstxml.sgml:
10479         * gst/autoplug/gstspideridentity.c:
10480         (gst_spider_identity_sink_loop_type_finding):
10481         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10482         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10483         (gst_filesink_close_file), (gst_filesink_handle_event),
10484         (gst_filesink_chain):
10485         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10486         (gst_filesrc_get_read), (gst_filesrc_open_file):
10487         * gst/elements/gstidentity.c: (gst_identity_chain):
10488         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10489         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10490         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10491         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10492         * gst/gstelement.h:
10493         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10494         (gst_pad_recover_caps_error), (gst_pad_pull):
10495         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10496         * gst/schedulers/gstbasicscheduler.c:
10497         (gst_basic_scheduler_chainhandler_proxy),
10498         (gst_basic_scheduler_gethandler_proxy),
10499         (gst_basic_scheduler_cothreaded_chain):
10500           gst_element_error -> GST_ELEMENT_ERROR
10501
10502 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10503
10504         * docs/Makefile.am:
10505         * docs/gst/tmpl/gstelement.sgml:
10506         * docs/gst/tmpl/gstxml.sgml:
10507         * docs/manuals.mak:
10508         * docs/pwg/advanced-request.xml:
10509         * docs/pwg/advanced-scheduling.xml:
10510         * docs/pwg/advanced-tagging.xml:
10511           fix non-validating docbook using CDATA
10512           make sure make check-local gets run first to check if it validates
10513
10514 2004-01-29  Julien MOUTTE <julien@moutte.net>
10515
10516         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10517         handling (up and downstream).
10518         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10519         my_filter thing.
10520
10521 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10522
10523         * docs/pwg/advanced-tagging.xml:
10524           Add docs about tag writing.
10525
10526 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10527
10528         * docs/pwg/advanced-tagging.xml:
10529           Add a part about tag reading and application signalling... Tag
10530           writing still needs to be documented.
10531         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10532           We can set file locations in READY, too.
10533
10534 2004-01-29  Julien MOUTTE <julien@moutte.net>
10535
10536         * docs/random/ds/element-checklist: Adding some notes about src
10537         events.
10538
10539 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10540
10541         * docs/random/mimetypes:
10542           Update docs to point to correct elements for various mimetypes, and
10543           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10544           <stephane.loeuillet@tiscali.fr>.
10545
10546 2004-01-28  David Schleef  <ds@schleef.org>
10547
10548         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10549
10550 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10551
10552         * docs/random/mimetypes:
10553           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10554           undefined"
10555         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10556           make it only work in NULL.
10557         * gst/gstcaps.c:
10558           don't posion NULL caps
10559         * gst/gstelement.c: (gst_element_set_time):
10560           add debugging statement
10561         * gst/gstelement.c: (gst_element_emit_found_tag),
10562         (gst_element_found_tag_func), (gst_element_found_tags):
10563         * gst/gstelement.h:
10564           These functions take const taglists
10565         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10566           fix memleak
10567         * gst/gstpad.c: (gst_pad_event_default):
10568           make more effort on handling discont and clocks, g_warn if everything
10569           fails
10570         * gst/gststructure.c: (gst_structure_remove_fields),
10571         (gst_structure_remove_fields_valist):
10572         * gst/gststructure.h:
10573           add gst_structure_remove_fields(_valist)
10574         * gst/gsttag.c:
10575           fix doc glitch
10576
10577 2004-01-28  David Schleef  <ds@schleef.org>
10578
10579         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10580         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10581         Fix memory leakage of gst_caps_to_string().
10582
10583         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10584         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10585         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10586         (gst_spider_identity_sink_loop_type_finding):
10587         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10588         (find_suggest):
10589         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10590         (gst_pad_set_explicit_caps):
10591         * gst/parse/grammar.y:
10592
10593 2004-01-28  David Schleef  <ds@schleef.org>
10594
10595         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10596         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10597         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10598         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10599         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10600         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10601         (gst_debug_log_default), (_gst_info_printf_extension),
10602         (_gst_info_printf_extension_arginfo):  Add printf extension.
10603         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10604         * gst/gststructure.c: (gst_structure_to_string),
10605         (_gst_structure_parse_value): Use gst_value_deserialize() and
10606         remove old code.
10607         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10608         (gst_value_deserialize_boolean), (gst_strtoi),
10609         (gst_value_deserialize_int), (gst_value_deserialize_double),
10610         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10611         a bunch of deserialize functions and gst_value_deserialize.
10612         * gst/gstvalue.h: er, _de_serialize, not unserialize
10613         * testsuite/caps/string-conversions.c: (main): We don't currently
10614         handle (float) in caps, so convert these to (double).
10615         * testsuite/debug/Makefile.am: Add new test for the printf extension
10616         * testsuite/debug/printf_extension.c: (main): same
10617
10618 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10619
10620         * docs/random/company/time:
10621           Add some docs about clocking and time
10622
10623 2004-01-28  Julien MOUTTE <julien@moutte.net>
10624
10625         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10626
10627 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10628
10629         * docs/pwg/advanced-clock.xml:
10630         * docs/pwg/advanced-dparams.xml:
10631         * docs/pwg/advanced-events.xml:
10632         * docs/pwg/advanced-interfaces.xml:
10633         * docs/pwg/advanced-midi.xml:
10634         * docs/pwg/advanced-request.xml:
10635         * docs/pwg/advanced-scheduling.xml:
10636         * docs/pwg/advanced-tagging.xml:
10637         * docs/pwg/advanced-types.xml:
10638         * docs/pwg/appendix-checklist.xml:
10639         * docs/pwg/building-boiler.xml:
10640         * docs/pwg/building-chainfn.xml:
10641         * docs/pwg/building-filterfactory.xml:
10642         * docs/pwg/building-pads.xml:
10643         * docs/pwg/building-props.xml:
10644         * docs/pwg/building-signals.xml:
10645         * docs/pwg/building-state.xml:
10646         * docs/pwg/building-testapp.xml:
10647         * docs/pwg/intro-basics.xml:
10648         * docs/pwg/intro-preface.xml:
10649         * docs/pwg/other-autoplugger.xml:
10650         * docs/pwg/other-sink.xml:
10651         * docs/pwg/other-source.xml:
10652         * docs/pwg/titlepage.xml:
10653           fix up id's
10654
10655 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10656
10657         * docs/95NonPath:
10658         * docs/HACKING:
10659         * docs/README:
10660         * docs/building-the-docs-on-debian:
10661           collect relevant bits of doc info
10662
10663 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10664
10665         * docs/pwg/advanced_tagging.xml:
10666           Half-assed commit so Thomas can re-arrange document IDs here to be
10667           consistent, too.
10668
10669 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10670
10671         * docs/manual/autoplugging.xml:
10672         * docs/manual/bins-api.xml:
10673         * docs/manual/bins.xml:
10674         * docs/manual/buffers-api.xml:
10675         * docs/manual/buffers.xml:
10676         * docs/manual/clocks.xml:
10677         * docs/manual/components.xml:
10678         * docs/manual/cothreads.xml:
10679         * docs/manual/debugging.xml:
10680         * docs/manual/dparams-app.xml:
10681         * docs/manual/dynamic.xml:
10682         * docs/manual/elements-api.xml:
10683         * docs/manual/elements.xml:
10684         * docs/manual/factories.xml:
10685         * docs/manual/gnome.xml:
10686         * docs/manual/goals.xml:
10687         * docs/manual/helloworld.xml:
10688         * docs/manual/helloworld2.xml:
10689         * docs/manual/init-api.xml:
10690         * docs/manual/intro.xml:
10691         * docs/manual/links-api.xml:
10692         * docs/manual/links.xml:
10693         * docs/manual/manual.xml:
10694         * docs/manual/motivation.xml:
10695         * docs/manual/pads-api.xml:
10696         * docs/manual/pads.xml:
10697         * docs/manual/plugins-api.xml:
10698         * docs/manual/plugins.xml:
10699         * docs/manual/programs.xml:
10700         * docs/manual/queues.xml:
10701         * docs/manual/quotes.xml:
10702         * docs/manual/schedulers.xml:
10703         * docs/manual/states-api.xml:
10704         * docs/manual/states.xml:
10705         * docs/manual/threads.xml:
10706         * docs/manual/typedetection.xml:
10707         * docs/manual/xml.xml:
10708           use chapter, part, section or misc as id starts for all bits
10709
10710 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10711
10712         * docs/gst/gstreamer-sections.txt:
10713           Fix up TITLE of the sections
10714
10715 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10716
10717         * docs/pwg/advanced_interfaces.xml:
10718           Add documentation on propertyprobing.
10719         * docs/pwg/advanced_events.xml:
10720         * docs/pwg/advanced_tagging.xml:
10721         * docs/pwg/building_boiler.xml:
10722         * docs/pwg/building_filterfactory.xml:
10723         * docs/pwg/pwg.xml:
10724           Move filterfactory and tagging into their own chapter, add a chapter
10725           on events. all these are empty placeholders that will be filled in
10726           some day.
10727
10728 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10729
10730         * docs/pwg/advanced_interfaces.xml:
10731           Docs for mixer interface. Also a check for website uploading.
10732
10733 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10734
10735         * docs/HACKING:
10736         * docs/Makefile.am:
10737         * docs/faq/Makefile.am:
10738         * docs/gst/Makefile.am:
10739         * docs/gst/tmpl/gstelement.sgml:
10740         * docs/gst/tmpl/gstplugin.sgml:
10741         * docs/gst/tmpl/gstreamer-unused.sgml:
10742         * docs/libs/Makefile.am:
10743         * docs/manual/Makefile.am:
10744         * docs/manuals.mak:
10745         * docs/pwg/Makefile.am:
10746         * docs/upload.mak:
10747           Separate out upload target and make it similar for
10748           both docbook and gtk-doc docs
10749
10750 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10751
10752         * docs/manuals.mak:
10753           Fix upload target to work with freedesktop
10754
10755 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10756
10757         * docs/pwg/advanced_types.xml:
10758           Add notes on creating your own types.
10759         * docs/pwg/building_boiler.xml:
10760         * docs/pwg/building_pads.xml:
10761         * docs/pwg/building_state.xml:
10762           Add some stuff about how to retrieve values from structures, how
10763           that relates to types and change layout slightly again to be almost
10764           perfect.
10765
10766 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10767
10768         * docs/pwg/advanced_dparams.xml:
10769         * docs/pwg/advanced_scheduling.xml:
10770           Change index layout slightly.
10771
10772 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10773
10774         * docs/pwg/advanced_clock.xml:
10775         * docs/pwg/advanced_interfaces.xml:
10776         * docs/pwg/advanced_midi.xml:
10777           General placeholders for now.
10778         * docs/pwg/advanced_request.xml:
10779           Explanation about sometimes and request pads.
10780         * docs/pwg/advanced_scheduling.xml:
10781           Concept of bytestream, loopfunctions and schedulers.
10782         * docs/pwg/building_boiler.xml:
10783           Add something about plugin-init.
10784
10785 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10786
10787         * docs/pwg/building_pads.xml:
10788           Fix broken docbook
10789
10790 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10791
10792         * docs/pwg/advanced_interfaces.xml:
10793         * docs/pwg/pwg.xml:
10794           Add as a placeholder for future filling-in.
10795         * docs/pwg/basics_autoplugging.xml:
10796         * docs/pwg/basics_buffers.xml:
10797         * docs/pwg/basics_elements.xml:
10798         * docs/pwg/basics_events.xml:
10799         * docs/pwg/basics_plugins.xml:
10800         * docs/pwg/basics_types.xml:
10801           Remove, because unused (this is all in intro_basics.xml).
10802         * docs/pwg/building_signals.xml:
10803           Short intro to signals + reference to GObject docs - we really
10804           shouldn't go into these sort of things to deply because we don't
10805           use them that extensively anyway.
10806         * docs/pwg/building_state.xml:
10807           Explanation of states. Benjamin, please check.
10808         * docs/pwg/building_testapp.xml:
10809           Put everything in one page - putting only a few lines of content
10810           per page doesn't really make sense.
10811
10812           Time to get into the advanced topics. ;).
10813
10814 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10815
10816         * docs/pwg/advanced_types.xml:
10817           Finish documenting the current state of mimetypes.
10818         * docs/pwg/building_boiler.xml:
10819         * docs/pwg/building_chainfn.xml:
10820         * docs/pwg/building_pads.xml:
10821         * docs/pwg/building_props.xml:
10822         * docs/pwg/building_testapp.xml:
10823           Start documenting the "how to build a simple audio filter" part
10824           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10825           states and (maybe?) a short introduction to capsnego in the chapter
10826           on pads (building_pads.xml). Capsnego should probably be explained
10827           fully in advanced_capsnego.xml or so.
10828
10829 2004-01-26  David Schleef  <ds@schleef.org>
10830
10831         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10832         * gst/gstpad.h: Add new function to allow element to (somewhat)
10833         specify non-fixed caps on a pad.
10834         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10835         that I added a few weeks ago.
10836
10837 2004-01-26  David Schleef  <ds@schleef.org>
10838
10839         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10840           making try_set_caps() work with non-fixed caps.
10841
10842 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10843
10844         * docs/pwg/advanced_types.xml:
10845         * docs/pwg/intro_basics.xml:
10846         * docs/pwg/intro_preface.xml:
10847         * docs/pwg/pwg.xml:
10848         * docs/pwg/titlepage.xml:
10849           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10850           in here (docs/random/mimetypes), and will from there on work on both
10851           updating outdated parts and adding missing parts.
10852           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10853
10854 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10855
10856         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10857           policy is set
10858
10859 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10860
10861         * gst/gstelement.h:
10862           remove gst_element_factory_get_version. It doesn't exist anymore.
10863         * gst/gstplugin.c:
10864         * gst/gstplugin.h:
10865           remove gst_plugin_set_name and change gst_plugin_get_longname to
10866           gst_plugin_get_description to match code.
10867         * gst/gsterror.h:
10868           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10869         * gst/gstpad.c: (gst_pad_try_set_caps):
10870           make it work with nonfixed caps.
10871           Note that even in the nonfixed case the link function of the pad
10872           that tries to set caps isn't called.
10873
10874 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10875
10876         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10877           fix bug where buffer was not assembled correctly
10878         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10879           silence by default
10880         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10881           only seek if there's no more buffers that could work without seeking
10882
10883 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10884
10885         * gst/gsttag.c: (_gst_tag_initialize):
10886         * gst/gsttag.h:
10887           Add application tag (for encoding/muxing app).
10888
10889 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10890
10891         * autogen.sh:
10892           make autopoint force, and libtoolize not copy
10893         * common/m4/as-docbook.m4:
10894           added docbook xml catalog setup check
10895         * common/m4/gst-doc.m4:
10896           use docbook check
10897
10898 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10899
10900         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10901         * gst/gsttag.h:
10902           add GstTagFlag
10903
10904 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10905
10906         * docs/gst/gstreamer-sections.txt:
10907         * docs/gst/tmpl/gst.sgml:
10908         * docs/gst/tmpl/gstbuffer.sgml:
10909         * docs/gst/tmpl/gstclock.sgml:
10910         * docs/gst/tmpl/gstelement.sgml:
10911         * docs/gst/tmpl/gstreamer-unused.sgml:
10912         * docs/gst/tmpl/gstxml.sgml:
10913           sync latest API changes to docs
10914
10915 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10916
10917         * gst/gstpluginfeature.c:
10918           fix doc snippet
10919         * tools/gst-inspect.c: (print_element_list):
10920           fix output of typefind
10921           add GPL header
10922         * tools/gst-launch.c:
10923           add GPL header
10924
10925 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10926
10927         * gst/elements/Makefile.am:
10928         * gst/elements/gstelements.c:
10929         * gst/elements/gsttypefindelement.c:
10930         * gst/elements/gsttypefindelement.h:
10931         * po/POTFILES.in:
10932         * po/fr.po:
10933         * po/nl.po:
10934           renamed gsttypefindelement to gsttypefind, conserving CVS history
10935
10936 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10937
10938         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10939         * gst/gsttag.h:
10940           add some tags used in ogg as well
10941           fix _ in replaygain tags
10942
10943 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10944
10945         * gst/gsterror.h:
10946           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10947
10948 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10949
10950         * gst/gstelement.c: (gst_element_error_full):
10951         * gst/gstelement.h:
10952           change _extended to _full
10953
10954 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10955
10956         reviewed by: <delete if not using a buddy>
10957
10958         * docs/gst/tmpl/gst.sgml:
10959         * docs/gst/tmpl/gstbuffer.sgml:
10960         * docs/gst/tmpl/gstclock.sgml:
10961         * docs/gst/tmpl/gstelement.sgml:
10962         * docs/gst/tmpl/gstreamer-unused.sgml:
10963         * docs/gst/tmpl/gstxml.sgml:
10964         * gst/gstelement.c: (gst_element_error_full):
10965         * gst/gstelement.h:
10966
10967 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10968
10969         * gst/gstelement.h: fix _gst_element_error_printf prototype
10970
10971 2004-01-20  David Schleef  <ds@schleef.org>
10972
10973         * gst/gststructure.c: (gst_structure_to_string):
10974         Convert function to use gst_value_serialize().
10975         * gst/gstvalue.c: (gst_value_serialize_list),
10976         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10977         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10978         (gst_value_serialize_int), (gst_value_serialize_double),
10979         (gst_string_wrap), (gst_value_serialize_string),
10980         (gst_value_serialize), (gst_value_deserialize):
10981         * gst/gstvalue.h:
10982         Add implementations for serialize.
10983
10984 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10985
10986         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10987         we want to keep that one in the future or change xvidenc.c to use 
10988         another error.
10989
10990 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10991
10992         * gst/gstelement.c: (_gst_element_error_printf):
10993         * gst/gstelement.h:
10994           privatise function
10995
10996 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10997
10998         * docs/random/error:
10999           doc explaining error system
11000         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11001           cleanup
11002
11003 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11004
11005         * gst/gst-i18n-app.h:
11006         * gst/gst-i18n-lib.h:
11007           remove inclusion of config.h
11008         * po/POTFILES.in:
11009         * po/nl.po:
11010           add gst/gstelement.c
11011
11012 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11013
11014         * po/nl.po: updated Dutch translation
11015
11016 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11017
11018         * gst/gsterror.c: (_gst_core_errors_init),
11019         (_gst_library_errors_init), (_gst_resource_errors_init),
11020         (_gst_stream_errors_init):
11021         remove ending punctuation dots
11022
11023 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11024
11025         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11026         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
11027         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11028         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11029         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11030         use GST_ERROR_SYSTEM
11031
11032 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11033
11034         * gst/gstelement.c: (gst_element_error_printf),
11035         (gst_element_error_extended):
11036         * gst/gstelement.h:
11037           add a helper printf function so we can have NULL values passed.
11038
11039 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11040
11041         * gst/gstelement.h:
11042           add G_STMT macros to gst_element_error, which isn't strictly
11043           necessary but people tell me to anyway.
11044
11045 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11046
11047         * gst/Makefile.am:
11048         * gst/autoplug/gstspideridentity.c:
11049         (gst_spider_identity_sink_loop_type_finding):
11050         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11051         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11052         (gst_filesink_close_file), (gst_filesink_handle_event),
11053         (gst_filesink_chain):
11054         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11055         (gst_filesrc_map_region), (gst_filesrc_get_read),
11056         (gst_filesrc_open_file):
11057         * gst/elements/gstidentity.c: (gst_identity_chain):
11058         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11059         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11060         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11061         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11062         * gst/gst.h:
11063         * gst/gst_private.h:
11064         * gst/gstelement.c: (gst_element_class_init),
11065         (gst_element_default_error), (gst_element_error_func),
11066         (gst_element_error_extended):
11067         * gst/gstelement.h:
11068         * gst/gsterror.c: (_gst_core_errors_init),
11069         (_gst_library_errors_init), (_gst_resource_errors_init),
11070         (_gst_stream_errors_init), (gst_error_get_message):
11071         * gst/gsterror.h:
11072         * gst/gstinfo.c: (_gst_debug_init):
11073         * gst/gstmarshal.list:
11074         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11075         (gst_pad_recover_caps_error), (gst_pad_pull):
11076         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11077         * gst/schedulers/gstbasicscheduler.c:
11078         (gst_basic_scheduler_chainhandler_proxy),
11079         (gst_basic_scheduler_gethandler_proxy),
11080         (gst_basic_scheduler_cothreaded_chain):
11081         * po/POTFILES.in:
11082         * po/fr.po:
11083         * po/nl.po:
11084           change error signal
11085           add error categories
11086
11087 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11088
11089         * gst/gsttag.c: (_gst_tag_initialize):
11090         * gst/gsttag.h:
11091         Add replaygain tag
11092
11093 2004-01-18  Colin Walters  <walters@verbum.org>
11094
11095         * examples/retag/retag.c: Call gst_init before processing
11096         program args.  Add g_assert to _link_many call.
11097
11098 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11099
11100         * gst/gstpad.c: (gst_pad_alloc_buffer):
11101           Return a newly allocated buffer when the pad has no peer.
11102
11103 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11104
11105         * gst/gstclock.c: (gst_clock_get_time):
11106           make it compile with gcc 2.95 again.
11107           Patch by Scott Wheeler
11108
11109 2004-01-15  David Schleef  <ds@schleef.org>
11110
11111         * gst/gstcaps.h:
11112         Added gst_caps_is_simple() macro.
11113         * testsuite/caps/caps.c: (test1):
11114         * testsuite/caps/intersect2.c: (main):
11115         * testsuite/caps/intersection.c: (main):
11116         Fixes to make 'make check' work again after removing
11117         gst_caps_is_chained().
11118
11119 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11120
11121         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11122         and additions to the MIDI document.
11123
11124 2004-01-15  David Schleef  <ds@schleef.org>
11125
11126         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11127         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11128         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11129
11130 2004-01-15  David Schleef  <ds@schleef.org>
11131
11132         * gst/gstqueue.c:
11133         * gst/gstqueue.h:
11134         Fix the spelling of "treshold" and make min_threshold actually
11135         affect the queue.
11136
11137 2004-01-15  David Schleef  <ds@schleef.org>
11138
11139         * gst/gstcaps.c:
11140         Add lots of documentation.
11141         * gst/gstcaps.h:
11142         Deprecate a few functions.
11143         * gst/gstpad.c:
11144         Removed use of deprecated functions.
11145
11146 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11147
11148         * gst/gstpad.c: (gst_pad_is_linked):
11149         * gst/gstpad.h:
11150           implement gst_pad_is_linked
11151         * gst/gstelement.h:
11152           reserve space for initiate_state_change
11153
11154 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11155
11156         * gst/autoplug/gstspideridentity.c:
11157         (gst_spider_identity_sink_loop_type_finding):
11158           break infinite loop by just returning instead of looping
11159         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11160           set event time difference correctly. Set it to 1 second instead
11161           of 100ms to be more tolerant
11162         * gst/gstelement.c: (gst_element_set_time):
11163           add debugging output
11164
11165 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11166
11167         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11168           query if buffers are inside the pool, ignore events
11169
11170 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11171
11172         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11173         (gst_clock_set_speed), (gst_clock_set_active),
11174         (gst_clock_is_active), (gst_clock_reset),
11175         (gst_clock_handle_discont):
11176         * gst/gstclock.h:
11177           deprecate old interface and disable functions that aren't in use
11178           anymore.
11179         * gst/gstelement.h:
11180         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11181         (gst_element_set_time), (gst_element_adjust_time):
11182           add concept of "element time" and functions to get/set this time.
11183         * gst/gstelement.c: (gst_element_change_state):
11184           update element time correctly.
11185         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11186           This is a debug message, not a g_critical.
11187         * gst/gstpad.c: (gst_pad_event_default):
11188           handle discontinuous events right with element time.
11189         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11190           update to clocking fixes.
11191           set clocks on elements in READY=>PAUSED. The old behaviour caused
11192           a wrong element time on the first element that started playing.
11193         * gst/schedulers/gstbasicscheduler.c:
11194         (gst_basic_scheduler_class_init):
11195         * gst/schedulers/gstoptimalscheduler.c:
11196         (gst_opt_scheduler_class_init):
11197           remove code that just implements the default behaviour.
11198         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11199           update to use new clocking functions
11200         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11201         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11202           update to test new element time.
11203         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11204           use _get_allowed_caps instead of _get_caps. This catches filtered
11205           caps correctly.
11206         * testsuite/debug/commandline.c:
11207           update for new GST_DEBUG syntax.
11208         * testsuite/threads/Makefile.am:
11209           disable a test that only works sometimes.
11210
11211 2004-01-13  Julien MOUTTE <julien@moutte.net>
11212
11213         * po/LINGUAS: Adding fr.
11214         * po/fr.po: Adding french translation.
11215
11216 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11217
11218         * gst/parse/grammar.y:
11219         * po/POTFILES.in:
11220         * po/nl.po:
11221         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11222           translate parsing error messages
11223
11224 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11225
11226         * po/POTFILES.in: adding gst-launch
11227         * po/nl.po: updated translation, all 99 strings translated
11228         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11229         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11230           fix strings for translation
11231
11232 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11233
11234         * gst/gst.c:
11235           - capitalize beginnings of popt options
11236           - fix strings for translation
11237           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11238
11239 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11240
11241         * po/README: add some notes on how to update translations
11242
11243 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11244
11245         * ABOUT-NLS: removed, is autogenerated from autopoint
11246         * autogen.sh: add autopoint stuff
11247         * configure.ac: fix up gettext stuff
11248         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11249         * gst/elements/gsttypefindelement.c: add header include
11250         * gst/gettext.h: add header, copy from system-installed header
11251         * gst/gst-i18n-app.h: to be included by each app having translations
11252         * gst/gst-i18n-lib.h: to be included by each lib having translations
11253         * gst/gst.c: (init_pre): fix up gettext calls
11254         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11255         * po/LINGUAS: the new way to specify translations present
11256         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11257         * po/Makevars: the variables filled in for GStreamer
11258         * po/POTFILES.in: added new files with translations
11259         * po/de.po: has new strings
11260         * po/nl.po: readded, has new strings
11261
11262 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11263
11264         * gst/gsttag.c: fix some strings marked for translation
11265
11266 2004-01-13  Iain <iain@prettypeople.org>
11267
11268         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11269         group when we add an element to it, cos we unref it when we remove one
11270
11271 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11272
11273         * testsuite/debug/commandline.c: (debug_not_reached):
11274         * testsuite/debug/output.c: (check_message):
11275           fix testsuite
11276
11277 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11278
11279         * examples/cutter/.cvsignore:
11280         * examples/helloworld/.cvsignore:
11281         * examples/launch/.cvsignore:
11282         * examples/manual/.cvsignore:
11283         * examples/mixer/.cvsignore:
11284         * examples/pingpong/.cvsignore:
11285         * examples/plugins/.cvsignore:
11286         * examples/queue/.cvsignore:
11287         * examples/queue2/.cvsignore:
11288         * examples/queue3/.cvsignore:
11289         * examples/queue4/.cvsignore:
11290         * examples/retag/.cvsignore:
11291         * examples/thread/.cvsignore:
11292         * examples/typefind/.cvsignore:
11293         * examples/xml/.cvsignore:
11294         * gst/.cvsignore:
11295         * gst/autoplug/.cvsignore:
11296         * gst/elements/.cvsignore:
11297         * gst/indexers/.cvsignore:
11298         * gst/parse/.cvsignore:
11299         * gst/registries/.cvsignore:
11300         * gst/schedulers/.cvsignore:
11301         * libs/gst/bytestream/.cvsignore:
11302         * libs/gst/control/.cvsignore:
11303         * libs/gst/getbits/.cvsignore:
11304         * tests/.cvsignore:
11305         * tests/bufspeed/.cvsignore:
11306         * tests/instantiate/.cvsignore:
11307         * tests/memchunk/.cvsignore:
11308         * tests/muxing/.cvsignore:
11309         * tests/sched/.cvsignore:
11310         * tests/seeking/.cvsignore:
11311         * tests/threadstate/.cvsignore:
11312         * testsuite/.cvsignore:
11313         * testsuite/caps/.cvsignore:
11314         * testsuite/cleanup/.cvsignore:
11315         * testsuite/dynparams/.cvsignore:
11316         * testsuite/plugin/.cvsignore:
11317         * tools/.cvsignore:
11318           update - this is huge, because it includes *.bb, *.bbg and *.da files
11319           which are generated for gcov.
11320
11321 2004-01-11  David Schleef  <ds@schleef.org>
11322
11323         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11324         a function to parse integers in ways that strto[u]l() does not.
11325
11326 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11327
11328         * tools/gst-inspect.c: (print_caps):
11329           improve output of caps a bit
11330
11331 2004-01-11  David Schleef  <ds@schleef.org>
11332
11333         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11334         inherit correct flags (READONLY and DONTKEEP).
11335
11336 2004-01-11  David Schleef  <ds@schleef.org>
11337
11338         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11339         (gst_filesrc_map_region):
11340         * gst/gstbuffer.c: (_gst_buffer_initialize),
11341         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11342         (gst_buffer_new), (gst_buffer_create_sub),
11343         (gst_buffer_is_span_fast), (gst_buffer_span):
11344         * gst/gstbuffer.h:
11345         Change GstBuffer private structure element names. (all files)
11346         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11347         (gst_queue_link):
11348         * gst/gstqueue.h:
11349         Implement getcaps/pad_link functions that handle the case where
11350         there are data in the queue.
11351
11352 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11353
11354         * gst/elements/gstbufferstore.c:
11355           initialize debugging structure correctly
11356         * gst/elements/gsttee.c: (gst_tee_set_property):
11357           g_object_notify when property was changed
11358         * gst/elements/gsttypefindelement.c:
11359         (gst_type_find_element_change_state):
11360           clear caps correctly
11361
11362 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11363
11364         * gst/gstqueue.c: (gst_queue_init):
11365           Use better defaults for when a queue should block. This
11366           gets rid of jerky playback for quite a few files.
11367           It takes more memory.
11368
11369 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11370
11371         (gst_xml_registry_parse_padtemplate):
11372           make critical message slightly more useful
11373
11374 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11375
11376         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11377         (gst_debug_message_get), (gst_debug_log_default):
11378         * gst/gstinfo.h:
11379           Change gst_debug_log(_valist) to take a const format string.
11380           Change prototype of log function and functions using those to 
11381           take a GstDebugMessage instead of a string that requires using
11382           gst_debug_message_get.
11383
11384 2004-01-08  David Schleef  <ds@schleef.org>
11385
11386         * Makefile.am:
11387         * configure.ac:
11388         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11389         and -ftest-coverage, which allows gcov to show information about
11390         testsuite coverage.
11391
11392 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11393
11394         * gst/gstutils.h:
11395           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11396           GST_PARENT_CALL_WITH_DEFAULT
11397         * gst/elements/gstaggregator.c: 
11398         * gst/elements/gstbufferstore.c: 
11399         * gst/elements/gstfakesink.c: 
11400         * gst/elements/gstfakesrc.c: 
11401         * gst/elements/gstfdsink.c: 
11402         * gst/elements/gstfdsrc.c: 
11403         * gst/elements/gstfilesink.c: 
11404         * gst/elements/gstfilesrc.c: 
11405         * gst/elements/gstidentity.c: 
11406         * gst/elements/gstmd5sink.c: 
11407         * gst/elements/gstmultidisksrc.c:
11408         * gst/elements/gstpipefilter.c: 
11409         * gst/elements/gstshaper.c:
11410         * gst/elements/gststatistics.c:
11411         * gst/elements/gsttee.c:
11412         * gst/elements/gsttypefindelement.c:
11413           use them.
11414
11415 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11416
11417         * docs/gst/gstreamer-docs.sgml: remove props
11418         * docs/gst/gstreamer-sections.txt: remove props
11419         * docs/gst/tmpl/gst.sgml:
11420         * docs/gst/tmpl/gstbin.sgml:
11421         * docs/gst/tmpl/gstbuffer.sgml:
11422         * docs/gst/tmpl/gstcaps.sgml:
11423         * docs/gst/tmpl/gstclock.sgml:
11424         * docs/gst/tmpl/gstelement.sgml:
11425         * docs/gst/tmpl/gstindex.sgml:
11426         * docs/gst/tmpl/gstobject.sgml:
11427         * docs/gst/tmpl/gstpad.sgml:
11428         * docs/gst/tmpl/gstpadtemplate.sgml:
11429         * docs/gst/tmpl/gstreamer-unused.sgml:
11430         * docs/gst/tmpl/gstthread.sgml:
11431         * docs/gst/tmpl/gstxml.sgml:
11432           sync with code reorganization
11433
11434 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11435
11436         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11437         Make the 'Could not find compatible pad' message more informative.
11438
11439 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11440                                                                                 
11441         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11442           Fix for if we pass NULL as property to location.
11443         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11444         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11445           Fix for instantiate-test (see below).
11446         * gst/gststructure.c: (_gst_structure_parse_value):
11447           Fix compile error on gcc-2.96.
11448         * configure.ac:
11449         * tests/Makefile.am:
11450         * tests/instantiate/Makefile.am:
11451         * tests/instantiate/create.c: (create_all_elements), (main):
11452           Add a test that instantiates all elements. This makes it easy to
11453           track dead code for old API/design (like setting event functions
11454           on sink pads and so on).
11455
11456 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11457
11458         * gst/gstcaps.c: (gst_caps_append_structure):
11459           Move the poisoning to allow a NULL structure
11460         * gst/gstevent.c: (_gst_event_free):
11461           When freeing a navigation event, free the structure
11462           also
11463
11464 2004-01-04  David Schleef  <ds@schleef.org>
11465
11466         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11467         Remove usage of gst_pad_proxy_fixate.
11468         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11469         (gst_caps_split_one), (gst_caps_replace):
11470         Add poisoning code.
11471         * gst/gstmarshal.list:
11472         Add pointer__pointer for fixate signal
11473         * gst/gstpad.c: (gst_real_pad_class_init),
11474         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11475         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11476         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11477         Add poisoning code. Add fixate signal on RealPad. Change
11478         set_explicit_caps() to take const GstCaps, like try_set_caps().
11479         * gst/gstpad.h:
11480         * testsuite/caps/Makefile.am:
11481         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11482
11483 2004-01-03  David Schleef  <ds@schleef.org>
11484
11485         * gst/elements/gsttypefindelement.c:
11486         (gst_type_find_element_have_type), (gst_type_find_element_init):
11487         Use gst_pad_use_explicit_caps for src pad.
11488         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11489         before using it.
11490
11491 2004-01-03  David Schleef  <ds@schleef.org>
11492
11493         * gst/gstelement.c: (gst_element_link_pads_filtered),
11494         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11495         that linking was successful.
11496         * gst/gstpad.c: (gst_pad_link_free),
11497         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11498         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11499         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11500         GstPadLinkReturn correctly between functions, and don't fail
11501         when DELAYED is used (DELAYED is very important).  Better
11502         cleanup on unlinking and unnegotiation.  Should fix some spider
11503         bugs.
11504
11505 2004-01-02  David Schleef  <ds@schleef.org>
11506
11507         * gst/gstelement.c: (gst_element_class_init),
11508         (gst_element_base_class_init): ->padtemplates should be cleared
11509         in base_init, since we need to have a fresh list for every
11510         class.  (Alternately, we chould copy the list and share the
11511         actual pad templates (not the list), but that would require
11512         changing every plugin to move pad template registration from
11513         base_init to class_init.)
11514
11515 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11516
11517         * gst/gstelement.c: (gst_element_class_add_pad_template):
11518           Refuse registering a pad template if another pad template
11519           with the same name already exists (#114715).
11520
11521 2004-01-02  David Schleef  <ds@schleef.org>
11522
11523         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11524         (gst_caps_is_equal_fixed): Add new function.
11525         * gst/gstcaps.h: ditto.
11526         * gst/gstpad.c: (gst_real_pad_class_init),
11527         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11528         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11529         check new caps against existing caps -- if they're the same, return
11530         OK without renegotiating.  caps-nego-failed signal fixed so that
11531         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11532         to save an extra caps copy.  Don't complete negotiation if a pad
11533         link function returns DELAYED.
11534
11535 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11536
11537         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11538           Fix wrong g_return_if_fail
11539
11540 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11541
11542         * gst/gstbin.c: (gst_bin_class_init):
11543         Change the marshalling of element_added/element_removed
11544         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11545         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11546
11547 2004-01-01  David Schleef  <ds@schleef.org>
11548
11549         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11550         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11551         (gst_pad_use_explicit_caps):
11552         * gst/gstpad.h:
11553         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11554         to use an internal getcaps and link fuction so that negotiation
11555         always results in the explicitly set caps.
11556         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11557         are particularly useful for decoders.
11558
11559 2003-12-31  David Schleef  <ds@schleef.org>
11560
11561         * gst/elements/gstidentity.c: (gst_identity_class_init),
11562         (gst_identity_init), (gst_identity_chain),
11563         (gst_identity_set_property), (gst_identity_get_property):
11564         * gst/elements/gstidentity.h:
11565         * gst/gstqueue.c: (gst_queue_init):
11566           Negotiation fixes.
11567
11568 2003-12-31  David Schleef  <ds@schleef.org>
11569
11570         * gst/gstcaps.c: (gst_caps_intersect),
11571         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11572           Implement gst_caps_normalize().
11573         * testsuite/caps/normalisation.c: (main):
11574           Add an additional test
11575
11576 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11577
11578         * gst/gstqueue.c: (gst_queue_init):
11579           use gst_pad_proxy_getcaps()
11580
11581 2003-12-31  David Schleef  <ds@schleef.org>
11582
11583         * gst/elements/gstshaper.c: (gst_shaper_link):
11584         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11585         * gst/gstqueue.c: (gst_queue_link):
11586           Negotiation fixes.
11587
11588 2003-12-31  David Schleef  <ds@schleef.org>
11589
11590         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11591         * gst/gstpad.h: Add functions that are useful as default pad
11592         link and fixate functions for elements.
11593
11594 2003-12-30  David Schleef  <ds@schleef.org>
11595
11596         * gst/gstpad.c: (gst_pad_link_try):
11597           Fix segfault when attempting to return to old caps
11598
11599 2003-12-29  David Schleef  <ds@schleef.org>
11600
11601         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11602         (gst_caps_structure_simplify), (gst_caps_simplify):
11603         * gst/gstcaps.h:
11604           Add simplify function
11605         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11606         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11607         * gst/gstpad.h:
11608           Copy over srcnotify, sinknotify when calling old pad_link
11609           functions.  Add new is_negotiated() function.
11610         * gst/gststructure.c: (gst_structure_copy):
11611           Fix an incredibly stupid bug that should have been noticed
11612           weeks ago.  _copy() returned the argument, not the new copy.
11613
11614 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11615
11616         * gst/gstcaps.c: (gst_caps_append):
11617           add sanity checks
11618         * gst/gstcaps.h: (gst_caps_debug):
11619           remove, it doesn't exist anymore.
11620         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11621         (gst_element_threadsafe_properties_post_run):
11622           make debugging messages not clutter up THREAD debug category
11623         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11624         (gst_element_change_state):
11625           update to new caps API
11626         * gst/gstinterface.c: (gst_implements_interface_cast):
11627           don't put vital code in g_return_if_fail
11628         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11629         (gst_pad_link_filtered):
11630           add pst_pad_try_link and use it.
11631         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11632           implement correctly, deprecate first one.
11633         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11634           add and implement.
11635         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11636           implement.
11637         (gst_pad_get_negotiated_caps):
11638           add and implement. Make GST_PAD_CAPS call this function.
11639         (gst_pad_get_caps):
11640           remove unneeded check..
11641         (gst_pad_recover_caps_error):
11642           disable, always return FALSE.
11643         (gst_real_pad_dispose):
11644           don't free caps and appfilter anymore, they're unused.
11645         * gst/gstpad.h:
11646           Reflect changes mentioned above.
11647         * gst/gstsystemclock.c: (gst_system_clock_wait):
11648           Make 'clock is way behind' a debugging message.
11649         * gst/gstthread.c: (gst_thread_change_state):
11650           Fix debugging message
11651
11652 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11653
11654         * gst/gstinfo.h:
11655           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11656         * docs/gst/tmpl/gstreamer-unused.sgml:
11657           removed all traces of cvs conflicts
11658
11659 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11660
11661         * configure.ac:
11662         * gst/schedulers/cothreads_compat.h:
11663         * libs/Makefile.am:
11664           remove last instances of wingo cothread usage
11665
11666 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11667
11668         * gst/gstplugin.c:
11669         * gst/gstversion.h.in:
11670         * gst/parse/grammar.y:
11671           change comment block from /** to /* when not gtk-doc comments
11672
11673 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11674
11675         * gst/gst.c: whitespace and doc style fixes
11676
11677 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11678
11679         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11680
11681 2003-12-24  Colin Walters  <walters@verbum.org>
11682
11683         * gst/elements/gsttypefindelement.c:
11684           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11685           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11686           Don't double-free caps.
11687
11688 2003-12-23  David Schleef  <ds@schleef.org>
11689
11690         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11691           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11692           Many little fixes and additions of debug statements to
11693           get rhythmbox working.
11694
11695 2003-12-23  Colin Walters  <walters@verbum.org>
11696
11697         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11698         Use GST_PAD_LINK_SUCCESSFUL.
11699
11700 2003-12-23  David Schleef  <ds@schleef.org>
11701
11702         * gst/elements/gstaggregator.c:
11703         * gst/elements/gsttee.c:
11704           Use gst_pad_proxy_getcaps().
11705         * gst/gstpad.c:
11706         * gst/gstpad.h:
11707           Add gst_pad_proxy_getcaps(), which filter elements can use
11708           as a generic getcaps implementation.
11709           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11710           was advertised.
11711
11712 2003-12-23  David Schleef  <ds@schleef.org>
11713
11714         * gst/gstpad.c:
11715           Rearrange/rewrite much of the pad negotiation code, since it
11716           resembled pasta.  This actually changes the way some
11717           negotiation works, since the previous code was inconsistent
11718           depending on how it was invoked.  Add (internal) structure
11719           GstPadLink, which is used to hold some information (more in
11720           the future) about the link between two pads.  Fixes a number
11721           of bugs, including random lossage of filter caps when the
11722           initial negotiation is delayed.  A few functions are still
11723           unimplemented.
11724         * gst/gstpad.h:
11725           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11726           these when testing GstPadLinkReturn values instead of comparing
11727           directly.
11728
11729 2003-12-23  David Schleef  <ds@schleef.org>
11730
11731         * gst/gstvalue.c: 
11732         * gst/gstvalue.h:
11733           Rearrange lots of code.  Change registration of compare function
11734           into registration of compare/serialize/deserialize functions.
11735           Doesn't include implementation of gst_value_[de]serialize(),
11736           but that should be easy.
11737
11738 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11739
11740         * docs/gst/gstreamer-sections.txt:
11741         * docs/gst/tmpl/gstprops.sgml: removed
11742         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11743           David removed props and caps code, so let's remove their docs as well.
11744           Removed all no longer existing symbols from gstreamer-sections.txt
11745           
11746 2003-12-22  Colin Walters  <walters@verbum.org>
11747
11748         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11749           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11750           of tags directly.
11751
11752 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11753
11754         * gst/elements/gstelements.c:
11755           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11756         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11757           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11758           gst_caps (peer).
11759
11760 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11761
11762         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11763         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11764         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11765         (gst_spider_identity_sink_loop_type_finding):
11766         * gst/autoplug/gstspideridentity.h:
11767           Fix autoplugging in spider element, so it works with new caps.
11768           This was mainly caused by identifying empty caps incorrectly.
11769
11770 2003-12-22  David Schleef  <ds@schleef.org>
11771
11772         * gststructure.c, gstvalue.c, gstvalue.h: Add
11773           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11774           using g_value_copy()
11775
11776 2003-12-21  David Schleef  <ds@schleef.org>
11777
11778         * many, many files: Merge CAPS branch.  This includes:
11779           - implemention of GstValue and several GstValue types
11780           - implemention of GstStructure
11781           - entire rewrite of GstCaps
11782           - removal of GstProps
11783           - many changes to GstPad to compensate for new caps paradigm
11784           - removal of GstBufferpool
11785         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11786         gstvalue.h, gst/gstcaps[2]*.[ch]:
11787           - rename gstcaps2.[ch] to gstcaps.[ch]
11788
11789 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11790
11791         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11792         (gst_queue_chain), (gst_queue_handle_src_event):
11793           implement timeout for sending events. Workaround for if the
11794           pipeline on this queue is not passing any data.
11795
11796 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11797                                                                                 
11798         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11799         * moved CVS to freedesktop.org
11800