gst/gstpipeline.c: Wheen a seek was successful on a pipeline, set the stream_time...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-28  Edward Hervey  <edward@fluendo.com>
2
3         * gst/gstpipeline.c: (gst_pipeline_send_event): 
4         Wheen a seek was successful on a pipeline, set the stream_time to the
5         seek offset in order to have a synchronized stream_time.
6
7 2005-06-28  Wim Taymans  <wim@fluendo.com>
8
9         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
10         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
11         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
12         (gst_proxy_pad_do_fixatecaps):
13         Call wrapper function instead of just calling the function
14         pointers. This takes care of any locking and whatmore.
15
16 2005-06-28  Wim Taymans  <wim@fluendo.com>
17
18         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
19         (gst_pad_pull_range):
20         * gst/gstpad.h:
21         CONNECTED -> LINKED.
22
23 2005-06-28  Andy Wingo  <wingo@pobox.com>
24
25         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
26         source-munging commit!!!
27
28         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
29         (gst_object_sink): Take gpointer arguments, not GstObject --
30         avoids casts. Like GLib.
31
32         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
33         activate.
34
35 2005-06-27  Andy Wingo  <wingo@pobox.com>
36
37         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
38         remaining buffer.
39
40         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
41         returns a sorted copy of the trace list.
42         (gst_alloc_trace_print_live): New API, only prints traces with
43         live objects. Sort the list.
44         (gst_alloc_trace_print_all): Sort the list.
45         (gst_alloc_trace_print): Align columns.
46
47         * gst/elements/gstttypefindelement.c:
48         * gst/elements/gsttee.c:
49         * gst/base/gstbasesrc.c:
50         * gst/base/gstbasesink.c:
51         * gst/base/gstbasetransform.c:
52         * gst/gstqueue.c: Adapt for pad activation changes.
53
54         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
55         sched.
56         (gst_pipeline_dispose): Drop ref on sched.
57
58         * gst/gstpad.c (gst_pad_init): Set the default activate func.
59         (gst_pad_activate_default): Push mode by default.
60         (pre_activate_switch, post_activate_switch): New stubs, things to
61         do before and after switching activation modes on pads.
62         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
63         the pad's activate function to choose which mode to activate.
64         Shortcut on deactivation and call the right function directly.
65         (gst_pad_activate_pull): New API, (de)activates a pad in pull
66         mode.
67         (gst_pad_activate_push): New API, same for push mode.
68         (gst_pad_set_activate_function) 
69         (gst_pad_set_activatepull_function) 
70         (gst_pad_set_activatepush_function): Setters for new API.
71
72         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
73         Trace all miniobjects.
74         (gst_mini_object_make_writable): Unref the arg if we copy, like
75         gst_caps_make_writable.
76
77         * gst/gstmessage.c (_gst_message_initialize): No trace init.
78
79         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
80         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
81         Adapt for new pad API.
82
83         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
84
85         * gst/gstelement.h:
86         * gst/gstelement.c (gst_element_iterate_src_pads) 
87         (gst_element_iterate_sink_pads): New API functions.
88         
89         * gst/gstelement.c (iterator_fold_with_resync): New utility,
90         should fold into gstiterator.c in some form.
91         (gst_element_pads_activate): Simplified via use of fold and
92         delegation of decisions to gstpad->activate.
93
94         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
95         help in debugging.
96
97         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
98         class once in init, like gstmessage. Didn't run into this issue
99         but it seems correct. Don't initialize a trace, gstminiobject does
100         that.
101
102         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
103         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
104         to the bus.
105         (assert_live_count): New util function, uses alloc traces to check
106         cleanup.
107
108         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
109         To be modified when unlink drops the internal pad.
110
111 2005-06-27  Wim Taymans  <wim@fluendo.com>
112
113         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
114         (gst_bin_change_state):
115         Cleanup the get_state() function a little, make sure it
116         iterates the same set of elements.
117         Added stub iterate_state_order().
118
119 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
120
121         * docs/gst/gstreamer-docs.sgml:
122         * docs/gst/gstreamer-sections.txt:
123         * docs/gst/gstreamer.types:
124         * docs/gst/tmpl/gstbasesink.sgml:
125         * docs/gst/tmpl/gstbasesrc.sgml:
126         * docs/gst/tmpl/gstbasetransform.sgml:
127         * docs/gst/tmpl/gstelement.sgml:
128         * docs/gst/tmpl/gstiterator.sgml:
129         * gst/base/gstbasesrc.c:
130         * gst/base/gstbasesrc.h:
131         * gst/base/gstbasetransform.h:
132         * gst/gstelement.c:
133         * gst/gstiterator.h:
134           adding basetransform and iterator docs
135
136 2005-06-27  Andy Wingo  <wingo@pobox.com>
137
138         * docs/design/part-activation.txt: Notes on how activation should
139         work -- not quite implemented yet.
140
141 2005-06-25  Wim Taymans  <wim@fluendo.com>
142
143         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
144         At least get the chain function correct, needs more
145         fixing.
146
147 2005-06-25  Wim Taymans  <wim@fluendo.com>
148
149         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
150         (gst_basesink_handle_object), (gst_basesink_event),
151         (gst_basesink_do_sync), (gst_basesink_handle_event),
152         (gst_basesink_change_state):
153         * gst/gsttask.h:
154         Right, two problems here: ghostpads don't take locks and
155         glib _rec_mutex_lock_full() with depth==0 still locks.
156         Catch illegal locking and g_warn them.
157
158 2005-06-25  Wim Taymans  <wim@fluendo.com>
159
160         * check/states/sinks.c: (START_TEST), (gst_object_suite):
161         Have to check for completion now...
162
163 2005-06-25  Wim Taymans  <wim@fluendo.com>
164
165         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
166         (gst_basesink_handle_object), (gst_basesink_event),
167         (gst_basesink_do_sync), (gst_basesink_handle_event),
168         (gst_basesink_change_state):
169         * gst/gstpad.h:
170         Unlock STREAM_LOCK whatever the recursion was.
171
172 2005-06-25  Wim Taymans  <wim@fluendo.com>
173
174         * gst/base/gstbasesink.c: (gst_basesink_set_property),
175         (gst_basesink_preroll_queue_empty),
176         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
177         (gst_basesink_event), (gst_basesink_do_sync),
178         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
179         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
180         (gst_basesink_change_state):
181         Reworked the base sink, handle event and buffer serialisation
182         correctly and removed possible deadlock.
183         Handle EOS correctly.
184
185 2005-06-25  Wim Taymans  <wim@fluendo.com>
186
187         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
188         (gst_pipeline_change_state):
189         * tools/gst-launch.c: (check_intr), (event_loop), (main):
190         Allow elements to post EOS in the state change function.
191         Fix up -launch, make it exit the poll loop when the
192         pipeline actually changed state.
193         Fix up warning parsing in -launch.
194
195 2005-06-25  Wim Taymans  <wim@fluendo.com>
196
197         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
198         (gst_tee_sink_activate):
199         Core takes STREAM_LOCK for us now.
200
201 2005-06-25  Wim Taymans  <wim@fluendo.com>
202
203         * gst/gstelement.c: (gst_element_get_state_func),
204         (gst_element_set_state):
205         * gst/gstelement.h:
206         * gst/gstmessage.c: (gst_message_parse_error),
207         (gst_message_parse_warning):
208         Keep track of current target state while performing a state
209         change so that subclasses can do something interesting.
210         Fix parsing of warning/error messages when GError is NULL.
211
212 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
213
214         * docs/gst/Makefile.am:
215         * docs/gst/gstreamer-docs.sgml:
216         * docs/gst/gstreamer-sections.txt:
217         * docs/gst/gstreamer.types:
218         * docs/gst/tmpl/gstbasesink.sgml:
219         * docs/gst/tmpl/gstbasesrc.sgml:
220         * docs/gst/tmpl/gstbin.sgml:
221         * docs/gst/tmpl/gstcompat.sgml:
222         * docs/gst/tmpl/gstfakesink.sgml:
223         * docs/gst/tmpl/gstfakesrc.sgml:
224         * docs/gst/tmpl/gstfilesink.sgml:
225         * docs/gst/tmpl/gstfilesrc.sgml:
226         * docs/gst/tmpl/gstindex.sgml:
227         * docs/manual/appendix-quotes.xml:
228         * gst/base/gstbasesrc.h:
229         * gst/elements/gstfakesrc.h:
230         * gst/gstmessage.h:
231           start pulling in base classes and elements in our docs
232
233 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
234
235         * docs/gst/Makefile.am:
236         * docs/libs/Makefile.am:
237           fixed make distcheck with gtk-doc 1.3
238
239 2005-06-23  Wim Taymans  <wim@fluendo.com>
240
241         * gst/gstelement.c: (gst_element_get_state_func),
242         (gst_element_set_state), (gst_element_change_state):
243         When the state did not change, also report NO_PREROLL
244         when it matters.
245
246 2005-06-23  Wim Taymans  <wim@fluendo.com>
247
248         * gst/gstpad.c: (gst_pad_event_default):
249         * gst/gstqueue.c: (gst_queue_loop):
250         No unsafe task pausing please.
251
252 2005-06-23  Wim Taymans  <wim@fluendo.com>
253
254         * gst/schedulers/threadscheduler.c:
255         (gst_thread_scheduler_task_start),
256         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
257         Ref the task before pushing it on the threadpool. This
258         makes sure that we have a ref when the threadfunction is
259         actually called.
260
261 2005-06-23  Andy Wingo  <wingo@pobox.com>
262
263         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
264         offset is greater than the file's size.
265
266         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
267         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
268         * gst/gstobject.c (gst_object_class_init): Make the class lock
269         recursive. Wim won't let me drop deep_notify. Decodebin works
270         again, whoopdy doo.
271
272         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
273         internal pad, and hacks accordingly. Doesn't do it on the target
274         pad because we change its caps. Probably catches all cases of
275         interest tho.
276         (gst_ghost_pad_set_property): Connect to notify::caps as
277         appropritate.
278
279         * tests/network-clock.scm (plot-simulation): Pipe data to the
280         elite python skript.
281
282         * tests/network-clock-utils.scm (define-parameter): New macro,
283         defines a parameter that can be set via the command line.
284         (set-parameter!, parse-parameter-arguments): Command line args
285         parser.
286
287         * tests/plot-data: Simple matplotlib-based plotter, takes input on
288         stdin.
289
290 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
291
292         * gst/elements/gsttypefindelement.c:
293         (gst_type_find_element_handle_event):
294           Don't restart typefinding on a discont.
295         * gst/gstelement.c: (gst_element_set_state):
296           Debug spelling fix.
297         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
298           Allow changing mode of an active pad.
299           Debug output fixes.
300         * gst/registries/gstlibxmlregistry.c: (load_feature):
301           Don't cast a static pad template to a normal pad template.
302
303 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
304
305         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
306         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
307           remove gst_strtoll completely, since it didn't actually do
308           anything more than what g_ascii_strtoull already does.
309           check for range errors when deserializing
310           do a cast for the unsigned cases; but further fixing needs
311           a decision on what the interpretation of "(int)" and
312           deserialization should be for values that fall outside the
313           type's boundaries (ie, refuse, or interpret as casting)
314
315 2005-06-23  Wim Taymans  <wim@fluendo.com>
316
317         * check/Makefile.am:
318         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
319         * docs/design/part-live-source.txt:
320         * docs/design/part-states.txt:
321         * gst/base/gstbasesrc.c: (gst_basesrc_init),
322         (gst_basesrc_set_live), (gst_basesrc_is_live),
323         (gst_basesrc_get_range), (gst_basesrc_activate),
324         (gst_basesrc_change_state):
325         * gst/base/gstbasesrc.h:
326         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
327         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
328         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
329         * gst/gstelement.c: (gst_element_get_state_func),
330         (gst_element_set_state):
331         * gst/gstelement.h:
332         * gst/gsttypes.h:
333         * tools/gst-launch.c: (event_loop), (main):
334         Added support for live sources and other elements that
335         cannot do preroll.
336         Updated design docs, added live-source design doc.
337         Implemented live source functionality in basesrc
338         Fix error condition in _bin_get_state()
339         Implement live source handling in -launch.
340         Added check for live sources.
341         Fixed case in GstBin where elements were changed state
342         multiple times.
343
344
345 2005-06-23  Andy Wingo  <wingo@pobox.com>
346
347         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
348         borken refcounting.
349
350         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
351         gst_caps_replace takes care of this for us.
352
353         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
354         gst_pad_set_caps on the target, not just its setcaps() function.
355
356         * tests/network-clock.scm: 
357         * tests/network-clock-utils.scm: A network clock simulator.
358         Something of an algorithmic testbed before doing something in C.
359
360 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
361
362         * check/Makefile.am:
363         * check/gst/capslist.h:
364           copy over from 0.8, and add two with bitmasks specified with
365           (int) 0xFF...
366         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
367           add test to parse everything from capslist.h
368         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
369         (main):
370           add test for structure deserialization
371         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
372           add tests for deserialization of strings to int types
373         * gst/gststructure.c: (gst_structure_nth_field_name):
374         * gst/gststructure.h:
375           add a way to get the name of a field referenced by index
376         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
377           instead of checking if the resulting long long lies between
378           min and max, we check if the long long would fit into
379           a number of bytes for the final type.
380           This fixes cases where a string represents 2^32 - 1, which
381           when cast to int would be the (valid) -1, but is bigger than
382           G_MAXINT
383
384 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
385
386         * gst/parse/grammar.y:
387           add a log line for type deserialization
388
389 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
390
391         * check/gst/gstvalue.c: (START_TEST):
392         * gst/gstvalue.c: (gst_value_deserialize):
393           return long long, not int, so gint64 deserialization actually
394           works.  Is there any flag that makes the compiler check this ?
395           Fixes #308559
396
397 2005-06-22  Wim Taymans  <wim@fluendo.com>
398
399         * gst/gstbuffer.h:
400         Added convenience macros for setting buffers in GValue.
401
402 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
403
404         * check/gst/.cvsignore:
405         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
406           add a test deserializing int64, and comment part out because
407           it fails, yay !
408
409 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
410
411         * check/Makefile.am:
412         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
413         * testsuite/Makefile.am:
414         * testsuite/caps/Makefile.am:
415         * testsuite/caps/value_serialize.c:
416         * testsuite/test_gst_init.c:
417           move a value_serialize test over
418
419 2005-06-20  Wim Taymans  <wim@fluendo.com>
420
421         * gst/gstpad.c:
422         Small doc updates.
423         
424         * gst/gstvalue.c: (gst_value_compare_buffer),
425         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
426         (gst_value_compare_flags), (gst_value_serialize_flags),
427         (gst_value_deserialize_flags), (_gst_value_initialize):
428         Fix serialisation of buffers, they are not boxed types anymore
429
430 2005-06-20  Wim Taymans  <wim@fluendo.com>
431
432         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
433         Testcase to show error in buffer-on-caps serialisation.
434
435 2005-06-20  Andy Wingo  <wingo@pobox.com>
436
437         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
438         will be adding to later.
439
440         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
441         if its socks fill with rocks.
442         (gst_system_clock_obtain): Set the name on object construction.
443         Avoid double-checked locking.
444
445 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
446
447         * gst/gsturi.c: (gst_element_make_from_uri):
448           Fix potential endless loop.
449
450 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
451
452         * check/Makefile.am:
453           add gsttag
454         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
455         (main):
456           move over from testsuite dir and clean up
457         * configure.ac:
458         * gst/gsttag.c:
459         * testsuite/Makefile.am:
460         * testsuite/tags/.cvsignore:
461         * testsuite/tags/Makefile.am:
462         * testsuite/tags/merge.c:
463           remove testsuite/tags
464
465 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
466
467         * docs/gst/gstreamer-sections.txt:
468         * docs/gst/tmpl/gstenumtypes.sgml:
469         * win32/gstenumtypes.c:
470           clean up documentation build a little
471
472 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
473
474         * check/gstcheck.h:
475           add macros for checking refcounts on objects and caps
476         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
477           add some more unit tests
478         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
479         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
480           fix leaked refcounts (I hope :)) so unittest works
481         * gst/gstpad.h:
482           whitespace removal
483
484 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
485
486         * configure.ac: back to HEAD
487
488 === release 0.9.1 ===
489
490 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
491
492         * NEWS:
493         * RELEASE:
494           updated
495
496 2005-06-17  Andy Wingo  <wingo@pobox.com>
497
498         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
499         assert; it's always possible that the pad gets deactivated in
500         between the checks in gstpad.c and the implementation. Rely on
501         finish_preroll() to return a FLUSHING or similar instead of on the
502         assert.
503         
504         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
505         clock and post an EOS message if we come out of finish_preroll in
506         the playing state.
507
508 2005-06-16  David Schleef  <ds@schleef.org>
509
510         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
511         (gst_capsfilter_set_property): Allow NULL as possible value
512         for filter_caps property, indicating GST_CAPS_ANY.
513
514 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
515
516         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
517           fix debug output
518         * gst/schedulers/Makefile.am:
519           use libgst prefix
520         * gstreamer.spec.in:
521           fix spec for it
522
523 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
524
525         * gstreamer.spec.in:
526           clean up
527
528 2005-06-08  Andy Wingo  <wingo@pobox.com>
529
530         * gst/gstutils.c: RPAD fixes all around.
531         (gst_element_link_pads): Refcounting fixes.
532
533         * tools/gst-inspect.c:
534         * tools/gst-xmlinspect.c:
535         * parse/grammar.y:
536         * gst/base/gsttypefindhelper.c:
537         * gst/base/gstbasesink.c:
538         * gst/gstqueue.c: RPAD fixes.
539
540         * gst/gstghostpad.h:
541         * gst/gstghostpad.c: New ghost pad implementation as full proxy
542         pads. The tricky thing is they provide both source and sink
543         interfaces, since they proxy the internal pad for the external
544         pad, and vice versa. Implement with lower-level ProxyPad objects,
545         with the interior proxy pad as a child of the exterior ghost pad.
546         Should write a doc on this.
547         
548         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
549         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
550         gst_object API.
551         
552         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
553         pads are real pads. No ghost pads in this file. Not documenting
554         the myriad s/RPAD/PAD/ and REALIZE fixes.
555         (gst_pad_class_init): Add properties for "direction" and
556         "template". Both are construct-only, so they can't change during
557         the life of the pad. Fixes properly deriving from GstPad.
558         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
559         derived objects, just set properties when creating the objects via
560         g_object_new.
561         (gst_pad_get_parent): Implement as a function, return NULL if the
562         parent is not an element.
563         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
564         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
565         
566         * gst/gstobject.c (gst_object_class_init): Make name a construct
567         property. Don't set it in the object init.
568
569         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
570         with UNKNOWN direction.
571         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
572         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
573         (gst_element_remove_pad): Remove ghost-pad special cases.
574         (gst_element_pads_activate): Remove rpad cruft.
575
576         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
577         catch the pad's-parent-not-an-element case.
578
579         * gst/gst.h: Include gstghostpad.h.
580
581         * gst/gst.c (init_post): No more real, ghost pads.
582
583         * gst/Makefile.am: Add gstghostpad.[ch].
584
585         * check/Makefile.am:
586         * check/gst/gstbin.c:
587         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
588         into a bin creates ghost pads, and that the refcounts are right.
589         Partly moved from gstbin.c.
590
591 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
592
593         * check/gst-libs/.cvsignore:
594         * check/gst/.cvsignore:
595         * check/pipelines/.cvsignore:
596           ignore more
597         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
598         (START_TEST), (cleanup_suite), (main):
599           add some tests related to cleanup after running pipelines
600
601 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
602
603         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
604           add a testsuite for GstBuffer
605
606 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
607
608         * gst/gstminiobject.h:
609           add defines for accessing the refcount
610
611 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
612
613         * Makefile.am: added support for html unit test coverage reports
614
615 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
616
617         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
618           Free existing caps if the capsfilter changes. Add a FIXME about
619           setting those caps on the pads.
620
621         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
622           Before adding a ghost pad to a parent bin, check that there isn't
623           already one for the element on the bin. Prevents infinite recursion
624           when using decodebin in parse pipelines. Andy says he'll rewrite the
625           way this works anyway, so ignore the hack.
626
627 2005-06-02  Andy Wingo  <wingo@pobox.com>
628
629         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
630         file size, pass it on to the type find helper.
631
632         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
633         segment_start and segment_end properly according to the seek
634         method. Segment_end is still a bit flaky because offset can be
635         negative for CUR and END cases, but it takes -1 as an "unset"
636         value.
637
638 2005-06-02  Wim Taymans  <wim@fluendo.com>
639
640         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
641         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
642         (gst_basesink_activate):
643         * gst/base/gstbasesink.h:
644         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
645         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
646         (gst_pad_query), (gst_pad_start_task):
647         * gst/gstpad.h:
648         * gst/gstqueue.c: (gst_queue_bufferalloc),
649         (gst_queue_handle_sink_event), (gst_queue_chain):
650         Bufferalloc: return GstFlowReturn to more accuratly report
651         why allocation failed.
652
653 2005-06-02  Wim Taymans  <wim@fluendo.com>
654
655         * gst/gstpipeline.c: (gst_pipeline_send_event):
656         Take snapshot of state without blocking.
657
658 2005-06-02  Wim Taymans  <wim@fluendo.com>
659
660         * docs/design/part-TODO.txt:
661         * docs/design/part-caps.txt:
662         * docs/design/part-clocks.txt:
663         * docs/design/part-negotiation.txt:
664         * docs/design/part-preroll.txt:
665         Small doc updates 
666
667 2005-05-30  Wim Taymans  <wim@fluendo.com>
668
669         * gst/elements/gstidentity.c: (gst_identity_event),
670         (gst_identity_transform), (gst_identity_get_property):
671         Protect last_message property as it is accessed from
672         multiple threads.
673
674 2005-05-30  Wim Taymans  <wim@fluendo.com>
675
676         * gst/gstelement.c: (gst_element_init),
677         (gst_element_pads_activate), (gst_element_change_state):
678         Slicker pad activation code.
679
680 2005-05-30  Wim Taymans  <wim@fluendo.com>
681
682         * gst/Makefile.am:
683         * gst/gstelement.h:
684         * gst/gstelementfactory.h:
685         * gst/gsttypes.h:
686         Move elementfactory methods to separate .h file.
687
688 2005-05-30  Wim Taymans  <wim@fluendo.com>
689
690         * docs/design/part-overview.txt:
691         * gst/gstsystemclock.h:
692         Small typo fixes, doc updates.
693
694 2005-05-30  Wim Taymans  <wim@fluendo.com>
695
696         * gst/gst.c: (gst_init_get_popt_table), (init_post),
697         (init_popt_callback):
698         Remove cpu-opt flag.
699
700 2005-05-30  Wim Taymans  <wim@fluendo.com>
701
702         * gst/gstbuffer.c: (gst_subbuffer_finalize),
703         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
704         * gst/gstbuffer.h:
705         Avoid typechecking in places where not needed.
706         Added accessor for malloc_data.
707
708 2005-05-30  Wim Taymans  <wim@fluendo.com>
709
710         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
711         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
712         (gst_pad_configure_sink), (gst_pad_configure_src),
713         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
714         (gst_pad_start_task):
715         Propagate errors from _set_caps() in configure_src/sink
716         functions instead of returning TRUE.
717         FLUSH events can travel up and downstream
718
719
720 2005-05-30  Wim Taymans  <wim@fluendo.com>
721
722         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
723         (gst_basesink_activate):
724         Handle EOS in preroll.
725
726 2005-05-30  Wim Taymans  <wim@fluendo.com>
727
728         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
729         (gst_queue_loop), (gst_queue_handle_src_event):
730         Remove old pieces of code
731         Flushing the queue in an upstream event is a very bad idea.
732
733 2005-05-26  Andy Wingo  <wingo@pobox.com>
734
735         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
736         gst_value_set_mini_object so as to add a ref on the object (which
737         will be removed when the value is unset).
738
739         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
740         arg type in ::handoff.
741
742         * gst/gstelement.c (gst_element_change_state): Also deactivate
743         pads in READY->NULL, just in case the element didn't make it to
744         PAUSED. Wingo tested, Wim approved.
745
746 2005-05-26  Wim Taymans  <wim@fluendo.com>
747
748         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
749         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
750         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
751         A flushing pad cannot be used to alloc_buffer from.
752
753 2005-05-26  Wim Taymans  <wim@fluendo.com>
754
755         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
756         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
757         (gst_bus_source_dispatch), (gst_bus_source_finalize),
758         (gst_bus_create_watch), (gst_bus_add_watch_full):
759         * gst/gstbus.h:
760         Implement a real GSource and use g_main_context_wakeup() to
761         signal new messages instead of the socketpair.
762
763 2005-05-25  Wim Taymans  <wim@fluendo.com>
764
765         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
766         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
767         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
768         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
769         (gst_pad_send_event), (gst_pad_start_task):
770         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
771         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
772         (gst_queue_sink_activate), (gst_queue_src_activate),
773         (gst_queue_change_state):
774         * gst/gstqueue.h:
775         Fix state changes for non sinks. We now change sinks, then elements
776         with unconnected srcpads, then the rest.
777         More efficient queue unlocking in flush and state changes.
778         Set the pad activate mode even if it does not have an activate
779         function.
780
781 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
782
783         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
784           Don't go in pull mode for non-seekable sources.
785         * gst/elements/gsttypefindelement.h:
786         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
787         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
788         (free_entry), (stop_typefinding),
789         (gst_type_find_element_handle_event), (find_peek),
790         (gst_type_find_element_chain), (do_pull_typefind),
791         (gst_type_find_element_change_state):
792           Allow typefinding (w/o seeking) in push-mode, simplified version
793           of what was in 0.8.
794         * gst/gstutils.c: (gst_buffer_join):
795         * gst/gstutils.h:
796           gst_buffer_join() from 0.8.
797
798 2005-05-25  Wim Taymans  <wim@fluendo.com>
799
800         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
801         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
802         (gst_pad_send_event), (gst_pad_start_task):
803         Disable attempt at mode switching until it is figured out.
804
805 2005-05-25  Wim Taymans  <wim@fluendo.com>
806
807         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
808         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
809         (gst_basesink_finish_preroll), (gst_basesink_chain),
810         (gst_basesink_loop), (gst_basesink_activate),
811         (gst_basesink_change_state):
812         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
813         (gst_basesrc_get_range), (gst_basesrc_loop),
814         (gst_basesrc_activate):
815         * gst/elements/gsttee.c: (gst_tee_sink_activate):
816         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
817         (gst_real_pad_init), (gst_real_pad_set_property),
818         (gst_real_pad_get_property), (gst_pad_set_active),
819         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
820         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
821         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
822         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
823         (gst_pad_event_default_dispatch), (gst_pad_event_default),
824         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
825         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
826         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
827         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
828         (gst_pad_stop_task):
829         * gst/gstpad.h:
830         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
831         (gst_queue_loop), (gst_queue_src_activate):
832         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
833         (gst_task_get_state):
834         * gst/gsttask.h:
835         * gst/schedulers/threadscheduler.c:
836         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
837         Implement gst_pad_pause/start/stop_task(), take STREAM lock
838         in task function.
839         Remove ACTIVE pad flag, use FLUSHING everywhere
840         Added _pad_chain(), _pad_get_range() to call chain/getrange 
841         functions.
842         Add locks around IS_FLUSHING when reading.
843         Take STREAM lock in chain(), get_range() functions so plugins
844         don't need to take it anymore.
845         
846
847
848 2005-05-25  Wim Taymans  <wim@fluendo.com>
849
850         * tools/gst-launch.c: (event_loop):
851         Unref message after using its contents instead of
852         before.
853
854 2005-05-24  Wim Taymans  <wim@fluendo.com>
855
856         * docs/design/draft-ghostpads.txt:
857         * docs/design/draft-push-pull.txt:
858         * docs/design/draft-query.txt:
859         * docs/design/part-overview.txt:
860         Docs updates, added general overview doc.
861
862 2005-05-21  David Schleef  <ds@schleef.org>
863
864         * docs/gst/tmpl/old/GstBin.sgml:
865         * docs/gst/tmpl/old/GstBuffer.sgml:
866         * docs/gst/tmpl/old/GstCaps.sgml:
867         * docs/gst/tmpl/old/GstClock.sgml:
868         * docs/gst/tmpl/old/GstCompat.sgml:
869         * docs/gst/tmpl/old/GstData.sgml:
870         * docs/gst/tmpl/old/GstElement.sgml:
871         * docs/gst/tmpl/old/GstEvent.sgml:
872         * docs/gst/tmpl/old/GstIndex.sgml:
873         * docs/gst/tmpl/old/GstStructure.sgml:
874         * docs/gst/tmpl/old/GstTag.sgml:
875         * docs/gst/tmpl/old/cothreads.sgml:
876         * docs/gst/tmpl/old/cothreads_compat.sgml:
877         * docs/gst/tmpl/old/gettext.sgml:
878         * docs/gst/tmpl/old/gobject2gtk.sgml:
879         * docs/gst/tmpl/old/grammar.tab.sgml:
880         * docs/gst/tmpl/old/gst-i18n-app.sgml:
881         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
882         * docs/gst/tmpl/old/gst_private.sgml:
883         * docs/gst/tmpl/old/gstaggregator.sgml:
884         * docs/gst/tmpl/old/gstarch.sgml:
885         * docs/gst/tmpl/old/gstatomic_impl.sgml:
886         * docs/gst/tmpl/old/gstbufferstore.sgml:
887         * docs/gst/tmpl/old/gstdata_private.sgml:
888         * docs/gst/tmpl/old/gstdisksink.sgml:
889         * docs/gst/tmpl/old/gstdisksrc.sgml:
890         * docs/gst/tmpl/old/gstelementfactory.sgml:
891         * docs/gst/tmpl/old/gstextratypes.sgml:
892         * docs/gst/tmpl/old/gstfakesink.sgml:
893         * docs/gst/tmpl/old/gstfakesrc.sgml:
894         * docs/gst/tmpl/old/gstfdsink.sgml:
895         * docs/gst/tmpl/old/gstfdsrc.sgml:
896         * docs/gst/tmpl/old/gstfilesink.sgml:
897         * docs/gst/tmpl/old/gstfilesrc.sgml:
898         * docs/gst/tmpl/old/gsthttpsrc.sgml:
899         * docs/gst/tmpl/old/gstidentity.sgml:
900         * docs/gst/tmpl/old/gstindexfactory.sgml:
901         * docs/gst/tmpl/old/gstmarshal.sgml:
902         * docs/gst/tmpl/old/gstmd5sink.sgml:
903         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
904         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
905         * docs/gst/tmpl/old/gstpadtemplate.sgml:
906         * docs/gst/tmpl/old/gstpipefilter.sgml:
907         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
908         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
909         * docs/gst/tmpl/old/gstshaper.sgml:
910         * docs/gst/tmpl/old/gstspider.sgml:
911         * docs/gst/tmpl/old/gstspideridentity.sgml:
912         * docs/gst/tmpl/old/gststatistics.sgml:
913         * docs/gst/tmpl/old/gsttee.sgml:
914         * docs/gst/tmpl/old/gsttimecache.sgml:
915         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
916         * docs/gst/tmpl/old/gstxmlregistry.sgml:
917         * docs/gst/tmpl/old/gthread-cothreads.sgml:
918         * docs/gst/tmpl/old/types.sgml:
919           I didn't intend to add these or check them in.
920
921 2005-05-19  David Schleef  <ds@schleef.org>
922
923         * configure.ac: Use -no-common everywhere.  In a sane world, it
924           would be the default in libtool, because without it, you can't
925           build DLLs on Windows.
926         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
927         * docs/gst/gstreamer-sections.txt:
928         * docs/gst/tmpl/gstcpu.sgml:
929         * docs/gst/tmpl/gstdata.sgml:
930         * docs/gst/tmpl/gstthread.sgml:
931
932 2005-05-19  David Schleef  <ds@schleef.org>
933
934         * gst/gstminiobject.c: (gst_value_set_mini_object),
935         (gst_value_take_mini_object), (gst_value_get_mini_object):
936         * gst/gstminiobject.h: Add GValue set/get functions.
937
938 2005-05-19  Wim Taymans  <wim@fluendo.com>
939
940         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
941         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
942         (gst_subbuffer_init), (gst_buffer_is_span_fast):
943         * gst/gstbuffer.h:
944         * gst/gstbus.c: (gst_bus_post):
945         * gst/gstelement.c: (gst_element_get_random_pad):
946         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
947         Make subbufer unref the parent in finalize.
948         some more debugging info.
949
950
951 2005-05-19  Wim Taymans  <wim@fluendo.com>
952
953         * gst/base/gstbasesink.c: (gst_basesink_class_init),
954         (gst_basesink_init), (gst_basesink_finalize),
955         (gst_basesink_activate), (gst_basesink_change_state):
956         Don't free preroll queue too early.
957
958 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
959
960         * gst/Makefile.am:
961         * gst/ROADMAP:
962           Hi, I'm outdated. Please shoot me.
963
964 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
965
966         * gst/gstpipeline.c: (gst_pipeline_send_event):
967           Do not access variables after they have been deleted.
968
969 2005-05-19  Wim Taymans  <wim@fluendo.com>
970
971         * tools/gst-inspect.c: (print_plugin_features):
972         A plugin feature does unfortunatly not use the
973         object name yet...
974
975 2005-05-18  Wim Taymans  <wim@fluendo.com>
976
977         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
978         Port _span() functions to new subbuffers.
979
980 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
981
982         * gst/gstbin.c: (gst_bin_add_func):
983           Fix clock settery in bins when adding kids after the clock has
984           been selected.
985
986 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
987
988         * gst/elements/gstidentity.c: (gst_identity_class_init):
989           Workaround until signals support GstMiniObject.
990
991 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
992
993         * gst/gstbuffer.c:
994         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
995
996 2005-05-18  Wim Taymans  <wim@fluendo.com>
997
998         * gst/base/Makefile.am:
999         * gst/base/gstadapter.c: (gst_adapter_base_init),
1000         (gst_adapter_class_init), (gst_adapter_init),
1001         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1002         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1003         (gst_adapter_flush), (gst_adapter_available),
1004         (gst_adapter_available_fast):
1005         * gst/base/gstadapter.h:
1006         Ported and added adapter to the base classes.
1007
1008 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1009
1010         * gst/gst.c:
1011         * gst/gstmessage.c:
1012           Make sure the class is reffed/unreffed once before threads can be
1013           used.  Fixes #304551.
1014
1015 2005-05-17  Wim Taymans  <wim@fluendo.com>
1016
1017         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1018         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1019         * gst/gstminiobject.c: (gst_mini_object_get_type),
1020         (gst_mini_object_free):
1021         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1022         (gst_pad_push), (gst_pad_push_event):
1023         * gst/gstqueue.c: (gst_queue_change_state):
1024         Don't queue buffers in basesink when we are flushing.
1025         Unref buffer when flushing in basesink.
1026         Flush queue when going to READY
1027         Unref buffer when _push() returns an error.
1028         Don't free MiniObject instance when refcount is incremented
1029         in _finalize() so that we can recover objects.
1030
1031 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1032
1033         * docs/manual/advanced-schedulers.xml:
1034         * docs/manual/appendix-checklist.xml:
1035         * docs/pwg/advanced-clock.xml:
1036         * docs/pwg/advanced-interfaces.xml:
1037         * docs/pwg/advanced-request.xml:
1038         * docs/pwg/advanced-types.xml:
1039         * docs/pwg/intro-preface.xml:
1040         * examples/plugins/example.c: (gst_example_get_type),
1041         (gst_example_class_init), (gst_example_chain),
1042         (gst_example_set_property), (gst_example_get_property),
1043         (gst_example_change_state), (plugin_init):
1044         * examples/plugins/example.h:
1045           small doc fixes
1046
1047 2005-05-17  Wim Taymans  <wim@fluendo.com>
1048
1049         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1050         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1051         * gst/gstqueue.c: (gst_queue_change_state):
1052         Clear queue when going to READY.
1053         Remove IN_SETCAPS flag too.
1054
1055 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1056
1057         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1058           Remove implicit cast from gboolean to GstElementStateReturn;
1059           make sure we still return failure in paused => ready case if
1060           the parent class fails to change state and our own stop 
1061           vfunc succeeds.
1062
1063 2005-05-17  Wim Taymans  <wim@fluendo.com>
1064
1065         * tools/gst-launch.c: (event_loop):
1066         Message was unreffed too soon.
1067
1068 2005-05-16  Andy Wingo  <wingo@pobox.com>
1069
1070         * gst/gstbin.c (sink_iterator_filter): Err... um...
1071
1072         * check/gst/gstbin.c (test_ghost_pads): New test for the
1073         ghosting-if-elements-not-in-same-bin behavior.
1074
1075 2005-05-16  David Schleef  <ds@schleef.org>
1076
1077         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1078         accessing refcount directly.
1079
1080 2005-05-15  David Schleef  <ds@schleef.org>
1081
1082         * check/Makefile.am: remove GstData checks
1083         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1084         * gst/Makefile.am: add miniobject, remove data
1085         * gst/gst.h: add miniobject, remove data
1086         * gst/gstdata.c: remove
1087         * gst/gstdata.h: remove
1088         * gst/gstdata_private.h: remove
1089         * gst/gsttypes.h: remove GstEvent and GstMessage
1090         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1091         * gst/gstmarshal.list: change BOXED -> OBJECT
1092
1093         Implement GstMiniObject.
1094         * gst/gstminiobject.c:
1095         * gst/gstminiobject.h:
1096
1097         Modify to be subclasses of GstMiniObject.
1098         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1099         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1100         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1101         (gst_subbuffer_get_type), (gst_subbuffer_init),
1102         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1103         (gst_buffer_span):
1104         * gst/gstbuffer.h:
1105         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1106         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1107         (_gst_event_copy), (gst_event_new):
1108         * gst/gstevent.h:
1109         * gst/gstmessage.c: (_gst_message_initialize),
1110         (gst_message_get_type), (gst_message_class_init),
1111         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1112         (gst_message_new), (gst_message_new_error),
1113         (gst_message_new_warning), (gst_message_new_tag),
1114         (gst_message_new_state_changed), (gst_message_new_application):
1115         * gst/gstmessage.h:
1116         * gst/gstprobe.c: (gst_probe_perform),
1117         (gst_probe_dispatcher_dispatch):
1118         * gst/gstprobe.h:
1119         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1120         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1121         (_gst_query_copy), (gst_query_new):
1122
1123         Update elements for GstData -> GstMiniObject changes
1124         * gst/gstquery.h:
1125         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1126         (gst_queue_chain), (gst_queue_loop):
1127         * gst/elements/gstbufferstore.c:
1128         (gst_buffer_store_add_buffer_func),
1129         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1130         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1131         (gst_fakesink_render):
1132         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1133         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1134         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1135         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1136         (gst_filesrc_create_read):
1137         * gst/elements/gstidentity.c: (gst_identity_class_init):
1138         * gst/elements/gsttypefindelement.c:
1139         (gst_type_find_element_src_event), (free_entry_buffers),
1140         (gst_type_find_element_handle_event):
1141         * libs/gst/dataprotocol/dataprotocol.c:
1142         (gst_dp_header_from_buffer):
1143         * libs/gst/dataprotocol/dataprotocol.h:
1144         * libs/gst/dataprotocol/dp-private.h:
1145
1146 2005-05-15  David Schleef  <ds@schleef.org>
1147
1148         * gst/elements/gstelements.c: Don't include headers that were
1149         just removed.
1150
1151 2005-05-15  David Schleef  <ds@schleef.org>
1152
1153         * gst/elements/Makefile.am: Remove some elements that don't
1154         need to be in the core (or even exist at all).
1155         * gst/elements/gstaggregator.c:
1156         * gst/elements/gstaggregator.h:
1157         * gst/elements/gstmd5sink.c:
1158         * gst/elements/gstmd5sink.h:
1159         * gst/elements/gstmultifilesrc.c:
1160         * gst/elements/gstmultifilesrc.h:
1161         * gst/elements/gstpipefilter.c:
1162         * gst/elements/gstpipefilter.h:
1163         * gst/elements/gstshaper.c:
1164         * gst/elements/gstshaper.h:
1165         * gst/elements/gststatistics.c:
1166         * gst/elements/gststatistics.h:
1167         * po/POTFILES.in: Remove above files.
1168
1169 2005-05-14  Andy Wingo  <wingo@pobox.com>
1170
1171         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1172         so as to get the refs right.
1173         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1174         unreffing objects that don't pass the filter.
1175
1176         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1177         gst_element_set_bus.
1178         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1179         normal cases, this will destroy the bus.
1180
1181         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1182         object.
1183
1184         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1185         has no sinks.
1186
1187 2005-05-13  Andy Wingo  <wingo@pobox.com>
1188
1189         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1190         gst_pad_link, call pad_link_maybe_ghosting,
1191         (pad_link_maybe_ghosting): Links pads, making sure that the
1192         elements being linked are in the same bin.
1193         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1194         Helpers for pad_link_maybe_ghosting.
1195
1196 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1197
1198         * configure.ac:
1199           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1200
1201 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1202
1203         * docs/design/part-element-source.txt:
1204           Mention GstPushSrc
1205
1206 2005-05-12  Wim Taymans  <wim@fluendo.com>
1207
1208         * gst/base/gstbasesink.c: (gst_basesink_init),
1209         (gst_basesink_activate):
1210         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1211         (gst_basesrc_is_seekable):
1212         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1213         (bin_element_is_sink), (gst_bin_change_state):
1214         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1215         * gst/gstelement.h:
1216         Identify sinks by their flag to avoid overly complicated
1217         checks (fow now).
1218         Do state changes even for elements not reachable from the
1219         sinks.
1220         BaseSink is a sink now :)
1221         Some more debugging info in the basesrc.
1222
1223
1224 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1225
1226         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1227           Implement _query on a bin, similar to _send_event.
1228
1229 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1230
1231         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1232           Discont event offset format should be GST_FORMAT_BYTES,
1233           not GST_FORMAT_TIME.
1234
1235 2005-05-12  Wim Taymans  <wim@fluendo.com>
1236
1237         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1238         Same fix as Ronald's but without the signal. 
1239
1240 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1241
1242         * gst/gstutils.c: (gst_element_query_position):
1243           No, an element is not a pad.
1244
1245 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1246
1247         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1248         (gst_bin_get_state):
1249           If a child is removed from a bin while we remove the child from
1250           the bin and while we're retrieving its state, signal this to the
1251           get_state function so we abort the wait (instead of waiting for
1252           a timeout) and can immediately re-iterate over all other elements.
1253
1254 2005-05-12  Wim Taymans  <wim@fluendo.com>
1255
1256         * gst/base/Makefile.am:
1257         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1258         (gst_basesrc_start):
1259         * gst/base/gstbasesrc.h:
1260         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1261         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1262         (gst_pushsrc_init), (gst_pushsrc_create):
1263         * gst/base/gstpushsrc.h:
1264         Added is_seekable to BaseSrc
1265         Added simple PushSrc.
1266
1267 2005-05-11  Wim Taymans  <wim@fluendo.com>
1268
1269         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1270         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1271         (gst_element_link_pads), (gst_element_query_position),
1272         (gst_element_query_convert), (intersect_caps_func),
1273         (gst_pad_query_position), (gst_pad_query_convert):
1274         Fix refcounting in utils function.
1275         No point in trying to activate a pad when it's added, it could
1276         be added from the state change function and then we deadlock, the
1277         element has to decide what to do.
1278
1279 2005-05-10  Andy Wingo  <wingo@pobox.com>
1280
1281         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1282         *all* the arguments.
1283
1284         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1285         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1286         lock (according to the docs -- if this is wrong change the docs).
1287
1288         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1289         flush messages in the NULL state.
1290
1291         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1292         message immediately and return.
1293         (gst_bus_set_flushing): New function. If a bus is flushing, it
1294         flushes out any queued messages and immediately unrefs new
1295         messages. This is so when an element goes to NULL, all of the
1296         unhandled messages coming from it can be freed, and their
1297         references to the element dropped. In other words: message source
1298         ref considered harmful :P
1299
1300         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1301         we're finished with it.
1302
1303         * gst/gstmessage.c (gst_message_new_state_changed): 
1304
1305 2005-05-10  Wim Taymans  <wim@fluendo.com>
1306
1307         * gst/gstvalue.c: (gst_value_compare_flags),
1308         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1309         (_gst_value_initialize):
1310         Added flags serialize/deserialize/compare code.
1311
1312 2005-05-09  Andy Wingo  <wingo@pobox.com>
1313
1314         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1315         Intersect the peer's caps with our caps.
1316
1317 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1318
1319         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1320         * gst/elements/gsttypefindelement.c: (find_peek):
1321           Handle negative offsets better. Fixes decodebin.
1322
1323 2005-05-09  Wim Taymans  <wim@fluendo.com>
1324
1325         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1326         (gst_base_transform_event):
1327         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1328         Implement accept_caps.
1329         Fix silly lock/unlock mismatch in base class.
1330
1331 2005-05-09  Wim Taymans  <wim@fluendo.com>
1332
1333         * docs/design/draft-push-pull.txt:
1334         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1335         * gst/elements/gstfilesink.c: (gst_filesink_init),
1336         (gst_filesink_query):
1337         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1338         (gst_type_find_handle_src_query), (find_element_get_length):
1339         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1340         * gst/gstelement.h:
1341         * gst/gstmessage.c:
1342         * gst/gstmessage.h:
1343         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1344         (gst_real_pad_get_caps_unlocked),
1345         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1346         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1347         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1348         (gst_real_pad_dispose), (gst_real_pad_finalize),
1349         (gst_pad_load_and_link), (gst_pad_save_thyself),
1350         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1351         (gst_pad_check_pull_range), (gst_pad_pull_range),
1352         (gst_pad_template_get_type), (gst_pad_template_class_init),
1353         (gst_pad_template_init), (gst_pad_template_dispose),
1354         (name_is_valid), (gst_static_pad_template_get),
1355         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1356         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1357         (gst_pad_get_element_private), (gst_pad_start_task),
1358         (gst_pad_pause_task), (gst_pad_stop_task),
1359         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1360         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1361         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1362         (gst_ghost_pad_new):
1363         * gst/gstpad.h:
1364         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1365         (gst_query_new_position), (gst_query_set_position),
1366         (gst_query_parse_position), (gst_query_new_convert),
1367         (gst_query_set_convert), (gst_query_parse_convert):
1368         * gst/gstquery.h:
1369         * gst/gstqueryutils.c:
1370         * gst/gstqueryutils.h:
1371         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1372         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1373         (gst_queue_handle_src_query):
1374         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1375         (gst_element_query_position), (gst_element_query_convert),
1376         (intersect_caps_func), (gst_pad_query_position),
1377         (gst_pad_query_convert):
1378         * gst/gstutils.h:
1379         * tools/gst-inspect.c: (print_pad_info):
1380         * tools/gst-xmlinspect.c: (print_element_info):
1381         Remove old query functions. Ported old code.
1382         Added position/convert helper functions to gstutils.
1383         Reordered gstpad.c code, grouping relevant things.
1384         Remove gst_message_new(), always need to speficy a specific
1385         message.
1386
1387
1388 2005-05-09  Andy Wingo  <wingo@pobox.com>
1389
1390         * gst/gstiterator.h: Add some includes.
1391
1392         * gst/gstqueryutils.h: Include more headers.
1393
1394         * gst/gstpad.h:
1395         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1396         some uses of gst_pad_query.
1397
1398         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1399         NULL out parameters.
1400         (gst_query_new_position): New proc, allocates a new position
1401         query.
1402
1403         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1404         gstqueryutils.c to the build.
1405
1406         * gst/gststructure.c (gst_structure_set_valist): Implement with
1407         the generic G_VALUE_COLLECT.
1408         
1409 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1410
1411         * gst/Makefile.am: (gst_headers):
1412         Added gstqueryutils.h to the list of headers to install, that was
1413         a 'nachty' move wingo :)
1414
1415 2005-05-06  Andy Wingo  <wingo@pobox.com>
1416
1417         * gst/gstquery.h
1418         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1419         GstData, init a memchunk.
1420         (standard_definitions): Add a few query types, deprecate a few.
1421         (gst_query_get_type): New proc.
1422         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1423         implementation.
1424         (gst_query_new_application, gst_query_get_structure): New public
1425         procs.
1426
1427         * docs/design/draft-query.txt: Removed LINKS from the query types,
1428         because all the rest can be dispatched to other pads -- seemed
1429         ugly to have a query that couldn't be dispatched. internal_links
1430         is fine as a pad method.
1431
1432         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1433         in gstpad.c, but maintain binary compatibility for the moment.
1434         Will fix before 0.9 is out.
1435
1436         * gst/gstqueryutils.c: 
1437         * gst/gstqueryutils.h: New files, implement 3 methods for each
1438         query type: parse_query, parse_response, and set. Probably need an
1439         allocator as well.
1440
1441         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1442
1443         * gst/elements/gstfilesink.c (gst_filesink_query2):
1444         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1445         query_types, and formats methods.
1446
1447         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1448         (gst_pad_set_query2_function): New functions.
1449         (gst_real_pad_init): Set query2_default as the default query2
1450         function. Basically just dispatches to internally linked pads.
1451
1452         Needs review!
1453         
1454         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1455         without using the atomic operations. Only one thread can possibly
1456         be accessing the data at this point. Changed so as to avoid
1457         gst_atomic operations.
1458
1459 2005-05-06  Wim Taymans  <wim@fluendo.com>
1460
1461         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1462         Also set caps if we use the fallback buffer alloc.
1463
1464 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1465
1466         * docs/gst/Makefile.am:
1467         * docs/gst/gstreamer-docs.sgml:
1468         * docs/gst/gstreamer-sections.txt:
1469         * docs/gst/tmpl/gstatomic.sgml:
1470         * docs/gst/tmpl/gstmemchunk.sgml:
1471         * testsuite/elements/struct_i386.h:
1472         * win32/GStreamer.vcproj:
1473         * win32/Makefile:
1474           Purge GstAtomic stuff from docs and win32 makefiles as well
1475
1476 2005-05-06  Wim Taymans  <wim@fluendo.com>
1477
1478         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1479         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1480         * gst/gstpad.c: (gst_pad_peer_get_caps):
1481         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1482         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1483         (gst_queue_src_activate), (gst_queue_change_state):
1484         * gst/gstqueue.h:
1485         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1486         (intersect_caps_func):
1487         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1488         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1489         Some fixes for the peer_get_caps() change.
1490
1491 2005-05-06  Wim Taymans  <wim@fluendo.com>
1492
1493         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1494         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1495         (gst_basesink_activate):
1496         Actually do something with error codes returned from the push
1497         functions.
1498
1499 2005-05-06  Wim Taymans  <wim@fluendo.com>
1500
1501         * docs/design/part-element-sink.txt:
1502         * docs/design/part-element-source.txt:
1503         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1504         (gst_basesink_event), (gst_basesink_activate):
1505         * gst/base/gstbasesink.h:
1506         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1507         (gst_basesrc_activate):
1508         * gst/base/gstbasesrc.h:
1509         * gst/gstelement.c: (gst_element_pads_activate):
1510         Some more documentation.
1511         Fixed scheduling decision in _pads_activate().
1512
1513 2005-05-05  Andy Wingo  <wingo@pobox.com>
1514
1515         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1516         the test suite.
1517
1518 2005-05-05  Wim Taymans  <wim@fluendo.com>
1519
1520         * gst/base/Makefile.am:
1521         * gst/base/gstbasesink.h:
1522         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1523         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1524         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1525         (gst_collectpads_class_init), (gst_collectpads_init),
1526         (gst_collectpads_finalize), (gst_collectpads_new),
1527         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1528         (find_pad), (gst_collectpads_remove_pad),
1529         (gst_collectpads_is_active), (gst_collectpads_collect),
1530         (gst_collectpads_collect_range), (gst_collectpads_start),
1531         (gst_collectpads_stop), (gst_collectpads_peek),
1532         (gst_collectpads_pop), (gst_collectpads_available),
1533         (gst_collectpads_read), (gst_collectpads_flush),
1534         (gst_collectpads_chain):
1535         * gst/base/gstcollectpads.h:
1536         * gst/elements/Makefile.am:
1537         * gst/elements/gstelements.c:
1538         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1539         (gst_fakesink_get_times), (gst_fakesink_event),
1540         (gst_fakesink_preroll), (gst_fakesink_render):
1541         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1542         (gst_filesink_init), (gst_filesink_set_location),
1543         (gst_filesink_open_file), (gst_filesink_close_file),
1544         (gst_filesink_pad_query), (gst_filesink_event),
1545         (gst_filesink_render), (gst_filesink_change_state):
1546         * gst/elements/gstfilesink.h:
1547         Added object to help in making collect pad based elements.
1548         Ported filesink.
1549         Make event function in sink baseclass return gboolean.
1550
1551 2005-05-05  Wim Taymans  <wim@fluendo.com>
1552
1553         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1554         (gst_bin_get_by_name):
1555         * gst/gstbuffer.h:
1556         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1557         (gst_clock_finalize):
1558         * gst/gstdata.c: (gst_data_replace):
1559         * gst/gstdata.h:
1560         * gst/gstelement.c: (gst_element_request_pad),
1561         (gst_element_pads_activate):
1562         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1563         (gst_object_unref):
1564         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1565         (gst_pad_set_checkgetrange_function),
1566         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1567         (gst_pad_check_pull_range), (gst_pad_pull_range),
1568         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1569         (gst_pad_pause_task), (gst_pad_stop_task):
1570         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1571         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1572         Fix name lookup in GstBin.
1573         Added _data_replace() function and _buffer_replace()
1574         Use finalize method to clean up clock.
1575         Fix refcounting on request pads.
1576         Fix pad schedule mode error.
1577         Some more object refcounting debug info,
1578
1579
1580 2005-05-04  Andy Wingo <wingo@pobox.com>
1581
1582         * check/Makefile.am:
1583         * docs/gst/tmpl/gstatomic.sgml:
1584         * docs/gst/tmpl/gstplugin.sgml:
1585         * gst/base/gstbasesink.c: (gst_basesink_activate):
1586         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1587         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1588         (gst_basesrc_query), (gst_basesrc_set_property),
1589         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1590         (gst_basesrc_activate):
1591         * gst/base/gstbasesrc.h:
1592         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1593         (gst_base_transform_src_activate):
1594         * gst/elements/gstelements.c:
1595         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1596         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1597         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1598         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1599         (gst_type_find_element_checkgetrange),
1600         (gst_type_find_element_activate):
1601         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1602         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1603         (gst_caps_load_thyself):
1604         * gst/gstelement.c: (gst_element_pads_activate),
1605         (gst_element_save_thyself), (gst_element_restore_thyself):
1606         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1607         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1608         * gst/gstpad.h:
1609         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1610         (gst_xml_parse_file), (gst_xml_parse_memory),
1611         (gst_xml_get_element), (gst_xml_make_element):
1612         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1613         (_file_index_id_save_xml), (gst_file_index_commit):
1614         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1615         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1616         (load_paths):
1617         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1618         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1619         * tools/gst-complete.c: (main):
1620         * tools/gst-compprep.c: (main):
1621         * tools/gst-inspect.c: (print_element_properties_info):
1622         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1623         * tools/gst-xmlinspect.c: (print_element_properties):
1624         GCC 4 fixen.
1625         
1626 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1627
1628         * gst/gstplugin.c: (gst_plugin_check_module),
1629         (gst_plugin_check_file), (gst_plugin_load_file):
1630             apply patch from #172526 to make register work on MacOSX
1631
1632 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1633
1634         * docs/gst/tmpl/gstconfig.sgml:
1635         * gst/gstconfig.h.in:
1636           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1637         * testsuite/debug/printf_extension.c: (main):
1638           Do not use GST_PTR_FORMAT on pointers to types with
1639           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1640         * testsuite/elements/property.h:
1641           use correct printf format
1642
1643 2005-05-02  Wim Taymans  <wim@fluendo.com>
1644
1645         * docs/design/draft-push-pull.txt:
1646         * docs/design/draft-query.txt:
1647         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1648         (gst_basesrc_start):
1649         Added draft for new query API.
1650         Added draft for better selecting scheduling methods.
1651         Make basesrc ignore length if the subclass does not support
1652         it.
1653
1654 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1655
1656         * gst/Makefile.am:
1657           possible fixes for automake-1.5 - _LIBADD is reserved
1658
1659 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1660
1661         * docs/faq/Makefile.am:
1662         * docs/manual/Makefile.am:
1663         * docs/manuals.mak:
1664         * docs/pwg/Makefile.am:
1665         * gst/Makefile.am:
1666           possible fixes for automake-1.5
1667
1668 2005-04-28  Wim Taymans  <wim@fluendo.com>
1669
1670         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1671         (gst_basesink_pad_getcaps), (gst_basesink_init),
1672         (gst_basesink_do_sync):
1673         * gst/gstclock.c: (gst_clock_entry_new):
1674         * gst/gstevent.c: (gst_event_discont_get_value):
1675         * gst/gstpipeline.c: (pipeline_bus_handler),
1676         (gst_pipeline_change_state):
1677         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1678         Better debugging of clocking info.
1679         Allow NULL values when getting discont values.
1680
1681 2005-04-27  Wim Taymans  <wim@fluendo.com>
1682
1683         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1684         * check/gst/gstpad.c: (gst_pad_suite):
1685         Increase timeout for checks.
1686
1687 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1688
1689         * check/Makefile.am:
1690           fix the broken rule for cleanup.  Apparently this rule is
1691           only needed on FC2, so maybe this warrants further autotool
1692           inspection.
1693
1694 2005-04-26  Wim Taymans  <wim@fluendo.com>
1695
1696         * gst/gsttrashstack.h:
1697         Ooohh. a nasty one! After having a failed pop() from the stack,
1698         it's possible that the stack is empty. In that case, don't
1699         follow the NULL pointer.
1700
1701 2005-04-25  Wim Taymans  <wim@fluendo.com>
1702
1703         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1704         (gst_pad_set_checkgetrange_function),
1705         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1706         (gst_pad_check_pull_range), (gst_pad_pull_range),
1707         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1708         (gst_pad_pause_task), (gst_pad_stop_task):
1709         * gst/gstplugin.c: (gst_plugin_load):
1710         * gst/gstplugin.h:
1711         Remove gst_library_load as it does more harm than good with
1712         the new g_module flags.
1713         Revert bogus caps template check in pad linking, pad caps
1714         are important when linking not the template, which is more
1715         general than the current caps.
1716
1717 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1718
1719         * gst/autoplug/.cvsignore:
1720         * gst/autoplug/Makefile.am:
1721         * gst/autoplug/gstsearchfuncs.c:
1722         * gst/autoplug/gstsearchfuncs.h:
1723         * gst/autoplug/gstspider.c:
1724         * gst/autoplug/gstspider.h:
1725         * gst/autoplug/gstspideridentity.c:
1726         * gst/autoplug/gstspideridentity.h:
1727         * gst/autoplug/spidertest.c:
1728           Die, spider, die.
1729
1730 2005-04-25  Wim Taymans  <wim@fluendo.com>
1731
1732         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1733         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1734         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1735         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1736         * gst/gstpad.h:
1737         Added stubs for unimplemented functions. 
1738
1739 2005-04-24  David Schleef  <ds@schleef.org>
1740
1741         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1742         please fix.
1743
1744 2005-04-24  David Schleef  <ds@schleef.org>
1745
1746         Convert everything from GstAtomicInt to g_atomic_int_*, and
1747         remove gstatomic.
1748         * gst/Makefile.am:
1749         * gst/gstatomic.c:
1750         * gst/gstatomic.h:
1751         * gst/gstatomic_impl.h:
1752         * gst/gstbuffer.c:
1753         * gst/gstcaps.c:
1754         * gst/gstcaps.h:
1755         * gst/gstclock.c:
1756         * gst/gstclock.h:
1757         * gst/gstdata.c:
1758         * gst/gstdata.h:
1759         * gst/gstdata_private.h:
1760         * gst/gstevent.c:
1761         * gst/gstinfo.c:
1762         * gst/gstinfo.h:
1763         * gst/gstmessage.c:
1764         * gst/gstobject.c:
1765         * gst/gstobject.h:
1766         * gst/gststructure.c:
1767         * gst/gststructure.h:
1768         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1769         * gst/gstutils.h:
1770
1771 2005-04-24  David Schleef  <ds@schleef.org>
1772
1773         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1774         make the regressions tests work.  Remove some code that is no
1775         longer true.
1776         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1777         Disable warning for pads without templates.
1778
1779 2005-04-24  David Schleef  <ds@schleef.org>
1780
1781         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1782         functions that handle filtered links.
1783         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1784         removed functions.
1785         * gst/gstutils.c: Fix/remove utility functions that handle
1786         filtered caps.
1787         * gst/gstutils.h:
1788         * gst/gstvalue.c: Add serialization/deserialization of caps
1789         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1790         requires fixing so that the filter caps notation creates
1791         a capsfilter element and sets the filter_caps property.  I
1792         think everyone probably wants to keep the shorthand notation.
1793         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1794         * docs/gst/tmpl/gstpad.sgml:
1795
1796         * gst/elements/gstelements.c: Register capsfilter element.
1797         * gst/Makefile.am: fix spacing
1798         * docs/random/ds/0.9-suggested-changes: random
1799
1800 2005-04-23  David Schleef  <ds@schleef.org>
1801
1802         * gst/elements/Makefile.am:
1803         * gst/elements/gstcapsfilter.c: New element that acts like an
1804         identity, but filters caps.  Will eventually replace filtered
1805         caps in pad linking.
1806         * gst/gstutils.c: (gst_element_create_all_pads): New function
1807         to create all the ALWAYS pads that are registered with an
1808         element class.  This functionality should eventually be
1809         merged in with GstElement initialization.
1810         * gst/gstutils.h:
1811         * testsuite/trigger/README: part of trigger test code that should
1812         have been checked in a long time ago.
1813
1814 2005-04-23  David Schleef  <ds@schleef.org>
1815
1816         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1817         needed with new versions of libtool (nobody will confirm this),
1818         and hard to carry around.
1819         * gst/autoplug/Makefile.am:
1820         * gst/base/Makefile.am:
1821         * gst/elements/Makefile.am:
1822         * gst/indexers/Makefile.am:
1823         * gst/schedulers/Makefile.am:
1824         * libs/gst/bytestream/Makefile.am:
1825         * libs/gst/control/Makefile.am:
1826         * libs/gst/dataprotocol/Makefile.am:
1827         * libs/gst/getbits/Makefile.am:
1828
1829 2005-04-21  Wim Taymans  <wim@fluendo.com>
1830
1831         * docs/design/draft-push-pull.txt:
1832         * docs/design/part-MT-refcounting.txt:
1833         * docs/design/part-TODO.txt:
1834         * docs/design/part-caps.txt:
1835         * docs/design/part-events.txt:
1836         * docs/design/part-gstbus.txt:
1837         * docs/design/part-gstpipeline.txt:
1838         * docs/design/part-messages.txt:
1839         * docs/design/part-push-pull.txt:
1840         * docs/design/part-query.txt:
1841         Some more docs.
1842
1843 2005-04-21  Wim Taymans  <wim@fluendo.com>
1844
1845         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1846         (gst_message_new), (gst_message_new_error),
1847         (gst_message_new_warning), (gst_message_new_tag),
1848         (gst_message_new_state_changed), (gst_message_new_application),
1849         (gst_message_get_structure):
1850         * gst/gstmessage.h:
1851         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1852         (gst_structure_copy_conditional):
1853         Use parent refcount in GstMessage to ensure GstStructure
1854         consistency.
1855         Cleaned up headers a bit.
1856         
1857
1858 2005-04-20  Wim Taymans  <wim@fluendo.com>
1859
1860         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1861         (gst_basesink_pad_getcaps), (gst_basesink_init),
1862         (gst_basesink_chain_unlocked):
1863         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1864         (gst_type_find_helper):
1865         * gst/elements/gsttypefindelement.c:
1866         (gst_type_find_element_have_type), (gst_type_find_element_init),
1867         (stop_typefinding), (gst_type_find_element_handle_event),
1868         (find_suggest), (gst_type_find_element_chain),
1869         (gst_type_find_element_checkgetrange),
1870         (gst_type_find_element_getrange), (do_typefind),
1871         (gst_type_find_element_activate):
1872         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1873         (gst_buffer_default_free), (gst_buffer_default_copy),
1874         (gst_buffer_set_caps):
1875         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1876         (gst_caps_replace):
1877         * gst/gstmessage.c: (gst_message_new),
1878         (gst_message_new_state_changed):
1879         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1880         (gst_pad_set_checkgetrange_function),
1881         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1882         (gst_pad_set_caps), (gst_pad_check_pull_range),
1883         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1884         * gst/gstpad.h:
1885         * gst/gsttypefind.c: (gst_type_find_register):
1886         Make gst_caps_replace() work like other _replace() functions.
1887         Use _caps_replace() where possible.
1888         Make sure _message_new() initialises its field.
1889         Add gst_static_pad_template_get_caps()
1890
1891
1892 2005-04-18  Andy Wingo  <wingo@pobox.com>
1893
1894         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
1895         on the peer, not the pad. I think that was a typo. Pass an extra
1896         arg to see if random access is possible. Activate the pads as
1897         PULL_RANGE if possible.
1898
1899         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
1900
1901         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
1902         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
1903         to PROP_....
1904
1905 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1906
1907         * docs/faq/using.xml:
1908           Add note on gstreamer-properties (#154996).
1909
1910 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1911
1912         * docs/random/bbb/optional-properties:
1913           Some analysis on optional properties.
1914
1915 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1916
1917         * docs/gst/tmpl/gstelementfactory.sgml:
1918         * gst/gstelement.h:
1919         * gst/gstelementfactory.c: (gst_element_factory_init),
1920         (gst_element_factory_cleanup), (gst_element_register),
1921         (__gst_element_factory_add_static_pad_template),
1922         (gst_element_factory_get_static_pad_templates),
1923         (gst_element_factory_can_src_caps),
1924         (gst_element_factory_can_sink_caps):
1925         * gst/registries/Makefile.am:
1926         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
1927         (gst_xml_registry_class_init), (gst_xml_registry_init),
1928         (gst_xml_registry_new), (gst_xml_registry_set_property),
1929         (gst_xml_registry_get_property), (get_time), (make_dir),
1930         (gst_xml_registry_get_perms_func),
1931         (plugin_times_older_than_recurse), (plugin_times_older_than),
1932         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
1933         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
1934         (add_to_char_array), (read_string), (read_uint), (read_enum),
1935         (load_pad_template), (load_feature), (load_plugin), (load_paths),
1936         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
1937         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
1938         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
1939         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
1940         (gst_xml_registry_rebuild):
1941         * gst/registries/gstlibxmlregistry.h:
1942         * tools/gst-compprep.c: (main):
1943         * tools/gst-inspect.c: (print_pad_templates_info):
1944         * tools/gst-xmlinspect.c: (print_element_info):
1945           Use libxml2 for registry parsing, use staticpadtemplates in
1946           elementfactories. Makes gst_init() +/- 10x faster.
1947
1948 2005-04-12  Wim Taymans  <wim@fluendo.com>
1949
1950         * gst/base/Makefile.am:
1951         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1952         (gst_basesink_pad_getcaps), (gst_basesink_init),
1953         (gst_basesink_event), (gst_basesink_change_state):
1954         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
1955         (gst_basesrc_init), (gst_basesrc_query),
1956         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
1957         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
1958         (gst_basesrc_check_get_range), (gst_basesrc_loop),
1959         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
1960         (gst_basesrc_stop), (gst_basesrc_activate),
1961         (gst_basesrc_change_state):
1962         * gst/base/gsttypefindhelper.c: (helper_find_peek),
1963         (helper_find_suggest), (gst_type_find_helper):
1964         * gst/base/gsttypefindhelper.h:
1965         * gst/elements/Makefile.am:
1966         * gst/elements/gstelements.c:
1967         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1968         (gst_fakesink_get_times), (gst_fakesink_event),
1969         (gst_fakesink_preroll), (gst_fakesink_render):
1970         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1971         (gst_fakesrc_init), (gst_fakesrc_event_handler),
1972         (gst_fakesrc_get_property), (gst_fakesrc_create),
1973         (gst_fakesrc_start), (gst_fakesrc_stop):
1974         * gst/elements/gstfakesrc.h:
1975         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
1976         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
1977         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
1978         (gst_filesrc_create_read), (gst_filesrc_create),
1979         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
1980         (gst_filesrc_start):
1981         * gst/elements/gsttypefindelement.c:
1982         (gst_type_find_element_have_type), (gst_type_find_element_init),
1983         (start_typefinding), (stop_typefinding), (push_buffer_store),
1984         (gst_type_find_element_handle_event),
1985         (gst_type_find_element_chain),
1986         (gst_type_find_element_checkgetrange),
1987         (gst_type_find_element_getrange), (do_typefind),
1988         (gst_type_find_element_activate),
1989         (gst_type_find_element_change_state):
1990         * gst/elements/gsttypefindelement.h:
1991         * gst/gstpipeline.c: (pipeline_bus_handler):
1992         Added typefind helper.
1993         Small preroll fix in the base sink.
1994         Disable typefind code in basesrc.
1995         Crude port of typefindelement.
1996         Fakesrc cleanups.
1997
1998
1999 2005-04-11  Wim Taymans  <wim@fluendo.com>
2000
2001         * check/gst/gstbus.c: (gstbus_suite):
2002         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2003         * check/gstcheck.h:
2004           Fix up the timeout so that the test does not fail.
2005
2006 2005-04-06  Wim Taymans  <wim@fluendo.com>
2007
2008         * gst/base/README:
2009         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2010         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2011         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2012         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2013         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2014         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2015         (gst_basesrc_stop), (gst_basesrc_activate),
2016         (gst_basesrc_change_state), (basesrc_find_peek),
2017         (basesrc_find_suggest), (gst_basesrc_type_find):
2018         * gst/base/gstbasesrc.h:
2019         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2020         (gst_filesrc_class_init), (gst_filesrc_init),
2021         (gst_filesrc_finalize), (gst_filesrc_set_location),
2022         (gst_filesrc_set_property), (gst_filesrc_get_property),
2023         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2024         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2025         (gst_filesrc_create_read), (gst_filesrc_create),
2026         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2027         * gst/elements/gstfilesrc.h:
2028         * gst/gstelement.c: (gst_element_get_state_func),
2029         (gst_element_lost_state), (gst_element_pads_activate):
2030         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2031         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2032         (gst_pad_pull_range):
2033         * gst/gstpad.h:
2034         More work on the generic source base class, implement seeking,
2035         query.
2036         Make filesrc extend the base source class.
2037         Added gst_pad_set_checkgetrange_function to GstPad.
2038
2039 2005-04-06  Andy Wingo  <wingo@pobox.com>
2040
2041         * pkgconfig/gstreamer-base.pc.in:
2042         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2043
2044         * pkgconfig/Makefile.am:
2045         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2046
2047 2005-04-04  Wim Taymans  <wim@fluendo.com>
2048
2049         * gst/base/Makefile.am:
2050         * gst/base/README:
2051         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2052         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2053         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2054         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2055         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2056         (gst_basesrc_base_init), (gst_basesrc_class_init),
2057         (gst_basesrc_init), (gst_basesrc_get_formats),
2058         (gst_basesrc_get_query_types), (gst_basesrc_query),
2059         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2060         (gst_basesrc_set_property), (gst_basesrc_get_property),
2061         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2062         (gst_basesrc_loop), (gst_basesrc_activate),
2063         (gst_basesrc_change_state):
2064         * gst/base/gstbasesrc.h:
2065         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2066         (gst_fakesrc_class_init), (gst_fakesrc_init),
2067         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2068         (gst_fakesrc_get_property), (gst_fakesrc_create):
2069         * gst/elements/gstfakesrc.h:
2070         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2071         (gst_filesrc_open_file), (gst_filesrc_loop),
2072         (gst_filesrc_activate), (filesrc_find_peek),
2073         (gst_filesrc_type_find):
2074         Made base source class, make fakesrc extend it.
2075         Add comments to basesink class.
2076         Some filesrc cleanup.
2077
2078 2005-03-31  David Schleef  <ds@schleef.org>
2079
2080         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2081         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2082         expected to link against libgstreamer.
2083         * gst/base/Makefile.am: link against libgstreamer
2084         * gst/elements/Makefile.am: same
2085
2086 2005-03-31  Andy Wingo  <wingo@pobox.com>
2087
2088         * tests/instantiate/Makefile.am:
2089         * tests/instantiate/caps.c: Add test to test speed of caps copy
2090         and free.
2091
2092         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2093         GMemChunk to be fair.
2094
2095         * gst/gsttrashstack.h: Remove warning about using the fallback
2096         trash stack implementation, it's still faster than malloc.
2097
2098 2005-03-30  Andy Wingo  <wingo@pobox.com>
2099
2100         * tests/complexity.c: Add a copyright.
2101
2102 2005-03-31  Wim Taymans  <wim@fluendo.com>
2103
2104         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2105         (gst_base_transform_class_init), (gst_base_transform_init),
2106         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2107         (gst_base_transform_get_property),
2108         (gst_base_transform_sink_activate),
2109         (gst_base_transform_src_activate),
2110         (gst_base_transform_change_state):
2111         * gst/base/gstbasetransform.h:
2112         * gst/elements/gstidentity.c: (gst_identity_class_init),
2113         (gst_identity_event), (gst_identity_check_perfect),
2114         (gst_identity_transform), (gst_identity_start),
2115         (gst_identity_stop):
2116         Added start/stop methods to transform base class so subclasses 
2117         don't need to deal with state changes even.
2118
2119 2005-03-31  Wim Taymans  <wim@fluendo.com>
2120
2121         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2122         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2123         * gst/gstevent.h:
2124         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2125         (gst_pad_pull_range):
2126         Added rate to the discont event to prepare for variable speed
2127         and reverse playback.
2128
2129 2005-03-29  David Schleef  <ds@schleef.org>
2130
2131         * configure.ac:
2132         * testsuite/trigger/Makefile.am:
2133         * testsuite/trigger/trigger.c: A little example program to show
2134         how trigger-based elements can work.
2135
2136 2005-03-29  Wim Taymans  <wim@fluendo.com>
2137
2138         * gst/base/Makefile.am:
2139         * gst/base/README:
2140         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2141         (gst_basesink_base_init), (gst_basesink_class_init),
2142         (gst_basesink_pad_getcaps), (gst_basesink_init),
2143         (gst_basesink_activate), (gst_basesink_change_state):
2144         * gst/base/gstbasesink.h:
2145         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2146         (gst_base_transform_base_init), (gst_base_transform_finalize),
2147         (gst_base_transform_class_init), (gst_base_transform_init),
2148         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2149         (gst_base_transform_event), (gst_base_transform_getrange),
2150         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2151         (gst_base_transform_set_property),
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_finalize),
2158         (gst_identity_class_init), (gst_identity_init),
2159         (gst_identity_event), (gst_identity_check_perfect),
2160         (gst_identity_transform), (gst_identity_set_property),
2161         (gst_identity_get_property), (gst_identity_change_state):
2162         * gst/elements/gstidentity.h:
2163         * gst/gstelement.c: (gst_element_get_state_func),
2164         (gst_element_lost_state), (gst_element_pads_activate):
2165         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2166         (gst_pad_check_pull_range), (gst_pad_pull_range):
2167         * gst/gstpad.h:
2168         Simplify pad activation.
2169         Added function to check if pull_range can be performed.
2170         Error out when pulling inactive or flushing pads.
2171         Removed const from refcounted types as it does not make sense.
2172         Simplify pad templates in basesink
2173         Added base class for simple 1-to-1 transforms.
2174         Make identity subclass the base transform.
2175
2176 2005-03-29  Andy Wingo  <wingo@pobox.com>
2177
2178         * docs/libs/gstreamer-libs-overrides.txt: 
2179         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2180         really don't understand what's going on, but like whatever. I want
2181         green buildbot!
2182
2183         * docs/gst/Makefile.am:
2184         * docs/libs/Makefile.am: Dist the overrides files.
2185
2186         * check/Makefile.am (clean-local): Remove .libs directories.
2187
2188         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2189         elements to EXTRA_DIST, so po/ files are happy.
2190
2191         * po/POTFILES.in: Er, remove it here.
2192
2193         * po/POTFILES: Remove gstspider.c.
2194
2195         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2196
2197         * docs/libs/gstreamer-libs-docs.sgml: 
2198         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2199         bytestream.
2200
2201         * tests/complexity.c (main): Set the length of the preroll queue
2202         on the sinks to prevent a lockup.
2203
2204         * libs/gst/dataprotocol/Makefile.am: 
2205         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2206         the same as the one in check/gst-libs/gdp.c.
2207
2208         * po/, docs/gst/: Commit automatic changes to docs and po files.
2209
2210         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2211         the versioned libgstbase.
2212
2213         * check/Makefile.am: Depend on an unversioned gst-register, seems
2214         to make autoconf happier.
2215
2216         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2217
2218 2005-03-28  Wim Taymans  <wim@fluendo.com>
2219
2220         * configure.ac:
2221         * docs/design/part-gstelement.txt:
2222         * docs/design/part-negotiation.txt:
2223         * docs/design/part-preroll.txt:
2224         * docs/design/part-scheduling.txt:
2225         * docs/design/part-states.txt:
2226         * gst/Makefile.am:
2227         * gst/base/Makefile.am:
2228         * gst/base/README:
2229         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2230         (gst_basesink_base_init), (gst_basesink_class_init),
2231         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2232         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2233         (gst_basesink_set_pad_functions),
2234         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2235         (gst_basesink_set_property), (gst_basesink_get_property),
2236         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2237         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2238         (gst_basesink_preroll_queue_push),
2239         (gst_basesink_preroll_queue_empty),
2240         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2241         (gst_basesink_event), (gst_basesink_get_times),
2242         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2243         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2244         (gst_basesink_loop), (gst_basesink_activate),
2245         (gst_basesink_change_state):
2246         * gst/base/gstbasesink.h:
2247         * gst/elements/Makefile.am:
2248         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2249         (gst_fakesink_class_init), (gst_fakesink_init),
2250         (gst_fakesink_set_property), (gst_fakesink_get_property),
2251         (gst_fakesink_get_times), (gst_fakesink_event),
2252         (gst_fakesink_preroll), (gst_fakesink_render),
2253         (gst_fakesink_change_state):
2254         * gst/elements/gstfakesink.h:
2255         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2256         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2257         * gst/gstelement.c: (gst_element_add_pad),
2258         (gst_element_get_state_func), (gst_element_abort_state),
2259         (gst_element_commit_state), (gst_element_lost_state),
2260         (gst_element_set_state), (gst_element_pads_activate):
2261         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2262         * gst/gstpipeline.c: (gst_pipeline_send_event),
2263         (gst_pipeline_change_state):
2264         Added state change code.
2265         Added/updated docs.
2266         Added sink base class, make fakesink extend the base class.
2267         Small cleanups in GstPipeline.
2268
2269 2005-03-26  David Schleef  <ds@schleef.org>
2270
2271         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2272         is broken and should be implemented in a different library.
2273         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2274         * gst/gst.h: remove gstcpu.h
2275         * gst/gstcpu.c: remove
2276         * gst/gstcpu.h: remove
2277         * gst/Makefile.am.future: Remove this file.  It's ancient.
2278
2279 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2280
2281         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2282         (gst_bin_send_event):
2283           Add default event/set_manager handlers. The set_manager handler
2284           takes care that the manager is distributed over kids that were
2285           already in the bin before the manager was set. The event handler
2286           is a utility virtual function that sends the event over all sinks,
2287           so that gst_element_send_event (bin, event); has the expected
2288           behaviour.
2289         * gst/gstpad.c: (gst_pad_event_default):
2290           Re-install default event handling for discontinuities, so that
2291           seeking works without requiring hacks in applications or extra
2292           code in sinks.
2293         * gst/gstpipeline.c: (gst_pipeline_class_init),
2294         (gst_pipeline_send_event):
2295           Half hack, half utility: set a pipeline to PAUSED for seek events,
2296           since that is the only way we can guarantee a/v sync. Means that
2297           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2298           and it "just works".
2299
2300 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2301
2302         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2303           Lock/unlock mismatch.
2304
2305 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2306
2307         * docs/faq/gst-uninstalled:
2308           add gst-plugins-base
2309         * docs/gst/Makefile.am:
2310           don't error out until docs are fixed
2311         * docs/gst/gstreamer.types:
2312           remove thread
2313
2314 2005-03-22  Wim Taymans  <wim@fluendo.com>
2315
2316         * check/Makefile.am:
2317         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2318         * gst/gststructure.c: (gst_structure_set_valist),
2319         (gst_structure_copy_conditional):
2320         Activated more tests.
2321         Added message test.
2322         Added G_TYPE_POINTER to GstStructure.
2323         
2324
2325 2005-03-22  Wim Taymans  <wim@fluendo.com>
2326
2327         * docs/design/part-TODO.txt:
2328         * docs/design/part-events.txt:
2329         * docs/design/part-gstbin.txt:
2330         * docs/design/part-gstbus.txt:
2331         * docs/design/part-gstpipeline.txt:
2332         * docs/design/part-messages.txt:
2333         * gst/gstbus.c:
2334         * gst/gstmessage.c:
2335         Docs updates
2336
2337 2005-03-21  Wim Taymans  <wim@fluendo.com>
2338
2339         * gst/gstbus.c: (gst_bus_post):
2340         Fix copy-and-paste error.
2341
2342 2005-03-21  Wim Taymans  <wim@fluendo.com>
2343
2344         * check/Makefile.am:
2345         * gst/Makefile.am:
2346         * gst/elements/Makefile.am:
2347         * gst/elements/gstelements.c:
2348         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2349         (gst_fakesink_event), (gst_fakesink_chain):
2350         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2351         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2352         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2353         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2354         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2355         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2356         (gst_fakesrc_loop), (gst_fakesrc_activate),
2357         (gst_fakesrc_change_state):
2358         * gst/elements/gstfakesrc.h:
2359         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2360         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2361         (gst_filesrc_open_file), (gst_filesrc_loop),
2362         (gst_filesrc_activate), (gst_filesrc_change_state),
2363         (filesrc_find_peek), (filesrc_find_suggest),
2364         (gst_filesrc_type_find):
2365         * gst/elements/gstidentity.c: (gst_identity_finalize),
2366         (gst_identity_class_init), (gst_identity_init),
2367         (gst_identity_proxy_getcaps), (identity_queue_push),
2368         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2369         (gst_identity_getrange), (gst_identity_chain),
2370         (gst_identity_sink_loop), (gst_identity_src_loop),
2371         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2372         (gst_identity_set_property), (gst_identity_get_property),
2373         (gst_identity_change_state):
2374         * gst/elements/gstidentity.h:
2375         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2376         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2377         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2378         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2379         (gst_tee_sink_activate):
2380         * gst/elements/gsttee.h:
2381         * gst/gst.c: (gst_register_core_elements), (init_post):
2382         * gst/gst.h:
2383         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2384         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2385         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2386         (gst_bin_change_state):
2387         * gst/gstbin.h:
2388         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2389         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2390         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2391         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2392         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2393         (bus_watch_callback), (bus_watch_destroy),
2394         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2395         (poll_timeout), (gst_bus_poll):
2396         * gst/gstbus.h:
2397         * gst/gstcaps.h:
2398         * gst/gstdata.h:
2399         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2400         (gst_element_post_message), (gst_element_message_full),
2401         (gst_element_get_state_func), (gst_element_get_state),
2402         (gst_element_abort_state), (gst_element_commit_state),
2403         (gst_element_lost_state), (gst_element_set_state),
2404         (gst_element_pads_activate), (gst_element_change_state),
2405         (gst_element_dispose), (gst_element_set_manager_func),
2406         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2407         (gst_element_set_manager), (gst_element_get_manager),
2408         (gst_element_set_bus), (gst_element_get_bus),
2409         (gst_element_set_scheduler), (gst_element_get_scheduler):
2410         * gst/gstelement.h:
2411         * gst/gstevent.c: (gst_event_new_segment_seek),
2412         (gst_event_new_flush):
2413         * gst/gstevent.h:
2414         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2415         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2416         (gst_message_new_eos), (gst_message_new_error),
2417         (gst_message_new_warning), (gst_message_new_tag),
2418         (gst_message_new_state_changed), (gst_message_new_application),
2419         (gst_message_get_structure), (gst_message_parse_tag),
2420         (gst_message_parse_state_changed), (gst_message_parse_error),
2421         (gst_message_parse_warning):
2422         * gst/gstmessage.h:
2423         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2424         (gst_real_pad_set_property), (gst_pad_set_active),
2425         (gst_pad_is_active), (gst_pad_set_blocked_async),
2426         (gst_pad_set_blocked), (gst_pad_is_blocked),
2427         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2428         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2429         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2430         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2431         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2432         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2433         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2434         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2435         (gst_pad_set_caps), (gst_pad_configure_sink),
2436         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2437         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2438         (gst_real_pad_dispose), (gst_real_pad_finalize),
2439         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2440         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2441         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2442         * gst/gstpad.h:
2443         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2444         (pipeline_bus_handler), (gst_pipeline_change_state),
2445         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2446         * gst/gstpipeline.h:
2447         * gst/gstprobe.h:
2448         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2449         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2450         (gst_queue_link_src), (gst_queue_bufferalloc),
2451         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2452         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2453         (gst_queue_loop), (gst_queue_handle_src_event),
2454         (gst_queue_handle_src_query), (gst_queue_src_activate),
2455         (gst_queue_change_state):
2456         * gst/gstqueue.h:
2457         * gst/gstscheduler.c: (gst_scheduler_init),
2458         (gst_scheduler_dispose), (gst_scheduler_create_task),
2459         (gst_scheduler_factory_create):
2460         * gst/gstscheduler.h:
2461         * gst/gststructure.c: (gst_structure_get_type),
2462         (gst_structure_copy_conditional):
2463         * gst/gststructure.h:
2464         * gst/gsttaginterface.h:
2465         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2466         (gst_task_init), (gst_task_dispose), (gst_task_create),
2467         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2468         (gst_task_pause):
2469         * gst/gsttask.h:
2470         * gst/gstthread.c:
2471         * gst/gstthread.h:
2472         * gst/gsttypes.h:
2473         * gst/schedulers/Makefile.am:
2474         * gst/schedulers/cothreads_compat.h:
2475         * gst/schedulers/entryscheduler.c:
2476         * gst/schedulers/faircothreads.c:
2477         * gst/schedulers/faircothreads.h:
2478         * gst/schedulers/fairscheduler.c:
2479         * gst/schedulers/gstbasicscheduler.c:
2480         * gst/schedulers/gstoptimalscheduler.c:
2481         * gst/schedulers/gthread-cothreads.h:
2482         * gst/schedulers/threadscheduler.c:
2483         (gst_thread_scheduler_task_get_type),
2484         (gst_thread_scheduler_task_class_init),
2485         (gst_thread_scheduler_task_init),
2486         (gst_thread_scheduler_task_start),
2487         (gst_thread_scheduler_task_stop),
2488         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2489         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2490         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2491         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2492         (plugin_init):
2493         * libs/gst/Makefile.am:
2494         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2495         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2496         (gst_file_pad_parent_set):
2497         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2498         (gst_dp_event_from_packet):
2499         * tests/complexity.c: (main):
2500         * tests/mass_elements.c: (main):
2501         * testsuite/states/locked.c: (message_received), (main):
2502         * testsuite/states/parent.c: (main):
2503         * tools/gst-inspect.c: (print_element_flag_info),
2504         (print_implementation_info), (print_pad_info):
2505         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2506         (main):
2507         * tools/gst-md5sum.c: (event_loop), (main):
2508         * tools/gst-typefind.c: (main):
2509         * tools/gst-xmlinspect.c: (print_element_info):
2510         Next big merge.
2511         Added GstBus for mainloop integration.
2512         Added GstMessage for sending notifications on the bus.
2513         Added GstTask as an abstraction for pipeline entry points.
2514         Removed GstThread.
2515         Removed Schedulers.
2516         Simplified GstQueue for multithreaded core.
2517         Made _link threadsafe, removed old capsnego.
2518         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2519         Added pad blocking functions.
2520         Reworked scheduling functions in GstPad to prepare for
2521         scheduling updates soon.
2522         Moved events out of data stream.
2523         Simplified GstEvent types.
2524         Added return values to push/pull.
2525         Removed clocking from GstElement.
2526         Added prototypes for state change function for next merge.
2527         Removed iterate from bins and state change management.
2528         Fixed some elements, disabled others for now.
2529         Fixed -inspect and -launch.
2530         Added check for GstBus.
2531
2532 2005-03-10  Wim Taymans  <wim@fluendo.com>
2533
2534         * docs/design/part-MT-refcounting.txt:
2535         * docs/design/part-clocks.txt:
2536         * docs/design/part-gstelement.txt:
2537         * docs/design/part-gstobject.txt:
2538         * docs/design/part-standards.txt:
2539         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2540         (gst_bin_remove_func), (gst_bin_remove):
2541         * gst/gstbin.h:
2542         * gst/gstbuffer.c:
2543         * gst/gstcaps.h:
2544         * testsuite/clock/clock1.c: (main):
2545         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2546         (main):
2547         * testsuite/dlopen/loadgst.c: (do_test):
2548         * testsuite/refcounting/bin.c: (add_remove_test1),
2549         (add_remove_test2), (main):
2550         * testsuite/refcounting/element.c: (main):
2551         * testsuite/refcounting/element_pad.c: (main):
2552         * testsuite/refcounting/pad.c: (main):
2553         * tools/gst-launch.c: (sigint_handler_sighandler):
2554         * tools/gst-typefind.c: (main):
2555         Doc updates.
2556         Added doc about clock.
2557         removed gst_bin_iterate_recurse_up(), marked methods
2558         for removal.
2559         Fix more testsuites.
2560
2561 2005-03-09  Wim Taymans  <wim@fluendo.com>
2562
2563         * gst/gstpad.c: (gst_pad_get_direction),
2564         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2565         (gst_pad_collect_valist):
2566         * testsuite/bins/interface.c: (main):
2567         * testsuite/caps/audioscale.c: (test_caps):
2568         * testsuite/caps/caps.c: (test1), (test2), (test3):
2569         * testsuite/caps/deserialize.c: (main):
2570         * testsuite/caps/enumcaps.c: (main):
2571         * testsuite/caps/filtercaps.c: (main):
2572         * testsuite/caps/intersect2.c: (main):
2573         * testsuite/caps/random.c: (main):
2574         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2575         * testsuite/caps/sets.c: (check_caps):
2576         * testsuite/caps/simplify.c: (check_caps), (main):
2577         * testsuite/caps/subtract.c: (check_caps):
2578         Fix _pad_get_direction wrt ghostpads.
2579         Fix caps testsuite.
2580
2581 2005-03-09  Wim Taymans  <wim@fluendo.com>
2582
2583         * check/Makefile.am:
2584         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2585         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2586         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2587         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2588         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2589         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2590         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2591         (bin_element_is_sink), (gst_bin_iterate_sinks),
2592         (gst_bin_iterate_all_by_interface):
2593         * gst/gstbin.h:
2594         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2595         (gst_element_change_state), (gst_element_dispose),
2596         (gst_element_finalize), (gst_element_set_loop_function):
2597         * gst/gstelement.h:
2598         * gst/gstiterator.c: (find_custom_fold_func):
2599         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2600         (gst_pad_collectv), (gst_pad_collect_valist),
2601         (gst_pad_template_new):
2602         * gst/gstpipeline.c: (gst_pipeline_class_init),
2603         (gst_pipeline_dispose), (gst_pipeline_set_property),
2604         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2605         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2606         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2607         * gst/gstutils.h:
2608         * gst/schedulers/entryscheduler.c:
2609         * gst/schedulers/gstbasicscheduler.c:
2610         (gst_basic_scheduler_cothreaded_chain),
2611         (gst_basic_scheduler_chain_add_element):
2612         * testsuite/bins/interface.c: (main):
2613         Added GstBin test.
2614         Added GstSystemClock test.
2615         Implemented clock distribution code in GstBin.
2616         Implemented iterate sinks method for future use.
2617         Rearranged gstelement.h
2618         Fix GstIterator comparison bug.
2619         Moved some code to GstPipeline, mostly clocking related.
2620
2621 2005-03-09  Wim Taymans  <wim@fluendo.com>
2622
2623         * configure.ac:
2624         * gst/gst_private.h:
2625         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2626         (gst_bin_remove_func), (gst_bin_remove),
2627         (gst_bin_get_by_name_recurse_up):
2628         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2629         (gst_clock_id_compare_func), (gst_clock_id_wait),
2630         (gst_clock_id_wait_async), (gst_clock_init),
2631         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2632         * gst/gstelement.h:
2633         * gst/gstinfo.c: (_gst_debug_init):
2634         * gst/gstobject.h:
2635         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2636         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2637         * gst/gstpad.h:
2638         Bump version number, we're now 0.9.0
2639         Add future debugging category.
2640         Fix NULL _unref() in _get_by_name_recurse_up
2641         Rearrange gstpad.h.
2642         Update some docs.
2643
2644 2005-03-08  Wim Taymans  <wim@fluendo.com>
2645
2646         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2647         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2648         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2649         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2650         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2651         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2652         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2653         * gst/elements/gstidentity.c: (gst_identity_class_init):
2654         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2655         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2656         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2657         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2658         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2659         (gst_tee_link):
2660         * gst/gstelement.c: (gst_element_class_init),
2661         (gst_element_base_class_init), (gst_element_init),
2662         (gst_element_get_random_pad), (gst_element_wait_state_change),
2663         (gst_element_change_state), (gst_element_dispose),
2664         (gst_element_finalize), (gst_element_set_loop_function):
2665         * gst/gstelement.h:
2666         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2667         * gst/gstthread.c: (gst_thread_class_init),
2668         (gst_thread_release_children_locks), (gst_thread_change_state):
2669         * gst/schedulers/gstbasicscheduler.c:
2670         (gst_basic_scheduler_loopfunc_wrapper),
2671         (gst_basic_scheduler_chain_wrapper),
2672         (gst_basic_scheduler_src_wrapper),
2673         (gst_basic_scheduler_remove_element):
2674         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2675         Remove threadsafe properties. Fix elements because GObject
2676         complains when installing a property before declaring a
2677         set/get_property handler.
2678         Rearrange gstelement.h file, use STATE macros for state locks.
2679         Free mutexes in the finalize method instead of dispose.
2680
2681 2005-03-08  Wim Taymans  <wim@fluendo.com>
2682
2683         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2684         * gst/gstthread.c: (gst_thread_release_children_locks):
2685         Added parentage check.
2686         Fix build og GstThread again.
2687
2688 2005-03-08  Wim Taymans  <wim@fluendo.com>
2689
2690         * docs/design/part-MT-refcounting.txt:
2691         * docs/design/part-conventions.txt:
2692         * docs/design/part-gstobject.txt:
2693         * docs/design/part-relations.txt:
2694         * docs/design/part-standards.txt:
2695         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2696         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2697         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2698         (gst_bin_iterate_all_by_interface):
2699         * gst/gstbuffer.h:
2700         * gst/gstclock.h:
2701         * gst/gstelement.c: (gst_element_class_init),
2702         (gst_element_change_state), (gst_element_set_loop_function):
2703         * gst/gstelement.h:
2704         * gst/gstiterator.c:
2705         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2706         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2707         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2708         (gst_object_set_parent), (gst_object_unparent),
2709         (gst_object_check_uniqueness):
2710         * gst/gstobject.h:
2711         Docs updates, clean up some headers.
2712
2713 2005-03-07  Wim Taymans  <wim@fluendo.com>
2714
2715         * check/.cvsignore:
2716         * check/Makefile.am:
2717         * check/gst-libs/.cvsignore:
2718         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2719         * check/gst/.cvsignore:
2720         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2721         (START_TEST), (gstbus_suite), (main):
2722         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2723         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2724         (gst_data_suite), (main):
2725         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2726         (add_fold_func), (gstiterator_suite), (main):
2727         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2728         (thread_name_object), (thread_name_object_default),
2729         (gst_object_name_compare), (gst_object_suite), (main):
2730         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2731         (gst_pad_suite), (main):
2732         * check/gstcheck.c: (gst_check_log_message_func),
2733         (gst_check_log_critical_func), (gst_check_init):
2734         * check/gstcheck.h:
2735         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2736         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2737         Added checks.
2738
2739 2005-03-07  Wim Taymans  <wim@fluendo.com>
2740
2741         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2742         (gst_list_iterator_next), (gst_list_iterator_resync),
2743         (gst_list_iterator_free), (gst_iterator_new_list),
2744         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2745         (gst_iterator_free), (gst_iterator_push), (filter_next),
2746         (filter_resync), (filter_uninit), (filter_free),
2747         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2748         (gst_iterator_foreach), (find_custom_fold_func),
2749         (gst_iterator_find_custom):
2750         * gst/gstiterator.h:
2751         Added missing files.
2752
2753 2005-03-07  Wim Taymans  <wim@fluendo.com>
2754
2755         * Makefile.am:
2756         * configure.ac:
2757         * docs/design/part-MT-refcounting.txt:
2758         * docs/design/part-conventions.txt:
2759         * docs/design/part-gstobject.txt:
2760         * docs/design/part-relations.txt:
2761         * examples/mixer/mixer.c: (main):
2762         * examples/thread/thread.c: (eos), (main):
2763         * gst/Makefile.am:
2764         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2765         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2766         (gst_spider_plug_from_srcpad):
2767         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2768         (gst_spider_identity_change_state),
2769         (gst_spider_identity_sink_loop_type_finding):
2770         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2771         * gst/elements/gstidentity.c: (gst_identity_init):
2772         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2773         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2774         * gst/elements/gsttypefindelement.c: (free_entry):
2775         * gst/gst.c:
2776         * gst/gst.h:
2777         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2778         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2779         (gst_bin_set_index), (gst_bin_set_element_sched),
2780         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2781         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2782         (gst_bin_iterate_elements), (iterate_child_recurse),
2783         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2784         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2785         (compare_interface), (gst_bin_get_by_interface),
2786         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2787         * gst/gstbin.h:
2788         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2789         (gst_buffer_default_free), (gst_buffer_default_copy),
2790         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2791         (gst_buffer_create_sub):
2792         * gst/gstbuffer.h:
2793         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2794         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2795         (gst_caps_unref), (gst_static_caps_get),
2796         (gst_caps_remove_and_get_structure), (gst_caps_append),
2797         (gst_caps_append_structure), (gst_caps_remove_structure),
2798         (gst_caps_copy_nth), (gst_caps_set_simple),
2799         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2800         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2801         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2802         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2803         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2804         (gst_caps_structure_figure_out_union),
2805         (gst_caps_switch_structures), (gst_caps_do_simplify),
2806         (gst_caps_replace), (gst_caps_from_string),
2807         (gst_caps_copy_conditional):
2808         * gst/gstcaps.h:
2809         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2810         (_gst_clock_id_free), (gst_clock_id_unref),
2811         (gst_clock_id_compare_func), (gst_clock_id_wait),
2812         (gst_clock_id_wait_async), (gst_clock_class_init),
2813         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2814         (gst_clock_get_time), (gst_clock_set_time_adjust),
2815         (gst_clock_set_property), (gst_clock_get_property):
2816         * gst/gstclock.h:
2817         * gst/gstcompat.h:
2818         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2819         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2820         * gst/gstdata.h:
2821         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2822         (gst_element_requires_clock), (gst_element_provides_clock),
2823         (gst_element_set_clock), (gst_element_clock_wait),
2824         (gst_element_wait), (gst_element_set_time_delay),
2825         (gst_element_is_indexable), (gst_element_add_pad),
2826         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2827         (pad_compare_name), (gst_element_get_static_pad),
2828         (gst_element_request_pad), (gst_element_get_request_pad),
2829         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2830         (gst_element_class_get_pad_template_list),
2831         (gst_element_class_get_pad_template), (gst_element_error_func),
2832         (gst_element_get_random_pad), (gst_element_get_event_masks),
2833         (gst_element_send_event), (gst_element_seek),
2834         (gst_element_get_query_types), (gst_element_query),
2835         (gst_element_get_formats), (gst_element_convert),
2836         (gst_element_is_locked_state), (gst_element_set_locked_state),
2837         (gst_element_sync_state_with_parent), (gst_element_change_state),
2838         (gst_element_finalize), (gst_element_yield),
2839         (gst_element_interrupt), (gst_element_set_scheduler),
2840         (gst_element_get_scheduler), (gst_element_set_loop_function):
2841         * gst/gstelement.h:
2842         * gst/gstevent.h:
2843         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2844         (gst_format_get_by_nick), (gst_format_get_details),
2845         (gst_format_iterate_definitions):
2846         * gst/gstformat.h:
2847         * gst/gstindex.c: (gst_index_gtype_resolver):
2848         * gst/gstinfo.c:
2849         * gst/gstinfo.h:
2850         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2851         (gst_mem_chunk_free):
2852         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2853         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2854         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2855         (gst_object_dispatch_properties_changed),
2856         (gst_object_set_name_default), (gst_object_set_name),
2857         (gst_object_get_name), (gst_object_set_name_prefix),
2858         (gst_object_get_name_prefix), (gst_object_set_parent),
2859         (gst_object_get_parent), (gst_object_unparent),
2860         (gst_object_check_uniqueness), (gst_object_save_thyself),
2861         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2862         (gst_object_set_property), (gst_object_get_property),
2863         (gst_object_get_path_string):
2864         * gst/gstobject.h:
2865         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2866         (gst_real_pad_init), (gst_real_pad_get_property),
2867         (gst_pad_custom_new), (gst_pad_get_direction),
2868         (gst_pad_set_active), (gst_pad_is_active),
2869         (gst_pad_set_event_function), (gst_pad_is_linked),
2870         (gst_pad_link_free), (gst_pad_link_intersect),
2871         (gst_pad_link_fixate), (gst_pad_set_caps),
2872         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2873         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2874         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2875         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2876         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2877         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2878         (gst_pad_realize), (gst_pad_get_allowed_caps),
2879         (gst_real_pad_dispose), (gst_real_pad_finalize),
2880         (gst_pad_collectv), (gst_pad_collect_valist),
2881         (gst_pad_template_dispose), (gst_pad_template_new),
2882         (gst_pad_get_internal_links):
2883         * gst/gstpad.h:
2884         * gst/gstpipeline.c: (gst_pipeline_dispose),
2885         (gst_pipeline_change_state):
2886         * gst/gstpipeline.h:
2887         * gst/gstplugin.c:
2888         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2889         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2890         * gst/gstpluginfeature.h:
2891         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
2892         * gst/gstquery.c: (_gst_query_type_initialize),
2893         (gst_query_type_register), (gst_query_type_get_by_nick),
2894         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
2895         * gst/gstquery.h:
2896         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
2897         * gst/gstscheduler.c: (gst_scheduler_add_element),
2898         (gst_scheduler_factory_create):
2899         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2900         (gst_structure_free), (gst_structure_set_name),
2901         (gst_structure_id_set_value), (gst_structure_set_value),
2902         (gst_structure_set_valist), (gst_structure_remove_field),
2903         (gst_structure_remove_fields),
2904         (gst_structure_remove_fields_valist),
2905         (gst_structure_remove_all_fields), (gst_structure_foreach),
2906         (gst_structure_map_in_place),
2907         (gst_caps_structure_fixate_field_nearest_int),
2908         (gst_caps_structure_fixate_field_nearest_double):
2909         * gst/gststructure.h:
2910         * gst/gstsystemclock.c: (gst_system_clock_class_init),
2911         (gst_system_clock_init), (gst_system_clock_dispose),
2912         (gst_system_clock_async_thread),
2913         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
2914         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
2915         * gst/gstsystemclock.h:
2916         * gst/gsttag.c: (gst_tag_list_add_value_internal),
2917         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
2918         * gst/gsttaginterface.c:
2919         * gst/gstthread.c: (gst_thread_dispose),
2920         (gst_thread_release_children_locks), (gst_thread_change_state),
2921         (gst_thread_main_loop):
2922         * gst/gsttrashstack.h:
2923         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
2924         * gst/gsttypes.h:
2925         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
2926         (gst_element_request_pad), (gst_element_get_pad_from_template),
2927         (gst_element_request_compatible_pad),
2928         (gst_element_get_compatible_pad_filtered),
2929         (gst_element_get_compatible_pad), (gst_element_state_get_name),
2930         (gst_element_link_pads_filtered), (gst_element_link_filtered),
2931         (gst_element_link_many), (gst_element_link),
2932         (gst_element_link_pads), (gst_element_unlink_pads),
2933         (gst_element_unlink_many), (gst_element_unlink),
2934         (gst_pad_can_link_filtered), (gst_pad_can_link),
2935         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
2936         (gst_object_default_error), (gst_bin_add_many),
2937         (gst_bin_remove_many), (gst_element_populate_std_props),
2938         (gst_element_class_install_std_props), (gst_buffer_merge),
2939         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
2940         (link_fold_func), (gst_pad_proxy_setcaps):
2941         * gst/gstutils.h:
2942         * gst/gstvalue.c: (gst_value_deserialize_string):
2943         * gst/parse/grammar.y:
2944         * gst/schedulers/gstbasicscheduler.c:
2945         (gst_basic_scheduler_cothreaded_chain),
2946         (gst_basic_scheduler_chain_recursive_add),
2947         (gst_basic_scheduler_pad_link):
2948         * gst/schedulers/gstoptimalscheduler.c:
2949         (get_group_schedule_function),
2950         (gst_opt_scheduler_state_transition),
2951         (gst_opt_scheduler_add_element), (element_get_reachables_func):
2952         * libs/gst/bytestream/bytestream.c:
2953         * libs/gst/dataprotocol/dataprotocol.c:
2954         (gst_dp_header_from_buffer):
2955         * po/nb.po:
2956         * po/ru.po:
2957         * tests/threadstate/threadstate2.c: (eos):
2958         * tools/gst-compprep.c: (main):
2959         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
2960         (print_pad_info), (print_children_info):
2961         * tools/gst-launch.c: (idle_func), (main):
2962         * tools/gst-md5sum.c: (idle_func), (main):
2963         * tools/gst-xmlinspect.c: (print_element_info):
2964         First THREADED backport attempt, focusing on adding locks and
2965         making sure the API is threadsafe. Needs more work. More docs
2966         follow this week.
2967
2968 2005-02-24  Andy Wingo  <wingo@pobox.com>
2969
2970         * tests/bench-complexity.scm:
2971         * tests/complexity.gnuplot: New files, good for running complexity
2972         benchmarks.
2973
2974         * tests/Makefile.am:
2975         * tests/complexity.c: New test, sets up N elements, at each level
2976         teeing into M streams per element. Eeeenteresting.
2977
2978         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
2979         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
2980         running bench-mass_elements.scm.
2981
2982         * tests/bench-mass_elements.scm: New script, runs mass_elements
2983         for various numbers of identities, outputting the results to a
2984         file. Requires guile 1.6. Just for testing.
2985
2986 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
2987
2988         * gst/schedulers/fairscheduler.c:
2989           compile with debug disabled
2990
2991 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
2992
2993         * configure.ac:
2994           hunting season on 0.9 is now OPEN
2995
2996 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
2997
2998         * docs/libs/tmpl/gstcontrol.sgml:
2999         * docs/libs/tmpl/gstdparam.sgml:
3000         * docs/libs/tmpl/gstdplinint.sgml:
3001         * docs/libs/tmpl/gstdpman.sgml:
3002         * docs/libs/tmpl/gstdpsmooth.sgml:
3003         * docs/libs/tmpl/gstunitconvert.sgml:
3004           more docs for the state of dparams
3005
3006 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3007
3008         * gst/gstelementfactory.c: (gst_element_factory_create):
3009         * gst/gstobject.c: (gst_object_init),
3010         (gst_object_set_name_default), (gst_object_set_name):
3011           name objects by default, not in gst_element_factory_create. Allows
3012           using elements created with g_object_new. (fixes #167283)
3013
3014 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3015
3016         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3017           make the time that debugging functions print relative to when
3018           gst_init was called
3019
3020 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3021
3022         * gst/gsttaginterface.c:
3023           Fix inline docs: tag setter vararg functions are NULL-terminated,
3024           GST_TAG_INVALID doesn't exist any more.
3025
3026 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3027
3028         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3029         Allocate the 1 byte more memory that was forgotten!!!!!
3030         fixes memory corruption on 64bit platforms
3031
3032 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3033
3034         * docs/pwg/building-pads.xml:
3035         * docs/pwg/intro-basics.xml:
3036           fixed a few typos, relabeled introductionary list of types
3037         * docs/random/ensonic/dparams.txt:
3038           more notes abut dparam changes
3039         * libs/gst/control/dparam.c: (gst_dparam_attach):
3040         * libs/gst/control/dparammanager.c:
3041         * libs/gst/control/dparammanager.h:
3042           - many comments and notes on dparam implementation
3043           - new dparams are were not initialized to the default value
3044             from param spec
3045
3046 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3047
3048         submitted by: Peter Astakhov
3049
3050         * po/LINGUAS:
3051         * po/ru.po:
3052           adding Russian translation
3053
3054 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3055
3056         * configure.ac:
3057         * docs/gst/Makefile.am:
3058         * docs/libs/Makefile.am:
3059           make sure popt is added to gtk-doc flags.  Fixes #147782.
3060
3061 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3062
3063         * docs/faq/using.xml:
3064           Fix typo in FAQ (artssink => artsdsink)
3065
3066 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3067
3068         * tools/gst-launch.1.in:
3069           Fix typo (#166699).
3070
3071 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3072
3073         * docs/faq/using.xml:
3074           Add -v argument to fakesrc/fakesink gst-launch line,
3075           so that the promised output will actually show up.
3076
3077 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3078
3079         * gst/gstthread.c: (gst_thread_change_state):
3080           Implement state-change error handling (#166073).
3081
3082 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3083
3084         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3085           Release interrupt after handling (#166250).
3086
3087 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3088
3089         * configure.ac:
3090           back to HEAD
3091
3092 === release 0.8.9 ===
3093
3094 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3095
3096         * NEWS:
3097         * RELEASE:
3098         * configure.ac:
3099           releasing 0.8.9, "Like Eating Glass"
3100
3101 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3102
3103         submitted by: Clytie Siddall
3104
3105         * po/vi.po: Added Vietnamese translation
3106
3107 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3108
3109         patch by: Tim Philipp-Müller
3110
3111         * configure.ac:
3112         * gst/gstpad.c:
3113           unref data when probe function returns FALSE.  Fixes #166362
3114
3115 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3116
3117         * gst/gst.c: (gst_init_get_popt_table):
3118           Fix typo (#166269).
3119
3120 2005-02-04  Andy Wingo  <wingo@pobox.com>
3121
3122         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3123         the debugging on whether the caps are compatible.
3124
3125 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3126
3127         * docs/manual/basics-elements.xml:
3128           Fix two typos.
3129
3130 2005-02-02  Wim Taymans  <wim@fluendo.com>
3131
3132         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3133         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3134         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3135         Remove some FIXMEs after analysing and commenting why they
3136         are not issues.
3137
3138 2005-02-02  Wim Taymans  <wim@fluendo.com>
3139
3140         * gst/schedulers/gstoptimalscheduler.c:
3141         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3142         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3143         (get_invalid_call), (chain_invalid_call),
3144         (get_group_schedule_function), (loop_group_schedule_function),
3145         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3146         (gst_opt_scheduler_state_transition),
3147         (gst_opt_scheduler_add_element),
3148         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3149         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3150         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3151         (gst_opt_scheduler_show):
3152         Added lock to protect scheduler data structures.
3153
3154 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3155
3156         * testsuite/threads/threadi.c: (cb_data):
3157           Fix buglet in test.
3158
3159 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3160
3161         * testsuite/threads/Makefile.am:
3162         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3163           On Wim's request, split the test in three separately-compiled
3164           tests that each test a very specific bug. Two of them still fail,
3165           will create bugs for those. threadi.c indicates why they fail.
3166
3167 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3168
3169         * gst/schedulers/gstoptimalscheduler.c:
3170         (get_group_schedule_function):
3171           Try to work with the threading mess that queue_link is.
3172
3173 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3174
3175         * gst/gstbin.c: (gst_bin_remove_func):
3176           Explicitely make an element release locks in a group when being
3177           remove from a bin.
3178         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3179           If there's no scheduler, always return immediately (similar to
3180           gst_element_interrupt).
3181
3182 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3183
3184         * gst/gstbin.c: (gst_bin_child_state_change_func):
3185           Remove a piece of code that could never be reached.
3186         * docs/gst/gstreamer-sections.txt:
3187         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3188         (gst_pad_call_get_function):
3189         * gst/gstpad.h:
3190         * testsuite/pad/Makefile.am:
3191           Fix #150546, enable tests.
3192
3193 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3194
3195         * docs/pwg/advanced-types.xml:
3196           Fix description for buffer-frames=0.
3197         * docs/gst/tmpl/gstbin.sgml:
3198         * gst/gstbin.c: (gst_bin_child_state_change_func),
3199         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3200         * gst/gstbin.h:
3201         * testsuite/threads/Makefile.am:
3202         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3203         (cb_state), (cb_play), (main):
3204           Fix non-recursive state changes to *really* change the state
3205           of the object, and not just call parent_class->state_change.
3206           Fix a lot of lockups caused by this. Fixes #132775. Add test
3207           for the problem. Also enable test to show #142588 (fixed).
3208         * gst/gstthread.c: (gst_thread_change_state),
3209         (gst_thread_child_state_change):
3210           Don't exit the thread if we go to NULL and are inside thread
3211           context. Instead, return control to the main thread context
3212           and exit from there.
3213         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3214           Don't unset virtual functions, since those may still be used.
3215           That's not necessarily correct, but suffices for now.
3216         * configure.ac:
3217         * testsuite/Makefile.am:
3218         * testsuite/pad/Makefile.am:
3219         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3220         (gst_test_sink_base_init), (gst_test_sink_chain),
3221         (gst_test_sink_init), (main):
3222         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3223         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3224         (main):
3225         * testsuite/pad/link.c: (gst_test_element_class_init),
3226         (gst_test_element_base_init), (gst_test_src_get),
3227         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3228         (gst_test_filter_loop), (gst_test_filter_init),
3229         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3230         (cb_error), (main):
3231           Add tests to show #150546. Pass, but should fail (currently
3232           disabled from the testsuite).
3233         * gst/gstscheduler.c: (gst_scheduler_dispose):
3234           Dereference child schedulers on dispose (#94464).
3235         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3236           Fix typo.
3237         * testsuite/threads/thread.c: (main):
3238           Add more debug.
3239
3240 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3241
3242         * gst/gstpad.c: (gst_pad_push):
3243           Oops, revert previous commit, broke testsuite...
3244
3245 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3246
3247         * gst/gstpad.c: (gst_pad_push):
3248           Add check that the pad on which the push is performed is not a
3249           get-based pad (#150546).
3250
3251 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3252
3253         * gst/elements/gsttypefindelement.c:
3254         (gst_type_find_element_handle_event):
3255           Fix buffer pushing if stream EOSes during typefinding.
3256
3257 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3258
3259         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3260
3261         * gst/gstvalue.c: (gst_string_wrap):
3262           Allow NULL-strings as argument (#165365).
3263
3264 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3265
3266         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3267
3268         * gst/schedulers/faircothreads.c:
3269         (gst_fair_scheduler_cothread_queue_show):
3270           Fix build without debug enabled.
3271
3272 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3273
3274         * docs/gst/gstreamer-sections.txt:
3275         * docs/libs/gstreamer-libs-docs.sgml:
3276         * docs/libs/gstreamer-libs-sections.txt:
3277         * docs/libs/tmpl/gstcontrol.sgml:
3278         * docs/libs/tmpl/gstdparam.sgml:
3279         * docs/libs/tmpl/gstdplinint.sgml:
3280         * docs/libs/tmpl/gstdpman.sgml:
3281         * docs/libs/tmpl/gstdpsmooth.sgml:
3282         * docs/libs/tmpl/gstputbits.sgml:
3283         * docs/libs/tmpl/gstunitconvert.sgml:
3284         * libs/gst/control/dparam.c:
3285         * libs/gst/control/dparam.h:
3286         * libs/gst/control/dparammanager.c:
3287         (gst_dpman_add_required_dparam_callback),
3288         (gst_dpman_add_required_dparam_direct),
3289         (gst_dpman_add_required_dparam_array),
3290         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3291         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3292         (gst_dpman_get_manager)
3293           restructured DParam docs
3294
3295 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3296
3297         * gst-element-check.m4:
3298           Only check for gst-inspect if we haven't already
3299           found it in previous element check runs
3300
3301 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3302
3303         * docs/gst/Makefile.am:
3304         * docs/libs/Makefile.am:
3305           fixed install rules to treat style.css as optional
3306
3307 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3308
3309         * docs/gst/Makefile.am:
3310         * docs/libs/Makefile.am:
3311           install style.css along with docs
3312         * docs/gst/tmpl/gstbin.sgml:
3313         * docs/gst/tmpl/gstclock.sgml:
3314         * docs/gst/tmpl/gstdata.sgml:
3315         * docs/gst/tmpl/gstelement.sgml:
3316         * gst/gstbin.h:
3317         * gst/gstelement.c: (gst_element_class_init):
3318         * gst/gstelement.h:
3319           fixing incomplete docs
3320
3321 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3322
3323         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3324           Don't unref seek event twice when fflush() fails
3325           
3326 2005-01-22  David Schleef  <ds@schleef.org>
3327
3328         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3329
3330 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3331
3332         * docs/gst/Makefile.am:
3333         * docs/libs/Makefile.am:
3334           added params for deprecation guards
3335         * gst/gst.c:
3336         * gst/gst.h:
3337         * gst/gsterror.c: (_gst_resource_errors_init),
3338         (_gst_stream_errors_init):
3339         * gst/gsterror.h:
3340           documented some more enums
3341
3342 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3343         * gst/autoplug/gstspideridentity.c:
3344         Cosmetic fix - spider_find_peek should be static
3345         * gst/parse/parse.l:
3346         Applying fix for #164261
3347
3348 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3349
3350         * docs/gst/gstreamer-sections.txt:
3351         * docs/gst/tmpl/gstplugin.sgml:
3352         * docs/libs/gstreamer-libs-sections.txt:
3353         * docs/libs/tmpl/gstcontrol.sgml:
3354         * gst/gstbuffer.h:
3355         * gst/gsttag.h:
3356         * gst/gstvalue.c:
3357           added docs for the TAG defines
3358
3359 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3360
3361         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3362           Only unref entry if there is an entry.
3363
3364 2005-01-17  Wim Taymans  <wim@fluendo.com>
3365
3366         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3367         (remove_from_group), (schedule_group), (normalize_group),
3368         (gst_opt_scheduler_iterate):
3369         Also ref/unref decoupled elements before iterating the
3370         group since they are not added to the list of elements.
3371
3372 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3373
3374         * docs/manual/highlevel-components.xml:
3375           Add subtitle/streamselection as new features to playbin.
3376
3377 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3378
3379         * docs/manual/manual.xml:
3380           Re-enable dataaccess docs (oops).
3381
3382 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3383
3384         * docs/pwg/advanced-types.xml:
3385         * docs/random/mimetypes:
3386           Add documentation on libsndfile types (#163309), by Steve Baker
3387           <steve@stevebaker.org>.
3388         * gst/gstelement.c: (gst_element_release_request_pad):
3389           If an element has no explicit function, just remove the pad.
3390
3391 2005-01-17  Luca Ognibene  <luogni@tin.it>
3392
3393         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3394
3395         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3396           Fix memleak (#163801).
3397
3398 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3399
3400         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3401           I think this is actually more correct...
3402
3403 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3404
3405         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3406           Another workaround for memory access while destroyed in callback.
3407           Please, someone with refcount knowledge, have a look at this.
3408
3409 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3410
3411         * docs/faq/faq.xml:
3412         * docs/faq/legal.xml:
3413           move the legal Q&A here
3414
3415 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3416
3417         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3418         (gst_tee_request_new_pad):
3419           Fix negotiation.
3420
3421 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3422
3423         * docs/random/omega/caps2:
3424         * testsuite/caps/caps_strings:
3425           replace framerate aproximations by their real value
3426           (24000/1001, 30000/1001, 60000/1001)
3427           Partially fixes bug #164049
3428
3429 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3430
3431         * docs/gst/Makefile.am:
3432           don't fail on the stupid GstPoptOption
3433
3434 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3435
3436         * gst/gstpad.h:
3437         * gst/gstprobe.c:
3438           allow probes to work on ghost pads by realizing the pad
3439           probe debugging
3440
3441 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3442
3443         * docs/gst/gstreamer-sections.txt:
3444         * docs/gst/tmpl/gstpad.sgml:
3445         * gst/gstpad.c: (gst_pad_set_active_recursive):
3446         * gst/gstpad.h:
3447           Add gst_pad_set_active_recursive().
3448
3449 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3450
3451         * docs/random/release:
3452           updates
3453         * gst/gst_private.h:
3454         * gst/gstinfo.c:
3455         * gst/gstobject.c:
3456           move deep_notify logging to a new category
3457         * gst/gstprobe.c:
3458         * gst/gstprobe.h:
3459           add stuff so bindings can wrap probes
3460
3461 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3462
3463         * gst/gstplugin.c: (gst_plugin_load):
3464           Fix plugin loading if plugin/lib was already loaded. Fixes
3465           #163383
3466
3467 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3468
3469         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3470
3471         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3472           Protect plugin loading by a mutex so it's threadsafe. Fixes
3473           #163234.
3474
3475 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3476
3477         * gst/gstevent.c: (_gst_event_copy):
3478           Reference source object when copying events, since it'll be
3479           dereferenced on event dereferencing as well.
3480
3481 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3482
3483         * docs/gst/gstreamer-sections.txt:
3484         * docs/gst/tmpl/gstevent.sgml:
3485         * gst/gstevent.c: (gst_event_new_filler_stamped),
3486         (gst_event_filler_get_duration):
3487         * gst/gstevent.h:
3488           Add two new functions for filler events (which are used to
3489           synchronize streams if one of them is not having any data
3490           for a while) without interrupting the actual data-stream.
3491           Basically a no-op.
3492         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3493         (gst_queue_link_sink), (gst_queue_link_src),
3494         (gst_queue_change_state):
3495           Allow for renegotiation while filled. Required for stream
3496           switching while playing.
3497
3498 2005-01-08  Benjamin Otte  <otte@gnome.org>
3499
3500         * gst/gstelement.c: (gst_element_link_many):
3501           fix up g_return_if_fail's
3502         * po/LINGUAS:
3503         * po/de.po:
3504           add German translation, that was somehow not included
3505
3506 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3507
3508         * docs/random/mimetypes:
3509           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3510           do not add them to riff-lib as they are not common
3511
3512 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3513
3514         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3515           Check for existence of probe after performing the probe before
3516           re-accessing it to prevent segfaults caused by removal of the
3517           probe in the callback.
3518
3519 2005-01-05  David Schleef  <ds@schleef.org>
3520
3521         * testsuite/registry/Makefile.am:
3522         * testsuite/registry/gst-print-formats.c:
3523         (print_pad_templates_info), (print_element_list),
3524         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3525         (g_list_uniqify), (get_pad_templates_info),
3526         (get_element_mime_list), (print_mime_list), (main): A little
3527         program that looks through the registry to find elements of
3528         a given type.  Not particularly interesting as a test, except
3529         that there's no other test covering the same area.
3530
3531 2005-01-05  David Schleef  <ds@schleef.org>
3532
3533         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3534         (fault_handler_sigaction), (fault_spin),
3535         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3536         in signal.h-type signal handlers by not calling forbidden functions,
3537         including gst_element_set_state().
3538
3539 2005-01-05  David Schleef  <ds@schleef.org>
3540
3541         * gst/gstvalue.h: Mark _gst_reserved[] as private
3542
3543 2005-01-05  David Schleef  <ds@schleef.org>
3544
3545         * gst/gstvalue.c: Fix doc build problem.
3546
3547 2005-01-05  David Schleef  <ds@schleef.org>
3548
3549         * gst/gstvalue.c: Add some documentation
3550
3551 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3552
3553         * docs/README:
3554           another shell oneliner for empty return value docs
3555         * gst/gstcaps.c:
3556         * gst/gstvalue.c:
3557         * libs/gst/control/dparam.c:
3558           more doc fixes (parameters and return values)
3559
3560 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3561
3562         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3563
3564         * gst/gstregistry.h:
3565         * gst/registries/gstxmlregistry.c:
3566           Fix macro's for Mingw (fixes #162276).
3567
3568 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3569
3570         * docs/README:
3571           quick shell oneliner to find undocumented members
3572         * docs/gst/tmpl/gstplugin.sgml:
3573         * docs/gst/tmpl/gstscheduler.sgml:
3574         * docs/gst/tmpl/gstthread.sgml:
3575           more enumtypes cleanup
3576         * gst/gsterror.h:
3577           activated documentation comments, now someone needs to document
3578           the enums :(
3579
3580 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3581
3582         * docs/manual/manual.xml:
3583           Add dataaccess part (doh!).
3584
3585 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3586
3587         * docs/manual/advanced-autoplugging.xml:
3588           Fix typo (intiate -> initiate).
3589
3590 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3591
3592         * docs/random/bbb/streamselection:
3593           Add some notes on how to handle multi-subtitle/-audio streams.
3594
3595 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3596
3597         * docs/gst/gstreamer-docs.sgml:
3598         * docs/gst/gstreamer-sections.txt:
3599         * docs/gst/tmpl/gstenumtypes.sgml:
3600         * docs/gst/tmpl/gsterror.sgml:
3601         * docs/gst/tmpl/gstevent.sgml:
3602         * docs/gst/tmpl/gstpad.sgml:
3603         * docs/gst/tmpl/gstpadtemplate.sgml:
3604         * docs/gst/tmpl/gstthread.sgml:
3605           removed gstenumtypes section from docs and put all the enums into
3606           their sections
3607
3608 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3609
3610         * gst/gstplugin.c:
3611           document gst_library_load a bit more (riff special case + return
3612           value if already loaded)
3613         * testsuite/bytestream/filepadsink.c:
3614           plugin name is 'gstbytestream', not 'bytestream'
3615
3616 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3617
3618         * docs/random/bbb/subtitles:
3619           Add some first mind rumblings on proper subtitle support.
3620
3621 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3622
3623         * po/ca.po:
3624         * po/sv.po:
3625           updated translations
3626
3627 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3628
3629         * docs/manual/advanced-dataaccess.xml:
3630           Add section on how to use fakesrc/fakesink/identity in your
3631           application, plus section on how to embed plugins. Also mention
3632           probes.
3633         * docs/manual/appendix-checklist.xml:
3634         * docs/manual/appendix-debugging.xml:
3635         * docs/manual/appendix-gnome.xml:
3636         * docs/manual/appendix-integration.xml:
3637           Debug -> checklist, GNOME -> integration, add sections on Linux,
3638           KDE integration and add other things useful for application
3639           development.
3640         * docs/manual/manual.xml:
3641           Remove some fixmes, update some file pointers.
3642         * docs/pwg/appendix-checklist.xml:
3643           Fix typo.
3644         * docs/pwg/building-boiler.xml:
3645           Remove ugly header and add commented fixme.
3646         * docs/pwg/pwg.xml:
3647           Add fixme.
3648         * examples/manual/Makefile.am:
3649           Add example for added docs.
3650
3651 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3652
3653         * configure.ac:
3654           back to HEAD
3655
3656 === release 0.8.8 ===
3657
3658 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3659
3660         * NEWS:
3661         * RELEASE:
3662         * configure.ac:
3663           Releasing 0.8.8, "I'll Take Care Of You"
3664
3665 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3666
3667         * configure.ac:
3668           second prerelease
3669
3670 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3671
3672         patch by: Wim Taymans
3673
3674         * gst/gstbin.c:
3675           Fix for #159852 - make iterate emission threadsafe
3676
3677 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3678
3679         * docs/faq/cvs.xml:
3680           notes about new fdo account request
3681
3682 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3683
3684         * docs/gst/gstreamer-docs.sgml:
3685         * docs/gst/tmpl/gstenumtypes.sgml:
3686         * docs/gst/tmpl/gstplugin.sgml:
3687         * docs/libs/gstreamer-libs-docs.sgml:
3688           Added missing short docs. Added ids for navigation.
3689
3690 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3691
3692         * docs/manual/advanced-autoplugging.xml:
3693         * docs/manual/advanced-schedulers.xml:
3694         * docs/manual/advanced-threads.xml:
3695           Rewrites. Remove cothreads, go a bit into opt specifically,
3696           document threads and their gotchas, and do some technical stuff
3697           on autoplugging plus add some working examples. Fixes #157395.
3698         * examples/manual/Makefile.am:
3699           Add typefind/autoplugger example (one that actually works).
3700           Remove queue example since it's a duplicate of the thread one.
3701
3702 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3703
3704         * gst/gstvalue.c: (gst_value_deserialize_string):
3705           use deprecated g_value_set_string_take_ownership to keep compatible
3706           with glib 2.2
3707
3708 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3709
3710         * gst/gstvalue.c: (gst_value_deserialize_string):
3711           revert last patch, only dom a g_utf8_validate now before accepting
3712           the string - caps parsing strips " from strings so we can't rely on
3713           them
3714         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3715           disable a test that tested the above and comment it
3716
3717 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3718
3719         Patch reviewed by David Schleef  <ds@schleef.org>
3720
3721         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3722         bug #153882)
3723         * win32/gstenumtypes.h: same
3724
3725 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3726
3727         * gst/gstpad.c: (gst_pad_query):
3728           Do query on realized pad, similar to how convert/send_event handle
3729           this. Also makes sense, since this pad belongs to the function to
3730           which this query will be sent. Fixes #158163.
3731
3732 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3733
3734         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3735
3736 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3737
3738         * docs/faq/general.xml: fix pipeline to actually work
3739
3740 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3741
3742         * gst/gstvalue.c: (gst_value_deserialize_string):
3743           check that a simple string that gets deserialized does not contain
3744           invalid characters
3745         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3746           remove a test that tested a wring behaviour
3747
3748 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3749
3750         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3751
3752         * docs/manual/intro-motivation.xml:
3753           Fix typos.
3754
3755 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3756
3757         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3758
3759         * docs/gst/tmpl/gstprobe.sgml:
3760           Fix documentation of probe callback - it is supposed to return
3761           FALSE, not TRUE, to remove data from the stream (#159087).
3762
3763 2004-12-16  Daniel Gazard  <dany42@free.fr>
3764
3765         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3766
3767         * gst/gstelementfactory.c: (gst_element_factory_create):
3768           Fix compile failure if compiling without libxml2 support (#149936).
3769
3770 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3771
3772         * docs/manual/advanced-autoplugging.xml:
3773         * docs/manual/highlevel-components.xml:
3774           Move spider from autoplugging to components. Autoplugging is for
3775           internals, not for solutions. ;-).
3776
3777 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3778
3779         * docs/random/ds/0.9-suggested-changes:
3780           Make note on device/location/uri property names.
3781
3782 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3783
3784         * docs/manual/advanced-autoplugging.xml:
3785         * docs/manual/advanced-clocks.xml:
3786         * docs/manual/advanced-interfaces.xml:
3787         * docs/manual/advanced-metadata.xml:
3788         * docs/manual/advanced-position.xml:
3789         * docs/manual/advanced-schedulers.xml:
3790         * docs/manual/advanced-threads.xml:
3791         * docs/manual/appendix-gnome.xml:
3792         * docs/manual/appendix-programs.xml:
3793         * docs/manual/appendix-quotes.xml:
3794         * docs/manual/autoplugging.xml:
3795         * docs/manual/basics-bins.xml:
3796         * docs/manual/basics-data.xml:
3797         * docs/manual/basics-elements.xml:
3798         * docs/manual/basics-helloworld.xml:
3799         * docs/manual/basics-init.xml:
3800         * docs/manual/basics-pads.xml:
3801         * docs/manual/basics-plugins.xml:
3802         * docs/manual/bins-api.xml:
3803         * docs/manual/bins.xml:
3804         * docs/manual/buffers-api.xml:
3805         * docs/manual/buffers.xml:
3806         * docs/manual/clocks.xml:
3807         * docs/manual/components.xml:
3808         * docs/manual/cothreads.xml:
3809         * docs/manual/debugging.xml:
3810         * docs/manual/dparams-app.xml:
3811         * docs/manual/dynamic.xml:
3812         * docs/manual/elements-api.xml:
3813         * docs/manual/elements.xml:
3814         * docs/manual/factories.xml:
3815         * docs/manual/gnome.xml:
3816         * docs/manual/goals.xml:
3817         * docs/manual/helloworld.xml:
3818         * docs/manual/helloworld2.xml:
3819         * docs/manual/highlevel-components.xml:
3820         * docs/manual/highlevel-xml.xml:
3821         * docs/manual/init-api.xml:
3822         * docs/manual/intro-basics.xml:
3823         * docs/manual/intro-motivation.xml:
3824         * docs/manual/intro-preface.xml:
3825         * docs/manual/intro.xml:
3826         * docs/manual/links-api.xml:
3827         * docs/manual/links.xml:
3828         * docs/manual/manual.xml:
3829         * docs/manual/motivation.xml:
3830         * docs/manual/pads-api.xml:
3831         * docs/manual/pads.xml:
3832         * docs/manual/plugins-api.xml:
3833         * docs/manual/plugins.xml:
3834         * docs/manual/programs.xml:
3835         * docs/manual/queues.xml:
3836         * docs/manual/quotes.xml:
3837         * docs/manual/schedulers.xml:
3838         * docs/manual/states-api.xml:
3839         * docs/manual/states.xml:
3840         * docs/manual/threads.xml:
3841         * docs/manual/typedetection.xml:
3842         * docs/manual/win32.xml:
3843         * docs/manual/xml.xml:
3844           Try 2. This time, include a short preface as a "general
3845           introduction", also add code blocks around all code samples
3846           so they get compiled. We still need a way to tell readers
3847           the filename of the code sample. In some cases, don't show
3848           all code in the documentation, but do include it in the generated
3849           code. This allows for focussing on specific bits in the docs,
3850           while still having a full test application available.
3851         * examples/manual/Makefile.am:
3852           Fix up examples for new ADM. Add several of the new examples that
3853           were either added or were missing from the build system.
3854         * examples/manual/extract.pl:
3855           Allow nameless blocks.
3856
3857 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3858
3859         * docs/manual/elements-api.xml:
3860         * docs/manual/helloworld.xml:
3861         * examples/manual/extract.pl:
3862           fix last example.  Add example of adding code blocks that are not
3863           shown in docbook output.
3864
3865 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3866
3867         * docs/manual/dynamic.xml:
3868         * docs/manual/elements-api.xml:
3869         * docs/manual/gnome.xml:
3870         * docs/manual/helloworld2.xml:
3871         * docs/manual/init-api.xml:
3872         * docs/manual/queues.xml:
3873         * docs/manual/threads.xml:
3874         * docs/manual/xml.xml:
3875         * examples/manual/extract.pl:
3876           Make it possible to extract example code from separate blocks.
3877           Should make Ronald happy.
3878
3879 2004-12-15  Wim Taymans  <wim@fluendo.com>
3880
3881         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3882         (remove_from_group), (group_elements_set_visited),
3883         (normalize_group), (gst_opt_scheduler_iterate):
3884         Fix bug where a flag was not updated on a decoupled entry point 
3885         because we were just checking the group element list and decoupled
3886         elements are not in that list..
3887
3888 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3889
3890         * docs/manual/advanced-autoplugging.xml:
3891         * docs/manual/advanced-clocks.xml:
3892         * docs/manual/advanced-dparams.xml:
3893         * docs/manual/advanced-interfaces.xml:
3894         * docs/manual/advanced-metadata.xml:
3895         * docs/manual/advanced-position.xml:
3896         * docs/manual/advanced-schedulers.xml:
3897         * docs/manual/advanced-threads.xml:
3898         * docs/manual/appendix-debugging.xml:
3899         * docs/manual/appendix-gnome.xml:
3900         * docs/manual/appendix-programs.xml:
3901         * docs/manual/appendix-quotes.xml:
3902         * docs/manual/appendix-win32.xml:
3903         * docs/manual/autoplugging.xml:
3904         * docs/manual/basics-bins.xml:
3905         * docs/manual/basics-data.xml:
3906         * docs/manual/basics-elements.xml:
3907         * docs/manual/basics-helloworld.xml:
3908         * docs/manual/basics-init.xml:
3909         * docs/manual/basics-pads.xml:
3910         * docs/manual/basics-plugins.xml:
3911         * docs/manual/bins-api.xml:
3912         * docs/manual/bins.xml:
3913         * docs/manual/buffers-api.xml:
3914         * docs/manual/buffers.xml:
3915         * docs/manual/clocks.xml:
3916         * docs/manual/components.xml:
3917         * docs/manual/cothreads.xml:
3918         * docs/manual/debugging.xml:
3919         * docs/manual/dparams-app.xml:
3920         * docs/manual/dynamic.xml:
3921         * docs/manual/elements-api.xml:
3922         * docs/manual/elements.xml:
3923         * docs/manual/factories.xml:
3924         * docs/manual/gnome.xml:
3925         * docs/manual/goals.xml:
3926         * docs/manual/helloworld.xml:
3927         * docs/manual/helloworld2.xml:
3928         * docs/manual/highlevel-components.xml:
3929         * docs/manual/highlevel-xml.xml:
3930         * docs/manual/init-api.xml:
3931         * docs/manual/intro-motivation.xml:
3932         * docs/manual/intro-preface.xml:
3933         * docs/manual/intro.xml:
3934         * docs/manual/links-api.xml:
3935         * docs/manual/links.xml:
3936         * docs/manual/manual.xml:
3937         * docs/manual/motivation.xml:
3938         * docs/manual/pads-api.xml:
3939         * docs/manual/pads.xml:
3940         * docs/manual/plugins-api.xml:
3941         * docs/manual/plugins.xml:
3942         * docs/manual/programs.xml:
3943         * docs/manual/queues.xml:
3944         * docs/manual/quotes.xml:
3945         * docs/manual/schedulers.xml:
3946         * docs/manual/states-api.xml:
3947         * docs/manual/states.xml:
3948         * docs/manual/threads.xml:
3949         * docs/manual/typedetection.xml:
3950         * docs/manual/win32.xml:
3951         * docs/manual/xml.xml:
3952           First try at rewriting the ADM. Needs lotsamore work, but some
3953           parts might already be somewhat useful.
3954         * docs/pwg/advanced-interfaces.xml:
3955           Remove properties interface, it never actually existed (except for
3956           on my HD...).
3957
3958 2004-12-13  David Schleef  <ds@schleef.org>
3959
3960         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
3961         be NULL (bug #160220).
3962
3963 2004-12-13  David Schleef  <ds@schleef.org>
3964
3965         * configure.ac: remove all mmx stuff, because it's not used.
3966         * docs/random/ds/0.9-suggested-changes: additional notes
3967         * include/Makefile.am: we don't use these anymore
3968         * include/mmx.h: remove
3969         * include/sse.h: remove
3970
3971 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3972
3973         * docs/random/mimetypes:
3974           Add FOURCC code for h264 codec (VSSH)
3975           Add alternate FOURCC codes for h263 related codecs
3976
3977 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
3978
3979         * docs/manual/programs.xml:
3980           Added more gst-launch examples.
3981
3982 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3983
3984         * gst/gstqueue.c: (gst_queue_handle_src_query):
3985           Check for availability again.
3986
3987 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3988
3989         * gst/gstcaps.c: (gst_caps_compare_structures):
3990           Simple caps go first. This has the nice side-effect of fixing an
3991           obscure warning.
3992
3993 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3994
3995         * gst/gstversion.h.in:
3996           Protect header.
3997
3998 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3999
4000         * gst/schedulers/gstoptimalscheduler.c:
4001         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4002         (gst_opt_scheduler_get_wrapper):
4003           When we're recursing into a chain run, only run the directly
4004           related group, not all queued ones. This will fix a possible
4005           deadlock in chains with more than two groups.
4006
4007 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4008
4009         * autogen.sh:
4010           remove patch if autopoint fails
4011
4012 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4013
4014         * docs/gst/gstreamer-sections.txt:
4015           Document Thomas' addition, fix build, make Luis the sheriff happy.
4016
4017 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4018
4019         * gst/gstplugin.c:
4020         * gst/gstplugin.h:
4021           add accessor for version field
4022
4023 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4024
4025         submitted by: Luca Ferretti <elle.uca@infinito.it>
4026
4027         * po/LINGUAS:
4028         * po/it.po:
4029           New tranlation added: Italian
4030
4031 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4032
4033         * gst/gstpad.c: (gst_pad_is_negotiated),
4034         (gst_pad_get_negotiated_caps):
4035           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4036           it doesn't actually check the contents), so be sure to hand it
4037           a RealPad else we'll crash.
4038
4039 2004-12-03  Wim Taymans  <wim@fluendo.com>
4040
4041         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4042         (gst_queue_link), (gst_queue_handle_src_query):
4043         Reverted to 1.110 until this makes the testsuite and various
4044         apps work.
4045
4046 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4047
4048         * docs/upload.mak: fix included CVS conflict strings
4049
4050 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4051
4052         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4053
4054         * gst/gstelement.c: (gst_element_error_full):
4055           Use g_error_new_literal because error text may have
4056           percentage signs in it. Fixes #160019.
4057
4058 2004-12-01  Benjamin Otte  <otte@gnome.org>
4059
4060         * gst/elements/gstbufferstore.c:
4061         (gst_buffer_store_add_buffer_func):
4062           don't try to make subbuffers bigger than they can be. (fixes
4063           #159970)
4064
4065 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4066
4067         * docs/gst/gstreamer-sections.txt:
4068         * docs/gst/tmpl/gstvalue.sgml:
4069           Add new function to docs to fix build.
4070
4071 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4072
4073         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4074         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4075         (_gst_pad_default_fixate_foreach):
4076         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4077         * gst/gstvalue.h:
4078           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4079           in some cases (arrays), the fixedness depends on the content.
4080         * gst/gstqueue.c: (gst_queue_handle_src_query):
4081           Check for availability before doing something.
4082
4083 2004-11-29  Wim Taymans  <wim@fluendo.com>
4084
4085         * testsuite/threads/Makefile.am:
4086         * testsuite/threads/signals.c: (gst_test_get_type),
4087         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4088         (gst_test_set_property), (gst_test_get_property),
4089         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4090         (gst_test_do_prop), (run_thread), (main):
4091         Added a bunch of testcases that show threadsafety bugs in glib.
4092
4093 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4094
4095         * docs/manual/programs.xml:
4096           Added a first batch of gst-launch examples, as provided by Ronald
4097           and others from the devel-mlist
4098
4099 2004-11-28  Benjamin Otte  <otte@gnome.org>
4100
4101         * gst/gstelement.c: (gst_element_negotiate_pads):
4102           simplify
4103         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4104         (gst_value_serialize_string), (gst_value_deserialize_string):
4105           add unwrapping of previously wrapped strings. Fix bug in wrapping
4106           while at it.
4107         * testsuite/caps/value_serialize.c: (test1),
4108         (test_string_serialization), (test_string_deserialization), (main):
4109           add tests for string (de)serialization
4110
4111 2004-11-26  Wim Taymans  <wim@fluendo.com>
4112
4113         * testsuite/threads/159566.c: (object_deep_notify), (main):
4114         * testsuite/threads/Makefile.am:
4115         Added testsuite to show bug #159566
4116
4117 2004-11-25  Wim Taymans  <wim@fluendo.com>
4118
4119         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4120         (gst_thread_child_state_change), (gst_thread_main_loop):
4121         Ref the thread object in the GThread mainloop. Break out of the
4122         thread mainloop if it holds the last ref. This properly exits
4123         the threads when disposing the thread from its own context. It
4124         also avoids possible deadlocks in the dispose function.
4125
4126 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4127
4128         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4129         it is necessary to wait.
4130
4131 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4132
4133         * docs/pwg/building-boiler.xml:
4134           Make description somewhat clearer.
4135
4136 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4137
4138         * docs/upload.mak:
4139           Apparently docs changed location on FDO's server.
4140
4141 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4142
4143         * docs/pwg/appendix-checklist.xml:
4144           Add some random notes on things to check when writing an element.
4145           This list can be extended as people see fit.
4146
4147 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4148
4149         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4150         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4151         pad. The queue will now wait until it is empty and forward the new
4152         caps to the source.
4153         * gst/gstbin.c (gst_bin_set_element_sched)
4154         (gst_bin_unset_element_sched): Make sure that all elements and
4155         links are registered and unregistered with the scheduler exactly
4156         once. This elaborates on a fix by Benjamin Otte, but
4157         guarantees that decoupled elements are also registered.
4158
4159 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4160
4161         * docs/manual/quotes.xml:
4162           add a quote
4163         * configure.ac:
4164         * gst/gst.c:
4165         * gst/gstinfo.c:
4166           add LIBDIR and move init message higher up so it's at the start
4167
4168 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4169
4170         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4171         * gstreamer.spec.in: add fair
4172
4173 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4174
4175         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4176         * gst/elements/gstidentity.c: (gst_identity_class_init):
4177           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4178           <teuf@gnome.org> (#157263).
4179         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4180         (gst_type_find_handle_src_query):
4181           Subtract size of internally stored data from position queries.
4182
4183 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4184
4185         * gst/schedulers/fairscheduler.c:
4186         * gst/schedulers/faircothreads.c:
4187         * gst/schedulers/faircothreads.h:
4188         New cothread based scheduler: Fair scheduler.
4189         * gst/schedulers/gthread-cothreads.h: 
4190         Add the standard #if around the whole file.
4191         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4192         compilation of the functions defined in this file. This is
4193         necessary to be able to use this file as a normal header.
4194         * gst/schedulers/Makefile.am: Add compiling support for fair
4195         scheduler.
4196         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4197         scheduler cothreads layer from documentation generation.
4198
4199 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4200
4201         * gst/autoplug/gstspideridentity.c:
4202         (gst_spider_identity_sink_loop_type_finding):
4203           Don't crash if that function is not implemented.
4204
4205 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4206
4207         * docs/pwg/advanced-types.xml:
4208           Another typo.
4209
4210 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4211
4212         * docs/pwg/intro-preface.xml:
4213           Hm, ok, so the brackets weren't really useful...
4214         * docs/pwg/other-ntoone.xml:
4215           Fix embarassing typo.
4216
4217 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4218
4219         * docs/pwg/intro-preface.xml:
4220           Rewrite preface.
4221
4222 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4223
4224         * docs/pwg/advanced-scheduling.xml:
4225         * docs/pwg/advanced-tagging.xml:
4226         * docs/pwg/advanced-types.xml:
4227         * docs/pwg/building-boiler.xml:
4228         * docs/pwg/building-chainfn.xml:
4229         * docs/pwg/building-signals.xml:
4230         * docs/pwg/building-state.xml:
4231         * docs/pwg/building-testapp.xml:
4232         * docs/pwg/intro-basics.xml:
4233         * docs/pwg/other-manager.xml:
4234         * docs/pwg/other-source.xml:
4235           Typo fixes.
4236         * docs/pwg/other-manager.xml:
4237           Add some first content. No example code yet.
4238         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4239           Remove double newlines.
4240
4241 2004-11-04  Wim Taymans  <wim@fluendo.com>
4242
4243         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4244         (remove_from_group), (normalize_group), (group_migrate_connected),
4245         (gst_opt_scheduler_iterate):
4246         * testsuite/schedulers/.cvsignore:
4247         * testsuite/schedulers/Makefile.am:
4248         * testsuite/schedulers/queue_link.c: (main):
4249         Added testcase for scheduler segfault.
4250         Fix scheduler segfault when removing a decoupled
4251         entry point as the last element from a group.
4252
4253 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4254
4255         * gst/gstmarshal.list: add missing marshaller, fixes build
4256
4257 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4258
4259         * docs/random/signal: added notes about using BOXED for GstBuffer
4260         signal marshallers, not POINTER
4261
4262 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4263
4264         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4265         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4266         POINTER=>BOXED changes to marshal GstBuffers
4267
4268 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4269
4270         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4271         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4272
4273 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4274
4275         * docs/gst/gstreamer-sections.txt:
4276         * docs/gst/tmpl/gstcaps.sgml:
4277         * docs/gst/tmpl/gsterror.sgml:
4278         * docs/gst/tmpl/gstinfo.sgml:
4279         * docs/gst/tmpl/gstmacros.sgml:
4280         * docs/gst/tmpl/gstutils.sgml:
4281         * docs/random/ensonic/interfaces.txt:
4282         * gst/gstinfo.h:
4283           added some more docs, removed two obsolete defines
4284
4285 2004-11-02  Kjartan Maraas <as at gnome.org>
4286
4287         reviewed by: Wim Taymans, Ronald Bultje.
4288
4289         * gst/cothreads.c: (cothread_create):
4290         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4291         (gst_bin_child_state_change_func):
4292         * gst/gstbuffer.c: (gst_buffer_span):
4293         * gst/gstelement.c: (gst_element_get_index),
4294         (gst_element_get_event_masks), (gst_element_get_query_types),
4295         (gst_element_get_formats):
4296         * gst/gsterror.c: (_gst_core_errors_init),
4297         (_gst_library_errors_init), (_gst_resource_errors_init),
4298         (_gst_stream_errors_init):
4299         * gst/gstobject.c: (gst_object_default_deep_notify):
4300         * gst/gstpad.c: (gst_pad_get_event_masks),
4301         (gst_pad_get_internal_links_default):
4302         * gst/gstplugin.c: (gst_plugin_register_func),
4303         (gst_plugin_get_module):
4304         * gst/gststructure.c: (gst_structure_get_string),
4305         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4306         (gst_structure_to_abbr):
4307         * gst/gstutils.c: (gst_print_element_args):
4308         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4309         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4310         Aplied part of patch #157127: Cleanup of issues reported by 
4311         sparse.
4312         Also do not try to use cothreads when there is no cothread
4313         context yet.
4314
4315 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4316
4317         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4318         (gst_opt_scheduler_iterate):
4319         Applied patch #154061. Running a pipeline in which an element 
4320         calls GST_ELEMENT_ERROR in the chain function, the opt 
4321         scheduler doesn't unref the chain so it never gets freed.
4322
4323 2004-11-02  Wim Taymans  <wim@fluendo.com>
4324
4325         * gst/gststructure.c: (gst_structure_get_abbrs),
4326         (gst_structure_from_abbr), (gst_structure_to_abbr):
4327         Remove that ugly if-then thing in the code that converts
4328         between strings and types.
4329
4330 2004-11-02  Wim Taymans  <wim@fluendo.com>
4331
4332         * gst/gstscheduler.c: (gst_scheduler_add_element),
4333         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4334         Aplied clock distribution patch, this should fix bug
4335         #148787.
4336
4337 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4338
4339         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4340
4341         * po/LINGUAS:
4342         * po/nb.po:
4343           Added Norwegian Bokmaal translation
4344
4345 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4346
4347         * tools/gst-inspect.c: (print_signal_info):
4348           print signal arguments as pointers if they are
4349
4350 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4351
4352         * docs/pwg/building-boiler.xml:
4353           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4354
4355 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4356
4357         * gst/parse/parse.l:
4358         * testsuite/parse/parse1.c: (main):
4359         Since parse can do 'element name=a:b' make 'a:b.' work as
4360         well. 
4361         Added testcase to verify fix.
4362
4363 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4364
4365         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4366         Use the realpad when printing the direction.
4367         Add extra \n when printing extensions of typefind factories.
4368
4369 2004-10-13  David Schleef  <ds@schleef.org>
4370
4371         * examples/manual/Makefile.am: $< isn't portable in Makefile
4372         rules.
4373
4374 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4375
4376         * docs/gst/tmpl/gstobject.sgml:
4377         * docs/gst/tmpl/gstplugin.sgml:
4378         * docs/gst/tmpl/gstpluginfeature.sgml:
4379         * docs/gst/tmpl/gstregistry.sgml:
4380         * docs/gst/tmpl/gstversion.sgml:
4381         * gst/gstbin.c:
4382           more api documentation
4383         * gst/gstplugin.c: (gst_plugin_register_func),
4384         (gst_plugin_check_file), (gst_plugin_load_file):
4385           better error signaling and logging
4386
4387 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4388
4389         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4390           Subtract current queue contents from position queries.
4391
4392 2004-10-11  Johan Dahlin  <johan@gnome.org>
4393
4394         * gst/gsturi.c (gst_uri_get_location): unescape string
4395         (gst_uri_construct): escape string.
4396
4397 2004-10-11  Benjamin Otte  <otte@gnome.org>
4398
4399         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4400         (gst_pad_try_set_caps_nonfixed):
4401           allow renegotiation of unconnected pads (as inside spider). Simply
4402           return OK if unconnected - mimic try_set_caps there.
4403
4404 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4405
4406         * gst/gstbin.c: (gst_bin_sync_children_state):
4407           Add missing break.
4408
4409 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4410
4411         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4412         Set element to EOS before sending EOS event
4413
4414 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4415
4416         * gst/elements/gsttypefindelement.c:
4417         (gst_type_find_element_handle_event):
4418         Handle EOS events when doing the transition from
4419         typefind to data passing. This should fix the
4420         infinite loops in short files.
4421
4422 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4423
4424         * gst/gstthread.c: (gst_thread_change_state),
4425         (gst_thread_child_state_change):
4426         Make sure no iteration happens while performing
4427         the state change as it could mess up the internal
4428         consistency of the thread state.
4429
4430 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4431
4432         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4433         (gst_thread_change_state), (gst_thread_child_state_change):
4434         Do not try to grab the iterate lock in the state change method
4435         when we are in the same thread as the iterate or else we
4436         could deadlock. Some other cleanups.
4437
4438 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4439
4440         * configure.ac:
4441           bump nano to cvs
4442
4443 === release 0.8.7 ===
4444
4445 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4446
4447         * configure.ac:
4448         * NEWS:
4449         * RELEASE:
4450         * configure.ac:
4451           releasing 0.8.7, "A Cruise"
4452
4453 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4454
4455         * docs/random/mimetypes:
4456         Add an entry for Sony ATRAC3 audio format with mime-type
4457         used by rmdemux et riff-read
4458
4459 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4460
4461         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4462         Push the buffer store instead of clearing it in case that
4463         the stream is not seekable.
4464
4465 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4466
4467         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4468         (gst_thread_main_loop):
4469         Lock the iteration and the state change so that automatic
4470         negotiation and fixation does not happen at the same time
4471         as the in stream negotiation.
4472
4473 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4474
4475         * configure.ac:
4476           bump nano to cvs
4477
4478 === release 0.8.6 ===
4479
4480 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4481
4482         * configure.ac:
4483         * NEWS:
4484         * RELEASE:
4485         * configure.ac:
4486           releasing 0.8.6, "Narc"
4487
4488 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4489
4490         * configure.ac:
4491           prerel bump
4492
4493 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4494
4495         patch by: Steve Lhomme
4496
4497         * gst/elements/gstfakesrc.c:
4498         * gst/elements/gstidentity.c:
4499         * gst/gstthread.c:
4500           Fix for #153881
4501
4502 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4503
4504         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4505         Fix threadsafety of the crc checking function.
4506
4507 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4508
4509         patch by: Ronald Bultje
4510
4511         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4512         (gst_type_find_element_handle_event),
4513         (gst_type_find_element_chain):
4514         * gst/elements/gsttypefindelement.h:
4515          #153657.
4516          Filter out discont event from seekable sources when typefind
4517          asks them to seek.  Fixes typefind with demuxers for
4518          avi, asf and matroska.
4519
4520 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4521
4522         * docs/gst/gstreamer-sections.txt:
4523         * gst/gstcaps.c:
4524         * gst/gstcaps.h:
4525         * gst/gstpad.c:
4526           Revert preferred caps: (#147789)
4527
4528 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4529
4530         * win32/dirent.c:
4531           fix a memory leak
4532
4533 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4534
4535         * configure.ac:
4536           bump for prerelease
4537
4538 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4539
4540         * docs/Makefile.am:
4541         * docs/manual/elements-api.xml:
4542           restructure so that common stuff is shown first
4543         * docs/manual/init-api.xml:
4544           convert to examples
4545         * docs/manual/manual.xml:
4546         * docs/manuals.mak:
4547         * docs/url.entities:
4548           link to API on the website, possibly override later in build
4549         * examples/manual/.cvsignore:
4550           ignore more
4551         * examples/manual/Makefile.am:
4552           add more examples
4553         * examples/manual/extract.pl:
4554           error out on failure
4555
4556 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4557
4558         * docs/gst/tmpl/gstthread.sgml:
4559         * docs/manual/init-api.xml:
4560         * examples/manual/Makefile.am:
4561           convert two code bits to examples
4562
4563 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4564
4565         * gst/gstelement.c: (gst_element_change_state):
4566           Well, actually, I was about to remove this insane assert when
4567           I noticed Wim already did that. A warning is nice so we can
4568           fix actual ugs (using --g-fatal-warnings and backtraces), so
4569           I added that instead.
4570
4571 2004-09-06  Wim Taymans  <wim@fluendo.com>
4572
4573         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4574         (gst_element_threadsafe_properties_post_run),
4575         (gst_element_set_state), (gst_element_change_state):
4576         Added extra refcounting around various places. 
4577
4578 2004-09-06  Wim Taymans  <wim@fluendo.com>
4579
4580         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4581         Fix debug info.
4582
4583 2004-09-06  Wim Taymans  <wim@fluendo.com>
4584
4585         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4586         (remove_from_group):
4587         Some more debug info.
4588
4589 2004-09-03  Wim Taymans  <wim@fluendo.com>
4590
4591         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4592         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4593         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4594         (gst_fakesrc_get), (gst_fakesrc_change_state):
4595         * gst/elements/gstfakesrc.h:
4596         * gst/elements/gstidentity.c: (gst_identity_class_init),
4597         (gst_identity_init), (gst_identity_chain),
4598         (gst_identity_set_property), (gst_identity_get_property),
4599         (gst_identity_change_state):
4600         * gst/elements/gstidentity.h:
4601         Added datarate properties to limit the datarate.
4602
4603 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4604
4605         * gst/autoplug/gstspider.c: (plugin_init):
4606           don't set a rank. We don't want to autoplug by inserting spiders.
4607
4608 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4609
4610         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4611         (gst_spider_identity_plug):
4612           add a template for spider's sink
4613         * gst/gst.c: (gst_register_core_elements):
4614           queue's rank should be NULL, we don't want spider to add it.
4615
4616 2004-08-18  David Schleef  <ds@schleef.org>
4617
4618         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4619         * docs/libs/Makefile.am: same
4620         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4621         * docs/random/ds/0.9-planning: random additions
4622         * docs/random/ds/0.9-suggested-changes: same
4623         * gst/gstxml.h: remove vestigal GstXMLNs definition
4624
4625         Preferred caps: (#147789)
4626         * docs/gst/gstreamer-sections.txt: Add symbols
4627         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4628         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4629         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4630         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4631         (gst_caps_get_preferred), (gst_caps_set_preferred),
4632         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4633         (gst_caps_use_preferred): Handle caps preferences
4634         * gst/gstcaps.h: Add caps preferences
4635         * gst/gstpad.c: (gst_pad_link_get_preferred),
4636         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4637         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4638         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4639         negotiation.
4640
4641 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4642
4643         * gst/autoplug/gstspideridentity.c:
4644         (gst_spider_identity_request_new_pad):
4645         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4646         (gst_aggregator_init):
4647         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4648         (gst_fakesink_init):
4649         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4650         (gst_fakesrc_init):
4651         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4652         (gst_fdsink_init):
4653         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4654         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4655         (gst_filesink_init):
4656         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4657         (gst_filesrc_init):
4658         * gst/elements/gstidentity.c: (gst_identity_base_init),
4659         (gst_identity_init):
4660         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4661         (gst_multifilesrc_init):
4662         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4663         (gst_pipefilter_init):
4664         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4665         (gst_statistics_init):
4666         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4667         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4668           s/gst_pad_new/&_from_template/
4669           register pad templates in the base_init function
4670           add static pad template definitions
4671
4672 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4673
4674         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4675         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4676         * testsuite/refcounting/pad.c: (main):
4677         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4678           s/gst_pad_new/&_from_template/
4679           prepare deprecation of gst_pad_new
4680
4681 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4682
4683         patch by: Luca Ognibene <skaboy81@virgilio.it>
4684
4685         * gst/gstcaps.c:
4686         * gst/gstelement.c:
4687         * gst/gstpad.c:
4688         * gst/gstxml.c:
4689           fix memleaks.  Fixes #150001
4690
4691 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4692
4693         * docs/random/ds/0.9-suggested-changes:
4694           add notes - mostly about pad templates
4695
4696 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4697
4698         * win32/GStreamer.vcproj:
4699           temporary locale files are .gmo not .mo
4700
4701 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4702
4703         * configure.ac: bump nano to cvs
4704
4705 === release 0.8.5 ===
4706
4707 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4708
4709         * configure.ac:
4710           releasing 0.8.5, "Stuttgart"
4711         * NEWS:
4712         * RELEASE:
4713         * configure.ac:
4714         * docs/random/release:
4715           updates for release
4716
4717 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4718
4719         patch by: Wim Taymans (wim@fluendo.com)
4720
4721         * gst/gstbuffer.c:
4722         * gst/gstindex.h:
4723         * libs/gst/dataprotocol/dataprotocol.c:
4724           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4725
4726 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4727
4728         * Makefile.am:
4729         * win32/MANIFEST:
4730           add win32 dir to the build.  Fixes #149981.
4731
4732 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4733
4734         * configure.ac:
4735           bump libtool versioning
4736         * gst/gststructure.c:
4737           mark function as static
4738         * po/af.po:
4739         * po/az.po:
4740         * po/ca.po:
4741         * po/cs.po:
4742         * po/en_GB.po:
4743         * po/fr.po:
4744         * po/nl.po:
4745         * po/sq.po:
4746         * po/sr.po:
4747         * po/sv.po:
4748         * po/tr.po:
4749         * po/uk.po:
4750           translations update
4751         * win32/README.txt:
4752           trademark protection
4753
4754 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4755
4756         * configure.ac:
4757           fix GST_ORIGIN
4758           set GST_PACKAGE to source, and distinguish between release and other
4759         * tools/gst-inspect.c:
4760           print out plugin an element factory is part of so we see this info
4761
4762 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4763
4764         * docs/gst/gstreamer-sections.txt:
4765         * docs/gst/tmpl/gstbuffer.sgml:
4766         * docs/gst/tmpl/gstschedulerfactory.sgml:
4767           reorder docs a little, make GstBuffer's more sensible.
4768         * gst/gstbuffer.h:
4769           API: added GST_BUFFER_FLAG_DELTA_UNIT
4770         * gst/gstscheduler.c:
4771           comment API addition
4772
4773 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4774
4775         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4776           work with non-regular files that can be mmapped (like /dev/zero)
4777         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4778           get rid of typefinds that require a seek when we can't seek instead
4779           of trying them over and over again
4780         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4781           return non-zero failure value when the pipeline was interrupted or
4782           an error occurred
4783
4784 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4785
4786         * win32/config.h:
4787         * win32/GStreamer.vcproj:
4788           compile and install the locales
4789
4790 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4791
4792         * gst/gstvalue.c:
4793           fix a possible memory leak under Windows
4794
4795 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4796
4797         * win32/GStreamer.vcproj:
4798           fix a memory leak that occured under Windows
4799         * win32/gstreamer.def:
4800           add gst_scheduler_register
4801
4802 2004-08-11  Benjamin Otte  <otte@gnome.org>
4803
4804         * docs/gst/gstreamer-sections.txt:
4805         * gst/gstscheduler.c: (gst_scheduler_register):
4806         * gst/gstscheduler.h:
4807           API:
4808           add gst_scheduler_register shortcut similar to gst_element_register
4809         * gst/schedulers/entryscheduler.c: (plugin_init):
4810         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4811         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4812           use it
4813
4814 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4815
4816         * gst/gstvalue.h:
4817           fix a memory leak that occured under Windows
4818
4819 2004-08-10  Colin Walters  <walters@redhat.com>
4820
4821         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4822         Don't use O_EXCL to open temporary registry.  It will prevent
4823         registry creation if a temporary one already exists, which
4824         is unnecessary.
4825
4826 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4827
4828         * docs/gst/gstreamer-sections.txt:
4829         * docs/gst/tmpl/gstvalue.sgml:
4830           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4831
4832 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4833
4834         * win32/gstbytestream.vcproj:
4835         * win32/gstelements.vcproj:
4836         * win32/gstgetbits.vcproj:
4837         * win32/gst-inspect.vcproj:
4838         * win32/gst-launch.vcproj:
4839         * win32/gstoptimalscheduler.vcproj:
4840         * win32/GStreamer.vcproj:
4841         * win32/gst-register.vcproj:
4842         * win32/gstspider.vcproj:
4843           update the include and lib dirs to fit standard libraries as
4844           described in the Win32 manual
4845
4846 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4847
4848         * win32/config.h:
4849         * win32/gstversion.h:
4850           enable NLS again, push the version number for the coming 0.8.5 release
4851
4852 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4853
4854         * gst/gstvalue.h:
4855           export gst_type_XXX for windows DLLs
4856
4857 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4858
4859         * docs/faq/gst-uninstalled:
4860           fix PKG_CONFIG_PATH and PYTHONPATH
4861         * gst/schedulers/Makefile.am:
4862           cleanup
4863         * libs/gst/bytestream/bytestream.c:
4864           remove newline
4865         * po/LINGUAS:
4866         * po/sq.po:
4867           adding Albanian translation (Laurent Dhima)
4868         * po/cs.po:
4869           updated
4870
4871 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4872
4873         * po/ca.po:
4874         * po/sv.po:
4875           updated translations
4876
4877 2004-08-04  Benjamin Otte  <otte@gnome.org>
4878
4879         * tests/mass_elements.c: (main):
4880           allow specifying src and sink element explicitly, so I can test
4881           videotestsrc instead of fakesrc
4882
4883 2004-08-04  Benjamin Otte  <otte@gnome.org>
4884
4885         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4886         (gst_structure_id_empty_new), (gst_structure_empty_new),
4887         (gst_structure_copy):
4888           add gst_structure_id_empty_new_with_size to allow preallocating
4889           value array sizes. Use this in gst_structure_copy to get rid of
4890           reallocs.
4891           don't do quark=>string=>quark when copying structures
4892
4893 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
4894
4895         * docs/manual/win32.xml:
4896         * win32/README.txt:
4897           update documentation with the clean version of dependencies
4898
4899 2004-08-03  Benjamin Otte  <otte@gnome.org>
4900
4901         * gst/schedulers/entryscheduler.c:
4902         (gst_entry_scheduler_remove_element):
4903           fix for GST_DISABLE_DEBUG
4904         * tools/gst-launch.c: (print_tag):
4905           fixes for G_DISABLE_ASSERT
4906
4907 2004-08-03  Benjamin Otte  <otte@gnome.org>
4908
4909         * gst/gst.c: (gst_register_core_elements):
4910           fix for G_DISABLE_ASSERT
4911         * gst/gstinfo.c: (__gst_in_valgrind):
4912           add for GST_DISABLE_DEBUG
4913
4914 2004-08-03  Benjamin Otte  <otte@gnome.org>
4915
4916         * gst/parse/parse.l:
4917           fix for G_DISABLE_ASSERT
4918
4919 2004-08-03  Wim Taymans  <wim@fluendo.com>
4920
4921         * gst/gstbin.c: (gst_bin_get_type),
4922         (gst_bin_child_state_change_func):
4923         * gst/gstthread.c: (gst_thread_change_state):
4924         Backported some debug logging from a reverted patch
4925         Don't try to destroy the thread twice. Added some more
4926         debugging in GstThread. Unlock and signal even if we
4927         are in the thread context.
4928
4929 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
4930
4931         * po/uk.po:
4932           updated translation
4933
4934 2004-07-30  David Schleef  <ds@schleef.org>
4935
4936         * gst/gstatomic_impl.h: Enable atomic code for x86_64
4937
4938 2004-07-29  David Schleef  <ds@schleef.org>
4939
4940         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
4941         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
4942
4943 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
4944
4945         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
4946         (gst_bin_add_func), (gst_bin_remove_func),
4947         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
4948         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
4949         (gst_bin_change_state_norecurse), (gst_bin_dispose),
4950         (gst_bin_sync_children_state):
4951         * gst/gstbin.h:
4952         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
4953         (gst_thread_change_state):
4954         * testsuite/states/Makefile.am:
4955           revert state change patches as agreed so we can rework them
4956           gradually
4957
4958 2004-07-29  Benjamin Otte  <otte@gnome.org>
4959
4960         * libs/gst/control/Makefile.am:
4961           link to libgstreamer (fixes Debian bug 262019, see
4962           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
4963
4964 2004-07-29  Wim Taymans  <wim@fluendo.com>
4965
4966         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
4967         (check_from_fraction_convert), (transform_test), (main):
4968         Make the test less pedantic about float roundoff errors.
4969
4970 2004-07-29  Benjamin Otte  <otte@gnome.org>
4971
4972         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
4973         (gst_filesrc_srcpad_event):
4974           make seek events to before start/after end of file not fail, but
4975           seek to start/end instead
4976         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
4977           add more output
4978
4979 2004-07-29  Benjamin Otte  <otte@gnome.org>
4980
4981         * gst/gstpad.c: (gst_pad_set_explicit_caps):
4982           check that caps are fixed
4983         * gst/gstpad.c: (gst_pad_template_new):
4984           don't try to simplify caps, costs too much time on gst_init
4985         * gst/gstplugin.c: (gst_plugin_add_feature):
4986           G_ERROR if features are added twice
4987         * gst/gsttypefind.c: (gst_type_find_register):
4988         * gst/gstelementfactory.c: (gst_element_register):
4989           don't add features twice
4990         * docs/random/ds/0.9-suggested-changes:
4991           add note about possible gst_init optimization
4992
4993 2004-07-28  David Schleef  <ds@schleef.org>
4994
4995         * testsuite/elements/Makefile.am:
4996         * testsuite/elements/struct_i386.h:
4997         * testsuite/elements/struct_size.c: (main):  A little test
4998         to keep distcheck from working if someone changes a structure
4999         size accidentally.
5000
5001 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5002
5003         * docs/libs/Makefile.am:
5004         * docs/libs/gstreamer-libs-docs.sgml:
5005         * docs/libs/gstreamer-libs-sections.txt:
5006         * docs/libs/tmpl/gstbytestream.sgml:
5007         * docs/libs/tmpl/gstcontrol.sgml:
5008         * docs/libs/tmpl/gstdataprotocol.sgml:
5009         * docs/libs/tmpl/gstgetbits.sgml:
5010         * libs/gst/bytestream/Makefile.am:
5011         * libs/gst/bytestream/bytestream.c:
5012         * libs/gst/bytestream/bytestream.h:
5013         * libs/gst/control/Makefile.am:
5014         * libs/gst/dataprotocol/Makefile.am:
5015         * libs/gst/getbits/Makefile.am:
5016         * libs/gst/getbits/getbits.h:
5017           various doc and style fixes, adding bytestream to libs docs.
5018
5019 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5020
5021         * docs/gst/gstreamer-docs.sgml:
5022         * docs/libs/Makefile.am:
5023         * docs/libs/gstreamer-libs-docs.sgml:
5024         * docs/libs/gstreamer-libs-sections.txt:
5025         * libs/gst/control/dparam.c:
5026           more doc fixes.  gst-libs docs now build the same way as gst.
5027
5028 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5029
5030         * configure.ac:
5031         * testsuite/Makefile.am:
5032         * testsuite/bins/Makefile.am:
5033         * testsuite/caps/Makefile.am:
5034         * testsuite/cleanup/Makefile.am:
5035         * testsuite/clock/Makefile.am:
5036         * testsuite/debug/Makefile.am:
5037         * testsuite/dlopen/Makefile.am:
5038         * testsuite/dynparams/Makefile.am:
5039         * testsuite/elements/.cvsignore:
5040         * testsuite/elements/Makefile.am:
5041         * testsuite/enumcaps/Makefile.am:
5042         * testsuite/enumcaps/enumcaps.c:
5043         * testsuite/ghostpads/Makefile.am:
5044         * testsuite/indexers/Makefile.am:
5045         * testsuite/negotiation/Makefile.am:
5046         * testsuite/parse/Makefile.am:
5047         * testsuite/plugin/Makefile.am:
5048         * testsuite/refcounting/Makefile.am:
5049         * testsuite/schedulers/.cvsignore:
5050         * testsuite/states/Makefile.am:
5051         * testsuite/tags/Makefile.am:
5052         * testsuite/threads/Makefile.am:
5053           fold enumcaps into caps dir
5054           clean up Makefile.am's for testsuite
5055
5056 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5057
5058         * docs/gst/Makefile.am:
5059         * docs/libs/Makefile.am:
5060           clean up docs build.  Fixes needless rebuilding of template files.
5061
5062 2004-07-28  Wim Taymans  <wim@fluendo.com>
5063
5064         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5065         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5066         Make sure that a bin state change tries to keep the children
5067         in sync. 
5068         Added debug logging to the thread.
5069
5070 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5071
5072         * win32/GStreamer.vcproj:
5073         * win32/gstreamer.def:
5074           more exports for the plugins
5075
5076 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5077
5078         * win32/gstgetbits.vcproj:
5079         * win32/gstgetbits.def:
5080         * win32/msvc71.sln:
5081           add support for the getbits plugin
5082
5083 2004-07-27  Wim Taymans  <wim@fluendo.com>
5084
5085         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5086         (gst_value_transform_fraction_double), (_gst_value_initialize):
5087         * testsuite/caps/Makefile.am:
5088         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5089         (check_from_fraction_convert), (transform_test), (main):
5090         Added transform functions between double and fraction.
5091         Added testcase to verify transforms
5092
5093 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5094
5095         * win32/GStreamer.vcproj:
5096           rename GStreamer-0.8.lib to libgstreamer.lib
5097
5098 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5099
5100         * win32/gstelements.vcproj:
5101         * win32/gstoptimalscheduler.vcproj:
5102           fixes for the Release build
5103
5104 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5105
5106         * win32/config.h:
5107           update the version number
5108
5109 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5110
5111         * win32/GStreamer.vcproj:
5112           add gstinterface to the build
5113
5114 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5115
5116         * win32/gstreamer.def:
5117           add many definitions needed by plugins,
5118           GST_CAT_DEFAULT only available in the Debug build ?
5119
5120 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5121
5122         * gst/gstelement.c: (gst_element_set_eos_recursive):
5123           various whitespace fixes.
5124           doc fix, fixes #148497
5125
5126 2004-07-25  Benjamin Otte  <otte@gnome.org>
5127
5128         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5129           don't delay links on the sink elements, it causes unnegotiated
5130           links.
5131         * gst/elements/gsttypefindelement.c:
5132         (gst_type_find_element_base_init):
5133           add our padtemplates, we indeed do have some.
5134         * gst/elements/gsttypefindelement.c:
5135         (gst_type_find_element_handle_event),
5136         (gst_type_find_element_chain):
5137           don't push data when typefinding failed.
5138         * gst/gstpad.c: (gst_pad_link_fixate):
5139           check that no fixate function returns empty caps.
5140         * gst/gstpad.c: (gst_pad_push):
5141           check that the link is negotiated before data gets pushed.
5142         * tools/gst-register.c: (main):
5143           don't assert (fixes #148283)
5144
5145 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5146
5147         * docs/gst/gstreamer-sections.txt:
5148         * docs/gst/tmpl/gstconfig.sgml:
5149           add GST_PLUGIN_EXPORT definition
5150
5151 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5152
5153         * gst/gstplugin.h:
5154         * gst/gstconfig.h.in:
5155         * win32/gstconfig.h:
5156         * win32/gstelements.def:
5157         * win32/gstelements.vcproj:
5158         * win32/gstoptimalscheduler.def:
5159         * win32/gstoptimalscheduler.vcproj:
5160         * win32/gstspider.def:
5161         * win32/gstspider.vcproj:
5162           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5163
5164 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5165
5166         * docs/gst/gstreamer-sections.txt:
5167           remove GST_CAT_DEFAULT because the type has changed
5168
5169 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5170
5171         * win32/gstbytestream.vcproj:
5172         * win32/gstelements.vcproj:
5173         * win32/gst-inspect.vcproj:
5174         * win32/gst-launch.vcproj:
5175         * win32/gstoptimalscheduler.vcproj:
5176         * win32/GStreamer.vcproj:
5177         * win32/gst-register.vcproj:
5178         * win32/gstspider.vcproj:
5179         * win32/msvc71.sln:
5180           Copy the files where needed after building, The testsuite will be
5181           built separately
5182
5183 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5184
5185         * win32/config.h:
5186         * win32/README.txt:
5187         * docs/manual/win32.xml:
5188         Fixed the plugin and GStreamer location
5189
5190 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5191
5192         * win32/gstreamer.def:
5193         More exports for the plugins
5194
5195 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5196
5197         * gst/gstinfo.h:
5198         Marc was right, we need to export literally GST_CAT_DEFAULT
5199
5200 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5201
5202         * win32/config.h:
5203         NLS crashes in gettext, disabled until this is solved
5204
5205 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5206
5207         * win32/gst-inspect.vcproj:
5208         * win32/gst-launch.vcproj:
5209         Should use NLS when available
5210
5211 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5212
5213         * gst/registries/gstxmlregistry.c:
5214         removing the file doesn't seem to be a good idea on Linux
5215
5216 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5217
5218         * gst/registries/gstxmlregistry.c:
5219         Remove the registry before renaming the tempfile (needed for Windows)
5220
5221 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5222
5223         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5224         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5225         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5226         * gst/elements/gstmultifilesrc.h:
5227         Added newmedia property so it generates newmedia events between each
5228         file when property is set, as well as fixed eos handling
5229
5230 2004-07-22  David Schleef  <ds@schleef.org>
5231
5232         * gst/gststructure.c: (gst_structure_id_empty_new),
5233         (gst_structure_empty_new):  Set type field correctly.
5234         * gst/gststructure.h: Check type field correctly.
5235         * testsuite/caps/Makefile.am:
5236         * testsuite/caps/structure.c: (test1), (main): Add a very small
5237         test for structures.
5238
5239 2004-07-22  David Schleef  <ds@schleef.org>
5240
5241         * docs/random/ds/0.9-suggested-changes: more comments
5242         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5243
5244 2004-07-22  Benjamin Otte  <otte@gnome.org>
5245
5246         * gst/gstelementfactory.c: (gst_element_register):
5247           set the factory in the class struct, so gst_element_get_factory
5248           actually works
5249         * gst/parse/grammar.y:
5250           set element to playing when it gets unlocked as we can't rely on the
5251           bin state - all elements in the bin state might still be locked in
5252           NULL)
5253
5254 2004-07-22  Benjamin Otte  <otte@gnome.org>
5255
5256         * gst/gstelement.c: (gst_element_set_state_func):
5257           make this a static function
5258
5259 2004-07-22  Wim Taymans  <wim@fluendo.com>
5260
5261         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5262         (gst_opt_scheduler_pad_link):
5263         fix 147894-2 and the group_link problem.
5264
5265 2004-07-22  Wim Taymans  <wim@fluendo.com>
5266
5267         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5268         (handoff_identity), (main):
5269         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5270         (handoff_identity), (main):
5271         * testsuite/schedulers/Makefile.am:
5272         * testsuite/schedulers/group_link.c: (main):
5273         Show bug in scheduler when linking chain and loop based element 
5274         where the chain based element was not yet in a group.
5275
5276 2004-07-21  Benjamin Otte  <otte@gnome.org>
5277
5278         * gst/.cvsignore:
5279         * gst/autoplug/.cvsignore:
5280         * gst/elements/.cvsignore:
5281         * gst/indexers/.cvsignore:
5282         * libs/gst/bytestream/.cvsignore:
5283         * libs/gst/control/.cvsignore:
5284         * libs/gst/getbits/.cvsignore:
5285         * testsuite/states/.cvsignore:
5286         * testsuite/threads/.cvsignore:
5287           keep this up to date, since I seem to be the only one who cares
5288           about not missing files on commits (editor's note: no you don't,
5289           but feel free to change them at the time you add stuff instead
5290           of later on)
5291
5292 2004-07-21  Benjamin Otte  <otte@gnome.org>
5293
5294         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5295         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5296         (gst_bin_child_state_change_func), (set_kid_state_func),
5297         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5298           make state changes work correctly and reentrant (so removing
5299           elements from bins during state changes of bins doesn't cause
5300           segfaults or even wrong states)
5301           add debugging category and debugging output to print children states
5302         * gst/gstbin.c: (gst_bin_dispose): 
5303           add some assertion checks
5304         * gst/gstbin.h:
5305         * gst/gstbin.c: (gst_bin_sync_children_state):
5306           deprecate this function - it just does gst_bin_set_state (bin,
5307           GST_STATE (bin)) 
5308         * testsuite/threads/queue.c: (main):
5309           don't use gst_bin_sync_children_state anymore
5310         * testsuite/states/Makefile.am:
5311         * testsuite/states/bin.c:
5312           test that the state changes of bins work as expected
5313         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5314           some adjustments to change states correctly, too
5315         * gst/gstthread.c: (gst_thread_change_state):
5316           don't enable/disable "threadsafe" properties, they're unused and
5317           cause random segfaults
5318         * testsuite/threads/Makefile.am:
5319           the queue check randomly passes now, ignore it
5320
5321 2004-07-21  Benjamin Otte  <otte@gnome.org>
5322
5323         * gst/gstpad.c:
5324           check if data is NULL before outputting debug info. (fixes #145100)
5325
5326 2004-07-21  Benjamin Otte  <otte@gnome.org>
5327
5328         * gst/schedulers/entryscheduler.c:
5329         (gst_entry_scheduler_loop_wrapper),
5330         (gst_entry_scheduler_chain_wrapper),
5331         (gst_entry_scheduler_get_wrapper):
5332           reset the state when the cothread starts, so we don't get assertion
5333           failures on restarting of cothreads
5334
5335 2004-07-20  Benjamin Otte  <otte@gnome.org>
5336
5337         * gst/gstelement.c: (gst_element_link_pads_filtered):
5338           use correct sinkpad, if only sinkpad is specified, but not srcpad
5339           (fixes #147889)
5340         * gst/gstelement.c: (gst_element_set_state_func),
5341         (gst_element_change_state): ref/unref the element, signal handlers
5342         could get rid of the element otherwise
5343
5344 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5345
5346         * docs/random/ds/0.9-suggested-changes:
5347           Make note about renaming fixed-list to array.
5348         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5349         (_gst_value_initialize):
5350           Add array intersections.
5351         * testsuite/caps/intersect2.c: (main):
5352           Add test for array intersections.
5353
5354 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5355
5356         * configure.ac: back to cvs
5357
5358 === release 0.8.4 ===
5359
5360 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5361
5362         * configure.ac:
5363           releasing 0.8.4, "Paella"
5364           bump libtool versioning
5365
5366 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5367
5368         * po/LINGUAS:
5369         * po/ca.po:
5370           adding Catalan translation (Jordi Mallach)
5371
5372 2004-07-20  Wim Taymans  <wim@fluendo.com>
5373
5374         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5375         (handoff_identity), (main):
5376         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5377         (handoff_identity), (main):
5378         * testsuite/schedulers/Makefile.am:
5379         Added failing testcase for variant of #147894
5380
5381 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5382
5383         patch by: David Moore
5384
5385         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5386         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5387         (group_migrate_connected):
5388         * testsuite/schedulers/Makefile.am:
5389           fix for #142813 (Deadlock in optimal scheduler)
5390
5391 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5392
5393         patch by: Wim Taymans
5394
5395         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5396         (gst_opt_scheduler_schedule_run_queue),
5397         (gst_opt_scheduler_get_wrapper), (get_group),
5398         (group_migrate_connected):
5399         * testsuite/schedulers/Makefile.am:
5400           fix for #147819 (Add some checks in the opt scheduler)
5401
5402 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5403
5404         patch by: Benjamin Otte
5405
5406         * gst/gstelementfactory.c: (__gst_element_details_set):
5407           fix for #147929: running gst-register in non-utf8 locale can cause
5408           invalid registry
5409
5410 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5411
5412         patch by: Wim Taymans
5413
5414         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5415         (group_has_element), (element_get_reachables_func),
5416         (group_migrate_connected):
5417           fix for #147894 (opt scheduler decoupled elements mismanagement)
5418         * testsuite/schedulers/Makefile.am:
5419           testsuite app now passes
5420
5421 2004-07-19  Wim Taymans  <wim@fluendo.com>
5422
5423         * testsuite/schedulers/147819.c: (handoff_identity1),
5424         (handoff_identity2), (main):
5425         * testsuite/schedulers/Makefile.am:
5426         Added testcase for bug 147819
5427
5428 2004-07-19  Wim Taymans  <wim@fluendo.com>
5429
5430         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5431         (handoff_identity), (main):
5432         * testsuite/schedulers/Makefile.am:
5433         Added testcase for bug 147894
5434
5435 2004-07-16  Wim Taymans  <wim@fluendo.com>
5436
5437         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5438         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5439         * testsuite/schedulers/Makefile.am:
5440         Added testsuite for bug 142183 in its two incarnations. Refcount
5441         is not increased for scheduled elements and threadsafe properties
5442         mutexes are not properly unlocked.
5443
5444 2004-07-16  Wim Taymans  <wim@fluendo.com>
5445
5446         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5447         (create_chain), (destroy_chain), (create_group), (destroy_group),
5448         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5449         (group_dec_link), (gst_opt_scheduler_pad_link),
5450         (group_inc_links_for_element), (group_migrate_connected):
5451         Call group_inc_link with the proper src->sink ordering -- 
5452         break this, and we break sort_chain. patch from wingo for bug
5453         147713.
5454         Partially revert patch 1.89. When adding a loop based element to 
5455         the scheduler, the links to other groups are automatically followed
5456         and incremented. This should not happen because the bin will call
5457         pad_link explicitly for those connection, resulting in them counted 
5458         twice. Results in assertion failure on pipeline cleanup.
5459
5460 2004-07-16  Wim Taymans  <wim@fluendo.com>
5461
5462         * testsuite/schedulers/143777-2.c: (main):
5463         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5464         (main):
5465         * testsuite/schedulers/Makefile.am:
5466         Added cleanup code to testcase 143777-2.
5467         Added testcase to show bug 147713, does not really show the
5468         deadlock as I can't figure out how to trigger it, but it does
5469         demonstrate bad ordering in the scheduler.
5470
5471 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5472
5473         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5474           change strndup to g_strndup.  Fixes #147707
5475
5476 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5477
5478         * po/af.po:
5479         * po/az.po:
5480         * po/cs.po:
5481         * po/en_GB.po:
5482         * po/fr.po:
5483         * po/nl.po:
5484         * po/sr.po:
5485         * po/sv.po:
5486         * po/tr.po:
5487         * po/uk.po:
5488           updated translations
5489
5490 2004-07-16  Benjamin Otte  <otte@gnome.org>
5491
5492         * gst/gstvalue.c: (gst_greatest_common_divisor):
5493           use ints and return ints, fractions only use ints, too, so this
5494           avoids accidently casting multiplications to unsigned
5495         (gst_value_lcopy_fraction): it's ints, not uint32
5496         (gst_value_set_fraction): disallow minint, multiplying and negation
5497           are broken with it
5498         (gst_value_fraction_multiply): fix to make large numbers work and get
5499         rid of the assumption that the multiplication of two ints fits an
5500         int64 - dunno if that's true for all systems
5501         * testsuite/caps/Makefile.am:
5502         * testsuite/caps/fraction-multiply-and-zero.c:
5503         (check_multiplication), (check_equal), (zero_test), (main):
5504           add tests for all the stuff above
5505         * testsuite/caps/value_compare.c: (test1):
5506           fix comment
5507         * tests/.cvsignore:
5508         * testsuite/caps/.cvsignore:
5509         * testsuite/debug/.cvsignore:
5510         * testsuite/dlopen/.cvsignore:
5511         * testsuite/states/.cvsignore:
5512           get up to date
5513
5514 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5515
5516         * docs/manual/bins-api.xml:
5517         * docs/manual/factories.xml:
5518         * docs/manual/helloworld.xml:
5519         * docs/manual/links-api.xml: 
5520           fixes for out of date info, incorrect info and grammar
5521
5522 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5523
5524         * docs/manual/pads.xml:
5525         * docs/manual/pads-api.xml: grammar fix
5526
5527 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5528
5529         * docs/manual/pads-api.xml: typo + grammar fix
5530
5531 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5532
5533         * docs/gst/gstreamer-sections.txt:
5534           add new symbols
5535         * docs/gst/tmpl/gstelement.sgml:
5536         * docs/gst/tmpl/gstpad.sgml:
5537         * docs/gst/tmpl/gsttypes.sgml:
5538         * docs/gst/tmpl/gstvalue.sgml:
5539           update docs
5540         * gst/gststructure.c: (gst_structure_set_valist),
5541         (gst_structure_from_abbr), (gst_structure_to_abbr):
5542         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5543         (gst_greatest_common_divisor), (gst_value_init_fraction),
5544         (gst_value_copy_fraction), (gst_value_collect_fraction),
5545         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5546         (gst_value_get_fraction_numerator),
5547         (gst_value_get_fraction_denominator),
5548         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5549         (gst_value_deserialize_fraction),
5550         (gst_value_transform_fraction_string),
5551         (gst_value_transform_string_fraction),
5552         (gst_value_compare_fraction), (_gst_value_initialize):
5553         * gst/gstvalue.h:
5554           adding GstFraction GValue type, get/set, and multiply
5555         * testsuite/caps/Makefile.am:
5556         * testsuite/caps/fraction.c: (test), (main):
5557         * testsuite/caps/string-conversions.c: (main):
5558         * testsuite/caps/value_compare.c: (test1), (main):
5559           add regression tests for GstFraction
5560
5561 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5562         
5563         * docs/manual/init-api.xml: Grammar fix
5564
5565 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5566
5567         * docs/manual/states.xml: Fix inconsistent information
5568
5569 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5570
5571         * gst/gstelement.c: (gst_element_set_state):
5572         * gst/gstpad.c: (gst_pad_try_set_caps):
5573         * gst/gststructure.c:
5574         * gst/gstthread.c: (gst_thread_child_state_change):
5575         * gst/gstvalue.c: (gst_value_compare_double):
5576         * gst/gstvalue.h:
5577         * testsuite/parse/parse1.c: (main):
5578           debugging additions and style cleanups
5579
5580 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5581
5582         * docs/manual/states.xml: Grammar fix
5583
5584 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5585
5586         * docs/manual/pads.xml: Grammar fix
5587
5588 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5589
5590         * docs/manual/elements.xml: Fixed image reference
5591
5592 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5593
5594         * docs/manual/goals.xml: Grammar fix
5595
5596 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5597
5598         * docs/manual/motivation.xml:
5599         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5600
5601 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5602
5603         * docs/manual/motivation.xml: Fix spelling
5604
5605 2004-07-15  Benjamin Otte  <otte@gnome.org>
5606
5607         * gst/gstelement.h: 
5608           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5609           strings.
5610         * gst/gstelement.c (gst_element_class_init):
5611           GError's are boxed, not objects
5612         * gst/gstmarshal.list:
5613           update list for the fixed error signal
5614
5615 2004-07-14  Andy Wingo  <wingo@pobox.com>
5616
5617         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5618         there all along, but the function wasn't. (guile-gstreamer's build
5619         system uses the address of the function -- I wasn't actually
5620         trying to use this.)
5621
5622 2004-07-14  Andy Wingo  <wingo@pobox.com>
5623
5624         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5625         as gst_pad_proxy_pad_link) just link to every other pad when they
5626         are called. In the case where the graph has cycles, this will mean
5627         that a call to try_set_caps will recurse. Allow this recursion
5628         and return OK, while we wait for the first try_set_caps to give a
5629         proper return value.
5630         (gst_pad_link_call_link_functions): Since this function is the
5631         only one to set the NEGOTIATING flag on a pad, if the flag is set
5632         it means that the link functions have indirectly recursed. If this
5633         happens, error out to avoid infinite recursion and an eventual
5634         SEGV.
5635         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5636         (gst_pad_proxy_getcaps): Intersect the result with the template
5637         caps to ensure that the return value is valid.
5638
5639 2004-07-14  Andy Wingo  <wingo@pobox.com>
5640
5641         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5642         one refcount, the calling function is the owner of the buffer.
5643
5644 2004-07-14  Wim Taymans  <wim@fluendo.com>
5645
5646         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5647         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5648         Fix stupid warning when an element is to be migrated but
5649         is already migrated.
5650
5651 2004-07-14  Wim Taymans  <wim@fluendo.com>
5652
5653         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5654         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5655         Make sure that a single non-loop-based element does not 
5656         end up in a group. This fixes the testsuite again.
5657
5658 2004-07-14  Wim Taymans  <wim@fluendo.com>
5659
5660         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5661         (add_to_group), (merge_groups), (schedule_group),
5662         (gst_opt_scheduler_get_wrapper), (group_elements),
5663         (group_dec_link), (gst_opt_scheduler_pad_link),
5664         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5665         (gst_opt_scheduler_iterate):
5666         move isolated groups to a new chain.
5667         Emit a warning instead of segfaulting in some error cases.
5668         Fix a bug where the link count between groups was not calculated 
5669         correctly. Fixes #144510.
5670
5671 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5672         * gst/elements/gstfilesrc.c:
5673           Binary files support under Windows now OK
5674       
5675 2004-07-13  Benjamin Otte  <otte@gnome.org>
5676
5677           compatibility fixes for Solaris 8/gcc 2.95
5678         * configure.ac:
5679           include libintl libs in LDFLAGS
5680         * gstvalue.c (gst_value_deserialize_buffer):
5681           cast isxdigit stuff to int to silence compiler warning
5682
5683 2004-07-12  Benjamin Otte  <otte@gnome.org>
5684
5685         * gst/gsttypes.h:
5686           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5687           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5688           just causes support madness
5689         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5690           make it work without this
5691         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5692         (gst_file_index_commit):
5693           glib IO channels don't want binary mode
5694         * testsuite/bytestream/filepadsink.c: (main):
5695         * testsuite/bytestream/test1.c: (read_param_file):
5696           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5697
5698 2004-07-12  Benjamin Otte  <otte@gnome.org>
5699
5700         * gst/gstelement.c: (gst_element_class_init),
5701         (gst_element_set_state), (gst_element_set_state_func):
5702           virutalize gst_element_set_state, use set_state member in class
5703           struct that was already added in 0.7 for this.
5704         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5705         (gst_bin_change_state):
5706           make gst_bin_foreach works similar to other foreach functions, plug
5707           memleaks in it. Make functions using it work with the new approach.
5708           Document gst_bin_foreach, so it can be exported if we want to
5709         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5710           use virtualized set_state to make set_state on bins set the state of
5711           all its children.
5712
5713 2004-07-12  Benjamin Otte  <otte@gnome.org>
5714
5715         * configure.ac:
5716           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5717           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5718         * gst/gstpad.c: (gst_pad_alloc_buffer):
5719           allow buffer_alloc functions to return NULL and allocate a normal
5720           buffer in that case
5721
5722 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5723         * gst/elements/gstfilesink.c:
5724         * gst/elements/gstfilesrc.c:
5725         * gst/indexers/gstfileindex.c:
5726         * gst/gsttypes.h:
5727         * testsuite/bytestream/filepadsink.c:
5728         * testsuite/bytestream/test1.c:
5729           Handle binary files under Windows
5730
5731 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5732         * docs/manual/win32.xml:
5733         * win32/config.h:
5734         * win32/gst-register.vcproj:
5735         * win32/gstreamer.def:
5736           Update to another gettext public build
5737
5738 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5739         * gst/gstplugin.c:
5740           Fix an impossible C syntax
5741         * win32/config.h:
5742           Disable i18n under Windows for the moment
5743         * win32/gst-register.vcproj:
5744           Use this configuration
5745
5746 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5747         * docs/manual/quotes.xml:
5748           Keep the quotes file alive
5749         * docs/random/ds/0.9-suggested-changes:
5750           Add the suggestion of including a 'rowstride' as part of video
5751           format caps
5752
5753 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5754
5755         * gst/gstelement.c: (gst_element_set_state),
5756         (gst_element_change_state):
5757           d'oh.  Set PENDING state correctly before forcing bin to change.
5758         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5759         (gst_structure_parse_fixed_list):
5760         * gst/schedulers/gstoptimalscheduler.c:
5761         (gst_opt_scheduler_state_transition):
5762         * testsuite/states/parent.c: (main):
5763           remove comment now that it's fixed.
5764
5765 2004-07-11  Benjamin Otte  <otte@gnome.org>
5766
5767         * gst/gstclock.h:
5768           GST_SECOND shouldn't cause a conversion to unsigned.
5769         * testsuite/clock/.cvsignore:
5770         * testsuite/clock/Makefile.am:
5771         * testsuite/clock/signedness.c: (main):
5772           make sure it never will again
5773
5774 2004-07-11  Andy Wingo  <wingo@pobox.com>
5775
5776         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5777         whose state is higher than the bin state, raise the bin state to
5778         ensure that bin state := highest child state.
5779         
5780 2004-07-11  Andy Wingo  <wingo@pobox.com>
5781
5782         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5783         procedure on the children of a bin. Assumes that the procedure can
5784         change the set of children.
5785         (set_kid_state_func): New static function.
5786         (gst_bin_change_state): Use gst_bin_foreach to call
5787         set_kid_state_func. Fixes a bug: if a child had a state-change
5788         handler that removes it from the bin, there would be a segfault.
5789         Hopefully it should also work in the case where the state-change
5790         handler on one child adds or removes other children. In any case,
5791         fixes should go to gst_bin_foreach.
5792
5793 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5794
5795         * gst/gstelement.c: (gst_element_set_state):
5796           compatibility fix for latest plugins release.  Change loop back
5797           to while {}
5798
5799 2004-07-09  Wim Taymans  <wim@fluendo.com>
5800
5801         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5802         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5803         (gst_thread_main_loop):
5804         Since remove is virtual in GstBin we must not assume the 
5805         elements GList to have anothing useful.
5806         Add some more logging to GstThread and be a bit more paranoid
5807         when resetting the scheduler.
5808         Set the state of the bin to NULL before removing the children.
5809
5810 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5811
5812         * testsuite/threads/Makefile.am:
5813         * testsuite/threads/threadg.c:
5814           added test to check if problem when removing all elements from a
5815           GstThread before setting GstThread state to NULL
5816
5817 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5818
5819         * docs/gst/tmpl/gstelement.sgml:
5820         * docs/gst/tmpl/gsttypes.sgml:
5821         * gst/gstbin.c: (gst_bin_change_state):
5822         * gst/gstelement.c: (gst_element_set_state),
5823         (gst_element_change_state):
5824           rework so that for bins we try to set the state on all children
5825           as well even if the bin is in the correct state already.
5826           change while to do so at least one iteration is done.
5827           For regular elements, we fall back to the previous behaviour for
5828           now since we first need a new plugins release.
5829         * testsuite/states/parent.c: (main):
5830           test for this case
5831           Fixes #123774
5832
5833 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5834
5835         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5836         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5837         (gst_queue_release_locks), (gst_queue_change_state),
5838         (gst_queue_set_property):
5839           add proper lock debugging.  Change dispose to finalize, since
5840           we're freeing mutexes and other stuff which should happen only once.
5841
5842 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5843
5844         * docs/gst/tmpl/gstelement.sgml:
5845         * docs/gst/tmpl/gstplugin.sgml:
5846         * docs/gst/tmpl/gsttypes.sgml:
5847         * docs/pwg/building-state.xml:
5848         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5849         * gst/gstelement.c: (gst_element_change_state):
5850         * gst/gstthread.c: (gst_thread_change_state):
5851           catch wrong state changes in element base class.
5852
5853 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5854
5855         * gst/gstinfo.h:
5856           clean up layout a little.
5857
5858 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5859
5860         * configure.ac:
5861         * testsuite/Makefile.am:
5862         * testsuite/states/Makefile.am:
5863         * testsuite/states/parent.c: (main):
5864           re-enable states testsuite dir.  Add test for state changes and
5865           parent behaviour
5866
5867 2004-07-09  Wim Taymans  <wim@fluendo.com>
5868
5869         * gst/schedulers/gstoptimalscheduler.c:
5870         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5871         (element_get_reachables_func), (element_get_reachables),
5872         (debug_element), (rechain_group), (group_migrate_connected),
5873         (gst_opt_scheduler_pad_unlink):
5874         Do not try to migrate decoupled elements to a new group since
5875         they are not added to groups.
5876
5877 2004-07-08  Benjamin Otte  <otte@gnome.org>
5878
5879         * gst/gstelement.c: (gst_element_error_func):
5880           make reentrant (= allow removing elements in error handler)
5881
5882 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5883
5884         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5885         (gst_pad_send_event), (gst_pad_call_chain_function):
5886           events sent to elements below PAUSED cannot be handled, so
5887           don't try to
5888
5889 2004-07-08  Wim Taymans  <wim@fluendo.com>
5890
5891         * gst/schedulers/gstoptimalscheduler.c:
5892         (chain_recursively_migrate_group), (create_group),
5893         (schedule_group), (gst_opt_scheduler_pad_link),
5894         (group_elements_set_visited), (element_get_reachables_func),
5895         (element_get_reachables), (group_can_reach_group), (debug_element),
5896         (rechain_group), (group_migrate_connected),
5897         (gst_opt_scheduler_pad_unlink):
5898         * testsuite/schedulers/Makefile.am:
5899         Implemented group splitting and rechaining.
5900         Fixes 143777 and 143777-2 in the testsuite.
5901
5902 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5903
5904         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5905           extra debugging
5906         * gst/gstevent.h:
5907         * gst/gstinfo.c: (gst_debug_log_default):
5908           print time nicely.  add thread pointer until someone figures out
5909           a completely portable way of getting at thread id's.
5910         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
5911         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
5912         (gst_pad_call_chain_function):
5913           extra debugging
5914         * gst/schedulers/gstoptimalscheduler.c:
5915         (get_group_schedule_function), (loop_group_schedule_function),
5916         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
5917         (pad_clear_queued), (gst_opt_scheduler_iterate):
5918           rename BUFPEN and friends to DATAPEN since that's what they are.
5919
5920 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5921
5922         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
5923         * gst/gstbuffer.h:
5924         * gst/gstpad.c:
5925           cleanups and debugging
5926
5927 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5928
5929         * configure.ac:
5930         * gst/gstvalue.c: (gst_value_compare_enum),
5931         (gst_value_serialize_enum), (gst_value_deserialize_enum),
5932         (gst_value_can_compare), (gst_value_compare):
5933         * testsuite/Makefile.am:
5934         * testsuite/enumcaps/Makefile.am:
5935         * testsuite/enumcaps/enumcaps.c:
5936           Fix enum serialization, deserialization, comparison in caps, add
5937           a test to ensure that this continues working in the future.
5938
5939 2004-07-06  David Schleef  <ds@schleef.org>
5940
5941         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
5942         Fix memleak.
5943
5944 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5945
5946         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
5947         * gst/gstplugin.h:
5948         * gst/registries/gstxmlregistry.c:
5949         (plugin_times_older_than_recurse), (plugin_times_older_than),
5950         (gst_xml_registry_parse_padtemplate):
5951           only rebuild registry when actual plugins have a newer time than
5952           the registry.  Fixes #145520
5953
5954 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5955
5956         * docs/manual/manual.xml:
5957         * docs/manual/win32.xml:
5958           add chapter on win32 building.  fixes #142422
5959
5960 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5961
5962         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
5963
5964         * gst/autoplug/gstspider.c: (gst_spider_init),
5965         (gst_spider_dispose):
5966           fix spider memleaks.  fixes #137863
5967
5968 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5969
5970         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
5971
5972         * gst/schedulers/gstoptimalscheduler.c:
5973         (gst_opt_scheduler_pad_unlink):
5974           fix SIGBUS error, fixes #145338
5975
5976 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5977
5978         * gst/gstobject.c: (gst_object_replace):
5979         * gst/gstscheduler.c: (gst_scheduler_get_clock):
5980         * gst/gstsystemclock.c: (gst_system_clock_obtain):
5981           clean up clock lifecycle.  Fixes #109831
5982
5983 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
5984
5985         * po/LINGUAS:
5986         * po/cs.po:
5987           added Czech translation (Miloslav Trmac)
5988
5989 2004-07-04  David Schleef  <ds@schleef.org>
5990
5991         * tools/Makefile.am:
5992         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
5993
5994 2004-07-04  David Schleef  <ds@schleef.org>
5995
5996         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
5997
5998 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
5999
6000         * gst/gstbin.c: (gst_bin_restore_thyself):
6001           chain to parent restore so the bins get restored correctly
6002           in the editor
6003
6004 2004-07-03  David Schleef  <ds@schleef.org>
6005
6006         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6007         Actually do something in these functions, like before the big
6008         caps change.  (bug #145137)
6009
6010 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6011
6012         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6013         (gst_element_get_compatible_pad_filtered):
6014         * gst/gstthread.c: (gst_thread_main_loop):
6015           more debugging
6016
6017 2004-07-02  David Schleef  <ds@schleef.org>
6018
6019         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6020         * gst/gstobject.h:
6021         * gst/gstparse.h:
6022         * gst/gsttrace.h:
6023         * gst/gstxml.h:
6024
6025 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6026
6027         * gst/gstpad.c: (gst_pad_check_schedulers),
6028         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6029         (gst_pad_link_prepare):
6030           revert until testsuite is fixed
6031
6032 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6033
6034         * testsuite/Makefile.am:
6035         * testsuite/caps/filtercaps.c: (main):
6036         * testsuite/clock/clock1.c: (main):
6037         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6038           fix some more tests
6039
6040 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6041
6042         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6043         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6044         * testsuite/cleanup/cleanup4.c: (main):
6045           fix testsuite
6046
6047 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6048
6049         * libs/gst/control/control.c:
6050         * libs/gst/control/dparam.c:
6051         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6052         * libs/gst/control/dparammanager.c:
6053         * libs/gst/control/dparammanager.h:
6054         * testsuite/dynparams/Makefile.am:
6055         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6056         (gst_dptest_change_state), (gst_dptest_chain), (main):
6057           fix testcase for dparams
6058           add debugging category
6059
6060 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6061
6062         * testsuite/Rules:
6063           change path
6064
6065 2004-07-02  Benjamin Otte  <otte@gnome.org>
6066
6067         * tests/.cvsignore:
6068         * tests/Makefile.am:
6069         * tests/mass_elements.c: (gst_get_current_time), (main):
6070           add simple benchmark to test various speeds of fakesrc ! identity !
6071           identity ! ... ! fakesink.
6072           Usage: mass_elements [num_identities] [num_buffers]
6073           If not specified they default to 1000.
6074
6075 2004-07-02  Benjamin Otte  <otte@gnome.org>
6076
6077         * gst/gstpad.c: (gst_pad_check_schedulers),
6078         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6079         (gst_pad_link_prepare):
6080           check that pads that get linked belong to the same manager. The old
6081           code allowed linking elements before putting them into bins, so it
6082           worked to link them and then put them in different threads, which
6083           lead to weird behaviour.
6084           Since this effectively disallows linking elements before putting
6085           them in a bin, some applications might not work after this and error
6086           out. If these applications are too critical, we might need to revert
6087           that patch. Please test this before the next release...
6088
6089 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6090
6091         * gst/gstpad.c: (gst_pad_get_caps):
6092           throw an error if the getcaps function does not return a subset of
6093           the template caps.
6094         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6095           make disconts without position info an error in debugging
6096         * tests/spidey_bench.c: (handoff), (main):
6097           don't count first try when averaging
6098
6099 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6100
6101         * gst/gstplugin.c: (gst_plugin_load_file):
6102           figure out problem with dynamic test
6103
6104 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6105
6106         * docs/gst/Makefile.am:
6107           fix docs build
6108
6109 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6110
6111         * po/POTFILES.in:
6112         * po/af.po:
6113         * po/az.po:
6114         * po/en_GB.po:
6115         * po/fr.po:
6116         * po/nl.po:
6117         * po/sr.po:
6118         * po/sv.po:
6119         * po/tr.po:
6120         * po/uk.po:
6121         * tools/gst-register.c: (plugin_added_func), (main):
6122           i18n-ize -register, fix plural
6123
6124 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6125
6126         * gst/elements/gstidentity.c: (gst_identity_class_init),
6127         (gst_identity_init), (gst_identity_chain),
6128         (gst_identity_set_property), (gst_identity_get_property):
6129         * gst/elements/gstidentity.h:
6130           check for perfect stream
6131
6132 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6133
6134         * gst/elements/gstidentity.c: (gst_identity_chain):
6135           print offset_end
6136
6137 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6138
6139         * docs/gst/Makefile.am:
6140         * docs/gst/gstreamer-docs.sgml:
6141           doc fixes
6142
6143 2004-06-24  David Schleef  <ds@schleef.org>
6144
6145         * autogen.sh:  Remove call to env, since the buildbot isn't
6146         broken anymore.
6147
6148 2004-06-24  Wim Taymans  <wim@fluendo.com>
6149
6150         * gst/elements/Makefile.am:
6151         * gst/elements/gstelements.c:
6152         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6153         (gst_multifdsink_class_init), (gst_multifdsink_init),
6154         (gst_multifdsink_add), (gst_multifdsink_remove),
6155         (gst_multifdsink_clear), (gst_multifdsink_chain),
6156         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6157         * gst/elements/gstmultifdsink.h:
6158         Added an element that writes to multiple filedescriptors at once.
6159
6160 2004-06-24  Benjamin Otte  <otte@gnome.org>
6161
6162         * gst/parse/grammar.y:
6163           don't try to link elements before they have been added to bins
6164
6165 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6166
6167         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6168         (gst_file_pad_get_length):
6169         * libs/gst/bytestream/filepad.h:
6170           add 2 new functions
6171
6172 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6173
6174         * docs/gst/gstreamer-sections.txt:
6175         remove from docs, the define that Benjamin removed from gstelement.h
6176
6177 2004-06-22  Benjamin Otte  <otte@gnome.org>
6178
6179         * gst/gstelement.h:
6180           remove define that referenced a nonexisting GstElement struct member
6181
6182 2004-06-20  Benjamin Otte  <otte@gnome.org>
6183
6184         * gst/gstdata.c: (gst_data_is_writable):
6185           whoops, return values were wrong, so writable data was marked as
6186           non-writable and vice versa. (fixes #143953, spotted by Francis
6187           Labonte)
6188           Shows how rarely we need to copy data ;)
6189
6190 2004-06-20  Benjamin Otte  <otte@gnome.org>
6191
6192         * testsuite/schedulers/.cvsignore:
6193         * testsuite/schedulers/Makefile.am:
6194         * testsuite/schedulers/143777-2.c: (main):
6195           add test for opt breakage in bug #143777
6196
6197 2004-06-20  Benjamin Otte  <otte@gnome.org>
6198
6199         * gst/gstpad.c: (gst_pad_call_chain_function):
6200           check for if we were unlinked while inside the chainfunction (fixes
6201           entrygthread having issues with #143777)
6202         * testsuite/schedulers/143777.c: (main):
6203         * testsuite/schedulers/Makefile.am:
6204           add a test for that fix
6205
6206 2004-06-20  Benjamin Otte  <otte@gnome.org>
6207
6208         * gst/gstvalue.c: (gst_value_set_int_range):
6209           test that start is smaller then end
6210         * libs/gst/bytestream/Makefile.am:
6211         * libs/gst/bytestream/filepad.c: 
6212         * libs/gst/bytestream/filepad.h:
6213           add GstFilePad - a pad that behaves like a FILE*
6214         * testsuite/bytestream/.cvsignore:
6215         * testsuite/bytestream/Makefile.am:
6216         * testsuite/bytestream/filepadsink.c: 
6217           test for the GstFilePad
6218
6219 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6220
6221         * gst/elements/gstidentity.c: (gst_identity_class_init),
6222         (gst_identity_init), (gst_identity_set_clock),
6223         (gst_identity_chain), (gst_identity_set_property),
6224         (gst_identity_get_property):
6225         * gst/elements/gstidentity.h:
6226         * gst/gstclock.c: (gst_clock_id_wait):
6227           add a "sync" property to sync to the clock
6228
6229 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6230
6231         * gst/gstelementfactory.c: (gst_element_factory_create):
6232           make the freakin "elementfactory bla has no type" message more
6233           useful. So we actually can do something when someone shows up
6234           complaining about it.
6235
6236 2004-06-15  Johan Dahlin  <johan@gnome.org>
6237
6238         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6239         found. This matches the old behavior better. Thanks to Thomas for
6240         pointing out.
6241
6242 2004-06-14  David Schleef  <ds@schleef.org>
6243
6244         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6245         -fomit-frame-pointer.  Appears to generate correct code in
6246         other cases as well.
6247
6248 2004-06-14  Johan Dahlin  <johan@gnome.org>
6249
6250         * tools/gst-inspect.c (main): Add two new command line options: -a
6251         to print all elements and -n to print the name on each line. Also
6252         fix some error reporting.
6253         (main): Simplify, remove -n and always print names if -a is specified
6254
6255 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6256
6257         * win32/gstconfig.h:
6258         * win32/GSTreamer.vcproj:
6259         * win32/Makefile:
6260         * gst/gstconfig.h.in:
6261         * gst/gst.h:
6262         * gst/gstbin.h:
6263         * gst/gstelement.h:
6264         * gst/gstevent.h:
6265         * gst/gstobject.h:
6266         * gst/gstpad.h:
6267         * docs/gst/gstreamer-sections.txt:
6268         * docs/gst/tmpl/gstconfig.sgml:
6269           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6270
6271 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6272         * docs/gst/gstreamer-sections.txt:
6273         * docs/gst/tmpl/gstconfig.sgml:
6274         Add the GSTREAMER_EXPORT macro to the docs
6275
6276 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6277
6278         * tools/gst-compprep.c: (handle_xmlerror), (main):
6279         Add a check for the version that introduced SetStructuredError to fix
6280         the build on FC1
6281
6282 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6283
6284         * win32/msvc71.sln:
6285         * win32/testsuite/:
6286           prepare to compile the testsuite with MSVC
6287
6288 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6289
6290         * docs/manual/win32.xml:
6291           attempt to transform the Win32 README into an XML doc
6292
6293 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6294
6295         * gst/gst.c:
6296         * gst/gstbin.*:
6297         * gst/config.h.in:
6298         * gst/gstelement.*:
6299         * gst/gstevent.h:
6300         * gst/gstobject.*:
6301         * gst/gstpad.h:
6302         * tools/gst-register.c:
6303         * win32/gstreamer.def:
6304           extern symbols are now exported for the Windows DLL
6305
6306 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6307
6308         * gst/gstinfo.h:
6309           fix a problem to enable/disable DEBUG under MSVC
6310
6311 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6312
6313         * win32/:
6314           enable more debug code in DEBUG build
6315
6316 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6317
6318         * win32/config.h:
6319         * gst/gst-i18n-app.h:
6320           enable NLS under Windows
6321
6322 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6323         * tools/gst-compprep.c: (handle_xmlerror), (main):
6324           Make an error that baffled me a bit clearer
6325
6326 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6327
6328         * gst/gstqueue.c:
6329           don't use g_queue_get_length () because it's 2.4, use ->length
6330
6331 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6332
6333         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6334
6335         * tools/gst-inspect.c: (print_signal_info):
6336           don't free random data twice. (fixes #144185)
6337
6338 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6339
6340         * gst/gstqueue.c:
6341         * gst/gstqueue.h:
6342           fix removing from the wrong queue on event timeout
6343           fix disposing of the event queue by casting correctly
6344           add mutexes for handling the event queue
6345           someone was sleeping when fixing queue last time around :)
6346
6347 2004-06-10  Johan Dahlin  <johan@gnome.org>
6348
6349         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6350         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6351
6352 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6353
6354         * docs/random/gdp:
6355         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6356         * libs/gst/dataprotocol/dataprotocol.c:
6357         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6358         (gst_dp_buffer_from_header):
6359         * libs/gst/dataprotocol/dataprotocol.h:
6360         * libs/gst/dataprotocol/dp-private.h:
6361           rev version to 0.1, add buffer flags and copy them
6362
6363 2004-06-09  Johan Dahlin  <johan@gnome.org>
6364
6365         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6366         the flags from the buffer we're copying.
6367
6368 2004-06-09  Wim Taymans  <wim@fluendo.com>
6369
6370         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6371         * gst/elements/gstidentity.c: (gst_identity_init),
6372         (gst_identity_chain):
6373         Print more buffer info in fakesink.
6374         Make identity output similar to fakesink.
6375
6376 2004-06-07  Daniel Gazard  <dany42@free.fr>
6377
6378         reviewed by Benjamin Otte  <otte@gnome.org>
6379
6380         * configure.ac:
6381           fix cross compiling not working. (fixes #143741)
6382
6383 2004-06-07  Benjamin Otte  <otte@gnome.org>
6384
6385         * gst/gstelement.c: (gst_element_set_time_delay):
6386           add failure check
6387         * gst/gstinfo.h:
6388           put brackets around macro arguments of GST_TIME_ARGS, add note to
6389           move it to correct header in 0.9
6390
6391 2004-06-07  Benjamin Otte  <otte@gnome.org>
6392
6393         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6394         (gst_file_index_load), (_file_index_id_save_entries),
6395         (gst_file_index_commit), (gst_file_index_add_association),
6396         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6397         (gst_file_index_plugin_init):
6398           make debugging use a default category
6399
6400 2004-06-06  David Moore  <dcm@acm.org>
6401
6402         reviewed by Benjamin Otte  <otte@gnome.org>
6403
6404         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6405         (gst_fdsrc_change_state):
6406           reset offset counter when going READY => PAUSED. (fixes #142903)
6407
6408 2004-06-06  ed@catmur.co.uk
6409
6410         reviewed by Benjamin Otte  <otte@gnome.org>
6411
6412         * gst/registries/gstxmlregistry.c:
6413         (gst_xml_registry_rebuild_recurse):
6414           don't rely on g_dir_open to figure out if a file is a directory, use
6415           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6416           directories. (fixes #142850)
6417
6418 2004-06-06  Benjamin Otte  <otte@gnome.org>
6419
6420         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6421           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6422         * libs/gst/bytestream/adapter.c:
6423         * libs/gst/bytestream/adapter.h:
6424           fix copyright in header and typo in debugging category name
6425
6426 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6427
6428         * configure.ac:
6429           bump nano to cvs
6430
6431 === release 0.8.3 ===
6432
6433 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6434
6435         * configure.ac:
6436           update libtool versioning
6437           do a new release
6438         * docs/gst/tmpl/gstelement.sgml:
6439         * docs/gst/tmpl/gsttypes.sgml:
6440         * gst/gstinfo.c: (_gst_debug_init):
6441           put back GST_CAT_DATAFLOW to fix API breakage
6442
6443 2004-06-04  David Schleef  <ds@schleef.org>
6444
6445         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6446
6447 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6448
6449         * configure.ac:
6450           bump nano to cvs
6451
6452 === release 0.8.2 ===
6453
6454 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6455
6456         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6457           check GST_DEBUG environment variable which is parsed the same way
6458           as --gst-debug=
6459
6460 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6461
6462         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6463                             gstmd5sink.c gstshaper.c gsttee.c
6464                             gsttypefindelement.c
6465         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6466
6467           - removing trailing commas at end of enums
6468             it is correct C99 code but C90 compilers would complain
6469             (AIX, Forte, ...)
6470             ('should' fix #143290, at least partially)
6471
6472 2004-05-27  Wim Taymans  <wim@fluendo.com>
6473
6474         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6475         (chain_group_set_enabled), (create_group), (add_to_group),
6476         (merge_groups), (setup_group_scheduler), (group_elements),
6477         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6478         Don't try to follow the pad connections with other groups
6479         when a loop based element is added to the scheduler because
6480         the bin will inform the scheduler about the pad links a little
6481         later.
6482
6483 2004-05-27  Wim Taymans  <wim@fluendo.com>
6484
6485         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6486         (remove_from_chain), (chain_group_set_enabled),
6487         (setup_group_scheduler), (group_element_set_enabled),
6488         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6489         (gst_opt_scheduler_show):
6490         Elements without a group can do a state change as well, just wait
6491         with the setup of the scheduling function when it is added to a
6492         chain.
6493
6494 2004-05-27  Wim Taymans  <wim@fluendo.com>
6495
6496         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6497         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6498         (merge_groups), (setup_group_scheduler),
6499         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6500         (gst_opt_scheduler_show):
6501         Fixes to maintain internal consistency of the scheduler data
6502         structures. 
6503          - adding an enabled group to a chain should increment the
6504            number of enabled elements in that chain.
6505          - removing an enabled group from a chain could disable the
6506            chain.
6507          - removing a disabled group from a chain could enable the
6508            chain.
6509          - add g_assert when internal inconsistency is detected.
6510          - adding an element to a group could increase the number of
6511            links this group has with other groups.
6512          - merging two groups also merges the chains.
6513          - also show group links in the _show method.
6514            
6515
6516 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6517
6518         * gst/gstcaps.c: (gst_caps_structure_simplify):
6519           don't print error messages when there is no error
6520         * gst/gstvalue.c: (gst_value_compare_int_range):
6521           compare the second value, too
6522         * testsuite/caps/Makefile.am:
6523         * testsuite/caps/random.c: (assert_on_error), (main):
6524           add tests to make sure the two things above are checked for
6525
6526 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6527
6528         * configure.ac:
6529         * libs/gst/dataprotocol/Makefile.am:
6530         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6531         * libs/gst/dataprotocol/dataprotocol.h:
6532           wrap header in GST_ENABLE_NEW.  make code use it
6533
6534 2004-05-23  Johan Dahlin  <johan@gnome.org>
6535
6536         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6537         so verbose and print GstElement signal names all the time.
6538
6539 2004-05-22  David Schleef  <ds@schleef.org>
6540
6541         * gst/registries/gstxmlregistry.c:
6542         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6543         (bug #142957)
6544
6545 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6546
6547         * configure.ac:
6548           scrub cflags for glib2 so gcc doesn't complain when glib is in
6549           /usr/local
6550
6551 2004-05-21  Johan Dahlin  <johan@gnome.org>
6552
6553         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6554         __GNUC__, patch from Brian Cameron, fixes bug #142804
6555
6556 2004-05-20  David Schleef  <ds@schleef.org>
6557
6558         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6559         comparison code.  (bug #142819)
6560
6561 2004-05-20  Wim Taymans  <wim@fluendo.com>
6562
6563         * gst/gstbuffer.c: (gst_buffer_default_copy):
6564         * gst/gstbuffer.h:
6565         Added Comment to a flag.
6566         copy relevant flags in _buffer_copy.
6567
6568 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6569
6570         reviewed by: Wim Taymans <wim at fluendo dot com>
6571
6572         * gst/gstbuffer.h:
6573           add GST_BUFFER_IN_CAPS buffer flag
6574         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6575         (gst_structure_parse_any_list), (gst_structure_parse_list),
6576         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6577         * gst/gstvalue.c: (gst_value_serialize_any_list),
6578         (gst_value_transform_any_list_string),
6579         (gst_value_list_prepend_value), (gst_value_list_append_value),
6580         (gst_value_list_get_size), (gst_value_list_get_value),
6581         (gst_value_transform_list_string),
6582         (gst_value_transform_fixed_list_string),
6583         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6584         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6585         (_gst_value_initialize):
6586         * gst/gstvalue.h:
6587           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6588           < , > as a format.
6589         * testsuite/caps/string-conversions.c: (main):
6590           add regression tests for < >
6591
6592 2004-05-20  Johan Dahlin  <johan@gnome.org>
6593
6594         * docs/gst/Makefile.am (all-local): Re-add
6595
6596 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6597
6598         * docs/gst/Makefile.am:
6599         * docs/gst/gstreamer-docs.sgml:
6600         * docs/libs/Makefile.am:
6601         * docs/libs/gstreamer-libs-docs.sgml:
6602           fix distcheck issues
6603
6604 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6605
6606         * libs/gst/dataprotocol/Makefile.am:
6607           add to autotest
6608
6609 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6610
6611         * libs/gst/dataprotocol/Makefile.am:
6612         * libs/gst/dataprotocol/dataprotocol.c:
6613         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6614         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6615         * libs/gst/dataprotocol/dp-private.h:
6616           use GST macros to read/write fixed length ints
6617           add some more asserts
6618
6619 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6620
6621         * docs/libs/gstreamer-libs-docs.sgml:
6622         * docs/libs/gstreamer-libs-sections.txt:
6623           remove idct and putbits
6624         * configure.ac:
6625         * docs/libs/tmpl/gstdataprotocol.sgml:
6626         * libs/gst/Makefile.am:
6627         * libs/gst/dataprotocol/Makefile.am:
6628         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6629         (buffer_test), (caps_test), (event_test), (main):
6630         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6631         (gst_dp_dump_byte_array), (gst_dp_init),
6632         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6633         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6634         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6635         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6636         (gst_dp_validate_header), (gst_dp_validate_payload),
6637         (gst_dp_validate_packet), (plugin_init):
6638         * libs/gst/dataprotocol/dataprotocol.h:
6639         * libs/gst/dataprotocol/dp-private.h:
6640           add dataprotocol
6641
6642 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6643
6644         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6645           fix int variable deserialization and add a helper so we can actually
6646           debug this.
6647
6648 2004-05-18  David Schleef  <ds@schleef.org>
6649
6650         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6651           argv[0].  Calling yourself is probably not the best way to
6652           construct a test like this, btw.
6653
6654 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6655
6656         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6657           don't claim to be more intelligent than a scheduler when the
6658           scheduler claims the pipeline is stopped
6659         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6660         (safe_cothread_destroy),
6661         (gst_entry_scheduler_remove_all_cothreads),
6662         (gst_entry_scheduler_reset), (_remove_cothread),
6663         (gst_entry_scheduler_state_transition):
6664           hold off cothread destruction if we're not in main cothread
6665         * configure.ac:
6666         * testsuite/Makefile.am:
6667           add new test dir
6668         * testsuite/schedulers/.cvsignore:
6669         * testsuite/schedulers/Makefile.am:
6670           add tests
6671         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6672           check relinking and adding/removing elements from a running pipeline
6673         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6674           check unlinking in a running pipeline
6675         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6676           check unreffing a running pipeline
6677         * testsuite/schedulers/useless_iteration.c: (main):
6678           check iterating a pipeline that contains running threads works
6679
6680 2004-05-18  David Schleef  <ds@schleef.org>
6681
6682         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6683           is false.
6684
6685 2004-05-18  Wim Taymans  <wim@fluendo.com>
6686
6687         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6688         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6689         Fixed an error introduced with patch for 1.63. When setting
6690         a get based element as the entry point in a group, make sure
6691         to mark the group as GET based.
6692
6693 2004-05-18  Wim Taymans  <wim@fluendo.com>
6694
6695         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6696         (setup_group_scheduler), (loop_group_schedule_function),
6697         (gst_opt_scheduler_pad_link):
6698         Added some more debug info and fixed a bug where the group
6699         type was set to LOOP but it was in fact unknown.
6700
6701 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6702
6703         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6704           make resetting scheduler work twice in a row
6705
6706 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6707
6708         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6709         (CREATE_USERIALIZATION), (_gst_value_initialize),
6710         (gst_value_compare_float), (gst_value_serialize_float),
6711         (gst_value_deserialize_float), (gst_value_compare_enum),
6712         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6713           add serialization and comparison functions for long, int64, enum and
6714           float values
6715         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6716           use best serialization function in type hierarchy instead of only a
6717           matching one. This is required for enums to work.
6718         * gst/parse/grammar.y:
6719           use gst_caps_deserialize
6720         * testsuite/parse/Makefile.am:
6721           parse1 now works
6722         * testsuite/parse/parse1.c: (main):
6723           remove aggregator check, aggregator is broken, this test works now
6724           but fails because of bug #138012
6725         * testsuite/parse/parse2.c: (main):
6726           s/xvideosink/xvimagesink - this test looks a lot like we should
6727           disable it
6728
6729 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6730
6731         * gst/gstelement.c: (gst_element_class_init):
6732           whoops, store the signal id correctly
6733         * gst/schedulers/gstbasicscheduler.c:
6734         (gst_basic_scheduler_chain_wrapper):
6735           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6736           chain function isn't linked
6737
6738 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6739         * configure.ac:
6740         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6741         support until we decide where the flags should be used
6742         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6743         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6744         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6745         Output refused caps in the debug info
6746
6747 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6748
6749         * gst/elements/gstidentity.c: (gst_identity_chain):
6750           add duration debug
6751         * gst/gstinfo.c: (gst_debug_log_default):
6752           add timestamp
6753
6754 2004-05-13  Benjamin Otte  <otte@gnome.org>
6755
6756         * gst/gstpipeline.c: (gst_pipeline_dispose),
6757         (gst_pipeline_change_state):
6758           call gst_scheduler_reset on dispose (fixes #141416)
6759
6760 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6761
6762         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6763           compute mapsize correctly
6764         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6765           use correct datatypes when calling a varargs function
6766         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6767           push a DISCONT event as first thing
6768         * gst/gst_private.h:
6769         * gst/gstinfo.c: (_gst_debug_init):
6770           remove GST_DATAFLOW debugging category
6771         * gst/gstbin.c: (gst_bin_iterate):
6772           use GST_SCHEDULING category
6773         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6774         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6775         (gst_pad_call_get_function):
6776           add GST_DATAFLOW to easily track flow of buffers or events.
6777         * gst/gstqueue.c: (gst_queue_get_type),
6778         (gst_queue_handle_pending_events), (gst_queue_chain),
6779         (gst_queue_get), (gst_queue_handle_src_event):
6780           use own static debugging category GST_DATAFLOW for dataflow,
6781           use DEBUG category for showing which path events go, use LOG
6782           category for buffers.
6783
6784 2004-05-10  David Schleef  <ds@schleef.org>
6785
6786         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6787
6788 2004-05-10  David Schleef  <ds@schleef.org>
6789
6790         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6791         symbols, because otherwise we don't know what they are.  Thanks,
6792         the GStreamer team.
6793         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6794
6795 2004-05-10  David Schleef  <ds@schleef.org>
6796
6797         (from Steve Lhomme)
6798         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6799         are deleted.  Fix.
6800         * win32/Makefile.inspect:
6801         * win32/Makefile.launch:
6802         * win32/Makefile.register:
6803
6804 2004-05-10  David Schleef  <ds@schleef.org>
6805
6806         * gst/gstinfo.h: Add missing inline function.
6807         * gst/gsttrace.c: add include
6808         * gst/parse/grammar.y: remove unused code
6809         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6810         more portable.
6811         * tools/gst-register.c: wrap unistd.h
6812         
6813         More additions/fixes from Steve for the MSVC build.
6814         * win32/GStreamer.vcproj:
6815         * win32/Makefile:
6816         * win32/Makefile.inspect:
6817         * win32/Makefile.launch:
6818         * win32/Makefile.register:
6819         * win32/README.txt:
6820         * win32/gst-inspect.vcproj:
6821         * win32/gst-launch.vcproj:
6822         * win32/gst-register.vcproj:
6823         * win32/gstbytestream.def:
6824         * win32/gstbytestream.vcproj:
6825         * win32/gstconfig.h:
6826         * win32/gstelements.def:
6827         * win32/gstelements.vcproj:
6828         * win32/gstenumtypes.c:
6829         * win32/gstenumtypes.h:
6830         * win32/gstoptimalscheduler.def:
6831         * win32/gstoptimalscheduler.vcproj:
6832         * win32/gstreamer.def:
6833         * win32/gstspider.def:
6834         * win32/gstspider.vcproj:
6835         * win32/gstversion.h:
6836         * win32/msvc71.sln:
6837
6838 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6839
6840         * gst/gstelement.c: (gst_element_class_init),
6841         (gst_element_no_more_pads):
6842         * gst/gstelement.h:
6843           add gst_element_no_more_pads and the "no-more-pads" signal
6844
6845 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6846
6847         * gst/gstregistry.c: (gst_registry_add_plugin):
6848           refuse to add plugins when a plugin with same name is already
6849           registered. Fixes a bunch of "How to remove plugins?" issues.
6850           May lead to other problems though, let's test
6851
6852 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6853
6854         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6855         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6856         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6857
6858 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6859
6860         * tests/Makefile.am: fix am16 issue
6861
6862 2004-05-09  Benjamin Otte  <otte@gnome.org>
6863
6864         * libs/gst/bytestream/Makefile.am:
6865           we should indeed add .c files to makefiles or they won't be built
6866           (d'oh)
6867
6868 2004-05-08  Benjamin Otte  <otte@gnome.org>
6869
6870         * gst/gstpad.c: (gst_pad_proxy_fixate):
6871           really reduce the set of caps
6872
6873 2004-05-08  Benjamin Otte  <otte@gnome.org>
6874
6875         * tests/Makefile.am:
6876         * tests/spidey_bench.c: (handoff), (main):
6877           add benchmark to test how long spider needs to create a pipeline
6878
6879 2004-05-08  Benjamin Otte  <otte@gnome.org>
6880
6881         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6882           mark links as unengaged when unnegotiating instead of deactivating.
6883           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6884
6885 2004-05-08  Benjamin Otte  <otte@gnome.org>
6886
6887         * docs/manual/helloworld.xml:
6888           s/audiosink/osssink (patch by Patrick Guimond)
6889
6890 2004-05-07  David Schleef  <ds@schleef.org>
6891
6892         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
6893         since it contains important stuff.
6894
6895 2004-05-07  David Schleef  <ds@schleef.org>
6896
6897         * testsuite/caps/caps.c: (test3), (main): A check for appending
6898         ANY caps.
6899
6900 2004-05-07  David Schleef  <ds@schleef.org>
6901
6902         * common/m4/as-compiler-flag.m4: Properly quote arguments,
6903         which may contain commas.  Fixes detection of -Wa,-mregnames
6904
6905 2004-05-06  David Schleef  <ds@schleef.org>
6906
6907         Changes to handle compilers that don't have variadic macro
6908         support.  In particular, glib headers define some inlines
6909         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
6910         builds.
6911         * gst/Makefile.am:
6912         * gst/cothreads.c:
6913         * gst/elements/gstfdsink.c:
6914         * gst/elements/gstfdsrc.c:
6915         * gst/elements/gstfilesink.c:
6916         * gst/elements/gstfilesrc.c:
6917         * gst/gst_private.h:
6918         * gst/gstatomic.c:
6919         * gst/gstcaps.c: (gst_caps_append):
6920         * gst/gstcpu.c: (gst_cpuid_i386):
6921         * gst/gstelement.c:
6922         * gst/gsterror.c:
6923         * gst/gstfilter.c:
6924         * gst/gstinfo.h:
6925         * gst/gstprobe.c:
6926         * gst/gstquery.c:
6927         * gst/gstregistry.c:
6928         * gst/gststructure.c:
6929         * gst/gsttaginterface.c:
6930         * gst/gsttrace.c: (gst_trace_new):
6931         * gst/gsttrashstack.c:
6932         * gst/gsturi.c:
6933         * gst/gstvalue.c:
6934         * gst/parse/grammar.y:
6935         * gst/parse/parse.l:
6936         * tools/gst-inspect.c: (main):
6937         * tools/gst-launch.c: (main):
6938         * tools/gst-xmlinspect.c: (PUT_STRING):
6939
6940 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6941
6942         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
6943         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
6944         * gst/elements/gstfilesrc.h:
6945           send NEW_MEDIA events correctly
6946         * gst/elements/gsttypefindelement.c: (start_typefinding),
6947         (gst_type_find_element_handle_event):
6948           restart typefinding when we get a NEW_MEDIA event
6949         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
6950         (gst_bin_dispose):
6951           don't die when someone removes elements in callbacks
6952         * gst/gstelement.c: (gst_element_change_state):
6953           improve debugging
6954         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
6955           we need a NEW_MEDIA event to engage a link
6956         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
6957           don't g_print debugging stuff
6958         * testsuite/caps/simplify.c: (check_caps):
6959
6960 2004-05-04  Benjamin Otte  <otte@gnome.org>
6961
6962         * gst/parse/grammar.y:
6963           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
6964
6965 2004-05-04  Benjamin Otte  <otte@gnome.org>
6966
6967         * testsuite/caps/renegotiate.c: (main):
6968           improve output in error case
6969
6970 2004-05-04  Benjamin Otte  <otte@gnome.org>
6971
6972         * gst/parse/grammar.y:
6973           fix assert to not trigger when there's no error argument
6974         * gst/parse/parse.l:
6975           fix definition of caps to allow more than two structures
6976         * testsuite/caps/Makefile.am:
6977         * testsuite/caps/renegotiate.c: (main):
6978           it's sinesrc and works in that case
6979
6980 2004-05-04  Wim Taymans  <wim@fluendo.com>
6981
6982         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6983         (group_dec_link), (gst_opt_scheduler_pad_unlink):
6984         when removing an element from a group, we always need to
6985         decrement the link count that this group had with other 
6986         groups through the element.
6987         added an extra assert to catch inconsistencies when decrementing
6988         the link count.
6989
6990 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6991
6992         * configure.ac:
6993         * docs/gst/Makefile.am:
6994         * docs/gst/gstreamer-sections.txt:
6995         * docs/gst/tmpl/gstcompat.sgml:
6996         * examples/appreader/Makefile.am:
6997         * examples/cutter/Makefile.am:
6998         * examples/events/Makefile.am:
6999         * examples/helloworld/Makefile.am:
7000         * examples/helloworld2/Makefile.am:
7001         * examples/launch/Makefile.am:
7002         * examples/manual/Makefile.am:
7003         * examples/mixer/Makefile.am:
7004         * examples/pingpong/Makefile.am:
7005         * examples/plugins/Makefile.am:
7006         * examples/queue/Makefile.am:
7007         * examples/queue2/Makefile.am:
7008         * examples/queue3/Makefile.am:
7009         * examples/queue4/Makefile.am:
7010         * examples/retag/Makefile.am:
7011         * examples/thread/Makefile.am:
7012         * examples/typefind/Makefile.am:
7013         * examples/xml/Makefile.am:
7014         * gst/Makefile.am:
7015         * gst/autoplug/Makefile.am:
7016         * gst/elements/Makefile.am:
7017         * gst/gstcompat.h:
7018         * gst/indexers/Makefile.am:
7019         * gst/parse/Makefile.am:
7020         * gst/registries/Makefile.am:
7021         * gst/schedulers/Makefile.am:
7022         * libs/gst/bytestream/Makefile.am:
7023         * libs/gst/control/Makefile.am:
7024         * libs/gst/getbits/Makefile.am:
7025         * po/af.po:
7026         * po/az.po:
7027         * po/en_GB.po:
7028         * po/fr.po:
7029         * po/nl.po:
7030         * po/sr.po:
7031         * po/sv.po:
7032         * po/tr.po:
7033         * po/uk.po:
7034         * tests/Makefile.am:
7035         * tests/bufspeed/Makefile.am:
7036         * tests/instantiate/Makefile.am:
7037         * tests/memchunk/Makefile.am:
7038         * tests/muxing/Makefile.am:
7039         * tests/negotiation/Makefile.am:
7040         * tests/probes/Makefile.am:
7041         * tests/sched/Makefile.am:
7042         * tests/seeking/Makefile.am:
7043         * tests/threadstate/Makefile.am:
7044         * testsuite/caps/Makefile.am:
7045         * testsuite/cleanup/Makefile.am:
7046         * testsuite/dlopen/Makefile.am:
7047         * testsuite/dynparams/Makefile.am:
7048         * testsuite/plugin/Makefile.am:
7049         * testsuite/states/Makefile.am:
7050         * tools/Makefile.am:
7051           reorganize compile/link flags to be consistent
7052           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7053
7054 2004-05-04  David Schleef  <ds@schleef.org>
7055
7056         The "once more, with feeling" check-in.
7057         * testsuite/caps/Makefile.am: dist caps_strings
7058         * testsuite/caps/renegotiate.c: (main): This test triggers a
7059           segfault in the core.  Marking as failing.
7060
7061 2004-05-03  David Schleef  <ds@schleef.org>
7062
7063         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7064           by the build bots.
7065         * testsuite/caps/renegotiate.c: (main): Same.
7066
7067 2004-05-03  David Schleef  <ds@schleef.org>
7068
7069         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7070
7071 2004-05-03  David Schleef  <ds@schleef.org>
7072
7073         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7074           variable to find our source file.
7075
7076 2004-05-03  David Schleef  <ds@schleef.org>
7077
7078         * configure.ac:  Link plugins with libgstreamer and dependent
7079           libraries
7080         * testsuite/caps/Makefile.am:
7081         * testsuite/caps/caps_strings:
7082         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7083           through a file of caps strings and test each one
7084
7085 2004-05-04  Benjamin Otte  <otte@gnome.org>
7086
7087         * libs/gst/bytestream/Makefile.am:
7088         * libs/gst/bytestream/adapter.c: 
7089         * libs/gst/bytestream/adapter.h:
7090           add GstAdapter, similar to bytestream, but doesn't require ugly event
7091           handling or uglier loopbased elements
7092
7093 2004-05-03  David Schleef  <ds@schleef.org>
7094
7095         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7096         * testsuite/caps/erathostenes.c:
7097         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7098
7099 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7100
7101         * docs/pwg/pwg.xml:
7102           remove hardcoded stylesheet path (duh)
7103         * docs/random/release:
7104         * docs/gst/gstreamer-sections.txt:
7105         * gst/Makefile.am:
7106         * gst/gst.h:
7107         * gst/gst_private.h:
7108         * gst/gstcaps.c:
7109         * gst/gstevent.c:
7110         * gst/gstformat.c:
7111         * gst/gstinfo.c:
7112         * gst/gstinfo.h:
7113         * gst/gstinterface.c:
7114         * gst/gstmemchunk.c:
7115         * gst/gstprobe.c:
7116         * gst/gstquery.c:
7117         * gst/gstregistry.c:
7118         * gst/gstregistrypool.c:
7119         * gst/gststructure.c:
7120         * gst/gsttaginterface.c:
7121         * gst/gstthread.c:
7122         * gst/gsttrace.c:
7123         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7124         * gst/gsturi.c:
7125         * gst/gstvalue.c:
7126           deprecate gst_info; remove gstlog.h
7127    
7128
7129 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7130
7131         * Makefile.am:
7132         * po/en_GB.po:
7133         * po/sv.po:
7134         * po/uk.po:
7135           updated translations
7136
7137 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7138
7139         * gst/gstbin.c: (gst_bin_dispose):
7140           better debugging
7141
7142 2004-05-03  Johan Dahlin  <johan@gnome.org>
7143
7144         * gst/schedulers/gstoptimalscheduler.c
7145         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7146         really is a GstElement. Avoids critical when running gst-launch -v
7147         and a oggdemux/decoding pipeline.
7148
7149 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7150
7151         * docs/gst/tmpl/gstpipeline.sgml :
7152         * docs/manual/elements-api.xml :
7153                 doc fix by Patrick Guimond (Protector) from devel ML
7154                 reviewed by ronald
7155
7156 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7157
7158         * docs/gst/Makefile.am :
7159         * docs/libs/Makefile.am :
7160                 apply a patch from Arwed v. Merkatz so that gtk-doc
7161                 generated docs install (same for .devhelp file)
7162                 (fixes part 1 of #138836)
7163
7164 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7165
7166         * docs/faq/dependencies.xml: typo
7167         * docs/faq/getting.xml :
7168             - fix download URL for new gstreamer site
7169             - hide sf.net download page as latest version aren't there
7170             - fix apt URLs
7171             - fill "get via CVS" paragraph (link to dev page on the site)
7172         * docs/faq/general.xml:
7173             hide status tables as they no more exists
7174             change case on plugins license file to reflect reality
7175         * docs/faq/troubleshooting.xml:
7176             remove the wiki question/answer as there is no more wiki
7177
7178 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7179
7180         * gst/gsterror.h:
7181           include the headers needed for declarations used in this header
7182
7183 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7184
7185         * docs/random/uraeus/gstreamer_and_midi.txt :
7186           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7187           (fixes #132288)
7188
7189 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7190
7191         reviewed by Benjamin Otte  <otte@gnome.org>
7192
7193         * gst/schedulers/gthread-cothreads.h:
7194           free allocated data for main cothread, too when destroying context
7195           (fixes #141417)
7196
7197 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7198
7199         * docs/manual/goals.xml : remove duplicated paragraph at end 
7200         of doc page (fixes #141448)
7201
7202 2004-04-29  David Schleef  <ds@schleef.org>
7203
7204         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7205         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7206
7207 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7208
7209         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7210           fix property
7211         * gst/gstcaps.c:
7212           fix doc string
7213         * po/POTFILES.in:
7214           rename typefind source file
7215
7216 2004-04-28  David Schleef  <ds@schleef.org>
7217
7218         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7219         * win32/GStreamer.vcproj:
7220         * win32/Makefile:
7221         * win32/config.h:
7222         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7223         (_trewinddir), (_ttelldir), (_tseekdir):
7224         * win32/dirent.h:
7225         * win32/gst-inspect.vcproj:
7226         * win32/gst-launch.vcproj:
7227         * win32/gst-register.vcproj:
7228         * win32/gstbytestream.vcproj:
7229         * win32/gstelements.vcproj:
7230         * win32/gstoptimalscheduler.vcproj:
7231         * win32/gstspider.vcproj:
7232         * win32/gtchar.h:
7233         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7234         * win32/mman.h:
7235         * win32/mman.inl:
7236         * win32/msvc71.sln:
7237
7238 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7239
7240         * gst/gst.c: (init_post):
7241         * gst/gstinfo.c:
7242           remove useless _gst_progname stuff
7243         * tools/gst-inspect.c: (print_field), (print_caps):
7244           improve caps output
7245
7246 2004-04-28  David Schleef  <ds@schleef.org>
7247
7248         Disable parsing of a lot of files that aren't part of the
7249         exported API.  Move corresponding template files to old/,
7250         waiting for removal when they don't contain anything
7251         interesting.
7252         * docs/gst/Makefile.am:
7253         * docs/gst/gstreamer-sections.txt:
7254         * docs/gst/tmpl/cothreads.sgml:
7255         * docs/gst/tmpl/cothreads_compat.sgml:
7256         * docs/gst/tmpl/gettext.sgml:
7257         * docs/gst/tmpl/gobject2gtk.sgml:
7258         * docs/gst/tmpl/grammar.tab.sgml:
7259         * docs/gst/tmpl/gst-i18n-app.sgml:
7260         * docs/gst/tmpl/gst-i18n-lib.sgml:
7261         * docs/gst/tmpl/gst_private.sgml:
7262         * docs/gst/tmpl/gstaggregator.sgml:
7263         * docs/gst/tmpl/gstarch.sgml:
7264         * docs/gst/tmpl/gstatomic_impl.sgml:
7265         * docs/gst/tmpl/gstbufferstore.sgml:
7266         * docs/gst/tmpl/gstdata_private.sgml:
7267         * docs/gst/tmpl/gstdisksink.sgml:
7268         * docs/gst/tmpl/gstdisksrc.sgml:
7269         * docs/gst/tmpl/gstelementfactory.sgml:
7270         * docs/gst/tmpl/gstextratypes.sgml:
7271         * docs/gst/tmpl/gstfakesink.sgml:
7272         * docs/gst/tmpl/gstfakesrc.sgml:
7273         * docs/gst/tmpl/gstfdsink.sgml:
7274         * docs/gst/tmpl/gstfdsrc.sgml:
7275         * docs/gst/tmpl/gstfilesink.sgml:
7276         * docs/gst/tmpl/gstfilesrc.sgml:
7277         * docs/gst/tmpl/gsthttpsrc.sgml:
7278         * docs/gst/tmpl/gstidentity.sgml:
7279         * docs/gst/tmpl/gstindexfactory.sgml:
7280         * docs/gst/tmpl/gstmarshal.sgml:
7281         * docs/gst/tmpl/gstmd5sink.sgml:
7282         * docs/gst/tmpl/gstmultidisksrc.sgml:
7283         * docs/gst/tmpl/gstmultifilesrc.sgml:
7284         * docs/gst/tmpl/gstpadtemplate.sgml:
7285         * docs/gst/tmpl/gstpipefilter.sgml:
7286         * docs/gst/tmpl/gstschedulerfactory.sgml:
7287         * docs/gst/tmpl/gstsearchfuncs.sgml:
7288         * docs/gst/tmpl/gstshaper.sgml:
7289         * docs/gst/tmpl/gstspider.sgml:
7290         * docs/gst/tmpl/gstspideridentity.sgml:
7291         * docs/gst/tmpl/gststatistics.sgml:
7292         * docs/gst/tmpl/gsttee.sgml:
7293         * docs/gst/tmpl/gsttimecache.sgml:
7294         * docs/gst/tmpl/gsttypefind.sgml:
7295         * docs/gst/tmpl/gsttypefindfactory.sgml:
7296         * docs/gst/tmpl/gstxmlregistry.sgml:
7297         * docs/gst/tmpl/gthread-cothreads.sgml:
7298         * docs/gst/tmpl/old/cothreads.sgml:
7299         * docs/gst/tmpl/old/cothreads_compat.sgml:
7300         * docs/gst/tmpl/old/gettext.sgml:
7301         * docs/gst/tmpl/old/gobject2gtk.sgml:
7302         * docs/gst/tmpl/old/grammar.tab.sgml:
7303         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7304         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7305         * docs/gst/tmpl/old/gst_private.sgml:
7306         * docs/gst/tmpl/old/gstaggregator.sgml:
7307         * docs/gst/tmpl/old/gstarch.sgml:
7308         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7309         * docs/gst/tmpl/old/gstbufferstore.sgml:
7310         * docs/gst/tmpl/old/gstdata_private.sgml:
7311         * docs/gst/tmpl/old/gstdisksink.sgml:
7312         * docs/gst/tmpl/old/gstdisksrc.sgml:
7313         * docs/gst/tmpl/old/gstelementfactory.sgml:
7314         * docs/gst/tmpl/old/gstextratypes.sgml:
7315         * docs/gst/tmpl/old/gstfakesink.sgml:
7316         * docs/gst/tmpl/old/gstfakesrc.sgml:
7317         * docs/gst/tmpl/old/gstfdsink.sgml:
7318         * docs/gst/tmpl/old/gstfdsrc.sgml:
7319         * docs/gst/tmpl/old/gstfilesink.sgml:
7320         * docs/gst/tmpl/old/gstfilesrc.sgml:
7321         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7322         * docs/gst/tmpl/old/gstidentity.sgml:
7323         * docs/gst/tmpl/old/gstindexfactory.sgml:
7324         * docs/gst/tmpl/old/gstmarshal.sgml:
7325         * docs/gst/tmpl/old/gstmd5sink.sgml:
7326         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7327         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7328         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7329         * docs/gst/tmpl/old/gstpipefilter.sgml:
7330         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7331         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7332         * docs/gst/tmpl/old/gstshaper.sgml:
7333         * docs/gst/tmpl/old/gstspider.sgml:
7334         * docs/gst/tmpl/old/gstspideridentity.sgml:
7335         * docs/gst/tmpl/old/gststatistics.sgml:
7336         * docs/gst/tmpl/old/gsttee.sgml:
7337         * docs/gst/tmpl/old/gsttimecache.sgml:
7338         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7339         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7340         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7341         * docs/gst/tmpl/old/types.sgml:
7342         * docs/gst/tmpl/types.sgml:
7343
7344         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7345         gtkdoc-scan doesn't like files with the same name in different
7346         directories.
7347         * gst/elements/Makefile.am:
7348         * gst/elements/gstelements.c:
7349         * gst/elements/gsttypefind.c: 
7350         * gst/elements/gsttypefind.h:
7351         * gst/elements/gsttypefindelement.c:
7352         * gst/elements/gsttypefindelement.h:
7353
7354 2004-04-28  David Schleef  <ds@schleef.org>
7355
7356         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7357         patch (bug #141317):
7358         * gst/gst-i18n-lib.h: Allow disabling gettext.
7359         * gst/gstatomic_impl.h: disable warning when it's dumb.
7360         * gst/gstclock.c: fix include
7361         * gst/gstcompat.h: fix variadic macro
7362         * gst/gstinfo.c: fix include
7363         * gst/gstmacros.h: add defines for inlines on MSVC
7364         * gst/gstplugin.c: fix includes
7365         * gst/gstregistry.c: fix includes
7366         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7367         * gst/gstsystemclock.c: fix include
7368         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7369         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7370         * gst/registries/gstxmlregistry.c:
7371         (gst_xml_registry_parse_element_factory): fix use of non-portable
7372         functions
7373         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7374         * libs/gst/control/dparammanager.h: same
7375
7376 2004-04-28  David Schleef  <ds@schleef.org>
7377
7378         Move a bunch of unused files to old/ with names that are
7379         not case-insensitive-unique.  These files still contain some
7380         useful information that needs to be merged into gstbin.sgml,
7381         etc., so they shouldn't be deleted yet.
7382         * docs/gst/tmpl/GstBin.sgml:
7383         * docs/gst/tmpl/GstBuffer.sgml:
7384         * docs/gst/tmpl/GstCaps.sgml:
7385         * docs/gst/tmpl/GstClock.sgml:
7386         * docs/gst/tmpl/GstCompat.sgml:
7387         * docs/gst/tmpl/GstData.sgml:
7388         * docs/gst/tmpl/GstElement.sgml:
7389         * docs/gst/tmpl/GstEvent.sgml:
7390         * docs/gst/tmpl/GstIndex.sgml:
7391         * docs/gst/tmpl/GstStructure.sgml:
7392         * docs/gst/tmpl/GstTag.sgml:
7393         * docs/gst/tmpl/old/GstBin.sgml:
7394         * docs/gst/tmpl/old/GstBuffer.sgml:
7395         * docs/gst/tmpl/old/GstCaps.sgml:
7396         * docs/gst/tmpl/old/GstClock.sgml:
7397         * docs/gst/tmpl/old/GstCompat.sgml:
7398         * docs/gst/tmpl/old/GstData.sgml:
7399         * docs/gst/tmpl/old/GstElement.sgml:
7400         * docs/gst/tmpl/old/GstEvent.sgml:
7401         * docs/gst/tmpl/old/GstIndex.sgml:
7402         * docs/gst/tmpl/old/GstStructure.sgml:
7403         * docs/gst/tmpl/old/GstTag.sgml:
7404
7405 2004-04-28  David Schleef  <ds@schleef.org>
7406
7407         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7408         (gst_caps_append), (gst_caps_append_structure),
7409         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7410         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7411         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7412         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7413         (gst_caps_intersect), (gst_caps_normalize),
7414         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7415         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7416         * gst/gstcaps.h: use GST_IS_CAPS().
7417
7418 2004-04-26  David Schleef  <ds@schleef.org>
7419
7420         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7421         assembly.  gcc doesn't handle it correctly. (bug #141083)
7422         * gst/gsttrashstack.h: same
7423
7424 2004-04-25  Benjamin Otte  <otte@gnome.org>
7425
7426         * gst/gstelement.c: (gst_element_change_state):
7427           fix assertion to do an int comparison
7428
7429 2004-04-25  Benjamin Otte  <otte@gnome.org>
7430
7431         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7432           better debugging output on error
7433
7434 2004-04-25  Benjamin Otte  <otte@gnome.org>
7435
7436         * gst/gstcaps.c: (gst_caps_subtract):
7437           fix memleak
7438
7439 2004-04-23  Benjamin Otte  <otte@gnome.org>
7440
7441         * gst/gstvalue.c: (gst_value_compare_buffer),
7442         (_gst_value_initialize):
7443           add comparison function for buffers
7444
7445 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7446
7447         * docs/pwg/pwg.xml:
7448           Just found out that this so-called "ima-wav" format is really
7449           just "dvi adpcm" (according to the MS WAV documentation). So
7450           renaming it. We didn't use it yet anyway.
7451
7452 2004-04-23  Benjamin Otte  <otte@gnome.org>
7453
7454         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7455           call gst_caps_is_subset
7456
7457 2004-04-23  Benjamin Otte  <otte@gnome.org>
7458
7459         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7460         (gst_caps_is_subset):
7461           add documentation
7462
7463 2004-04-23  Benjamin Otte  <otte@gnome.org>
7464           
7465         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7466         (gst_caps_structure_subtract), (gst_caps_subtract),
7467         (gst_caps_structure_figure_out_union),
7468         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7469           fix simplifying and subtracting not working correctly with optional
7470           properties
7471           solve assorted problems that make it now simplify ebven more
7472         * docs/gst/tmpl/gstcaps.sgml:
7473         * gst/gstcaps.h:
7474           make gst_caps_do_simplify return a bool to indicate if it simplified
7475         * testsuite/caps/simplify.c: (main):
7476           add more checks. The tests is quite a bit useless right now because
7477           the core is heavily simplifying itself.
7478         * testsuite/caps/caps.h:
7479           fix caps to contain all optional properties
7480
7481 2004-04-22  Benjamin Otte  <otte@gnome.org>
7482
7483         * docs/gst/tmpl/gstcaps.sgml:
7484         * docs/gst/tmpl/gstfilesrc.sgml:
7485         * docs/gst/tmpl/gststructure.sgml:
7486         * docs/gst/tmpl/gstvalue.sgml:
7487           update for recent API changes
7488         * gst/gstcaps.c: (gst_caps_do_simplify):
7489           fix to stop trying with a freed structure
7490         * gst/gstpad.c: (gst_pad_link_fixate):
7491           simplify caps
7492         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7493           remove C++ comment
7494         * gst/gstpad.h:
7495           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7496         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7497         (gst_structure_to_string):
7498           keep the correct type when using lists of ranges
7499         * gst/gstvalue.c: (gst_value_list_prepend_value),
7500         (gst_value_list_append_value):
7501           copy the value before adding to the list (d'oh)
7502         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7503         (gst_value_subtract_int_range_int_range):
7504           handle overflows correctly
7505         * gst/gstvalue.c: (gst_value_subtract_from_list):
7506           fix memleak
7507         * testsuite/caps/caps.h:
7508           add a caps that caused segfaults
7509
7510 2004-04-22  Benjamin Otte  <otte@gnome.org>
7511
7512         * testsuite/refcounting/pad.c: (main):
7513           fix test
7514
7515 2004-04-22  Benjamin Otte  <otte@gnome.org>
7516
7517         * gst/gstcaps.c: (gst_caps_subtract):
7518           allow subtracting ANY and EMPTY from ANY caps
7519
7520 2004-04-22  Benjamin Otte  <otte@gnome.org>
7521
7522         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7523         (gst_caps_union):
7524           only simplify in functions that create new caps. Simplifying in
7525           gst_caps_append breaks tests.
7526
7527 2004-04-22  Benjamin Otte  <otte@gnome.org>
7528
7529         * gst/gstcaps.c: (gst_caps_structure_simplify):
7530           unset GValue after use
7531         * gst/gstcaps.c: (gst_caps_append), 
7532         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7533           use gst_caps_simplify (reduces registry size by 30%)
7534         * gst/gstpad.c: (gst_pad_template_new):
7535           don't allow NULL caps
7536
7537 2004-04-22  Benjamin Otte  <otte@gnome.org>
7538
7539         * docs/gst/gstreamer-sections.txt:
7540           add gst_caps_do_simplify
7541         * gst/gstcaps.c:
7542           add documentation for gst_caps_do_simplify
7543         * gst/gstvalue.h:
7544           fix typo in gst_value_register_subtract_func declaration for gst-doc
7545
7546 2004-04-22  Benjamin Otte  <otte@gnome.org>
7547
7548         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7549           fix bug when converting from empty string.
7550         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7551         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7552           use gst_caps_new_empty to allocate a new caps. Only that function
7553           allocates memory for caps now.
7554         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7555         (gst_caps_remove_structure):
7556           add ability to remove one structure (but not to header yet)
7557         * gst/gstcaps.c: (gst_caps_compare_structures),
7558         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7559         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7560         * gst/gstcaps.h:
7561           add gst_caps_do_simplify that tries to simplify a caps in place.
7562           Deprecate old gst_caps_simplify function.
7563         * testsuite/caps/caps.h:
7564           add caps.h containing a common set of caps to test against.
7565         * testsuite/caps/sets.c: (check_caps), (main):
7566           use it.
7567         * testsuite/caps/.cvsignore:
7568         * testsuite/caps/Makefile.am:
7569         * testsuite/caps/simplify.c: (check_caps), (main):
7570           add test to check correctness and efficency of caps simplification.
7571
7572 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7573
7574         reviewed by Benjamin Otte  <otte@gnome.org>
7575
7576         * gst/gstparse.c: (_gst_parse_escape):
7577           Free the GString used in _gst_parse_escape()
7578
7579 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7580
7581         * gst/gstpad.c: (gst_pad_link_negotiate):
7582           refuse to link if the link is not possible
7583         * configure.ac:
7584         * testsuite/Makefile.am:
7585         * testsuite/negotiation/.cvsignore:
7586         * testsuite/negotiation/Makefile.am:
7587         * testsuite/negotiation/pad_link.c: (main):
7588           add test that checks the above behaviour
7589
7590 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7591
7592         * docs/gst/gstreamer-sections.txt:
7593           add newly added API
7594
7595 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7596
7597         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7598         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7599         (gst_filesrc_open_file), (gst_filesrc_close_file),
7600         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7601         * gst/elements/gstfilesrc.h:
7602           add support for non-regular files (#140734)
7603
7604 2004-04-21  Benjamin Otte  <otte@gnome.org>
7605
7606         * gst/gstpad.c: (gst_pad_link_fixate):
7607           add sophisticated error checking code to see if fixation functions
7608           did their fixation right
7609
7610 2004-04-21  Benjamin Otte  <otte@gnome.org>
7611
7612         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7613           check for ANY caps before appending/unioning
7614         * gst/gstcaps.c: (gst_caps_is_subset),
7615         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7616         (gst_caps_structure_subtract), (gst_caps_subtract):
7617         * gst/gstcaps.h:
7618           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7619           the API. deprecate gst_caps_is_equal_fixed
7620         * gst/gstpad.c: (gst_pad_try_set_caps):
7621         * gst/gstqueue.c: (gst_queue_link):
7622           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7623         * gst/gststructure.c: (gst_structure_get_name_id):
7624         * gst/gststructure.h:
7625           add function gst_structure_get_name_id
7626         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7627         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7628         (gst_value_subtract_int_range_int_range),
7629         (gst_value_subtract_double_double_range),
7630         (gst_value_subtract_double_range_double),
7631         (gst_value_subtract_double_range_double_range),
7632         (gst_value_subtract_from_list), (gst_value_subtract_list),
7633         (gst_value_can_intersect), (gst_value_subtract),
7634         (gst_value_can_subtract), (gst_value_register_subtract_func),
7635         (_gst_value_initialize):
7636         * gst/gstvalue.h:
7637           add support for subtracting values from each other. Note that
7638           subtracting means subtracting as in set theory. Required for caps
7639           stuff above.
7640         * testsuite/caps/.cvsignore:
7641         * testsuite/caps/Makefile.am:
7642         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7643         * testsuite/caps/sets.c: (check_caps), (main):
7644         * testsuite/caps/subtract.c: (check_caps), (main):
7645           add tests for subtraction and equality code.
7646
7647 2004-04-20  David Schleef  <ds@schleef.org>
7648
7649         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7650         * gst/indexers/Makefile.am:
7651         * gst/schedulers/Makefile.am:
7652         * libs/gst/bytestream/Makefile.am:
7653         * libs/gst/control/Makefile.am:
7654         * libs/gst/getbits/Makefile.am:
7655
7656 2004-04-20  David Schleef  <ds@schleef.org>
7657
7658         * common/as-libtool.mak: Fine-tune DLL building.
7659         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7660         (like gst-plugins)
7661         * examples/plugins/Makefile.am: remove plugindir
7662         * gst/autoplug/Makefile.am: DLL building fixes
7663         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7664         Windows.
7665         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7666         * gst/indexers/Makefile.am: DLL building fixes
7667         * gst/schedulers/Makefile.am: DLL building fixes.
7668         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7669         * libs/gst/control/Makefile.am: same
7670         * libs/gst/getbits/Makefile.am: same
7671         * testsuite/Makefile.am: New dlopen directory
7672         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7673         when dlopened.
7674         * testsuite/dlopen/dlopen_gst.c: (main): same
7675         * testsuite/dlopen/loadgst.c: (do_test): same
7676
7677 2004-04-20  David Schleef  <ds@schleef.org>
7678
7679         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7680         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7681
7682 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7683
7684         * gst/gstelement.c: (gst_element_wait),
7685         (gst_element_set_time_delay), (gst_element_change_state):
7686           Use GST_TIME_*
7687
7688 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7689
7690         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7691         (gst_spider_identity_plug):
7692           improve debugging messages
7693         * gst/gstbin.c: (gst_bin_remove_func):
7694           make sure the state_change function is only called with simple state
7695           transitions
7696
7697 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7698
7699         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7700         (gst_fakesink_set_property), (gst_fakesink_chain):
7701         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7702         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7703         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7704         * gst/elements/gstidentity.c: (gst_identity_chain),
7705         (gst_identity_set_property):
7706         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7707         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7708           add warnings to _set_property for unknown arguments
7709           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7710
7711 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7712
7713         * Makefile.am:
7714         * docs/manuals.mak:
7715           add .po file download snippet
7716           fix a bug in the doc makefile
7717
7718 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7719
7720         * Makefile.am:
7721         * po/LINGUAS:
7722         * po/en_GB.po:
7723           Added en_GB translation (Gareth Owen)
7724
7725 2004-04-20  Johan Dahlin  <johan@gnome.org>
7726
7727         * gst/gstpad.c (_invent_event): Clean up
7728
7729 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7730
7731         * testsuite/caps/filtercaps.c: (main):
7732           fix test to test things correctly (caps are complicated)
7733
7734 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7735
7736         * testsuite/caps/Makefile.am:
7737         * testsuite/caps/filtercaps.c: (main):
7738           add test (that doesn't work right now, but should)
7739
7740 2004-04-19  David Schleef  <ds@schleef.org>
7741
7742         * configure.ac: Add test for allowing unaligned access.  Add define
7743         to put in gstconfig.h.
7744         * docs/gst/gstreamer-sections.txt: New symbols
7745         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7746         * docs/gst/tmpl/gstfilesrc.sgml:
7747         * docs/gst/tmpl/gstparse.sgml:
7748         * docs/gst/tmpl/gsttypes.sgml:
7749         * docs/gst/tmpl/gstutils.sgml:
7750         * docs/gst/tmpl/gstvalue.sgml:
7751         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7752         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7753         on most !i386/!powerpc architectures.  From Daniel Gazard
7754         <daniel.gazard@free.fr>.  (bug #140156)
7755         * po/af.po: Check in changes made by gettext.
7756         * po/az.po:
7757         * po/fr.po:
7758         * po/nl.po:
7759         * po/sr.po:
7760         * po/sv.po:
7761
7762 2004-04-20  Benjamin Otte  <otte@gnome.org>
7763
7764         * gst/schedulers/entryscheduler.c: 
7765         (gst_entry_scheduler_yield):
7766           refuse to yield when decoupled elements insist on doing that.
7767           At least it's better than crashing
7768
7769 2004-04-19  David Schleef  <ds@schleef.org>
7770
7771         * docs/libs/Makefile.am: Change sinclude to include
7772         * docs/gst/Makefile.am: same
7773         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7774
7775 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7776
7777         * po/LINGUAS:
7778         * po/uk.po:
7779           Added Ukrainian translation (Maxim V. Dziumanenko)
7780
7781 2004-04-19  Johan Dahlin  <johan@gnome.org>
7782
7783         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7784         checking here, do it before calling the function.
7785         Clean up, use for loops instead of while loops while iterating
7786         over lists.
7787
7788         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7789         in debug message.
7790         (gst_spider_create_and_plug): Improve debug message.
7791         General: Replace while loops which iterates over GLists with for
7792         loops. Which are much cleaner, improves readability, especially
7793         for gst_spider_identity_plug
7794
7795         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7796         fixes bug 140477
7797
7798 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7799
7800         * po/LINGUAS:
7801         * po/tr.po:
7802           Added Turkish translation (Baris Cicek)
7803
7804 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7805
7806         * docs/faq/troubleshooting.xml:
7807           Mention gst-register in the FAQ (fixes 139045).
7808
7809 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7810
7811         * docs/gst/gstreamer-sections.txt:
7812
7813 2004-04-17  Benjamin Otte  <otte@gnome.org>
7814
7815         * gst/gstelement.c: (gst_element_dispose):
7816           simplify
7817         * gst/gstpad.c: (gst_pad_call_chain_function):
7818           don't create loads of events due to bad macro usage
7819
7820 2004-04-16  David Schleef  <ds@schleef.org>
7821
7822         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7823         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7824         * gst/gstvalue.c: (gst_value_serialize_buffer),
7825         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7826         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7827         to indicate types that are fixed wrt caps or not.  Switching to
7828         this function fixes (bug #140298).
7829         * gst/gstvalue.h:
7830
7831 2004-04-16  David Schleef  <ds@schleef.org>
7832
7833         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7834         for GST_UNALIGNED_ACESS, since we essentially know which archs
7835         are ok.
7836
7837 2004-04-17  Benjamin Otte  <otte@gnome.org>
7838
7839         * docs/gst/Makefile.am:
7840           ignore gst/parse directory when building docs (fixes #140205)
7841
7842 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7843
7844         * testsuite/refcounting/mem.c: (vmsize):
7845           do error checking
7846
7847 2004-04-16  Johan Dahlin  <johan@gnome.org>
7848
7849         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7850         and gst_pad_call_get_function.
7851
7852 2004-04-15  David Schleef  <ds@schleef.org>
7853
7854         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7855         checks if we can access unaligned memory.
7856         * configure.ac: Use it.
7857
7858 2004-04-16  Benjamin Otte  <otte@gnome.org>
7859
7860         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7861         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7862         * gst/elements/gstfilesrc.h:
7863           s/seek_happened/need_discont/ and require discont before sending any
7864           data
7865
7866 2004-04-15  David Schleef  <ds@schleef.org>
7867
7868         * gst/gstvalue.c: (gst_value_serialize_buffer),
7869         (gst_value_deserialize_buffer), (_gst_value_initialize):
7870         Register these types as fundamental types. (bug #140015)
7871
7872 2004-04-16  Benjamin Otte  <otte@gnome.org>
7873
7874         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7875         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7876         (gst_pad_pull):
7877           implement enforcing discont events before buffers are passed. This
7878           allows state changes of only some elements and later correctly going
7879           on where they left off (or in short: you can now set audio sinks to
7880           NULL to release the device when the pipeline is paused)
7881         * gst/gstpad.c: (gst_pad_call_chain_function),
7882         (gst_pad_call_get_function):
7883         * gst/gstpad.h:
7884           add gst_pad_call_chain_function and gst_pad_call_get_function for
7885           scheduler interaction. They are required because of the changes
7886           above.
7887         * gst/schedulers/entryscheduler.c: (get_buffer),
7888         (gst_entry_scheduler_chain_wrapper),
7889         (gst_entry_scheduler_get_wrapper),
7890         (gst_entry_scheduler_state_transition),
7891         (gst_entry_scheduler_pad_link):
7892         * gst/schedulers/gstbasicscheduler.c:
7893         (gst_basic_scheduler_chain_wrapper),
7894         (gst_basic_scheduler_src_wrapper),
7895         (gst_basic_scheduler_chainhandler_proxy),
7896         (gst_basic_scheduler_gethandler_proxy),
7897         (gst_basic_scheduler_cothreaded_chain),
7898         (gst_basic_scheduler_chain_elements):
7899         * gst/schedulers/gstoptimalscheduler.c:
7900         (get_group_schedule_function), (pad_clear_queued),
7901         (gst_opt_scheduler_pad_link):
7902           use the new functions instead of calling get/chain-functions
7903           directly.
7904
7905 2004-04-15  David Schleef  <ds@schleef.org>
7906
7907         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
7908         * docs/gst/tmpl/gstinfo.sgml: same
7909         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
7910         gtk-doc put here.
7911         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
7912         * examples/queue/queue.c: (main):  We iterate pipelines, not
7913         bins.  (bug #139996)
7914
7915 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7916
7917         * docs/pwg/advanced-types.xml:
7918           Add MS RLE support. Also document Qt RLE although I have no sample
7919           files for that yet. And document an extra property for ADPCM.
7920
7921 2004-04-15  David Schleef  <ds@schleef.org>
7922
7923         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
7924         (_gst_plugin_fault_handler_setup):  Disable more stuff on
7925         Windows.
7926
7927 2004-04-15  David Schleef  <ds@schleef.org>
7928
7929         * gst/gstinfo.c: (_gst_debug_init): Change some internal
7930         symbol names to not conflict with new gstinfo.h symbols.
7931         * gst/gstinfo.h: Add inline functions for all those crazy
7932         compilers that don't know how to handle variadic macros (MSVC).
7933
7934 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7935
7936         * configure.ac: bump nano to 1
7937
7938 === release 0.8.1 ===
7939
7940 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
7941
7942         * NEWS:
7943         * RELEASE:
7944         * configure.ac:
7945           releasing 0.8.1, "Snow Brigade"
7946
7947 2004-04-14  David Schleef  <ds@schleef.org>
7948
7949         * testsuite/Makefile.am: define tests_ignore
7950         * testsuite/Rules: Added new tests_ignore, which get compiled,
7951         but not run (generally because they're inconsistent or have
7952         heisenbugs).  Now we can ensure all the .c files compile in
7953         testsuite/.
7954         * testsuite/bins/Makefile.am: define tests_ignore
7955         * testsuite/bytestream/Makefile.am:
7956         * testsuite/caps/Makefile.am:
7957         * testsuite/clock/Makefile.am:
7958         * testsuite/debug/Makefile.am:
7959         * testsuite/debug/global.c: (gst_debug_log_one),
7960         (gst_debug_log_two): Fix compilation problem.
7961         * testsuite/dynparams/Makefile.am:
7962         * testsuite/elements/Makefile.am:
7963         * testsuite/ghostpads/Makefile.am:
7964         * testsuite/indexers/Makefile.am:
7965         * testsuite/parse/Makefile.am:
7966         * testsuite/plugin/Makefile.am:
7967         * testsuite/refcounting/Makefile.am:
7968         * testsuite/refcounting/element_pad.c: (main): Don't return leak
7969         results, because it's not calculated correctly.
7970         * testsuite/refcounting/pad.c: (main): same
7971         * testsuite/states/Makefile.am:
7972         * testsuite/tags/Makefile.am:
7973         * testsuite/threads/Makefile.am:
7974
7975 2004-04-14  David Schleef  <ds@schleef.org>
7976
7977         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
7978         generating bad code around the cpu detection asm code.
7979
7980 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
7981
7982         * tools/gst-inspect.c: (print_element_info):
7983           print numeric version of rank as well, since we added some - 1
7984           rank values to elements
7985
7986 2004-04-13  David Schleef  <ds@schleef.org>
7987
7988         * configure.ac:  Disable various code when compiling for MinGW.
7989         * gst/elements/Makefile.am:
7990         * gst/elements/gstelements.c:
7991         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
7992         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
7993         * gst/registries/gstxmlregistry.c: (make_dir):
7994
7995 2004-04-13  David Schleef  <ds@schleef.org>
7996
7997         * gst/Makefile.am:
7998         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
7999         assembly.
8000         * gst/gstcpuid_i386.s: remove
8001
8002 2004-04-13  David Schleef  <ds@schleef.org>
8003
8004         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8005         seems to think it needs to be done.
8006         * docs/gst/tmpl/gstfakesink.sgml:
8007         * docs/gst/tmpl/gstfakesrc.sgml:
8008         * docs/gst/tmpl/gstfdsink.sgml:
8009         * docs/gst/tmpl/gstfdsrc.sgml:
8010         * docs/gst/tmpl/gstfilesink.sgml:
8011         * docs/gst/tmpl/gstfilesrc.sgml:
8012         * docs/gst/tmpl/gstidentity.sgml:
8013         * docs/gst/tmpl/gstmd5sink.sgml:
8014         * docs/gst/tmpl/gstmultifilesrc.sgml:
8015         * docs/gst/tmpl/gstpipefilter.sgml:
8016         * docs/gst/tmpl/gstshaper.sgml:
8017         * docs/gst/tmpl/gstspider.sgml:
8018         * docs/gst/tmpl/gstspideridentity.sgml:
8019         * docs/gst/tmpl/gststatistics.sgml:
8020         * docs/gst/tmpl/gsttee.sgml:
8021         * docs/gst/tmpl/gsttypefind.sgml:
8022         * docs/gst/tmpl/gstutils.sgml:
8023
8024 2004-04-13  David Schleef  <ds@schleef.org>
8025
8026         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8027         and to build DLLs on Windows.
8028         * gst/Makefile.am:
8029         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8030         (gst_filesrc_open_file):
8031         * gst/schedulers/Makefile.am:
8032
8033 2004-04-13  David Schleef  <ds@schleef.org>
8034
8035         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8036         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8037         fixating lists.
8038
8039 2004-04-12  David Schleef  <ds@schleef.org>
8040
8041         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8042         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8043         to using it.
8044         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8045         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8046         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8047         * gst/gststructure.c: (gst_structure_set_valist),
8048         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8049         support for buffers.
8050         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8051         intended to be const.
8052         * gst/gsttag.h: same
8053         * gst/gstvalue.c: (gst_value_serialize_buffer),
8054         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8055         to (de)serialize buffers.
8056         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8057         * testsuite/caps/string-conversions.c: (main):
8058         * testsuite/caps/value_serialize.c: add new test
8059
8060 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8061
8062         * docs/pwg/advanced-types.xml:
8063           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8064
8065 2004-04-11  Benjamin Otte  <otte@gnome.org>
8066
8067         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8068           rename categories to basic_*
8069         * gst/schedulers/gstbasicscheduler.c: 
8070         (gst_basic_scheduler_chain_wrapper),
8071         (gst_basic_scheduler_chainhandler_proxy),
8072         (gst_basic_scheduler_gethandler_proxy),
8073         (gst_basic_scheduler_eventhandler_proxy):
8074           debugging category fixes - put common stuff in log category
8075         * gst/schedulers/gstbasicscheduler.c: 
8076         (gst_basic_scheduler_chain_elements):
8077           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8078           active and linking two active chains
8079
8080 2004-04-10  Benjamin Otte  <otte@gnome.org>
8081
8082         * docs/pwg/intro-preface.xml:
8083           fix dead links and remove reference to Wiki
8084
8085 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8086
8087         * gst/schedulers/gstbasicscheduler.c:
8088           make sure we can switch back to the main function if we're still in
8089           the main function (supposed to fix #139617)
8090         * gst/schedulers/gthread-cothreads.h:
8091           don't throw an error when switching to the same cothread
8092
8093 2004-04-09  Benjamin Otte  <otte@gnome.org>
8094
8095         * gst/gstbin.c: (gst_bin_get_type):
8096         * gst/gstclock.c: (gst_clock_get_type):
8097         * gst/gstindex.c: (gst_index_get_type):
8098         * gst/gstobject.c: (gst_object_get_type),
8099         (gst_signal_object_get_type):
8100         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8101         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8102         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8103         * gst/gstqueue.c: (gst_queue_get_type):
8104         * gst/gstregistry.c: (gst_registry_get_type):
8105         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8106         * gst/gstthread.c: (gst_thread_get_type):
8107           don't use memchunks for these objects, use malloc instead
8108
8109 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8110
8111         * docs/gst/.cvsignore:
8112         * docs/gst/Makefile.am:
8113         * docs/gst/gstreamer-sections.txt:
8114         * docs/gst/tmpl/gstaggregator.sgml:
8115         * docs/gst/tmpl/gstbuffer.sgml:
8116         * docs/gst/tmpl/gstclock.sgml:
8117         * docs/gst/tmpl/gstelement.sgml:
8118         * docs/gst/tmpl/gstfakesink.sgml:
8119         * docs/gst/tmpl/gstfakesrc.sgml:
8120         * docs/gst/tmpl/gstfdsink.sgml:
8121         * docs/gst/tmpl/gstfdsrc.sgml:
8122         * docs/gst/tmpl/gstfilesink.sgml:
8123         * docs/gst/tmpl/gstfilesrc.sgml:
8124         * docs/gst/tmpl/gstidentity.sgml:
8125         * docs/gst/tmpl/gstindex.sgml:
8126         * docs/gst/tmpl/gstinfo.sgml:
8127         * docs/gst/tmpl/gstmd5sink.sgml:
8128         * docs/gst/tmpl/gstmultifilesrc.sgml:
8129         * docs/gst/tmpl/gstpad.sgml:
8130         * docs/gst/tmpl/gstpipefilter.sgml:
8131         * docs/gst/tmpl/gstpipeline.sgml:
8132         * docs/gst/tmpl/gstpluginfeature.sgml:
8133         * docs/gst/tmpl/gstqueue.sgml:
8134         * docs/gst/tmpl/gstregistry.sgml:
8135         * docs/gst/tmpl/gstscheduler.sgml:
8136         * docs/gst/tmpl/gstshaper.sgml:
8137         * docs/gst/tmpl/gstspider.sgml:
8138         * docs/gst/tmpl/gstspideridentity.sgml:
8139         * docs/gst/tmpl/gststatistics.sgml:
8140         * docs/gst/tmpl/gstsystemclock.sgml:
8141         * docs/gst/tmpl/gsttee.sgml:
8142         * docs/gst/tmpl/gstthread.sgml:
8143         * docs/gst/tmpl/gsttypefind.sgml:
8144         * docs/gst/tmpl/gstutils.sgml:
8145           further doc build fixes
8146
8147 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8148
8149         * docs/gst/Makefile.am:
8150           make docs exit on scanning problems
8151           fix nonsrcdir build issues
8152         * docs/gst/gstreamer-sections.txt:
8153           adding stuff from -unused
8154         * gst/gstqueue.h:
8155           create GstQueueSize
8156         * gst/schedulers/cothreads_compat.h:
8157           fix cothread warnings
8158
8159 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8160
8161         * docs/gst/gstreamer-sections.txt:
8162           remove defines deprecated by Benjamin
8163
8164 2004-04-07  Benjamin Otte  <otte@gnome.org>
8165
8166         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8167           when the buffer is complete, don't check if other buffers are needed
8168         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8169           check that the offset is >0 so we don't try to read before the
8170           beginning of the file
8171         * gst/gstpad.c: (gst_pad_set_pad_template):
8172           sink the template, so we don't end up with 130k pad templates
8173
8174 2004-04-06  Benjamin Otte  <otte@gnome.org>
8175
8176         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8177           don't ref the element, adding already reffed it. And we didn't unref
8178           it later anyway... (huge memleak when you used many spider elements)
8179         * gst/gstelement.c: (gst_element_base_class_finalize):
8180         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8181         (gst_element_register):
8182         * gst/gsturi.c: (gst_element_make_from_uri):
8183           use gst_object_(un)ref instead of g_object(un)ref
8184
8185 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8186
8187         * gst/gstbuffer.h:
8188           remove macro that wouldn't work anymore because struct member has
8189           been removed.
8190         * gst/schedulers/entryscheduler.c: (schedule_forward):
8191           fix segfault for unconnected pads
8192         
8193 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8194
8195         reviewed by David Schleef <ds@schleef.org>
8196
8197         * gst/gstinfo.h:
8198           *_FORMAT modifiers should require putting a % in front of them for
8199           consistency reasons.
8200
8201 2004-04-05  Colin Walters  <walters@redhat.com>
8202
8203         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8204         space.
8205
8206 2004-04-05  Benjamin Otte  <otte@gnome.org>
8207
8208         * configure.ac:
8209         * gst/Makefile.am:
8210         * gst/gst_private.h:
8211         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8212           add support for detecting if GStreamer runs inside valgrind.
8213           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8214           print a big message in valgrind that GStreamer has detected it's
8215           running inside and might now use different code.
8216         * gst/gstmemchunk.c: (populate), (free_area),
8217         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8218         (gst_mem_chunk_free):
8219           flag memchunks for valgrind, so it can detect leaking of chunks.
8220           This allows detecting leaks of GstBuffer and GstEvent correctly
8221           inside valgrind.
8222
8223 2004-04-05  David Schleef  <ds@schleef.org>
8224
8225         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8226           jensgr@gmx.net (Jens Granseuer)
8227
8228 2004-04-05  David Schleef  <ds@schleef.org>
8229
8230         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8231         (gst_buffer_default_free), (gst_buffer_default_copy),
8232         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8233         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8234         structures in one place.
8235
8236 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8237
8238         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8239           (GST_TIME_FORMAT, GST_TIME_ARGS)
8240
8241 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8242
8243         * testsuite/elements/Makefile.am:
8244           disable test until it stops breaking make distcheck
8245
8246 2004-04-05  Johan Dahlin  <johan@gnome.org>
8247
8248         * po/sv.po: Updated translation
8249
8250 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8251
8252         * gst/gstplugin.c: (gst_plugin_load_file):
8253           fix segfault for when original plugin was loaded statically
8254
8255 2004-04-05  Benjamin Otte  <otte@gnome.org>
8256
8257         * testsuite/debug/category.c: (main):
8258         * testsuite/debug/commandline.c: (main):
8259         * testsuite/debug/output.c: (main):
8260           fix tests to work again with debugging enabled
8261
8262 2004-04-05  Benjamin Otte  <otte@gnome.org>
8263
8264         * gst/schedulers/gstbasicscheduler.c:
8265         (gst_basic_scheduler_pad_link):
8266           fix to work with recent scheduling changes
8267
8268 2004-04-05  Benjamin Otte  <otte@gnome.org>
8269
8270         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8271         prepareChangeLog doesn't work when cvs indents):
8272           don't throw an error when no element can be scheduled, there's too
8273           many weird reasons why it doesn't work. Return STOPPED instead.
8274           decoupled elemts' schedulability doesn't depend on bufpens.
8275
8276 2004-04-04  Benjamin Otte  <otte@gnome.org>
8277
8278         * gst/schedulers/gstbasicscheduler.c:
8279         (gst_basic_scheduler_pad_select):
8280           fix uninitialized variable warnings
8281
8282 2004-04-04  Benjamin Otte  <otte@gnome.org>
8283
8284         * gst/gstpad.c: (gst_pad_collect_valist):
8285           fix uninitialized variable warning
8286         * gst/schedulers/entryscheduler.c: (schedule_forward):
8287           fix shadowed variable
8288
8289 2004-04-04  Benjamin Otte  <otte@gnome.org>
8290
8291         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8292         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8293         (gst_pad_select):
8294         * gst/gstpad.h:
8295         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8296         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8297         * gst/gstscheduler.h:
8298           implement gst_pad_collect as replacement for gst_pad_select.
8299           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8300           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8301           new pad_select, lock and unlock calls.
8302         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8303         * gst/cothreads.h:
8304         * gst/schedulers/cothreads_compat.h:
8305         * gst/schedulers/gthread-cothreads.h:
8306           remove unused cothread_lock and cothread_unlock calls
8307         * gst/schedulers/entryscheduler.c:
8308         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8309         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8310         (gst_entry_scheduler_pad_select):
8311           update to new API
8312         * gst/schedulers/gstbasicscheduler.c:
8313         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8314         (gst_basic_scheduler_pad_select):
8315           remove useless lock and unlock calls, update pad_select to new API
8316           (untested)
8317         * gst/schedulers/gstoptimalscheduler.c:
8318         (gst_opt_scheduler_class_init):
8319           remove useless select, lock and unlock function calls
8320         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8321           use gst_pad_collect instead of gst_pad_select
8322
8323 2004-04-04  Benjamin Otte  <otte@gnome.org>
8324
8325         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8326         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8327         (schedule_next_element), (print_entry):
8328           add can_schedule_pad to handle element states.
8329           add schedule_forward to select the correct entry to schedule next
8330
8331 2004-04-03  Benjamin Otte  <otte@gnome.org>
8332
8333         * gst/schedulers/entryscheduler.c: 
8334           remove unused variable, fix error inside Rb, fix compile warning in
8335           unreachable code
8336
8337 2004-04-03  Benjamin Otte  <otte@gnome.org>
8338
8339         * gst/schedulers/entryscheduler.c:
8340           completely revamp the inner workings, so it's a lot easier to
8341           understand and extend
8342
8343 2004-04-03  Andy Wingo  <wingo@pobox.com>
8344
8345         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8346         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8347         This allows better introspection of pipeline topology.
8348         (add_to_chain): Don't do trickery to put loop elements first;
8349         rather, queue a chain sort by marking the chain as dirty.
8350         (remove_from_chain): Mark the chain dirty.
8351         (sort_chain): New function. Sorts the group list so that terminal
8352         sinks are first. This means elements on the sink side will be
8353         preferentially sscheduled before elements on the src side of the
8354         pipeline.
8355         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8356         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8357         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8358         (group_inc_link): Change argument and variable names to match the
8359         new link structure member names (src and sink).
8360         (group_dec_link): Add some description
8361
8362 2004-04-03  Benjamin Otte  <otte@gnome.org>
8363
8364         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8365         * gst/gstinfo.h:
8366         * testsuite/debug/category.c: (main):
8367         * testsuite/debug/commandline.c: (main):
8368         * testsuite/debug/output.c: (main):
8369         * testsuite/debug/printf_extension.c: (main):
8370           fix to successfully build and test with --disable-gst-debug
8371           configure switch (fixes #138705)
8372
8373 2004-04-03  Benjamin Otte  <otte@gnome.org>
8374
8375         * docs/pwg/building-boiler.xml:
8376           add cvs login line and s/anonymous/anoncvs/
8377
8378 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8379
8380         reviewed by Benjamin Otte  <otte@gnome.org>
8381
8382         * gst/gststructure.c: (gst_structure_free):
8383           memleak fix: free fields array (partial fix for #134839)
8384
8385 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8386
8387         * docs/random/ds/0.9-suggested-changes:
8388           Add a note to change handoff use in fakesrc to be usable in
8389           a more generic way (fakesrc should be renamed to appsrc or so).
8390         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8391           Change signal type to scope, so we can fill the buffer in the
8392           handoff handler (that's the whole use of this signal...).
8393
8394 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8395
8396         * docs/pwg/other-ntoone.xml:
8397           Document muxers and n-to-1 elements.
8398
8399 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8400
8401         * gst/registries/gstxmlregistry.c
8402         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8403         determine if a file is a G_MODULE. The old one discards paths
8404         containing "so" somewhere in the middle. My home directory is
8405         called "soto". Go figure...
8406
8407 2004-03-31  David Schleef  <ds@schleef.org>
8408
8409         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8410         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8411         * gst/gstbuffer.h:
8412
8413 2004-03-31  David Schleef  <ds@schleef.org>
8414
8415         * gst/gstvalue.c: (gst_value_union_int_int_range),
8416         (gst_value_union_int_range_int_range), (gst_value_can_union),
8417         (gst_value_union), (_gst_value_initialize):  Add some union
8418         implementations.  We didn't have any previously.
8419         * testsuite/caps/Makefile.am:
8420         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8421         (gst_audioscale_getcaps), (test_caps), (main): A little test
8422         that is the same as the caps manipulation in audioscale.
8423
8424 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8425
8426         * docs/faq/general.xml:
8427           add entry about "does gst support format X?"
8428
8429 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8430
8431         * gst/gstthread.c:
8432           fix docs
8433         * gst/gstutils.h:
8434           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8435
8436 2004-03-30  Benjamin Otte  <otte@gnome.org>
8437
8438         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8439           set the offset of the buffer to the requested offset
8440         * gst/elements/gsttypefind.c: (stop_typefinding):
8441           revert patch 1.18 (which I unfortunately don't know the reason for).
8442           This is needed to allow downstream elements to seek. Otherwise
8443           typefind might overwrite a previous seek by downstream elements.
8444           This lead to errors with id3tag and typefind on some mp3s.
8445         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8446         (gst_entry_scheduler_iterate):
8447           be more verbose when debugging
8448
8449 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8450
8451         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8452           make sure we don't get NULL strings
8453
8454 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8455
8456         * gst/gstcaps.c:
8457         * gst/gstelement.c:
8458         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8459         * gst/gstindex.c: (gst_index_resolver_get_type),
8460         (gst_index_get_type), (gst_index_factory_get_type):
8461         * gst/gstinfo.c:
8462         * gst/gstpad.c:
8463         * gst/gstplugin.c:
8464         * gst/gsturi.c: (gst_uri_handler_get_type):
8465         * gst/gstvalue.c:
8466           first batch of documentation fixes
8467
8468 2004-03-29  David Schleef  <ds@schleef.org>
8469
8470         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8471         * docs/gst/gstreamer-docs.sgml:  More hacking
8472         * docs/gst/gstreamer-sections.txt:
8473         * docs/gst/tmpl/cothreads_compat.sgml:
8474         * docs/gst/tmpl/gstcaps.sgml:
8475         * docs/gst/tmpl/gstclock.sgml:
8476         * docs/gst/tmpl/gstelement.sgml:
8477         * docs/gst/tmpl/gstevent.sgml:
8478         * docs/gst/tmpl/gstpad.sgml:
8479         * docs/gst/tmpl/gstutils.sgml:
8480         * docs/gst/tmpl/gstxml.sgml:
8481         * docs/gst/tmpl/gthread-cothreads.sgml:
8482         * docs/random/ds/0.9-suggested-changes:
8483         * gst/elements/gstfakesink.h: doc fixes
8484         * gst/elements/gstfakesrc.h: doc fixes
8485         * gst/gstcaps.c: doc fixes
8486         * gst/gstcaps.h: doc fixes
8487         * gst/gstelement.c: doc fixes
8488         * gst/gstelement.h: doc fixes
8489         * gst/gstindex.c: doc fixes
8490         * gst/gstinfo.c: doc fixes
8491         * gst/gstpad.c: doc fixes
8492         * gst/gstpad.h: doc fixes
8493         * gst/gstplugin.c: doc fixes
8494         * gst/gsttypefind.h: doc fixes
8495         * gst/gsturi.c: doc fixes
8496         * gst/gstvalue.c: doc fixes
8497
8498 2004-03-29  Colin Walters  <walters@redhat.com>
8499
8500         * gst/registries/gstxmlregistry.c (get_time)
8501         (plugin_times_older_than_recurse):
8502         Use the result of stat to determine whether a path is a file,
8503         so we don't attempt to opendir() files.
8504
8505 2004-03-29  Benjamin Otte  <otte@gnome.org>
8506
8507         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8508           print caps in debugging output when setting caps failed
8509         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8510         (schedule_next_element), (get_buffer), (run_chainhandler),
8511         (element_may_start), (gst_entry_scheduler_chain_handler),
8512         (gst_entry_scheduler_get_handler),
8513         (gst_entry_scheduler_state_transition),
8514         (gst_entry_scheduler_pad_link):
8515           make this scheduler a testcase for mandatory
8516           discont-before-first-buffer which is needed if we want to allow apps
8517           to release the sound device.
8518           add SCHED_ASSERT macro to print scheduler state before an assertion
8519           triggers.
8520
8521 2004-03-29  Benjamin Otte  <otte@gnome.org>
8522
8523         * COPYING:
8524           replace by LGPL (former COPYING.LIB). The core is completely
8525           licensed LGPL.
8526         * COPYING.LIB:
8527           remove
8528
8529 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8530
8531         * po/af.po:
8532         * po/sv.po:
8533           updated Afrikaans and Swedish
8534
8535 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8536
8537         * po/LINGUAS:
8538         * po/az.po:
8539           adding Azerbaijani (Mətin Əmirov)
8540
8541 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8542
8543         * gst/gstelement.h: 
8544         * gst/gstelement.c (gst_element_set_time_delay): New function for
8545         setting element time taking into account a hardware buffering
8546         delay.
8547         (gst_element_set_time): Now just an invocation of
8548         gst_element_set_time_delay.
8549         * gst/gstclock.h: 
8550         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8551         allowing to set event times in the future.
8552         (gst_clock_get_event_time): Now just an invocation of
8553         gst_clock_get_event_time_delay.
8554
8555 2004-03-28  Benjamin Otte  <otte@gnome.org>
8556
8557         * gst/gstbin.c: (gst_bin_set_element_sched),
8558         (gst_bin_unset_element_sched):
8559           don't add decoupled elements to schedulers - otherwise it's
8560           impossible to control if a link to a decoupled element was already
8561           removed from a scheduler or not.
8562         * gst/schedulers/cothreads_compat.h:
8563         * gst/schedulers/gthread-cothreads.h:
8564           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8565           is no "unused" warning.
8566         * gst/schedulers/Makefile.am:
8567         * gst/schedulers/entryscheduler.c:
8568           add new scheduler, based on ideas from talking to David and Martin.
8569           It's supposed to be small and correct. Currently it's also slow (but
8570           it's not noticable)
8571         * examples/retag/retag.c: (main):
8572         * testsuite/bytestream/test1.c: (main):
8573           fix missing NULLs at end of variadic functions
8574         * testsuite/elements/.cvsignore:
8575           update
8576
8577 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8578
8579         * gst/gstevent.h:
8580         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8581
8582 2004-03-25  David Schleef  <ds@schleef.org>
8583
8584         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8585         * docs/gst/tmpl/gstaggregator.sgml:
8586         * docs/gst/tmpl/gstautoplugfactory.sgml:
8587         * docs/gst/tmpl/gstbin.sgml:
8588         * docs/gst/tmpl/gstbuffer.sgml:
8589         * docs/gst/tmpl/gstbufferstore.sgml:
8590         * docs/gst/tmpl/gstfakesink.sgml:
8591         * docs/gst/tmpl/gstfakesrc.sgml:
8592         * docs/gst/tmpl/gstmd5sink.sgml:
8593         * docs/gst/tmpl/gstreamer-unused.sgml:
8594         * docs/gst/tmpl/gstsearchfuncs.sgml:
8595         * docs/gst/tmpl/gstshaper.sgml:
8596         * docs/gst/tmpl/gstspider.sgml:
8597         * docs/gst/tmpl/gsttee.sgml:
8598         * docs/gst/tmpl/gstutils.sgml:
8599         * docs/gst/tmpl/gstvalue.sgml:
8600         * docs/gst/tmpl/gstxml.sgml:
8601         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8602         and we don't support it.
8603         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8604         (gst_use_threads), (gst_has_threads): same
8605         * gst/gstthreaddummy.c: same
8606         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8607         * gst/autoplug/gstspider.h: same
8608         * gst/elements/gstaggregator.h: Remove bogus function from header
8609         * gst/elements/gstfakesink.h: same
8610         * gst/elements/gstfakesrc.h: same
8611         * gst/elements/gstmd5sink.h: same
8612         * gst/elements/gstshaper.h: same
8613         * gst/elements/gsttee.h: same
8614         * gst/gstbin.c: doc fixes
8615         * gst/gstbin.h: Remove unused definition.
8616         * gst/gstbuffer.c: doc fixes
8617         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8618         * gst/gstfilter.c: doc fixes
8619         * gst/gsttag.c: doc fixes
8620         * gst/gstvalue.c: doc fixes
8621
8622 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8623
8624         * docs/pwg/advanced-types.xml:
8625           Document typefinding.
8626         * docs/pwg/other-oneton.xml:
8627           Document one-to-n elements, demuxers and parsers.
8628
8629 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8630
8631         reviewed by: David Schleef  <ds@schleef.org>
8632
8633         * configure.ac: Check bison version (bug #127838)
8634
8635 2004-03-25  David Schleef  <ds@schleef.org>
8636
8637         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8638         * docs/gst/gstreamer-sections.txt:
8639         * docs/gst/tmpl/gstautoplug.sgml:
8640         * docs/gst/tmpl/gststaticautoplug.sgml:
8641         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8642         * docs/gst/tmpl/gstutils.sgml:
8643         * docs/gst/tmpl/gstxml.sgml:
8644
8645 2004-03-24  David Schleef  <ds@schleef.org>
8646
8647         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8648         manual being such complete crap, that I decided to do major
8649         hacking of it.  This checkin replaces any fine tuning that
8650         may have been done previously, with the benefit of actually
8651         being complete for much of the API that was changed since
8652         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8653         * docs/gst/gstreamer-sections.txt:
8654         * docs/gst/tmpl/GstBin.sgml:
8655         * docs/gst/tmpl/GstBuffer.sgml:
8656         * docs/gst/tmpl/GstCaps.sgml:
8657         * docs/gst/tmpl/GstClock.sgml:
8658         * docs/gst/tmpl/GstCompat.sgml:
8659         * docs/gst/tmpl/GstData.sgml:
8660         * docs/gst/tmpl/GstElement.sgml:
8661         * docs/gst/tmpl/GstEvent.sgml:
8662         * docs/gst/tmpl/GstIndex.sgml:
8663         * docs/gst/tmpl/GstStructure.sgml:
8664         * docs/gst/tmpl/GstTag.sgml:
8665         * docs/gst/tmpl/cothreads.sgml:
8666         * docs/gst/tmpl/cothreads_compat.sgml:
8667         * docs/gst/tmpl/gettext.sgml:
8668         * docs/gst/tmpl/grammar.tab.sgml:
8669         * docs/gst/tmpl/gst-i18n-app.sgml:
8670         * docs/gst/tmpl/gst-i18n-lib.sgml:
8671         * docs/gst/tmpl/gst.sgml:
8672         * docs/gst/tmpl/gst_private.sgml:
8673         * docs/gst/tmpl/gstaggregator.sgml:
8674         * docs/gst/tmpl/gstarch.sgml:
8675         * docs/gst/tmpl/gstatomic.sgml:
8676         * docs/gst/tmpl/gstatomic_impl.sgml:
8677         * docs/gst/tmpl/gstbin.sgml:
8678         * docs/gst/tmpl/gstbuffer.sgml:
8679         * docs/gst/tmpl/gstbufferstore.sgml:
8680         * docs/gst/tmpl/gstcaps.sgml:
8681         * docs/gst/tmpl/gstclock.sgml:
8682         * docs/gst/tmpl/gstcompat.sgml:
8683         * docs/gst/tmpl/gstconfig.sgml:
8684         * docs/gst/tmpl/gstcpu.sgml:
8685         * docs/gst/tmpl/gstdata.sgml:
8686         * docs/gst/tmpl/gstdata_private.sgml:
8687         * docs/gst/tmpl/gstelement.sgml:
8688         * docs/gst/tmpl/gstenumtypes.sgml:
8689         * docs/gst/tmpl/gsterror.sgml:
8690         * docs/gst/tmpl/gstevent.sgml:
8691         * docs/gst/tmpl/gstfakesink.sgml:
8692         * docs/gst/tmpl/gstfakesrc.sgml:
8693         * docs/gst/tmpl/gstfilesink.sgml:
8694         * docs/gst/tmpl/gstfilter.sgml:
8695         * docs/gst/tmpl/gstindex.sgml:
8696         * docs/gst/tmpl/gstinfo.sgml:
8697         * docs/gst/tmpl/gstinterface.sgml:
8698         * docs/gst/tmpl/gstlog.sgml:
8699         * docs/gst/tmpl/gstmacros.sgml:
8700         * docs/gst/tmpl/gstmarshal.sgml:
8701         * docs/gst/tmpl/gstmd5sink.sgml:
8702         * docs/gst/tmpl/gstmultifilesrc.sgml:
8703         * docs/gst/tmpl/gstobject.sgml:
8704         * docs/gst/tmpl/gstpad.sgml:
8705         * docs/gst/tmpl/gstparse.sgml:
8706         * docs/gst/tmpl/gstpipeline.sgml:
8707         * docs/gst/tmpl/gstplugin.sgml:
8708         * docs/gst/tmpl/gstpluginfeature.sgml:
8709         * docs/gst/tmpl/gstqueue.sgml:
8710         * docs/gst/tmpl/gstreamer-unused.sgml:
8711         * docs/gst/tmpl/gstregistry.sgml:
8712         * docs/gst/tmpl/gstregistrypool.sgml:
8713         * docs/gst/tmpl/gstscheduler.sgml:
8714         * docs/gst/tmpl/gstsearchfuncs.sgml:
8715         * docs/gst/tmpl/gstshaper.sgml:
8716         * docs/gst/tmpl/gstspider.sgml:
8717         * docs/gst/tmpl/gstspideridentity.sgml:
8718         * docs/gst/tmpl/gststructure.sgml:
8719         * docs/gst/tmpl/gstsystemclock.sgml:
8720         * docs/gst/tmpl/gsttag.sgml:
8721         * docs/gst/tmpl/gsttaginterface.sgml:
8722         * docs/gst/tmpl/gsttee.sgml:
8723         * docs/gst/tmpl/gstthread.sgml:
8724         * docs/gst/tmpl/gsttrace.sgml:
8725         * docs/gst/tmpl/gsttrashstack.sgml:
8726         * docs/gst/tmpl/gsttypefind.sgml:
8727         * docs/gst/tmpl/gsttypes.sgml:
8728         * docs/gst/tmpl/gsturi.sgml:
8729         * docs/gst/tmpl/gsturitype.sgml:
8730         * docs/gst/tmpl/gstutils.sgml:
8731         * docs/gst/tmpl/gstvalue.sgml:
8732         * docs/gst/tmpl/gstversion.sgml:
8733         * docs/gst/tmpl/gstxml.sgml:
8734         * docs/gst/tmpl/gstxmlregistry.sgml:
8735         * docs/gst/tmpl/gthread-cothreads.sgml:
8736         * docs/gst/tmpl/types.sgml:
8737
8738 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8739
8740         * docs/pwg/other-sink.xml:
8741         * docs/pwg/other-source.xml:
8742           Documentation on how to write source and sink elements. Other
8743           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8744           manager, autoplugger) are all still pending.
8745
8746 2004-03-25  Benjamin Otte  <otte@gnome.org>
8747
8748         * testsuite/elements/Makefile.am:
8749         * testsuite/elements/gst-compprep-check:
8750           add check to make sure gst-compprep works
8751         * testsuite/elements/gst-inspect-check.in:
8752           improve initialization output
8753         * testsuite/Makefile.am:
8754         * testsuite/gst-inspect-check:
8755           remove old file
8756
8757 2004-03-24  David Schleef  <ds@schleef.org>
8758
8759         * testsuite/elements/Makefile.am:
8760         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8761         to the testsuite.
8762
8763 2004-03-24  Benjamin Otte  <otte@gnome.org>
8764
8765         * libs/gst/control/dparam.c: (gst_dparam_attach),
8766         (gst_dparam_detach):
8767         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8768           fix lvalue casts for real
8769
8770 2004-03-24  Benjamin Otte  <otte@gnome.org>
8771
8772         * gst/schedulers/gstbasicscheduler.c:
8773         (gst_basic_scheduler_src_wrapper):
8774         * gst/schedulers/gstoptimalscheduler.c:
8775         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8776         (pad_clear_queued), (gst_opt_scheduler_add_element),
8777         (gst_opt_scheduler_remove_element):
8778           fix GStreamer to not have issues with lvalue casts anymore (fixes
8779           #136841)
8780
8781 2004-03-24  Benjamin Otte  <otte@gnome.org>
8782
8783         * gst/gstelement.c:
8784           add documentation about a gobject quirk where the object hasn't the
8785           correct class pointer set on initialization
8786         * gst/schedulers/gstbasicscheduler.c:
8787         (gst_basic_scheduler_src_wrapper):
8788           make sure to not run into an infinite loop
8789
8790 2004-03-22  Benjamin Otte  <otte@gnome.org>
8791
8792         * gst/gstutils.c: (gst_util_dump_mem):
8793         * gst/gstutils.h:
8794           first argument of gst_util_dump_mem should be const
8795
8796 2004-03-22  Johan Dahlin  <johan@gnome.org>
8797
8798         * gst/gstvalue.h: Clean up a little bit.
8799
8800 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8801
8802         reviewed by Benjamin Otte  <otte@gnome.org>
8803
8804         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8805         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8806         (gst_aggregator_class_init), (gst_aggregator_init):
8807         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8808         (gst_filesrc_dispose), (gst_filesrc_set_location):
8809         * gst/elements/gstidentity.c: (gst_identity_finalize),
8810         (gst_identity_class_init), (gst_identity_chain):
8811         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8812         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8813         (gst_statistics_class_init):
8814         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8815         (gst_tee_get_property):
8816           clean up used memory in this elements correctly on teardown (closes
8817           #137279)
8818
8819 2004-03-20  Colin Walters  <walters@redhat.com>
8820
8821         * gst/registries/gstxmlregistry.c:
8822         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8823         registry saving atomic.
8824
8825 2004-03-20  Colin Walters  <walters@redhat.com>
8826
8827         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8828         Just use
8829         access() instead of actually creating and deleting files.
8830
8831 2004-03-18  David Schleef  <ds@schleef.org>
8832
8833         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8834         (bug #137625)
8835
8836 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8837
8838         * po/sv.po: updated translation (Christian Rose)
8839
8840 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8841
8842         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8843         (gst_filesink_get_query_types), (_do_init),
8844         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8845           return FALSE silently
8846         * po/af.po: updated translation (Petri Jooste)
8847
8848 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8849
8850         * Makefile.am:
8851         * configure.ac:
8852           dist common properly
8853         * po/af.po:
8854         * po/fr.po:
8855         * po/nl.po:
8856         * po/sr.po:
8857         * po/sv.po:
8858           refreshing translations
8859
8860 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8861
8862         * po/LINGUAS:
8863         * po/sv.po:
8864         * po/af.po:
8865           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8866
8867 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8868
8869         * Makefile.am: use common/release.mak
8870
8871 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8872
8873         * docs/faq/gst-uninstalled:
8874           adding gst-monkeysaudio to the list of possible plugin dirs
8875
8876 2004-03-16  David Schleef  <ds@schleef.org>
8877
8878         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8879         (gst_init_check_with_popt_table):  Fix some gettext strings to
8880         make them easier to translate.  Required making the strings
8881         non-const.
8882
8883 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8884
8885         * configure.ac: bump nano to 1
8886
8887 === release 0.8.0 ===
8888
8889 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8890
8891         * configure.ac: release 0.8.0, "Executive Slacks"
8892
8893 2004-03-16  Johan Dahlin  <johan@gnome.org>
8894
8895         * gst/schedulers/gstoptimalscheduler.c
8896         (gst_opt_scheduler_pad_unlink): Remove double ;,
8897         spotted by Scott Wheeler
8898
8899 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8900
8901         * configure.ac: bump libtool version
8902
8903 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8904
8905         * gst/gstcaps.h:
8906         * gst/gststructure.h:
8907           add reserved padding
8908
8909 2004-03-15  Benjamin Otte  <otte@gnome.org>
8910
8911         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8912           set the first parameter for select call correctly.
8913           (fixes #137230)
8914
8915 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8916
8917         * *.c,*.h: don't mix tabs and spaces
8918
8919 2004-03-15  Johan Dahlin  <johan@gnome.org>
8920
8921         * gst/schedulers/gstoptimalscheduler.c
8922         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
8923         crash on MPEG playback. My boolean arithmetic is a bit rusty.
8924
8925         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
8926         
8927 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8928
8929         * testsuite/Rules:
8930           fix gst-register rules
8931
8932 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8933
8934         * testsuite/Rules:
8935           use versioned gst-register
8936
8937 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8938
8939         * docs/libs/gstreamer-libs-sections.txt:
8940           remove </SUBSECTION>
8941         * gst/gstplugin.c:
8942         * gst/gstregistry.c: (gst_registry_add_plugin):
8943         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
8944         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
8945           add debugging and fix some comment blocks
8946
8947 2004-03-15  Johan Dahlin  <johan@gnome.org>
8948
8949         * *.h: Revert indent changes.
8950         
8951 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8952
8953         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
8954           g_error_free the g_error
8955         * tools/gst-feedback-m.m:
8956           check for other versions of gstreamer
8957         * tools/gst-indent:
8958           use sh, not bash
8959
8960 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8961
8962         * tools/gst-register.c: do not spill paths when registries are not
8963           writable, until we fix the "user running gst-register" case.
8964
8965 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8966
8967         * *.c, *.h: commit of gst-indent run on core
8968
8969 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8970
8971         * tools/gst-indent:
8972         * tools/Makefile.am:
8973           add our indentation style as a script
8974
8975 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
8976
8977         * po/sr.po:
8978         * po/LINGUAS:
8979           added Serbian translation
8980
8981 2004-03-13  Benjamin Otte  <otte@gnome.org>
8982
8983         * gst/gstelement.c:
8984           add documentation note about gst_element_found_tags_for_pad not
8985           being usable in getfunctions. (see #137042)
8986
8987 2004-03-12  David Schleef  <ds@schleef.org>
8988
8989         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
8990         change API right now!  Readd gst_caps_is_simple() macro.
8991         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
8992         uninitialized variable.  I'd bet this caused crashes.
8993         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
8994
8995 2004-03-12  Johan Dahlin  <johan@gnome.org>
8996
8997         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
8998         * gst/gstcaps.h: Clean up
8999
9000         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9001         _gst_caps_initalize()
9002
9003         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9004         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9005
9006         * gst/gststructure.c (gst_structure_get_type): Ditto
9007
9008         * gst/gststructure.h: Ditto
9009         
9010 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9011
9012         * gst/gstqueue.c: (gst_queue_init):
9013           Reset default max. values in queues. Reason is simply to avoid
9014           braindead use. If you want wider values, use the properties. The
9015           default is supposed to always work. Wider values would make this
9016           beast a memory hog by default (250 full-PAL RGB32 video frames?
9017           That's 440 MB! No thank you).
9018
9019 2004-03-10  David Schleef  <ds@schleef.org>
9020
9021         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9022         were found.  (bug #136793)
9023
9024 2004-03-10  Johan Dahlin  <johan@gnome.org>
9025
9026         * gst/schedulers/gstoptimalscheduler.c
9027         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9028         links to elements within the same group, so we can finally remove
9029         that annoying warning. Refactor the code a little bit
9030         (group_dec_links_for_element): Split out
9031
9032 2004-03-09  David Schleef  <ds@schleef.org>
9033
9034         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9035         (bug #134863)
9036
9037 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9038
9039         * configure.ac: first bug fix due to major/minor bump
9040
9041 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9042
9043         * configure.ac: bump nano to 1
9044
9045 === release 0.7.6 ===
9046
9047 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9048
9049         * NEWS:
9050         * RELEASE:
9051         * configure.ac:
9052           releasing 0.7.6, "Almost"
9053         * po/fr.po:
9054         * po/nl.po:
9055         * tools/Makefile.am:
9056         * tools/gst-feedback-m.m:
9057           unversioned source
9058
9059 2004-03-09  Johan Dahlin  <johan@gnome.org>
9060
9061         Reviewed by: Thomas Vander Stichele
9062
9063         * gst/gstelement.c (gst_element_class_init): register second
9064         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9065         language bindings can (de)marshall correctly.
9066
9067         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9068
9069         * gst/gsterror.c (gst_g_error_get_type): New function
9070
9071         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9072         with VOID:OBJECT,OBJECT,STRING 
9073
9074 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9075
9076         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9077         Free a leaked g_timer on early returns.
9078
9079 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9080
9081         * docs/pwg/advanced-types.xml:
9082           Add cinepak description.
9083
9084 2004-03-07  David Schleef  <ds@schleef.org>
9085
9086         * docs/random/mimetypes:  Added cinepak description
9087
9088 2004-03-07  Andy Wingo  <wingo@pobox.com>
9089
9090         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9091
9092         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9093         there are no links to other groups when a group is destroyed.
9094         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9095         removed from a group, make sure the link count to elements linked
9096         to other pads is appropriately decremented. This really fixes
9097         #135672.
9098
9099         The 1.60->1.61 patch has been reapplied in light of this fix.
9100
9101         * gst/gstelement.c (gst_element_dispose): Really protect against
9102         multiple invocations this time.
9103
9104 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9105
9106         * docs/gst/gstreamer-sections.txt:
9107         * docs/gst/tmpl/gsttag.sgml:
9108           remove some deprecated functions, document some existing ones
9109         * gst/gsttag.c: (gst_tag_get_flag):
9110         * gst/gsttag.h:
9111           add accessor function
9112
9113 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9114
9115         * docs/gst/gstreamer-sections.txt:
9116         * docs/gst/tmpl/gsttag.sgml:
9117         * docs/gst/tmpl/gstxml.sgml:
9118         * gst/gsttag.c: (gst_tag_get_flag):
9119         * gst/gsttag.h:
9120
9121 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9122
9123         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9124         leak
9125
9126 2004-03-05  David Schleef  <ds@schleef.org>
9127
9128         * REQUIREMENTS: Add bison and flex.
9129         * configure.ac: Fix comment about bison.
9130         * docs/random/ds/0.9-suggested-changes: yer ma
9131         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9132
9133 2004-03-05  Benjamin Otte  <otte@gnome.org>
9134
9135         * gst/gstelement.c: (gst_element_error_full):
9136           revert recent recursive state changing commit - messing with other
9137           elements' states is evil and should be done by apps only.
9138
9139 2004-03-05  Benjamin Otte  <otte@gnome.org>
9140
9141         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9142           check for empty intersection instead of NULL caps
9143         (gst_element_get_compatible_pad_filtered):
9144           remove old workaround that is only a bug nowadays
9145
9146 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9147
9148         * gst/gstelement.c: (gst_element_error_full):
9149           make elements try to recursively change state to PAUSED on all
9150           parents after an error to suppress ensuing warnings
9151         * gst/parse/grammar.y:
9152           make it check if it was able to sync the state, and throw an error
9153           if not, so stuff like
9154           oggdemux ! vorbisdec ! osssink gets caught
9155
9156 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9157
9158         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9159           it contains lib64; use AS_AC_EXPAND to handle it properly
9160
9161 2004-03-05  David Schleef  <ds@schleef.org>
9162
9163         * gst/gstcpuid_i386.s:  Remove unused code
9164         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9165         (gst_getbits_newbuf): Remove MMX code
9166         * libs/gst/getbits/getbits.h: Remove MMX code
9167
9168 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9169
9170         * debian/.cvsignore:
9171         * debian/README.Debian:
9172         * debian/changelog:
9173         * debian/control:
9174         * debian/control.in:
9175         * debian/copyright:
9176         * debian/gstreamer-core-libs-dev.files:
9177         * debian/gstreamer-core-libs.files:
9178         * debian/gstreamer-core.files:
9179         * debian/gstreamer-core.postinst:
9180         * debian/gstreamer-core.postrm:
9181         * debian/gstreamer-doc.files:
9182         * debian/gstreamer-doc.links:
9183         * debian/gstreamer-doc.lintian:
9184         * debian/gstreamer-runtime.files:
9185         * debian/gstreamer-runtime.manpages:
9186         * debian/gstreamer-runtime.postinst:
9187         * debian/gstreamer-runtime.postrm:
9188         * debian/gstreamer-tools.files:
9189         * debian/gstreamer-tools.manpages:
9190         * debian/libgstreamer-dev.files:
9191         * debian/libgstreamer0.4.1.files:
9192         * debian/libgstreamerVERSION.files:
9193         * debian/rules:
9194         Debian package info not maintained here.
9195
9196 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9197
9198         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9199         * gst/gstbin.c: (gst_bin_class_init):
9200         * gst/gstelement.c: (gst_element_class_init):
9201         * gst/gstindex.c: (gst_index_class_init):
9202         * gst/gstobject.c: (gst_object_class_init),
9203         (gst_signal_object_class_init):
9204         * gst/gstpad.c: (gst_pad_template_class_init):
9205         * gst/gstregistry.c: (gst_registry_class_init):
9206         * gst/gsturi.c: (gst_uri_handler_base_init):
9207         * gst/gstxml.c: (gst_xml_class_init):
9208         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9209         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9210           make all signal names use dashes instead of underscore
9211
9212 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9213
9214         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9215
9216 2004-03-03  Benjamin Otte  <otte@gnome.org>
9217
9218         * gst/schedulers/gstoptimalscheduler.c:
9219           revert last commit by Andy Wingo. It causes segfaults on unreffing
9220           in Rhythmbox. (see bug #135672)
9221
9222 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9223
9224         * po/fr.po: fix typo
9225
9226 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9227
9228         * tools/gst-inspect.c: (main): 
9229         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9230
9231 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9232
9233         * configure.ac:
9234           get GLIB_ONLY and POPT flags for the nonversioned binaries
9235         * tools/Makefile.am:
9236           use them
9237
9238 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9239
9240         * gst/gst.c: (init_post):
9241           change so that GST_REGISTRY now is where the global registry gets
9242           saved, since that is where plugins now get attached to first, and
9243           spilled over to the user registry.  Note that in the case of using
9244           GST_REGISTRY env var, we don't want to affect any real registries
9245           beyond the one given by this var, and thus we don't set a user
9246           registry to spill to.  So make sure GST_REGISTRY is writable.
9247
9248 2004-03-01  David Schleef  <ds@schleef.org>
9249
9250         * AUTHORS:  Added some names.  Add yourself if you're missing.
9251
9252 2004-03-01  David Schleef  <ds@schleef.org>
9253
9254         * MAINTAINERS: Add
9255
9256 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9257
9258         * configure.ac:
9259           remove whitespace
9260         * docs/gst/tmpl/gstbuffer.sgml:
9261         * docs/gst/tmpl/gstdata.sgml:
9262         * docs/gst/tmpl/gstreamer-unused.sgml:
9263         * docs/gst/tmpl/gstxml.sgml:
9264           doc update
9265         * docs/manuals.mak:
9266           add a FIXME
9267         * docs/pwg/intro-preface.xml:
9268         * docs/pwg/pwg.xml:
9269           remove GNOME
9270         * gst/gst.c: (init_post):
9271           try GST_PLUGIN_PATH paths for the _global_registry first
9272         * gst/gstelement.h:
9273           add the error message as well, otherwise (null) debug info doesn't
9274           make much sense
9275         * tools/gst-register.c: (main):
9276           spill paths to next registry if this registry is not writable
9277         * po/fr.po:
9278         * po/nl.po:
9279           translation updates
9280
9281 2004-03-01  Johan Dahlin  <johan@gnome.org>
9282
9283         * gst/gstbuffer.c (_gst_buffer_initialize): 
9284         * gst/gstdata.c (gst_data_get_type): 
9285         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9286         instead of ref, since some applications that uses GBoxed
9287         routines depends on a function that actually returns a copy.
9288
9289 2004-02-27  Benjamin Otte  <otte@gnome.org>
9290
9291         * gst/gstbuffer.h:
9292           remove gst_buffer_free, use gst_data_unref
9293         * gst/gstdata.c: (gst_data_get_type):
9294           use refcounting in GstData GBoxed registration
9295         * gst/gstdata.h:
9296           remove gst_data_free, use gst_data_unref
9297
9298 2004-02-27  Johan Dahlin  <johan@gnome.org>
9299
9300         * gst/gstdata.c (gst_data_get_type): New function, register
9301         GstData as a GBoxed type.
9302
9303         * gst/gstdata.h (GST_TYPE_DATA): New macro
9304
9305 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9306
9307         * Makefile.am:
9308         * gstreamer.spec.in:
9309           put back RELEASE
9310         * gst/Makefile.am:
9311           clean up non-disting of built files
9312         * testsuite/debug/commandline.c:
9313           test fix for option rename
9314
9315 2004-02-26  David Schleef  <ds@schleef.org>
9316
9317         * configure.ac:  We don't really need glib-2.3.  Also remove
9318         some unneeded checks for library functions.
9319         * gst/Makefile.am:  Instead, we need to not dist files created
9320         by glib-genmarshal.
9321
9322 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9323
9324         * configure.ac:
9325           bump glib required version to 2.3.0 for g_value_takes_boxed
9326
9327  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9328
9329         * common/m4/gst-docs.m4
9330         change flavour text from enable to disable as enable is our default
9331         closes bug Bug 135304
9332
9333 === release 0.7.5 ===
9334  
9335  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9336  
9337         * NEWS:
9338           instate NEWS file
9339         * Makefile.am:
9340         * gstreamer.spec.in:
9341         * RELEASE:
9342           put back release
9343         * configure.ac:
9344         * docs/random/release:
9345           more updates
9346
9347 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9348
9349         * gst/gsttag.c: (_gst_tag_initialize):
9350         * po/fr.po:
9351         * po/nl.po:
9352           remove hyphen from codec tags
9353
9354 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9355
9356         * gst/parse/Makefile.am:
9357           fix dependency so that a make from a clean build works the first
9358           time
9359
9360 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9361
9362         * docs/random/release:
9363           update release strategy
9364         * po/fr.po:
9365           auto-update po file
9366         * po/nl.po:
9367           update dutch translation
9368
9369 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9370
9371         * docs/manual/debugging.xml:
9372         fix manual for new debugging system
9373
9374 2004-02-25  Andy Wingo  <wingo@pobox.com>
9375
9376         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9377         gst_pad_link_prepare. Please email the list with specific reasons
9378         for reverting.
9379
9380 2004-02-24  Andy Wingo  <wingo@pobox.com>
9381
9382         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9383         invocations.
9384
9385         * gst/schedulers/gstoptimalscheduler.c:
9386         I added a mess of prototypes at the top of the file by way of
9387         documentation. Some of the operations on chains and groups were
9388         re-organized.
9389
9390         (create_group): Added a type argument so if the group is enabled,
9391         the setup_group_scheduler knows what to do.
9392         (group_elements): Added a type argument here, too, to be passed on
9393         to create_group.
9394         (group_element_set_enabled): If an unlinked PLAYING element is
9395         added to a bin, we have to create a new group to hold the element,
9396         and this function will be called before the group is added to the
9397         chain. Thus we have a valid case for group->chain==NULL. Instead
9398         of calling chain_group_set_enabled, just set the flag on the group
9399         (the chain's status will be set when the group is added to it).
9400         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9401         Setup the group scheduler when the group is enabled, not
9402         specifically when an element goes PAUSED->PLAYING. This means
9403         PLAYING elements can be added, linked, and scheduled into a
9404         PLAYING pipeline, as was intended.
9405         (add_to_group): Don't ref the group twice. I don't know when this
9406         double-ref got in here. Removing it has the potential to cause
9407         segfaults if other parts of the scheduler are buggy. If you find
9408         that the scheduler is segfaulting for you, put in an extra ref
9409         here and see if that hacks over the underlying issue. Of course,
9410         then find out what code is unreffing a group it doesn't own...
9411         (create_group): Make the extra refcount floating, and remove it
9412         after adding the element. This means that...
9413         (unref_group): Destroy when the refcount reaches 0, not 1, like
9414         every other refcounted object in the known universe.
9415         (remove_from_group): When a group becomes empty, set it to be not
9416         active, and remove it from its chain. Don't unref it again,
9417         there's no floating reference any more.
9418         (destroy_group): We have to remove the group from the chain in
9419         remove_from_group (rather than here) to break refcounting cycles
9420         (the chain always has a ref on the group). So assert that
9421         group->chain==NULL.
9422         (ref_group_by_count): Removed, it was commented out anyway.
9423         (merge_chains): Use the remove_from_chain and add_to_chain
9424         primitives to do the reparenting, instead of rolling our own
9425         implementation.
9426         (add_to_chain): The first non-disabled group in the chain's group
9427         list will be the entry point for the chain. Because buffers can
9428         accumulate in loop elements' peer bufpens, we preferentially
9429         schedule loop groups before get groups to avoid unnecessary
9430         execution of get-based groups when the bufpens are already full.
9431         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9432         (get_group_schedule_function): Ditto.
9433         (loop_group_schedule_function): Ditto.
9434         (gst_opt_scheduler_loop_wrapper): Ditto.
9435         (gst_opt_scheduler_iterate): Ditto.
9436
9437         I understand the opt scheduler now, yippee!
9438
9439         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9440         (gst_pad_get_name, gst_pad_set_chain_function) 
9441         (gst_pad_set_get_function, gst_pad_set_event_function) 
9442         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9443         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9444         (gst_pad_set_query_function, gst_pad_get_query_types) 
9445         (gst_pad_get_query_types_default) 
9446         (gst_pad_set_internal_link_function) 
9447         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9448         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9449         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9450         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9451         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9452         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9453         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9454         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9455         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9456         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9457         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9458         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9459         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9460         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9461         argument checks, and some doc fixes.
9462
9463         (gst_pad_custom_new_from_template): Um, does anyone
9464         use these functions? Actually make a custom pad instead of a
9465         normal one.
9466         (gst_pad_try_set_caps): Transpose some checks.
9467         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9468         the pad is in negotiation.
9469         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9470         
9471         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9472
9473         * gst/gstelement.h: 
9474         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9475         on the list.
9476
9477 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9478
9479         * gst/gstbin.c: (gst_bin_add):
9480           add error for not being able to add elements
9481
9482 2004-02-22  Julien MOUTTE <julien@moutte.net>
9483
9484         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9485         audio-codec and video-codec.
9486
9487 2004-02-22  Benjamin Otte  <otte@gnome.org>
9488
9489         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9490
9491         * autogen.sh:
9492           replace test -e with test -x for mkinstalldirs to be more portable.
9493           (fixes #134816)
9494
9495 2004-02-22  Benjamin Otte  <otte@gnome.org>
9496
9497         * gst/gstpad.c:
9498           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9499           too noisy
9500         * gst/gsttag.c: (_gst_tag_initialize):
9501         * gst/gsttag.h:
9502           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9503         * libs/gst/control/dparam.c: (gst_dparam_attach):
9504         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9505           check that types for attached dparams match
9506
9507 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9508
9509         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9510         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9511         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9512           fix errors
9513
9514 2004-02-20  Andy Wingo  <wingo@pobox.com>
9515
9516         * gst/gstbin.c:
9517         * gst/gstbuffer.c:
9518         * gst/gstplugin.c:
9519         * gst/registries/gstxmlregistry.c: 
9520         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9521
9522         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9523         (gst_element_add_pad): DEBUG->INFO, some fixes.
9524         (gst_element_get_compatible_pad_template): Just see if the
9525         templates' caps intersect, not if one is a strict subset of the
9526         other. This conforms more to what gst_pad_link_intersect() does.
9527         (gst_element_class_add_pad_template): Don't memcpy the pad
9528         template, just ref it.
9529         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9530
9531         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9532         (gst_pad_link_filtered): Debug changes.
9533         (gst_pad_link_prepare): New function, consolidated from
9534         can_link_filtered and link_filtered.
9535
9536         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9537         look more like that of the functions in gstelement.c
9538
9539         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9540         object, and return the empty string if object is NULL.
9541
9542         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9543         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9544         LOG, not DEBUG. We still get flex info on debug.
9545
9546         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9547         debug string more verbose.
9548         (plugin_times_older_than): DEBUG->LOG.
9549
9550 2004-02-20  Julien MOUTTE <julien@moutte.net>
9551
9552         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9553         will emit found_tag for each stream they demux with the codec.
9554
9555 2004-02-20  Benjamin Otte  <otte@gnome.org>
9556
9557         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9558           copy navigation event correctly. Check freeing tag lists. 
9559         * gst/gstthread.c: (gst_thread_change_state):
9560           don't abort() on state changing mess - it might happen because of
9561           bugs.
9562         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9563           use boxed functions
9564         * gst/gstvalue.h:
9565           fix GST_VALUE_HOLDS_CAPS
9566
9567 2004-02-19  David Schleef  <ds@schleef.org>
9568
9569         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9570         and use it for GST_FUNCTION.  (bug #134750)
9571
9572 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9573
9574         * po/fr.po:
9575         * po/nl.po:
9576           updating translations
9577
9578 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9579
9580         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9581
9582 2004-02-18  kost@imn.htwk-leipzig.de
9583
9584         reviewed by: David Schleef  <ds@schleef.org>
9585
9586         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9587         for libgstcontrol.
9588
9589 2004-02-18  David Schleef  <ds@schleef.org>
9590
9591         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9592         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9593         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9594         * tools/gst-inspect.c: (print_element_info): Support dumping of
9595         double dparam information.
9596
9597 2004-02-17  David Schleef  <ds@schleef.org>
9598
9599         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9600         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9601         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9602         Use GST_TYPE_CAPS in signal prototype.
9603         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9604         Convert GST_TYPE_CAPS to boxed.
9605         * gst/gstelement.c: (gst_element_class_init):
9606         Use GST_TYPE_TAG_LIST in signal prototype.
9607         * gst/gstindex.c: (gst_index_class_init):
9608         * gst/gstindex.h:
9609         Add GST_TYPE_INDEX_ENTRY type.
9610         * gst/gstmarshal.list:
9611         Add necessary marshal types.
9612         * gst/gstpad.c: (gst_real_pad_class_init),
9613         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9614         (gst_pad_recover_caps_error):
9615         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9616         * gst/gststructure.c: (_gst_structure_initialize),
9617         (gst_structure_copy), (_gst_structure_copy_conditional):
9618         * gst/gststructure.h:
9619         Convert GST_TYPE_STRUCTURE to boxed.
9620         * gst/gsttag.c: (gst_tag_list_get_type):
9621         * gst/gsttag.h:
9622         Add GST_TYPE_TAG_LIST type.
9623
9624 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9625
9626         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9627         to what we agreed with david.
9628         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9629
9630 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9631
9632         * po/nl.po: update translation
9633
9634 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9635
9636         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9637           throw an error if spider is trying to play a mime type there is
9638           no decoder for
9639         * po/POTFILES.in:
9640           add gst/autoplug/gstspider.c for translation
9641
9642 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9643
9644         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9645         silently when the pad is negotiating.
9646
9647 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9648
9649         * docs/faq/Makefile.am:
9650           add script to run gstreamer uninstalled 
9651         * docs/faq/faq.xml:
9652         * docs/faq/developing.xml:
9653         * docs/faq/gst-uninstalled:
9654           extract script to run gstreamer uninstalled
9655         * docs/manuals.mak:
9656           add EXTRA_SOURCES variable for Makefile.am's to set to
9657           use additional SOURCE files for the doc build
9658
9659 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9660
9661         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9662
9663 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9664
9665         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9666         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9667         an error was thrown by osssink. Basically a state change failure for
9668         an element in a different scheduling group was considered as
9669         successful, which means that caps nego was going on and weird stuff
9670         happened. Like I wrote in the comment there, if someone wants to
9671         revert that please drop me a mail explaining why because I really see
9672         no point in keeping that broken behaviour there.
9673         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9674         be empty, we then return NULL which will trigger a nice error when 
9675         pulling from the pad.
9676
9677 2004-02-13  David Schleef  <ds@schleef.org>
9678
9679         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9680         (gst_dparam_get_property), (gst_dparam_set_property),
9681         (gst_dparam_do_update_default):
9682         * libs/gst/control/dparam.h:
9683         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9684         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9685         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9686         (gst_dpsmooth_do_update_double):
9687         * libs/gst/control/dparam_smooth.h:
9688         * libs/gst/control/dparammanager.c:
9689         (gst_dpman_inline_direct_update):
9690         Add support for double dparams.
9691
9692 2004-02-13  David Schleef  <ds@schleef.org>
9693
9694         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9695         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9696
9697 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9698
9699         reviewed by: David Schleef  <ds@schleef.org>
9700
9701         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9702         (gst_fdsrc_init), (gst_fdsrc_set_property),
9703         (gst_fdsrc_get_property), (gst_fdsrc_get):
9704         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9705         and sends an EOS event if file descriptor reading times out.
9706
9707 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9708
9709         * configure.ac:
9710           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9711
9712 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9713
9714         * configure.ac: pass required libxml version as argument
9715         (bug reported by Christophe Fergeau)
9716
9717 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9718   
9719         * docs/gst/gstreamer-docs.sgml:
9720         * docs/gst/tmpl/gstxml.sgml:
9721         * docs/libs/gstreamer-libs-docs.sgml:
9722           version API docs
9723
9724 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9725
9726         * gst/gstinfo.c:
9727         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9728         (gst_registry_pool_feature_filter):
9729         * gst/gstthread.c: (gst_thread_class_init):
9730         * gst/gstvalue.c:
9731           add includes exposed by building without libxml
9732         * gst/indexers/Makefile.am:
9733           do not build fileindex when LOADSAVE disabled; we should have
9734           a better libxml check later since fileindex depends on xml, not
9735           LOADSAVE or REGISTRY
9736         * libs/gst/control/Makefile.am:
9737           link with m
9738         * tools/Makefile.am:
9739           fix wrong source code for gst-xmlinspect
9740
9741 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9742
9743         * configure.ac:
9744           fix gcov help output
9745           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9746         * docs/random/release:
9747           some updated releasing notes
9748         * gstreamer.spec.in:
9749           more updates
9750
9751 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9752
9753         * docs/faq/faq.xml:
9754         * docs/manual/manual.xml:
9755         * docs/pwg/pwg.xml:
9756         * docs/pwg/titlepage.xml:
9757           put version in documentation
9758
9759 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9760
9761         * tools/Makefile.am: fix man page installation
9762
9763 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9764
9765         * configure.ac:
9766           don't check for libxml when load/save and registry disabled (#105844)
9767         * gstreamer.spec.in:
9768           sync with fedora candidate spec
9769
9770 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9771
9772         * po/fr.po:
9773         * po/nl.po:
9774           replace multidisksrc with multifilesrc
9775
9776 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9777
9778         * po/POTFILES.in:
9779           update to multidisksrc => multifilesrc file renaming (#134145)
9780
9781 2004-02-11  David Schleef  <ds@schleef.org>
9782
9783         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9784         * docs/gst/tmpl/gstpadtemplate.sgml: same
9785         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9786         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9787         fixing dance.
9788         * gst/gstutils.c: Remove disabled code that uses GstProps.
9789         * gst/registries/gstxmlregistry.h: same
9790         * docs/random/ds/0.9-suggested-changes: random notes
9791
9792 2004-02-11  kost@imn.htwk-leipzig.de
9793
9794         reviewed by: David Schleef  <ds@schleef.org>
9795
9796         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9797         initialisation of clock (bug #134128)
9798
9799 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9800
9801         * configure.ac:
9802         * gst/elements/Makefile.am:
9803         * gst/elements/gstelements.c:
9804         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9805         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9806         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9807         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9808         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9809         * gst/elements/gstmultifilesrc.h:
9810           rename multidisksrc to multifilesrc (part of #122200)
9811
9812 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9813
9814         * docs/manuals.mak:
9815           fix automake complaints
9816         * gst-element-check.m4:
9817           fix unquotedness
9818
9819 2004-02-11  David Schleef  <ds@schleef.org>
9820
9821         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9822         * gst/gstatomic_impl.h: Disable sparc implementation.
9823
9824 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9825
9826         * gst-element-check.m4:
9827           fix underquoted macros as reported by automake 1.8.x (#133800)
9828         * configure.ac:
9829           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9830           by autopoint (fixes #132996)
9831
9832 2004-02-10  Andy Wingo  <wingo@pobox.com>
9833
9834         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9835         way to do inheritance.
9836         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9837         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9838         Routine docs.
9839         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9840         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9841         doc.
9842         (gst_pad_unlink, gst_pad_is_linked): Docs.
9843         (gst_pad_renegotiate): A brief description of capsnego.
9844         (gst_pad_try_set_caps): Document.
9845         (gst_pad_try_set_caps_nonfixed): Document.
9846         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9847         (gst_pad_set_parent): Deprecated (although not out of the API).
9848         (gst_pad_get_parent): Deprecated, although many plugins use this.
9849         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9850         are private and will go away in 0.9.
9851         (gst_pad_perform_negotiate): Doc.
9852         (gst_pad_link_unnegotiate): I think this is meant to be static.
9853         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9854         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9855         (gst_pad_get_peer): Doc updates.
9856         (gst_pad_caps_change_notify): Doc.
9857         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9858         (gst_ghost_pad_new): Doc fixes.
9859
9860         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9861         (gst_object_check_uniqueness): 
9862
9863         * gst/gstelement.c (gst_element_add_pad) 
9864         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9865         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9866         (gst_element_get_static_pad, gst_element_get_pad_list) 
9867         (gst_element_class_get_pad_template_list) 
9868         (gst_element_class_get_pad_template): Work on the docs.
9869         (gst_element_get_pad_template_list): Uses the class method.
9870         (gst_element_get_compatible_pad_template): Docs, and consolidate
9871         some test conditions. 
9872         (gst_element_get_pad_from_template): New static function.
9873         (gst_element_request_compatible_pad): Docs, and work with
9874         non-request compatible templates. 
9875         (gst_element_get_compatible_pad_filtered): Docs and remove
9876         redundant checks.
9877         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9878         (gst_element_link_filtered, gst_element_link_many) 
9879         (gst_element_link, gst_element_link_pads) 
9880         (gst_element_unlink_many): Docs.
9881
9882 2004-02-05  Andy Wingo  <wingo@pobox.com>
9883
9884         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9885         s/pointer/boxed/.
9886
9887         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9888
9889         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9890         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9891         with the type=GST_TYPE_CAPS. This allows language bindings to know
9892         what kind of data they're dealing with.
9893
9894         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
9895         to NULL when g_value_init is called. GstCaps, which rolls its own
9896         type implementation, now does the same instead of allocating empty
9897         caps.
9898         (_gst_caps_initialize, _gst_caps_collect_value,
9899         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
9900         table methods. This allows G_VALUE_COLLECT to work.
9901
9902 2004-02-05  Andy Wingo  <wingo@pobox.com>
9903
9904         * configure.ac:
9905         * testsuite/Makefile.am (SUBDIRS): 
9906         * testsuite/ghostpads/Makefile.am: 
9907         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
9908
9909         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
9910         These two routines are the only ones that set
9911         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
9912         pad template. They should be made static, depending on ABI needs.
9913         (gst_real_pad_dispose): Handle the case of ghost pads without a
9914         parent. Assert after dealing with ghost pads that the ghost pad
9915         list is empty.
9916         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
9917         set after creation.
9918         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
9919         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
9920         functions. set_property will call add_ghost_pad/remove_ghost_pad
9921         as appropriate.
9922         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
9923
9924         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
9925         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
9926         (gst_element_remove_pad): Handle ghost pads as well.
9927         (gst_element_remove_ghost_pad): Deprecated (could be removed,
9928         depending on API-stability needs).
9929
9930 2004-02-05  Andy Wingo  <wingo@pobox.com>
9931
9932         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
9933         of course they're const
9934
9935 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9936
9937         * tools/Makefile.am:
9938         * tools/gst-feedback:
9939         * tools/gst-feedback-0.7:
9940           make gst-feedback versioned too for consistency
9941
9942 2004-02-11  David Schleef  <ds@schleef.org>
9943
9944         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
9945         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
9946
9947 2004-02-10  Julien MOUTTE <julien@moutte.net>
9948
9949         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
9950         the structure does not contain a valid tag list. Adding a safety check
9951         to remove a noisy warning in that case.
9952
9953 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
9954
9955         * gst/gst.c: fix name to be in line with others
9956
9957 2004-02-09  Julien MOUTTE <julien@moutte.net>
9958
9959         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
9960         not shout that loud when len is 0. Just return 0 silently.
9961
9962 2004-02-09  Julien MOUTTE  <julien@moutte.net>
9963
9964         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
9965         because data_unref has one and I prefer the debug to be symetric.
9966         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
9967         were refed when added to the queue and unrefed only once when the queue
9968         was flushed. Now the flush handler unref the buffers two times : first
9969         unref for the ref added when pushing in the queue's tail and second
9970         unref to destroy the flushed buffer.
9971
9972 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
9973
9974         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
9975
9976 2004-02-06  David Schleef  <ds@schleef.org>
9977
9978         * docs/random/ds/0.9-suggested-changes: Random ramblings
9979         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
9980         to int before printing.
9981         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
9982         * gst/parse/parse.l: same.  See bug #129600
9983
9984 2004-02-06  David Schleef  <ds@schleef.org>
9985
9986         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
9987         (gst_index_add_entry), (gst_index_add_associationv),
9988         (gst_index_add_association): Add gst_index_add_associationv()
9989         and clean up gst_index_add_association(). #127133
9990
9991 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9992
9993         * autogen.sh: check out common with right tag if CVS/Tag exists
9994
9995 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9996
9997         * testsuite/ghostpads/ghostpads.c: (main):
9998           fix testsuite from segfaulting
9999
10000 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10001
10002         * Makefile.am: add release target
10003         * configure.ac: bump nano to 1
10004         * docs/random/release:
10005
10006 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10007
10008         * gst/gstcaps.h:
10009         * gst/gstelement.c: (gst_element_base_class_init),
10010         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10011         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10012         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10013         (gst_real_pad_dispose):
10014         * gst/gststructure.c: (gst_structure_free),
10015         (gst_structure_from_string):
10016           put reverted patch back in
10017         * gst/gstelement.c: (gst_element_remove_pad):
10018           free explicit caps if they're set
10019         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10020           copy the structure when fixating
10021
10022 2004-02-05  David Schleef  <ds@schleef.org>
10023
10024         * gst/gstmarshal.list:
10025         * gst/gstpad.c: (gst_real_pad_class_init),
10026         (_gst_real_pad_fixate_accumulator):
10027         Revert POINTER->BOXED change in signal marshaller.
10028
10029 === release 0.7.4 ===
10030                                                                                 
10031 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10032                                                                                 
10033         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10034         * configure.ac: changed for release
10035
10036 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10037
10038         * gstreamer.spec.in:
10039           bump required version of gtk-doc
10040
10041 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10042
10043         * gst/gstcaps.h:
10044         * gst/gstelement.c: (gst_element_base_class_init),
10045         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10046         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10047         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10048         (gst_real_pad_dispose):
10049         * gst/gststructure.c: (gst_structure_free),
10050         (gst_structure_from_string):
10051           revert patch that breaks applications, reapply after release
10052           to get this fixed properly
10053
10054 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10055
10056         * gst/gsttag.c: (_gst_tag_initialize):
10057         * gst/gsttag.h:
10058           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10059
10060 2004-02-04  David Schleef  <ds@schleef.org>
10061
10062         Fix some memleaks:
10063         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10064         (gst_spider_plug_from_srcpad):
10065         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10066
10067 2004-02-04  David Schleef  <ds@schleef.org>
10068
10069         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10070         a GstRealPad before accessing its structure members.
10071
10072 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10073
10074         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10075         (gst_clock_get_speed):
10076         * gst/gstclock.h:
10077           reset padding, remove unused fields
10078
10079 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10080
10081         * gst/autoplug/gstspideridentity.c:
10082         (gst_spider_identity_sink_loop_type_finding):
10083           use get_allowed_caps, not get_caps (fixes #132519)
10084         * gst/elements/gsttypefind.c: (stop_typefinding):
10085           use correct order when sending buffers and seeking
10086
10087 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10088
10089         * configure.ac:
10090         * gst/gstelement.h:
10091         * gst/gstpad.h:
10092         * gst/gstqueue.h:
10093           upgrade libtool CURRENT, reset padding
10094
10095 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10096
10097         * configure.ac:
10098           bump to prerelease
10099           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10100
10101 2004-02-04  David Schleef  <ds@schleef.org>
10102
10103         * docs/random/ds/0.9-suggested-changes: random notes
10104         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10105         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10106         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10107         expansion.
10108         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10109         (gst_filesink_get_query_types): same
10110         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10111         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10112         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10113         to use new GST_PTR_FORMAT.
10114         * gst/gstelement.h: deprecate function factory macros
10115         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10116         These are our last variadic macros that can't be replaced with
10117         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10118         attempting to deprecate gst_element_clock_wait().
10119         * gst/gstevent.h: same
10120         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10121         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10122         * gst/gstpad.h: deprecate function factory macros similar to above.
10123
10124 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10125
10126         * configure.ac:
10127         * tools/Makefile.am:
10128         * tools/gst-run.c: (popt_callback), (hash_print_key),
10129         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10130         (get_candidates), (main):
10131           add new source file to generate non-versioned wrapper binaries
10132           for our tools.
10133
10134 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10135
10136         * gst/gstevent.c: (_gst_event_free):
10137           actually break; inside the switch statement
10138         * gst/parse/grammar.y:
10139           fix memleak where GValues weren't unset
10140
10141 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10142
10143         * gst/gststructure.c: (gst_structure_from_string):
10144           fix huge memleak
10145         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10146         (new_entry), (gst_type_find_element_chain):
10147         * gst/gstelement.c: (gst_element_base_class_init),
10148         (gst_element_class_set_details):
10149         * gst/gstpad.c: (gst_pad_can_link_filtered):
10150           fix smaller memleaks
10151         * gst/gstpad.c: (gst_real_pad_dispose):
10152           check that explicit caps are gone
10153         * gst/gststructure.c: (gst_structure_free):
10154           actually free the structure
10155         * gst/gstelement.c: (gst_element_clear_pad_caps):
10156           unset explicit caps
10157
10158 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10159
10160         * tools/Makefile.am:
10161           use AM_CFLAGS since all the CFLAGS are the same
10162           use AM_LDFAGS
10163
10164 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10165
10166         * docs/manual/gnome.xml:
10167           expand example a little
10168         * gst/gst.c: (gst_init_with_popt_table),
10169         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10170           make sure popt option displays are done with right textdomain
10171           use GstPoptOption type
10172         * gst/gst.h:
10173           create GstPoptOption type
10174
10175 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10176
10177         * gst/gsterror.c: (_gst_stream_errors_init):
10178         * gst/gsterror.h:
10179           adding error type for no codec
10180         * po/POTFILES.in:
10181           add gst-inspect
10182         * po/nl.po:
10183           update dutch translation
10184         * tools/gst-inspect.c: (print_element_list), (main):
10185           do proper internationalization
10186         * tools/gst-launch.c: (idle_func):
10187           remove commented out function call
10188
10189 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10190
10191         * docs/README:
10192           add some error fixing notes
10193         * docs/gst/gstreamer-sections.txt:
10194           remove double entries
10195         * docs/gst/tmpl/gstbin.sgml:
10196         * docs/gst/tmpl/gstclock.sgml:
10197           remove override
10198         * docs/gst/tmpl/gstelement.sgml:
10199         * docs/gst/tmpl/gstindex.sgml:
10200         * docs/gst/tmpl/gstobject.sgml:
10201         * docs/gst/tmpl/gstpadtemplate.sgml:
10202         * docs/gst/tmpl/gstreamer-unused.sgml:
10203         * docs/gst/tmpl/gsttag.sgml:
10204         * docs/gst/tmpl/gstthread.sgml:
10205         * docs/gst/tmpl/gstxml.sgml:
10206         * gst/gsttag.h:
10207           sync header prototypes with c decls
10208         * gst/gsttaginterface.c:
10209           fix doc headers
10210
10211 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10212
10213         * gst/parse/Makefile.am:
10214         * gst/gstobject.h:
10215           get rid of gstmarshal.h dependency. It's not needed.
10216         * gst/gst.h:
10217         * gst/elements/gstfakesink.c:
10218         * gst/elements/gstfakesrc.c:
10219         * gst/elements/gstidentity.c:
10220         * gst/gstbin.c:
10221         * gst/gstelement.c:
10222         * gst/gstindex.c:
10223         * gst/gstobject.c:
10224         * gst/gstpad.c:
10225         * gst/gstthread.c:
10226         * gst/gstxml.c:
10227         * libs/gst/control/dparam.c:
10228         * libs/gst/control/dparammanager.c:
10229           include gstmarshal.h.
10230         Fixes #132045
10231
10232 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10233
10234         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10235         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10236         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10237         * gst/elements/gstfilesrc.h:
10238           don't ref the filesrc when creating mmaped buffers. Don't keep a
10239           list of not-yet-destroyed buffers.
10240         * gst/gstbuffer.h:
10241           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10242
10243 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10244
10245         * gst/gst.c: (init_pre):
10246           remove textdomain
10247
10248 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10249
10250         * docs/pwg/advanced-events.xml:
10251         * docs/pwg/advanced-scheduling.xml:
10252         * docs/pwg/intro-basics.xml:
10253         * docs/pwg/other-manager.xml:
10254         * docs/pwg/other-nton.xml:
10255         * docs/pwg/other-ntoone.xml:
10256         * docs/pwg/other-oneton.xml:
10257         * docs/pwg/pwg.xml:
10258           All sort of documentation... Forgot what. Point is that I want this
10259           in before I leave. The 'other-*' will be the last section and will
10260           explain issues specific to these type of elements.
10261
10262 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10263
10264         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10265         (gst_filesrc_get_read):
10266           set all the values on buffers that we can
10267
10268 2004-02-02  David Schleef  <ds@schleef.org>
10269
10270         Change usage of isblah() to g_ascii_isblah() to be more locale
10271         independent.  (#133076)
10272         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10273         * gst/gstutils.c:
10274         * gst/parse/parse.l:
10275
10276 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10277
10278         reviewed by: David Schleef  <ds@schleef.org>
10279
10280         Fix memory leaks:
10281         * gst/gstcaps.c: (gst_caps_to_string):
10282         * gst/registries/gstxmlregistry.c:
10283         (gst_xml_registry_add_path_list_func),
10284         (gst_xml_registry_parse_padtemplate):
10285
10286 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10287
10288         * gst/gstelement.c: (gst_element_default_error):
10289           suffix error messages with period
10290
10291 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10292
10293         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10294         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10295         * gst/gsterror.c: (gst_error_get_message):
10296           Suffix with dots
10297         * po/fr.po:
10298         * po/nl.po:
10299           Update translation files
10300
10301 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10302
10303         * gst/autoplug/gstspideridentity.c:
10304         (gst_spider_identity_sink_loop_type_finding):
10305         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10306         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10307         (gst_filesink_close_file), (gst_filesink_handle_event),
10308         (gst_filesink_chain):
10309         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10310         (gst_filesrc_get_read), (gst_filesrc_open_file):
10311         * gst/elements/gstidentity.c: (gst_identity_chain):
10312         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10313         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10314         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10315         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10316         * gst/gsterror.c: (_gst_core_errors_init),
10317         (_gst_library_errors_init), (_gst_resource_errors_init),
10318         (_gst_stream_errors_init), (gst_error_get_message):
10319         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10320         (gst_pad_recover_caps_error), (gst_pad_pull):
10321         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10322         * gst/schedulers/gstbasicscheduler.c:
10323         (gst_basic_scheduler_chainhandler_proxy),
10324         (gst_basic_scheduler_gethandler_proxy),
10325         (gst_basic_scheduler_cothreaded_chain):
10326           Suffix error messages with period.
10327           Use (NULL) instead of NULL
10328
10329 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10330
10331         * docs/gst/tmpl/gstelement.sgml:
10332         * docs/gst/tmpl/gstxml.sgml:
10333         * gst/gstelement.c: (gst_element_error_full):
10334           add element path to error
10335
10336 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10337
10338         * docs/random/mimetypes:
10339           update raw int/float info
10340         * gst/gsttag.c: (_gst_tag_initialize):
10341         * gst/gsttag.h:
10342           add GST_TAG_ENCODER
10343
10344 2004-01-30  David Schleef  <ds@schleef.org>
10345
10346         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10347           missing (#132991)
10348
10349 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10350
10351         reviewed by Benjamin Otte 
10352           parts of the patch submitted in bug #113913
10353
10354         * configure.ac:
10355           use AC_C_INLINE. Use = instead of == with test
10356         * examples/plugins/example.c:
10357         * gst/autoplug/gstspideridentity.c:
10358         * gst/elements/gstfdsrc.c:
10359         * gst/elements/gstfilesrc.c:
10360         * gst/elements/gstidentity.c:
10361         * gst/elements/gstmultidisksrc.c:
10362         * gst/elements/gststatistics.c:
10363         * gst/gstelement.c:
10364         * gst/gstobject.c:
10365         * gst/gstpad.c:
10366         * gst/gstpipeline.c:
10367         * gst/gstthread.c:
10368           don't end enums with a comma
10369         * gst/gstindex.c: (gst_index_compare_func):
10370           do explicit casting to gint
10371         * gst/gsttrace.c: (gst_trace_text_flush):
10372           #define strsize as a macro
10373
10374 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10375
10376         * docs/README:
10377         * docs/gst/gstreamer-docs.sgml:
10378         * docs/gst/gstreamer-sections.txt:
10379         * docs/gst/tmpl/gstelement.sgml:
10380         * docs/gst/tmpl/gsterror.sgml:
10381         * docs/gst/tmpl/gstinterface.sgml:
10382         * docs/gst/tmpl/gstreamer-unused.sgml:
10383         * docs/gst/tmpl/gststructure.sgml:
10384         * docs/gst/tmpl/gsttag.sgml:
10385         * docs/gst/tmpl/gsttaginterface.sgml:
10386         * docs/gst/tmpl/gstvalue.sgml:
10387         make sure all API ends up in the built docs
10388         * gst/gstinterface.c:
10389         * gst/gststructure.c: (gst_structure_id_set_value),
10390         (gst_structure_set_value), (gst_structure_id_get_value):
10391         * gst/gststructure.h:
10392         * gst/gstvalue.h:
10393         sync .h with .c declarations
10394
10395 2004-01-30  Julien Moutte  <julien@moutte.net>
10396
10397         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10398         Ronald will fix riffread.
10399
10400 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10401
10402         * docs/pwg/advanced-interfaces.xml:
10403           Added tuner interface docs.
10404
10405 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10406
10407         * docs/random/mimetypes:
10408           correct Theora information
10409         * gst/gstelement.h:
10410           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10411
10412 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10413
10414         * gst/gstelement.c: (gst_element_error_full):
10415         * gst/gstelement.h:
10416           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10417
10418 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10419
10420         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10421         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10422         again and even before DISCONT.
10423         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10424         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10425         bytestream so that it's not stopping to fill the bytestream if events
10426         different than EOS or DISCONT are received. Instead it process them so
10427         that they go downstream.
10428
10429 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10430
10431         * docs/gst/tmpl/gstelement.sgml:
10432         * docs/gst/tmpl/gstreamer-unused.sgml:
10433         * docs/gst/tmpl/gstxml.sgml:
10434         * gst/autoplug/gstspideridentity.c:
10435         (gst_spider_identity_sink_loop_type_finding):
10436         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10437         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10438         (gst_filesink_close_file), (gst_filesink_handle_event),
10439         (gst_filesink_chain):
10440         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10441         (gst_filesrc_get_read), (gst_filesrc_open_file):
10442         * gst/elements/gstidentity.c: (gst_identity_chain):
10443         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10444         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10445         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10446         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10447         * gst/gstelement.h:
10448         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10449         (gst_pad_recover_caps_error), (gst_pad_pull):
10450         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10451         * gst/schedulers/gstbasicscheduler.c:
10452         (gst_basic_scheduler_chainhandler_proxy),
10453         (gst_basic_scheduler_gethandler_proxy),
10454         (gst_basic_scheduler_cothreaded_chain):
10455           gst_element_error -> GST_ELEMENT_ERROR
10456
10457 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10458
10459         * docs/Makefile.am:
10460         * docs/gst/tmpl/gstelement.sgml:
10461         * docs/gst/tmpl/gstxml.sgml:
10462         * docs/manuals.mak:
10463         * docs/pwg/advanced-request.xml:
10464         * docs/pwg/advanced-scheduling.xml:
10465         * docs/pwg/advanced-tagging.xml:
10466           fix non-validating docbook using CDATA
10467           make sure make check-local gets run first to check if it validates
10468
10469 2004-01-29  Julien MOUTTE <julien@moutte.net>
10470
10471         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10472         handling (up and downstream).
10473         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10474         my_filter thing.
10475
10476 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10477
10478         * docs/pwg/advanced-tagging.xml:
10479           Add docs about tag writing.
10480
10481 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10482
10483         * docs/pwg/advanced-tagging.xml:
10484           Add a part about tag reading and application signalling... Tag
10485           writing still needs to be documented.
10486         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10487           We can set file locations in READY, too.
10488
10489 2004-01-29  Julien MOUTTE <julien@moutte.net>
10490
10491         * docs/random/ds/element-checklist: Adding some notes about src
10492         events.
10493
10494 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10495
10496         * docs/random/mimetypes:
10497           Update docs to point to correct elements for various mimetypes, and
10498           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10499           <stephane.loeuillet@tiscali.fr>.
10500
10501 2004-01-28  David Schleef  <ds@schleef.org>
10502
10503         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10504
10505 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10506
10507         * docs/random/mimetypes:
10508           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10509           undefined"
10510         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10511           make it only work in NULL.
10512         * gst/gstcaps.c:
10513           don't posion NULL caps
10514         * gst/gstelement.c: (gst_element_set_time):
10515           add debugging statement
10516         * gst/gstelement.c: (gst_element_emit_found_tag),
10517         (gst_element_found_tag_func), (gst_element_found_tags):
10518         * gst/gstelement.h:
10519           These functions take const taglists
10520         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10521           fix memleak
10522         * gst/gstpad.c: (gst_pad_event_default):
10523           make more effort on handling discont and clocks, g_warn if everything
10524           fails
10525         * gst/gststructure.c: (gst_structure_remove_fields),
10526         (gst_structure_remove_fields_valist):
10527         * gst/gststructure.h:
10528           add gst_structure_remove_fields(_valist)
10529         * gst/gsttag.c:
10530           fix doc glitch
10531
10532 2004-01-28  David Schleef  <ds@schleef.org>
10533
10534         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10535         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10536         Fix memory leakage of gst_caps_to_string().
10537
10538         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10539         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10540         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10541         (gst_spider_identity_sink_loop_type_finding):
10542         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10543         (find_suggest):
10544         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10545         (gst_pad_set_explicit_caps):
10546         * gst/parse/grammar.y:
10547
10548 2004-01-28  David Schleef  <ds@schleef.org>
10549
10550         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10551         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10552         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10553         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10554         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10555         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10556         (gst_debug_log_default), (_gst_info_printf_extension),
10557         (_gst_info_printf_extension_arginfo):  Add printf extension.
10558         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10559         * gst/gststructure.c: (gst_structure_to_string),
10560         (_gst_structure_parse_value): Use gst_value_deserialize() and
10561         remove old code.
10562         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10563         (gst_value_deserialize_boolean), (gst_strtoi),
10564         (gst_value_deserialize_int), (gst_value_deserialize_double),
10565         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10566         a bunch of deserialize functions and gst_value_deserialize.
10567         * gst/gstvalue.h: er, _de_serialize, not unserialize
10568         * testsuite/caps/string-conversions.c: (main): We don't currently
10569         handle (float) in caps, so convert these to (double).
10570         * testsuite/debug/Makefile.am: Add new test for the printf extension
10571         * testsuite/debug/printf_extension.c: (main): same
10572
10573 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10574
10575         * docs/random/company/time:
10576           Add some docs about clocking and time
10577
10578 2004-01-28  Julien MOUTTE <julien@moutte.net>
10579
10580         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10581
10582 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10583
10584         * docs/pwg/advanced-clock.xml:
10585         * docs/pwg/advanced-dparams.xml:
10586         * docs/pwg/advanced-events.xml:
10587         * docs/pwg/advanced-interfaces.xml:
10588         * docs/pwg/advanced-midi.xml:
10589         * docs/pwg/advanced-request.xml:
10590         * docs/pwg/advanced-scheduling.xml:
10591         * docs/pwg/advanced-tagging.xml:
10592         * docs/pwg/advanced-types.xml:
10593         * docs/pwg/appendix-checklist.xml:
10594         * docs/pwg/building-boiler.xml:
10595         * docs/pwg/building-chainfn.xml:
10596         * docs/pwg/building-filterfactory.xml:
10597         * docs/pwg/building-pads.xml:
10598         * docs/pwg/building-props.xml:
10599         * docs/pwg/building-signals.xml:
10600         * docs/pwg/building-state.xml:
10601         * docs/pwg/building-testapp.xml:
10602         * docs/pwg/intro-basics.xml:
10603         * docs/pwg/intro-preface.xml:
10604         * docs/pwg/other-autoplugger.xml:
10605         * docs/pwg/other-sink.xml:
10606         * docs/pwg/other-source.xml:
10607         * docs/pwg/titlepage.xml:
10608           fix up id's
10609
10610 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10611
10612         * docs/95NonPath:
10613         * docs/HACKING:
10614         * docs/README:
10615         * docs/building-the-docs-on-debian:
10616           collect relevant bits of doc info
10617
10618 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10619
10620         * docs/pwg/advanced_tagging.xml:
10621           Half-assed commit so Thomas can re-arrange document IDs here to be
10622           consistent, too.
10623
10624 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10625
10626         * docs/manual/autoplugging.xml:
10627         * docs/manual/bins-api.xml:
10628         * docs/manual/bins.xml:
10629         * docs/manual/buffers-api.xml:
10630         * docs/manual/buffers.xml:
10631         * docs/manual/clocks.xml:
10632         * docs/manual/components.xml:
10633         * docs/manual/cothreads.xml:
10634         * docs/manual/debugging.xml:
10635         * docs/manual/dparams-app.xml:
10636         * docs/manual/dynamic.xml:
10637         * docs/manual/elements-api.xml:
10638         * docs/manual/elements.xml:
10639         * docs/manual/factories.xml:
10640         * docs/manual/gnome.xml:
10641         * docs/manual/goals.xml:
10642         * docs/manual/helloworld.xml:
10643         * docs/manual/helloworld2.xml:
10644         * docs/manual/init-api.xml:
10645         * docs/manual/intro.xml:
10646         * docs/manual/links-api.xml:
10647         * docs/manual/links.xml:
10648         * docs/manual/manual.xml:
10649         * docs/manual/motivation.xml:
10650         * docs/manual/pads-api.xml:
10651         * docs/manual/pads.xml:
10652         * docs/manual/plugins-api.xml:
10653         * docs/manual/plugins.xml:
10654         * docs/manual/programs.xml:
10655         * docs/manual/queues.xml:
10656         * docs/manual/quotes.xml:
10657         * docs/manual/schedulers.xml:
10658         * docs/manual/states-api.xml:
10659         * docs/manual/states.xml:
10660         * docs/manual/threads.xml:
10661         * docs/manual/typedetection.xml:
10662         * docs/manual/xml.xml:
10663           use chapter, part, section or misc as id starts for all bits
10664
10665 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10666
10667         * docs/gst/gstreamer-sections.txt:
10668           Fix up TITLE of the sections
10669
10670 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10671
10672         * docs/pwg/advanced_interfaces.xml:
10673           Add documentation on propertyprobing.
10674         * docs/pwg/advanced_events.xml:
10675         * docs/pwg/advanced_tagging.xml:
10676         * docs/pwg/building_boiler.xml:
10677         * docs/pwg/building_filterfactory.xml:
10678         * docs/pwg/pwg.xml:
10679           Move filterfactory and tagging into their own chapter, add a chapter
10680           on events. all these are empty placeholders that will be filled in
10681           some day.
10682
10683 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10684
10685         * docs/pwg/advanced_interfaces.xml:
10686           Docs for mixer interface. Also a check for website uploading.
10687
10688 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10689
10690         * docs/HACKING:
10691         * docs/Makefile.am:
10692         * docs/faq/Makefile.am:
10693         * docs/gst/Makefile.am:
10694         * docs/gst/tmpl/gstelement.sgml:
10695         * docs/gst/tmpl/gstplugin.sgml:
10696         * docs/gst/tmpl/gstreamer-unused.sgml:
10697         * docs/libs/Makefile.am:
10698         * docs/manual/Makefile.am:
10699         * docs/manuals.mak:
10700         * docs/pwg/Makefile.am:
10701         * docs/upload.mak:
10702           Separate out upload target and make it similar for
10703           both docbook and gtk-doc docs
10704
10705 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10706
10707         * docs/manuals.mak:
10708           Fix upload target to work with freedesktop
10709
10710 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10711
10712         * docs/pwg/advanced_types.xml:
10713           Add notes on creating your own types.
10714         * docs/pwg/building_boiler.xml:
10715         * docs/pwg/building_pads.xml:
10716         * docs/pwg/building_state.xml:
10717           Add some stuff about how to retrieve values from structures, how
10718           that relates to types and change layout slightly again to be almost
10719           perfect.
10720
10721 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10722
10723         * docs/pwg/advanced_dparams.xml:
10724         * docs/pwg/advanced_scheduling.xml:
10725           Change index layout slightly.
10726
10727 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10728
10729         * docs/pwg/advanced_clock.xml:
10730         * docs/pwg/advanced_interfaces.xml:
10731         * docs/pwg/advanced_midi.xml:
10732           General placeholders for now.
10733         * docs/pwg/advanced_request.xml:
10734           Explanation about sometimes and request pads.
10735         * docs/pwg/advanced_scheduling.xml:
10736           Concept of bytestream, loopfunctions and schedulers.
10737         * docs/pwg/building_boiler.xml:
10738           Add something about plugin-init.
10739
10740 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10741
10742         * docs/pwg/building_pads.xml:
10743           Fix broken docbook
10744
10745 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10746
10747         * docs/pwg/advanced_interfaces.xml:
10748         * docs/pwg/pwg.xml:
10749           Add as a placeholder for future filling-in.
10750         * docs/pwg/basics_autoplugging.xml:
10751         * docs/pwg/basics_buffers.xml:
10752         * docs/pwg/basics_elements.xml:
10753         * docs/pwg/basics_events.xml:
10754         * docs/pwg/basics_plugins.xml:
10755         * docs/pwg/basics_types.xml:
10756           Remove, because unused (this is all in intro_basics.xml).
10757         * docs/pwg/building_signals.xml:
10758           Short intro to signals + reference to GObject docs - we really
10759           shouldn't go into these sort of things to deply because we don't
10760           use them that extensively anyway.
10761         * docs/pwg/building_state.xml:
10762           Explanation of states. Benjamin, please check.
10763         * docs/pwg/building_testapp.xml:
10764           Put everything in one page - putting only a few lines of content
10765           per page doesn't really make sense.
10766
10767           Time to get into the advanced topics. ;).
10768
10769 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10770
10771         * docs/pwg/advanced_types.xml:
10772           Finish documenting the current state of mimetypes.
10773         * docs/pwg/building_boiler.xml:
10774         * docs/pwg/building_chainfn.xml:
10775         * docs/pwg/building_pads.xml:
10776         * docs/pwg/building_props.xml:
10777         * docs/pwg/building_testapp.xml:
10778           Start documenting the "how to build a simple audio filter" part
10779           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10780           states and (maybe?) a short introduction to capsnego in the chapter
10781           on pads (building_pads.xml). Capsnego should probably be explained
10782           fully in advanced_capsnego.xml or so.
10783
10784 2004-01-26  David Schleef  <ds@schleef.org>
10785
10786         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10787         * gst/gstpad.h: Add new function to allow element to (somewhat)
10788         specify non-fixed caps on a pad.
10789         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10790         that I added a few weeks ago.
10791
10792 2004-01-26  David Schleef  <ds@schleef.org>
10793
10794         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10795           making try_set_caps() work with non-fixed caps.
10796
10797 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10798
10799         * docs/pwg/advanced_types.xml:
10800         * docs/pwg/intro_basics.xml:
10801         * docs/pwg/intro_preface.xml:
10802         * docs/pwg/pwg.xml:
10803         * docs/pwg/titlepage.xml:
10804           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10805           in here (docs/random/mimetypes), and will from there on work on both
10806           updating outdated parts and adding missing parts.
10807           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10808
10809 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10810
10811         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10812           policy is set
10813
10814 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10815
10816         * gst/gstelement.h:
10817           remove gst_element_factory_get_version. It doesn't exist anymore.
10818         * gst/gstplugin.c:
10819         * gst/gstplugin.h:
10820           remove gst_plugin_set_name and change gst_plugin_get_longname to
10821           gst_plugin_get_description to match code.
10822         * gst/gsterror.h:
10823           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10824         * gst/gstpad.c: (gst_pad_try_set_caps):
10825           make it work with nonfixed caps.
10826           Note that even in the nonfixed case the link function of the pad
10827           that tries to set caps isn't called.
10828
10829 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10830
10831         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10832           fix bug where buffer was not assembled correctly
10833         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10834           silence by default
10835         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10836           only seek if there's no more buffers that could work without seeking
10837
10838 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10839
10840         * gst/gsttag.c: (_gst_tag_initialize):
10841         * gst/gsttag.h:
10842           Add application tag (for encoding/muxing app).
10843
10844 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10845
10846         * autogen.sh:
10847           make autopoint force, and libtoolize not copy
10848         * common/m4/as-docbook.m4:
10849           added docbook xml catalog setup check
10850         * common/m4/gst-doc.m4:
10851           use docbook check
10852
10853 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10854
10855         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10856         * gst/gsttag.h:
10857           add GstTagFlag
10858
10859 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10860
10861         * docs/gst/gstreamer-sections.txt:
10862         * docs/gst/tmpl/gst.sgml:
10863         * docs/gst/tmpl/gstbuffer.sgml:
10864         * docs/gst/tmpl/gstclock.sgml:
10865         * docs/gst/tmpl/gstelement.sgml:
10866         * docs/gst/tmpl/gstreamer-unused.sgml:
10867         * docs/gst/tmpl/gstxml.sgml:
10868           sync latest API changes to docs
10869
10870 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10871
10872         * gst/gstpluginfeature.c:
10873           fix doc snippet
10874         * tools/gst-inspect.c: (print_element_list):
10875           fix output of typefind
10876           add GPL header
10877         * tools/gst-launch.c:
10878           add GPL header
10879
10880 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10881
10882         * gst/elements/Makefile.am:
10883         * gst/elements/gstelements.c:
10884         * gst/elements/gsttypefindelement.c:
10885         * gst/elements/gsttypefindelement.h:
10886         * po/POTFILES.in:
10887         * po/fr.po:
10888         * po/nl.po:
10889           renamed gsttypefindelement to gsttypefind, conserving CVS history
10890
10891 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10892
10893         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
10894         * gst/gsttag.h:
10895           add some tags used in ogg as well
10896           fix _ in replaygain tags
10897
10898 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10899
10900         * gst/gsterror.h:
10901           fix wrong GST_LIBRARY_ERROR_ENCODE addition
10902
10903 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10904
10905         * gst/gstelement.c: (gst_element_error_full):
10906         * gst/gstelement.h:
10907           change _extended to _full
10908
10909 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10910
10911         reviewed by: <delete if not using a buddy>
10912
10913         * docs/gst/tmpl/gst.sgml:
10914         * docs/gst/tmpl/gstbuffer.sgml:
10915         * docs/gst/tmpl/gstclock.sgml:
10916         * docs/gst/tmpl/gstelement.sgml:
10917         * docs/gst/tmpl/gstreamer-unused.sgml:
10918         * docs/gst/tmpl/gstxml.sgml:
10919         * gst/gstelement.c: (gst_element_error_full):
10920         * gst/gstelement.h:
10921
10922 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10923
10924         * gst/gstelement.h: fix _gst_element_error_printf prototype
10925
10926 2004-01-20  David Schleef  <ds@schleef.org>
10927
10928         * gst/gststructure.c: (gst_structure_to_string):
10929         Convert function to use gst_value_serialize().
10930         * gst/gstvalue.c: (gst_value_serialize_list),
10931         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
10932         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
10933         (gst_value_serialize_int), (gst_value_serialize_double),
10934         (gst_string_wrap), (gst_value_serialize_string),
10935         (gst_value_serialize), (gst_value_deserialize):
10936         * gst/gstvalue.h:
10937         Add implementations for serialize.
10938
10939 2004-01-20  Julien MOUTTE  <julien@moutte.net>
10940
10941         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
10942         we want to keep that one in the future or change xvidenc.c to use 
10943         another error.
10944
10945 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10946
10947         * gst/gstelement.c: (_gst_element_error_printf):
10948         * gst/gstelement.h:
10949           privatise function
10950
10951 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10952
10953         * docs/random/error:
10954           doc explaining error system
10955         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10956           cleanup
10957
10958 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10959
10960         * gst/gst-i18n-app.h:
10961         * gst/gst-i18n-lib.h:
10962           remove inclusion of config.h
10963         * po/POTFILES.in:
10964         * po/nl.po:
10965           add gst/gstelement.c
10966
10967 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10968
10969         * po/nl.po: updated Dutch translation
10970
10971 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10972
10973         * gst/gsterror.c: (_gst_core_errors_init),
10974         (_gst_library_errors_init), (_gst_resource_errors_init),
10975         (_gst_stream_errors_init):
10976         remove ending punctuation dots
10977
10978 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10979
10980         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
10981         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
10982         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10983         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10984         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10985         use GST_ERROR_SYSTEM
10986
10987 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10988
10989         * gst/gstelement.c: (gst_element_error_printf),
10990         (gst_element_error_extended):
10991         * gst/gstelement.h:
10992           add a helper printf function so we can have NULL values passed.
10993
10994 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
10995
10996         * gst/gstelement.h:
10997           add G_STMT macros to gst_element_error, which isn't strictly
10998           necessary but people tell me to anyway.
10999
11000 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11001
11002         * gst/Makefile.am:
11003         * gst/autoplug/gstspideridentity.c:
11004         (gst_spider_identity_sink_loop_type_finding):
11005         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11006         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11007         (gst_filesink_close_file), (gst_filesink_handle_event),
11008         (gst_filesink_chain):
11009         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11010         (gst_filesrc_map_region), (gst_filesrc_get_read),
11011         (gst_filesrc_open_file):
11012         * gst/elements/gstidentity.c: (gst_identity_chain):
11013         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11014         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11015         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11016         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11017         * gst/gst.h:
11018         * gst/gst_private.h:
11019         * gst/gstelement.c: (gst_element_class_init),
11020         (gst_element_default_error), (gst_element_error_func),
11021         (gst_element_error_extended):
11022         * gst/gstelement.h:
11023         * gst/gsterror.c: (_gst_core_errors_init),
11024         (_gst_library_errors_init), (_gst_resource_errors_init),
11025         (_gst_stream_errors_init), (gst_error_get_message):
11026         * gst/gsterror.h:
11027         * gst/gstinfo.c: (_gst_debug_init):
11028         * gst/gstmarshal.list:
11029         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11030         (gst_pad_recover_caps_error), (gst_pad_pull):
11031         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11032         * gst/schedulers/gstbasicscheduler.c:
11033         (gst_basic_scheduler_chainhandler_proxy),
11034         (gst_basic_scheduler_gethandler_proxy),
11035         (gst_basic_scheduler_cothreaded_chain):
11036         * po/POTFILES.in:
11037         * po/fr.po:
11038         * po/nl.po:
11039           change error signal
11040           add error categories
11041
11042 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11043
11044         * gst/gsttag.c: (_gst_tag_initialize):
11045         * gst/gsttag.h:
11046         Add replaygain tag
11047
11048 2004-01-18  Colin Walters  <walters@verbum.org>
11049
11050         * examples/retag/retag.c: Call gst_init before processing
11051         program args.  Add g_assert to _link_many call.
11052
11053 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11054
11055         * gst/gstpad.c: (gst_pad_alloc_buffer):
11056           Return a newly allocated buffer when the pad has no peer.
11057
11058 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11059
11060         * gst/gstclock.c: (gst_clock_get_time):
11061           make it compile with gcc 2.95 again.
11062           Patch by Scott Wheeler
11063
11064 2004-01-15  David Schleef  <ds@schleef.org>
11065
11066         * gst/gstcaps.h:
11067         Added gst_caps_is_simple() macro.
11068         * testsuite/caps/caps.c: (test1):
11069         * testsuite/caps/intersect2.c: (main):
11070         * testsuite/caps/intersection.c: (main):
11071         Fixes to make 'make check' work again after removing
11072         gst_caps_is_chained().
11073
11074 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11075
11076         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11077         and additions to the MIDI document.
11078
11079 2004-01-15  David Schleef  <ds@schleef.org>
11080
11081         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11082         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11083         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11084
11085 2004-01-15  David Schleef  <ds@schleef.org>
11086
11087         * gst/gstqueue.c:
11088         * gst/gstqueue.h:
11089         Fix the spelling of "treshold" and make min_threshold actually
11090         affect the queue.
11091
11092 2004-01-15  David Schleef  <ds@schleef.org>
11093
11094         * gst/gstcaps.c:
11095         Add lots of documentation.
11096         * gst/gstcaps.h:
11097         Deprecate a few functions.
11098         * gst/gstpad.c:
11099         Removed use of deprecated functions.
11100
11101 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11102
11103         * gst/gstpad.c: (gst_pad_is_linked):
11104         * gst/gstpad.h:
11105           implement gst_pad_is_linked
11106         * gst/gstelement.h:
11107           reserve space for initiate_state_change
11108
11109 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11110
11111         * gst/autoplug/gstspideridentity.c:
11112         (gst_spider_identity_sink_loop_type_finding):
11113           break infinite loop by just returning instead of looping
11114         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11115           set event time difference correctly. Set it to 1 second instead
11116           of 100ms to be more tolerant
11117         * gst/gstelement.c: (gst_element_set_time):
11118           add debugging output
11119
11120 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11121
11122         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11123           query if buffers are inside the pool, ignore events
11124
11125 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11126
11127         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11128         (gst_clock_set_speed), (gst_clock_set_active),
11129         (gst_clock_is_active), (gst_clock_reset),
11130         (gst_clock_handle_discont):
11131         * gst/gstclock.h:
11132           deprecate old interface and disable functions that aren't in use
11133           anymore.
11134         * gst/gstelement.h:
11135         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11136         (gst_element_set_time), (gst_element_adjust_time):
11137           add concept of "element time" and functions to get/set this time.
11138         * gst/gstelement.c: (gst_element_change_state):
11139           update element time correctly.
11140         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11141           This is a debug message, not a g_critical.
11142         * gst/gstpad.c: (gst_pad_event_default):
11143           handle discontinuous events right with element time.
11144         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11145           update to clocking fixes.
11146           set clocks on elements in READY=>PAUSED. The old behaviour caused
11147           a wrong element time on the first element that started playing.
11148         * gst/schedulers/gstbasicscheduler.c:
11149         (gst_basic_scheduler_class_init):
11150         * gst/schedulers/gstoptimalscheduler.c:
11151         (gst_opt_scheduler_class_init):
11152           remove code that just implements the default behaviour.
11153         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11154           update to use new clocking functions
11155         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11156         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11157           update to test new element time.
11158         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11159           use _get_allowed_caps instead of _get_caps. This catches filtered
11160           caps correctly.
11161         * testsuite/debug/commandline.c:
11162           update for new GST_DEBUG syntax.
11163         * testsuite/threads/Makefile.am:
11164           disable a test that only works sometimes.
11165
11166 2004-01-13  Julien MOUTTE <julien@moutte.net>
11167
11168         * po/LINGUAS: Adding fr.
11169         * po/fr.po: Adding french translation.
11170
11171 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11172
11173         * gst/parse/grammar.y:
11174         * po/POTFILES.in:
11175         * po/nl.po:
11176         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11177           translate parsing error messages
11178
11179 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11180
11181         * po/POTFILES.in: adding gst-launch
11182         * po/nl.po: updated translation, all 99 strings translated
11183         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11184         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11185           fix strings for translation
11186
11187 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11188
11189         * gst/gst.c:
11190           - capitalize beginnings of popt options
11191           - fix strings for translation
11192           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11193
11194 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11195
11196         * po/README: add some notes on how to update translations
11197
11198 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11199
11200         * ABOUT-NLS: removed, is autogenerated from autopoint
11201         * autogen.sh: add autopoint stuff
11202         * configure.ac: fix up gettext stuff
11203         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11204         * gst/elements/gsttypefindelement.c: add header include
11205         * gst/gettext.h: add header, copy from system-installed header
11206         * gst/gst-i18n-app.h: to be included by each app having translations
11207         * gst/gst-i18n-lib.h: to be included by each lib having translations
11208         * gst/gst.c: (init_pre): fix up gettext calls
11209         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11210         * po/LINGUAS: the new way to specify translations present
11211         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11212         * po/Makevars: the variables filled in for GStreamer
11213         * po/POTFILES.in: added new files with translations
11214         * po/de.po: has new strings
11215         * po/nl.po: readded, has new strings
11216
11217 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11218
11219         * gst/gsttag.c: fix some strings marked for translation
11220
11221 2004-01-13  Iain <iain@prettypeople.org>
11222
11223         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11224         group when we add an element to it, cos we unref it when we remove one
11225
11226 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11227
11228         * testsuite/debug/commandline.c: (debug_not_reached):
11229         * testsuite/debug/output.c: (check_message):
11230           fix testsuite
11231
11232 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11233
11234         * examples/cutter/.cvsignore:
11235         * examples/helloworld/.cvsignore:
11236         * examples/launch/.cvsignore:
11237         * examples/manual/.cvsignore:
11238         * examples/mixer/.cvsignore:
11239         * examples/pingpong/.cvsignore:
11240         * examples/plugins/.cvsignore:
11241         * examples/queue/.cvsignore:
11242         * examples/queue2/.cvsignore:
11243         * examples/queue3/.cvsignore:
11244         * examples/queue4/.cvsignore:
11245         * examples/retag/.cvsignore:
11246         * examples/thread/.cvsignore:
11247         * examples/typefind/.cvsignore:
11248         * examples/xml/.cvsignore:
11249         * gst/.cvsignore:
11250         * gst/autoplug/.cvsignore:
11251         * gst/elements/.cvsignore:
11252         * gst/indexers/.cvsignore:
11253         * gst/parse/.cvsignore:
11254         * gst/registries/.cvsignore:
11255         * gst/schedulers/.cvsignore:
11256         * libs/gst/bytestream/.cvsignore:
11257         * libs/gst/control/.cvsignore:
11258         * libs/gst/getbits/.cvsignore:
11259         * tests/.cvsignore:
11260         * tests/bufspeed/.cvsignore:
11261         * tests/instantiate/.cvsignore:
11262         * tests/memchunk/.cvsignore:
11263         * tests/muxing/.cvsignore:
11264         * tests/sched/.cvsignore:
11265         * tests/seeking/.cvsignore:
11266         * tests/threadstate/.cvsignore:
11267         * testsuite/.cvsignore:
11268         * testsuite/caps/.cvsignore:
11269         * testsuite/cleanup/.cvsignore:
11270         * testsuite/dynparams/.cvsignore:
11271         * testsuite/plugin/.cvsignore:
11272         * tools/.cvsignore:
11273           update - this is huge, because it includes *.bb, *.bbg and *.da files
11274           which are generated for gcov.
11275
11276 2004-01-11  David Schleef  <ds@schleef.org>
11277
11278         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11279         a function to parse integers in ways that strto[u]l() does not.
11280
11281 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11282
11283         * tools/gst-inspect.c: (print_caps):
11284           improve output of caps a bit
11285
11286 2004-01-11  David Schleef  <ds@schleef.org>
11287
11288         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11289         inherit correct flags (READONLY and DONTKEEP).
11290
11291 2004-01-11  David Schleef  <ds@schleef.org>
11292
11293         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11294         (gst_filesrc_map_region):
11295         * gst/gstbuffer.c: (_gst_buffer_initialize),
11296         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11297         (gst_buffer_new), (gst_buffer_create_sub),
11298         (gst_buffer_is_span_fast), (gst_buffer_span):
11299         * gst/gstbuffer.h:
11300         Change GstBuffer private structure element names. (all files)
11301         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11302         (gst_queue_link):
11303         * gst/gstqueue.h:
11304         Implement getcaps/pad_link functions that handle the case where
11305         there are data in the queue.
11306
11307 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11308
11309         * gst/elements/gstbufferstore.c:
11310           initialize debugging structure correctly
11311         * gst/elements/gsttee.c: (gst_tee_set_property):
11312           g_object_notify when property was changed
11313         * gst/elements/gsttypefindelement.c:
11314         (gst_type_find_element_change_state):
11315           clear caps correctly
11316
11317 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11318
11319         * gst/gstqueue.c: (gst_queue_init):
11320           Use better defaults for when a queue should block. This
11321           gets rid of jerky playback for quite a few files.
11322           It takes more memory.
11323
11324 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11325
11326         (gst_xml_registry_parse_padtemplate):
11327           make critical message slightly more useful
11328
11329 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11330
11331         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11332         (gst_debug_message_get), (gst_debug_log_default):
11333         * gst/gstinfo.h:
11334           Change gst_debug_log(_valist) to take a const format string.
11335           Change prototype of log function and functions using those to 
11336           take a GstDebugMessage instead of a string that requires using
11337           gst_debug_message_get.
11338
11339 2004-01-08  David Schleef  <ds@schleef.org>
11340
11341         * Makefile.am:
11342         * configure.ac:
11343         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11344         and -ftest-coverage, which allows gcov to show information about
11345         testsuite coverage.
11346
11347 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11348
11349         * gst/gstutils.h:
11350           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11351           GST_PARENT_CALL_WITH_DEFAULT
11352         * gst/elements/gstaggregator.c: 
11353         * gst/elements/gstbufferstore.c: 
11354         * gst/elements/gstfakesink.c: 
11355         * gst/elements/gstfakesrc.c: 
11356         * gst/elements/gstfdsink.c: 
11357         * gst/elements/gstfdsrc.c: 
11358         * gst/elements/gstfilesink.c: 
11359         * gst/elements/gstfilesrc.c: 
11360         * gst/elements/gstidentity.c: 
11361         * gst/elements/gstmd5sink.c: 
11362         * gst/elements/gstmultidisksrc.c:
11363         * gst/elements/gstpipefilter.c: 
11364         * gst/elements/gstshaper.c:
11365         * gst/elements/gststatistics.c:
11366         * gst/elements/gsttee.c:
11367         * gst/elements/gsttypefindelement.c:
11368           use them.
11369
11370 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11371
11372         * docs/gst/gstreamer-docs.sgml: remove props
11373         * docs/gst/gstreamer-sections.txt: remove props
11374         * docs/gst/tmpl/gst.sgml:
11375         * docs/gst/tmpl/gstbin.sgml:
11376         * docs/gst/tmpl/gstbuffer.sgml:
11377         * docs/gst/tmpl/gstcaps.sgml:
11378         * docs/gst/tmpl/gstclock.sgml:
11379         * docs/gst/tmpl/gstelement.sgml:
11380         * docs/gst/tmpl/gstindex.sgml:
11381         * docs/gst/tmpl/gstobject.sgml:
11382         * docs/gst/tmpl/gstpad.sgml:
11383         * docs/gst/tmpl/gstpadtemplate.sgml:
11384         * docs/gst/tmpl/gstreamer-unused.sgml:
11385         * docs/gst/tmpl/gstthread.sgml:
11386         * docs/gst/tmpl/gstxml.sgml:
11387           sync with code reorganization
11388
11389 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11390
11391         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11392         Make the 'Could not find compatible pad' message more informative.
11393
11394 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11395                                                                                 
11396         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11397           Fix for if we pass NULL as property to location.
11398         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11399         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11400           Fix for instantiate-test (see below).
11401         * gst/gststructure.c: (_gst_structure_parse_value):
11402           Fix compile error on gcc-2.96.
11403         * configure.ac:
11404         * tests/Makefile.am:
11405         * tests/instantiate/Makefile.am:
11406         * tests/instantiate/create.c: (create_all_elements), (main):
11407           Add a test that instantiates all elements. This makes it easy to
11408           track dead code for old API/design (like setting event functions
11409           on sink pads and so on).
11410
11411 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11412
11413         * gst/gstcaps.c: (gst_caps_append_structure):
11414           Move the poisoning to allow a NULL structure
11415         * gst/gstevent.c: (_gst_event_free):
11416           When freeing a navigation event, free the structure
11417           also
11418
11419 2004-01-04  David Schleef  <ds@schleef.org>
11420
11421         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11422         Remove usage of gst_pad_proxy_fixate.
11423         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11424         (gst_caps_split_one), (gst_caps_replace):
11425         Add poisoning code.
11426         * gst/gstmarshal.list:
11427         Add pointer__pointer for fixate signal
11428         * gst/gstpad.c: (gst_real_pad_class_init),
11429         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11430         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11431         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11432         Add poisoning code. Add fixate signal on RealPad. Change
11433         set_explicit_caps() to take const GstCaps, like try_set_caps().
11434         * gst/gstpad.h:
11435         * testsuite/caps/Makefile.am:
11436         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11437
11438 2004-01-03  David Schleef  <ds@schleef.org>
11439
11440         * gst/elements/gsttypefindelement.c:
11441         (gst_type_find_element_have_type), (gst_type_find_element_init):
11442         Use gst_pad_use_explicit_caps for src pad.
11443         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11444         before using it.
11445
11446 2004-01-03  David Schleef  <ds@schleef.org>
11447
11448         * gst/gstelement.c: (gst_element_link_pads_filtered),
11449         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11450         that linking was successful.
11451         * gst/gstpad.c: (gst_pad_link_free),
11452         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11453         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11454         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11455         GstPadLinkReturn correctly between functions, and don't fail
11456         when DELAYED is used (DELAYED is very important).  Better
11457         cleanup on unlinking and unnegotiation.  Should fix some spider
11458         bugs.
11459
11460 2004-01-02  David Schleef  <ds@schleef.org>
11461
11462         * gst/gstelement.c: (gst_element_class_init),
11463         (gst_element_base_class_init): ->padtemplates should be cleared
11464         in base_init, since we need to have a fresh list for every
11465         class.  (Alternately, we chould copy the list and share the
11466         actual pad templates (not the list), but that would require
11467         changing every plugin to move pad template registration from
11468         base_init to class_init.)
11469
11470 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11471
11472         * gst/gstelement.c: (gst_element_class_add_pad_template):
11473           Refuse registering a pad template if another pad template
11474           with the same name already exists (#114715).
11475
11476 2004-01-02  David Schleef  <ds@schleef.org>
11477
11478         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11479         (gst_caps_is_equal_fixed): Add new function.
11480         * gst/gstcaps.h: ditto.
11481         * gst/gstpad.c: (gst_real_pad_class_init),
11482         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11483         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11484         check new caps against existing caps -- if they're the same, return
11485         OK without renegotiating.  caps-nego-failed signal fixed so that
11486         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11487         to save an extra caps copy.  Don't complete negotiation if a pad
11488         link function returns DELAYED.
11489
11490 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11491
11492         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11493           Fix wrong g_return_if_fail
11494
11495 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11496
11497         * gst/gstbin.c: (gst_bin_class_init):
11498         Change the marshalling of element_added/element_removed
11499         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11500         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11501
11502 2004-01-01  David Schleef  <ds@schleef.org>
11503
11504         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11505         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11506         (gst_pad_use_explicit_caps):
11507         * gst/gstpad.h:
11508         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11509         to use an internal getcaps and link fuction so that negotiation
11510         always results in the explicitly set caps.
11511         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11512         are particularly useful for decoders.
11513
11514 2003-12-31  David Schleef  <ds@schleef.org>
11515
11516         * gst/elements/gstidentity.c: (gst_identity_class_init),
11517         (gst_identity_init), (gst_identity_chain),
11518         (gst_identity_set_property), (gst_identity_get_property):
11519         * gst/elements/gstidentity.h:
11520         * gst/gstqueue.c: (gst_queue_init):
11521           Negotiation fixes.
11522
11523 2003-12-31  David Schleef  <ds@schleef.org>
11524
11525         * gst/gstcaps.c: (gst_caps_intersect),
11526         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11527           Implement gst_caps_normalize().
11528         * testsuite/caps/normalisation.c: (main):
11529           Add an additional test
11530
11531 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11532
11533         * gst/gstqueue.c: (gst_queue_init):
11534           use gst_pad_proxy_getcaps()
11535
11536 2003-12-31  David Schleef  <ds@schleef.org>
11537
11538         * gst/elements/gstshaper.c: (gst_shaper_link):
11539         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11540         * gst/gstqueue.c: (gst_queue_link):
11541           Negotiation fixes.
11542
11543 2003-12-31  David Schleef  <ds@schleef.org>
11544
11545         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11546         * gst/gstpad.h: Add functions that are useful as default pad
11547         link and fixate functions for elements.
11548
11549 2003-12-30  David Schleef  <ds@schleef.org>
11550
11551         * gst/gstpad.c: (gst_pad_link_try):
11552           Fix segfault when attempting to return to old caps
11553
11554 2003-12-29  David Schleef  <ds@schleef.org>
11555
11556         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11557         (gst_caps_structure_simplify), (gst_caps_simplify):
11558         * gst/gstcaps.h:
11559           Add simplify function
11560         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11561         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11562         * gst/gstpad.h:
11563           Copy over srcnotify, sinknotify when calling old pad_link
11564           functions.  Add new is_negotiated() function.
11565         * gst/gststructure.c: (gst_structure_copy):
11566           Fix an incredibly stupid bug that should have been noticed
11567           weeks ago.  _copy() returned the argument, not the new copy.
11568
11569 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11570
11571         * gst/gstcaps.c: (gst_caps_append):
11572           add sanity checks
11573         * gst/gstcaps.h: (gst_caps_debug):
11574           remove, it doesn't exist anymore.
11575         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11576         (gst_element_threadsafe_properties_post_run):
11577           make debugging messages not clutter up THREAD debug category
11578         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11579         (gst_element_change_state):
11580           update to new caps API
11581         * gst/gstinterface.c: (gst_implements_interface_cast):
11582           don't put vital code in g_return_if_fail
11583         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11584         (gst_pad_link_filtered):
11585           add pst_pad_try_link and use it.
11586         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11587           implement correctly, deprecate first one.
11588         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11589           add and implement.
11590         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11591           implement.
11592         (gst_pad_get_negotiated_caps):
11593           add and implement. Make GST_PAD_CAPS call this function.
11594         (gst_pad_get_caps):
11595           remove unneeded check..
11596         (gst_pad_recover_caps_error):
11597           disable, always return FALSE.
11598         (gst_real_pad_dispose):
11599           don't free caps and appfilter anymore, they're unused.
11600         * gst/gstpad.h:
11601           Reflect changes mentioned above.
11602         * gst/gstsystemclock.c: (gst_system_clock_wait):
11603           Make 'clock is way behind' a debugging message.
11604         * gst/gstthread.c: (gst_thread_change_state):
11605           Fix debugging message
11606
11607 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11608
11609         * gst/gstinfo.h:
11610           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11611         * docs/gst/tmpl/gstreamer-unused.sgml:
11612           removed all traces of cvs conflicts
11613
11614 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11615
11616         * configure.ac:
11617         * gst/schedulers/cothreads_compat.h:
11618         * libs/Makefile.am:
11619           remove last instances of wingo cothread usage
11620
11621 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11622
11623         * gst/gstplugin.c:
11624         * gst/gstversion.h.in:
11625         * gst/parse/grammar.y:
11626           change comment block from /** to /* when not gtk-doc comments
11627
11628 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11629
11630         * gst/gst.c: whitespace and doc style fixes
11631
11632 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11633
11634         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11635
11636 2003-12-24  Colin Walters  <walters@verbum.org>
11637
11638         * gst/elements/gsttypefindelement.c:
11639           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11640           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11641           Don't double-free caps.
11642
11643 2003-12-23  David Schleef  <ds@schleef.org>
11644
11645         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11646           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11647           Many little fixes and additions of debug statements to
11648           get rhythmbox working.
11649
11650 2003-12-23  Colin Walters  <walters@verbum.org>
11651
11652         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11653         Use GST_PAD_LINK_SUCCESSFUL.
11654
11655 2003-12-23  David Schleef  <ds@schleef.org>
11656
11657         * gst/elements/gstaggregator.c:
11658         * gst/elements/gsttee.c:
11659           Use gst_pad_proxy_getcaps().
11660         * gst/gstpad.c:
11661         * gst/gstpad.h:
11662           Add gst_pad_proxy_getcaps(), which filter elements can use
11663           as a generic getcaps implementation.
11664           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11665           was advertised.
11666
11667 2003-12-23  David Schleef  <ds@schleef.org>
11668
11669         * gst/gstpad.c:
11670           Rearrange/rewrite much of the pad negotiation code, since it
11671           resembled pasta.  This actually changes the way some
11672           negotiation works, since the previous code was inconsistent
11673           depending on how it was invoked.  Add (internal) structure
11674           GstPadLink, which is used to hold some information (more in
11675           the future) about the link between two pads.  Fixes a number
11676           of bugs, including random lossage of filter caps when the
11677           initial negotiation is delayed.  A few functions are still
11678           unimplemented.
11679         * gst/gstpad.h:
11680           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11681           these when testing GstPadLinkReturn values instead of comparing
11682           directly.
11683
11684 2003-12-23  David Schleef  <ds@schleef.org>
11685
11686         * gst/gstvalue.c: 
11687         * gst/gstvalue.h:
11688           Rearrange lots of code.  Change registration of compare function
11689           into registration of compare/serialize/deserialize functions.
11690           Doesn't include implementation of gst_value_[de]serialize(),
11691           but that should be easy.
11692
11693 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11694
11695         * docs/gst/gstreamer-sections.txt:
11696         * docs/gst/tmpl/gstprops.sgml: removed
11697         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11698           David removed props and caps code, so let's remove their docs as well.
11699           Removed all no longer existing symbols from gstreamer-sections.txt
11700           
11701 2003-12-22  Colin Walters  <walters@verbum.org>
11702
11703         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11704           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11705           of tags directly.
11706
11707 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11708
11709         * gst/elements/gstelements.c:
11710           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11711         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11712           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11713           gst_caps (peer).
11714
11715 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11716
11717         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11718         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11719         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11720         (gst_spider_identity_sink_loop_type_finding):
11721         * gst/autoplug/gstspideridentity.h:
11722           Fix autoplugging in spider element, so it works with new caps.
11723           This was mainly caused by identifying empty caps incorrectly.
11724
11725 2003-12-22  David Schleef  <ds@schleef.org>
11726
11727         * gststructure.c, gstvalue.c, gstvalue.h: Add
11728           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11729           using g_value_copy()
11730
11731 2003-12-21  David Schleef  <ds@schleef.org>
11732
11733         * many, many files: Merge CAPS branch.  This includes:
11734           - implemention of GstValue and several GstValue types
11735           - implemention of GstStructure
11736           - entire rewrite of GstCaps
11737           - removal of GstProps
11738           - many changes to GstPad to compensate for new caps paradigm
11739           - removal of GstBufferpool
11740         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11741         gstvalue.h, gst/gstcaps[2]*.[ch]:
11742           - rename gstcaps2.[ch] to gstcaps.[ch]
11743
11744 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11745
11746         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11747         (gst_queue_chain), (gst_queue_handle_src_event):
11748           implement timeout for sending events. Workaround for if the
11749           pipeline on this queue is not passing any data.
11750
11751 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11752                                                                                 
11753         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11754         * moved CVS to freedesktop.org
11755