docs/manual/: Update (until threads/scheduling) Application Development Manual; remov...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * docs/manual/advanced-clocks.xml:
4         * docs/manual/advanced-interfaces.xml:
5         * docs/manual/advanced-metadata.xml:
6         * docs/manual/advanced-position.xml:
7         * docs/manual/advanced-schedulers.xml:
8         * docs/manual/advanced-threads.xml:
9         * docs/manual/appendix-porting.xml:
10         * docs/manual/basics-bins.xml:
11         * docs/manual/basics-bus.xml:
12         * docs/manual/basics-elements.xml:
13         * docs/manual/basics-helloworld.xml:
14         * docs/manual/basics-pads.xml:
15         * docs/manual/highlevel-components.xml:
16         * docs/manual/manual.xml:
17         * docs/manual/thread.fig:
18           Update (until threads/scheduling) Application Development Manual;
19           remove GstThread, add GstBus, add simple porting checklist, add
20           documentation for tag writing, clocks, make all examples until this
21           part compile and run.
22         * examples/manual/Makefile.am:
23           Update from changes to Application Development Manual; add bus
24           example, remove thread example.
25
26 2005-06-28  Wim Taymans  <wim@fluendo.com>
27
28         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
29         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
30         (gst_bus_source_dispatch):
31         Add debugging messages.
32         Make internal methods static.
33         Handle the case where the bus is flushed in the handler.
34         
35         * gst/gstelement.c: (gst_element_get_bus):
36         Fix refcount in _get_bus();
37
38         * gst/gstpipeline.c: (gst_pipeline_change_state),
39         (gst_pipeline_get_clock_func):
40         Clock refcounting fixes.
41         Handle the case where preroll timed out more gracefully.
42         
43         * gst/gstsystemclock.c: (gst_system_clock_dispose):
44         Clean up the internal thread in dispose. This is needed
45         for subclasses that actually get disposed.
46         
47         * gst/schedulers/threadscheduler.c:
48         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
49         (gst_thread_scheduler_dispose):
50         Free thread pool in dispose.
51
52 2005-06-28  Andy Wingo  <wingo@pobox.com>
53
54         * tests/network-clock-utils.scm (debug, print-event): New utils.
55
56         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
57         (*packet-loss*): Unified loss probability.
58         (network-time): Report out-of-band events.
59
60         * tests/plot-data: Add support for out-of-band events. Hack it
61         into this script instead of passing it down the pipe; should fix
62         this later.
63
64 2005-06-28  Wim Taymans  <wim@fluendo.com>
65
66         * docs/gst/gstreamer.types:
67         * docs/gst/tmpl/gstbasesrc.sgml:
68         * docs/gst/tmpl/gstpad.sgml:
69         Docs fixes.
70
71 2005-06-28  Wim Taymans  <wim@fluendo.com>
72
73         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
74         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
75         (gst_proxy_pad_do_fixatecaps):
76         Correctly proxy the check_pull_range function.
77
78 2005-06-28  Andy Wingo  <wingo@pobox.com>
79
80         * tests/network-clock.scm: Removed need for slib.
81         
82 2005-06-28  Wim Taymans  <wim@fluendo.com>
83
84         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
85         (gst_basesink_preroll_queue_flush):
86         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
87         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
88         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
89         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
90         (gst_proxy_pad_set_property):
91         * gst/gstpad.c:
92         * gst/gstpad.h:
93         * gst/gstqueue.c: (gst_queue_init):
94         The deprecated pad loop function is removed now.
95
96 2005-06-28  Andy Wingo  <wingo@pobox.com>
97
98         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
99         New parameters, simulate network packet loss.
100
101         * tests/network-clock-utils.scm: Initialize the RNG.
102
103 2005-06-28  Wim Taymans  <wim@fluendo.com>
104
105         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
106         (gst_basesink_event), (gst_basesink_deactivate):
107         Flushing the preroll queue always needs to unlock the waiters.
108
109 2005-06-28  Edward Hervey  <edward@fluendo.com>
110
111         * gst/gstpipeline.c: (gst_pipeline_send_event): 
112         Wheen a seek was successful on a pipeline, set the stream_time to the
113         seek offset in order to have a synchronized stream_time.
114
115 2005-06-28  Wim Taymans  <wim@fluendo.com>
116
117         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
118         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
119         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
120         (gst_proxy_pad_do_fixatecaps):
121         Call wrapper function instead of just calling the function
122         pointers. This takes care of any locking and whatmore.
123
124 2005-06-28  Wim Taymans  <wim@fluendo.com>
125
126         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
127         (gst_pad_pull_range):
128         * gst/gstpad.h:
129         CONNECTED -> LINKED.
130
131 2005-06-28  Andy Wingo  <wingo@pobox.com>
132
133         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
134         source-munging commit!!!
135
136         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
137         (gst_object_sink): Take gpointer arguments, not GstObject --
138         avoids casts. Like GLib.
139
140         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
141         activate.
142
143 2005-06-27  Andy Wingo  <wingo@pobox.com>
144
145         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
146         remaining buffer.
147
148         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
149         returns a sorted copy of the trace list.
150         (gst_alloc_trace_print_live): New API, only prints traces with
151         live objects. Sort the list.
152         (gst_alloc_trace_print_all): Sort the list.
153         (gst_alloc_trace_print): Align columns.
154
155         * gst/elements/gstttypefindelement.c:
156         * gst/elements/gsttee.c:
157         * gst/base/gstbasesrc.c:
158         * gst/base/gstbasesink.c:
159         * gst/base/gstbasetransform.c:
160         * gst/gstqueue.c: Adapt for pad activation changes.
161
162         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
163         sched.
164         (gst_pipeline_dispose): Drop ref on sched.
165
166         * gst/gstpad.c (gst_pad_init): Set the default activate func.
167         (gst_pad_activate_default): Push mode by default.
168         (pre_activate_switch, post_activate_switch): New stubs, things to
169         do before and after switching activation modes on pads.
170         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
171         the pad's activate function to choose which mode to activate.
172         Shortcut on deactivation and call the right function directly.
173         (gst_pad_activate_pull): New API, (de)activates a pad in pull
174         mode.
175         (gst_pad_activate_push): New API, same for push mode.
176         (gst_pad_set_activate_function) 
177         (gst_pad_set_activatepull_function) 
178         (gst_pad_set_activatepush_function): Setters for new API.
179
180         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
181         Trace all miniobjects.
182         (gst_mini_object_make_writable): Unref the arg if we copy, like
183         gst_caps_make_writable.
184
185         * gst/gstmessage.c (_gst_message_initialize): No trace init.
186
187         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
188         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
189         Adapt for new pad API.
190
191         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
192
193         * gst/gstelement.h:
194         * gst/gstelement.c (gst_element_iterate_src_pads) 
195         (gst_element_iterate_sink_pads): New API functions.
196         
197         * gst/gstelement.c (iterator_fold_with_resync): New utility,
198         should fold into gstiterator.c in some form.
199         (gst_element_pads_activate): Simplified via use of fold and
200         delegation of decisions to gstpad->activate.
201
202         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
203         help in debugging.
204
205         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
206         class once in init, like gstmessage. Didn't run into this issue
207         but it seems correct. Don't initialize a trace, gstminiobject does
208         that.
209
210         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
211         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
212         to the bus.
213         (assert_live_count): New util function, uses alloc traces to check
214         cleanup.
215
216         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
217         To be modified when unlink drops the internal pad.
218
219 2005-06-27  Wim Taymans  <wim@fluendo.com>
220
221         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
222         (gst_bin_change_state):
223         Cleanup the get_state() function a little, make sure it
224         iterates the same set of elements.
225         Added stub iterate_state_order().
226
227 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
228
229         * docs/gst/gstreamer-docs.sgml:
230         * docs/gst/gstreamer-sections.txt:
231         * docs/gst/gstreamer.types:
232         * docs/gst/tmpl/gstbasesink.sgml:
233         * docs/gst/tmpl/gstbasesrc.sgml:
234         * docs/gst/tmpl/gstbasetransform.sgml:
235         * docs/gst/tmpl/gstelement.sgml:
236         * docs/gst/tmpl/gstiterator.sgml:
237         * gst/base/gstbasesrc.c:
238         * gst/base/gstbasesrc.h:
239         * gst/base/gstbasetransform.h:
240         * gst/gstelement.c:
241         * gst/gstiterator.h:
242           adding basetransform and iterator docs
243
244 2005-06-27  Andy Wingo  <wingo@pobox.com>
245
246         * docs/design/part-activation.txt: Notes on how activation should
247         work -- not quite implemented yet.
248
249 2005-06-25  Wim Taymans  <wim@fluendo.com>
250
251         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
252         At least get the chain function correct, needs more
253         fixing.
254
255 2005-06-25  Wim Taymans  <wim@fluendo.com>
256
257         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
258         (gst_basesink_handle_object), (gst_basesink_event),
259         (gst_basesink_do_sync), (gst_basesink_handle_event),
260         (gst_basesink_change_state):
261         * gst/gsttask.h:
262         Right, two problems here: ghostpads don't take locks and
263         glib _rec_mutex_lock_full() with depth==0 still locks.
264         Catch illegal locking and g_warn them.
265
266 2005-06-25  Wim Taymans  <wim@fluendo.com>
267
268         * check/states/sinks.c: (START_TEST), (gst_object_suite):
269         Have to check for completion now...
270
271 2005-06-25  Wim Taymans  <wim@fluendo.com>
272
273         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
274         (gst_basesink_handle_object), (gst_basesink_event),
275         (gst_basesink_do_sync), (gst_basesink_handle_event),
276         (gst_basesink_change_state):
277         * gst/gstpad.h:
278         Unlock STREAM_LOCK whatever the recursion was.
279
280 2005-06-25  Wim Taymans  <wim@fluendo.com>
281
282         * gst/base/gstbasesink.c: (gst_basesink_set_property),
283         (gst_basesink_preroll_queue_empty),
284         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
285         (gst_basesink_event), (gst_basesink_do_sync),
286         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
287         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
288         (gst_basesink_change_state):
289         Reworked the base sink, handle event and buffer serialisation
290         correctly and removed possible deadlock.
291         Handle EOS correctly.
292
293 2005-06-25  Wim Taymans  <wim@fluendo.com>
294
295         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
296         (gst_pipeline_change_state):
297         * tools/gst-launch.c: (check_intr), (event_loop), (main):
298         Allow elements to post EOS in the state change function.
299         Fix up -launch, make it exit the poll loop when the
300         pipeline actually changed state.
301         Fix up warning parsing in -launch.
302
303 2005-06-25  Wim Taymans  <wim@fluendo.com>
304
305         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
306         (gst_tee_sink_activate):
307         Core takes STREAM_LOCK for us now.
308
309 2005-06-25  Wim Taymans  <wim@fluendo.com>
310
311         * gst/gstelement.c: (gst_element_get_state_func),
312         (gst_element_set_state):
313         * gst/gstelement.h:
314         * gst/gstmessage.c: (gst_message_parse_error),
315         (gst_message_parse_warning):
316         Keep track of current target state while performing a state
317         change so that subclasses can do something interesting.
318         Fix parsing of warning/error messages when GError is NULL.
319
320 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
321
322         * docs/gst/Makefile.am:
323         * docs/gst/gstreamer-docs.sgml:
324         * docs/gst/gstreamer-sections.txt:
325         * docs/gst/gstreamer.types:
326         * docs/gst/tmpl/gstbasesink.sgml:
327         * docs/gst/tmpl/gstbasesrc.sgml:
328         * docs/gst/tmpl/gstbin.sgml:
329         * docs/gst/tmpl/gstcompat.sgml:
330         * docs/gst/tmpl/gstfakesink.sgml:
331         * docs/gst/tmpl/gstfakesrc.sgml:
332         * docs/gst/tmpl/gstfilesink.sgml:
333         * docs/gst/tmpl/gstfilesrc.sgml:
334         * docs/gst/tmpl/gstindex.sgml:
335         * docs/manual/appendix-quotes.xml:
336         * gst/base/gstbasesrc.h:
337         * gst/elements/gstfakesrc.h:
338         * gst/gstmessage.h:
339           start pulling in base classes and elements in our docs
340
341 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
342
343         * docs/gst/Makefile.am:
344         * docs/libs/Makefile.am:
345           fixed make distcheck with gtk-doc 1.3
346
347 2005-06-23  Wim Taymans  <wim@fluendo.com>
348
349         * gst/gstelement.c: (gst_element_get_state_func),
350         (gst_element_set_state), (gst_element_change_state):
351         When the state did not change, also report NO_PREROLL
352         when it matters.
353
354 2005-06-23  Wim Taymans  <wim@fluendo.com>
355
356         * gst/gstpad.c: (gst_pad_event_default):
357         * gst/gstqueue.c: (gst_queue_loop):
358         No unsafe task pausing please.
359
360 2005-06-23  Wim Taymans  <wim@fluendo.com>
361
362         * gst/schedulers/threadscheduler.c:
363         (gst_thread_scheduler_task_start),
364         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
365         Ref the task before pushing it on the threadpool. This
366         makes sure that we have a ref when the threadfunction is
367         actually called.
368
369 2005-06-23  Andy Wingo  <wingo@pobox.com>
370
371         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
372         offset is greater than the file's size.
373
374         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
375         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
376         * gst/gstobject.c (gst_object_class_init): Make the class lock
377         recursive. Wim won't let me drop deep_notify. Decodebin works
378         again, whoopdy doo.
379
380         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
381         internal pad, and hacks accordingly. Doesn't do it on the target
382         pad because we change its caps. Probably catches all cases of
383         interest tho.
384         (gst_ghost_pad_set_property): Connect to notify::caps as
385         appropritate.
386
387         * tests/network-clock.scm (plot-simulation): Pipe data to the
388         elite python skript.
389
390         * tests/network-clock-utils.scm (define-parameter): New macro,
391         defines a parameter that can be set via the command line.
392         (set-parameter!, parse-parameter-arguments): Command line args
393         parser.
394
395         * tests/plot-data: Simple matplotlib-based plotter, takes input on
396         stdin.
397
398 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
399
400         * gst/elements/gsttypefindelement.c:
401         (gst_type_find_element_handle_event):
402           Don't restart typefinding on a discont.
403         * gst/gstelement.c: (gst_element_set_state):
404           Debug spelling fix.
405         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
406           Allow changing mode of an active pad.
407           Debug output fixes.
408         * gst/registries/gstlibxmlregistry.c: (load_feature):
409           Don't cast a static pad template to a normal pad template.
410
411 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
412
413         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
414         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
415           remove gst_strtoll completely, since it didn't actually do
416           anything more than what g_ascii_strtoull already does.
417           check for range errors when deserializing
418           do a cast for the unsigned cases; but further fixing needs
419           a decision on what the interpretation of "(int)" and
420           deserialization should be for values that fall outside the
421           type's boundaries (ie, refuse, or interpret as casting)
422
423 2005-06-23  Wim Taymans  <wim@fluendo.com>
424
425         * check/Makefile.am:
426         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
427         * docs/design/part-live-source.txt:
428         * docs/design/part-states.txt:
429         * gst/base/gstbasesrc.c: (gst_basesrc_init),
430         (gst_basesrc_set_live), (gst_basesrc_is_live),
431         (gst_basesrc_get_range), (gst_basesrc_activate),
432         (gst_basesrc_change_state):
433         * gst/base/gstbasesrc.h:
434         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
435         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
436         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
437         * gst/gstelement.c: (gst_element_get_state_func),
438         (gst_element_set_state):
439         * gst/gstelement.h:
440         * gst/gsttypes.h:
441         * tools/gst-launch.c: (event_loop), (main):
442         Added support for live sources and other elements that
443         cannot do preroll.
444         Updated design docs, added live-source design doc.
445         Implemented live source functionality in basesrc
446         Fix error condition in _bin_get_state()
447         Implement live source handling in -launch.
448         Added check for live sources.
449         Fixed case in GstBin where elements were changed state
450         multiple times.
451
452
453 2005-06-23  Andy Wingo  <wingo@pobox.com>
454
455         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
456         borken refcounting.
457
458         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
459         gst_caps_replace takes care of this for us.
460
461         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
462         gst_pad_set_caps on the target, not just its setcaps() function.
463
464         * tests/network-clock.scm: 
465         * tests/network-clock-utils.scm: A network clock simulator.
466         Something of an algorithmic testbed before doing something in C.
467
468 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
469
470         * check/Makefile.am:
471         * check/gst/capslist.h:
472           copy over from 0.8, and add two with bitmasks specified with
473           (int) 0xFF...
474         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
475           add test to parse everything from capslist.h
476         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
477         (main):
478           add test for structure deserialization
479         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
480           add tests for deserialization of strings to int types
481         * gst/gststructure.c: (gst_structure_nth_field_name):
482         * gst/gststructure.h:
483           add a way to get the name of a field referenced by index
484         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
485           instead of checking if the resulting long long lies between
486           min and max, we check if the long long would fit into
487           a number of bytes for the final type.
488           This fixes cases where a string represents 2^32 - 1, which
489           when cast to int would be the (valid) -1, but is bigger than
490           G_MAXINT
491
492 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
493
494         * gst/parse/grammar.y:
495           add a log line for type deserialization
496
497 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
498
499         * check/gst/gstvalue.c: (START_TEST):
500         * gst/gstvalue.c: (gst_value_deserialize):
501           return long long, not int, so gint64 deserialization actually
502           works.  Is there any flag that makes the compiler check this ?
503           Fixes #308559
504
505 2005-06-22  Wim Taymans  <wim@fluendo.com>
506
507         * gst/gstbuffer.h:
508         Added convenience macros for setting buffers in GValue.
509
510 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
511
512         * check/gst/.cvsignore:
513         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
514           add a test deserializing int64, and comment part out because
515           it fails, yay !
516
517 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
518
519         * check/Makefile.am:
520         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
521         * testsuite/Makefile.am:
522         * testsuite/caps/Makefile.am:
523         * testsuite/caps/value_serialize.c:
524         * testsuite/test_gst_init.c:
525           move a value_serialize test over
526
527 2005-06-20  Wim Taymans  <wim@fluendo.com>
528
529         * gst/gstpad.c:
530         Small doc updates.
531         
532         * gst/gstvalue.c: (gst_value_compare_buffer),
533         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
534         (gst_value_compare_flags), (gst_value_serialize_flags),
535         (gst_value_deserialize_flags), (_gst_value_initialize):
536         Fix serialisation of buffers, they are not boxed types anymore
537
538 2005-06-20  Wim Taymans  <wim@fluendo.com>
539
540         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
541         Testcase to show error in buffer-on-caps serialisation.
542
543 2005-06-20  Andy Wingo  <wingo@pobox.com>
544
545         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
546         will be adding to later.
547
548         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
549         if its socks fill with rocks.
550         (gst_system_clock_obtain): Set the name on object construction.
551         Avoid double-checked locking.
552
553 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
554
555         * gst/gsturi.c: (gst_element_make_from_uri):
556           Fix potential endless loop.
557
558 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
559
560         * check/Makefile.am:
561           add gsttag
562         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
563         (main):
564           move over from testsuite dir and clean up
565         * configure.ac:
566         * gst/gsttag.c:
567         * testsuite/Makefile.am:
568         * testsuite/tags/.cvsignore:
569         * testsuite/tags/Makefile.am:
570         * testsuite/tags/merge.c:
571           remove testsuite/tags
572
573 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
574
575         * docs/gst/gstreamer-sections.txt:
576         * docs/gst/tmpl/gstenumtypes.sgml:
577         * win32/gstenumtypes.c:
578           clean up documentation build a little
579
580 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
581
582         * check/gstcheck.h:
583           add macros for checking refcounts on objects and caps
584         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
585           add some more unit tests
586         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
587         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
588           fix leaked refcounts (I hope :)) so unittest works
589         * gst/gstpad.h:
590           whitespace removal
591
592 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
593
594         * configure.ac: back to HEAD
595
596 === release 0.9.1 ===
597
598 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
599
600         * NEWS:
601         * RELEASE:
602           updated
603
604 2005-06-17  Andy Wingo  <wingo@pobox.com>
605
606         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
607         assert; it's always possible that the pad gets deactivated in
608         between the checks in gstpad.c and the implementation. Rely on
609         finish_preroll() to return a FLUSHING or similar instead of on the
610         assert.
611         
612         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
613         clock and post an EOS message if we come out of finish_preroll in
614         the playing state.
615
616 2005-06-16  David Schleef  <ds@schleef.org>
617
618         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
619         (gst_capsfilter_set_property): Allow NULL as possible value
620         for filter_caps property, indicating GST_CAPS_ANY.
621
622 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
623
624         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
625           fix debug output
626         * gst/schedulers/Makefile.am:
627           use libgst prefix
628         * gstreamer.spec.in:
629           fix spec for it
630
631 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
632
633         * gstreamer.spec.in:
634           clean up
635
636 2005-06-08  Andy Wingo  <wingo@pobox.com>
637
638         * gst/gstutils.c: RPAD fixes all around.
639         (gst_element_link_pads): Refcounting fixes.
640
641         * tools/gst-inspect.c:
642         * tools/gst-xmlinspect.c:
643         * parse/grammar.y:
644         * gst/base/gsttypefindhelper.c:
645         * gst/base/gstbasesink.c:
646         * gst/gstqueue.c: RPAD fixes.
647
648         * gst/gstghostpad.h:
649         * gst/gstghostpad.c: New ghost pad implementation as full proxy
650         pads. The tricky thing is they provide both source and sink
651         interfaces, since they proxy the internal pad for the external
652         pad, and vice versa. Implement with lower-level ProxyPad objects,
653         with the interior proxy pad as a child of the exterior ghost pad.
654         Should write a doc on this.
655         
656         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
657         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
658         gst_object API.
659         
660         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
661         pads are real pads. No ghost pads in this file. Not documenting
662         the myriad s/RPAD/PAD/ and REALIZE fixes.
663         (gst_pad_class_init): Add properties for "direction" and
664         "template". Both are construct-only, so they can't change during
665         the life of the pad. Fixes properly deriving from GstPad.
666         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
667         derived objects, just set properties when creating the objects via
668         g_object_new.
669         (gst_pad_get_parent): Implement as a function, return NULL if the
670         parent is not an element.
671         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
672         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
673         
674         * gst/gstobject.c (gst_object_class_init): Make name a construct
675         property. Don't set it in the object init.
676
677         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
678         with UNKNOWN direction.
679         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
680         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
681         (gst_element_remove_pad): Remove ghost-pad special cases.
682         (gst_element_pads_activate): Remove rpad cruft.
683
684         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
685         catch the pad's-parent-not-an-element case.
686
687         * gst/gst.h: Include gstghostpad.h.
688
689         * gst/gst.c (init_post): No more real, ghost pads.
690
691         * gst/Makefile.am: Add gstghostpad.[ch].
692
693         * check/Makefile.am:
694         * check/gst/gstbin.c:
695         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
696         into a bin creates ghost pads, and that the refcounts are right.
697         Partly moved from gstbin.c.
698
699 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
700
701         * check/gst-libs/.cvsignore:
702         * check/gst/.cvsignore:
703         * check/pipelines/.cvsignore:
704           ignore more
705         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
706         (START_TEST), (cleanup_suite), (main):
707           add some tests related to cleanup after running pipelines
708
709 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
710
711         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
712           add a testsuite for GstBuffer
713
714 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
715
716         * gst/gstminiobject.h:
717           add defines for accessing the refcount
718
719 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
720
721         * Makefile.am: added support for html unit test coverage reports
722
723 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
724
725         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
726           Free existing caps if the capsfilter changes. Add a FIXME about
727           setting those caps on the pads.
728
729         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
730           Before adding a ghost pad to a parent bin, check that there isn't
731           already one for the element on the bin. Prevents infinite recursion
732           when using decodebin in parse pipelines. Andy says he'll rewrite the
733           way this works anyway, so ignore the hack.
734
735 2005-06-02  Andy Wingo  <wingo@pobox.com>
736
737         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
738         file size, pass it on to the type find helper.
739
740         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
741         segment_start and segment_end properly according to the seek
742         method. Segment_end is still a bit flaky because offset can be
743         negative for CUR and END cases, but it takes -1 as an "unset"
744         value.
745
746 2005-06-02  Wim Taymans  <wim@fluendo.com>
747
748         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
749         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
750         (gst_basesink_activate):
751         * gst/base/gstbasesink.h:
752         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
753         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
754         (gst_pad_query), (gst_pad_start_task):
755         * gst/gstpad.h:
756         * gst/gstqueue.c: (gst_queue_bufferalloc),
757         (gst_queue_handle_sink_event), (gst_queue_chain):
758         Bufferalloc: return GstFlowReturn to more accuratly report
759         why allocation failed.
760
761 2005-06-02  Wim Taymans  <wim@fluendo.com>
762
763         * gst/gstpipeline.c: (gst_pipeline_send_event):
764         Take snapshot of state without blocking.
765
766 2005-06-02  Wim Taymans  <wim@fluendo.com>
767
768         * docs/design/part-TODO.txt:
769         * docs/design/part-caps.txt:
770         * docs/design/part-clocks.txt:
771         * docs/design/part-negotiation.txt:
772         * docs/design/part-preroll.txt:
773         Small doc updates 
774
775 2005-05-30  Wim Taymans  <wim@fluendo.com>
776
777         * gst/elements/gstidentity.c: (gst_identity_event),
778         (gst_identity_transform), (gst_identity_get_property):
779         Protect last_message property as it is accessed from
780         multiple threads.
781
782 2005-05-30  Wim Taymans  <wim@fluendo.com>
783
784         * gst/gstelement.c: (gst_element_init),
785         (gst_element_pads_activate), (gst_element_change_state):
786         Slicker pad activation code.
787
788 2005-05-30  Wim Taymans  <wim@fluendo.com>
789
790         * gst/Makefile.am:
791         * gst/gstelement.h:
792         * gst/gstelementfactory.h:
793         * gst/gsttypes.h:
794         Move elementfactory methods to separate .h file.
795
796 2005-05-30  Wim Taymans  <wim@fluendo.com>
797
798         * docs/design/part-overview.txt:
799         * gst/gstsystemclock.h:
800         Small typo fixes, doc updates.
801
802 2005-05-30  Wim Taymans  <wim@fluendo.com>
803
804         * gst/gst.c: (gst_init_get_popt_table), (init_post),
805         (init_popt_callback):
806         Remove cpu-opt flag.
807
808 2005-05-30  Wim Taymans  <wim@fluendo.com>
809
810         * gst/gstbuffer.c: (gst_subbuffer_finalize),
811         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
812         * gst/gstbuffer.h:
813         Avoid typechecking in places where not needed.
814         Added accessor for malloc_data.
815
816 2005-05-30  Wim Taymans  <wim@fluendo.com>
817
818         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
819         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
820         (gst_pad_configure_sink), (gst_pad_configure_src),
821         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
822         (gst_pad_start_task):
823         Propagate errors from _set_caps() in configure_src/sink
824         functions instead of returning TRUE.
825         FLUSH events can travel up and downstream
826
827
828 2005-05-30  Wim Taymans  <wim@fluendo.com>
829
830         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
831         (gst_basesink_activate):
832         Handle EOS in preroll.
833
834 2005-05-30  Wim Taymans  <wim@fluendo.com>
835
836         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
837         (gst_queue_loop), (gst_queue_handle_src_event):
838         Remove old pieces of code
839         Flushing the queue in an upstream event is a very bad idea.
840
841 2005-05-26  Andy Wingo  <wingo@pobox.com>
842
843         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
844         gst_value_set_mini_object so as to add a ref on the object (which
845         will be removed when the value is unset).
846
847         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
848         arg type in ::handoff.
849
850         * gst/gstelement.c (gst_element_change_state): Also deactivate
851         pads in READY->NULL, just in case the element didn't make it to
852         PAUSED. Wingo tested, Wim approved.
853
854 2005-05-26  Wim Taymans  <wim@fluendo.com>
855
856         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
857         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
858         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
859         A flushing pad cannot be used to alloc_buffer from.
860
861 2005-05-26  Wim Taymans  <wim@fluendo.com>
862
863         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
864         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
865         (gst_bus_source_dispatch), (gst_bus_source_finalize),
866         (gst_bus_create_watch), (gst_bus_add_watch_full):
867         * gst/gstbus.h:
868         Implement a real GSource and use g_main_context_wakeup() to
869         signal new messages instead of the socketpair.
870
871 2005-05-25  Wim Taymans  <wim@fluendo.com>
872
873         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
874         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
875         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
876         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
877         (gst_pad_send_event), (gst_pad_start_task):
878         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
879         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
880         (gst_queue_sink_activate), (gst_queue_src_activate),
881         (gst_queue_change_state):
882         * gst/gstqueue.h:
883         Fix state changes for non sinks. We now change sinks, then elements
884         with unconnected srcpads, then the rest.
885         More efficient queue unlocking in flush and state changes.
886         Set the pad activate mode even if it does not have an activate
887         function.
888
889 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
890
891         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
892           Don't go in pull mode for non-seekable sources.
893         * gst/elements/gsttypefindelement.h:
894         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
895         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
896         (free_entry), (stop_typefinding),
897         (gst_type_find_element_handle_event), (find_peek),
898         (gst_type_find_element_chain), (do_pull_typefind),
899         (gst_type_find_element_change_state):
900           Allow typefinding (w/o seeking) in push-mode, simplified version
901           of what was in 0.8.
902         * gst/gstutils.c: (gst_buffer_join):
903         * gst/gstutils.h:
904           gst_buffer_join() from 0.8.
905
906 2005-05-25  Wim Taymans  <wim@fluendo.com>
907
908         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
909         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
910         (gst_pad_send_event), (gst_pad_start_task):
911         Disable attempt at mode switching until it is figured out.
912
913 2005-05-25  Wim Taymans  <wim@fluendo.com>
914
915         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
916         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
917         (gst_basesink_finish_preroll), (gst_basesink_chain),
918         (gst_basesink_loop), (gst_basesink_activate),
919         (gst_basesink_change_state):
920         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
921         (gst_basesrc_get_range), (gst_basesrc_loop),
922         (gst_basesrc_activate):
923         * gst/elements/gsttee.c: (gst_tee_sink_activate):
924         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
925         (gst_real_pad_init), (gst_real_pad_set_property),
926         (gst_real_pad_get_property), (gst_pad_set_active),
927         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
928         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
929         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
930         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
931         (gst_pad_event_default_dispatch), (gst_pad_event_default),
932         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
933         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
934         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
935         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
936         (gst_pad_stop_task):
937         * gst/gstpad.h:
938         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
939         (gst_queue_loop), (gst_queue_src_activate):
940         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
941         (gst_task_get_state):
942         * gst/gsttask.h:
943         * gst/schedulers/threadscheduler.c:
944         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
945         Implement gst_pad_pause/start/stop_task(), take STREAM lock
946         in task function.
947         Remove ACTIVE pad flag, use FLUSHING everywhere
948         Added _pad_chain(), _pad_get_range() to call chain/getrange 
949         functions.
950         Add locks around IS_FLUSHING when reading.
951         Take STREAM lock in chain(), get_range() functions so plugins
952         don't need to take it anymore.
953         
954
955
956 2005-05-25  Wim Taymans  <wim@fluendo.com>
957
958         * tools/gst-launch.c: (event_loop):
959         Unref message after using its contents instead of
960         before.
961
962 2005-05-24  Wim Taymans  <wim@fluendo.com>
963
964         * docs/design/draft-ghostpads.txt:
965         * docs/design/draft-push-pull.txt:
966         * docs/design/draft-query.txt:
967         * docs/design/part-overview.txt:
968         Docs updates, added general overview doc.
969
970 2005-05-21  David Schleef  <ds@schleef.org>
971
972         * docs/gst/tmpl/old/GstBin.sgml:
973         * docs/gst/tmpl/old/GstBuffer.sgml:
974         * docs/gst/tmpl/old/GstCaps.sgml:
975         * docs/gst/tmpl/old/GstClock.sgml:
976         * docs/gst/tmpl/old/GstCompat.sgml:
977         * docs/gst/tmpl/old/GstData.sgml:
978         * docs/gst/tmpl/old/GstElement.sgml:
979         * docs/gst/tmpl/old/GstEvent.sgml:
980         * docs/gst/tmpl/old/GstIndex.sgml:
981         * docs/gst/tmpl/old/GstStructure.sgml:
982         * docs/gst/tmpl/old/GstTag.sgml:
983         * docs/gst/tmpl/old/cothreads.sgml:
984         * docs/gst/tmpl/old/cothreads_compat.sgml:
985         * docs/gst/tmpl/old/gettext.sgml:
986         * docs/gst/tmpl/old/gobject2gtk.sgml:
987         * docs/gst/tmpl/old/grammar.tab.sgml:
988         * docs/gst/tmpl/old/gst-i18n-app.sgml:
989         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
990         * docs/gst/tmpl/old/gst_private.sgml:
991         * docs/gst/tmpl/old/gstaggregator.sgml:
992         * docs/gst/tmpl/old/gstarch.sgml:
993         * docs/gst/tmpl/old/gstatomic_impl.sgml:
994         * docs/gst/tmpl/old/gstbufferstore.sgml:
995         * docs/gst/tmpl/old/gstdata_private.sgml:
996         * docs/gst/tmpl/old/gstdisksink.sgml:
997         * docs/gst/tmpl/old/gstdisksrc.sgml:
998         * docs/gst/tmpl/old/gstelementfactory.sgml:
999         * docs/gst/tmpl/old/gstextratypes.sgml:
1000         * docs/gst/tmpl/old/gstfakesink.sgml:
1001         * docs/gst/tmpl/old/gstfakesrc.sgml:
1002         * docs/gst/tmpl/old/gstfdsink.sgml:
1003         * docs/gst/tmpl/old/gstfdsrc.sgml:
1004         * docs/gst/tmpl/old/gstfilesink.sgml:
1005         * docs/gst/tmpl/old/gstfilesrc.sgml:
1006         * docs/gst/tmpl/old/gsthttpsrc.sgml:
1007         * docs/gst/tmpl/old/gstidentity.sgml:
1008         * docs/gst/tmpl/old/gstindexfactory.sgml:
1009         * docs/gst/tmpl/old/gstmarshal.sgml:
1010         * docs/gst/tmpl/old/gstmd5sink.sgml:
1011         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
1012         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
1013         * docs/gst/tmpl/old/gstpadtemplate.sgml:
1014         * docs/gst/tmpl/old/gstpipefilter.sgml:
1015         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
1016         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
1017         * docs/gst/tmpl/old/gstshaper.sgml:
1018         * docs/gst/tmpl/old/gstspider.sgml:
1019         * docs/gst/tmpl/old/gstspideridentity.sgml:
1020         * docs/gst/tmpl/old/gststatistics.sgml:
1021         * docs/gst/tmpl/old/gsttee.sgml:
1022         * docs/gst/tmpl/old/gsttimecache.sgml:
1023         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
1024         * docs/gst/tmpl/old/gstxmlregistry.sgml:
1025         * docs/gst/tmpl/old/gthread-cothreads.sgml:
1026         * docs/gst/tmpl/old/types.sgml:
1027           I didn't intend to add these or check them in.
1028
1029 2005-05-19  David Schleef  <ds@schleef.org>
1030
1031         * configure.ac: Use -no-common everywhere.  In a sane world, it
1032           would be the default in libtool, because without it, you can't
1033           build DLLs on Windows.
1034         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
1035         * docs/gst/gstreamer-sections.txt:
1036         * docs/gst/tmpl/gstcpu.sgml:
1037         * docs/gst/tmpl/gstdata.sgml:
1038         * docs/gst/tmpl/gstthread.sgml:
1039
1040 2005-05-19  David Schleef  <ds@schleef.org>
1041
1042         * gst/gstminiobject.c: (gst_value_set_mini_object),
1043         (gst_value_take_mini_object), (gst_value_get_mini_object):
1044         * gst/gstminiobject.h: Add GValue set/get functions.
1045
1046 2005-05-19  Wim Taymans  <wim@fluendo.com>
1047
1048         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
1049         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
1050         (gst_subbuffer_init), (gst_buffer_is_span_fast):
1051         * gst/gstbuffer.h:
1052         * gst/gstbus.c: (gst_bus_post):
1053         * gst/gstelement.c: (gst_element_get_random_pad):
1054         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
1055         Make subbufer unref the parent in finalize.
1056         some more debugging info.
1057
1058
1059 2005-05-19  Wim Taymans  <wim@fluendo.com>
1060
1061         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1062         (gst_basesink_init), (gst_basesink_finalize),
1063         (gst_basesink_activate), (gst_basesink_change_state):
1064         Don't free preroll queue too early.
1065
1066 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1067
1068         * gst/Makefile.am:
1069         * gst/ROADMAP:
1070           Hi, I'm outdated. Please shoot me.
1071
1072 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1073
1074         * gst/gstpipeline.c: (gst_pipeline_send_event):
1075           Do not access variables after they have been deleted.
1076
1077 2005-05-19  Wim Taymans  <wim@fluendo.com>
1078
1079         * tools/gst-inspect.c: (print_plugin_features):
1080         A plugin feature does unfortunatly not use the
1081         object name yet...
1082
1083 2005-05-18  Wim Taymans  <wim@fluendo.com>
1084
1085         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
1086         Port _span() functions to new subbuffers.
1087
1088 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1089
1090         * gst/gstbin.c: (gst_bin_add_func):
1091           Fix clock settery in bins when adding kids after the clock has
1092           been selected.
1093
1094 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1095
1096         * gst/elements/gstidentity.c: (gst_identity_class_init):
1097           Workaround until signals support GstMiniObject.
1098
1099 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1100
1101         * gst/gstbuffer.c:
1102         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
1103
1104 2005-05-18  Wim Taymans  <wim@fluendo.com>
1105
1106         * gst/base/Makefile.am:
1107         * gst/base/gstadapter.c: (gst_adapter_base_init),
1108         (gst_adapter_class_init), (gst_adapter_init),
1109         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1110         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1111         (gst_adapter_flush), (gst_adapter_available),
1112         (gst_adapter_available_fast):
1113         * gst/base/gstadapter.h:
1114         Ported and added adapter to the base classes.
1115
1116 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1117
1118         * gst/gst.c:
1119         * gst/gstmessage.c:
1120           Make sure the class is reffed/unreffed once before threads can be
1121           used.  Fixes #304551.
1122
1123 2005-05-17  Wim Taymans  <wim@fluendo.com>
1124
1125         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1126         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1127         * gst/gstminiobject.c: (gst_mini_object_get_type),
1128         (gst_mini_object_free):
1129         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1130         (gst_pad_push), (gst_pad_push_event):
1131         * gst/gstqueue.c: (gst_queue_change_state):
1132         Don't queue buffers in basesink when we are flushing.
1133         Unref buffer when flushing in basesink.
1134         Flush queue when going to READY
1135         Unref buffer when _push() returns an error.
1136         Don't free MiniObject instance when refcount is incremented
1137         in _finalize() so that we can recover objects.
1138
1139 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1140
1141         * docs/manual/advanced-schedulers.xml:
1142         * docs/manual/appendix-checklist.xml:
1143         * docs/pwg/advanced-clock.xml:
1144         * docs/pwg/advanced-interfaces.xml:
1145         * docs/pwg/advanced-request.xml:
1146         * docs/pwg/advanced-types.xml:
1147         * docs/pwg/intro-preface.xml:
1148         * examples/plugins/example.c: (gst_example_get_type),
1149         (gst_example_class_init), (gst_example_chain),
1150         (gst_example_set_property), (gst_example_get_property),
1151         (gst_example_change_state), (plugin_init):
1152         * examples/plugins/example.h:
1153           small doc fixes
1154
1155 2005-05-17  Wim Taymans  <wim@fluendo.com>
1156
1157         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1158         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1159         * gst/gstqueue.c: (gst_queue_change_state):
1160         Clear queue when going to READY.
1161         Remove IN_SETCAPS flag too.
1162
1163 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1164
1165         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1166           Remove implicit cast from gboolean to GstElementStateReturn;
1167           make sure we still return failure in paused => ready case if
1168           the parent class fails to change state and our own stop 
1169           vfunc succeeds.
1170
1171 2005-05-17  Wim Taymans  <wim@fluendo.com>
1172
1173         * tools/gst-launch.c: (event_loop):
1174         Message was unreffed too soon.
1175
1176 2005-05-16  Andy Wingo  <wingo@pobox.com>
1177
1178         * gst/gstbin.c (sink_iterator_filter): Err... um...
1179
1180         * check/gst/gstbin.c (test_ghost_pads): New test for the
1181         ghosting-if-elements-not-in-same-bin behavior.
1182
1183 2005-05-16  David Schleef  <ds@schleef.org>
1184
1185         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1186         accessing refcount directly.
1187
1188 2005-05-15  David Schleef  <ds@schleef.org>
1189
1190         * check/Makefile.am: remove GstData checks
1191         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1192         * gst/Makefile.am: add miniobject, remove data
1193         * gst/gst.h: add miniobject, remove data
1194         * gst/gstdata.c: remove
1195         * gst/gstdata.h: remove
1196         * gst/gstdata_private.h: remove
1197         * gst/gsttypes.h: remove GstEvent and GstMessage
1198         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1199         * gst/gstmarshal.list: change BOXED -> OBJECT
1200
1201         Implement GstMiniObject.
1202         * gst/gstminiobject.c:
1203         * gst/gstminiobject.h:
1204
1205         Modify to be subclasses of GstMiniObject.
1206         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1207         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1208         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1209         (gst_subbuffer_get_type), (gst_subbuffer_init),
1210         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1211         (gst_buffer_span):
1212         * gst/gstbuffer.h:
1213         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1214         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1215         (_gst_event_copy), (gst_event_new):
1216         * gst/gstevent.h:
1217         * gst/gstmessage.c: (_gst_message_initialize),
1218         (gst_message_get_type), (gst_message_class_init),
1219         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1220         (gst_message_new), (gst_message_new_error),
1221         (gst_message_new_warning), (gst_message_new_tag),
1222         (gst_message_new_state_changed), (gst_message_new_application):
1223         * gst/gstmessage.h:
1224         * gst/gstprobe.c: (gst_probe_perform),
1225         (gst_probe_dispatcher_dispatch):
1226         * gst/gstprobe.h:
1227         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1228         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1229         (_gst_query_copy), (gst_query_new):
1230
1231         Update elements for GstData -> GstMiniObject changes
1232         * gst/gstquery.h:
1233         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1234         (gst_queue_chain), (gst_queue_loop):
1235         * gst/elements/gstbufferstore.c:
1236         (gst_buffer_store_add_buffer_func),
1237         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1238         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1239         (gst_fakesink_render):
1240         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1241         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1242         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1243         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1244         (gst_filesrc_create_read):
1245         * gst/elements/gstidentity.c: (gst_identity_class_init):
1246         * gst/elements/gsttypefindelement.c:
1247         (gst_type_find_element_src_event), (free_entry_buffers),
1248         (gst_type_find_element_handle_event):
1249         * libs/gst/dataprotocol/dataprotocol.c:
1250         (gst_dp_header_from_buffer):
1251         * libs/gst/dataprotocol/dataprotocol.h:
1252         * libs/gst/dataprotocol/dp-private.h:
1253
1254 2005-05-15  David Schleef  <ds@schleef.org>
1255
1256         * gst/elements/gstelements.c: Don't include headers that were
1257         just removed.
1258
1259 2005-05-15  David Schleef  <ds@schleef.org>
1260
1261         * gst/elements/Makefile.am: Remove some elements that don't
1262         need to be in the core (or even exist at all).
1263         * gst/elements/gstaggregator.c:
1264         * gst/elements/gstaggregator.h:
1265         * gst/elements/gstmd5sink.c:
1266         * gst/elements/gstmd5sink.h:
1267         * gst/elements/gstmultifilesrc.c:
1268         * gst/elements/gstmultifilesrc.h:
1269         * gst/elements/gstpipefilter.c:
1270         * gst/elements/gstpipefilter.h:
1271         * gst/elements/gstshaper.c:
1272         * gst/elements/gstshaper.h:
1273         * gst/elements/gststatistics.c:
1274         * gst/elements/gststatistics.h:
1275         * po/POTFILES.in: Remove above files.
1276
1277 2005-05-14  Andy Wingo  <wingo@pobox.com>
1278
1279         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1280         so as to get the refs right.
1281         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1282         unreffing objects that don't pass the filter.
1283
1284         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1285         gst_element_set_bus.
1286         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1287         normal cases, this will destroy the bus.
1288
1289         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1290         object.
1291
1292         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1293         has no sinks.
1294
1295 2005-05-13  Andy Wingo  <wingo@pobox.com>
1296
1297         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1298         gst_pad_link, call pad_link_maybe_ghosting,
1299         (pad_link_maybe_ghosting): Links pads, making sure that the
1300         elements being linked are in the same bin.
1301         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1302         Helpers for pad_link_maybe_ghosting.
1303
1304 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1305
1306         * configure.ac:
1307           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1308
1309 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1310
1311         * docs/design/part-element-source.txt:
1312           Mention GstPushSrc
1313
1314 2005-05-12  Wim Taymans  <wim@fluendo.com>
1315
1316         * gst/base/gstbasesink.c: (gst_basesink_init),
1317         (gst_basesink_activate):
1318         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1319         (gst_basesrc_is_seekable):
1320         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1321         (bin_element_is_sink), (gst_bin_change_state):
1322         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1323         * gst/gstelement.h:
1324         Identify sinks by their flag to avoid overly complicated
1325         checks (fow now).
1326         Do state changes even for elements not reachable from the
1327         sinks.
1328         BaseSink is a sink now :)
1329         Some more debugging info in the basesrc.
1330
1331
1332 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1333
1334         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1335           Implement _query on a bin, similar to _send_event.
1336
1337 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1338
1339         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1340           Discont event offset format should be GST_FORMAT_BYTES,
1341           not GST_FORMAT_TIME.
1342
1343 2005-05-12  Wim Taymans  <wim@fluendo.com>
1344
1345         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1346         Same fix as Ronald's but without the signal. 
1347
1348 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1349
1350         * gst/gstutils.c: (gst_element_query_position):
1351           No, an element is not a pad.
1352
1353 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1354
1355         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1356         (gst_bin_get_state):
1357           If a child is removed from a bin while we remove the child from
1358           the bin and while we're retrieving its state, signal this to the
1359           get_state function so we abort the wait (instead of waiting for
1360           a timeout) and can immediately re-iterate over all other elements.
1361
1362 2005-05-12  Wim Taymans  <wim@fluendo.com>
1363
1364         * gst/base/Makefile.am:
1365         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1366         (gst_basesrc_start):
1367         * gst/base/gstbasesrc.h:
1368         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1369         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1370         (gst_pushsrc_init), (gst_pushsrc_create):
1371         * gst/base/gstpushsrc.h:
1372         Added is_seekable to BaseSrc
1373         Added simple PushSrc.
1374
1375 2005-05-11  Wim Taymans  <wim@fluendo.com>
1376
1377         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1378         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1379         (gst_element_link_pads), (gst_element_query_position),
1380         (gst_element_query_convert), (intersect_caps_func),
1381         (gst_pad_query_position), (gst_pad_query_convert):
1382         Fix refcounting in utils function.
1383         No point in trying to activate a pad when it's added, it could
1384         be added from the state change function and then we deadlock, the
1385         element has to decide what to do.
1386
1387 2005-05-10  Andy Wingo  <wingo@pobox.com>
1388
1389         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1390         *all* the arguments.
1391
1392         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1393         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1394         lock (according to the docs -- if this is wrong change the docs).
1395
1396         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1397         flush messages in the NULL state.
1398
1399         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1400         message immediately and return.
1401         (gst_bus_set_flushing): New function. If a bus is flushing, it
1402         flushes out any queued messages and immediately unrefs new
1403         messages. This is so when an element goes to NULL, all of the
1404         unhandled messages coming from it can be freed, and their
1405         references to the element dropped. In other words: message source
1406         ref considered harmful :P
1407
1408         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1409         we're finished with it.
1410
1411         * gst/gstmessage.c (gst_message_new_state_changed): 
1412
1413 2005-05-10  Wim Taymans  <wim@fluendo.com>
1414
1415         * gst/gstvalue.c: (gst_value_compare_flags),
1416         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1417         (_gst_value_initialize):
1418         Added flags serialize/deserialize/compare code.
1419
1420 2005-05-09  Andy Wingo  <wingo@pobox.com>
1421
1422         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1423         Intersect the peer's caps with our caps.
1424
1425 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1426
1427         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1428         * gst/elements/gsttypefindelement.c: (find_peek):
1429           Handle negative offsets better. Fixes decodebin.
1430
1431 2005-05-09  Wim Taymans  <wim@fluendo.com>
1432
1433         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1434         (gst_base_transform_event):
1435         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1436         Implement accept_caps.
1437         Fix silly lock/unlock mismatch in base class.
1438
1439 2005-05-09  Wim Taymans  <wim@fluendo.com>
1440
1441         * docs/design/draft-push-pull.txt:
1442         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1443         * gst/elements/gstfilesink.c: (gst_filesink_init),
1444         (gst_filesink_query):
1445         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1446         (gst_type_find_handle_src_query), (find_element_get_length):
1447         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1448         * gst/gstelement.h:
1449         * gst/gstmessage.c:
1450         * gst/gstmessage.h:
1451         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1452         (gst_real_pad_get_caps_unlocked),
1453         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1454         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1455         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1456         (gst_real_pad_dispose), (gst_real_pad_finalize),
1457         (gst_pad_load_and_link), (gst_pad_save_thyself),
1458         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1459         (gst_pad_check_pull_range), (gst_pad_pull_range),
1460         (gst_pad_template_get_type), (gst_pad_template_class_init),
1461         (gst_pad_template_init), (gst_pad_template_dispose),
1462         (name_is_valid), (gst_static_pad_template_get),
1463         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1464         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1465         (gst_pad_get_element_private), (gst_pad_start_task),
1466         (gst_pad_pause_task), (gst_pad_stop_task),
1467         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1468         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1469         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1470         (gst_ghost_pad_new):
1471         * gst/gstpad.h:
1472         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1473         (gst_query_new_position), (gst_query_set_position),
1474         (gst_query_parse_position), (gst_query_new_convert),
1475         (gst_query_set_convert), (gst_query_parse_convert):
1476         * gst/gstquery.h:
1477         * gst/gstqueryutils.c:
1478         * gst/gstqueryutils.h:
1479         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1480         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1481         (gst_queue_handle_src_query):
1482         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1483         (gst_element_query_position), (gst_element_query_convert),
1484         (intersect_caps_func), (gst_pad_query_position),
1485         (gst_pad_query_convert):
1486         * gst/gstutils.h:
1487         * tools/gst-inspect.c: (print_pad_info):
1488         * tools/gst-xmlinspect.c: (print_element_info):
1489         Remove old query functions. Ported old code.
1490         Added position/convert helper functions to gstutils.
1491         Reordered gstpad.c code, grouping relevant things.
1492         Remove gst_message_new(), always need to speficy a specific
1493         message.
1494
1495
1496 2005-05-09  Andy Wingo  <wingo@pobox.com>
1497
1498         * gst/gstiterator.h: Add some includes.
1499
1500         * gst/gstqueryutils.h: Include more headers.
1501
1502         * gst/gstpad.h:
1503         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1504         some uses of gst_pad_query.
1505
1506         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1507         NULL out parameters.
1508         (gst_query_new_position): New proc, allocates a new position
1509         query.
1510
1511         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1512         gstqueryutils.c to the build.
1513
1514         * gst/gststructure.c (gst_structure_set_valist): Implement with
1515         the generic G_VALUE_COLLECT.
1516         
1517 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1518
1519         * gst/Makefile.am: (gst_headers):
1520         Added gstqueryutils.h to the list of headers to install, that was
1521         a 'nachty' move wingo :)
1522
1523 2005-05-06  Andy Wingo  <wingo@pobox.com>
1524
1525         * gst/gstquery.h
1526         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1527         GstData, init a memchunk.
1528         (standard_definitions): Add a few query types, deprecate a few.
1529         (gst_query_get_type): New proc.
1530         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1531         implementation.
1532         (gst_query_new_application, gst_query_get_structure): New public
1533         procs.
1534
1535         * docs/design/draft-query.txt: Removed LINKS from the query types,
1536         because all the rest can be dispatched to other pads -- seemed
1537         ugly to have a query that couldn't be dispatched. internal_links
1538         is fine as a pad method.
1539
1540         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1541         in gstpad.c, but maintain binary compatibility for the moment.
1542         Will fix before 0.9 is out.
1543
1544         * gst/gstqueryutils.c: 
1545         * gst/gstqueryutils.h: New files, implement 3 methods for each
1546         query type: parse_query, parse_response, and set. Probably need an
1547         allocator as well.
1548
1549         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1550
1551         * gst/elements/gstfilesink.c (gst_filesink_query2):
1552         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1553         query_types, and formats methods.
1554
1555         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1556         (gst_pad_set_query2_function): New functions.
1557         (gst_real_pad_init): Set query2_default as the default query2
1558         function. Basically just dispatches to internally linked pads.
1559
1560         Needs review!
1561         
1562         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1563         without using the atomic operations. Only one thread can possibly
1564         be accessing the data at this point. Changed so as to avoid
1565         gst_atomic operations.
1566
1567 2005-05-06  Wim Taymans  <wim@fluendo.com>
1568
1569         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1570         Also set caps if we use the fallback buffer alloc.
1571
1572 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1573
1574         * docs/gst/Makefile.am:
1575         * docs/gst/gstreamer-docs.sgml:
1576         * docs/gst/gstreamer-sections.txt:
1577         * docs/gst/tmpl/gstatomic.sgml:
1578         * docs/gst/tmpl/gstmemchunk.sgml:
1579         * testsuite/elements/struct_i386.h:
1580         * win32/GStreamer.vcproj:
1581         * win32/Makefile:
1582           Purge GstAtomic stuff from docs and win32 makefiles as well
1583
1584 2005-05-06  Wim Taymans  <wim@fluendo.com>
1585
1586         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1587         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1588         * gst/gstpad.c: (gst_pad_peer_get_caps):
1589         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1590         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1591         (gst_queue_src_activate), (gst_queue_change_state):
1592         * gst/gstqueue.h:
1593         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1594         (intersect_caps_func):
1595         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1596         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1597         Some fixes for the peer_get_caps() change.
1598
1599 2005-05-06  Wim Taymans  <wim@fluendo.com>
1600
1601         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1602         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1603         (gst_basesink_activate):
1604         Actually do something with error codes returned from the push
1605         functions.
1606
1607 2005-05-06  Wim Taymans  <wim@fluendo.com>
1608
1609         * docs/design/part-element-sink.txt:
1610         * docs/design/part-element-source.txt:
1611         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1612         (gst_basesink_event), (gst_basesink_activate):
1613         * gst/base/gstbasesink.h:
1614         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1615         (gst_basesrc_activate):
1616         * gst/base/gstbasesrc.h:
1617         * gst/gstelement.c: (gst_element_pads_activate):
1618         Some more documentation.
1619         Fixed scheduling decision in _pads_activate().
1620
1621 2005-05-05  Andy Wingo  <wingo@pobox.com>
1622
1623         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1624         the test suite.
1625
1626 2005-05-05  Wim Taymans  <wim@fluendo.com>
1627
1628         * gst/base/Makefile.am:
1629         * gst/base/gstbasesink.h:
1630         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1631         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1632         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1633         (gst_collectpads_class_init), (gst_collectpads_init),
1634         (gst_collectpads_finalize), (gst_collectpads_new),
1635         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1636         (find_pad), (gst_collectpads_remove_pad),
1637         (gst_collectpads_is_active), (gst_collectpads_collect),
1638         (gst_collectpads_collect_range), (gst_collectpads_start),
1639         (gst_collectpads_stop), (gst_collectpads_peek),
1640         (gst_collectpads_pop), (gst_collectpads_available),
1641         (gst_collectpads_read), (gst_collectpads_flush),
1642         (gst_collectpads_chain):
1643         * gst/base/gstcollectpads.h:
1644         * gst/elements/Makefile.am:
1645         * gst/elements/gstelements.c:
1646         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1647         (gst_fakesink_get_times), (gst_fakesink_event),
1648         (gst_fakesink_preroll), (gst_fakesink_render):
1649         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1650         (gst_filesink_init), (gst_filesink_set_location),
1651         (gst_filesink_open_file), (gst_filesink_close_file),
1652         (gst_filesink_pad_query), (gst_filesink_event),
1653         (gst_filesink_render), (gst_filesink_change_state):
1654         * gst/elements/gstfilesink.h:
1655         Added object to help in making collect pad based elements.
1656         Ported filesink.
1657         Make event function in sink baseclass return gboolean.
1658
1659 2005-05-05  Wim Taymans  <wim@fluendo.com>
1660
1661         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1662         (gst_bin_get_by_name):
1663         * gst/gstbuffer.h:
1664         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1665         (gst_clock_finalize):
1666         * gst/gstdata.c: (gst_data_replace):
1667         * gst/gstdata.h:
1668         * gst/gstelement.c: (gst_element_request_pad),
1669         (gst_element_pads_activate):
1670         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1671         (gst_object_unref):
1672         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1673         (gst_pad_set_checkgetrange_function),
1674         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1675         (gst_pad_check_pull_range), (gst_pad_pull_range),
1676         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1677         (gst_pad_pause_task), (gst_pad_stop_task):
1678         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1679         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1680         Fix name lookup in GstBin.
1681         Added _data_replace() function and _buffer_replace()
1682         Use finalize method to clean up clock.
1683         Fix refcounting on request pads.
1684         Fix pad schedule mode error.
1685         Some more object refcounting debug info,
1686
1687
1688 2005-05-04  Andy Wingo <wingo@pobox.com>
1689
1690         * check/Makefile.am:
1691         * docs/gst/tmpl/gstatomic.sgml:
1692         * docs/gst/tmpl/gstplugin.sgml:
1693         * gst/base/gstbasesink.c: (gst_basesink_activate):
1694         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1695         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1696         (gst_basesrc_query), (gst_basesrc_set_property),
1697         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1698         (gst_basesrc_activate):
1699         * gst/base/gstbasesrc.h:
1700         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1701         (gst_base_transform_src_activate):
1702         * gst/elements/gstelements.c:
1703         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1704         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1705         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1706         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1707         (gst_type_find_element_checkgetrange),
1708         (gst_type_find_element_activate):
1709         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1710         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1711         (gst_caps_load_thyself):
1712         * gst/gstelement.c: (gst_element_pads_activate),
1713         (gst_element_save_thyself), (gst_element_restore_thyself):
1714         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1715         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1716         * gst/gstpad.h:
1717         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1718         (gst_xml_parse_file), (gst_xml_parse_memory),
1719         (gst_xml_get_element), (gst_xml_make_element):
1720         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1721         (_file_index_id_save_xml), (gst_file_index_commit):
1722         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1723         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1724         (load_paths):
1725         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1726         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1727         * tools/gst-complete.c: (main):
1728         * tools/gst-compprep.c: (main):
1729         * tools/gst-inspect.c: (print_element_properties_info):
1730         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1731         * tools/gst-xmlinspect.c: (print_element_properties):
1732         GCC 4 fixen.
1733         
1734 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1735
1736         * gst/gstplugin.c: (gst_plugin_check_module),
1737         (gst_plugin_check_file), (gst_plugin_load_file):
1738             apply patch from #172526 to make register work on MacOSX
1739
1740 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1741
1742         * docs/gst/tmpl/gstconfig.sgml:
1743         * gst/gstconfig.h.in:
1744           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1745         * testsuite/debug/printf_extension.c: (main):
1746           Do not use GST_PTR_FORMAT on pointers to types with
1747           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1748         * testsuite/elements/property.h:
1749           use correct printf format
1750
1751 2005-05-02  Wim Taymans  <wim@fluendo.com>
1752
1753         * docs/design/draft-push-pull.txt:
1754         * docs/design/draft-query.txt:
1755         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1756         (gst_basesrc_start):
1757         Added draft for new query API.
1758         Added draft for better selecting scheduling methods.
1759         Make basesrc ignore length if the subclass does not support
1760         it.
1761
1762 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1763
1764         * gst/Makefile.am:
1765           possible fixes for automake-1.5 - _LIBADD is reserved
1766
1767 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1768
1769         * docs/faq/Makefile.am:
1770         * docs/manual/Makefile.am:
1771         * docs/manuals.mak:
1772         * docs/pwg/Makefile.am:
1773         * gst/Makefile.am:
1774           possible fixes for automake-1.5
1775
1776 2005-04-28  Wim Taymans  <wim@fluendo.com>
1777
1778         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1779         (gst_basesink_pad_getcaps), (gst_basesink_init),
1780         (gst_basesink_do_sync):
1781         * gst/gstclock.c: (gst_clock_entry_new):
1782         * gst/gstevent.c: (gst_event_discont_get_value):
1783         * gst/gstpipeline.c: (pipeline_bus_handler),
1784         (gst_pipeline_change_state):
1785         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1786         Better debugging of clocking info.
1787         Allow NULL values when getting discont values.
1788
1789 2005-04-27  Wim Taymans  <wim@fluendo.com>
1790
1791         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1792         * check/gst/gstpad.c: (gst_pad_suite):
1793         Increase timeout for checks.
1794
1795 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1796
1797         * check/Makefile.am:
1798           fix the broken rule for cleanup.  Apparently this rule is
1799           only needed on FC2, so maybe this warrants further autotool
1800           inspection.
1801
1802 2005-04-26  Wim Taymans  <wim@fluendo.com>
1803
1804         * gst/gsttrashstack.h:
1805         Ooohh. a nasty one! After having a failed pop() from the stack,
1806         it's possible that the stack is empty. In that case, don't
1807         follow the NULL pointer.
1808
1809 2005-04-25  Wim Taymans  <wim@fluendo.com>
1810
1811         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1812         (gst_pad_set_checkgetrange_function),
1813         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1814         (gst_pad_check_pull_range), (gst_pad_pull_range),
1815         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1816         (gst_pad_pause_task), (gst_pad_stop_task):
1817         * gst/gstplugin.c: (gst_plugin_load):
1818         * gst/gstplugin.h:
1819         Remove gst_library_load as it does more harm than good with
1820         the new g_module flags.
1821         Revert bogus caps template check in pad linking, pad caps
1822         are important when linking not the template, which is more
1823         general than the current caps.
1824
1825 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1826
1827         * gst/autoplug/.cvsignore:
1828         * gst/autoplug/Makefile.am:
1829         * gst/autoplug/gstsearchfuncs.c:
1830         * gst/autoplug/gstsearchfuncs.h:
1831         * gst/autoplug/gstspider.c:
1832         * gst/autoplug/gstspider.h:
1833         * gst/autoplug/gstspideridentity.c:
1834         * gst/autoplug/gstspideridentity.h:
1835         * gst/autoplug/spidertest.c:
1836           Die, spider, die.
1837
1838 2005-04-25  Wim Taymans  <wim@fluendo.com>
1839
1840         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1841         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
1842         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
1843         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
1844         * gst/gstpad.h:
1845         Added stubs for unimplemented functions. 
1846
1847 2005-04-24  David Schleef  <ds@schleef.org>
1848
1849         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
1850         please fix.
1851
1852 2005-04-24  David Schleef  <ds@schleef.org>
1853
1854         Convert everything from GstAtomicInt to g_atomic_int_*, and
1855         remove gstatomic.
1856         * gst/Makefile.am:
1857         * gst/gstatomic.c:
1858         * gst/gstatomic.h:
1859         * gst/gstatomic_impl.h:
1860         * gst/gstbuffer.c:
1861         * gst/gstcaps.c:
1862         * gst/gstcaps.h:
1863         * gst/gstclock.c:
1864         * gst/gstclock.h:
1865         * gst/gstdata.c:
1866         * gst/gstdata.h:
1867         * gst/gstdata_private.h:
1868         * gst/gstevent.c:
1869         * gst/gstinfo.c:
1870         * gst/gstinfo.h:
1871         * gst/gstmessage.c:
1872         * gst/gstobject.c:
1873         * gst/gstobject.h:
1874         * gst/gststructure.c:
1875         * gst/gststructure.h:
1876         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
1877         * gst/gstutils.h:
1878
1879 2005-04-24  David Schleef  <ds@schleef.org>
1880
1881         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
1882         make the regressions tests work.  Remove some code that is no
1883         longer true.
1884         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
1885         Disable warning for pads without templates.
1886
1887 2005-04-24  David Schleef  <ds@schleef.org>
1888
1889         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
1890         functions that handle filtered links.
1891         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
1892         removed functions.
1893         * gst/gstutils.c: Fix/remove utility functions that handle
1894         filtered caps.
1895         * gst/gstutils.h:
1896         * gst/gstvalue.c: Add serialization/deserialization of caps
1897         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
1898         requires fixing so that the filter caps notation creates
1899         a capsfilter element and sets the filter_caps property.  I
1900         think everyone probably wants to keep the shorthand notation.
1901         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
1902         * docs/gst/tmpl/gstpad.sgml:
1903
1904         * gst/elements/gstelements.c: Register capsfilter element.
1905         * gst/Makefile.am: fix spacing
1906         * docs/random/ds/0.9-suggested-changes: random
1907
1908 2005-04-23  David Schleef  <ds@schleef.org>
1909
1910         * gst/elements/Makefile.am:
1911         * gst/elements/gstcapsfilter.c: New element that acts like an
1912         identity, but filters caps.  Will eventually replace filtered
1913         caps in pad linking.
1914         * gst/gstutils.c: (gst_element_create_all_pads): New function
1915         to create all the ALWAYS pads that are registered with an
1916         element class.  This functionality should eventually be
1917         merged in with GstElement initialization.
1918         * gst/gstutils.h:
1919         * testsuite/trigger/README: part of trigger test code that should
1920         have been checked in a long time ago.
1921
1922 2005-04-23  David Schleef  <ds@schleef.org>
1923
1924         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
1925         needed with new versions of libtool (nobody will confirm this),
1926         and hard to carry around.
1927         * gst/autoplug/Makefile.am:
1928         * gst/base/Makefile.am:
1929         * gst/elements/Makefile.am:
1930         * gst/indexers/Makefile.am:
1931         * gst/schedulers/Makefile.am:
1932         * libs/gst/bytestream/Makefile.am:
1933         * libs/gst/control/Makefile.am:
1934         * libs/gst/dataprotocol/Makefile.am:
1935         * libs/gst/getbits/Makefile.am:
1936
1937 2005-04-21  Wim Taymans  <wim@fluendo.com>
1938
1939         * docs/design/draft-push-pull.txt:
1940         * docs/design/part-MT-refcounting.txt:
1941         * docs/design/part-TODO.txt:
1942         * docs/design/part-caps.txt:
1943         * docs/design/part-events.txt:
1944         * docs/design/part-gstbus.txt:
1945         * docs/design/part-gstpipeline.txt:
1946         * docs/design/part-messages.txt:
1947         * docs/design/part-push-pull.txt:
1948         * docs/design/part-query.txt:
1949         Some more docs.
1950
1951 2005-04-21  Wim Taymans  <wim@fluendo.com>
1952
1953         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
1954         (gst_message_new), (gst_message_new_error),
1955         (gst_message_new_warning), (gst_message_new_tag),
1956         (gst_message_new_state_changed), (gst_message_new_application),
1957         (gst_message_get_structure):
1958         * gst/gstmessage.h:
1959         * gst/gststructure.c: (gst_structure_set_parent_refcount),
1960         (gst_structure_copy_conditional):
1961         Use parent refcount in GstMessage to ensure GstStructure
1962         consistency.
1963         Cleaned up headers a bit.
1964         
1965
1966 2005-04-20  Wim Taymans  <wim@fluendo.com>
1967
1968         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1969         (gst_basesink_pad_getcaps), (gst_basesink_init),
1970         (gst_basesink_chain_unlocked):
1971         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
1972         (gst_type_find_helper):
1973         * gst/elements/gsttypefindelement.c:
1974         (gst_type_find_element_have_type), (gst_type_find_element_init),
1975         (stop_typefinding), (gst_type_find_element_handle_event),
1976         (find_suggest), (gst_type_find_element_chain),
1977         (gst_type_find_element_checkgetrange),
1978         (gst_type_find_element_getrange), (do_typefind),
1979         (gst_type_find_element_activate):
1980         * gst/gstbuffer.c: (_gst_buffer_sub_free),
1981         (gst_buffer_default_free), (gst_buffer_default_copy),
1982         (gst_buffer_set_caps):
1983         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
1984         (gst_caps_replace):
1985         * gst/gstmessage.c: (gst_message_new),
1986         (gst_message_new_state_changed):
1987         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1988         (gst_pad_set_checkgetrange_function),
1989         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
1990         (gst_pad_set_caps), (gst_pad_check_pull_range),
1991         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
1992         * gst/gstpad.h:
1993         * gst/gsttypefind.c: (gst_type_find_register):
1994         Make gst_caps_replace() work like other _replace() functions.
1995         Use _caps_replace() where possible.
1996         Make sure _message_new() initialises its field.
1997         Add gst_static_pad_template_get_caps()
1998
1999
2000 2005-04-18  Andy Wingo  <wingo@pobox.com>
2001
2002         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
2003         on the peer, not the pad. I think that was a typo. Pass an extra
2004         arg to see if random access is possible. Activate the pads as
2005         PULL_RANGE if possible.
2006
2007         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
2008
2009         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
2010         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
2011         to PROP_....
2012
2013 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2014
2015         * docs/faq/using.xml:
2016           Add note on gstreamer-properties (#154996).
2017
2018 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2019
2020         * docs/random/bbb/optional-properties:
2021           Some analysis on optional properties.
2022
2023 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2024
2025         * docs/gst/tmpl/gstelementfactory.sgml:
2026         * gst/gstelement.h:
2027         * gst/gstelementfactory.c: (gst_element_factory_init),
2028         (gst_element_factory_cleanup), (gst_element_register),
2029         (__gst_element_factory_add_static_pad_template),
2030         (gst_element_factory_get_static_pad_templates),
2031         (gst_element_factory_can_src_caps),
2032         (gst_element_factory_can_sink_caps):
2033         * gst/registries/Makefile.am:
2034         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
2035         (gst_xml_registry_class_init), (gst_xml_registry_init),
2036         (gst_xml_registry_new), (gst_xml_registry_set_property),
2037         (gst_xml_registry_get_property), (get_time), (make_dir),
2038         (gst_xml_registry_get_perms_func),
2039         (plugin_times_older_than_recurse), (plugin_times_older_than),
2040         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
2041         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
2042         (add_to_char_array), (read_string), (read_uint), (read_enum),
2043         (load_pad_template), (load_feature), (load_plugin), (load_paths),
2044         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
2045         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
2046         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
2047         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
2048         (gst_xml_registry_rebuild):
2049         * gst/registries/gstlibxmlregistry.h:
2050         * tools/gst-compprep.c: (main):
2051         * tools/gst-inspect.c: (print_pad_templates_info):
2052         * tools/gst-xmlinspect.c: (print_element_info):
2053           Use libxml2 for registry parsing, use staticpadtemplates in
2054           elementfactories. Makes gst_init() +/- 10x faster.
2055
2056 2005-04-12  Wim Taymans  <wim@fluendo.com>
2057
2058         * gst/base/Makefile.am:
2059         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2060         (gst_basesink_pad_getcaps), (gst_basesink_init),
2061         (gst_basesink_event), (gst_basesink_change_state):
2062         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2063         (gst_basesrc_init), (gst_basesrc_query),
2064         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2065         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2066         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2067         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2068         (gst_basesrc_stop), (gst_basesrc_activate),
2069         (gst_basesrc_change_state):
2070         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2071         (helper_find_suggest), (gst_type_find_helper):
2072         * gst/base/gsttypefindhelper.h:
2073         * gst/elements/Makefile.am:
2074         * gst/elements/gstelements.c:
2075         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2076         (gst_fakesink_get_times), (gst_fakesink_event),
2077         (gst_fakesink_preroll), (gst_fakesink_render):
2078         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2079         (gst_fakesrc_init), (gst_fakesrc_event_handler),
2080         (gst_fakesrc_get_property), (gst_fakesrc_create),
2081         (gst_fakesrc_start), (gst_fakesrc_stop):
2082         * gst/elements/gstfakesrc.h:
2083         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
2084         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2085         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2086         (gst_filesrc_create_read), (gst_filesrc_create),
2087         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
2088         (gst_filesrc_start):
2089         * gst/elements/gsttypefindelement.c:
2090         (gst_type_find_element_have_type), (gst_type_find_element_init),
2091         (start_typefinding), (stop_typefinding), (push_buffer_store),
2092         (gst_type_find_element_handle_event),
2093         (gst_type_find_element_chain),
2094         (gst_type_find_element_checkgetrange),
2095         (gst_type_find_element_getrange), (do_typefind),
2096         (gst_type_find_element_activate),
2097         (gst_type_find_element_change_state):
2098         * gst/elements/gsttypefindelement.h:
2099         * gst/gstpipeline.c: (pipeline_bus_handler):
2100         Added typefind helper.
2101         Small preroll fix in the base sink.
2102         Disable typefind code in basesrc.
2103         Crude port of typefindelement.
2104         Fakesrc cleanups.
2105
2106
2107 2005-04-11  Wim Taymans  <wim@fluendo.com>
2108
2109         * check/gst/gstbus.c: (gstbus_suite):
2110         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2111         * check/gstcheck.h:
2112           Fix up the timeout so that the test does not fail.
2113
2114 2005-04-06  Wim Taymans  <wim@fluendo.com>
2115
2116         * gst/base/README:
2117         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2118         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2119         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2120         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2121         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2122         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2123         (gst_basesrc_stop), (gst_basesrc_activate),
2124         (gst_basesrc_change_state), (basesrc_find_peek),
2125         (basesrc_find_suggest), (gst_basesrc_type_find):
2126         * gst/base/gstbasesrc.h:
2127         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2128         (gst_filesrc_class_init), (gst_filesrc_init),
2129         (gst_filesrc_finalize), (gst_filesrc_set_location),
2130         (gst_filesrc_set_property), (gst_filesrc_get_property),
2131         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2132         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2133         (gst_filesrc_create_read), (gst_filesrc_create),
2134         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2135         * gst/elements/gstfilesrc.h:
2136         * gst/gstelement.c: (gst_element_get_state_func),
2137         (gst_element_lost_state), (gst_element_pads_activate):
2138         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2139         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2140         (gst_pad_pull_range):
2141         * gst/gstpad.h:
2142         More work on the generic source base class, implement seeking,
2143         query.
2144         Make filesrc extend the base source class.
2145         Added gst_pad_set_checkgetrange_function to GstPad.
2146
2147 2005-04-06  Andy Wingo  <wingo@pobox.com>
2148
2149         * pkgconfig/gstreamer-base.pc.in:
2150         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2151
2152         * pkgconfig/Makefile.am:
2153         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2154
2155 2005-04-04  Wim Taymans  <wim@fluendo.com>
2156
2157         * gst/base/Makefile.am:
2158         * gst/base/README:
2159         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2160         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2161         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2162         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2163         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2164         (gst_basesrc_base_init), (gst_basesrc_class_init),
2165         (gst_basesrc_init), (gst_basesrc_get_formats),
2166         (gst_basesrc_get_query_types), (gst_basesrc_query),
2167         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2168         (gst_basesrc_set_property), (gst_basesrc_get_property),
2169         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2170         (gst_basesrc_loop), (gst_basesrc_activate),
2171         (gst_basesrc_change_state):
2172         * gst/base/gstbasesrc.h:
2173         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2174         (gst_fakesrc_class_init), (gst_fakesrc_init),
2175         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2176         (gst_fakesrc_get_property), (gst_fakesrc_create):
2177         * gst/elements/gstfakesrc.h:
2178         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2179         (gst_filesrc_open_file), (gst_filesrc_loop),
2180         (gst_filesrc_activate), (filesrc_find_peek),
2181         (gst_filesrc_type_find):
2182         Made base source class, make fakesrc extend it.
2183         Add comments to basesink class.
2184         Some filesrc cleanup.
2185
2186 2005-03-31  David Schleef  <ds@schleef.org>
2187
2188         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2189         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2190         expected to link against libgstreamer.
2191         * gst/base/Makefile.am: link against libgstreamer
2192         * gst/elements/Makefile.am: same
2193
2194 2005-03-31  Andy Wingo  <wingo@pobox.com>
2195
2196         * tests/instantiate/Makefile.am:
2197         * tests/instantiate/caps.c: Add test to test speed of caps copy
2198         and free.
2199
2200         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2201         GMemChunk to be fair.
2202
2203         * gst/gsttrashstack.h: Remove warning about using the fallback
2204         trash stack implementation, it's still faster than malloc.
2205
2206 2005-03-30  Andy Wingo  <wingo@pobox.com>
2207
2208         * tests/complexity.c: Add a copyright.
2209
2210 2005-03-31  Wim Taymans  <wim@fluendo.com>
2211
2212         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2213         (gst_base_transform_class_init), (gst_base_transform_init),
2214         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2215         (gst_base_transform_get_property),
2216         (gst_base_transform_sink_activate),
2217         (gst_base_transform_src_activate),
2218         (gst_base_transform_change_state):
2219         * gst/base/gstbasetransform.h:
2220         * gst/elements/gstidentity.c: (gst_identity_class_init),
2221         (gst_identity_event), (gst_identity_check_perfect),
2222         (gst_identity_transform), (gst_identity_start),
2223         (gst_identity_stop):
2224         Added start/stop methods to transform base class so subclasses 
2225         don't need to deal with state changes even.
2226
2227 2005-03-31  Wim Taymans  <wim@fluendo.com>
2228
2229         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2230         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2231         * gst/gstevent.h:
2232         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2233         (gst_pad_pull_range):
2234         Added rate to the discont event to prepare for variable speed
2235         and reverse playback.
2236
2237 2005-03-29  David Schleef  <ds@schleef.org>
2238
2239         * configure.ac:
2240         * testsuite/trigger/Makefile.am:
2241         * testsuite/trigger/trigger.c: A little example program to show
2242         how trigger-based elements can work.
2243
2244 2005-03-29  Wim Taymans  <wim@fluendo.com>
2245
2246         * gst/base/Makefile.am:
2247         * gst/base/README:
2248         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2249         (gst_basesink_base_init), (gst_basesink_class_init),
2250         (gst_basesink_pad_getcaps), (gst_basesink_init),
2251         (gst_basesink_activate), (gst_basesink_change_state):
2252         * gst/base/gstbasesink.h:
2253         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2254         (gst_base_transform_base_init), (gst_base_transform_finalize),
2255         (gst_base_transform_class_init), (gst_base_transform_init),
2256         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2257         (gst_base_transform_event), (gst_base_transform_getrange),
2258         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2259         (gst_base_transform_set_property),
2260         (gst_base_transform_get_property),
2261         (gst_base_transform_sink_activate),
2262         (gst_base_transform_src_activate),
2263         (gst_base_transform_change_state):
2264         * gst/base/gstbasetransform.h:
2265         * gst/elements/gstidentity.c: (gst_identity_finalize),
2266         (gst_identity_class_init), (gst_identity_init),
2267         (gst_identity_event), (gst_identity_check_perfect),
2268         (gst_identity_transform), (gst_identity_set_property),
2269         (gst_identity_get_property), (gst_identity_change_state):
2270         * gst/elements/gstidentity.h:
2271         * gst/gstelement.c: (gst_element_get_state_func),
2272         (gst_element_lost_state), (gst_element_pads_activate):
2273         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2274         (gst_pad_check_pull_range), (gst_pad_pull_range):
2275         * gst/gstpad.h:
2276         Simplify pad activation.
2277         Added function to check if pull_range can be performed.
2278         Error out when pulling inactive or flushing pads.
2279         Removed const from refcounted types as it does not make sense.
2280         Simplify pad templates in basesink
2281         Added base class for simple 1-to-1 transforms.
2282         Make identity subclass the base transform.
2283
2284 2005-03-29  Andy Wingo  <wingo@pobox.com>
2285
2286         * docs/libs/gstreamer-libs-overrides.txt: 
2287         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2288         really don't understand what's going on, but like whatever. I want
2289         green buildbot!
2290
2291         * docs/gst/Makefile.am:
2292         * docs/libs/Makefile.am: Dist the overrides files.
2293
2294         * check/Makefile.am (clean-local): Remove .libs directories.
2295
2296         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2297         elements to EXTRA_DIST, so po/ files are happy.
2298
2299         * po/POTFILES.in: Er, remove it here.
2300
2301         * po/POTFILES: Remove gstspider.c.
2302
2303         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2304
2305         * docs/libs/gstreamer-libs-docs.sgml: 
2306         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2307         bytestream.
2308
2309         * tests/complexity.c (main): Set the length of the preroll queue
2310         on the sinks to prevent a lockup.
2311
2312         * libs/gst/dataprotocol/Makefile.am: 
2313         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2314         the same as the one in check/gst-libs/gdp.c.
2315
2316         * po/, docs/gst/: Commit automatic changes to docs and po files.
2317
2318         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2319         the versioned libgstbase.
2320
2321         * check/Makefile.am: Depend on an unversioned gst-register, seems
2322         to make autoconf happier.
2323
2324         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2325
2326 2005-03-28  Wim Taymans  <wim@fluendo.com>
2327
2328         * configure.ac:
2329         * docs/design/part-gstelement.txt:
2330         * docs/design/part-negotiation.txt:
2331         * docs/design/part-preroll.txt:
2332         * docs/design/part-scheduling.txt:
2333         * docs/design/part-states.txt:
2334         * gst/Makefile.am:
2335         * gst/base/Makefile.am:
2336         * gst/base/README:
2337         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2338         (gst_basesink_base_init), (gst_basesink_class_init),
2339         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2340         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2341         (gst_basesink_set_pad_functions),
2342         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2343         (gst_basesink_set_property), (gst_basesink_get_property),
2344         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2345         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2346         (gst_basesink_preroll_queue_push),
2347         (gst_basesink_preroll_queue_empty),
2348         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2349         (gst_basesink_event), (gst_basesink_get_times),
2350         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2351         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2352         (gst_basesink_loop), (gst_basesink_activate),
2353         (gst_basesink_change_state):
2354         * gst/base/gstbasesink.h:
2355         * gst/elements/Makefile.am:
2356         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2357         (gst_fakesink_class_init), (gst_fakesink_init),
2358         (gst_fakesink_set_property), (gst_fakesink_get_property),
2359         (gst_fakesink_get_times), (gst_fakesink_event),
2360         (gst_fakesink_preroll), (gst_fakesink_render),
2361         (gst_fakesink_change_state):
2362         * gst/elements/gstfakesink.h:
2363         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2364         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2365         * gst/gstelement.c: (gst_element_add_pad),
2366         (gst_element_get_state_func), (gst_element_abort_state),
2367         (gst_element_commit_state), (gst_element_lost_state),
2368         (gst_element_set_state), (gst_element_pads_activate):
2369         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2370         * gst/gstpipeline.c: (gst_pipeline_send_event),
2371         (gst_pipeline_change_state):
2372         Added state change code.
2373         Added/updated docs.
2374         Added sink base class, make fakesink extend the base class.
2375         Small cleanups in GstPipeline.
2376
2377 2005-03-26  David Schleef  <ds@schleef.org>
2378
2379         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2380         is broken and should be implemented in a different library.
2381         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2382         * gst/gst.h: remove gstcpu.h
2383         * gst/gstcpu.c: remove
2384         * gst/gstcpu.h: remove
2385         * gst/Makefile.am.future: Remove this file.  It's ancient.
2386
2387 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2388
2389         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2390         (gst_bin_send_event):
2391           Add default event/set_manager handlers. The set_manager handler
2392           takes care that the manager is distributed over kids that were
2393           already in the bin before the manager was set. The event handler
2394           is a utility virtual function that sends the event over all sinks,
2395           so that gst_element_send_event (bin, event); has the expected
2396           behaviour.
2397         * gst/gstpad.c: (gst_pad_event_default):
2398           Re-install default event handling for discontinuities, so that
2399           seeking works without requiring hacks in applications or extra
2400           code in sinks.
2401         * gst/gstpipeline.c: (gst_pipeline_class_init),
2402         (gst_pipeline_send_event):
2403           Half hack, half utility: set a pipeline to PAUSED for seek events,
2404           since that is the only way we can guarantee a/v sync. Means that
2405           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2406           and it "just works".
2407
2408 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2409
2410         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2411           Lock/unlock mismatch.
2412
2413 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2414
2415         * docs/faq/gst-uninstalled:
2416           add gst-plugins-base
2417         * docs/gst/Makefile.am:
2418           don't error out until docs are fixed
2419         * docs/gst/gstreamer.types:
2420           remove thread
2421
2422 2005-03-22  Wim Taymans  <wim@fluendo.com>
2423
2424         * check/Makefile.am:
2425         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2426         * gst/gststructure.c: (gst_structure_set_valist),
2427         (gst_structure_copy_conditional):
2428         Activated more tests.
2429         Added message test.
2430         Added G_TYPE_POINTER to GstStructure.
2431         
2432
2433 2005-03-22  Wim Taymans  <wim@fluendo.com>
2434
2435         * docs/design/part-TODO.txt:
2436         * docs/design/part-events.txt:
2437         * docs/design/part-gstbin.txt:
2438         * docs/design/part-gstbus.txt:
2439         * docs/design/part-gstpipeline.txt:
2440         * docs/design/part-messages.txt:
2441         * gst/gstbus.c:
2442         * gst/gstmessage.c:
2443         Docs updates
2444
2445 2005-03-21  Wim Taymans  <wim@fluendo.com>
2446
2447         * gst/gstbus.c: (gst_bus_post):
2448         Fix copy-and-paste error.
2449
2450 2005-03-21  Wim Taymans  <wim@fluendo.com>
2451
2452         * check/Makefile.am:
2453         * gst/Makefile.am:
2454         * gst/elements/Makefile.am:
2455         * gst/elements/gstelements.c:
2456         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2457         (gst_fakesink_event), (gst_fakesink_chain):
2458         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2459         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2460         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2461         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2462         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2463         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2464         (gst_fakesrc_loop), (gst_fakesrc_activate),
2465         (gst_fakesrc_change_state):
2466         * gst/elements/gstfakesrc.h:
2467         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2468         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2469         (gst_filesrc_open_file), (gst_filesrc_loop),
2470         (gst_filesrc_activate), (gst_filesrc_change_state),
2471         (filesrc_find_peek), (filesrc_find_suggest),
2472         (gst_filesrc_type_find):
2473         * gst/elements/gstidentity.c: (gst_identity_finalize),
2474         (gst_identity_class_init), (gst_identity_init),
2475         (gst_identity_proxy_getcaps), (identity_queue_push),
2476         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2477         (gst_identity_getrange), (gst_identity_chain),
2478         (gst_identity_sink_loop), (gst_identity_src_loop),
2479         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2480         (gst_identity_set_property), (gst_identity_get_property),
2481         (gst_identity_change_state):
2482         * gst/elements/gstidentity.h:
2483         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2484         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2485         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2486         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2487         (gst_tee_sink_activate):
2488         * gst/elements/gsttee.h:
2489         * gst/gst.c: (gst_register_core_elements), (init_post):
2490         * gst/gst.h:
2491         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2492         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2493         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2494         (gst_bin_change_state):
2495         * gst/gstbin.h:
2496         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2497         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2498         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2499         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2500         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2501         (bus_watch_callback), (bus_watch_destroy),
2502         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2503         (poll_timeout), (gst_bus_poll):
2504         * gst/gstbus.h:
2505         * gst/gstcaps.h:
2506         * gst/gstdata.h:
2507         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2508         (gst_element_post_message), (gst_element_message_full),
2509         (gst_element_get_state_func), (gst_element_get_state),
2510         (gst_element_abort_state), (gst_element_commit_state),
2511         (gst_element_lost_state), (gst_element_set_state),
2512         (gst_element_pads_activate), (gst_element_change_state),
2513         (gst_element_dispose), (gst_element_set_manager_func),
2514         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2515         (gst_element_set_manager), (gst_element_get_manager),
2516         (gst_element_set_bus), (gst_element_get_bus),
2517         (gst_element_set_scheduler), (gst_element_get_scheduler):
2518         * gst/gstelement.h:
2519         * gst/gstevent.c: (gst_event_new_segment_seek),
2520         (gst_event_new_flush):
2521         * gst/gstevent.h:
2522         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2523         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2524         (gst_message_new_eos), (gst_message_new_error),
2525         (gst_message_new_warning), (gst_message_new_tag),
2526         (gst_message_new_state_changed), (gst_message_new_application),
2527         (gst_message_get_structure), (gst_message_parse_tag),
2528         (gst_message_parse_state_changed), (gst_message_parse_error),
2529         (gst_message_parse_warning):
2530         * gst/gstmessage.h:
2531         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2532         (gst_real_pad_set_property), (gst_pad_set_active),
2533         (gst_pad_is_active), (gst_pad_set_blocked_async),
2534         (gst_pad_set_blocked), (gst_pad_is_blocked),
2535         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2536         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2537         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2538         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2539         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2540         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2541         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2542         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2543         (gst_pad_set_caps), (gst_pad_configure_sink),
2544         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2545         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2546         (gst_real_pad_dispose), (gst_real_pad_finalize),
2547         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2548         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2549         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2550         * gst/gstpad.h:
2551         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2552         (pipeline_bus_handler), (gst_pipeline_change_state),
2553         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2554         * gst/gstpipeline.h:
2555         * gst/gstprobe.h:
2556         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2557         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2558         (gst_queue_link_src), (gst_queue_bufferalloc),
2559         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2560         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2561         (gst_queue_loop), (gst_queue_handle_src_event),
2562         (gst_queue_handle_src_query), (gst_queue_src_activate),
2563         (gst_queue_change_state):
2564         * gst/gstqueue.h:
2565         * gst/gstscheduler.c: (gst_scheduler_init),
2566         (gst_scheduler_dispose), (gst_scheduler_create_task),
2567         (gst_scheduler_factory_create):
2568         * gst/gstscheduler.h:
2569         * gst/gststructure.c: (gst_structure_get_type),
2570         (gst_structure_copy_conditional):
2571         * gst/gststructure.h:
2572         * gst/gsttaginterface.h:
2573         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2574         (gst_task_init), (gst_task_dispose), (gst_task_create),
2575         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2576         (gst_task_pause):
2577         * gst/gsttask.h:
2578         * gst/gstthread.c:
2579         * gst/gstthread.h:
2580         * gst/gsttypes.h:
2581         * gst/schedulers/Makefile.am:
2582         * gst/schedulers/cothreads_compat.h:
2583         * gst/schedulers/entryscheduler.c:
2584         * gst/schedulers/faircothreads.c:
2585         * gst/schedulers/faircothreads.h:
2586         * gst/schedulers/fairscheduler.c:
2587         * gst/schedulers/gstbasicscheduler.c:
2588         * gst/schedulers/gstoptimalscheduler.c:
2589         * gst/schedulers/gthread-cothreads.h:
2590         * gst/schedulers/threadscheduler.c:
2591         (gst_thread_scheduler_task_get_type),
2592         (gst_thread_scheduler_task_class_init),
2593         (gst_thread_scheduler_task_init),
2594         (gst_thread_scheduler_task_start),
2595         (gst_thread_scheduler_task_stop),
2596         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2597         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2598         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2599         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2600         (plugin_init):
2601         * libs/gst/Makefile.am:
2602         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2603         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2604         (gst_file_pad_parent_set):
2605         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2606         (gst_dp_event_from_packet):
2607         * tests/complexity.c: (main):
2608         * tests/mass_elements.c: (main):
2609         * testsuite/states/locked.c: (message_received), (main):
2610         * testsuite/states/parent.c: (main):
2611         * tools/gst-inspect.c: (print_element_flag_info),
2612         (print_implementation_info), (print_pad_info):
2613         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2614         (main):
2615         * tools/gst-md5sum.c: (event_loop), (main):
2616         * tools/gst-typefind.c: (main):
2617         * tools/gst-xmlinspect.c: (print_element_info):
2618         Next big merge.
2619         Added GstBus for mainloop integration.
2620         Added GstMessage for sending notifications on the bus.
2621         Added GstTask as an abstraction for pipeline entry points.
2622         Removed GstThread.
2623         Removed Schedulers.
2624         Simplified GstQueue for multithreaded core.
2625         Made _link threadsafe, removed old capsnego.
2626         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2627         Added pad blocking functions.
2628         Reworked scheduling functions in GstPad to prepare for
2629         scheduling updates soon.
2630         Moved events out of data stream.
2631         Simplified GstEvent types.
2632         Added return values to push/pull.
2633         Removed clocking from GstElement.
2634         Added prototypes for state change function for next merge.
2635         Removed iterate from bins and state change management.
2636         Fixed some elements, disabled others for now.
2637         Fixed -inspect and -launch.
2638         Added check for GstBus.
2639
2640 2005-03-10  Wim Taymans  <wim@fluendo.com>
2641
2642         * docs/design/part-MT-refcounting.txt:
2643         * docs/design/part-clocks.txt:
2644         * docs/design/part-gstelement.txt:
2645         * docs/design/part-gstobject.txt:
2646         * docs/design/part-standards.txt:
2647         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2648         (gst_bin_remove_func), (gst_bin_remove):
2649         * gst/gstbin.h:
2650         * gst/gstbuffer.c:
2651         * gst/gstcaps.h:
2652         * testsuite/clock/clock1.c: (main):
2653         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2654         (main):
2655         * testsuite/dlopen/loadgst.c: (do_test):
2656         * testsuite/refcounting/bin.c: (add_remove_test1),
2657         (add_remove_test2), (main):
2658         * testsuite/refcounting/element.c: (main):
2659         * testsuite/refcounting/element_pad.c: (main):
2660         * testsuite/refcounting/pad.c: (main):
2661         * tools/gst-launch.c: (sigint_handler_sighandler):
2662         * tools/gst-typefind.c: (main):
2663         Doc updates.
2664         Added doc about clock.
2665         removed gst_bin_iterate_recurse_up(), marked methods
2666         for removal.
2667         Fix more testsuites.
2668
2669 2005-03-09  Wim Taymans  <wim@fluendo.com>
2670
2671         * gst/gstpad.c: (gst_pad_get_direction),
2672         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2673         (gst_pad_collect_valist):
2674         * testsuite/bins/interface.c: (main):
2675         * testsuite/caps/audioscale.c: (test_caps):
2676         * testsuite/caps/caps.c: (test1), (test2), (test3):
2677         * testsuite/caps/deserialize.c: (main):
2678         * testsuite/caps/enumcaps.c: (main):
2679         * testsuite/caps/filtercaps.c: (main):
2680         * testsuite/caps/intersect2.c: (main):
2681         * testsuite/caps/random.c: (main):
2682         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2683         * testsuite/caps/sets.c: (check_caps):
2684         * testsuite/caps/simplify.c: (check_caps), (main):
2685         * testsuite/caps/subtract.c: (check_caps):
2686         Fix _pad_get_direction wrt ghostpads.
2687         Fix caps testsuite.
2688
2689 2005-03-09  Wim Taymans  <wim@fluendo.com>
2690
2691         * check/Makefile.am:
2692         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2693         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2694         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2695         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2696         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2697         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2698         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2699         (bin_element_is_sink), (gst_bin_iterate_sinks),
2700         (gst_bin_iterate_all_by_interface):
2701         * gst/gstbin.h:
2702         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2703         (gst_element_change_state), (gst_element_dispose),
2704         (gst_element_finalize), (gst_element_set_loop_function):
2705         * gst/gstelement.h:
2706         * gst/gstiterator.c: (find_custom_fold_func):
2707         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2708         (gst_pad_collectv), (gst_pad_collect_valist),
2709         (gst_pad_template_new):
2710         * gst/gstpipeline.c: (gst_pipeline_class_init),
2711         (gst_pipeline_dispose), (gst_pipeline_set_property),
2712         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2713         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2714         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2715         * gst/gstutils.h:
2716         * gst/schedulers/entryscheduler.c:
2717         * gst/schedulers/gstbasicscheduler.c:
2718         (gst_basic_scheduler_cothreaded_chain),
2719         (gst_basic_scheduler_chain_add_element):
2720         * testsuite/bins/interface.c: (main):
2721         Added GstBin test.
2722         Added GstSystemClock test.
2723         Implemented clock distribution code in GstBin.
2724         Implemented iterate sinks method for future use.
2725         Rearranged gstelement.h
2726         Fix GstIterator comparison bug.
2727         Moved some code to GstPipeline, mostly clocking related.
2728
2729 2005-03-09  Wim Taymans  <wim@fluendo.com>
2730
2731         * configure.ac:
2732         * gst/gst_private.h:
2733         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2734         (gst_bin_remove_func), (gst_bin_remove),
2735         (gst_bin_get_by_name_recurse_up):
2736         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2737         (gst_clock_id_compare_func), (gst_clock_id_wait),
2738         (gst_clock_id_wait_async), (gst_clock_init),
2739         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2740         * gst/gstelement.h:
2741         * gst/gstinfo.c: (_gst_debug_init):
2742         * gst/gstobject.h:
2743         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2744         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2745         * gst/gstpad.h:
2746         Bump version number, we're now 0.9.0
2747         Add future debugging category.
2748         Fix NULL _unref() in _get_by_name_recurse_up
2749         Rearrange gstpad.h.
2750         Update some docs.
2751
2752 2005-03-08  Wim Taymans  <wim@fluendo.com>
2753
2754         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2755         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2756         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2757         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2758         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2759         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2760         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2761         * gst/elements/gstidentity.c: (gst_identity_class_init):
2762         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2763         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2764         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2765         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2766         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2767         (gst_tee_link):
2768         * gst/gstelement.c: (gst_element_class_init),
2769         (gst_element_base_class_init), (gst_element_init),
2770         (gst_element_get_random_pad), (gst_element_wait_state_change),
2771         (gst_element_change_state), (gst_element_dispose),
2772         (gst_element_finalize), (gst_element_set_loop_function):
2773         * gst/gstelement.h:
2774         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2775         * gst/gstthread.c: (gst_thread_class_init),
2776         (gst_thread_release_children_locks), (gst_thread_change_state):
2777         * gst/schedulers/gstbasicscheduler.c:
2778         (gst_basic_scheduler_loopfunc_wrapper),
2779         (gst_basic_scheduler_chain_wrapper),
2780         (gst_basic_scheduler_src_wrapper),
2781         (gst_basic_scheduler_remove_element):
2782         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2783         Remove threadsafe properties. Fix elements because GObject
2784         complains when installing a property before declaring a
2785         set/get_property handler.
2786         Rearrange gstelement.h file, use STATE macros for state locks.
2787         Free mutexes in the finalize method instead of dispose.
2788
2789 2005-03-08  Wim Taymans  <wim@fluendo.com>
2790
2791         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2792         * gst/gstthread.c: (gst_thread_release_children_locks):
2793         Added parentage check.
2794         Fix build og GstThread again.
2795
2796 2005-03-08  Wim Taymans  <wim@fluendo.com>
2797
2798         * docs/design/part-MT-refcounting.txt:
2799         * docs/design/part-conventions.txt:
2800         * docs/design/part-gstobject.txt:
2801         * docs/design/part-relations.txt:
2802         * docs/design/part-standards.txt:
2803         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2804         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2805         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2806         (gst_bin_iterate_all_by_interface):
2807         * gst/gstbuffer.h:
2808         * gst/gstclock.h:
2809         * gst/gstelement.c: (gst_element_class_init),
2810         (gst_element_change_state), (gst_element_set_loop_function):
2811         * gst/gstelement.h:
2812         * gst/gstiterator.c:
2813         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2814         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2815         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2816         (gst_object_set_parent), (gst_object_unparent),
2817         (gst_object_check_uniqueness):
2818         * gst/gstobject.h:
2819         Docs updates, clean up some headers.
2820
2821 2005-03-07  Wim Taymans  <wim@fluendo.com>
2822
2823         * check/.cvsignore:
2824         * check/Makefile.am:
2825         * check/gst-libs/.cvsignore:
2826         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2827         * check/gst/.cvsignore:
2828         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2829         (START_TEST), (gstbus_suite), (main):
2830         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2831         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2832         (gst_data_suite), (main):
2833         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2834         (add_fold_func), (gstiterator_suite), (main):
2835         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2836         (thread_name_object), (thread_name_object_default),
2837         (gst_object_name_compare), (gst_object_suite), (main):
2838         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
2839         (gst_pad_suite), (main):
2840         * check/gstcheck.c: (gst_check_log_message_func),
2841         (gst_check_log_critical_func), (gst_check_init):
2842         * check/gstcheck.h:
2843         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
2844         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
2845         Added checks.
2846
2847 2005-03-07  Wim Taymans  <wim@fluendo.com>
2848
2849         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
2850         (gst_list_iterator_next), (gst_list_iterator_resync),
2851         (gst_list_iterator_free), (gst_iterator_new_list),
2852         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
2853         (gst_iterator_free), (gst_iterator_push), (filter_next),
2854         (filter_resync), (filter_uninit), (filter_free),
2855         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
2856         (gst_iterator_foreach), (find_custom_fold_func),
2857         (gst_iterator_find_custom):
2858         * gst/gstiterator.h:
2859         Added missing files.
2860
2861 2005-03-07  Wim Taymans  <wim@fluendo.com>
2862
2863         * Makefile.am:
2864         * configure.ac:
2865         * docs/design/part-MT-refcounting.txt:
2866         * docs/design/part-conventions.txt:
2867         * docs/design/part-gstobject.txt:
2868         * docs/design/part-relations.txt:
2869         * examples/mixer/mixer.c: (main):
2870         * examples/thread/thread.c: (eos), (main):
2871         * gst/Makefile.am:
2872         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
2873         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
2874         (gst_spider_plug_from_srcpad):
2875         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
2876         (gst_spider_identity_change_state),
2877         (gst_spider_identity_sink_loop_type_finding):
2878         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
2879         * gst/elements/gstidentity.c: (gst_identity_init):
2880         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
2881         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
2882         * gst/elements/gsttypefindelement.c: (free_entry):
2883         * gst/gst.c:
2884         * gst/gst.h:
2885         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
2886         (gst_bin_set_clock_func), (gst_bin_auto_clock),
2887         (gst_bin_set_index), (gst_bin_set_element_sched),
2888         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
2889         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
2890         (gst_bin_iterate_elements), (iterate_child_recurse),
2891         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
2892         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
2893         (compare_interface), (gst_bin_get_by_interface),
2894         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
2895         * gst/gstbin.h:
2896         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
2897         (gst_buffer_default_free), (gst_buffer_default_copy),
2898         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
2899         (gst_buffer_create_sub):
2900         * gst/gstbuffer.h:
2901         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
2902         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
2903         (gst_caps_unref), (gst_static_caps_get),
2904         (gst_caps_remove_and_get_structure), (gst_caps_append),
2905         (gst_caps_append_structure), (gst_caps_remove_structure),
2906         (gst_caps_copy_nth), (gst_caps_set_simple),
2907         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
2908         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
2909         (gst_caps_structure_intersect_field), (gst_caps_intersect),
2910         (gst_caps_structure_subtract_field), (gst_caps_subtract),
2911         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
2912         (gst_caps_structure_figure_out_union),
2913         (gst_caps_switch_structures), (gst_caps_do_simplify),
2914         (gst_caps_replace), (gst_caps_from_string),
2915         (gst_caps_copy_conditional):
2916         * gst/gstcaps.h:
2917         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
2918         (_gst_clock_id_free), (gst_clock_id_unref),
2919         (gst_clock_id_compare_func), (gst_clock_id_wait),
2920         (gst_clock_id_wait_async), (gst_clock_class_init),
2921         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
2922         (gst_clock_get_time), (gst_clock_set_time_adjust),
2923         (gst_clock_set_property), (gst_clock_get_property):
2924         * gst/gstclock.h:
2925         * gst/gstcompat.h:
2926         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
2927         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
2928         * gst/gstdata.h:
2929         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2930         (gst_element_requires_clock), (gst_element_provides_clock),
2931         (gst_element_set_clock), (gst_element_clock_wait),
2932         (gst_element_wait), (gst_element_set_time_delay),
2933         (gst_element_is_indexable), (gst_element_add_pad),
2934         (gst_element_add_ghost_pad), (gst_element_remove_pad),
2935         (pad_compare_name), (gst_element_get_static_pad),
2936         (gst_element_request_pad), (gst_element_get_request_pad),
2937         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
2938         (gst_element_class_get_pad_template_list),
2939         (gst_element_class_get_pad_template), (gst_element_error_func),
2940         (gst_element_get_random_pad), (gst_element_get_event_masks),
2941         (gst_element_send_event), (gst_element_seek),
2942         (gst_element_get_query_types), (gst_element_query),
2943         (gst_element_get_formats), (gst_element_convert),
2944         (gst_element_is_locked_state), (gst_element_set_locked_state),
2945         (gst_element_sync_state_with_parent), (gst_element_change_state),
2946         (gst_element_finalize), (gst_element_yield),
2947         (gst_element_interrupt), (gst_element_set_scheduler),
2948         (gst_element_get_scheduler), (gst_element_set_loop_function):
2949         * gst/gstelement.h:
2950         * gst/gstevent.h:
2951         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
2952         (gst_format_get_by_nick), (gst_format_get_details),
2953         (gst_format_iterate_definitions):
2954         * gst/gstformat.h:
2955         * gst/gstindex.c: (gst_index_gtype_resolver):
2956         * gst/gstinfo.c:
2957         * gst/gstinfo.h:
2958         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
2959         (gst_mem_chunk_free):
2960         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
2961         (gst_object_ref), (gst_object_unref), (gst_object_sink),
2962         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
2963         (gst_object_dispatch_properties_changed),
2964         (gst_object_set_name_default), (gst_object_set_name),
2965         (gst_object_get_name), (gst_object_set_name_prefix),
2966         (gst_object_get_name_prefix), (gst_object_set_parent),
2967         (gst_object_get_parent), (gst_object_unparent),
2968         (gst_object_check_uniqueness), (gst_object_save_thyself),
2969         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
2970         (gst_object_set_property), (gst_object_get_property),
2971         (gst_object_get_path_string):
2972         * gst/gstobject.h:
2973         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
2974         (gst_real_pad_init), (gst_real_pad_get_property),
2975         (gst_pad_custom_new), (gst_pad_get_direction),
2976         (gst_pad_set_active), (gst_pad_is_active),
2977         (gst_pad_set_event_function), (gst_pad_is_linked),
2978         (gst_pad_link_free), (gst_pad_link_intersect),
2979         (gst_pad_link_fixate), (gst_pad_set_caps),
2980         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
2981         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
2982         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
2983         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
2984         (gst_pad_get_caps), (gst_pad_peer_get_caps),
2985         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
2986         (gst_pad_realize), (gst_pad_get_allowed_caps),
2987         (gst_real_pad_dispose), (gst_real_pad_finalize),
2988         (gst_pad_collectv), (gst_pad_collect_valist),
2989         (gst_pad_template_dispose), (gst_pad_template_new),
2990         (gst_pad_get_internal_links):
2991         * gst/gstpad.h:
2992         * gst/gstpipeline.c: (gst_pipeline_dispose),
2993         (gst_pipeline_change_state):
2994         * gst/gstpipeline.h:
2995         * gst/gstplugin.c:
2996         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
2997         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
2998         * gst/gstpluginfeature.h:
2999         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3000         * gst/gstquery.c: (_gst_query_type_initialize),
3001         (gst_query_type_register), (gst_query_type_get_by_nick),
3002         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
3003         * gst/gstquery.h:
3004         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
3005         * gst/gstscheduler.c: (gst_scheduler_add_element),
3006         (gst_scheduler_factory_create):
3007         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3008         (gst_structure_free), (gst_structure_set_name),
3009         (gst_structure_id_set_value), (gst_structure_set_value),
3010         (gst_structure_set_valist), (gst_structure_remove_field),
3011         (gst_structure_remove_fields),
3012         (gst_structure_remove_fields_valist),
3013         (gst_structure_remove_all_fields), (gst_structure_foreach),
3014         (gst_structure_map_in_place),
3015         (gst_caps_structure_fixate_field_nearest_int),
3016         (gst_caps_structure_fixate_field_nearest_double):
3017         * gst/gststructure.h:
3018         * gst/gstsystemclock.c: (gst_system_clock_class_init),
3019         (gst_system_clock_init), (gst_system_clock_dispose),
3020         (gst_system_clock_async_thread),
3021         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
3022         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
3023         * gst/gstsystemclock.h:
3024         * gst/gsttag.c: (gst_tag_list_add_value_internal),
3025         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
3026         * gst/gsttaginterface.c:
3027         * gst/gstthread.c: (gst_thread_dispose),
3028         (gst_thread_release_children_locks), (gst_thread_change_state),
3029         (gst_thread_main_loop):
3030         * gst/gsttrashstack.h:
3031         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
3032         * gst/gsttypes.h:
3033         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3034         (gst_element_request_pad), (gst_element_get_pad_from_template),
3035         (gst_element_request_compatible_pad),
3036         (gst_element_get_compatible_pad_filtered),
3037         (gst_element_get_compatible_pad), (gst_element_state_get_name),
3038         (gst_element_link_pads_filtered), (gst_element_link_filtered),
3039         (gst_element_link_many), (gst_element_link),
3040         (gst_element_link_pads), (gst_element_unlink_pads),
3041         (gst_element_unlink_many), (gst_element_unlink),
3042         (gst_pad_can_link_filtered), (gst_pad_can_link),
3043         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
3044         (gst_object_default_error), (gst_bin_add_many),
3045         (gst_bin_remove_many), (gst_element_populate_std_props),
3046         (gst_element_class_install_std_props), (gst_buffer_merge),
3047         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
3048         (link_fold_func), (gst_pad_proxy_setcaps):
3049         * gst/gstutils.h:
3050         * gst/gstvalue.c: (gst_value_deserialize_string):
3051         * gst/parse/grammar.y:
3052         * gst/schedulers/gstbasicscheduler.c:
3053         (gst_basic_scheduler_cothreaded_chain),
3054         (gst_basic_scheduler_chain_recursive_add),
3055         (gst_basic_scheduler_pad_link):
3056         * gst/schedulers/gstoptimalscheduler.c:
3057         (get_group_schedule_function),
3058         (gst_opt_scheduler_state_transition),
3059         (gst_opt_scheduler_add_element), (element_get_reachables_func):
3060         * libs/gst/bytestream/bytestream.c:
3061         * libs/gst/dataprotocol/dataprotocol.c:
3062         (gst_dp_header_from_buffer):
3063         * po/nb.po:
3064         * po/ru.po:
3065         * tests/threadstate/threadstate2.c: (eos):
3066         * tools/gst-compprep.c: (main):
3067         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
3068         (print_pad_info), (print_children_info):
3069         * tools/gst-launch.c: (idle_func), (main):
3070         * tools/gst-md5sum.c: (idle_func), (main):
3071         * tools/gst-xmlinspect.c: (print_element_info):
3072         First THREADED backport attempt, focusing on adding locks and
3073         making sure the API is threadsafe. Needs more work. More docs
3074         follow this week.
3075
3076 2005-02-24  Andy Wingo  <wingo@pobox.com>
3077
3078         * tests/bench-complexity.scm:
3079         * tests/complexity.gnuplot: New files, good for running complexity
3080         benchmarks.
3081
3082         * tests/Makefile.am:
3083         * tests/complexity.c: New test, sets up N elements, at each level
3084         teeing into M streams per element. Eeeenteresting.
3085
3086         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
3087         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
3088         running bench-mass_elements.scm.
3089
3090         * tests/bench-mass_elements.scm: New script, runs mass_elements
3091         for various numbers of identities, outputting the results to a
3092         file. Requires guile 1.6. Just for testing.
3093
3094 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3095
3096         * gst/schedulers/fairscheduler.c:
3097           compile with debug disabled
3098
3099 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3100
3101         * configure.ac:
3102           hunting season on 0.9 is now OPEN
3103
3104 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
3105
3106         * docs/libs/tmpl/gstcontrol.sgml:
3107         * docs/libs/tmpl/gstdparam.sgml:
3108         * docs/libs/tmpl/gstdplinint.sgml:
3109         * docs/libs/tmpl/gstdpman.sgml:
3110         * docs/libs/tmpl/gstdpsmooth.sgml:
3111         * docs/libs/tmpl/gstunitconvert.sgml:
3112           more docs for the state of dparams
3113
3114 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3115
3116         * gst/gstelementfactory.c: (gst_element_factory_create):
3117         * gst/gstobject.c: (gst_object_init),
3118         (gst_object_set_name_default), (gst_object_set_name):
3119           name objects by default, not in gst_element_factory_create. Allows
3120           using elements created with g_object_new. (fixes #167283)
3121
3122 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3123
3124         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3125           make the time that debugging functions print relative to when
3126           gst_init was called
3127
3128 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3129
3130         * gst/gsttaginterface.c:
3131           Fix inline docs: tag setter vararg functions are NULL-terminated,
3132           GST_TAG_INVALID doesn't exist any more.
3133
3134 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3135
3136         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3137         Allocate the 1 byte more memory that was forgotten!!!!!
3138         fixes memory corruption on 64bit platforms
3139
3140 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3141
3142         * docs/pwg/building-pads.xml:
3143         * docs/pwg/intro-basics.xml:
3144           fixed a few typos, relabeled introductionary list of types
3145         * docs/random/ensonic/dparams.txt:
3146           more notes abut dparam changes
3147         * libs/gst/control/dparam.c: (gst_dparam_attach):
3148         * libs/gst/control/dparammanager.c:
3149         * libs/gst/control/dparammanager.h:
3150           - many comments and notes on dparam implementation
3151           - new dparams are were not initialized to the default value
3152             from param spec
3153
3154 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3155
3156         submitted by: Peter Astakhov
3157
3158         * po/LINGUAS:
3159         * po/ru.po:
3160           adding Russian translation
3161
3162 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3163
3164         * configure.ac:
3165         * docs/gst/Makefile.am:
3166         * docs/libs/Makefile.am:
3167           make sure popt is added to gtk-doc flags.  Fixes #147782.
3168
3169 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3170
3171         * docs/faq/using.xml:
3172           Fix typo in FAQ (artssink => artsdsink)
3173
3174 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3175
3176         * tools/gst-launch.1.in:
3177           Fix typo (#166699).
3178
3179 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3180
3181         * docs/faq/using.xml:
3182           Add -v argument to fakesrc/fakesink gst-launch line,
3183           so that the promised output will actually show up.
3184
3185 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3186
3187         * gst/gstthread.c: (gst_thread_change_state):
3188           Implement state-change error handling (#166073).
3189
3190 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3191
3192         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3193           Release interrupt after handling (#166250).
3194
3195 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3196
3197         * configure.ac:
3198           back to HEAD
3199
3200 === release 0.8.9 ===
3201
3202 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3203
3204         * NEWS:
3205         * RELEASE:
3206         * configure.ac:
3207           releasing 0.8.9, "Like Eating Glass"
3208
3209 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3210
3211         submitted by: Clytie Siddall
3212
3213         * po/vi.po: Added Vietnamese translation
3214
3215 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3216
3217         patch by: Tim Philipp-Müller
3218
3219         * configure.ac:
3220         * gst/gstpad.c:
3221           unref data when probe function returns FALSE.  Fixes #166362
3222
3223 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3224
3225         * gst/gst.c: (gst_init_get_popt_table):
3226           Fix typo (#166269).
3227
3228 2005-02-04  Andy Wingo  <wingo@pobox.com>
3229
3230         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3231         the debugging on whether the caps are compatible.
3232
3233 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3234
3235         * docs/manual/basics-elements.xml:
3236           Fix two typos.
3237
3238 2005-02-02  Wim Taymans  <wim@fluendo.com>
3239
3240         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3241         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3242         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3243         Remove some FIXMEs after analysing and commenting why they
3244         are not issues.
3245
3246 2005-02-02  Wim Taymans  <wim@fluendo.com>
3247
3248         * gst/schedulers/gstoptimalscheduler.c:
3249         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3250         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3251         (get_invalid_call), (chain_invalid_call),
3252         (get_group_schedule_function), (loop_group_schedule_function),
3253         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3254         (gst_opt_scheduler_state_transition),
3255         (gst_opt_scheduler_add_element),
3256         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3257         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3258         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3259         (gst_opt_scheduler_show):
3260         Added lock to protect scheduler data structures.
3261
3262 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3263
3264         * testsuite/threads/threadi.c: (cb_data):
3265           Fix buglet in test.
3266
3267 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3268
3269         * testsuite/threads/Makefile.am:
3270         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3271           On Wim's request, split the test in three separately-compiled
3272           tests that each test a very specific bug. Two of them still fail,
3273           will create bugs for those. threadi.c indicates why they fail.
3274
3275 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3276
3277         * gst/schedulers/gstoptimalscheduler.c:
3278         (get_group_schedule_function):
3279           Try to work with the threading mess that queue_link is.
3280
3281 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3282
3283         * gst/gstbin.c: (gst_bin_remove_func):
3284           Explicitely make an element release locks in a group when being
3285           remove from a bin.
3286         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3287           If there's no scheduler, always return immediately (similar to
3288           gst_element_interrupt).
3289
3290 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3291
3292         * gst/gstbin.c: (gst_bin_child_state_change_func):
3293           Remove a piece of code that could never be reached.
3294         * docs/gst/gstreamer-sections.txt:
3295         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3296         (gst_pad_call_get_function):
3297         * gst/gstpad.h:
3298         * testsuite/pad/Makefile.am:
3299           Fix #150546, enable tests.
3300
3301 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3302
3303         * docs/pwg/advanced-types.xml:
3304           Fix description for buffer-frames=0.
3305         * docs/gst/tmpl/gstbin.sgml:
3306         * gst/gstbin.c: (gst_bin_child_state_change_func),
3307         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3308         * gst/gstbin.h:
3309         * testsuite/threads/Makefile.am:
3310         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3311         (cb_state), (cb_play), (main):
3312           Fix non-recursive state changes to *really* change the state
3313           of the object, and not just call parent_class->state_change.
3314           Fix a lot of lockups caused by this. Fixes #132775. Add test
3315           for the problem. Also enable test to show #142588 (fixed).
3316         * gst/gstthread.c: (gst_thread_change_state),
3317         (gst_thread_child_state_change):
3318           Don't exit the thread if we go to NULL and are inside thread
3319           context. Instead, return control to the main thread context
3320           and exit from there.
3321         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3322           Don't unset virtual functions, since those may still be used.
3323           That's not necessarily correct, but suffices for now.
3324         * configure.ac:
3325         * testsuite/Makefile.am:
3326         * testsuite/pad/Makefile.am:
3327         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3328         (gst_test_sink_base_init), (gst_test_sink_chain),
3329         (gst_test_sink_init), (main):
3330         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3331         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3332         (main):
3333         * testsuite/pad/link.c: (gst_test_element_class_init),
3334         (gst_test_element_base_init), (gst_test_src_get),
3335         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3336         (gst_test_filter_loop), (gst_test_filter_init),
3337         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3338         (cb_error), (main):
3339           Add tests to show #150546. Pass, but should fail (currently
3340           disabled from the testsuite).
3341         * gst/gstscheduler.c: (gst_scheduler_dispose):
3342           Dereference child schedulers on dispose (#94464).
3343         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3344           Fix typo.
3345         * testsuite/threads/thread.c: (main):
3346           Add more debug.
3347
3348 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3349
3350         * gst/gstpad.c: (gst_pad_push):
3351           Oops, revert previous commit, broke testsuite...
3352
3353 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3354
3355         * gst/gstpad.c: (gst_pad_push):
3356           Add check that the pad on which the push is performed is not a
3357           get-based pad (#150546).
3358
3359 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3360
3361         * gst/elements/gsttypefindelement.c:
3362         (gst_type_find_element_handle_event):
3363           Fix buffer pushing if stream EOSes during typefinding.
3364
3365 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3366
3367         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3368
3369         * gst/gstvalue.c: (gst_string_wrap):
3370           Allow NULL-strings as argument (#165365).
3371
3372 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3373
3374         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3375
3376         * gst/schedulers/faircothreads.c:
3377         (gst_fair_scheduler_cothread_queue_show):
3378           Fix build without debug enabled.
3379
3380 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3381
3382         * docs/gst/gstreamer-sections.txt:
3383         * docs/libs/gstreamer-libs-docs.sgml:
3384         * docs/libs/gstreamer-libs-sections.txt:
3385         * docs/libs/tmpl/gstcontrol.sgml:
3386         * docs/libs/tmpl/gstdparam.sgml:
3387         * docs/libs/tmpl/gstdplinint.sgml:
3388         * docs/libs/tmpl/gstdpman.sgml:
3389         * docs/libs/tmpl/gstdpsmooth.sgml:
3390         * docs/libs/tmpl/gstputbits.sgml:
3391         * docs/libs/tmpl/gstunitconvert.sgml:
3392         * libs/gst/control/dparam.c:
3393         * libs/gst/control/dparam.h:
3394         * libs/gst/control/dparammanager.c:
3395         (gst_dpman_add_required_dparam_callback),
3396         (gst_dpman_add_required_dparam_direct),
3397         (gst_dpman_add_required_dparam_array),
3398         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3399         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3400         (gst_dpman_get_manager)
3401           restructured DParam docs
3402
3403 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3404
3405         * gst-element-check.m4:
3406           Only check for gst-inspect if we haven't already
3407           found it in previous element check runs
3408
3409 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3410
3411         * docs/gst/Makefile.am:
3412         * docs/libs/Makefile.am:
3413           fixed install rules to treat style.css as optional
3414
3415 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3416
3417         * docs/gst/Makefile.am:
3418         * docs/libs/Makefile.am:
3419           install style.css along with docs
3420         * docs/gst/tmpl/gstbin.sgml:
3421         * docs/gst/tmpl/gstclock.sgml:
3422         * docs/gst/tmpl/gstdata.sgml:
3423         * docs/gst/tmpl/gstelement.sgml:
3424         * gst/gstbin.h:
3425         * gst/gstelement.c: (gst_element_class_init):
3426         * gst/gstelement.h:
3427           fixing incomplete docs
3428
3429 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3430
3431         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3432           Don't unref seek event twice when fflush() fails
3433           
3434 2005-01-22  David Schleef  <ds@schleef.org>
3435
3436         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3437
3438 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3439
3440         * docs/gst/Makefile.am:
3441         * docs/libs/Makefile.am:
3442           added params for deprecation guards
3443         * gst/gst.c:
3444         * gst/gst.h:
3445         * gst/gsterror.c: (_gst_resource_errors_init),
3446         (_gst_stream_errors_init):
3447         * gst/gsterror.h:
3448           documented some more enums
3449
3450 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3451         * gst/autoplug/gstspideridentity.c:
3452         Cosmetic fix - spider_find_peek should be static
3453         * gst/parse/parse.l:
3454         Applying fix for #164261
3455
3456 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3457
3458         * docs/gst/gstreamer-sections.txt:
3459         * docs/gst/tmpl/gstplugin.sgml:
3460         * docs/libs/gstreamer-libs-sections.txt:
3461         * docs/libs/tmpl/gstcontrol.sgml:
3462         * gst/gstbuffer.h:
3463         * gst/gsttag.h:
3464         * gst/gstvalue.c:
3465           added docs for the TAG defines
3466
3467 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3468
3469         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3470           Only unref entry if there is an entry.
3471
3472 2005-01-17  Wim Taymans  <wim@fluendo.com>
3473
3474         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3475         (remove_from_group), (schedule_group), (normalize_group),
3476         (gst_opt_scheduler_iterate):
3477         Also ref/unref decoupled elements before iterating the
3478         group since they are not added to the list of elements.
3479
3480 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3481
3482         * docs/manual/highlevel-components.xml:
3483           Add subtitle/streamselection as new features to playbin.
3484
3485 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3486
3487         * docs/manual/manual.xml:
3488           Re-enable dataaccess docs (oops).
3489
3490 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3491
3492         * docs/pwg/advanced-types.xml:
3493         * docs/random/mimetypes:
3494           Add documentation on libsndfile types (#163309), by Steve Baker
3495           <steve@stevebaker.org>.
3496         * gst/gstelement.c: (gst_element_release_request_pad):
3497           If an element has no explicit function, just remove the pad.
3498
3499 2005-01-17  Luca Ognibene  <luogni@tin.it>
3500
3501         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3502
3503         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3504           Fix memleak (#163801).
3505
3506 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3507
3508         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3509           I think this is actually more correct...
3510
3511 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3512
3513         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3514           Another workaround for memory access while destroyed in callback.
3515           Please, someone with refcount knowledge, have a look at this.
3516
3517 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3518
3519         * docs/faq/faq.xml:
3520         * docs/faq/legal.xml:
3521           move the legal Q&A here
3522
3523 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3524
3525         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3526         (gst_tee_request_new_pad):
3527           Fix negotiation.
3528
3529 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3530
3531         * docs/random/omega/caps2:
3532         * testsuite/caps/caps_strings:
3533           replace framerate aproximations by their real value
3534           (24000/1001, 30000/1001, 60000/1001)
3535           Partially fixes bug #164049
3536
3537 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3538
3539         * docs/gst/Makefile.am:
3540           don't fail on the stupid GstPoptOption
3541
3542 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3543
3544         * gst/gstpad.h:
3545         * gst/gstprobe.c:
3546           allow probes to work on ghost pads by realizing the pad
3547           probe debugging
3548
3549 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3550
3551         * docs/gst/gstreamer-sections.txt:
3552         * docs/gst/tmpl/gstpad.sgml:
3553         * gst/gstpad.c: (gst_pad_set_active_recursive):
3554         * gst/gstpad.h:
3555           Add gst_pad_set_active_recursive().
3556
3557 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3558
3559         * docs/random/release:
3560           updates
3561         * gst/gst_private.h:
3562         * gst/gstinfo.c:
3563         * gst/gstobject.c:
3564           move deep_notify logging to a new category
3565         * gst/gstprobe.c:
3566         * gst/gstprobe.h:
3567           add stuff so bindings can wrap probes
3568
3569 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3570
3571         * gst/gstplugin.c: (gst_plugin_load):
3572           Fix plugin loading if plugin/lib was already loaded. Fixes
3573           #163383
3574
3575 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3576
3577         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3578
3579         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3580           Protect plugin loading by a mutex so it's threadsafe. Fixes
3581           #163234.
3582
3583 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3584
3585         * gst/gstevent.c: (_gst_event_copy):
3586           Reference source object when copying events, since it'll be
3587           dereferenced on event dereferencing as well.
3588
3589 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3590
3591         * docs/gst/gstreamer-sections.txt:
3592         * docs/gst/tmpl/gstevent.sgml:
3593         * gst/gstevent.c: (gst_event_new_filler_stamped),
3594         (gst_event_filler_get_duration):
3595         * gst/gstevent.h:
3596           Add two new functions for filler events (which are used to
3597           synchronize streams if one of them is not having any data
3598           for a while) without interrupting the actual data-stream.
3599           Basically a no-op.
3600         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3601         (gst_queue_link_sink), (gst_queue_link_src),
3602         (gst_queue_change_state):
3603           Allow for renegotiation while filled. Required for stream
3604           switching while playing.
3605
3606 2005-01-08  Benjamin Otte  <otte@gnome.org>
3607
3608         * gst/gstelement.c: (gst_element_link_many):
3609           fix up g_return_if_fail's
3610         * po/LINGUAS:
3611         * po/de.po:
3612           add German translation, that was somehow not included
3613
3614 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3615
3616         * docs/random/mimetypes:
3617           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3618           do not add them to riff-lib as they are not common
3619
3620 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3621
3622         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3623           Check for existence of probe after performing the probe before
3624           re-accessing it to prevent segfaults caused by removal of the
3625           probe in the callback.
3626
3627 2005-01-05  David Schleef  <ds@schleef.org>
3628
3629         * testsuite/registry/Makefile.am:
3630         * testsuite/registry/gst-print-formats.c:
3631         (print_pad_templates_info), (print_element_list),
3632         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3633         (g_list_uniqify), (get_pad_templates_info),
3634         (get_element_mime_list), (print_mime_list), (main): A little
3635         program that looks through the registry to find elements of
3636         a given type.  Not particularly interesting as a test, except
3637         that there's no other test covering the same area.
3638
3639 2005-01-05  David Schleef  <ds@schleef.org>
3640
3641         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3642         (fault_handler_sigaction), (fault_spin),
3643         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3644         in signal.h-type signal handlers by not calling forbidden functions,
3645         including gst_element_set_state().
3646
3647 2005-01-05  David Schleef  <ds@schleef.org>
3648
3649         * gst/gstvalue.h: Mark _gst_reserved[] as private
3650
3651 2005-01-05  David Schleef  <ds@schleef.org>
3652
3653         * gst/gstvalue.c: Fix doc build problem.
3654
3655 2005-01-05  David Schleef  <ds@schleef.org>
3656
3657         * gst/gstvalue.c: Add some documentation
3658
3659 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3660
3661         * docs/README:
3662           another shell oneliner for empty return value docs
3663         * gst/gstcaps.c:
3664         * gst/gstvalue.c:
3665         * libs/gst/control/dparam.c:
3666           more doc fixes (parameters and return values)
3667
3668 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3669
3670         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3671
3672         * gst/gstregistry.h:
3673         * gst/registries/gstxmlregistry.c:
3674           Fix macro's for Mingw (fixes #162276).
3675
3676 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3677
3678         * docs/README:
3679           quick shell oneliner to find undocumented members
3680         * docs/gst/tmpl/gstplugin.sgml:
3681         * docs/gst/tmpl/gstscheduler.sgml:
3682         * docs/gst/tmpl/gstthread.sgml:
3683           more enumtypes cleanup
3684         * gst/gsterror.h:
3685           activated documentation comments, now someone needs to document
3686           the enums :(
3687
3688 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3689
3690         * docs/manual/manual.xml:
3691           Add dataaccess part (doh!).
3692
3693 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3694
3695         * docs/manual/advanced-autoplugging.xml:
3696           Fix typo (intiate -> initiate).
3697
3698 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3699
3700         * docs/random/bbb/streamselection:
3701           Add some notes on how to handle multi-subtitle/-audio streams.
3702
3703 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3704
3705         * docs/gst/gstreamer-docs.sgml:
3706         * docs/gst/gstreamer-sections.txt:
3707         * docs/gst/tmpl/gstenumtypes.sgml:
3708         * docs/gst/tmpl/gsterror.sgml:
3709         * docs/gst/tmpl/gstevent.sgml:
3710         * docs/gst/tmpl/gstpad.sgml:
3711         * docs/gst/tmpl/gstpadtemplate.sgml:
3712         * docs/gst/tmpl/gstthread.sgml:
3713           removed gstenumtypes section from docs and put all the enums into
3714           their sections
3715
3716 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3717
3718         * gst/gstplugin.c:
3719           document gst_library_load a bit more (riff special case + return
3720           value if already loaded)
3721         * testsuite/bytestream/filepadsink.c:
3722           plugin name is 'gstbytestream', not 'bytestream'
3723
3724 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3725
3726         * docs/random/bbb/subtitles:
3727           Add some first mind rumblings on proper subtitle support.
3728
3729 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3730
3731         * po/ca.po:
3732         * po/sv.po:
3733           updated translations
3734
3735 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3736
3737         * docs/manual/advanced-dataaccess.xml:
3738           Add section on how to use fakesrc/fakesink/identity in your
3739           application, plus section on how to embed plugins. Also mention
3740           probes.
3741         * docs/manual/appendix-checklist.xml:
3742         * docs/manual/appendix-debugging.xml:
3743         * docs/manual/appendix-gnome.xml:
3744         * docs/manual/appendix-integration.xml:
3745           Debug -> checklist, GNOME -> integration, add sections on Linux,
3746           KDE integration and add other things useful for application
3747           development.
3748         * docs/manual/manual.xml:
3749           Remove some fixmes, update some file pointers.
3750         * docs/pwg/appendix-checklist.xml:
3751           Fix typo.
3752         * docs/pwg/building-boiler.xml:
3753           Remove ugly header and add commented fixme.
3754         * docs/pwg/pwg.xml:
3755           Add fixme.
3756         * examples/manual/Makefile.am:
3757           Add example for added docs.
3758
3759 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3760
3761         * configure.ac:
3762           back to HEAD
3763
3764 === release 0.8.8 ===
3765
3766 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3767
3768         * NEWS:
3769         * RELEASE:
3770         * configure.ac:
3771           Releasing 0.8.8, "I'll Take Care Of You"
3772
3773 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3774
3775         * configure.ac:
3776           second prerelease
3777
3778 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3779
3780         patch by: Wim Taymans
3781
3782         * gst/gstbin.c:
3783           Fix for #159852 - make iterate emission threadsafe
3784
3785 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3786
3787         * docs/faq/cvs.xml:
3788           notes about new fdo account request
3789
3790 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3791
3792         * docs/gst/gstreamer-docs.sgml:
3793         * docs/gst/tmpl/gstenumtypes.sgml:
3794         * docs/gst/tmpl/gstplugin.sgml:
3795         * docs/libs/gstreamer-libs-docs.sgml:
3796           Added missing short docs. Added ids for navigation.
3797
3798 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3799
3800         * docs/manual/advanced-autoplugging.xml:
3801         * docs/manual/advanced-schedulers.xml:
3802         * docs/manual/advanced-threads.xml:
3803           Rewrites. Remove cothreads, go a bit into opt specifically,
3804           document threads and their gotchas, and do some technical stuff
3805           on autoplugging plus add some working examples. Fixes #157395.
3806         * examples/manual/Makefile.am:
3807           Add typefind/autoplugger example (one that actually works).
3808           Remove queue example since it's a duplicate of the thread one.
3809
3810 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3811
3812         * gst/gstvalue.c: (gst_value_deserialize_string):
3813           use deprecated g_value_set_string_take_ownership to keep compatible
3814           with glib 2.2
3815
3816 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3817
3818         * gst/gstvalue.c: (gst_value_deserialize_string):
3819           revert last patch, only dom a g_utf8_validate now before accepting
3820           the string - caps parsing strips " from strings so we can't rely on
3821           them
3822         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3823           disable a test that tested the above and comment it
3824
3825 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3826
3827         Patch reviewed by David Schleef  <ds@schleef.org>
3828
3829         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3830         bug #153882)
3831         * win32/gstenumtypes.h: same
3832
3833 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3834
3835         * gst/gstpad.c: (gst_pad_query):
3836           Do query on realized pad, similar to how convert/send_event handle
3837           this. Also makes sense, since this pad belongs to the function to
3838           which this query will be sent. Fixes #158163.
3839
3840 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
3841
3842         * docs/manual/appendix-programs.xml: fix pipeline to actually work
3843
3844 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
3845
3846         * docs/faq/general.xml: fix pipeline to actually work
3847
3848 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3849
3850         * gst/gstvalue.c: (gst_value_deserialize_string):
3851           check that a simple string that gets deserialized does not contain
3852           invalid characters
3853         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3854           remove a test that tested a wring behaviour
3855
3856 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
3857
3858         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3859
3860         * docs/manual/intro-motivation.xml:
3861           Fix typos.
3862
3863 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
3864
3865         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3866
3867         * docs/gst/tmpl/gstprobe.sgml:
3868           Fix documentation of probe callback - it is supposed to return
3869           FALSE, not TRUE, to remove data from the stream (#159087).
3870
3871 2004-12-16  Daniel Gazard  <dany42@free.fr>
3872
3873         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3874
3875         * gst/gstelementfactory.c: (gst_element_factory_create):
3876           Fix compile failure if compiling without libxml2 support (#149936).
3877
3878 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3879
3880         * docs/manual/advanced-autoplugging.xml:
3881         * docs/manual/highlevel-components.xml:
3882           Move spider from autoplugging to components. Autoplugging is for
3883           internals, not for solutions. ;-).
3884
3885 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3886
3887         * docs/random/ds/0.9-suggested-changes:
3888           Make note on device/location/uri property names.
3889
3890 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3891
3892         * docs/manual/advanced-autoplugging.xml:
3893         * docs/manual/advanced-clocks.xml:
3894         * docs/manual/advanced-interfaces.xml:
3895         * docs/manual/advanced-metadata.xml:
3896         * docs/manual/advanced-position.xml:
3897         * docs/manual/advanced-schedulers.xml:
3898         * docs/manual/advanced-threads.xml:
3899         * docs/manual/appendix-gnome.xml:
3900         * docs/manual/appendix-programs.xml:
3901         * docs/manual/appendix-quotes.xml:
3902         * docs/manual/autoplugging.xml:
3903         * docs/manual/basics-bins.xml:
3904         * docs/manual/basics-data.xml:
3905         * docs/manual/basics-elements.xml:
3906         * docs/manual/basics-helloworld.xml:
3907         * docs/manual/basics-init.xml:
3908         * docs/manual/basics-pads.xml:
3909         * docs/manual/basics-plugins.xml:
3910         * docs/manual/bins-api.xml:
3911         * docs/manual/bins.xml:
3912         * docs/manual/buffers-api.xml:
3913         * docs/manual/buffers.xml:
3914         * docs/manual/clocks.xml:
3915         * docs/manual/components.xml:
3916         * docs/manual/cothreads.xml:
3917         * docs/manual/debugging.xml:
3918         * docs/manual/dparams-app.xml:
3919         * docs/manual/dynamic.xml:
3920         * docs/manual/elements-api.xml:
3921         * docs/manual/elements.xml:
3922         * docs/manual/factories.xml:
3923         * docs/manual/gnome.xml:
3924         * docs/manual/goals.xml:
3925         * docs/manual/helloworld.xml:
3926         * docs/manual/helloworld2.xml:
3927         * docs/manual/highlevel-components.xml:
3928         * docs/manual/highlevel-xml.xml:
3929         * docs/manual/init-api.xml:
3930         * docs/manual/intro-basics.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           Try 2. This time, include a short preface as a "general
3953           introduction", also add code blocks around all code samples
3954           so they get compiled. We still need a way to tell readers
3955           the filename of the code sample. In some cases, don't show
3956           all code in the documentation, but do include it in the generated
3957           code. This allows for focussing on specific bits in the docs,
3958           while still having a full test application available.
3959         * examples/manual/Makefile.am:
3960           Fix up examples for new ADM. Add several of the new examples that
3961           were either added or were missing from the build system.
3962         * examples/manual/extract.pl:
3963           Allow nameless blocks.
3964
3965 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3966
3967         * docs/manual/elements-api.xml:
3968         * docs/manual/helloworld.xml:
3969         * examples/manual/extract.pl:
3970           fix last example.  Add example of adding code blocks that are not
3971           shown in docbook output.
3972
3973 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3974
3975         * docs/manual/dynamic.xml:
3976         * docs/manual/elements-api.xml:
3977         * docs/manual/gnome.xml:
3978         * docs/manual/helloworld2.xml:
3979         * docs/manual/init-api.xml:
3980         * docs/manual/queues.xml:
3981         * docs/manual/threads.xml:
3982         * docs/manual/xml.xml:
3983         * examples/manual/extract.pl:
3984           Make it possible to extract example code from separate blocks.
3985           Should make Ronald happy.
3986
3987 2004-12-15  Wim Taymans  <wim@fluendo.com>
3988
3989         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3990         (remove_from_group), (group_elements_set_visited),
3991         (normalize_group), (gst_opt_scheduler_iterate):
3992         Fix bug where a flag was not updated on a decoupled entry point 
3993         because we were just checking the group element list and decoupled
3994         elements are not in that list..
3995
3996 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3997
3998         * docs/manual/advanced-autoplugging.xml:
3999         * docs/manual/advanced-clocks.xml:
4000         * docs/manual/advanced-dparams.xml:
4001         * docs/manual/advanced-interfaces.xml:
4002         * docs/manual/advanced-metadata.xml:
4003         * docs/manual/advanced-position.xml:
4004         * docs/manual/advanced-schedulers.xml:
4005         * docs/manual/advanced-threads.xml:
4006         * docs/manual/appendix-debugging.xml:
4007         * docs/manual/appendix-gnome.xml:
4008         * docs/manual/appendix-programs.xml:
4009         * docs/manual/appendix-quotes.xml:
4010         * docs/manual/appendix-win32.xml:
4011         * docs/manual/autoplugging.xml:
4012         * docs/manual/basics-bins.xml:
4013         * docs/manual/basics-data.xml:
4014         * docs/manual/basics-elements.xml:
4015         * docs/manual/basics-helloworld.xml:
4016         * docs/manual/basics-init.xml:
4017         * docs/manual/basics-pads.xml:
4018         * docs/manual/basics-plugins.xml:
4019         * docs/manual/bins-api.xml:
4020         * docs/manual/bins.xml:
4021         * docs/manual/buffers-api.xml:
4022         * docs/manual/buffers.xml:
4023         * docs/manual/clocks.xml:
4024         * docs/manual/components.xml:
4025         * docs/manual/cothreads.xml:
4026         * docs/manual/debugging.xml:
4027         * docs/manual/dparams-app.xml:
4028         * docs/manual/dynamic.xml:
4029         * docs/manual/elements-api.xml:
4030         * docs/manual/elements.xml:
4031         * docs/manual/factories.xml:
4032         * docs/manual/gnome.xml:
4033         * docs/manual/goals.xml:
4034         * docs/manual/helloworld.xml:
4035         * docs/manual/helloworld2.xml:
4036         * docs/manual/highlevel-components.xml:
4037         * docs/manual/highlevel-xml.xml:
4038         * docs/manual/init-api.xml:
4039         * docs/manual/intro-motivation.xml:
4040         * docs/manual/intro-preface.xml:
4041         * docs/manual/intro.xml:
4042         * docs/manual/links-api.xml:
4043         * docs/manual/links.xml:
4044         * docs/manual/manual.xml:
4045         * docs/manual/motivation.xml:
4046         * docs/manual/pads-api.xml:
4047         * docs/manual/pads.xml:
4048         * docs/manual/plugins-api.xml:
4049         * docs/manual/plugins.xml:
4050         * docs/manual/programs.xml:
4051         * docs/manual/queues.xml:
4052         * docs/manual/quotes.xml:
4053         * docs/manual/schedulers.xml:
4054         * docs/manual/states-api.xml:
4055         * docs/manual/states.xml:
4056         * docs/manual/threads.xml:
4057         * docs/manual/typedetection.xml:
4058         * docs/manual/win32.xml:
4059         * docs/manual/xml.xml:
4060           First try at rewriting the ADM. Needs lotsamore work, but some
4061           parts might already be somewhat useful.
4062         * docs/pwg/advanced-interfaces.xml:
4063           Remove properties interface, it never actually existed (except for
4064           on my HD...).
4065
4066 2004-12-13  David Schleef  <ds@schleef.org>
4067
4068         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
4069         be NULL (bug #160220).
4070
4071 2004-12-13  David Schleef  <ds@schleef.org>
4072
4073         * configure.ac: remove all mmx stuff, because it's not used.
4074         * docs/random/ds/0.9-suggested-changes: additional notes
4075         * include/Makefile.am: we don't use these anymore
4076         * include/mmx.h: remove
4077         * include/sse.h: remove
4078
4079 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4080
4081         * docs/random/mimetypes:
4082           Add FOURCC code for h264 codec (VSSH)
4083           Add alternate FOURCC codes for h263 related codecs
4084
4085 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
4086
4087         * docs/manual/programs.xml:
4088           Added more gst-launch examples.
4089
4090 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4091
4092         * gst/gstqueue.c: (gst_queue_handle_src_query):
4093           Check for availability again.
4094
4095 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4096
4097         * gst/gstcaps.c: (gst_caps_compare_structures):
4098           Simple caps go first. This has the nice side-effect of fixing an
4099           obscure warning.
4100
4101 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4102
4103         * gst/gstversion.h.in:
4104           Protect header.
4105
4106 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4107
4108         * gst/schedulers/gstoptimalscheduler.c:
4109         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4110         (gst_opt_scheduler_get_wrapper):
4111           When we're recursing into a chain run, only run the directly
4112           related group, not all queued ones. This will fix a possible
4113           deadlock in chains with more than two groups.
4114
4115 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4116
4117         * autogen.sh:
4118           remove patch if autopoint fails
4119
4120 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4121
4122         * docs/gst/gstreamer-sections.txt:
4123           Document Thomas' addition, fix build, make Luis the sheriff happy.
4124
4125 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4126
4127         * gst/gstplugin.c:
4128         * gst/gstplugin.h:
4129           add accessor for version field
4130
4131 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4132
4133         submitted by: Luca Ferretti <elle.uca@infinito.it>
4134
4135         * po/LINGUAS:
4136         * po/it.po:
4137           New tranlation added: Italian
4138
4139 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4140
4141         * gst/gstpad.c: (gst_pad_is_negotiated),
4142         (gst_pad_get_negotiated_caps):
4143           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4144           it doesn't actually check the contents), so be sure to hand it
4145           a RealPad else we'll crash.
4146
4147 2004-12-03  Wim Taymans  <wim@fluendo.com>
4148
4149         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4150         (gst_queue_link), (gst_queue_handle_src_query):
4151         Reverted to 1.110 until this makes the testsuite and various
4152         apps work.
4153
4154 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4155
4156         * docs/upload.mak: fix included CVS conflict strings
4157
4158 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4159
4160         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4161
4162         * gst/gstelement.c: (gst_element_error_full):
4163           Use g_error_new_literal because error text may have
4164           percentage signs in it. Fixes #160019.
4165
4166 2004-12-01  Benjamin Otte  <otte@gnome.org>
4167
4168         * gst/elements/gstbufferstore.c:
4169         (gst_buffer_store_add_buffer_func):
4170           don't try to make subbuffers bigger than they can be. (fixes
4171           #159970)
4172
4173 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4174
4175         * docs/gst/gstreamer-sections.txt:
4176         * docs/gst/tmpl/gstvalue.sgml:
4177           Add new function to docs to fix build.
4178
4179 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4180
4181         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4182         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4183         (_gst_pad_default_fixate_foreach):
4184         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4185         * gst/gstvalue.h:
4186           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4187           in some cases (arrays), the fixedness depends on the content.
4188         * gst/gstqueue.c: (gst_queue_handle_src_query):
4189           Check for availability before doing something.
4190
4191 2004-11-29  Wim Taymans  <wim@fluendo.com>
4192
4193         * testsuite/threads/Makefile.am:
4194         * testsuite/threads/signals.c: (gst_test_get_type),
4195         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4196         (gst_test_set_property), (gst_test_get_property),
4197         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4198         (gst_test_do_prop), (run_thread), (main):
4199         Added a bunch of testcases that show threadsafety bugs in glib.
4200
4201 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4202
4203         * docs/manual/programs.xml:
4204           Added a first batch of gst-launch examples, as provided by Ronald
4205           and others from the devel-mlist
4206
4207 2004-11-28  Benjamin Otte  <otte@gnome.org>
4208
4209         * gst/gstelement.c: (gst_element_negotiate_pads):
4210           simplify
4211         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4212         (gst_value_serialize_string), (gst_value_deserialize_string):
4213           add unwrapping of previously wrapped strings. Fix bug in wrapping
4214           while at it.
4215         * testsuite/caps/value_serialize.c: (test1),
4216         (test_string_serialization), (test_string_deserialization), (main):
4217           add tests for string (de)serialization
4218
4219 2004-11-26  Wim Taymans  <wim@fluendo.com>
4220
4221         * testsuite/threads/159566.c: (object_deep_notify), (main):
4222         * testsuite/threads/Makefile.am:
4223         Added testsuite to show bug #159566
4224
4225 2004-11-25  Wim Taymans  <wim@fluendo.com>
4226
4227         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4228         (gst_thread_child_state_change), (gst_thread_main_loop):
4229         Ref the thread object in the GThread mainloop. Break out of the
4230         thread mainloop if it holds the last ref. This properly exits
4231         the threads when disposing the thread from its own context. It
4232         also avoids possible deadlocks in the dispose function.
4233
4234 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4235
4236         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4237         it is necessary to wait.
4238
4239 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4240
4241         * docs/pwg/building-boiler.xml:
4242           Make description somewhat clearer.
4243
4244 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4245
4246         * docs/upload.mak:
4247           Apparently docs changed location on FDO's server.
4248
4249 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4250
4251         * docs/pwg/appendix-checklist.xml:
4252           Add some random notes on things to check when writing an element.
4253           This list can be extended as people see fit.
4254
4255 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4256
4257         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4258         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4259         pad. The queue will now wait until it is empty and forward the new
4260         caps to the source.
4261         * gst/gstbin.c (gst_bin_set_element_sched)
4262         (gst_bin_unset_element_sched): Make sure that all elements and
4263         links are registered and unregistered with the scheduler exactly
4264         once. This elaborates on a fix by Benjamin Otte, but
4265         guarantees that decoupled elements are also registered.
4266
4267 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4268
4269         * docs/manual/quotes.xml:
4270           add a quote
4271         * configure.ac:
4272         * gst/gst.c:
4273         * gst/gstinfo.c:
4274           add LIBDIR and move init message higher up so it's at the start
4275
4276 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4277
4278         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4279         * gstreamer.spec.in: add fair
4280
4281 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4282
4283         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4284         * gst/elements/gstidentity.c: (gst_identity_class_init):
4285           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4286           <teuf@gnome.org> (#157263).
4287         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4288         (gst_type_find_handle_src_query):
4289           Subtract size of internally stored data from position queries.
4290
4291 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4292
4293         * gst/schedulers/fairscheduler.c:
4294         * gst/schedulers/faircothreads.c:
4295         * gst/schedulers/faircothreads.h:
4296         New cothread based scheduler: Fair scheduler.
4297         * gst/schedulers/gthread-cothreads.h: 
4298         Add the standard #if around the whole file.
4299         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4300         compilation of the functions defined in this file. This is
4301         necessary to be able to use this file as a normal header.
4302         * gst/schedulers/Makefile.am: Add compiling support for fair
4303         scheduler.
4304         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4305         scheduler cothreads layer from documentation generation.
4306
4307 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4308
4309         * gst/autoplug/gstspideridentity.c:
4310         (gst_spider_identity_sink_loop_type_finding):
4311           Don't crash if that function is not implemented.
4312
4313 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4314
4315         * docs/pwg/advanced-types.xml:
4316           Another typo.
4317
4318 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4319
4320         * docs/pwg/intro-preface.xml:
4321           Hm, ok, so the brackets weren't really useful...
4322         * docs/pwg/other-ntoone.xml:
4323           Fix embarassing typo.
4324
4325 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4326
4327         * docs/pwg/intro-preface.xml:
4328           Rewrite preface.
4329
4330 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4331
4332         * docs/pwg/advanced-scheduling.xml:
4333         * docs/pwg/advanced-tagging.xml:
4334         * docs/pwg/advanced-types.xml:
4335         * docs/pwg/building-boiler.xml:
4336         * docs/pwg/building-chainfn.xml:
4337         * docs/pwg/building-signals.xml:
4338         * docs/pwg/building-state.xml:
4339         * docs/pwg/building-testapp.xml:
4340         * docs/pwg/intro-basics.xml:
4341         * docs/pwg/other-manager.xml:
4342         * docs/pwg/other-source.xml:
4343           Typo fixes.
4344         * docs/pwg/other-manager.xml:
4345           Add some first content. No example code yet.
4346         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4347           Remove double newlines.
4348
4349 2004-11-04  Wim Taymans  <wim@fluendo.com>
4350
4351         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4352         (remove_from_group), (normalize_group), (group_migrate_connected),
4353         (gst_opt_scheduler_iterate):
4354         * testsuite/schedulers/.cvsignore:
4355         * testsuite/schedulers/Makefile.am:
4356         * testsuite/schedulers/queue_link.c: (main):
4357         Added testcase for scheduler segfault.
4358         Fix scheduler segfault when removing a decoupled
4359         entry point as the last element from a group.
4360
4361 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4362
4363         * gst/gstmarshal.list: add missing marshaller, fixes build
4364
4365 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4366
4367         * docs/random/signal: added notes about using BOXED for GstBuffer
4368         signal marshallers, not POINTER
4369
4370 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4371
4372         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4373         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4374         POINTER=>BOXED changes to marshal GstBuffers
4375
4376 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4377
4378         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4379         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4380
4381 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4382
4383         * docs/gst/gstreamer-sections.txt:
4384         * docs/gst/tmpl/gstcaps.sgml:
4385         * docs/gst/tmpl/gsterror.sgml:
4386         * docs/gst/tmpl/gstinfo.sgml:
4387         * docs/gst/tmpl/gstmacros.sgml:
4388         * docs/gst/tmpl/gstutils.sgml:
4389         * docs/random/ensonic/interfaces.txt:
4390         * gst/gstinfo.h:
4391           added some more docs, removed two obsolete defines
4392
4393 2004-11-02  Kjartan Maraas <as at gnome.org>
4394
4395         reviewed by: Wim Taymans, Ronald Bultje.
4396
4397         * gst/cothreads.c: (cothread_create):
4398         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4399         (gst_bin_child_state_change_func):
4400         * gst/gstbuffer.c: (gst_buffer_span):
4401         * gst/gstelement.c: (gst_element_get_index),
4402         (gst_element_get_event_masks), (gst_element_get_query_types),
4403         (gst_element_get_formats):
4404         * gst/gsterror.c: (_gst_core_errors_init),
4405         (_gst_library_errors_init), (_gst_resource_errors_init),
4406         (_gst_stream_errors_init):
4407         * gst/gstobject.c: (gst_object_default_deep_notify):
4408         * gst/gstpad.c: (gst_pad_get_event_masks),
4409         (gst_pad_get_internal_links_default):
4410         * gst/gstplugin.c: (gst_plugin_register_func),
4411         (gst_plugin_get_module):
4412         * gst/gststructure.c: (gst_structure_get_string),
4413         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4414         (gst_structure_to_abbr):
4415         * gst/gstutils.c: (gst_print_element_args):
4416         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4417         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4418         Aplied part of patch #157127: Cleanup of issues reported by 
4419         sparse.
4420         Also do not try to use cothreads when there is no cothread
4421         context yet.
4422
4423 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4424
4425         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4426         (gst_opt_scheduler_iterate):
4427         Applied patch #154061. Running a pipeline in which an element 
4428         calls GST_ELEMENT_ERROR in the chain function, the opt 
4429         scheduler doesn't unref the chain so it never gets freed.
4430
4431 2004-11-02  Wim Taymans  <wim@fluendo.com>
4432
4433         * gst/gststructure.c: (gst_structure_get_abbrs),
4434         (gst_structure_from_abbr), (gst_structure_to_abbr):
4435         Remove that ugly if-then thing in the code that converts
4436         between strings and types.
4437
4438 2004-11-02  Wim Taymans  <wim@fluendo.com>
4439
4440         * gst/gstscheduler.c: (gst_scheduler_add_element),
4441         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4442         Aplied clock distribution patch, this should fix bug
4443         #148787.
4444
4445 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4446
4447         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4448
4449         * po/LINGUAS:
4450         * po/nb.po:
4451           Added Norwegian Bokmaal translation
4452
4453 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4454
4455         * tools/gst-inspect.c: (print_signal_info):
4456           print signal arguments as pointers if they are
4457
4458 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4459
4460         * docs/pwg/building-boiler.xml:
4461           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4462
4463 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4464
4465         * gst/parse/parse.l:
4466         * testsuite/parse/parse1.c: (main):
4467         Since parse can do 'element name=a:b' make 'a:b.' work as
4468         well. 
4469         Added testcase to verify fix.
4470
4471 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4472
4473         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4474         Use the realpad when printing the direction.
4475         Add extra \n when printing extensions of typefind factories.
4476
4477 2004-10-13  David Schleef  <ds@schleef.org>
4478
4479         * examples/manual/Makefile.am: $< isn't portable in Makefile
4480         rules.
4481
4482 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4483
4484         * docs/gst/tmpl/gstobject.sgml:
4485         * docs/gst/tmpl/gstplugin.sgml:
4486         * docs/gst/tmpl/gstpluginfeature.sgml:
4487         * docs/gst/tmpl/gstregistry.sgml:
4488         * docs/gst/tmpl/gstversion.sgml:
4489         * gst/gstbin.c:
4490           more api documentation
4491         * gst/gstplugin.c: (gst_plugin_register_func),
4492         (gst_plugin_check_file), (gst_plugin_load_file):
4493           better error signaling and logging
4494
4495 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4496
4497         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4498           Subtract current queue contents from position queries.
4499
4500 2004-10-11  Johan Dahlin  <johan@gnome.org>
4501
4502         * gst/gsturi.c (gst_uri_get_location): unescape string
4503         (gst_uri_construct): escape string.
4504
4505 2004-10-11  Benjamin Otte  <otte@gnome.org>
4506
4507         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4508         (gst_pad_try_set_caps_nonfixed):
4509           allow renegotiation of unconnected pads (as inside spider). Simply
4510           return OK if unconnected - mimic try_set_caps there.
4511
4512 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4513
4514         * gst/gstbin.c: (gst_bin_sync_children_state):
4515           Add missing break.
4516
4517 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4518
4519         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4520         Set element to EOS before sending EOS event
4521
4522 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4523
4524         * gst/elements/gsttypefindelement.c:
4525         (gst_type_find_element_handle_event):
4526         Handle EOS events when doing the transition from
4527         typefind to data passing. This should fix the
4528         infinite loops in short files.
4529
4530 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4531
4532         * gst/gstthread.c: (gst_thread_change_state),
4533         (gst_thread_child_state_change):
4534         Make sure no iteration happens while performing
4535         the state change as it could mess up the internal
4536         consistency of the thread state.
4537
4538 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4539
4540         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4541         (gst_thread_change_state), (gst_thread_child_state_change):
4542         Do not try to grab the iterate lock in the state change method
4543         when we are in the same thread as the iterate or else we
4544         could deadlock. Some other cleanups.
4545
4546 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4547
4548         * configure.ac:
4549           bump nano to cvs
4550
4551 === release 0.8.7 ===
4552
4553 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4554
4555         * configure.ac:
4556         * NEWS:
4557         * RELEASE:
4558         * configure.ac:
4559           releasing 0.8.7, "A Cruise"
4560
4561 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4562
4563         * docs/random/mimetypes:
4564         Add an entry for Sony ATRAC3 audio format with mime-type
4565         used by rmdemux et riff-read
4566
4567 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4568
4569         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4570         Push the buffer store instead of clearing it in case that
4571         the stream is not seekable.
4572
4573 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4574
4575         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4576         (gst_thread_main_loop):
4577         Lock the iteration and the state change so that automatic
4578         negotiation and fixation does not happen at the same time
4579         as the in stream negotiation.
4580
4581 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4582
4583         * configure.ac:
4584           bump nano to cvs
4585
4586 === release 0.8.6 ===
4587
4588 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4589
4590         * configure.ac:
4591         * NEWS:
4592         * RELEASE:
4593         * configure.ac:
4594           releasing 0.8.6, "Narc"
4595
4596 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4597
4598         * configure.ac:
4599           prerel bump
4600
4601 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4602
4603         patch by: Steve Lhomme
4604
4605         * gst/elements/gstfakesrc.c:
4606         * gst/elements/gstidentity.c:
4607         * gst/gstthread.c:
4608           Fix for #153881
4609
4610 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4611
4612         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4613         Fix threadsafety of the crc checking function.
4614
4615 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4616
4617         patch by: Ronald Bultje
4618
4619         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4620         (gst_type_find_element_handle_event),
4621         (gst_type_find_element_chain):
4622         * gst/elements/gsttypefindelement.h:
4623          #153657.
4624          Filter out discont event from seekable sources when typefind
4625          asks them to seek.  Fixes typefind with demuxers for
4626          avi, asf and matroska.
4627
4628 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4629
4630         * docs/gst/gstreamer-sections.txt:
4631         * gst/gstcaps.c:
4632         * gst/gstcaps.h:
4633         * gst/gstpad.c:
4634           Revert preferred caps: (#147789)
4635
4636 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4637
4638         * win32/dirent.c:
4639           fix a memory leak
4640
4641 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4642
4643         * configure.ac:
4644           bump for prerelease
4645
4646 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4647
4648         * docs/Makefile.am:
4649         * docs/manual/elements-api.xml:
4650           restructure so that common stuff is shown first
4651         * docs/manual/init-api.xml:
4652           convert to examples
4653         * docs/manual/manual.xml:
4654         * docs/manuals.mak:
4655         * docs/url.entities:
4656           link to API on the website, possibly override later in build
4657         * examples/manual/.cvsignore:
4658           ignore more
4659         * examples/manual/Makefile.am:
4660           add more examples
4661         * examples/manual/extract.pl:
4662           error out on failure
4663
4664 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4665
4666         * docs/gst/tmpl/gstthread.sgml:
4667         * docs/manual/init-api.xml:
4668         * examples/manual/Makefile.am:
4669           convert two code bits to examples
4670
4671 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4672
4673         * gst/gstelement.c: (gst_element_change_state):
4674           Well, actually, I was about to remove this insane assert when
4675           I noticed Wim already did that. A warning is nice so we can
4676           fix actual ugs (using --g-fatal-warnings and backtraces), so
4677           I added that instead.
4678
4679 2004-09-06  Wim Taymans  <wim@fluendo.com>
4680
4681         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4682         (gst_element_threadsafe_properties_post_run),
4683         (gst_element_set_state), (gst_element_change_state):
4684         Added extra refcounting around various places. 
4685
4686 2004-09-06  Wim Taymans  <wim@fluendo.com>
4687
4688         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4689         Fix debug info.
4690
4691 2004-09-06  Wim Taymans  <wim@fluendo.com>
4692
4693         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4694         (remove_from_group):
4695         Some more debug info.
4696
4697 2004-09-03  Wim Taymans  <wim@fluendo.com>
4698
4699         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4700         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4701         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4702         (gst_fakesrc_get), (gst_fakesrc_change_state):
4703         * gst/elements/gstfakesrc.h:
4704         * gst/elements/gstidentity.c: (gst_identity_class_init),
4705         (gst_identity_init), (gst_identity_chain),
4706         (gst_identity_set_property), (gst_identity_get_property),
4707         (gst_identity_change_state):
4708         * gst/elements/gstidentity.h:
4709         Added datarate properties to limit the datarate.
4710
4711 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4712
4713         * gst/autoplug/gstspider.c: (plugin_init):
4714           don't set a rank. We don't want to autoplug by inserting spiders.
4715
4716 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4717
4718         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4719         (gst_spider_identity_plug):
4720           add a template for spider's sink
4721         * gst/gst.c: (gst_register_core_elements):
4722           queue's rank should be NULL, we don't want spider to add it.
4723
4724 2004-08-18  David Schleef  <ds@schleef.org>
4725
4726         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4727         * docs/libs/Makefile.am: same
4728         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4729         * docs/random/ds/0.9-planning: random additions
4730         * docs/random/ds/0.9-suggested-changes: same
4731         * gst/gstxml.h: remove vestigal GstXMLNs definition
4732
4733         Preferred caps: (#147789)
4734         * docs/gst/gstreamer-sections.txt: Add symbols
4735         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4736         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4737         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4738         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4739         (gst_caps_get_preferred), (gst_caps_set_preferred),
4740         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4741         (gst_caps_use_preferred): Handle caps preferences
4742         * gst/gstcaps.h: Add caps preferences
4743         * gst/gstpad.c: (gst_pad_link_get_preferred),
4744         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4745         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4746         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4747         negotiation.
4748
4749 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4750
4751         * gst/autoplug/gstspideridentity.c:
4752         (gst_spider_identity_request_new_pad):
4753         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4754         (gst_aggregator_init):
4755         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4756         (gst_fakesink_init):
4757         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4758         (gst_fakesrc_init):
4759         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4760         (gst_fdsink_init):
4761         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4762         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4763         (gst_filesink_init):
4764         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4765         (gst_filesrc_init):
4766         * gst/elements/gstidentity.c: (gst_identity_base_init),
4767         (gst_identity_init):
4768         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4769         (gst_multifilesrc_init):
4770         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4771         (gst_pipefilter_init):
4772         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4773         (gst_statistics_init):
4774         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4775         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4776           s/gst_pad_new/&_from_template/
4777           register pad templates in the base_init function
4778           add static pad template definitions
4779
4780 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4781
4782         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4783         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4784         * testsuite/refcounting/pad.c: (main):
4785         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4786           s/gst_pad_new/&_from_template/
4787           prepare deprecation of gst_pad_new
4788
4789 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4790
4791         patch by: Luca Ognibene <skaboy81@virgilio.it>
4792
4793         * gst/gstcaps.c:
4794         * gst/gstelement.c:
4795         * gst/gstpad.c:
4796         * gst/gstxml.c:
4797           fix memleaks.  Fixes #150001
4798
4799 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4800
4801         * docs/random/ds/0.9-suggested-changes:
4802           add notes - mostly about pad templates
4803
4804 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4805
4806         * win32/GStreamer.vcproj:
4807           temporary locale files are .gmo not .mo
4808
4809 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4810
4811         * configure.ac: bump nano to cvs
4812
4813 === release 0.8.5 ===
4814
4815 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4816
4817         * configure.ac:
4818           releasing 0.8.5, "Stuttgart"
4819         * NEWS:
4820         * RELEASE:
4821         * configure.ac:
4822         * docs/random/release:
4823           updates for release
4824
4825 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4826
4827         patch by: Wim Taymans (wim@fluendo.com)
4828
4829         * gst/gstbuffer.c:
4830         * gst/gstindex.h:
4831         * libs/gst/dataprotocol/dataprotocol.c:
4832           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4833
4834 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4835
4836         * Makefile.am:
4837         * win32/MANIFEST:
4838           add win32 dir to the build.  Fixes #149981.
4839
4840 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4841
4842         * configure.ac:
4843           bump libtool versioning
4844         * gst/gststructure.c:
4845           mark function as static
4846         * po/af.po:
4847         * po/az.po:
4848         * po/ca.po:
4849         * po/cs.po:
4850         * po/en_GB.po:
4851         * po/fr.po:
4852         * po/nl.po:
4853         * po/sq.po:
4854         * po/sr.po:
4855         * po/sv.po:
4856         * po/tr.po:
4857         * po/uk.po:
4858           translations update
4859         * win32/README.txt:
4860           trademark protection
4861
4862 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4863
4864         * configure.ac:
4865           fix GST_ORIGIN
4866           set GST_PACKAGE to source, and distinguish between release and other
4867         * tools/gst-inspect.c:
4868           print out plugin an element factory is part of so we see this info
4869
4870 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
4871
4872         * docs/gst/gstreamer-sections.txt:
4873         * docs/gst/tmpl/gstbuffer.sgml:
4874         * docs/gst/tmpl/gstschedulerfactory.sgml:
4875           reorder docs a little, make GstBuffer's more sensible.
4876         * gst/gstbuffer.h:
4877           API: added GST_BUFFER_FLAG_DELTA_UNIT
4878         * gst/gstscheduler.c:
4879           comment API addition
4880
4881 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4882
4883         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
4884           work with non-regular files that can be mmapped (like /dev/zero)
4885         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
4886           get rid of typefinds that require a seek when we can't seek instead
4887           of trying them over and over again
4888         * tools/gst-launch.c: (idle_func), (error_cb), (main):
4889           return non-zero failure value when the pipeline was interrupted or
4890           an error occurred
4891
4892 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4893
4894         * win32/config.h:
4895         * win32/GStreamer.vcproj:
4896           compile and install the locales
4897
4898 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4899
4900         * gst/gstvalue.c:
4901           fix a possible memory leak under Windows
4902
4903 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
4904
4905         * win32/GStreamer.vcproj:
4906           fix a memory leak that occured under Windows
4907         * win32/gstreamer.def:
4908           add gst_scheduler_register
4909
4910 2004-08-11  Benjamin Otte  <otte@gnome.org>
4911
4912         * docs/gst/gstreamer-sections.txt:
4913         * gst/gstscheduler.c: (gst_scheduler_register):
4914         * gst/gstscheduler.h:
4915           API:
4916           add gst_scheduler_register shortcut similar to gst_element_register
4917         * gst/schedulers/entryscheduler.c: (plugin_init):
4918         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
4919         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
4920           use it
4921
4922 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
4923
4924         * gst/gstvalue.h:
4925           fix a memory leak that occured under Windows
4926
4927 2004-08-10  Colin Walters  <walters@redhat.com>
4928
4929         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
4930         Don't use O_EXCL to open temporary registry.  It will prevent
4931         registry creation if a temporary one already exists, which
4932         is unnecessary.
4933
4934 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4935
4936         * docs/gst/gstreamer-sections.txt:
4937         * docs/gst/tmpl/gstvalue.sgml:
4938           remove some valuable stuff from the documentation due to the use of GST_EXPORT
4939
4940 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4941
4942         * win32/gstbytestream.vcproj:
4943         * win32/gstelements.vcproj:
4944         * win32/gstgetbits.vcproj:
4945         * win32/gst-inspect.vcproj:
4946         * win32/gst-launch.vcproj:
4947         * win32/gstoptimalscheduler.vcproj:
4948         * win32/GStreamer.vcproj:
4949         * win32/gst-register.vcproj:
4950         * win32/gstspider.vcproj:
4951           update the include and lib dirs to fit standard libraries as
4952           described in the Win32 manual
4953
4954 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4955
4956         * win32/config.h:
4957         * win32/gstversion.h:
4958           enable NLS again, push the version number for the coming 0.8.5 release
4959
4960 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
4961
4962         * gst/gstvalue.h:
4963           export gst_type_XXX for windows DLLs
4964
4965 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4966
4967         * docs/faq/gst-uninstalled:
4968           fix PKG_CONFIG_PATH and PYTHONPATH
4969         * gst/schedulers/Makefile.am:
4970           cleanup
4971         * libs/gst/bytestream/bytestream.c:
4972           remove newline
4973         * po/LINGUAS:
4974         * po/sq.po:
4975           adding Albanian translation (Laurent Dhima)
4976         * po/cs.po:
4977           updated
4978
4979 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4980
4981         * po/ca.po:
4982         * po/sv.po:
4983           updated translations
4984
4985 2004-08-04  Benjamin Otte  <otte@gnome.org>
4986
4987         * tests/mass_elements.c: (main):
4988           allow specifying src and sink element explicitly, so I can test
4989           videotestsrc instead of fakesrc
4990
4991 2004-08-04  Benjamin Otte  <otte@gnome.org>
4992
4993         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
4994         (gst_structure_id_empty_new), (gst_structure_empty_new),
4995         (gst_structure_copy):
4996           add gst_structure_id_empty_new_with_size to allow preallocating
4997           value array sizes. Use this in gst_structure_copy to get rid of
4998           reallocs.
4999           don't do quark=>string=>quark when copying structures
5000
5001 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
5002
5003         * docs/manual/win32.xml:
5004         * win32/README.txt:
5005           update documentation with the clean version of dependencies
5006
5007 2004-08-03  Benjamin Otte  <otte@gnome.org>
5008
5009         * gst/schedulers/entryscheduler.c:
5010         (gst_entry_scheduler_remove_element):
5011           fix for GST_DISABLE_DEBUG
5012         * tools/gst-launch.c: (print_tag):
5013           fixes for G_DISABLE_ASSERT
5014
5015 2004-08-03  Benjamin Otte  <otte@gnome.org>
5016
5017         * gst/gst.c: (gst_register_core_elements):
5018           fix for G_DISABLE_ASSERT
5019         * gst/gstinfo.c: (__gst_in_valgrind):
5020           add for GST_DISABLE_DEBUG
5021
5022 2004-08-03  Benjamin Otte  <otte@gnome.org>
5023
5024         * gst/parse/parse.l:
5025           fix for G_DISABLE_ASSERT
5026
5027 2004-08-03  Wim Taymans  <wim@fluendo.com>
5028
5029         * gst/gstbin.c: (gst_bin_get_type),
5030         (gst_bin_child_state_change_func):
5031         * gst/gstthread.c: (gst_thread_change_state):
5032         Backported some debug logging from a reverted patch
5033         Don't try to destroy the thread twice. Added some more
5034         debugging in GstThread. Unlock and signal even if we
5035         are in the thread context.
5036
5037 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5038
5039         * po/uk.po:
5040           updated translation
5041
5042 2004-07-30  David Schleef  <ds@schleef.org>
5043
5044         * gst/gstatomic_impl.h: Enable atomic code for x86_64
5045
5046 2004-07-29  David Schleef  <ds@schleef.org>
5047
5048         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
5049         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
5050
5051 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5052
5053         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5054         (gst_bin_add_func), (gst_bin_remove_func),
5055         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
5056         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
5057         (gst_bin_change_state_norecurse), (gst_bin_dispose),
5058         (gst_bin_sync_children_state):
5059         * gst/gstbin.h:
5060         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
5061         (gst_thread_change_state):
5062         * testsuite/states/Makefile.am:
5063           revert state change patches as agreed so we can rework them
5064           gradually
5065
5066 2004-07-29  Benjamin Otte  <otte@gnome.org>
5067
5068         * libs/gst/control/Makefile.am:
5069           link to libgstreamer (fixes Debian bug 262019, see
5070           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
5071
5072 2004-07-29  Wim Taymans  <wim@fluendo.com>
5073
5074         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5075         (check_from_fraction_convert), (transform_test), (main):
5076         Make the test less pedantic about float roundoff errors.
5077
5078 2004-07-29  Benjamin Otte  <otte@gnome.org>
5079
5080         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
5081         (gst_filesrc_srcpad_event):
5082           make seek events to before start/after end of file not fail, but
5083           seek to start/end instead
5084         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
5085           add more output
5086
5087 2004-07-29  Benjamin Otte  <otte@gnome.org>
5088
5089         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5090           check that caps are fixed
5091         * gst/gstpad.c: (gst_pad_template_new):
5092           don't try to simplify caps, costs too much time on gst_init
5093         * gst/gstplugin.c: (gst_plugin_add_feature):
5094           G_ERROR if features are added twice
5095         * gst/gsttypefind.c: (gst_type_find_register):
5096         * gst/gstelementfactory.c: (gst_element_register):
5097           don't add features twice
5098         * docs/random/ds/0.9-suggested-changes:
5099           add note about possible gst_init optimization
5100
5101 2004-07-28  David Schleef  <ds@schleef.org>
5102
5103         * testsuite/elements/Makefile.am:
5104         * testsuite/elements/struct_i386.h:
5105         * testsuite/elements/struct_size.c: (main):  A little test
5106         to keep distcheck from working if someone changes a structure
5107         size accidentally.
5108
5109 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5110
5111         * docs/libs/Makefile.am:
5112         * docs/libs/gstreamer-libs-docs.sgml:
5113         * docs/libs/gstreamer-libs-sections.txt:
5114         * docs/libs/tmpl/gstbytestream.sgml:
5115         * docs/libs/tmpl/gstcontrol.sgml:
5116         * docs/libs/tmpl/gstdataprotocol.sgml:
5117         * docs/libs/tmpl/gstgetbits.sgml:
5118         * libs/gst/bytestream/Makefile.am:
5119         * libs/gst/bytestream/bytestream.c:
5120         * libs/gst/bytestream/bytestream.h:
5121         * libs/gst/control/Makefile.am:
5122         * libs/gst/dataprotocol/Makefile.am:
5123         * libs/gst/getbits/Makefile.am:
5124         * libs/gst/getbits/getbits.h:
5125           various doc and style fixes, adding bytestream to libs docs.
5126
5127 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5128
5129         * docs/gst/gstreamer-docs.sgml:
5130         * docs/libs/Makefile.am:
5131         * docs/libs/gstreamer-libs-docs.sgml:
5132         * docs/libs/gstreamer-libs-sections.txt:
5133         * libs/gst/control/dparam.c:
5134           more doc fixes.  gst-libs docs now build the same way as gst.
5135
5136 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5137
5138         * configure.ac:
5139         * testsuite/Makefile.am:
5140         * testsuite/bins/Makefile.am:
5141         * testsuite/caps/Makefile.am:
5142         * testsuite/cleanup/Makefile.am:
5143         * testsuite/clock/Makefile.am:
5144         * testsuite/debug/Makefile.am:
5145         * testsuite/dlopen/Makefile.am:
5146         * testsuite/dynparams/Makefile.am:
5147         * testsuite/elements/.cvsignore:
5148         * testsuite/elements/Makefile.am:
5149         * testsuite/enumcaps/Makefile.am:
5150         * testsuite/enumcaps/enumcaps.c:
5151         * testsuite/ghostpads/Makefile.am:
5152         * testsuite/indexers/Makefile.am:
5153         * testsuite/negotiation/Makefile.am:
5154         * testsuite/parse/Makefile.am:
5155         * testsuite/plugin/Makefile.am:
5156         * testsuite/refcounting/Makefile.am:
5157         * testsuite/schedulers/.cvsignore:
5158         * testsuite/states/Makefile.am:
5159         * testsuite/tags/Makefile.am:
5160         * testsuite/threads/Makefile.am:
5161           fold enumcaps into caps dir
5162           clean up Makefile.am's for testsuite
5163
5164 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5165
5166         * docs/gst/Makefile.am:
5167         * docs/libs/Makefile.am:
5168           clean up docs build.  Fixes needless rebuilding of template files.
5169
5170 2004-07-28  Wim Taymans  <wim@fluendo.com>
5171
5172         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5173         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5174         Make sure that a bin state change tries to keep the children
5175         in sync. 
5176         Added debug logging to the thread.
5177
5178 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5179
5180         * win32/GStreamer.vcproj:
5181         * win32/gstreamer.def:
5182           more exports for the plugins
5183
5184 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5185
5186         * win32/gstgetbits.vcproj:
5187         * win32/gstgetbits.def:
5188         * win32/msvc71.sln:
5189           add support for the getbits plugin
5190
5191 2004-07-27  Wim Taymans  <wim@fluendo.com>
5192
5193         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5194         (gst_value_transform_fraction_double), (_gst_value_initialize):
5195         * testsuite/caps/Makefile.am:
5196         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5197         (check_from_fraction_convert), (transform_test), (main):
5198         Added transform functions between double and fraction.
5199         Added testcase to verify transforms
5200
5201 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5202
5203         * win32/GStreamer.vcproj:
5204           rename GStreamer-0.8.lib to libgstreamer.lib
5205
5206 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5207
5208         * win32/gstelements.vcproj:
5209         * win32/gstoptimalscheduler.vcproj:
5210           fixes for the Release build
5211
5212 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5213
5214         * win32/config.h:
5215           update the version number
5216
5217 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5218
5219         * win32/GStreamer.vcproj:
5220           add gstinterface to the build
5221
5222 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5223
5224         * win32/gstreamer.def:
5225           add many definitions needed by plugins,
5226           GST_CAT_DEFAULT only available in the Debug build ?
5227
5228 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5229
5230         * gst/gstelement.c: (gst_element_set_eos_recursive):
5231           various whitespace fixes.
5232           doc fix, fixes #148497
5233
5234 2004-07-25  Benjamin Otte  <otte@gnome.org>
5235
5236         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5237           don't delay links on the sink elements, it causes unnegotiated
5238           links.
5239         * gst/elements/gsttypefindelement.c:
5240         (gst_type_find_element_base_init):
5241           add our padtemplates, we indeed do have some.
5242         * gst/elements/gsttypefindelement.c:
5243         (gst_type_find_element_handle_event),
5244         (gst_type_find_element_chain):
5245           don't push data when typefinding failed.
5246         * gst/gstpad.c: (gst_pad_link_fixate):
5247           check that no fixate function returns empty caps.
5248         * gst/gstpad.c: (gst_pad_push):
5249           check that the link is negotiated before data gets pushed.
5250         * tools/gst-register.c: (main):
5251           don't assert (fixes #148283)
5252
5253 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5254
5255         * docs/gst/gstreamer-sections.txt:
5256         * docs/gst/tmpl/gstconfig.sgml:
5257           add GST_PLUGIN_EXPORT definition
5258
5259 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5260
5261         * gst/gstplugin.h:
5262         * gst/gstconfig.h.in:
5263         * win32/gstconfig.h:
5264         * win32/gstelements.def:
5265         * win32/gstelements.vcproj:
5266         * win32/gstoptimalscheduler.def:
5267         * win32/gstoptimalscheduler.vcproj:
5268         * win32/gstspider.def:
5269         * win32/gstspider.vcproj:
5270           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5271
5272 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5273
5274         * docs/gst/gstreamer-sections.txt:
5275           remove GST_CAT_DEFAULT because the type has changed
5276
5277 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5278
5279         * win32/gstbytestream.vcproj:
5280         * win32/gstelements.vcproj:
5281         * win32/gst-inspect.vcproj:
5282         * win32/gst-launch.vcproj:
5283         * win32/gstoptimalscheduler.vcproj:
5284         * win32/GStreamer.vcproj:
5285         * win32/gst-register.vcproj:
5286         * win32/gstspider.vcproj:
5287         * win32/msvc71.sln:
5288           Copy the files where needed after building, The testsuite will be
5289           built separately
5290
5291 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5292
5293         * win32/config.h:
5294         * win32/README.txt:
5295         * docs/manual/win32.xml:
5296         Fixed the plugin and GStreamer location
5297
5298 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5299
5300         * win32/gstreamer.def:
5301         More exports for the plugins
5302
5303 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5304
5305         * gst/gstinfo.h:
5306         Marc was right, we need to export literally GST_CAT_DEFAULT
5307
5308 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5309
5310         * win32/config.h:
5311         NLS crashes in gettext, disabled until this is solved
5312
5313 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5314
5315         * win32/gst-inspect.vcproj:
5316         * win32/gst-launch.vcproj:
5317         Should use NLS when available
5318
5319 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5320
5321         * gst/registries/gstxmlregistry.c:
5322         removing the file doesn't seem to be a good idea on Linux
5323
5324 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5325
5326         * gst/registries/gstxmlregistry.c:
5327         Remove the registry before renaming the tempfile (needed for Windows)
5328
5329 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5330
5331         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5332         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5333         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5334         * gst/elements/gstmultifilesrc.h:
5335         Added newmedia property so it generates newmedia events between each
5336         file when property is set, as well as fixed eos handling
5337
5338 2004-07-22  David Schleef  <ds@schleef.org>
5339
5340         * gst/gststructure.c: (gst_structure_id_empty_new),
5341         (gst_structure_empty_new):  Set type field correctly.
5342         * gst/gststructure.h: Check type field correctly.
5343         * testsuite/caps/Makefile.am:
5344         * testsuite/caps/structure.c: (test1), (main): Add a very small
5345         test for structures.
5346
5347 2004-07-22  David Schleef  <ds@schleef.org>
5348
5349         * docs/random/ds/0.9-suggested-changes: more comments
5350         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5351
5352 2004-07-22  Benjamin Otte  <otte@gnome.org>
5353
5354         * gst/gstelementfactory.c: (gst_element_register):
5355           set the factory in the class struct, so gst_element_get_factory
5356           actually works
5357         * gst/parse/grammar.y:
5358           set element to playing when it gets unlocked as we can't rely on the
5359           bin state - all elements in the bin state might still be locked in
5360           NULL)
5361
5362 2004-07-22  Benjamin Otte  <otte@gnome.org>
5363
5364         * gst/gstelement.c: (gst_element_set_state_func):
5365           make this a static function
5366
5367 2004-07-22  Wim Taymans  <wim@fluendo.com>
5368
5369         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5370         (gst_opt_scheduler_pad_link):
5371         fix 147894-2 and the group_link problem.
5372
5373 2004-07-22  Wim Taymans  <wim@fluendo.com>
5374
5375         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5376         (handoff_identity), (main):
5377         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5378         (handoff_identity), (main):
5379         * testsuite/schedulers/Makefile.am:
5380         * testsuite/schedulers/group_link.c: (main):
5381         Show bug in scheduler when linking chain and loop based element 
5382         where the chain based element was not yet in a group.
5383
5384 2004-07-21  Benjamin Otte  <otte@gnome.org>
5385
5386         * gst/.cvsignore:
5387         * gst/autoplug/.cvsignore:
5388         * gst/elements/.cvsignore:
5389         * gst/indexers/.cvsignore:
5390         * libs/gst/bytestream/.cvsignore:
5391         * libs/gst/control/.cvsignore:
5392         * libs/gst/getbits/.cvsignore:
5393         * testsuite/states/.cvsignore:
5394         * testsuite/threads/.cvsignore:
5395           keep this up to date, since I seem to be the only one who cares
5396           about not missing files on commits (editor's note: no you don't,
5397           but feel free to change them at the time you add stuff instead
5398           of later on)
5399
5400 2004-07-21  Benjamin Otte  <otte@gnome.org>
5401
5402         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5403         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5404         (gst_bin_child_state_change_func), (set_kid_state_func),
5405         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5406           make state changes work correctly and reentrant (so removing
5407           elements from bins during state changes of bins doesn't cause
5408           segfaults or even wrong states)
5409           add debugging category and debugging output to print children states
5410         * gst/gstbin.c: (gst_bin_dispose): 
5411           add some assertion checks
5412         * gst/gstbin.h:
5413         * gst/gstbin.c: (gst_bin_sync_children_state):
5414           deprecate this function - it just does gst_bin_set_state (bin,
5415           GST_STATE (bin)) 
5416         * testsuite/threads/queue.c: (main):
5417           don't use gst_bin_sync_children_state anymore
5418         * testsuite/states/Makefile.am:
5419         * testsuite/states/bin.c:
5420           test that the state changes of bins work as expected
5421         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5422           some adjustments to change states correctly, too
5423         * gst/gstthread.c: (gst_thread_change_state):
5424           don't enable/disable "threadsafe" properties, they're unused and
5425           cause random segfaults
5426         * testsuite/threads/Makefile.am:
5427           the queue check randomly passes now, ignore it
5428
5429 2004-07-21  Benjamin Otte  <otte@gnome.org>
5430
5431         * gst/gstpad.c:
5432           check if data is NULL before outputting debug info. (fixes #145100)
5433
5434 2004-07-21  Benjamin Otte  <otte@gnome.org>
5435
5436         * gst/schedulers/entryscheduler.c:
5437         (gst_entry_scheduler_loop_wrapper),
5438         (gst_entry_scheduler_chain_wrapper),
5439         (gst_entry_scheduler_get_wrapper):
5440           reset the state when the cothread starts, so we don't get assertion
5441           failures on restarting of cothreads
5442
5443 2004-07-20  Benjamin Otte  <otte@gnome.org>
5444
5445         * gst/gstelement.c: (gst_element_link_pads_filtered):
5446           use correct sinkpad, if only sinkpad is specified, but not srcpad
5447           (fixes #147889)
5448         * gst/gstelement.c: (gst_element_set_state_func),
5449         (gst_element_change_state): ref/unref the element, signal handlers
5450         could get rid of the element otherwise
5451
5452 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5453
5454         * docs/random/ds/0.9-suggested-changes:
5455           Make note about renaming fixed-list to array.
5456         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5457         (_gst_value_initialize):
5458           Add array intersections.
5459         * testsuite/caps/intersect2.c: (main):
5460           Add test for array intersections.
5461
5462 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5463
5464         * configure.ac: back to cvs
5465
5466 === release 0.8.4 ===
5467
5468 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5469
5470         * configure.ac:
5471           releasing 0.8.4, "Paella"
5472           bump libtool versioning
5473
5474 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5475
5476         * po/LINGUAS:
5477         * po/ca.po:
5478           adding Catalan translation (Jordi Mallach)
5479
5480 2004-07-20  Wim Taymans  <wim@fluendo.com>
5481
5482         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5483         (handoff_identity), (main):
5484         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5485         (handoff_identity), (main):
5486         * testsuite/schedulers/Makefile.am:
5487         Added failing testcase for variant of #147894
5488
5489 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5490
5491         patch by: David Moore
5492
5493         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5494         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5495         (group_migrate_connected):
5496         * testsuite/schedulers/Makefile.am:
5497           fix for #142813 (Deadlock in optimal scheduler)
5498
5499 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5500
5501         patch by: Wim Taymans
5502
5503         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5504         (gst_opt_scheduler_schedule_run_queue),
5505         (gst_opt_scheduler_get_wrapper), (get_group),
5506         (group_migrate_connected):
5507         * testsuite/schedulers/Makefile.am:
5508           fix for #147819 (Add some checks in the opt scheduler)
5509
5510 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5511
5512         patch by: Benjamin Otte
5513
5514         * gst/gstelementfactory.c: (__gst_element_details_set):
5515           fix for #147929: running gst-register in non-utf8 locale can cause
5516           invalid registry
5517
5518 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5519
5520         patch by: Wim Taymans
5521
5522         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5523         (group_has_element), (element_get_reachables_func),
5524         (group_migrate_connected):
5525           fix for #147894 (opt scheduler decoupled elements mismanagement)
5526         * testsuite/schedulers/Makefile.am:
5527           testsuite app now passes
5528
5529 2004-07-19  Wim Taymans  <wim@fluendo.com>
5530
5531         * testsuite/schedulers/147819.c: (handoff_identity1),
5532         (handoff_identity2), (main):
5533         * testsuite/schedulers/Makefile.am:
5534         Added testcase for bug 147819
5535
5536 2004-07-19  Wim Taymans  <wim@fluendo.com>
5537
5538         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5539         (handoff_identity), (main):
5540         * testsuite/schedulers/Makefile.am:
5541         Added testcase for bug 147894
5542
5543 2004-07-16  Wim Taymans  <wim@fluendo.com>
5544
5545         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5546         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5547         * testsuite/schedulers/Makefile.am:
5548         Added testsuite for bug 142183 in its two incarnations. Refcount
5549         is not increased for scheduled elements and threadsafe properties
5550         mutexes are not properly unlocked.
5551
5552 2004-07-16  Wim Taymans  <wim@fluendo.com>
5553
5554         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5555         (create_chain), (destroy_chain), (create_group), (destroy_group),
5556         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5557         (group_dec_link), (gst_opt_scheduler_pad_link),
5558         (group_inc_links_for_element), (group_migrate_connected):
5559         Call group_inc_link with the proper src->sink ordering -- 
5560         break this, and we break sort_chain. patch from wingo for bug
5561         147713.
5562         Partially revert patch 1.89. When adding a loop based element to 
5563         the scheduler, the links to other groups are automatically followed
5564         and incremented. This should not happen because the bin will call
5565         pad_link explicitly for those connection, resulting in them counted 
5566         twice. Results in assertion failure on pipeline cleanup.
5567
5568 2004-07-16  Wim Taymans  <wim@fluendo.com>
5569
5570         * testsuite/schedulers/143777-2.c: (main):
5571         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5572         (main):
5573         * testsuite/schedulers/Makefile.am:
5574         Added cleanup code to testcase 143777-2.
5575         Added testcase to show bug 147713, does not really show the
5576         deadlock as I can't figure out how to trigger it, but it does
5577         demonstrate bad ordering in the scheduler.
5578
5579 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5580
5581         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5582           change strndup to g_strndup.  Fixes #147707
5583
5584 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5585
5586         * po/af.po:
5587         * po/az.po:
5588         * po/cs.po:
5589         * po/en_GB.po:
5590         * po/fr.po:
5591         * po/nl.po:
5592         * po/sr.po:
5593         * po/sv.po:
5594         * po/tr.po:
5595         * po/uk.po:
5596           updated translations
5597
5598 2004-07-16  Benjamin Otte  <otte@gnome.org>
5599
5600         * gst/gstvalue.c: (gst_greatest_common_divisor):
5601           use ints and return ints, fractions only use ints, too, so this
5602           avoids accidently casting multiplications to unsigned
5603         (gst_value_lcopy_fraction): it's ints, not uint32
5604         (gst_value_set_fraction): disallow minint, multiplying and negation
5605           are broken with it
5606         (gst_value_fraction_multiply): fix to make large numbers work and get
5607         rid of the assumption that the multiplication of two ints fits an
5608         int64 - dunno if that's true for all systems
5609         * testsuite/caps/Makefile.am:
5610         * testsuite/caps/fraction-multiply-and-zero.c:
5611         (check_multiplication), (check_equal), (zero_test), (main):
5612           add tests for all the stuff above
5613         * testsuite/caps/value_compare.c: (test1):
5614           fix comment
5615         * tests/.cvsignore:
5616         * testsuite/caps/.cvsignore:
5617         * testsuite/debug/.cvsignore:
5618         * testsuite/dlopen/.cvsignore:
5619         * testsuite/states/.cvsignore:
5620           get up to date
5621
5622 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5623
5624         * docs/manual/bins-api.xml:
5625         * docs/manual/factories.xml:
5626         * docs/manual/helloworld.xml:
5627         * docs/manual/links-api.xml: 
5628           fixes for out of date info, incorrect info and grammar
5629
5630 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5631
5632         * docs/manual/pads.xml:
5633         * docs/manual/pads-api.xml: grammar fix
5634
5635 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5636
5637         * docs/manual/pads-api.xml: typo + grammar fix
5638
5639 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5640
5641         * docs/gst/gstreamer-sections.txt:
5642           add new symbols
5643         * docs/gst/tmpl/gstelement.sgml:
5644         * docs/gst/tmpl/gstpad.sgml:
5645         * docs/gst/tmpl/gsttypes.sgml:
5646         * docs/gst/tmpl/gstvalue.sgml:
5647           update docs
5648         * gst/gststructure.c: (gst_structure_set_valist),
5649         (gst_structure_from_abbr), (gst_structure_to_abbr):
5650         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5651         (gst_greatest_common_divisor), (gst_value_init_fraction),
5652         (gst_value_copy_fraction), (gst_value_collect_fraction),
5653         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5654         (gst_value_get_fraction_numerator),
5655         (gst_value_get_fraction_denominator),
5656         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5657         (gst_value_deserialize_fraction),
5658         (gst_value_transform_fraction_string),
5659         (gst_value_transform_string_fraction),
5660         (gst_value_compare_fraction), (_gst_value_initialize):
5661         * gst/gstvalue.h:
5662           adding GstFraction GValue type, get/set, and multiply
5663         * testsuite/caps/Makefile.am:
5664         * testsuite/caps/fraction.c: (test), (main):
5665         * testsuite/caps/string-conversions.c: (main):
5666         * testsuite/caps/value_compare.c: (test1), (main):
5667           add regression tests for GstFraction
5668
5669 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5670         
5671         * docs/manual/init-api.xml: Grammar fix
5672
5673 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5674
5675         * docs/manual/states.xml: Fix inconsistent information
5676
5677 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5678
5679         * gst/gstelement.c: (gst_element_set_state):
5680         * gst/gstpad.c: (gst_pad_try_set_caps):
5681         * gst/gststructure.c:
5682         * gst/gstthread.c: (gst_thread_child_state_change):
5683         * gst/gstvalue.c: (gst_value_compare_double):
5684         * gst/gstvalue.h:
5685         * testsuite/parse/parse1.c: (main):
5686           debugging additions and style cleanups
5687
5688 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5689
5690         * docs/manual/states.xml: Grammar fix
5691
5692 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5693
5694         * docs/manual/pads.xml: Grammar fix
5695
5696 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5697
5698         * docs/manual/elements.xml: Fixed image reference
5699
5700 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5701
5702         * docs/manual/goals.xml: Grammar fix
5703
5704 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5705
5706         * docs/manual/motivation.xml:
5707         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5708
5709 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5710
5711         * docs/manual/motivation.xml: Fix spelling
5712
5713 2004-07-15  Benjamin Otte  <otte@gnome.org>
5714
5715         * gst/gstelement.h: 
5716           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5717           strings.
5718         * gst/gstelement.c (gst_element_class_init):
5719           GError's are boxed, not objects
5720         * gst/gstmarshal.list:
5721           update list for the fixed error signal
5722
5723 2004-07-14  Andy Wingo  <wingo@pobox.com>
5724
5725         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5726         there all along, but the function wasn't. (guile-gstreamer's build
5727         system uses the address of the function -- I wasn't actually
5728         trying to use this.)
5729
5730 2004-07-14  Andy Wingo  <wingo@pobox.com>
5731
5732         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5733         as gst_pad_proxy_pad_link) just link to every other pad when they
5734         are called. In the case where the graph has cycles, this will mean
5735         that a call to try_set_caps will recurse. Allow this recursion
5736         and return OK, while we wait for the first try_set_caps to give a
5737         proper return value.
5738         (gst_pad_link_call_link_functions): Since this function is the
5739         only one to set the NEGOTIATING flag on a pad, if the flag is set
5740         it means that the link functions have indirectly recursed. If this
5741         happens, error out to avoid infinite recursion and an eventual
5742         SEGV.
5743         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5744         (gst_pad_proxy_getcaps): Intersect the result with the template
5745         caps to ensure that the return value is valid.
5746
5747 2004-07-14  Andy Wingo  <wingo@pobox.com>
5748
5749         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5750         one refcount, the calling function is the owner of the buffer.
5751
5752 2004-07-14  Wim Taymans  <wim@fluendo.com>
5753
5754         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5755         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5756         Fix stupid warning when an element is to be migrated but
5757         is already migrated.
5758
5759 2004-07-14  Wim Taymans  <wim@fluendo.com>
5760
5761         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5762         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5763         Make sure that a single non-loop-based element does not 
5764         end up in a group. This fixes the testsuite again.
5765
5766 2004-07-14  Wim Taymans  <wim@fluendo.com>
5767
5768         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5769         (add_to_group), (merge_groups), (schedule_group),
5770         (gst_opt_scheduler_get_wrapper), (group_elements),
5771         (group_dec_link), (gst_opt_scheduler_pad_link),
5772         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5773         (gst_opt_scheduler_iterate):
5774         move isolated groups to a new chain.
5775         Emit a warning instead of segfaulting in some error cases.
5776         Fix a bug where the link count between groups was not calculated 
5777         correctly. Fixes #144510.
5778
5779 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5780         * gst/elements/gstfilesrc.c:
5781           Binary files support under Windows now OK
5782       
5783 2004-07-13  Benjamin Otte  <otte@gnome.org>
5784
5785           compatibility fixes for Solaris 8/gcc 2.95
5786         * configure.ac:
5787           include libintl libs in LDFLAGS
5788         * gstvalue.c (gst_value_deserialize_buffer):
5789           cast isxdigit stuff to int to silence compiler warning
5790
5791 2004-07-12  Benjamin Otte  <otte@gnome.org>
5792
5793         * gst/gsttypes.h:
5794           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5795           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5796           just causes support madness
5797         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5798           make it work without this
5799         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5800         (gst_file_index_commit):
5801           glib IO channels don't want binary mode
5802         * testsuite/bytestream/filepadsink.c: (main):
5803         * testsuite/bytestream/test1.c: (read_param_file):
5804           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5805
5806 2004-07-12  Benjamin Otte  <otte@gnome.org>
5807
5808         * gst/gstelement.c: (gst_element_class_init),
5809         (gst_element_set_state), (gst_element_set_state_func):
5810           virutalize gst_element_set_state, use set_state member in class
5811           struct that was already added in 0.7 for this.
5812         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5813         (gst_bin_change_state):
5814           make gst_bin_foreach works similar to other foreach functions, plug
5815           memleaks in it. Make functions using it work with the new approach.
5816           Document gst_bin_foreach, so it can be exported if we want to
5817         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5818           use virtualized set_state to make set_state on bins set the state of
5819           all its children.
5820
5821 2004-07-12  Benjamin Otte  <otte@gnome.org>
5822
5823         * configure.ac:
5824           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5825           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5826         * gst/gstpad.c: (gst_pad_alloc_buffer):
5827           allow buffer_alloc functions to return NULL and allocate a normal
5828           buffer in that case
5829
5830 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5831         * gst/elements/gstfilesink.c:
5832         * gst/elements/gstfilesrc.c:
5833         * gst/indexers/gstfileindex.c:
5834         * gst/gsttypes.h:
5835         * testsuite/bytestream/filepadsink.c:
5836         * testsuite/bytestream/test1.c:
5837           Handle binary files under Windows
5838
5839 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5840         * docs/manual/win32.xml:
5841         * win32/config.h:
5842         * win32/gst-register.vcproj:
5843         * win32/gstreamer.def:
5844           Update to another gettext public build
5845
5846 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5847         * gst/gstplugin.c:
5848           Fix an impossible C syntax
5849         * win32/config.h:
5850           Disable i18n under Windows for the moment
5851         * win32/gst-register.vcproj:
5852           Use this configuration
5853
5854 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
5855         * docs/manual/quotes.xml:
5856           Keep the quotes file alive
5857         * docs/random/ds/0.9-suggested-changes:
5858           Add the suggestion of including a 'rowstride' as part of video
5859           format caps
5860
5861 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5862
5863         * gst/gstelement.c: (gst_element_set_state),
5864         (gst_element_change_state):
5865           d'oh.  Set PENDING state correctly before forcing bin to change.
5866         * gst/gststructure.c: (gst_structure_value_get_generic_type),
5867         (gst_structure_parse_fixed_list):
5868         * gst/schedulers/gstoptimalscheduler.c:
5869         (gst_opt_scheduler_state_transition):
5870         * testsuite/states/parent.c: (main):
5871           remove comment now that it's fixed.
5872
5873 2004-07-11  Benjamin Otte  <otte@gnome.org>
5874
5875         * gst/gstclock.h:
5876           GST_SECOND shouldn't cause a conversion to unsigned.
5877         * testsuite/clock/.cvsignore:
5878         * testsuite/clock/Makefile.am:
5879         * testsuite/clock/signedness.c: (main):
5880           make sure it never will again
5881
5882 2004-07-11  Andy Wingo  <wingo@pobox.com>
5883
5884         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
5885         whose state is higher than the bin state, raise the bin state to
5886         ensure that bin state := highest child state.
5887         
5888 2004-07-11  Andy Wingo  <wingo@pobox.com>
5889
5890         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
5891         procedure on the children of a bin. Assumes that the procedure can
5892         change the set of children.
5893         (set_kid_state_func): New static function.
5894         (gst_bin_change_state): Use gst_bin_foreach to call
5895         set_kid_state_func. Fixes a bug: if a child had a state-change
5896         handler that removes it from the bin, there would be a segfault.
5897         Hopefully it should also work in the case where the state-change
5898         handler on one child adds or removes other children. In any case,
5899         fixes should go to gst_bin_foreach.
5900
5901 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
5902
5903         * gst/gstelement.c: (gst_element_set_state):
5904           compatibility fix for latest plugins release.  Change loop back
5905           to while {}
5906
5907 2004-07-09  Wim Taymans  <wim@fluendo.com>
5908
5909         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
5910         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
5911         (gst_thread_main_loop):
5912         Since remove is virtual in GstBin we must not assume the 
5913         elements GList to have anothing useful.
5914         Add some more logging to GstThread and be a bit more paranoid
5915         when resetting the scheduler.
5916         Set the state of the bin to NULL before removing the children.
5917
5918 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5919
5920         * testsuite/threads/Makefile.am:
5921         * testsuite/threads/threadg.c:
5922           added test to check if problem when removing all elements from a
5923           GstThread before setting GstThread state to NULL
5924
5925 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5926
5927         * docs/gst/tmpl/gstelement.sgml:
5928         * docs/gst/tmpl/gsttypes.sgml:
5929         * gst/gstbin.c: (gst_bin_change_state):
5930         * gst/gstelement.c: (gst_element_set_state),
5931         (gst_element_change_state):
5932           rework so that for bins we try to set the state on all children
5933           as well even if the bin is in the correct state already.
5934           change while to do so at least one iteration is done.
5935           For regular elements, we fall back to the previous behaviour for
5936           now since we first need a new plugins release.
5937         * testsuite/states/parent.c: (main):
5938           test for this case
5939           Fixes #123774
5940
5941 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5942
5943         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
5944         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
5945         (gst_queue_release_locks), (gst_queue_change_state),
5946         (gst_queue_set_property):
5947           add proper lock debugging.  Change dispose to finalize, since
5948           we're freeing mutexes and other stuff which should happen only once.
5949
5950 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5951
5952         * docs/gst/tmpl/gstelement.sgml:
5953         * docs/gst/tmpl/gstplugin.sgml:
5954         * docs/gst/tmpl/gsttypes.sgml:
5955         * docs/pwg/building-state.xml:
5956         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
5957         * gst/gstelement.c: (gst_element_change_state):
5958         * gst/gstthread.c: (gst_thread_change_state):
5959           catch wrong state changes in element base class.
5960
5961 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5962
5963         * gst/gstinfo.h:
5964           clean up layout a little.
5965
5966 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5967
5968         * configure.ac:
5969         * testsuite/Makefile.am:
5970         * testsuite/states/Makefile.am:
5971         * testsuite/states/parent.c: (main):
5972           re-enable states testsuite dir.  Add test for state changes and
5973           parent behaviour
5974
5975 2004-07-09  Wim Taymans  <wim@fluendo.com>
5976
5977         * gst/schedulers/gstoptimalscheduler.c:
5978         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
5979         (element_get_reachables_func), (element_get_reachables),
5980         (debug_element), (rechain_group), (group_migrate_connected),
5981         (gst_opt_scheduler_pad_unlink):
5982         Do not try to migrate decoupled elements to a new group since
5983         they are not added to groups.
5984
5985 2004-07-08  Benjamin Otte  <otte@gnome.org>
5986
5987         * gst/gstelement.c: (gst_element_error_func):
5988           make reentrant (= allow removing elements in error handler)
5989
5990 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
5991
5992         * gst/gstpad.c: (gst_pad_event_default_dispatch),
5993         (gst_pad_send_event), (gst_pad_call_chain_function):
5994           events sent to elements below PAUSED cannot be handled, so
5995           don't try to
5996
5997 2004-07-08  Wim Taymans  <wim@fluendo.com>
5998
5999         * gst/schedulers/gstoptimalscheduler.c:
6000         (chain_recursively_migrate_group), (create_group),
6001         (schedule_group), (gst_opt_scheduler_pad_link),
6002         (group_elements_set_visited), (element_get_reachables_func),
6003         (element_get_reachables), (group_can_reach_group), (debug_element),
6004         (rechain_group), (group_migrate_connected),
6005         (gst_opt_scheduler_pad_unlink):
6006         * testsuite/schedulers/Makefile.am:
6007         Implemented group splitting and rechaining.
6008         Fixes 143777 and 143777-2 in the testsuite.
6009
6010 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6011
6012         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6013           extra debugging
6014         * gst/gstevent.h:
6015         * gst/gstinfo.c: (gst_debug_log_default):
6016           print time nicely.  add thread pointer until someone figures out
6017           a completely portable way of getting at thread id's.
6018         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
6019         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
6020         (gst_pad_call_chain_function):
6021           extra debugging
6022         * gst/schedulers/gstoptimalscheduler.c:
6023         (get_group_schedule_function), (loop_group_schedule_function),
6024         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6025         (pad_clear_queued), (gst_opt_scheduler_iterate):
6026           rename BUFPEN and friends to DATAPEN since that's what they are.
6027
6028 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6029
6030         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6031         * gst/gstbuffer.h:
6032         * gst/gstpad.c:
6033           cleanups and debugging
6034
6035 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6036
6037         * configure.ac:
6038         * gst/gstvalue.c: (gst_value_compare_enum),
6039         (gst_value_serialize_enum), (gst_value_deserialize_enum),
6040         (gst_value_can_compare), (gst_value_compare):
6041         * testsuite/Makefile.am:
6042         * testsuite/enumcaps/Makefile.am:
6043         * testsuite/enumcaps/enumcaps.c:
6044           Fix enum serialization, deserialization, comparison in caps, add
6045           a test to ensure that this continues working in the future.
6046
6047 2004-07-06  David Schleef  <ds@schleef.org>
6048
6049         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6050         Fix memleak.
6051
6052 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6053
6054         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
6055         * gst/gstplugin.h:
6056         * gst/registries/gstxmlregistry.c:
6057         (plugin_times_older_than_recurse), (plugin_times_older_than),
6058         (gst_xml_registry_parse_padtemplate):
6059           only rebuild registry when actual plugins have a newer time than
6060           the registry.  Fixes #145520
6061
6062 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6063
6064         * docs/manual/manual.xml:
6065         * docs/manual/win32.xml:
6066           add chapter on win32 building.  fixes #142422
6067
6068 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6069
6070         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
6071
6072         * gst/autoplug/gstspider.c: (gst_spider_init),
6073         (gst_spider_dispose):
6074           fix spider memleaks.  fixes #137863
6075
6076 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6077
6078         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
6079
6080         * gst/schedulers/gstoptimalscheduler.c:
6081         (gst_opt_scheduler_pad_unlink):
6082           fix SIGBUS error, fixes #145338
6083
6084 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6085
6086         * gst/gstobject.c: (gst_object_replace):
6087         * gst/gstscheduler.c: (gst_scheduler_get_clock):
6088         * gst/gstsystemclock.c: (gst_system_clock_obtain):
6089           clean up clock lifecycle.  Fixes #109831
6090
6091 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6092
6093         * po/LINGUAS:
6094         * po/cs.po:
6095           added Czech translation (Miloslav Trmac)
6096
6097 2004-07-04  David Schleef  <ds@schleef.org>
6098
6099         * tools/Makefile.am:
6100         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
6101
6102 2004-07-04  David Schleef  <ds@schleef.org>
6103
6104         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
6105
6106 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6107
6108         * gst/gstbin.c: (gst_bin_restore_thyself):
6109           chain to parent restore so the bins get restored correctly
6110           in the editor
6111
6112 2004-07-03  David Schleef  <ds@schleef.org>
6113
6114         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6115         Actually do something in these functions, like before the big
6116         caps change.  (bug #145137)
6117
6118 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6119
6120         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6121         (gst_element_get_compatible_pad_filtered):
6122         * gst/gstthread.c: (gst_thread_main_loop):
6123           more debugging
6124
6125 2004-07-02  David Schleef  <ds@schleef.org>
6126
6127         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6128         * gst/gstobject.h:
6129         * gst/gstparse.h:
6130         * gst/gsttrace.h:
6131         * gst/gstxml.h:
6132
6133 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6134
6135         * gst/gstpad.c: (gst_pad_check_schedulers),
6136         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6137         (gst_pad_link_prepare):
6138           revert until testsuite is fixed
6139
6140 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6141
6142         * testsuite/Makefile.am:
6143         * testsuite/caps/filtercaps.c: (main):
6144         * testsuite/clock/clock1.c: (main):
6145         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6146           fix some more tests
6147
6148 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6149
6150         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6151         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6152         * testsuite/cleanup/cleanup4.c: (main):
6153           fix testsuite
6154
6155 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6156
6157         * libs/gst/control/control.c:
6158         * libs/gst/control/dparam.c:
6159         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6160         * libs/gst/control/dparammanager.c:
6161         * libs/gst/control/dparammanager.h:
6162         * testsuite/dynparams/Makefile.am:
6163         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6164         (gst_dptest_change_state), (gst_dptest_chain), (main):
6165           fix testcase for dparams
6166           add debugging category
6167
6168 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6169
6170         * testsuite/Rules:
6171           change path
6172
6173 2004-07-02  Benjamin Otte  <otte@gnome.org>
6174
6175         * tests/.cvsignore:
6176         * tests/Makefile.am:
6177         * tests/mass_elements.c: (gst_get_current_time), (main):
6178           add simple benchmark to test various speeds of fakesrc ! identity !
6179           identity ! ... ! fakesink.
6180           Usage: mass_elements [num_identities] [num_buffers]
6181           If not specified they default to 1000.
6182
6183 2004-07-02  Benjamin Otte  <otte@gnome.org>
6184
6185         * gst/gstpad.c: (gst_pad_check_schedulers),
6186         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6187         (gst_pad_link_prepare):
6188           check that pads that get linked belong to the same manager. The old
6189           code allowed linking elements before putting them into bins, so it
6190           worked to link them and then put them in different threads, which
6191           lead to weird behaviour.
6192           Since this effectively disallows linking elements before putting
6193           them in a bin, some applications might not work after this and error
6194           out. If these applications are too critical, we might need to revert
6195           that patch. Please test this before the next release...
6196
6197 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6198
6199         * gst/gstpad.c: (gst_pad_get_caps):
6200           throw an error if the getcaps function does not return a subset of
6201           the template caps.
6202         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6203           make disconts without position info an error in debugging
6204         * tests/spidey_bench.c: (handoff), (main):
6205           don't count first try when averaging
6206
6207 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6208
6209         * gst/gstplugin.c: (gst_plugin_load_file):
6210           figure out problem with dynamic test
6211
6212 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6213
6214         * docs/gst/Makefile.am:
6215           fix docs build
6216
6217 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6218
6219         * po/POTFILES.in:
6220         * po/af.po:
6221         * po/az.po:
6222         * po/en_GB.po:
6223         * po/fr.po:
6224         * po/nl.po:
6225         * po/sr.po:
6226         * po/sv.po:
6227         * po/tr.po:
6228         * po/uk.po:
6229         * tools/gst-register.c: (plugin_added_func), (main):
6230           i18n-ize -register, fix plural
6231
6232 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6233
6234         * gst/elements/gstidentity.c: (gst_identity_class_init),
6235         (gst_identity_init), (gst_identity_chain),
6236         (gst_identity_set_property), (gst_identity_get_property):
6237         * gst/elements/gstidentity.h:
6238           check for perfect stream
6239
6240 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6241
6242         * gst/elements/gstidentity.c: (gst_identity_chain):
6243           print offset_end
6244
6245 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6246
6247         * docs/gst/Makefile.am:
6248         * docs/gst/gstreamer-docs.sgml:
6249           doc fixes
6250
6251 2004-06-24  David Schleef  <ds@schleef.org>
6252
6253         * autogen.sh:  Remove call to env, since the buildbot isn't
6254         broken anymore.
6255
6256 2004-06-24  Wim Taymans  <wim@fluendo.com>
6257
6258         * gst/elements/Makefile.am:
6259         * gst/elements/gstelements.c:
6260         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6261         (gst_multifdsink_class_init), (gst_multifdsink_init),
6262         (gst_multifdsink_add), (gst_multifdsink_remove),
6263         (gst_multifdsink_clear), (gst_multifdsink_chain),
6264         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6265         * gst/elements/gstmultifdsink.h:
6266         Added an element that writes to multiple filedescriptors at once.
6267
6268 2004-06-24  Benjamin Otte  <otte@gnome.org>
6269
6270         * gst/parse/grammar.y:
6271           don't try to link elements before they have been added to bins
6272
6273 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6274
6275         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6276         (gst_file_pad_get_length):
6277         * libs/gst/bytestream/filepad.h:
6278           add 2 new functions
6279
6280 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6281
6282         * docs/gst/gstreamer-sections.txt:
6283         remove from docs, the define that Benjamin removed from gstelement.h
6284
6285 2004-06-22  Benjamin Otte  <otte@gnome.org>
6286
6287         * gst/gstelement.h:
6288           remove define that referenced a nonexisting GstElement struct member
6289
6290 2004-06-20  Benjamin Otte  <otte@gnome.org>
6291
6292         * gst/gstdata.c: (gst_data_is_writable):
6293           whoops, return values were wrong, so writable data was marked as
6294           non-writable and vice versa. (fixes #143953, spotted by Francis
6295           Labonte)
6296           Shows how rarely we need to copy data ;)
6297
6298 2004-06-20  Benjamin Otte  <otte@gnome.org>
6299
6300         * testsuite/schedulers/.cvsignore:
6301         * testsuite/schedulers/Makefile.am:
6302         * testsuite/schedulers/143777-2.c: (main):
6303           add test for opt breakage in bug #143777
6304
6305 2004-06-20  Benjamin Otte  <otte@gnome.org>
6306
6307         * gst/gstpad.c: (gst_pad_call_chain_function):
6308           check for if we were unlinked while inside the chainfunction (fixes
6309           entrygthread having issues with #143777)
6310         * testsuite/schedulers/143777.c: (main):
6311         * testsuite/schedulers/Makefile.am:
6312           add a test for that fix
6313
6314 2004-06-20  Benjamin Otte  <otte@gnome.org>
6315
6316         * gst/gstvalue.c: (gst_value_set_int_range):
6317           test that start is smaller then end
6318         * libs/gst/bytestream/Makefile.am:
6319         * libs/gst/bytestream/filepad.c: 
6320         * libs/gst/bytestream/filepad.h:
6321           add GstFilePad - a pad that behaves like a FILE*
6322         * testsuite/bytestream/.cvsignore:
6323         * testsuite/bytestream/Makefile.am:
6324         * testsuite/bytestream/filepadsink.c: 
6325           test for the GstFilePad
6326
6327 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6328
6329         * gst/elements/gstidentity.c: (gst_identity_class_init),
6330         (gst_identity_init), (gst_identity_set_clock),
6331         (gst_identity_chain), (gst_identity_set_property),
6332         (gst_identity_get_property):
6333         * gst/elements/gstidentity.h:
6334         * gst/gstclock.c: (gst_clock_id_wait):
6335           add a "sync" property to sync to the clock
6336
6337 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6338
6339         * gst/gstelementfactory.c: (gst_element_factory_create):
6340           make the freakin "elementfactory bla has no type" message more
6341           useful. So we actually can do something when someone shows up
6342           complaining about it.
6343
6344 2004-06-15  Johan Dahlin  <johan@gnome.org>
6345
6346         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6347         found. This matches the old behavior better. Thanks to Thomas for
6348         pointing out.
6349
6350 2004-06-14  David Schleef  <ds@schleef.org>
6351
6352         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6353         -fomit-frame-pointer.  Appears to generate correct code in
6354         other cases as well.
6355
6356 2004-06-14  Johan Dahlin  <johan@gnome.org>
6357
6358         * tools/gst-inspect.c (main): Add two new command line options: -a
6359         to print all elements and -n to print the name on each line. Also
6360         fix some error reporting.
6361         (main): Simplify, remove -n and always print names if -a is specified
6362
6363 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6364
6365         * win32/gstconfig.h:
6366         * win32/GSTreamer.vcproj:
6367         * win32/Makefile:
6368         * gst/gstconfig.h.in:
6369         * gst/gst.h:
6370         * gst/gstbin.h:
6371         * gst/gstelement.h:
6372         * gst/gstevent.h:
6373         * gst/gstobject.h:
6374         * gst/gstpad.h:
6375         * docs/gst/gstreamer-sections.txt:
6376         * docs/gst/tmpl/gstconfig.sgml:
6377           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6378
6379 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6380         * docs/gst/gstreamer-sections.txt:
6381         * docs/gst/tmpl/gstconfig.sgml:
6382         Add the GSTREAMER_EXPORT macro to the docs
6383
6384 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6385
6386         * tools/gst-compprep.c: (handle_xmlerror), (main):
6387         Add a check for the version that introduced SetStructuredError to fix
6388         the build on FC1
6389
6390 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6391
6392         * win32/msvc71.sln:
6393         * win32/testsuite/:
6394           prepare to compile the testsuite with MSVC
6395
6396 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6397
6398         * docs/manual/win32.xml:
6399           attempt to transform the Win32 README into an XML doc
6400
6401 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6402
6403         * gst/gst.c:
6404         * gst/gstbin.*:
6405         * gst/config.h.in:
6406         * gst/gstelement.*:
6407         * gst/gstevent.h:
6408         * gst/gstobject.*:
6409         * gst/gstpad.h:
6410         * tools/gst-register.c:
6411         * win32/gstreamer.def:
6412           extern symbols are now exported for the Windows DLL
6413
6414 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6415
6416         * gst/gstinfo.h:
6417           fix a problem to enable/disable DEBUG under MSVC
6418
6419 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6420
6421         * win32/:
6422           enable more debug code in DEBUG build
6423
6424 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6425
6426         * win32/config.h:
6427         * gst/gst-i18n-app.h:
6428           enable NLS under Windows
6429
6430 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6431         * tools/gst-compprep.c: (handle_xmlerror), (main):
6432           Make an error that baffled me a bit clearer
6433
6434 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6435
6436         * gst/gstqueue.c:
6437           don't use g_queue_get_length () because it's 2.4, use ->length
6438
6439 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6440
6441         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6442
6443         * tools/gst-inspect.c: (print_signal_info):
6444           don't free random data twice. (fixes #144185)
6445
6446 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6447
6448         * gst/gstqueue.c:
6449         * gst/gstqueue.h:
6450           fix removing from the wrong queue on event timeout
6451           fix disposing of the event queue by casting correctly
6452           add mutexes for handling the event queue
6453           someone was sleeping when fixing queue last time around :)
6454
6455 2004-06-10  Johan Dahlin  <johan@gnome.org>
6456
6457         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6458         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6459
6460 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6461
6462         * docs/random/gdp:
6463         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6464         * libs/gst/dataprotocol/dataprotocol.c:
6465         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6466         (gst_dp_buffer_from_header):
6467         * libs/gst/dataprotocol/dataprotocol.h:
6468         * libs/gst/dataprotocol/dp-private.h:
6469           rev version to 0.1, add buffer flags and copy them
6470
6471 2004-06-09  Johan Dahlin  <johan@gnome.org>
6472
6473         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6474         the flags from the buffer we're copying.
6475
6476 2004-06-09  Wim Taymans  <wim@fluendo.com>
6477
6478         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6479         * gst/elements/gstidentity.c: (gst_identity_init),
6480         (gst_identity_chain):
6481         Print more buffer info in fakesink.
6482         Make identity output similar to fakesink.
6483
6484 2004-06-07  Daniel Gazard  <dany42@free.fr>
6485
6486         reviewed by Benjamin Otte  <otte@gnome.org>
6487
6488         * configure.ac:
6489           fix cross compiling not working. (fixes #143741)
6490
6491 2004-06-07  Benjamin Otte  <otte@gnome.org>
6492
6493         * gst/gstelement.c: (gst_element_set_time_delay):
6494           add failure check
6495         * gst/gstinfo.h:
6496           put brackets around macro arguments of GST_TIME_ARGS, add note to
6497           move it to correct header in 0.9
6498
6499 2004-06-07  Benjamin Otte  <otte@gnome.org>
6500
6501         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6502         (gst_file_index_load), (_file_index_id_save_entries),
6503         (gst_file_index_commit), (gst_file_index_add_association),
6504         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6505         (gst_file_index_plugin_init):
6506           make debugging use a default category
6507
6508 2004-06-06  David Moore  <dcm@acm.org>
6509
6510         reviewed by Benjamin Otte  <otte@gnome.org>
6511
6512         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6513         (gst_fdsrc_change_state):
6514           reset offset counter when going READY => PAUSED. (fixes #142903)
6515
6516 2004-06-06  ed@catmur.co.uk
6517
6518         reviewed by Benjamin Otte  <otte@gnome.org>
6519
6520         * gst/registries/gstxmlregistry.c:
6521         (gst_xml_registry_rebuild_recurse):
6522           don't rely on g_dir_open to figure out if a file is a directory, use
6523           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6524           directories. (fixes #142850)
6525
6526 2004-06-06  Benjamin Otte  <otte@gnome.org>
6527
6528         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6529           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6530         * libs/gst/bytestream/adapter.c:
6531         * libs/gst/bytestream/adapter.h:
6532           fix copyright in header and typo in debugging category name
6533
6534 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6535
6536         * configure.ac:
6537           bump nano to cvs
6538
6539 === release 0.8.3 ===
6540
6541 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6542
6543         * configure.ac:
6544           update libtool versioning
6545           do a new release
6546         * docs/gst/tmpl/gstelement.sgml:
6547         * docs/gst/tmpl/gsttypes.sgml:
6548         * gst/gstinfo.c: (_gst_debug_init):
6549           put back GST_CAT_DATAFLOW to fix API breakage
6550
6551 2004-06-04  David Schleef  <ds@schleef.org>
6552
6553         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6554
6555 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6556
6557         * configure.ac:
6558           bump nano to cvs
6559
6560 === release 0.8.2 ===
6561
6562 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6563
6564         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6565           check GST_DEBUG environment variable which is parsed the same way
6566           as --gst-debug=
6567
6568 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6569
6570         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6571                             gstmd5sink.c gstshaper.c gsttee.c
6572                             gsttypefindelement.c
6573         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6574
6575           - removing trailing commas at end of enums
6576             it is correct C99 code but C90 compilers would complain
6577             (AIX, Forte, ...)
6578             ('should' fix #143290, at least partially)
6579
6580 2004-05-27  Wim Taymans  <wim@fluendo.com>
6581
6582         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6583         (chain_group_set_enabled), (create_group), (add_to_group),
6584         (merge_groups), (setup_group_scheduler), (group_elements),
6585         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6586         Don't try to follow the pad connections with other groups
6587         when a loop based element is added to the scheduler because
6588         the bin will inform the scheduler about the pad links a little
6589         later.
6590
6591 2004-05-27  Wim Taymans  <wim@fluendo.com>
6592
6593         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6594         (remove_from_chain), (chain_group_set_enabled),
6595         (setup_group_scheduler), (group_element_set_enabled),
6596         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6597         (gst_opt_scheduler_show):
6598         Elements without a group can do a state change as well, just wait
6599         with the setup of the scheduling function when it is added to a
6600         chain.
6601
6602 2004-05-27  Wim Taymans  <wim@fluendo.com>
6603
6604         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6605         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6606         (merge_groups), (setup_group_scheduler),
6607         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6608         (gst_opt_scheduler_show):
6609         Fixes to maintain internal consistency of the scheduler data
6610         structures. 
6611          - adding an enabled group to a chain should increment the
6612            number of enabled elements in that chain.
6613          - removing an enabled group from a chain could disable the
6614            chain.
6615          - removing a disabled group from a chain could enable the
6616            chain.
6617          - add g_assert when internal inconsistency is detected.
6618          - adding an element to a group could increase the number of
6619            links this group has with other groups.
6620          - merging two groups also merges the chains.
6621          - also show group links in the _show method.
6622            
6623
6624 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6625
6626         * gst/gstcaps.c: (gst_caps_structure_simplify):
6627           don't print error messages when there is no error
6628         * gst/gstvalue.c: (gst_value_compare_int_range):
6629           compare the second value, too
6630         * testsuite/caps/Makefile.am:
6631         * testsuite/caps/random.c: (assert_on_error), (main):
6632           add tests to make sure the two things above are checked for
6633
6634 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6635
6636         * configure.ac:
6637         * libs/gst/dataprotocol/Makefile.am:
6638         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6639         * libs/gst/dataprotocol/dataprotocol.h:
6640           wrap header in GST_ENABLE_NEW.  make code use it
6641
6642 2004-05-23  Johan Dahlin  <johan@gnome.org>
6643
6644         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6645         so verbose and print GstElement signal names all the time.
6646
6647 2004-05-22  David Schleef  <ds@schleef.org>
6648
6649         * gst/registries/gstxmlregistry.c:
6650         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6651         (bug #142957)
6652
6653 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6654
6655         * configure.ac:
6656           scrub cflags for glib2 so gcc doesn't complain when glib is in
6657           /usr/local
6658
6659 2004-05-21  Johan Dahlin  <johan@gnome.org>
6660
6661         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6662         __GNUC__, patch from Brian Cameron, fixes bug #142804
6663
6664 2004-05-20  David Schleef  <ds@schleef.org>
6665
6666         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6667         comparison code.  (bug #142819)
6668
6669 2004-05-20  Wim Taymans  <wim@fluendo.com>
6670
6671         * gst/gstbuffer.c: (gst_buffer_default_copy):
6672         * gst/gstbuffer.h:
6673         Added Comment to a flag.
6674         copy relevant flags in _buffer_copy.
6675
6676 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6677
6678         reviewed by: Wim Taymans <wim at fluendo dot com>
6679
6680         * gst/gstbuffer.h:
6681           add GST_BUFFER_IN_CAPS buffer flag
6682         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6683         (gst_structure_parse_any_list), (gst_structure_parse_list),
6684         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6685         * gst/gstvalue.c: (gst_value_serialize_any_list),
6686         (gst_value_transform_any_list_string),
6687         (gst_value_list_prepend_value), (gst_value_list_append_value),
6688         (gst_value_list_get_size), (gst_value_list_get_value),
6689         (gst_value_transform_list_string),
6690         (gst_value_transform_fixed_list_string),
6691         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6692         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6693         (_gst_value_initialize):
6694         * gst/gstvalue.h:
6695           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6696           < , > as a format.
6697         * testsuite/caps/string-conversions.c: (main):
6698           add regression tests for < >
6699
6700 2004-05-20  Johan Dahlin  <johan@gnome.org>
6701
6702         * docs/gst/Makefile.am (all-local): Re-add
6703
6704 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6705
6706         * docs/gst/Makefile.am:
6707         * docs/gst/gstreamer-docs.sgml:
6708         * docs/libs/Makefile.am:
6709         * docs/libs/gstreamer-libs-docs.sgml:
6710           fix distcheck issues
6711
6712 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6713
6714         * libs/gst/dataprotocol/Makefile.am:
6715           add to autotest
6716
6717 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6718
6719         * libs/gst/dataprotocol/Makefile.am:
6720         * libs/gst/dataprotocol/dataprotocol.c:
6721         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6722         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6723         * libs/gst/dataprotocol/dp-private.h:
6724           use GST macros to read/write fixed length ints
6725           add some more asserts
6726
6727 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6728
6729         * docs/libs/gstreamer-libs-docs.sgml:
6730         * docs/libs/gstreamer-libs-sections.txt:
6731           remove idct and putbits
6732         * configure.ac:
6733         * docs/libs/tmpl/gstdataprotocol.sgml:
6734         * libs/gst/Makefile.am:
6735         * libs/gst/dataprotocol/Makefile.am:
6736         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6737         (buffer_test), (caps_test), (event_test), (main):
6738         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6739         (gst_dp_dump_byte_array), (gst_dp_init),
6740         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6741         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6742         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6743         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6744         (gst_dp_validate_header), (gst_dp_validate_payload),
6745         (gst_dp_validate_packet), (plugin_init):
6746         * libs/gst/dataprotocol/dataprotocol.h:
6747         * libs/gst/dataprotocol/dp-private.h:
6748           add dataprotocol
6749
6750 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6751
6752         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6753           fix int variable deserialization and add a helper so we can actually
6754           debug this.
6755
6756 2004-05-18  David Schleef  <ds@schleef.org>
6757
6758         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6759           argv[0].  Calling yourself is probably not the best way to
6760           construct a test like this, btw.
6761
6762 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6763
6764         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6765           don't claim to be more intelligent than a scheduler when the
6766           scheduler claims the pipeline is stopped
6767         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6768         (safe_cothread_destroy),
6769         (gst_entry_scheduler_remove_all_cothreads),
6770         (gst_entry_scheduler_reset), (_remove_cothread),
6771         (gst_entry_scheduler_state_transition):
6772           hold off cothread destruction if we're not in main cothread
6773         * configure.ac:
6774         * testsuite/Makefile.am:
6775           add new test dir
6776         * testsuite/schedulers/.cvsignore:
6777         * testsuite/schedulers/Makefile.am:
6778           add tests
6779         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6780           check relinking and adding/removing elements from a running pipeline
6781         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6782           check unlinking in a running pipeline
6783         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6784           check unreffing a running pipeline
6785         * testsuite/schedulers/useless_iteration.c: (main):
6786           check iterating a pipeline that contains running threads works
6787
6788 2004-05-18  David Schleef  <ds@schleef.org>
6789
6790         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6791           is false.
6792
6793 2004-05-18  Wim Taymans  <wim@fluendo.com>
6794
6795         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6796         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6797         Fixed an error introduced with patch for 1.63. When setting
6798         a get based element as the entry point in a group, make sure
6799         to mark the group as GET based.
6800
6801 2004-05-18  Wim Taymans  <wim@fluendo.com>
6802
6803         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6804         (setup_group_scheduler), (loop_group_schedule_function),
6805         (gst_opt_scheduler_pad_link):
6806         Added some more debug info and fixed a bug where the group
6807         type was set to LOOP but it was in fact unknown.
6808
6809 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6810
6811         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6812           make resetting scheduler work twice in a row
6813
6814 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6815
6816         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6817         (CREATE_USERIALIZATION), (_gst_value_initialize),
6818         (gst_value_compare_float), (gst_value_serialize_float),
6819         (gst_value_deserialize_float), (gst_value_compare_enum),
6820         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6821           add serialization and comparison functions for long, int64, enum and
6822           float values
6823         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6824           use best serialization function in type hierarchy instead of only a
6825           matching one. This is required for enums to work.
6826         * gst/parse/grammar.y:
6827           use gst_caps_deserialize
6828         * testsuite/parse/Makefile.am:
6829           parse1 now works
6830         * testsuite/parse/parse1.c: (main):
6831           remove aggregator check, aggregator is broken, this test works now
6832           but fails because of bug #138012
6833         * testsuite/parse/parse2.c: (main):
6834           s/xvideosink/xvimagesink - this test looks a lot like we should
6835           disable it
6836
6837 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6838
6839         * gst/gstelement.c: (gst_element_class_init):
6840           whoops, store the signal id correctly
6841         * gst/schedulers/gstbasicscheduler.c:
6842         (gst_basic_scheduler_chain_wrapper):
6843           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
6844           chain function isn't linked
6845
6846 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
6847         * configure.ac:
6848         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
6849         support until we decide where the flags should be used
6850         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
6851         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
6852         * gst/gstpad.c: (gst_pad_link_call_link_functions):
6853         Output refused caps in the debug info
6854
6855 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
6856
6857         * gst/elements/gstidentity.c: (gst_identity_chain):
6858           add duration debug
6859         * gst/gstinfo.c: (gst_debug_log_default):
6860           add timestamp
6861
6862 2004-05-13  Benjamin Otte  <otte@gnome.org>
6863
6864         * gst/gstpipeline.c: (gst_pipeline_dispose),
6865         (gst_pipeline_change_state):
6866           call gst_scheduler_reset on dispose (fixes #141416)
6867
6868 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6869
6870         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6871           compute mapsize correctly
6872         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
6873           use correct datatypes when calling a varargs function
6874         * gst/elements/gsttypefindelement.c: (stop_typefinding):
6875           push a DISCONT event as first thing
6876         * gst/gst_private.h:
6877         * gst/gstinfo.c: (_gst_debug_init):
6878           remove GST_DATAFLOW debugging category
6879         * gst/gstbin.c: (gst_bin_iterate):
6880           use GST_SCHEDULING category
6881         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
6882         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
6883         (gst_pad_call_get_function):
6884           add GST_DATAFLOW to easily track flow of buffers or events.
6885         * gst/gstqueue.c: (gst_queue_get_type),
6886         (gst_queue_handle_pending_events), (gst_queue_chain),
6887         (gst_queue_get), (gst_queue_handle_src_event):
6888           use own static debugging category GST_DATAFLOW for dataflow,
6889           use DEBUG category for showing which path events go, use LOG
6890           category for buffers.
6891
6892 2004-05-10  David Schleef  <ds@schleef.org>
6893
6894         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
6895
6896 2004-05-10  David Schleef  <ds@schleef.org>
6897
6898         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
6899         symbols, because otherwise we don't know what they are.  Thanks,
6900         the GStreamer team.
6901         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
6902
6903 2004-05-10  David Schleef  <ds@schleef.org>
6904
6905         (from Steve Lhomme)
6906         * win32/Makefile: When using make clean the MS Visual Studio makefiles
6907         are deleted.  Fix.
6908         * win32/Makefile.inspect:
6909         * win32/Makefile.launch:
6910         * win32/Makefile.register:
6911
6912 2004-05-10  David Schleef  <ds@schleef.org>
6913
6914         * gst/gstinfo.h: Add missing inline function.
6915         * gst/gsttrace.c: add include
6916         * gst/parse/grammar.y: remove unused code
6917         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
6918         more portable.
6919         * tools/gst-register.c: wrap unistd.h
6920         
6921         More additions/fixes from Steve for the MSVC build.
6922         * win32/GStreamer.vcproj:
6923         * win32/Makefile:
6924         * win32/Makefile.inspect:
6925         * win32/Makefile.launch:
6926         * win32/Makefile.register:
6927         * win32/README.txt:
6928         * win32/gst-inspect.vcproj:
6929         * win32/gst-launch.vcproj:
6930         * win32/gst-register.vcproj:
6931         * win32/gstbytestream.def:
6932         * win32/gstbytestream.vcproj:
6933         * win32/gstconfig.h:
6934         * win32/gstelements.def:
6935         * win32/gstelements.vcproj:
6936         * win32/gstenumtypes.c:
6937         * win32/gstenumtypes.h:
6938         * win32/gstoptimalscheduler.def:
6939         * win32/gstoptimalscheduler.vcproj:
6940         * win32/gstreamer.def:
6941         * win32/gstspider.def:
6942         * win32/gstspider.vcproj:
6943         * win32/gstversion.h:
6944         * win32/msvc71.sln:
6945
6946 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6947
6948         * gst/gstelement.c: (gst_element_class_init),
6949         (gst_element_no_more_pads):
6950         * gst/gstelement.h:
6951           add gst_element_no_more_pads and the "no-more-pads" signal
6952
6953 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6954
6955         * gst/gstregistry.c: (gst_registry_add_plugin):
6956           refuse to add plugins when a plugin with same name is already
6957           registered. Fixes a bunch of "How to remove plugins?" issues.
6958           May lead to other problems though, let's test
6959
6960 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6961
6962         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
6963         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
6964         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
6965
6966 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6967
6968         * tests/Makefile.am: fix am16 issue
6969
6970 2004-05-09  Benjamin Otte  <otte@gnome.org>
6971
6972         * libs/gst/bytestream/Makefile.am:
6973           we should indeed add .c files to makefiles or they won't be built
6974           (d'oh)
6975
6976 2004-05-08  Benjamin Otte  <otte@gnome.org>
6977
6978         * gst/gstpad.c: (gst_pad_proxy_fixate):
6979           really reduce the set of caps
6980
6981 2004-05-08  Benjamin Otte  <otte@gnome.org>
6982
6983         * tests/Makefile.am:
6984         * tests/spidey_bench.c: (handoff), (main):
6985           add benchmark to test how long spider needs to create a pipeline
6986
6987 2004-05-08  Benjamin Otte  <otte@gnome.org>
6988
6989         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
6990           mark links as unengaged when unnegotiating instead of deactivating.
6991           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
6992
6993 2004-05-08  Benjamin Otte  <otte@gnome.org>
6994
6995         * docs/manual/helloworld.xml:
6996           s/audiosink/osssink (patch by Patrick Guimond)
6997
6998 2004-05-07  David Schleef  <ds@schleef.org>
6999
7000         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
7001         since it contains important stuff.
7002
7003 2004-05-07  David Schleef  <ds@schleef.org>
7004
7005         * testsuite/caps/caps.c: (test3), (main): A check for appending
7006         ANY caps.
7007
7008 2004-05-07  David Schleef  <ds@schleef.org>
7009
7010         * common/m4/as-compiler-flag.m4: Properly quote arguments,
7011         which may contain commas.  Fixes detection of -Wa,-mregnames
7012
7013 2004-05-06  David Schleef  <ds@schleef.org>
7014
7015         Changes to handle compilers that don't have variadic macro
7016         support.  In particular, glib headers define some inlines
7017         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
7018         builds.
7019         * gst/Makefile.am:
7020         * gst/cothreads.c:
7021         * gst/elements/gstfdsink.c:
7022         * gst/elements/gstfdsrc.c:
7023         * gst/elements/gstfilesink.c:
7024         * gst/elements/gstfilesrc.c:
7025         * gst/gst_private.h:
7026         * gst/gstatomic.c:
7027         * gst/gstcaps.c: (gst_caps_append):
7028         * gst/gstcpu.c: (gst_cpuid_i386):
7029         * gst/gstelement.c:
7030         * gst/gsterror.c:
7031         * gst/gstfilter.c:
7032         * gst/gstinfo.h:
7033         * gst/gstprobe.c:
7034         * gst/gstquery.c:
7035         * gst/gstregistry.c:
7036         * gst/gststructure.c:
7037         * gst/gsttaginterface.c:
7038         * gst/gsttrace.c: (gst_trace_new):
7039         * gst/gsttrashstack.c:
7040         * gst/gsturi.c:
7041         * gst/gstvalue.c:
7042         * gst/parse/grammar.y:
7043         * gst/parse/parse.l:
7044         * tools/gst-inspect.c: (main):
7045         * tools/gst-launch.c: (main):
7046         * tools/gst-xmlinspect.c: (PUT_STRING):
7047
7048 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7049
7050         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7051         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7052         * gst/elements/gstfilesrc.h:
7053           send NEW_MEDIA events correctly
7054         * gst/elements/gsttypefindelement.c: (start_typefinding),
7055         (gst_type_find_element_handle_event):
7056           restart typefinding when we get a NEW_MEDIA event
7057         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
7058         (gst_bin_dispose):
7059           don't die when someone removes elements in callbacks
7060         * gst/gstelement.c: (gst_element_change_state):
7061           improve debugging
7062         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
7063           we need a NEW_MEDIA event to engage a link
7064         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
7065           don't g_print debugging stuff
7066         * testsuite/caps/simplify.c: (check_caps):
7067
7068 2004-05-04  Benjamin Otte  <otte@gnome.org>
7069
7070         * gst/parse/grammar.y:
7071           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
7072
7073 2004-05-04  Benjamin Otte  <otte@gnome.org>
7074
7075         * testsuite/caps/renegotiate.c: (main):
7076           improve output in error case
7077
7078 2004-05-04  Benjamin Otte  <otte@gnome.org>
7079
7080         * gst/parse/grammar.y:
7081           fix assert to not trigger when there's no error argument
7082         * gst/parse/parse.l:
7083           fix definition of caps to allow more than two structures
7084         * testsuite/caps/Makefile.am:
7085         * testsuite/caps/renegotiate.c: (main):
7086           it's sinesrc and works in that case
7087
7088 2004-05-04  Wim Taymans  <wim@fluendo.com>
7089
7090         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7091         (group_dec_link), (gst_opt_scheduler_pad_unlink):
7092         when removing an element from a group, we always need to
7093         decrement the link count that this group had with other 
7094         groups through the element.
7095         added an extra assert to catch inconsistencies when decrementing
7096         the link count.
7097
7098 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7099
7100         * configure.ac:
7101         * docs/gst/Makefile.am:
7102         * docs/gst/gstreamer-sections.txt:
7103         * docs/gst/tmpl/gstcompat.sgml:
7104         * examples/appreader/Makefile.am:
7105         * examples/cutter/Makefile.am:
7106         * examples/events/Makefile.am:
7107         * examples/helloworld/Makefile.am:
7108         * examples/helloworld2/Makefile.am:
7109         * examples/launch/Makefile.am:
7110         * examples/manual/Makefile.am:
7111         * examples/mixer/Makefile.am:
7112         * examples/pingpong/Makefile.am:
7113         * examples/plugins/Makefile.am:
7114         * examples/queue/Makefile.am:
7115         * examples/queue2/Makefile.am:
7116         * examples/queue3/Makefile.am:
7117         * examples/queue4/Makefile.am:
7118         * examples/retag/Makefile.am:
7119         * examples/thread/Makefile.am:
7120         * examples/typefind/Makefile.am:
7121         * examples/xml/Makefile.am:
7122         * gst/Makefile.am:
7123         * gst/autoplug/Makefile.am:
7124         * gst/elements/Makefile.am:
7125         * gst/gstcompat.h:
7126         * gst/indexers/Makefile.am:
7127         * gst/parse/Makefile.am:
7128         * gst/registries/Makefile.am:
7129         * gst/schedulers/Makefile.am:
7130         * libs/gst/bytestream/Makefile.am:
7131         * libs/gst/control/Makefile.am:
7132         * libs/gst/getbits/Makefile.am:
7133         * po/af.po:
7134         * po/az.po:
7135         * po/en_GB.po:
7136         * po/fr.po:
7137         * po/nl.po:
7138         * po/sr.po:
7139         * po/sv.po:
7140         * po/tr.po:
7141         * po/uk.po:
7142         * tests/Makefile.am:
7143         * tests/bufspeed/Makefile.am:
7144         * tests/instantiate/Makefile.am:
7145         * tests/memchunk/Makefile.am:
7146         * tests/muxing/Makefile.am:
7147         * tests/negotiation/Makefile.am:
7148         * tests/probes/Makefile.am:
7149         * tests/sched/Makefile.am:
7150         * tests/seeking/Makefile.am:
7151         * tests/threadstate/Makefile.am:
7152         * testsuite/caps/Makefile.am:
7153         * testsuite/cleanup/Makefile.am:
7154         * testsuite/dlopen/Makefile.am:
7155         * testsuite/dynparams/Makefile.am:
7156         * testsuite/plugin/Makefile.am:
7157         * testsuite/states/Makefile.am:
7158         * tools/Makefile.am:
7159           reorganize compile/link flags to be consistent
7160           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7161
7162 2004-05-04  David Schleef  <ds@schleef.org>
7163
7164         The "once more, with feeling" check-in.
7165         * testsuite/caps/Makefile.am: dist caps_strings
7166         * testsuite/caps/renegotiate.c: (main): This test triggers a
7167           segfault in the core.  Marking as failing.
7168
7169 2004-05-03  David Schleef  <ds@schleef.org>
7170
7171         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7172           by the build bots.
7173         * testsuite/caps/renegotiate.c: (main): Same.
7174
7175 2004-05-03  David Schleef  <ds@schleef.org>
7176
7177         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7178
7179 2004-05-03  David Schleef  <ds@schleef.org>
7180
7181         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7182           variable to find our source file.
7183
7184 2004-05-03  David Schleef  <ds@schleef.org>
7185
7186         * configure.ac:  Link plugins with libgstreamer and dependent
7187           libraries
7188         * testsuite/caps/Makefile.am:
7189         * testsuite/caps/caps_strings:
7190         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7191           through a file of caps strings and test each one
7192
7193 2004-05-04  Benjamin Otte  <otte@gnome.org>
7194
7195         * libs/gst/bytestream/Makefile.am:
7196         * libs/gst/bytestream/adapter.c: 
7197         * libs/gst/bytestream/adapter.h:
7198           add GstAdapter, similar to bytestream, but doesn't require ugly event
7199           handling or uglier loopbased elements
7200
7201 2004-05-03  David Schleef  <ds@schleef.org>
7202
7203         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7204         * testsuite/caps/erathostenes.c:
7205         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7206
7207 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7208
7209         * docs/pwg/pwg.xml:
7210           remove hardcoded stylesheet path (duh)
7211         * docs/random/release:
7212         * docs/gst/gstreamer-sections.txt:
7213         * gst/Makefile.am:
7214         * gst/gst.h:
7215         * gst/gst_private.h:
7216         * gst/gstcaps.c:
7217         * gst/gstevent.c:
7218         * gst/gstformat.c:
7219         * gst/gstinfo.c:
7220         * gst/gstinfo.h:
7221         * gst/gstinterface.c:
7222         * gst/gstmemchunk.c:
7223         * gst/gstprobe.c:
7224         * gst/gstquery.c:
7225         * gst/gstregistry.c:
7226         * gst/gstregistrypool.c:
7227         * gst/gststructure.c:
7228         * gst/gsttaginterface.c:
7229         * gst/gstthread.c:
7230         * gst/gsttrace.c:
7231         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7232         * gst/gsturi.c:
7233         * gst/gstvalue.c:
7234           deprecate gst_info; remove gstlog.h
7235    
7236
7237 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7238
7239         * Makefile.am:
7240         * po/en_GB.po:
7241         * po/sv.po:
7242         * po/uk.po:
7243           updated translations
7244
7245 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7246
7247         * gst/gstbin.c: (gst_bin_dispose):
7248           better debugging
7249
7250 2004-05-03  Johan Dahlin  <johan@gnome.org>
7251
7252         * gst/schedulers/gstoptimalscheduler.c
7253         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7254         really is a GstElement. Avoids critical when running gst-launch -v
7255         and a oggdemux/decoding pipeline.
7256
7257 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7258
7259         * docs/gst/tmpl/gstpipeline.sgml :
7260         * docs/manual/elements-api.xml :
7261                 doc fix by Patrick Guimond (Protector) from devel ML
7262                 reviewed by ronald
7263
7264 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7265
7266         * docs/gst/Makefile.am :
7267         * docs/libs/Makefile.am :
7268                 apply a patch from Arwed v. Merkatz so that gtk-doc
7269                 generated docs install (same for .devhelp file)
7270                 (fixes part 1 of #138836)
7271
7272 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7273
7274         * docs/faq/dependencies.xml: typo
7275         * docs/faq/getting.xml :
7276             - fix download URL for new gstreamer site
7277             - hide sf.net download page as latest version aren't there
7278             - fix apt URLs
7279             - fill "get via CVS" paragraph (link to dev page on the site)
7280         * docs/faq/general.xml:
7281             hide status tables as they no more exists
7282             change case on plugins license file to reflect reality
7283         * docs/faq/troubleshooting.xml:
7284             remove the wiki question/answer as there is no more wiki
7285
7286 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7287
7288         * gst/gsterror.h:
7289           include the headers needed for declarations used in this header
7290
7291 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7292
7293         * docs/random/uraeus/gstreamer_and_midi.txt :
7294           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7295           (fixes #132288)
7296
7297 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7298
7299         reviewed by Benjamin Otte  <otte@gnome.org>
7300
7301         * gst/schedulers/gthread-cothreads.h:
7302           free allocated data for main cothread, too when destroying context
7303           (fixes #141417)
7304
7305 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7306
7307         * docs/manual/goals.xml : remove duplicated paragraph at end 
7308         of doc page (fixes #141448)
7309
7310 2004-04-29  David Schleef  <ds@schleef.org>
7311
7312         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7313         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7314
7315 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7316
7317         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7318           fix property
7319         * gst/gstcaps.c:
7320           fix doc string
7321         * po/POTFILES.in:
7322           rename typefind source file
7323
7324 2004-04-28  David Schleef  <ds@schleef.org>
7325
7326         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7327         * win32/GStreamer.vcproj:
7328         * win32/Makefile:
7329         * win32/config.h:
7330         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7331         (_trewinddir), (_ttelldir), (_tseekdir):
7332         * win32/dirent.h:
7333         * win32/gst-inspect.vcproj:
7334         * win32/gst-launch.vcproj:
7335         * win32/gst-register.vcproj:
7336         * win32/gstbytestream.vcproj:
7337         * win32/gstelements.vcproj:
7338         * win32/gstoptimalscheduler.vcproj:
7339         * win32/gstspider.vcproj:
7340         * win32/gtchar.h:
7341         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7342         * win32/mman.h:
7343         * win32/mman.inl:
7344         * win32/msvc71.sln:
7345
7346 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7347
7348         * gst/gst.c: (init_post):
7349         * gst/gstinfo.c:
7350           remove useless _gst_progname stuff
7351         * tools/gst-inspect.c: (print_field), (print_caps):
7352           improve caps output
7353
7354 2004-04-28  David Schleef  <ds@schleef.org>
7355
7356         Disable parsing of a lot of files that aren't part of the
7357         exported API.  Move corresponding template files to old/,
7358         waiting for removal when they don't contain anything
7359         interesting.
7360         * docs/gst/Makefile.am:
7361         * docs/gst/gstreamer-sections.txt:
7362         * docs/gst/tmpl/cothreads.sgml:
7363         * docs/gst/tmpl/cothreads_compat.sgml:
7364         * docs/gst/tmpl/gettext.sgml:
7365         * docs/gst/tmpl/gobject2gtk.sgml:
7366         * docs/gst/tmpl/grammar.tab.sgml:
7367         * docs/gst/tmpl/gst-i18n-app.sgml:
7368         * docs/gst/tmpl/gst-i18n-lib.sgml:
7369         * docs/gst/tmpl/gst_private.sgml:
7370         * docs/gst/tmpl/gstaggregator.sgml:
7371         * docs/gst/tmpl/gstarch.sgml:
7372         * docs/gst/tmpl/gstatomic_impl.sgml:
7373         * docs/gst/tmpl/gstbufferstore.sgml:
7374         * docs/gst/tmpl/gstdata_private.sgml:
7375         * docs/gst/tmpl/gstdisksink.sgml:
7376         * docs/gst/tmpl/gstdisksrc.sgml:
7377         * docs/gst/tmpl/gstelementfactory.sgml:
7378         * docs/gst/tmpl/gstextratypes.sgml:
7379         * docs/gst/tmpl/gstfakesink.sgml:
7380         * docs/gst/tmpl/gstfakesrc.sgml:
7381         * docs/gst/tmpl/gstfdsink.sgml:
7382         * docs/gst/tmpl/gstfdsrc.sgml:
7383         * docs/gst/tmpl/gstfilesink.sgml:
7384         * docs/gst/tmpl/gstfilesrc.sgml:
7385         * docs/gst/tmpl/gsthttpsrc.sgml:
7386         * docs/gst/tmpl/gstidentity.sgml:
7387         * docs/gst/tmpl/gstindexfactory.sgml:
7388         * docs/gst/tmpl/gstmarshal.sgml:
7389         * docs/gst/tmpl/gstmd5sink.sgml:
7390         * docs/gst/tmpl/gstmultidisksrc.sgml:
7391         * docs/gst/tmpl/gstmultifilesrc.sgml:
7392         * docs/gst/tmpl/gstpadtemplate.sgml:
7393         * docs/gst/tmpl/gstpipefilter.sgml:
7394         * docs/gst/tmpl/gstschedulerfactory.sgml:
7395         * docs/gst/tmpl/gstsearchfuncs.sgml:
7396         * docs/gst/tmpl/gstshaper.sgml:
7397         * docs/gst/tmpl/gstspider.sgml:
7398         * docs/gst/tmpl/gstspideridentity.sgml:
7399         * docs/gst/tmpl/gststatistics.sgml:
7400         * docs/gst/tmpl/gsttee.sgml:
7401         * docs/gst/tmpl/gsttimecache.sgml:
7402         * docs/gst/tmpl/gsttypefind.sgml:
7403         * docs/gst/tmpl/gsttypefindfactory.sgml:
7404         * docs/gst/tmpl/gstxmlregistry.sgml:
7405         * docs/gst/tmpl/gthread-cothreads.sgml:
7406         * docs/gst/tmpl/old/cothreads.sgml:
7407         * docs/gst/tmpl/old/cothreads_compat.sgml:
7408         * docs/gst/tmpl/old/gettext.sgml:
7409         * docs/gst/tmpl/old/gobject2gtk.sgml:
7410         * docs/gst/tmpl/old/grammar.tab.sgml:
7411         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7412         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7413         * docs/gst/tmpl/old/gst_private.sgml:
7414         * docs/gst/tmpl/old/gstaggregator.sgml:
7415         * docs/gst/tmpl/old/gstarch.sgml:
7416         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7417         * docs/gst/tmpl/old/gstbufferstore.sgml:
7418         * docs/gst/tmpl/old/gstdata_private.sgml:
7419         * docs/gst/tmpl/old/gstdisksink.sgml:
7420         * docs/gst/tmpl/old/gstdisksrc.sgml:
7421         * docs/gst/tmpl/old/gstelementfactory.sgml:
7422         * docs/gst/tmpl/old/gstextratypes.sgml:
7423         * docs/gst/tmpl/old/gstfakesink.sgml:
7424         * docs/gst/tmpl/old/gstfakesrc.sgml:
7425         * docs/gst/tmpl/old/gstfdsink.sgml:
7426         * docs/gst/tmpl/old/gstfdsrc.sgml:
7427         * docs/gst/tmpl/old/gstfilesink.sgml:
7428         * docs/gst/tmpl/old/gstfilesrc.sgml:
7429         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7430         * docs/gst/tmpl/old/gstidentity.sgml:
7431         * docs/gst/tmpl/old/gstindexfactory.sgml:
7432         * docs/gst/tmpl/old/gstmarshal.sgml:
7433         * docs/gst/tmpl/old/gstmd5sink.sgml:
7434         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7435         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7436         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7437         * docs/gst/tmpl/old/gstpipefilter.sgml:
7438         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7439         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7440         * docs/gst/tmpl/old/gstshaper.sgml:
7441         * docs/gst/tmpl/old/gstspider.sgml:
7442         * docs/gst/tmpl/old/gstspideridentity.sgml:
7443         * docs/gst/tmpl/old/gststatistics.sgml:
7444         * docs/gst/tmpl/old/gsttee.sgml:
7445         * docs/gst/tmpl/old/gsttimecache.sgml:
7446         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7447         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7448         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7449         * docs/gst/tmpl/old/types.sgml:
7450         * docs/gst/tmpl/types.sgml:
7451
7452         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7453         gtkdoc-scan doesn't like files with the same name in different
7454         directories.
7455         * gst/elements/Makefile.am:
7456         * gst/elements/gstelements.c:
7457         * gst/elements/gsttypefind.c: 
7458         * gst/elements/gsttypefind.h:
7459         * gst/elements/gsttypefindelement.c:
7460         * gst/elements/gsttypefindelement.h:
7461
7462 2004-04-28  David Schleef  <ds@schleef.org>
7463
7464         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7465         patch (bug #141317):
7466         * gst/gst-i18n-lib.h: Allow disabling gettext.
7467         * gst/gstatomic_impl.h: disable warning when it's dumb.
7468         * gst/gstclock.c: fix include
7469         * gst/gstcompat.h: fix variadic macro
7470         * gst/gstinfo.c: fix include
7471         * gst/gstmacros.h: add defines for inlines on MSVC
7472         * gst/gstplugin.c: fix includes
7473         * gst/gstregistry.c: fix includes
7474         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7475         * gst/gstsystemclock.c: fix include
7476         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7477         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7478         * gst/registries/gstxmlregistry.c:
7479         (gst_xml_registry_parse_element_factory): fix use of non-portable
7480         functions
7481         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7482         * libs/gst/control/dparammanager.h: same
7483
7484 2004-04-28  David Schleef  <ds@schleef.org>
7485
7486         Move a bunch of unused files to old/ with names that are
7487         not case-insensitive-unique.  These files still contain some
7488         useful information that needs to be merged into gstbin.sgml,
7489         etc., so they shouldn't be deleted yet.
7490         * docs/gst/tmpl/GstBin.sgml:
7491         * docs/gst/tmpl/GstBuffer.sgml:
7492         * docs/gst/tmpl/GstCaps.sgml:
7493         * docs/gst/tmpl/GstClock.sgml:
7494         * docs/gst/tmpl/GstCompat.sgml:
7495         * docs/gst/tmpl/GstData.sgml:
7496         * docs/gst/tmpl/GstElement.sgml:
7497         * docs/gst/tmpl/GstEvent.sgml:
7498         * docs/gst/tmpl/GstIndex.sgml:
7499         * docs/gst/tmpl/GstStructure.sgml:
7500         * docs/gst/tmpl/GstTag.sgml:
7501         * docs/gst/tmpl/old/GstBin.sgml:
7502         * docs/gst/tmpl/old/GstBuffer.sgml:
7503         * docs/gst/tmpl/old/GstCaps.sgml:
7504         * docs/gst/tmpl/old/GstClock.sgml:
7505         * docs/gst/tmpl/old/GstCompat.sgml:
7506         * docs/gst/tmpl/old/GstData.sgml:
7507         * docs/gst/tmpl/old/GstElement.sgml:
7508         * docs/gst/tmpl/old/GstEvent.sgml:
7509         * docs/gst/tmpl/old/GstIndex.sgml:
7510         * docs/gst/tmpl/old/GstStructure.sgml:
7511         * docs/gst/tmpl/old/GstTag.sgml:
7512
7513 2004-04-28  David Schleef  <ds@schleef.org>
7514
7515         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7516         (gst_caps_append), (gst_caps_append_structure),
7517         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7518         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7519         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7520         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7521         (gst_caps_intersect), (gst_caps_normalize),
7522         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7523         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7524         * gst/gstcaps.h: use GST_IS_CAPS().
7525
7526 2004-04-26  David Schleef  <ds@schleef.org>
7527
7528         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7529         assembly.  gcc doesn't handle it correctly. (bug #141083)
7530         * gst/gsttrashstack.h: same
7531
7532 2004-04-25  Benjamin Otte  <otte@gnome.org>
7533
7534         * gst/gstelement.c: (gst_element_change_state):
7535           fix assertion to do an int comparison
7536
7537 2004-04-25  Benjamin Otte  <otte@gnome.org>
7538
7539         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7540           better debugging output on error
7541
7542 2004-04-25  Benjamin Otte  <otte@gnome.org>
7543
7544         * gst/gstcaps.c: (gst_caps_subtract):
7545           fix memleak
7546
7547 2004-04-23  Benjamin Otte  <otte@gnome.org>
7548
7549         * gst/gstvalue.c: (gst_value_compare_buffer),
7550         (_gst_value_initialize):
7551           add comparison function for buffers
7552
7553 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7554
7555         * docs/pwg/pwg.xml:
7556           Just found out that this so-called "ima-wav" format is really
7557           just "dvi adpcm" (according to the MS WAV documentation). So
7558           renaming it. We didn't use it yet anyway.
7559
7560 2004-04-23  Benjamin Otte  <otte@gnome.org>
7561
7562         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7563           call gst_caps_is_subset
7564
7565 2004-04-23  Benjamin Otte  <otte@gnome.org>
7566
7567         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7568         (gst_caps_is_subset):
7569           add documentation
7570
7571 2004-04-23  Benjamin Otte  <otte@gnome.org>
7572           
7573         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7574         (gst_caps_structure_subtract), (gst_caps_subtract),
7575         (gst_caps_structure_figure_out_union),
7576         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7577           fix simplifying and subtracting not working correctly with optional
7578           properties
7579           solve assorted problems that make it now simplify ebven more
7580         * docs/gst/tmpl/gstcaps.sgml:
7581         * gst/gstcaps.h:
7582           make gst_caps_do_simplify return a bool to indicate if it simplified
7583         * testsuite/caps/simplify.c: (main):
7584           add more checks. The tests is quite a bit useless right now because
7585           the core is heavily simplifying itself.
7586         * testsuite/caps/caps.h:
7587           fix caps to contain all optional properties
7588
7589 2004-04-22  Benjamin Otte  <otte@gnome.org>
7590
7591         * docs/gst/tmpl/gstcaps.sgml:
7592         * docs/gst/tmpl/gstfilesrc.sgml:
7593         * docs/gst/tmpl/gststructure.sgml:
7594         * docs/gst/tmpl/gstvalue.sgml:
7595           update for recent API changes
7596         * gst/gstcaps.c: (gst_caps_do_simplify):
7597           fix to stop trying with a freed structure
7598         * gst/gstpad.c: (gst_pad_link_fixate):
7599           simplify caps
7600         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7601           remove C++ comment
7602         * gst/gstpad.h:
7603           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7604         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7605         (gst_structure_to_string):
7606           keep the correct type when using lists of ranges
7607         * gst/gstvalue.c: (gst_value_list_prepend_value),
7608         (gst_value_list_append_value):
7609           copy the value before adding to the list (d'oh)
7610         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7611         (gst_value_subtract_int_range_int_range):
7612           handle overflows correctly
7613         * gst/gstvalue.c: (gst_value_subtract_from_list):
7614           fix memleak
7615         * testsuite/caps/caps.h:
7616           add a caps that caused segfaults
7617
7618 2004-04-22  Benjamin Otte  <otte@gnome.org>
7619
7620         * testsuite/refcounting/pad.c: (main):
7621           fix test
7622
7623 2004-04-22  Benjamin Otte  <otte@gnome.org>
7624
7625         * gst/gstcaps.c: (gst_caps_subtract):
7626           allow subtracting ANY and EMPTY from ANY caps
7627
7628 2004-04-22  Benjamin Otte  <otte@gnome.org>
7629
7630         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7631         (gst_caps_union):
7632           only simplify in functions that create new caps. Simplifying in
7633           gst_caps_append breaks tests.
7634
7635 2004-04-22  Benjamin Otte  <otte@gnome.org>
7636
7637         * gst/gstcaps.c: (gst_caps_structure_simplify):
7638           unset GValue after use
7639         * gst/gstcaps.c: (gst_caps_append), 
7640         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7641           use gst_caps_simplify (reduces registry size by 30%)
7642         * gst/gstpad.c: (gst_pad_template_new):
7643           don't allow NULL caps
7644
7645 2004-04-22  Benjamin Otte  <otte@gnome.org>
7646
7647         * docs/gst/gstreamer-sections.txt:
7648           add gst_caps_do_simplify
7649         * gst/gstcaps.c:
7650           add documentation for gst_caps_do_simplify
7651         * gst/gstvalue.h:
7652           fix typo in gst_value_register_subtract_func declaration for gst-doc
7653
7654 2004-04-22  Benjamin Otte  <otte@gnome.org>
7655
7656         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7657           fix bug when converting from empty string.
7658         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7659         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7660           use gst_caps_new_empty to allocate a new caps. Only that function
7661           allocates memory for caps now.
7662         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7663         (gst_caps_remove_structure):
7664           add ability to remove one structure (but not to header yet)
7665         * gst/gstcaps.c: (gst_caps_compare_structures),
7666         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7667         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7668         * gst/gstcaps.h:
7669           add gst_caps_do_simplify that tries to simplify a caps in place.
7670           Deprecate old gst_caps_simplify function.
7671         * testsuite/caps/caps.h:
7672           add caps.h containing a common set of caps to test against.
7673         * testsuite/caps/sets.c: (check_caps), (main):
7674           use it.
7675         * testsuite/caps/.cvsignore:
7676         * testsuite/caps/Makefile.am:
7677         * testsuite/caps/simplify.c: (check_caps), (main):
7678           add test to check correctness and efficency of caps simplification.
7679
7680 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7681
7682         reviewed by Benjamin Otte  <otte@gnome.org>
7683
7684         * gst/gstparse.c: (_gst_parse_escape):
7685           Free the GString used in _gst_parse_escape()
7686
7687 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7688
7689         * gst/gstpad.c: (gst_pad_link_negotiate):
7690           refuse to link if the link is not possible
7691         * configure.ac:
7692         * testsuite/Makefile.am:
7693         * testsuite/negotiation/.cvsignore:
7694         * testsuite/negotiation/Makefile.am:
7695         * testsuite/negotiation/pad_link.c: (main):
7696           add test that checks the above behaviour
7697
7698 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7699
7700         * docs/gst/gstreamer-sections.txt:
7701           add newly added API
7702
7703 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7704
7705         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7706         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7707         (gst_filesrc_open_file), (gst_filesrc_close_file),
7708         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7709         * gst/elements/gstfilesrc.h:
7710           add support for non-regular files (#140734)
7711
7712 2004-04-21  Benjamin Otte  <otte@gnome.org>
7713
7714         * gst/gstpad.c: (gst_pad_link_fixate):
7715           add sophisticated error checking code to see if fixation functions
7716           did their fixation right
7717
7718 2004-04-21  Benjamin Otte  <otte@gnome.org>
7719
7720         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7721           check for ANY caps before appending/unioning
7722         * gst/gstcaps.c: (gst_caps_is_subset),
7723         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7724         (gst_caps_structure_subtract), (gst_caps_subtract):
7725         * gst/gstcaps.h:
7726           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7727           the API. deprecate gst_caps_is_equal_fixed
7728         * gst/gstpad.c: (gst_pad_try_set_caps):
7729         * gst/gstqueue.c: (gst_queue_link):
7730           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7731         * gst/gststructure.c: (gst_structure_get_name_id):
7732         * gst/gststructure.h:
7733           add function gst_structure_get_name_id
7734         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7735         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7736         (gst_value_subtract_int_range_int_range),
7737         (gst_value_subtract_double_double_range),
7738         (gst_value_subtract_double_range_double),
7739         (gst_value_subtract_double_range_double_range),
7740         (gst_value_subtract_from_list), (gst_value_subtract_list),
7741         (gst_value_can_intersect), (gst_value_subtract),
7742         (gst_value_can_subtract), (gst_value_register_subtract_func),
7743         (_gst_value_initialize):
7744         * gst/gstvalue.h:
7745           add support for subtracting values from each other. Note that
7746           subtracting means subtracting as in set theory. Required for caps
7747           stuff above.
7748         * testsuite/caps/.cvsignore:
7749         * testsuite/caps/Makefile.am:
7750         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7751         * testsuite/caps/sets.c: (check_caps), (main):
7752         * testsuite/caps/subtract.c: (check_caps), (main):
7753           add tests for subtraction and equality code.
7754
7755 2004-04-20  David Schleef  <ds@schleef.org>
7756
7757         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7758         * gst/indexers/Makefile.am:
7759         * gst/schedulers/Makefile.am:
7760         * libs/gst/bytestream/Makefile.am:
7761         * libs/gst/control/Makefile.am:
7762         * libs/gst/getbits/Makefile.am:
7763
7764 2004-04-20  David Schleef  <ds@schleef.org>
7765
7766         * common/as-libtool.mak: Fine-tune DLL building.
7767         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7768         (like gst-plugins)
7769         * examples/plugins/Makefile.am: remove plugindir
7770         * gst/autoplug/Makefile.am: DLL building fixes
7771         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7772         Windows.
7773         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7774         * gst/indexers/Makefile.am: DLL building fixes
7775         * gst/schedulers/Makefile.am: DLL building fixes.
7776         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7777         * libs/gst/control/Makefile.am: same
7778         * libs/gst/getbits/Makefile.am: same
7779         * testsuite/Makefile.am: New dlopen directory
7780         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7781         when dlopened.
7782         * testsuite/dlopen/dlopen_gst.c: (main): same
7783         * testsuite/dlopen/loadgst.c: (do_test): same
7784
7785 2004-04-20  David Schleef  <ds@schleef.org>
7786
7787         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7788         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7789
7790 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7791
7792         * gst/gstelement.c: (gst_element_wait),
7793         (gst_element_set_time_delay), (gst_element_change_state):
7794           Use GST_TIME_*
7795
7796 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7797
7798         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7799         (gst_spider_identity_plug):
7800           improve debugging messages
7801         * gst/gstbin.c: (gst_bin_remove_func):
7802           make sure the state_change function is only called with simple state
7803           transitions
7804
7805 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7806
7807         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7808         (gst_fakesink_set_property), (gst_fakesink_chain):
7809         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7810         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7811         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7812         * gst/elements/gstidentity.c: (gst_identity_chain),
7813         (gst_identity_set_property):
7814         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7815         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7816           add warnings to _set_property for unknown arguments
7817           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7818
7819 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7820
7821         * Makefile.am:
7822         * docs/manuals.mak:
7823           add .po file download snippet
7824           fix a bug in the doc makefile
7825
7826 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7827
7828         * Makefile.am:
7829         * po/LINGUAS:
7830         * po/en_GB.po:
7831           Added en_GB translation (Gareth Owen)
7832
7833 2004-04-20  Johan Dahlin  <johan@gnome.org>
7834
7835         * gst/gstpad.c (_invent_event): Clean up
7836
7837 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7838
7839         * testsuite/caps/filtercaps.c: (main):
7840           fix test to test things correctly (caps are complicated)
7841
7842 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7843
7844         * testsuite/caps/Makefile.am:
7845         * testsuite/caps/filtercaps.c: (main):
7846           add test (that doesn't work right now, but should)
7847
7848 2004-04-19  David Schleef  <ds@schleef.org>
7849
7850         * configure.ac: Add test for allowing unaligned access.  Add define
7851         to put in gstconfig.h.
7852         * docs/gst/gstreamer-sections.txt: New symbols
7853         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
7854         * docs/gst/tmpl/gstfilesrc.sgml:
7855         * docs/gst/tmpl/gstparse.sgml:
7856         * docs/gst/tmpl/gsttypes.sgml:
7857         * docs/gst/tmpl/gstutils.sgml:
7858         * docs/gst/tmpl/gstvalue.sgml:
7859         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
7860         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
7861         on most !i386/!powerpc architectures.  From Daniel Gazard
7862         <daniel.gazard@free.fr>.  (bug #140156)
7863         * po/af.po: Check in changes made by gettext.
7864         * po/az.po:
7865         * po/fr.po:
7866         * po/nl.po:
7867         * po/sr.po:
7868         * po/sv.po:
7869
7870 2004-04-20  Benjamin Otte  <otte@gnome.org>
7871
7872         * gst/schedulers/entryscheduler.c: 
7873         (gst_entry_scheduler_yield):
7874           refuse to yield when decoupled elements insist on doing that.
7875           At least it's better than crashing
7876
7877 2004-04-19  David Schleef  <ds@schleef.org>
7878
7879         * docs/libs/Makefile.am: Change sinclude to include
7880         * docs/gst/Makefile.am: same
7881         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
7882
7883 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
7884
7885         * po/LINGUAS:
7886         * po/uk.po:
7887           Added Ukrainian translation (Maxim V. Dziumanenko)
7888
7889 2004-04-19  Johan Dahlin  <johan@gnome.org>
7890
7891         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
7892         checking here, do it before calling the function.
7893         Clean up, use for loops instead of while loops while iterating
7894         over lists.
7895
7896         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
7897         in debug message.
7898         (gst_spider_create_and_plug): Improve debug message.
7899         General: Replace while loops which iterates over GLists with for
7900         loops. Which are much cleaner, improves readability, especially
7901         for gst_spider_identity_plug
7902
7903         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
7904         fixes bug 140477
7905
7906 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
7907
7908         * po/LINGUAS:
7909         * po/tr.po:
7910           Added Turkish translation (Baris Cicek)
7911
7912 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7913
7914         * docs/faq/troubleshooting.xml:
7915           Mention gst-register in the FAQ (fixes 139045).
7916
7917 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
7918
7919         * docs/gst/gstreamer-sections.txt:
7920
7921 2004-04-17  Benjamin Otte  <otte@gnome.org>
7922
7923         * gst/gstelement.c: (gst_element_dispose):
7924           simplify
7925         * gst/gstpad.c: (gst_pad_call_chain_function):
7926           don't create loads of events due to bad macro usage
7927
7928 2004-04-16  David Schleef  <ds@schleef.org>
7929
7930         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
7931         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
7932         * gst/gstvalue.c: (gst_value_serialize_buffer),
7933         (gst_value_deserialize_buffer), (gst_type_is_fixed),
7934         (_gst_value_initialize): Create a new function gst_type_is_fixed()
7935         to indicate types that are fixed wrt caps or not.  Switching to
7936         this function fixes (bug #140298).
7937         * gst/gstvalue.h:
7938
7939 2004-04-16  David Schleef  <ds@schleef.org>
7940
7941         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
7942         for GST_UNALIGNED_ACESS, since we essentially know which archs
7943         are ok.
7944
7945 2004-04-17  Benjamin Otte  <otte@gnome.org>
7946
7947         * docs/gst/Makefile.am:
7948           ignore gst/parse directory when building docs (fixes #140205)
7949
7950 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
7951
7952         * testsuite/refcounting/mem.c: (vmsize):
7953           do error checking
7954
7955 2004-04-16  Johan Dahlin  <johan@gnome.org>
7956
7957         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
7958         and gst_pad_call_get_function.
7959
7960 2004-04-15  David Schleef  <ds@schleef.org>
7961
7962         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
7963         checks if we can access unaligned memory.
7964         * configure.ac: Use it.
7965
7966 2004-04-16  Benjamin Otte  <otte@gnome.org>
7967
7968         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
7969         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7970         * gst/elements/gstfilesrc.h:
7971           s/seek_happened/need_discont/ and require discont before sending any
7972           data
7973
7974 2004-04-15  David Schleef  <ds@schleef.org>
7975
7976         * gst/gstvalue.c: (gst_value_serialize_buffer),
7977         (gst_value_deserialize_buffer), (_gst_value_initialize):
7978         Register these types as fundamental types. (bug #140015)
7979
7980 2004-04-16  Benjamin Otte  <otte@gnome.org>
7981
7982         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
7983         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
7984         (gst_pad_pull):
7985           implement enforcing discont events before buffers are passed. This
7986           allows state changes of only some elements and later correctly going
7987           on where they left off (or in short: you can now set audio sinks to
7988           NULL to release the device when the pipeline is paused)
7989         * gst/gstpad.c: (gst_pad_call_chain_function),
7990         (gst_pad_call_get_function):
7991         * gst/gstpad.h:
7992           add gst_pad_call_chain_function and gst_pad_call_get_function for
7993           scheduler interaction. They are required because of the changes
7994           above.
7995         * gst/schedulers/entryscheduler.c: (get_buffer),
7996         (gst_entry_scheduler_chain_wrapper),
7997         (gst_entry_scheduler_get_wrapper),
7998         (gst_entry_scheduler_state_transition),
7999         (gst_entry_scheduler_pad_link):
8000         * gst/schedulers/gstbasicscheduler.c:
8001         (gst_basic_scheduler_chain_wrapper),
8002         (gst_basic_scheduler_src_wrapper),
8003         (gst_basic_scheduler_chainhandler_proxy),
8004         (gst_basic_scheduler_gethandler_proxy),
8005         (gst_basic_scheduler_cothreaded_chain),
8006         (gst_basic_scheduler_chain_elements):
8007         * gst/schedulers/gstoptimalscheduler.c:
8008         (get_group_schedule_function), (pad_clear_queued),
8009         (gst_opt_scheduler_pad_link):
8010           use the new functions instead of calling get/chain-functions
8011           directly.
8012
8013 2004-04-15  David Schleef  <ds@schleef.org>
8014
8015         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
8016         * docs/gst/tmpl/gstinfo.sgml: same
8017         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
8018         gtk-doc put here.
8019         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
8020         * examples/queue/queue.c: (main):  We iterate pipelines, not
8021         bins.  (bug #139996)
8022
8023 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8024
8025         * docs/pwg/advanced-types.xml:
8026           Add MS RLE support. Also document Qt RLE although I have no sample
8027           files for that yet. And document an extra property for ADPCM.
8028
8029 2004-04-15  David Schleef  <ds@schleef.org>
8030
8031         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
8032         (_gst_plugin_fault_handler_setup):  Disable more stuff on
8033         Windows.
8034
8035 2004-04-15  David Schleef  <ds@schleef.org>
8036
8037         * gst/gstinfo.c: (_gst_debug_init): Change some internal
8038         symbol names to not conflict with new gstinfo.h symbols.
8039         * gst/gstinfo.h: Add inline functions for all those crazy
8040         compilers that don't know how to handle variadic macros (MSVC).
8041
8042 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8043
8044         * configure.ac: bump nano to 1
8045
8046 === release 0.8.1 ===
8047
8048 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8049
8050         * NEWS:
8051         * RELEASE:
8052         * configure.ac:
8053           releasing 0.8.1, "Snow Brigade"
8054
8055 2004-04-14  David Schleef  <ds@schleef.org>
8056
8057         * testsuite/Makefile.am: define tests_ignore
8058         * testsuite/Rules: Added new tests_ignore, which get compiled,
8059         but not run (generally because they're inconsistent or have
8060         heisenbugs).  Now we can ensure all the .c files compile in
8061         testsuite/.
8062         * testsuite/bins/Makefile.am: define tests_ignore
8063         * testsuite/bytestream/Makefile.am:
8064         * testsuite/caps/Makefile.am:
8065         * testsuite/clock/Makefile.am:
8066         * testsuite/debug/Makefile.am:
8067         * testsuite/debug/global.c: (gst_debug_log_one),
8068         (gst_debug_log_two): Fix compilation problem.
8069         * testsuite/dynparams/Makefile.am:
8070         * testsuite/elements/Makefile.am:
8071         * testsuite/ghostpads/Makefile.am:
8072         * testsuite/indexers/Makefile.am:
8073         * testsuite/parse/Makefile.am:
8074         * testsuite/plugin/Makefile.am:
8075         * testsuite/refcounting/Makefile.am:
8076         * testsuite/refcounting/element_pad.c: (main): Don't return leak
8077         results, because it's not calculated correctly.
8078         * testsuite/refcounting/pad.c: (main): same
8079         * testsuite/states/Makefile.am:
8080         * testsuite/tags/Makefile.am:
8081         * testsuite/threads/Makefile.am:
8082
8083 2004-04-14  David Schleef  <ds@schleef.org>
8084
8085         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
8086         generating bad code around the cpu detection asm code.
8087
8088 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8089
8090         * tools/gst-inspect.c: (print_element_info):
8091           print numeric version of rank as well, since we added some - 1
8092           rank values to elements
8093
8094 2004-04-13  David Schleef  <ds@schleef.org>
8095
8096         * configure.ac:  Disable various code when compiling for MinGW.
8097         * gst/elements/Makefile.am:
8098         * gst/elements/gstelements.c:
8099         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8100         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
8101         * gst/registries/gstxmlregistry.c: (make_dir):
8102
8103 2004-04-13  David Schleef  <ds@schleef.org>
8104
8105         * gst/Makefile.am:
8106         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
8107         assembly.
8108         * gst/gstcpuid_i386.s: remove
8109
8110 2004-04-13  David Schleef  <ds@schleef.org>
8111
8112         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8113         seems to think it needs to be done.
8114         * docs/gst/tmpl/gstfakesink.sgml:
8115         * docs/gst/tmpl/gstfakesrc.sgml:
8116         * docs/gst/tmpl/gstfdsink.sgml:
8117         * docs/gst/tmpl/gstfdsrc.sgml:
8118         * docs/gst/tmpl/gstfilesink.sgml:
8119         * docs/gst/tmpl/gstfilesrc.sgml:
8120         * docs/gst/tmpl/gstidentity.sgml:
8121         * docs/gst/tmpl/gstmd5sink.sgml:
8122         * docs/gst/tmpl/gstmultifilesrc.sgml:
8123         * docs/gst/tmpl/gstpipefilter.sgml:
8124         * docs/gst/tmpl/gstshaper.sgml:
8125         * docs/gst/tmpl/gstspider.sgml:
8126         * docs/gst/tmpl/gstspideridentity.sgml:
8127         * docs/gst/tmpl/gststatistics.sgml:
8128         * docs/gst/tmpl/gsttee.sgml:
8129         * docs/gst/tmpl/gsttypefind.sgml:
8130         * docs/gst/tmpl/gstutils.sgml:
8131
8132 2004-04-13  David Schleef  <ds@schleef.org>
8133
8134         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8135         and to build DLLs on Windows.
8136         * gst/Makefile.am:
8137         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8138         (gst_filesrc_open_file):
8139         * gst/schedulers/Makefile.am:
8140
8141 2004-04-13  David Schleef  <ds@schleef.org>
8142
8143         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8144         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8145         fixating lists.
8146
8147 2004-04-12  David Schleef  <ds@schleef.org>
8148
8149         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8150         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8151         to using it.
8152         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8153         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8154         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8155         * gst/gststructure.c: (gst_structure_set_valist),
8156         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8157         support for buffers.
8158         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8159         intended to be const.
8160         * gst/gsttag.h: same
8161         * gst/gstvalue.c: (gst_value_serialize_buffer),
8162         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8163         to (de)serialize buffers.
8164         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8165         * testsuite/caps/string-conversions.c: (main):
8166         * testsuite/caps/value_serialize.c: add new test
8167
8168 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8169
8170         * docs/pwg/advanced-types.xml:
8171           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8172
8173 2004-04-11  Benjamin Otte  <otte@gnome.org>
8174
8175         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8176           rename categories to basic_*
8177         * gst/schedulers/gstbasicscheduler.c: 
8178         (gst_basic_scheduler_chain_wrapper),
8179         (gst_basic_scheduler_chainhandler_proxy),
8180         (gst_basic_scheduler_gethandler_proxy),
8181         (gst_basic_scheduler_eventhandler_proxy):
8182           debugging category fixes - put common stuff in log category
8183         * gst/schedulers/gstbasicscheduler.c: 
8184         (gst_basic_scheduler_chain_elements):
8185           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8186           active and linking two active chains
8187
8188 2004-04-10  Benjamin Otte  <otte@gnome.org>
8189
8190         * docs/pwg/intro-preface.xml:
8191           fix dead links and remove reference to Wiki
8192
8193 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8194
8195         * gst/schedulers/gstbasicscheduler.c:
8196           make sure we can switch back to the main function if we're still in
8197           the main function (supposed to fix #139617)
8198         * gst/schedulers/gthread-cothreads.h:
8199           don't throw an error when switching to the same cothread
8200
8201 2004-04-09  Benjamin Otte  <otte@gnome.org>
8202
8203         * gst/gstbin.c: (gst_bin_get_type):
8204         * gst/gstclock.c: (gst_clock_get_type):
8205         * gst/gstindex.c: (gst_index_get_type):
8206         * gst/gstobject.c: (gst_object_get_type),
8207         (gst_signal_object_get_type):
8208         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8209         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8210         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8211         * gst/gstqueue.c: (gst_queue_get_type):
8212         * gst/gstregistry.c: (gst_registry_get_type):
8213         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8214         * gst/gstthread.c: (gst_thread_get_type):
8215           don't use memchunks for these objects, use malloc instead
8216
8217 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8218
8219         * docs/gst/.cvsignore:
8220         * docs/gst/Makefile.am:
8221         * docs/gst/gstreamer-sections.txt:
8222         * docs/gst/tmpl/gstaggregator.sgml:
8223         * docs/gst/tmpl/gstbuffer.sgml:
8224         * docs/gst/tmpl/gstclock.sgml:
8225         * docs/gst/tmpl/gstelement.sgml:
8226         * docs/gst/tmpl/gstfakesink.sgml:
8227         * docs/gst/tmpl/gstfakesrc.sgml:
8228         * docs/gst/tmpl/gstfdsink.sgml:
8229         * docs/gst/tmpl/gstfdsrc.sgml:
8230         * docs/gst/tmpl/gstfilesink.sgml:
8231         * docs/gst/tmpl/gstfilesrc.sgml:
8232         * docs/gst/tmpl/gstidentity.sgml:
8233         * docs/gst/tmpl/gstindex.sgml:
8234         * docs/gst/tmpl/gstinfo.sgml:
8235         * docs/gst/tmpl/gstmd5sink.sgml:
8236         * docs/gst/tmpl/gstmultifilesrc.sgml:
8237         * docs/gst/tmpl/gstpad.sgml:
8238         * docs/gst/tmpl/gstpipefilter.sgml:
8239         * docs/gst/tmpl/gstpipeline.sgml:
8240         * docs/gst/tmpl/gstpluginfeature.sgml:
8241         * docs/gst/tmpl/gstqueue.sgml:
8242         * docs/gst/tmpl/gstregistry.sgml:
8243         * docs/gst/tmpl/gstscheduler.sgml:
8244         * docs/gst/tmpl/gstshaper.sgml:
8245         * docs/gst/tmpl/gstspider.sgml:
8246         * docs/gst/tmpl/gstspideridentity.sgml:
8247         * docs/gst/tmpl/gststatistics.sgml:
8248         * docs/gst/tmpl/gstsystemclock.sgml:
8249         * docs/gst/tmpl/gsttee.sgml:
8250         * docs/gst/tmpl/gstthread.sgml:
8251         * docs/gst/tmpl/gsttypefind.sgml:
8252         * docs/gst/tmpl/gstutils.sgml:
8253           further doc build fixes
8254
8255 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8256
8257         * docs/gst/Makefile.am:
8258           make docs exit on scanning problems
8259           fix nonsrcdir build issues
8260         * docs/gst/gstreamer-sections.txt:
8261           adding stuff from -unused
8262         * gst/gstqueue.h:
8263           create GstQueueSize
8264         * gst/schedulers/cothreads_compat.h:
8265           fix cothread warnings
8266
8267 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8268
8269         * docs/gst/gstreamer-sections.txt:
8270           remove defines deprecated by Benjamin
8271
8272 2004-04-07  Benjamin Otte  <otte@gnome.org>
8273
8274         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8275           when the buffer is complete, don't check if other buffers are needed
8276         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8277           check that the offset is >0 so we don't try to read before the
8278           beginning of the file
8279         * gst/gstpad.c: (gst_pad_set_pad_template):
8280           sink the template, so we don't end up with 130k pad templates
8281
8282 2004-04-06  Benjamin Otte  <otte@gnome.org>
8283
8284         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8285           don't ref the element, adding already reffed it. And we didn't unref
8286           it later anyway... (huge memleak when you used many spider elements)
8287         * gst/gstelement.c: (gst_element_base_class_finalize):
8288         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8289         (gst_element_register):
8290         * gst/gsturi.c: (gst_element_make_from_uri):
8291           use gst_object_(un)ref instead of g_object(un)ref
8292
8293 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8294
8295         * gst/gstbuffer.h:
8296           remove macro that wouldn't work anymore because struct member has
8297           been removed.
8298         * gst/schedulers/entryscheduler.c: (schedule_forward):
8299           fix segfault for unconnected pads
8300         
8301 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8302
8303         reviewed by David Schleef <ds@schleef.org>
8304
8305         * gst/gstinfo.h:
8306           *_FORMAT modifiers should require putting a % in front of them for
8307           consistency reasons.
8308
8309 2004-04-05  Colin Walters  <walters@redhat.com>
8310
8311         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8312         space.
8313
8314 2004-04-05  Benjamin Otte  <otte@gnome.org>
8315
8316         * configure.ac:
8317         * gst/Makefile.am:
8318         * gst/gst_private.h:
8319         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8320           add support for detecting if GStreamer runs inside valgrind.
8321           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8322           print a big message in valgrind that GStreamer has detected it's
8323           running inside and might now use different code.
8324         * gst/gstmemchunk.c: (populate), (free_area),
8325         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8326         (gst_mem_chunk_free):
8327           flag memchunks for valgrind, so it can detect leaking of chunks.
8328           This allows detecting leaks of GstBuffer and GstEvent correctly
8329           inside valgrind.
8330
8331 2004-04-05  David Schleef  <ds@schleef.org>
8332
8333         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8334           jensgr@gmx.net (Jens Granseuer)
8335
8336 2004-04-05  David Schleef  <ds@schleef.org>
8337
8338         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8339         (gst_buffer_default_free), (gst_buffer_default_copy),
8340         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8341         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8342         structures in one place.
8343
8344 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8345
8346         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8347           (GST_TIME_FORMAT, GST_TIME_ARGS)
8348
8349 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8350
8351         * testsuite/elements/Makefile.am:
8352           disable test until it stops breaking make distcheck
8353
8354 2004-04-05  Johan Dahlin  <johan@gnome.org>
8355
8356         * po/sv.po: Updated translation
8357
8358 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8359
8360         * gst/gstplugin.c: (gst_plugin_load_file):
8361           fix segfault for when original plugin was loaded statically
8362
8363 2004-04-05  Benjamin Otte  <otte@gnome.org>
8364
8365         * testsuite/debug/category.c: (main):
8366         * testsuite/debug/commandline.c: (main):
8367         * testsuite/debug/output.c: (main):
8368           fix tests to work again with debugging enabled
8369
8370 2004-04-05  Benjamin Otte  <otte@gnome.org>
8371
8372         * gst/schedulers/gstbasicscheduler.c:
8373         (gst_basic_scheduler_pad_link):
8374           fix to work with recent scheduling changes
8375
8376 2004-04-05  Benjamin Otte  <otte@gnome.org>
8377
8378         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8379         prepareChangeLog doesn't work when cvs indents):
8380           don't throw an error when no element can be scheduled, there's too
8381           many weird reasons why it doesn't work. Return STOPPED instead.
8382           decoupled elemts' schedulability doesn't depend on bufpens.
8383
8384 2004-04-04  Benjamin Otte  <otte@gnome.org>
8385
8386         * gst/schedulers/gstbasicscheduler.c:
8387         (gst_basic_scheduler_pad_select):
8388           fix uninitialized variable warnings
8389
8390 2004-04-04  Benjamin Otte  <otte@gnome.org>
8391
8392         * gst/gstpad.c: (gst_pad_collect_valist):
8393           fix uninitialized variable warning
8394         * gst/schedulers/entryscheduler.c: (schedule_forward):
8395           fix shadowed variable
8396
8397 2004-04-04  Benjamin Otte  <otte@gnome.org>
8398
8399         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8400         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8401         (gst_pad_select):
8402         * gst/gstpad.h:
8403         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8404         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8405         * gst/gstscheduler.h:
8406           implement gst_pad_collect as replacement for gst_pad_select.
8407           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8408           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8409           new pad_select, lock and unlock calls.
8410         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8411         * gst/cothreads.h:
8412         * gst/schedulers/cothreads_compat.h:
8413         * gst/schedulers/gthread-cothreads.h:
8414           remove unused cothread_lock and cothread_unlock calls
8415         * gst/schedulers/entryscheduler.c:
8416         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8417         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8418         (gst_entry_scheduler_pad_select):
8419           update to new API
8420         * gst/schedulers/gstbasicscheduler.c:
8421         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8422         (gst_basic_scheduler_pad_select):
8423           remove useless lock and unlock calls, update pad_select to new API
8424           (untested)
8425         * gst/schedulers/gstoptimalscheduler.c:
8426         (gst_opt_scheduler_class_init):
8427           remove useless select, lock and unlock function calls
8428         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8429           use gst_pad_collect instead of gst_pad_select
8430
8431 2004-04-04  Benjamin Otte  <otte@gnome.org>
8432
8433         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8434         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8435         (schedule_next_element), (print_entry):
8436           add can_schedule_pad to handle element states.
8437           add schedule_forward to select the correct entry to schedule next
8438
8439 2004-04-03  Benjamin Otte  <otte@gnome.org>
8440
8441         * gst/schedulers/entryscheduler.c: 
8442           remove unused variable, fix error inside Rb, fix compile warning in
8443           unreachable code
8444
8445 2004-04-03  Benjamin Otte  <otte@gnome.org>
8446
8447         * gst/schedulers/entryscheduler.c:
8448           completely revamp the inner workings, so it's a lot easier to
8449           understand and extend
8450
8451 2004-04-03  Andy Wingo  <wingo@pobox.com>
8452
8453         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8454         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8455         This allows better introspection of pipeline topology.
8456         (add_to_chain): Don't do trickery to put loop elements first;
8457         rather, queue a chain sort by marking the chain as dirty.
8458         (remove_from_chain): Mark the chain dirty.
8459         (sort_chain): New function. Sorts the group list so that terminal
8460         sinks are first. This means elements on the sink side will be
8461         preferentially sscheduled before elements on the src side of the
8462         pipeline.
8463         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8464         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8465         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8466         (group_inc_link): Change argument and variable names to match the
8467         new link structure member names (src and sink).
8468         (group_dec_link): Add some description
8469
8470 2004-04-03  Benjamin Otte  <otte@gnome.org>
8471
8472         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8473         * gst/gstinfo.h:
8474         * testsuite/debug/category.c: (main):
8475         * testsuite/debug/commandline.c: (main):
8476         * testsuite/debug/output.c: (main):
8477         * testsuite/debug/printf_extension.c: (main):
8478           fix to successfully build and test with --disable-gst-debug
8479           configure switch (fixes #138705)
8480
8481 2004-04-03  Benjamin Otte  <otte@gnome.org>
8482
8483         * docs/pwg/building-boiler.xml:
8484           add cvs login line and s/anonymous/anoncvs/
8485
8486 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8487
8488         reviewed by Benjamin Otte  <otte@gnome.org>
8489
8490         * gst/gststructure.c: (gst_structure_free):
8491           memleak fix: free fields array (partial fix for #134839)
8492
8493 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8494
8495         * docs/random/ds/0.9-suggested-changes:
8496           Add a note to change handoff use in fakesrc to be usable in
8497           a more generic way (fakesrc should be renamed to appsrc or so).
8498         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8499           Change signal type to scope, so we can fill the buffer in the
8500           handoff handler (that's the whole use of this signal...).
8501
8502 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8503
8504         * docs/pwg/other-ntoone.xml:
8505           Document muxers and n-to-1 elements.
8506
8507 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8508
8509         * gst/registries/gstxmlregistry.c
8510         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8511         determine if a file is a G_MODULE. The old one discards paths
8512         containing "so" somewhere in the middle. My home directory is
8513         called "soto". Go figure...
8514
8515 2004-03-31  David Schleef  <ds@schleef.org>
8516
8517         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8518         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8519         * gst/gstbuffer.h:
8520
8521 2004-03-31  David Schleef  <ds@schleef.org>
8522
8523         * gst/gstvalue.c: (gst_value_union_int_int_range),
8524         (gst_value_union_int_range_int_range), (gst_value_can_union),
8525         (gst_value_union), (_gst_value_initialize):  Add some union
8526         implementations.  We didn't have any previously.
8527         * testsuite/caps/Makefile.am:
8528         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8529         (gst_audioscale_getcaps), (test_caps), (main): A little test
8530         that is the same as the caps manipulation in audioscale.
8531
8532 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8533
8534         * docs/faq/general.xml:
8535           add entry about "does gst support format X?"
8536
8537 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8538
8539         * gst/gstthread.c:
8540           fix docs
8541         * gst/gstutils.h:
8542           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8543
8544 2004-03-30  Benjamin Otte  <otte@gnome.org>
8545
8546         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8547           set the offset of the buffer to the requested offset
8548         * gst/elements/gsttypefind.c: (stop_typefinding):
8549           revert patch 1.18 (which I unfortunately don't know the reason for).
8550           This is needed to allow downstream elements to seek. Otherwise
8551           typefind might overwrite a previous seek by downstream elements.
8552           This lead to errors with id3tag and typefind on some mp3s.
8553         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8554         (gst_entry_scheduler_iterate):
8555           be more verbose when debugging
8556
8557 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8558
8559         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8560           make sure we don't get NULL strings
8561
8562 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8563
8564         * gst/gstcaps.c:
8565         * gst/gstelement.c:
8566         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8567         * gst/gstindex.c: (gst_index_resolver_get_type),
8568         (gst_index_get_type), (gst_index_factory_get_type):
8569         * gst/gstinfo.c:
8570         * gst/gstpad.c:
8571         * gst/gstplugin.c:
8572         * gst/gsturi.c: (gst_uri_handler_get_type):
8573         * gst/gstvalue.c:
8574           first batch of documentation fixes
8575
8576 2004-03-29  David Schleef  <ds@schleef.org>
8577
8578         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8579         * docs/gst/gstreamer-docs.sgml:  More hacking
8580         * docs/gst/gstreamer-sections.txt:
8581         * docs/gst/tmpl/cothreads_compat.sgml:
8582         * docs/gst/tmpl/gstcaps.sgml:
8583         * docs/gst/tmpl/gstclock.sgml:
8584         * docs/gst/tmpl/gstelement.sgml:
8585         * docs/gst/tmpl/gstevent.sgml:
8586         * docs/gst/tmpl/gstpad.sgml:
8587         * docs/gst/tmpl/gstutils.sgml:
8588         * docs/gst/tmpl/gstxml.sgml:
8589         * docs/gst/tmpl/gthread-cothreads.sgml:
8590         * docs/random/ds/0.9-suggested-changes:
8591         * gst/elements/gstfakesink.h: doc fixes
8592         * gst/elements/gstfakesrc.h: doc fixes
8593         * gst/gstcaps.c: doc fixes
8594         * gst/gstcaps.h: doc fixes
8595         * gst/gstelement.c: doc fixes
8596         * gst/gstelement.h: doc fixes
8597         * gst/gstindex.c: doc fixes
8598         * gst/gstinfo.c: doc fixes
8599         * gst/gstpad.c: doc fixes
8600         * gst/gstpad.h: doc fixes
8601         * gst/gstplugin.c: doc fixes
8602         * gst/gsttypefind.h: doc fixes
8603         * gst/gsturi.c: doc fixes
8604         * gst/gstvalue.c: doc fixes
8605
8606 2004-03-29  Colin Walters  <walters@redhat.com>
8607
8608         * gst/registries/gstxmlregistry.c (get_time)
8609         (plugin_times_older_than_recurse):
8610         Use the result of stat to determine whether a path is a file,
8611         so we don't attempt to opendir() files.
8612
8613 2004-03-29  Benjamin Otte  <otte@gnome.org>
8614
8615         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8616           print caps in debugging output when setting caps failed
8617         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8618         (schedule_next_element), (get_buffer), (run_chainhandler),
8619         (element_may_start), (gst_entry_scheduler_chain_handler),
8620         (gst_entry_scheduler_get_handler),
8621         (gst_entry_scheduler_state_transition),
8622         (gst_entry_scheduler_pad_link):
8623           make this scheduler a testcase for mandatory
8624           discont-before-first-buffer which is needed if we want to allow apps
8625           to release the sound device.
8626           add SCHED_ASSERT macro to print scheduler state before an assertion
8627           triggers.
8628
8629 2004-03-29  Benjamin Otte  <otte@gnome.org>
8630
8631         * COPYING:
8632           replace by LGPL (former COPYING.LIB). The core is completely
8633           licensed LGPL.
8634         * COPYING.LIB:
8635           remove
8636
8637 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8638
8639         * po/af.po:
8640         * po/sv.po:
8641           updated Afrikaans and Swedish
8642
8643 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8644
8645         * po/LINGUAS:
8646         * po/az.po:
8647           adding Azerbaijani (Mətin Əmirov)
8648
8649 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8650
8651         * gst/gstelement.h: 
8652         * gst/gstelement.c (gst_element_set_time_delay): New function for
8653         setting element time taking into account a hardware buffering
8654         delay.
8655         (gst_element_set_time): Now just an invocation of
8656         gst_element_set_time_delay.
8657         * gst/gstclock.h: 
8658         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8659         allowing to set event times in the future.
8660         (gst_clock_get_event_time): Now just an invocation of
8661         gst_clock_get_event_time_delay.
8662
8663 2004-03-28  Benjamin Otte  <otte@gnome.org>
8664
8665         * gst/gstbin.c: (gst_bin_set_element_sched),
8666         (gst_bin_unset_element_sched):
8667           don't add decoupled elements to schedulers - otherwise it's
8668           impossible to control if a link to a decoupled element was already
8669           removed from a scheduler or not.
8670         * gst/schedulers/cothreads_compat.h:
8671         * gst/schedulers/gthread-cothreads.h:
8672           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8673           is no "unused" warning.
8674         * gst/schedulers/Makefile.am:
8675         * gst/schedulers/entryscheduler.c:
8676           add new scheduler, based on ideas from talking to David and Martin.
8677           It's supposed to be small and correct. Currently it's also slow (but
8678           it's not noticable)
8679         * examples/retag/retag.c: (main):
8680         * testsuite/bytestream/test1.c: (main):
8681           fix missing NULLs at end of variadic functions
8682         * testsuite/elements/.cvsignore:
8683           update
8684
8685 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8686
8687         * gst/gstevent.h:
8688         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8689
8690 2004-03-25  David Schleef  <ds@schleef.org>
8691
8692         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8693         * docs/gst/tmpl/gstaggregator.sgml:
8694         * docs/gst/tmpl/gstautoplugfactory.sgml:
8695         * docs/gst/tmpl/gstbin.sgml:
8696         * docs/gst/tmpl/gstbuffer.sgml:
8697         * docs/gst/tmpl/gstbufferstore.sgml:
8698         * docs/gst/tmpl/gstfakesink.sgml:
8699         * docs/gst/tmpl/gstfakesrc.sgml:
8700         * docs/gst/tmpl/gstmd5sink.sgml:
8701         * docs/gst/tmpl/gstreamer-unused.sgml:
8702         * docs/gst/tmpl/gstsearchfuncs.sgml:
8703         * docs/gst/tmpl/gstshaper.sgml:
8704         * docs/gst/tmpl/gstspider.sgml:
8705         * docs/gst/tmpl/gsttee.sgml:
8706         * docs/gst/tmpl/gstutils.sgml:
8707         * docs/gst/tmpl/gstvalue.sgml:
8708         * docs/gst/tmpl/gstxml.sgml:
8709         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8710         and we don't support it.
8711         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8712         (gst_use_threads), (gst_has_threads): same
8713         * gst/gstthreaddummy.c: same
8714         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8715         * gst/autoplug/gstspider.h: same
8716         * gst/elements/gstaggregator.h: Remove bogus function from header
8717         * gst/elements/gstfakesink.h: same
8718         * gst/elements/gstfakesrc.h: same
8719         * gst/elements/gstmd5sink.h: same
8720         * gst/elements/gstshaper.h: same
8721         * gst/elements/gsttee.h: same
8722         * gst/gstbin.c: doc fixes
8723         * gst/gstbin.h: Remove unused definition.
8724         * gst/gstbuffer.c: doc fixes
8725         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8726         * gst/gstfilter.c: doc fixes
8727         * gst/gsttag.c: doc fixes
8728         * gst/gstvalue.c: doc fixes
8729
8730 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8731
8732         * docs/pwg/advanced-types.xml:
8733           Document typefinding.
8734         * docs/pwg/other-oneton.xml:
8735           Document one-to-n elements, demuxers and parsers.
8736
8737 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8738
8739         reviewed by: David Schleef  <ds@schleef.org>
8740
8741         * configure.ac: Check bison version (bug #127838)
8742
8743 2004-03-25  David Schleef  <ds@schleef.org>
8744
8745         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8746         * docs/gst/gstreamer-sections.txt:
8747         * docs/gst/tmpl/gstautoplug.sgml:
8748         * docs/gst/tmpl/gststaticautoplug.sgml:
8749         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8750         * docs/gst/tmpl/gstutils.sgml:
8751         * docs/gst/tmpl/gstxml.sgml:
8752
8753 2004-03-24  David Schleef  <ds@schleef.org>
8754
8755         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8756         manual being such complete crap, that I decided to do major
8757         hacking of it.  This checkin replaces any fine tuning that
8758         may have been done previously, with the benefit of actually
8759         being complete for much of the API that was changed since
8760         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8761         * docs/gst/gstreamer-sections.txt:
8762         * docs/gst/tmpl/GstBin.sgml:
8763         * docs/gst/tmpl/GstBuffer.sgml:
8764         * docs/gst/tmpl/GstCaps.sgml:
8765         * docs/gst/tmpl/GstClock.sgml:
8766         * docs/gst/tmpl/GstCompat.sgml:
8767         * docs/gst/tmpl/GstData.sgml:
8768         * docs/gst/tmpl/GstElement.sgml:
8769         * docs/gst/tmpl/GstEvent.sgml:
8770         * docs/gst/tmpl/GstIndex.sgml:
8771         * docs/gst/tmpl/GstStructure.sgml:
8772         * docs/gst/tmpl/GstTag.sgml:
8773         * docs/gst/tmpl/cothreads.sgml:
8774         * docs/gst/tmpl/cothreads_compat.sgml:
8775         * docs/gst/tmpl/gettext.sgml:
8776         * docs/gst/tmpl/grammar.tab.sgml:
8777         * docs/gst/tmpl/gst-i18n-app.sgml:
8778         * docs/gst/tmpl/gst-i18n-lib.sgml:
8779         * docs/gst/tmpl/gst.sgml:
8780         * docs/gst/tmpl/gst_private.sgml:
8781         * docs/gst/tmpl/gstaggregator.sgml:
8782         * docs/gst/tmpl/gstarch.sgml:
8783         * docs/gst/tmpl/gstatomic.sgml:
8784         * docs/gst/tmpl/gstatomic_impl.sgml:
8785         * docs/gst/tmpl/gstbin.sgml:
8786         * docs/gst/tmpl/gstbuffer.sgml:
8787         * docs/gst/tmpl/gstbufferstore.sgml:
8788         * docs/gst/tmpl/gstcaps.sgml:
8789         * docs/gst/tmpl/gstclock.sgml:
8790         * docs/gst/tmpl/gstcompat.sgml:
8791         * docs/gst/tmpl/gstconfig.sgml:
8792         * docs/gst/tmpl/gstcpu.sgml:
8793         * docs/gst/tmpl/gstdata.sgml:
8794         * docs/gst/tmpl/gstdata_private.sgml:
8795         * docs/gst/tmpl/gstelement.sgml:
8796         * docs/gst/tmpl/gstenumtypes.sgml:
8797         * docs/gst/tmpl/gsterror.sgml:
8798         * docs/gst/tmpl/gstevent.sgml:
8799         * docs/gst/tmpl/gstfakesink.sgml:
8800         * docs/gst/tmpl/gstfakesrc.sgml:
8801         * docs/gst/tmpl/gstfilesink.sgml:
8802         * docs/gst/tmpl/gstfilter.sgml:
8803         * docs/gst/tmpl/gstindex.sgml:
8804         * docs/gst/tmpl/gstinfo.sgml:
8805         * docs/gst/tmpl/gstinterface.sgml:
8806         * docs/gst/tmpl/gstlog.sgml:
8807         * docs/gst/tmpl/gstmacros.sgml:
8808         * docs/gst/tmpl/gstmarshal.sgml:
8809         * docs/gst/tmpl/gstmd5sink.sgml:
8810         * docs/gst/tmpl/gstmultifilesrc.sgml:
8811         * docs/gst/tmpl/gstobject.sgml:
8812         * docs/gst/tmpl/gstpad.sgml:
8813         * docs/gst/tmpl/gstparse.sgml:
8814         * docs/gst/tmpl/gstpipeline.sgml:
8815         * docs/gst/tmpl/gstplugin.sgml:
8816         * docs/gst/tmpl/gstpluginfeature.sgml:
8817         * docs/gst/tmpl/gstqueue.sgml:
8818         * docs/gst/tmpl/gstreamer-unused.sgml:
8819         * docs/gst/tmpl/gstregistry.sgml:
8820         * docs/gst/tmpl/gstregistrypool.sgml:
8821         * docs/gst/tmpl/gstscheduler.sgml:
8822         * docs/gst/tmpl/gstsearchfuncs.sgml:
8823         * docs/gst/tmpl/gstshaper.sgml:
8824         * docs/gst/tmpl/gstspider.sgml:
8825         * docs/gst/tmpl/gstspideridentity.sgml:
8826         * docs/gst/tmpl/gststructure.sgml:
8827         * docs/gst/tmpl/gstsystemclock.sgml:
8828         * docs/gst/tmpl/gsttag.sgml:
8829         * docs/gst/tmpl/gsttaginterface.sgml:
8830         * docs/gst/tmpl/gsttee.sgml:
8831         * docs/gst/tmpl/gstthread.sgml:
8832         * docs/gst/tmpl/gsttrace.sgml:
8833         * docs/gst/tmpl/gsttrashstack.sgml:
8834         * docs/gst/tmpl/gsttypefind.sgml:
8835         * docs/gst/tmpl/gsttypes.sgml:
8836         * docs/gst/tmpl/gsturi.sgml:
8837         * docs/gst/tmpl/gsturitype.sgml:
8838         * docs/gst/tmpl/gstutils.sgml:
8839         * docs/gst/tmpl/gstvalue.sgml:
8840         * docs/gst/tmpl/gstversion.sgml:
8841         * docs/gst/tmpl/gstxml.sgml:
8842         * docs/gst/tmpl/gstxmlregistry.sgml:
8843         * docs/gst/tmpl/gthread-cothreads.sgml:
8844         * docs/gst/tmpl/types.sgml:
8845
8846 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8847
8848         * docs/pwg/other-sink.xml:
8849         * docs/pwg/other-source.xml:
8850           Documentation on how to write source and sink elements. Other
8851           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
8852           manager, autoplugger) are all still pending.
8853
8854 2004-03-25  Benjamin Otte  <otte@gnome.org>
8855
8856         * testsuite/elements/Makefile.am:
8857         * testsuite/elements/gst-compprep-check:
8858           add check to make sure gst-compprep works
8859         * testsuite/elements/gst-inspect-check.in:
8860           improve initialization output
8861         * testsuite/Makefile.am:
8862         * testsuite/gst-inspect-check:
8863           remove old file
8864
8865 2004-03-24  David Schleef  <ds@schleef.org>
8866
8867         * testsuite/elements/Makefile.am:
8868         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
8869         to the testsuite.
8870
8871 2004-03-24  Benjamin Otte  <otte@gnome.org>
8872
8873         * libs/gst/control/dparam.c: (gst_dparam_attach),
8874         (gst_dparam_detach):
8875         * libs/gst/control/dparammanager.c: (gst_dpman_init):
8876           fix lvalue casts for real
8877
8878 2004-03-24  Benjamin Otte  <otte@gnome.org>
8879
8880         * gst/schedulers/gstbasicscheduler.c:
8881         (gst_basic_scheduler_src_wrapper):
8882         * gst/schedulers/gstoptimalscheduler.c:
8883         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
8884         (pad_clear_queued), (gst_opt_scheduler_add_element),
8885         (gst_opt_scheduler_remove_element):
8886           fix GStreamer to not have issues with lvalue casts anymore (fixes
8887           #136841)
8888
8889 2004-03-24  Benjamin Otte  <otte@gnome.org>
8890
8891         * gst/gstelement.c:
8892           add documentation about a gobject quirk where the object hasn't the
8893           correct class pointer set on initialization
8894         * gst/schedulers/gstbasicscheduler.c:
8895         (gst_basic_scheduler_src_wrapper):
8896           make sure to not run into an infinite loop
8897
8898 2004-03-22  Benjamin Otte  <otte@gnome.org>
8899
8900         * gst/gstutils.c: (gst_util_dump_mem):
8901         * gst/gstutils.h:
8902           first argument of gst_util_dump_mem should be const
8903
8904 2004-03-22  Johan Dahlin  <johan@gnome.org>
8905
8906         * gst/gstvalue.h: Clean up a little bit.
8907
8908 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
8909
8910         reviewed by Benjamin Otte  <otte@gnome.org>
8911
8912         * gst/autoplug/gstspider.c: (gst_spider_dispose):
8913         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
8914         (gst_aggregator_class_init), (gst_aggregator_init):
8915         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
8916         (gst_filesrc_dispose), (gst_filesrc_set_location):
8917         * gst/elements/gstidentity.c: (gst_identity_finalize),
8918         (gst_identity_class_init), (gst_identity_chain):
8919         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
8920         * gst/elements/gststatistics.c: (gst_statistics_finalize),
8921         (gst_statistics_class_init):
8922         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
8923         (gst_tee_get_property):
8924           clean up used memory in this elements correctly on teardown (closes
8925           #137279)
8926
8927 2004-03-20  Colin Walters  <walters@redhat.com>
8928
8929         * gst/registries/gstxmlregistry.c:
8930         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
8931         registry saving atomic.
8932
8933 2004-03-20  Colin Walters  <walters@redhat.com>
8934
8935         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
8936         Just use
8937         access() instead of actually creating and deleting files.
8938
8939 2004-03-18  David Schleef  <ds@schleef.org>
8940
8941         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
8942         (bug #137625)
8943
8944 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8945
8946         * po/sv.po: updated translation (Christian Rose)
8947
8948 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8949
8950         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
8951         (gst_filesink_get_query_types), (_do_init),
8952         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
8953           return FALSE silently
8954         * po/af.po: updated translation (Petri Jooste)
8955
8956 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8957
8958         * Makefile.am:
8959         * configure.ac:
8960           dist common properly
8961         * po/af.po:
8962         * po/fr.po:
8963         * po/nl.po:
8964         * po/sr.po:
8965         * po/sv.po:
8966           refreshing translations
8967
8968 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8969
8970         * po/LINGUAS:
8971         * po/sv.po:
8972         * po/af.po:
8973           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
8974
8975 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8976
8977         * Makefile.am: use common/release.mak
8978
8979 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8980
8981         * docs/faq/gst-uninstalled:
8982           adding gst-monkeysaudio to the list of possible plugin dirs
8983
8984 2004-03-16  David Schleef  <ds@schleef.org>
8985
8986         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
8987         (gst_init_check_with_popt_table):  Fix some gettext strings to
8988         make them easier to translate.  Required making the strings
8989         non-const.
8990
8991 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8992
8993         * configure.ac: bump nano to 1
8994
8995 === release 0.8.0 ===
8996
8997 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8998
8999         * configure.ac: release 0.8.0, "Executive Slacks"
9000
9001 2004-03-16  Johan Dahlin  <johan@gnome.org>
9002
9003         * gst/schedulers/gstoptimalscheduler.c
9004         (gst_opt_scheduler_pad_unlink): Remove double ;,
9005         spotted by Scott Wheeler
9006
9007 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9008
9009         * configure.ac: bump libtool version
9010
9011 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9012
9013         * gst/gstcaps.h:
9014         * gst/gststructure.h:
9015           add reserved padding
9016
9017 2004-03-15  Benjamin Otte  <otte@gnome.org>
9018
9019         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9020           set the first parameter for select call correctly.
9021           (fixes #137230)
9022
9023 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9024
9025         * *.c,*.h: don't mix tabs and spaces
9026
9027 2004-03-15  Johan Dahlin  <johan@gnome.org>
9028
9029         * gst/schedulers/gstoptimalscheduler.c
9030         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
9031         crash on MPEG playback. My boolean arithmetic is a bit rusty.
9032
9033         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
9034         
9035 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9036
9037         * testsuite/Rules:
9038           fix gst-register rules
9039
9040 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9041
9042         * testsuite/Rules:
9043           use versioned gst-register
9044
9045 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9046
9047         * docs/libs/gstreamer-libs-sections.txt:
9048           remove </SUBSECTION>
9049         * gst/gstplugin.c:
9050         * gst/gstregistry.c: (gst_registry_add_plugin):
9051         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
9052         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
9053           add debugging and fix some comment blocks
9054
9055 2004-03-15  Johan Dahlin  <johan@gnome.org>
9056
9057         * *.h: Revert indent changes.
9058         
9059 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9060
9061         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
9062           g_error_free the g_error
9063         * tools/gst-feedback-m.m:
9064           check for other versions of gstreamer
9065         * tools/gst-indent:
9066           use sh, not bash
9067
9068 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9069
9070         * tools/gst-register.c: do not spill paths when registries are not
9071           writable, until we fix the "user running gst-register" case.
9072
9073 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9074
9075         * *.c, *.h: commit of gst-indent run on core
9076
9077 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9078
9079         * tools/gst-indent:
9080         * tools/Makefile.am:
9081           add our indentation style as a script
9082
9083 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9084
9085         * po/sr.po:
9086         * po/LINGUAS:
9087           added Serbian translation
9088
9089 2004-03-13  Benjamin Otte  <otte@gnome.org>
9090
9091         * gst/gstelement.c:
9092           add documentation note about gst_element_found_tags_for_pad not
9093           being usable in getfunctions. (see #137042)
9094
9095 2004-03-12  David Schleef  <ds@schleef.org>
9096
9097         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
9098         change API right now!  Readd gst_caps_is_simple() macro.
9099         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
9100         uninitialized variable.  I'd bet this caused crashes.
9101         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
9102
9103 2004-03-12  Johan Dahlin  <johan@gnome.org>
9104
9105         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
9106         * gst/gstcaps.h: Clean up
9107
9108         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9109         _gst_caps_initalize()
9110
9111         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9112         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9113
9114         * gst/gststructure.c (gst_structure_get_type): Ditto
9115
9116         * gst/gststructure.h: Ditto
9117         
9118 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9119
9120         * gst/gstqueue.c: (gst_queue_init):
9121           Reset default max. values in queues. Reason is simply to avoid
9122           braindead use. If you want wider values, use the properties. The
9123           default is supposed to always work. Wider values would make this
9124           beast a memory hog by default (250 full-PAL RGB32 video frames?
9125           That's 440 MB! No thank you).
9126
9127 2004-03-10  David Schleef  <ds@schleef.org>
9128
9129         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9130         were found.  (bug #136793)
9131
9132 2004-03-10  Johan Dahlin  <johan@gnome.org>
9133
9134         * gst/schedulers/gstoptimalscheduler.c
9135         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9136         links to elements within the same group, so we can finally remove
9137         that annoying warning. Refactor the code a little bit
9138         (group_dec_links_for_element): Split out
9139
9140 2004-03-09  David Schleef  <ds@schleef.org>
9141
9142         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9143         (bug #134863)
9144
9145 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9146
9147         * configure.ac: first bug fix due to major/minor bump
9148
9149 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9150
9151         * configure.ac: bump nano to 1
9152
9153 === release 0.7.6 ===
9154
9155 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9156
9157         * NEWS:
9158         * RELEASE:
9159         * configure.ac:
9160           releasing 0.7.6, "Almost"
9161         * po/fr.po:
9162         * po/nl.po:
9163         * tools/Makefile.am:
9164         * tools/gst-feedback-m.m:
9165           unversioned source
9166
9167 2004-03-09  Johan Dahlin  <johan@gnome.org>
9168
9169         Reviewed by: Thomas Vander Stichele
9170
9171         * gst/gstelement.c (gst_element_class_init): register second
9172         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9173         language bindings can (de)marshall correctly.
9174
9175         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9176
9177         * gst/gsterror.c (gst_g_error_get_type): New function
9178
9179         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9180         with VOID:OBJECT,OBJECT,STRING 
9181
9182 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9183
9184         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9185         Free a leaked g_timer on early returns.
9186
9187 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9188
9189         * docs/pwg/advanced-types.xml:
9190           Add cinepak description.
9191
9192 2004-03-07  David Schleef  <ds@schleef.org>
9193
9194         * docs/random/mimetypes:  Added cinepak description
9195
9196 2004-03-07  Andy Wingo  <wingo@pobox.com>
9197
9198         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9199
9200         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9201         there are no links to other groups when a group is destroyed.
9202         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9203         removed from a group, make sure the link count to elements linked
9204         to other pads is appropriately decremented. This really fixes
9205         #135672.
9206
9207         The 1.60->1.61 patch has been reapplied in light of this fix.
9208
9209         * gst/gstelement.c (gst_element_dispose): Really protect against
9210         multiple invocations this time.
9211
9212 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9213
9214         * docs/gst/gstreamer-sections.txt:
9215         * docs/gst/tmpl/gsttag.sgml:
9216           remove some deprecated functions, document some existing ones
9217         * gst/gsttag.c: (gst_tag_get_flag):
9218         * gst/gsttag.h:
9219           add accessor function
9220
9221 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9222
9223         * docs/gst/gstreamer-sections.txt:
9224         * docs/gst/tmpl/gsttag.sgml:
9225         * docs/gst/tmpl/gstxml.sgml:
9226         * gst/gsttag.c: (gst_tag_get_flag):
9227         * gst/gsttag.h:
9228
9229 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9230
9231         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9232         leak
9233
9234 2004-03-05  David Schleef  <ds@schleef.org>
9235
9236         * REQUIREMENTS: Add bison and flex.
9237         * configure.ac: Fix comment about bison.
9238         * docs/random/ds/0.9-suggested-changes: yer ma
9239         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9240
9241 2004-03-05  Benjamin Otte  <otte@gnome.org>
9242
9243         * gst/gstelement.c: (gst_element_error_full):
9244           revert recent recursive state changing commit - messing with other
9245           elements' states is evil and should be done by apps only.
9246
9247 2004-03-05  Benjamin Otte  <otte@gnome.org>
9248
9249         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9250           check for empty intersection instead of NULL caps
9251         (gst_element_get_compatible_pad_filtered):
9252           remove old workaround that is only a bug nowadays
9253
9254 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9255
9256         * gst/gstelement.c: (gst_element_error_full):
9257           make elements try to recursively change state to PAUSED on all
9258           parents after an error to suppress ensuing warnings
9259         * gst/parse/grammar.y:
9260           make it check if it was able to sync the state, and throw an error
9261           if not, so stuff like
9262           oggdemux ! vorbisdec ! osssink gets caught
9263
9264 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9265
9266         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9267           it contains lib64; use AS_AC_EXPAND to handle it properly
9268
9269 2004-03-05  David Schleef  <ds@schleef.org>
9270
9271         * gst/gstcpuid_i386.s:  Remove unused code
9272         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9273         (gst_getbits_newbuf): Remove MMX code
9274         * libs/gst/getbits/getbits.h: Remove MMX code
9275
9276 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9277
9278         * debian/.cvsignore:
9279         * debian/README.Debian:
9280         * debian/changelog:
9281         * debian/control:
9282         * debian/control.in:
9283         * debian/copyright:
9284         * debian/gstreamer-core-libs-dev.files:
9285         * debian/gstreamer-core-libs.files:
9286         * debian/gstreamer-core.files:
9287         * debian/gstreamer-core.postinst:
9288         * debian/gstreamer-core.postrm:
9289         * debian/gstreamer-doc.files:
9290         * debian/gstreamer-doc.links:
9291         * debian/gstreamer-doc.lintian:
9292         * debian/gstreamer-runtime.files:
9293         * debian/gstreamer-runtime.manpages:
9294         * debian/gstreamer-runtime.postinst:
9295         * debian/gstreamer-runtime.postrm:
9296         * debian/gstreamer-tools.files:
9297         * debian/gstreamer-tools.manpages:
9298         * debian/libgstreamer-dev.files:
9299         * debian/libgstreamer0.4.1.files:
9300         * debian/libgstreamerVERSION.files:
9301         * debian/rules:
9302         Debian package info not maintained here.
9303
9304 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9305
9306         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9307         * gst/gstbin.c: (gst_bin_class_init):
9308         * gst/gstelement.c: (gst_element_class_init):
9309         * gst/gstindex.c: (gst_index_class_init):
9310         * gst/gstobject.c: (gst_object_class_init),
9311         (gst_signal_object_class_init):
9312         * gst/gstpad.c: (gst_pad_template_class_init):
9313         * gst/gstregistry.c: (gst_registry_class_init):
9314         * gst/gsturi.c: (gst_uri_handler_base_init):
9315         * gst/gstxml.c: (gst_xml_class_init):
9316         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9317         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9318           make all signal names use dashes instead of underscore
9319
9320 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9321
9322         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9323
9324 2004-03-03  Benjamin Otte  <otte@gnome.org>
9325
9326         * gst/schedulers/gstoptimalscheduler.c:
9327           revert last commit by Andy Wingo. It causes segfaults on unreffing
9328           in Rhythmbox. (see bug #135672)
9329
9330 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9331
9332         * po/fr.po: fix typo
9333
9334 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9335
9336         * tools/gst-inspect.c: (main): 
9337         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9338
9339 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9340
9341         * configure.ac:
9342           get GLIB_ONLY and POPT flags for the nonversioned binaries
9343         * tools/Makefile.am:
9344           use them
9345
9346 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9347
9348         * gst/gst.c: (init_post):
9349           change so that GST_REGISTRY now is where the global registry gets
9350           saved, since that is where plugins now get attached to first, and
9351           spilled over to the user registry.  Note that in the case of using
9352           GST_REGISTRY env var, we don't want to affect any real registries
9353           beyond the one given by this var, and thus we don't set a user
9354           registry to spill to.  So make sure GST_REGISTRY is writable.
9355
9356 2004-03-01  David Schleef  <ds@schleef.org>
9357
9358         * AUTHORS:  Added some names.  Add yourself if you're missing.
9359
9360 2004-03-01  David Schleef  <ds@schleef.org>
9361
9362         * MAINTAINERS: Add
9363
9364 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9365
9366         * configure.ac:
9367           remove whitespace
9368         * docs/gst/tmpl/gstbuffer.sgml:
9369         * docs/gst/tmpl/gstdata.sgml:
9370         * docs/gst/tmpl/gstreamer-unused.sgml:
9371         * docs/gst/tmpl/gstxml.sgml:
9372           doc update
9373         * docs/manuals.mak:
9374           add a FIXME
9375         * docs/pwg/intro-preface.xml:
9376         * docs/pwg/pwg.xml:
9377           remove GNOME
9378         * gst/gst.c: (init_post):
9379           try GST_PLUGIN_PATH paths for the _global_registry first
9380         * gst/gstelement.h:
9381           add the error message as well, otherwise (null) debug info doesn't
9382           make much sense
9383         * tools/gst-register.c: (main):
9384           spill paths to next registry if this registry is not writable
9385         * po/fr.po:
9386         * po/nl.po:
9387           translation updates
9388
9389 2004-03-01  Johan Dahlin  <johan@gnome.org>
9390
9391         * gst/gstbuffer.c (_gst_buffer_initialize): 
9392         * gst/gstdata.c (gst_data_get_type): 
9393         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9394         instead of ref, since some applications that uses GBoxed
9395         routines depends on a function that actually returns a copy.
9396
9397 2004-02-27  Benjamin Otte  <otte@gnome.org>
9398
9399         * gst/gstbuffer.h:
9400           remove gst_buffer_free, use gst_data_unref
9401         * gst/gstdata.c: (gst_data_get_type):
9402           use refcounting in GstData GBoxed registration
9403         * gst/gstdata.h:
9404           remove gst_data_free, use gst_data_unref
9405
9406 2004-02-27  Johan Dahlin  <johan@gnome.org>
9407
9408         * gst/gstdata.c (gst_data_get_type): New function, register
9409         GstData as a GBoxed type.
9410
9411         * gst/gstdata.h (GST_TYPE_DATA): New macro
9412
9413 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9414
9415         * Makefile.am:
9416         * gstreamer.spec.in:
9417           put back RELEASE
9418         * gst/Makefile.am:
9419           clean up non-disting of built files
9420         * testsuite/debug/commandline.c:
9421           test fix for option rename
9422
9423 2004-02-26  David Schleef  <ds@schleef.org>
9424
9425         * configure.ac:  We don't really need glib-2.3.  Also remove
9426         some unneeded checks for library functions.
9427         * gst/Makefile.am:  Instead, we need to not dist files created
9428         by glib-genmarshal.
9429
9430 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9431
9432         * configure.ac:
9433           bump glib required version to 2.3.0 for g_value_takes_boxed
9434
9435  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9436
9437         * common/m4/gst-docs.m4
9438         change flavour text from enable to disable as enable is our default
9439         closes bug Bug 135304
9440
9441 === release 0.7.5 ===
9442  
9443  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9444  
9445         * NEWS:
9446           instate NEWS file
9447         * Makefile.am:
9448         * gstreamer.spec.in:
9449         * RELEASE:
9450           put back release
9451         * configure.ac:
9452         * docs/random/release:
9453           more updates
9454
9455 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9456
9457         * gst/gsttag.c: (_gst_tag_initialize):
9458         * po/fr.po:
9459         * po/nl.po:
9460           remove hyphen from codec tags
9461
9462 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9463
9464         * gst/parse/Makefile.am:
9465           fix dependency so that a make from a clean build works the first
9466           time
9467
9468 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9469
9470         * docs/random/release:
9471           update release strategy
9472         * po/fr.po:
9473           auto-update po file
9474         * po/nl.po:
9475           update dutch translation
9476
9477 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9478
9479         * docs/manual/debugging.xml:
9480         fix manual for new debugging system
9481
9482 2004-02-25  Andy Wingo  <wingo@pobox.com>
9483
9484         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9485         gst_pad_link_prepare. Please email the list with specific reasons
9486         for reverting.
9487
9488 2004-02-24  Andy Wingo  <wingo@pobox.com>
9489
9490         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9491         invocations.
9492
9493         * gst/schedulers/gstoptimalscheduler.c:
9494         I added a mess of prototypes at the top of the file by way of
9495         documentation. Some of the operations on chains and groups were
9496         re-organized.
9497
9498         (create_group): Added a type argument so if the group is enabled,
9499         the setup_group_scheduler knows what to do.
9500         (group_elements): Added a type argument here, too, to be passed on
9501         to create_group.
9502         (group_element_set_enabled): If an unlinked PLAYING element is
9503         added to a bin, we have to create a new group to hold the element,
9504         and this function will be called before the group is added to the
9505         chain. Thus we have a valid case for group->chain==NULL. Instead
9506         of calling chain_group_set_enabled, just set the flag on the group
9507         (the chain's status will be set when the group is added to it).
9508         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9509         Setup the group scheduler when the group is enabled, not
9510         specifically when an element goes PAUSED->PLAYING. This means
9511         PLAYING elements can be added, linked, and scheduled into a
9512         PLAYING pipeline, as was intended.
9513         (add_to_group): Don't ref the group twice. I don't know when this
9514         double-ref got in here. Removing it has the potential to cause
9515         segfaults if other parts of the scheduler are buggy. If you find
9516         that the scheduler is segfaulting for you, put in an extra ref
9517         here and see if that hacks over the underlying issue. Of course,
9518         then find out what code is unreffing a group it doesn't own...
9519         (create_group): Make the extra refcount floating, and remove it
9520         after adding the element. This means that...
9521         (unref_group): Destroy when the refcount reaches 0, not 1, like
9522         every other refcounted object in the known universe.
9523         (remove_from_group): When a group becomes empty, set it to be not
9524         active, and remove it from its chain. Don't unref it again,
9525         there's no floating reference any more.
9526         (destroy_group): We have to remove the group from the chain in
9527         remove_from_group (rather than here) to break refcounting cycles
9528         (the chain always has a ref on the group). So assert that
9529         group->chain==NULL.
9530         (ref_group_by_count): Removed, it was commented out anyway.
9531         (merge_chains): Use the remove_from_chain and add_to_chain
9532         primitives to do the reparenting, instead of rolling our own
9533         implementation.
9534         (add_to_chain): The first non-disabled group in the chain's group
9535         list will be the entry point for the chain. Because buffers can
9536         accumulate in loop elements' peer bufpens, we preferentially
9537         schedule loop groups before get groups to avoid unnecessary
9538         execution of get-based groups when the bufpens are already full.
9539         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9540         (get_group_schedule_function): Ditto.
9541         (loop_group_schedule_function): Ditto.
9542         (gst_opt_scheduler_loop_wrapper): Ditto.
9543         (gst_opt_scheduler_iterate): Ditto.
9544
9545         I understand the opt scheduler now, yippee!
9546
9547         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9548         (gst_pad_get_name, gst_pad_set_chain_function) 
9549         (gst_pad_set_get_function, gst_pad_set_event_function) 
9550         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9551         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9552         (gst_pad_set_query_function, gst_pad_get_query_types) 
9553         (gst_pad_get_query_types_default) 
9554         (gst_pad_set_internal_link_function) 
9555         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9556         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9557         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9558         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9559         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9560         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9561         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9562         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9563         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9564         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9565         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9566         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9567         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9568         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9569         argument checks, and some doc fixes.
9570
9571         (gst_pad_custom_new_from_template): Um, does anyone
9572         use these functions? Actually make a custom pad instead of a
9573         normal one.
9574         (gst_pad_try_set_caps): Transpose some checks.
9575         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9576         the pad is in negotiation.
9577         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9578         
9579         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9580
9581         * gst/gstelement.h: 
9582         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9583         on the list.
9584
9585 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9586
9587         * gst/gstbin.c: (gst_bin_add):
9588           add error for not being able to add elements
9589
9590 2004-02-22  Julien MOUTTE <julien@moutte.net>
9591
9592         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9593         audio-codec and video-codec.
9594
9595 2004-02-22  Benjamin Otte  <otte@gnome.org>
9596
9597         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9598
9599         * autogen.sh:
9600           replace test -e with test -x for mkinstalldirs to be more portable.
9601           (fixes #134816)
9602
9603 2004-02-22  Benjamin Otte  <otte@gnome.org>
9604
9605         * gst/gstpad.c:
9606           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9607           too noisy
9608         * gst/gsttag.c: (_gst_tag_initialize):
9609         * gst/gsttag.h:
9610           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9611         * libs/gst/control/dparam.c: (gst_dparam_attach):
9612         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9613           check that types for attached dparams match
9614
9615 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9616
9617         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9618         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9619         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9620           fix errors
9621
9622 2004-02-20  Andy Wingo  <wingo@pobox.com>
9623
9624         * gst/gstbin.c:
9625         * gst/gstbuffer.c:
9626         * gst/gstplugin.c:
9627         * gst/registries/gstxmlregistry.c: 
9628         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9629
9630         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9631         (gst_element_add_pad): DEBUG->INFO, some fixes.
9632         (gst_element_get_compatible_pad_template): Just see if the
9633         templates' caps intersect, not if one is a strict subset of the
9634         other. This conforms more to what gst_pad_link_intersect() does.
9635         (gst_element_class_add_pad_template): Don't memcpy the pad
9636         template, just ref it.
9637         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9638
9639         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9640         (gst_pad_link_filtered): Debug changes.
9641         (gst_pad_link_prepare): New function, consolidated from
9642         can_link_filtered and link_filtered.
9643
9644         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9645         look more like that of the functions in gstelement.c
9646
9647         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9648         object, and return the empty string if object is NULL.
9649
9650         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9651         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9652         LOG, not DEBUG. We still get flex info on debug.
9653
9654         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9655         debug string more verbose.
9656         (plugin_times_older_than): DEBUG->LOG.
9657
9658 2004-02-20  Julien MOUTTE <julien@moutte.net>
9659
9660         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9661         will emit found_tag for each stream they demux with the codec.
9662
9663 2004-02-20  Benjamin Otte  <otte@gnome.org>
9664
9665         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9666           copy navigation event correctly. Check freeing tag lists. 
9667         * gst/gstthread.c: (gst_thread_change_state):
9668           don't abort() on state changing mess - it might happen because of
9669           bugs.
9670         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9671           use boxed functions
9672         * gst/gstvalue.h:
9673           fix GST_VALUE_HOLDS_CAPS
9674
9675 2004-02-19  David Schleef  <ds@schleef.org>
9676
9677         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9678         and use it for GST_FUNCTION.  (bug #134750)
9679
9680 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9681
9682         * po/fr.po:
9683         * po/nl.po:
9684           updating translations
9685
9686 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9687
9688         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9689
9690 2004-02-18  kost@imn.htwk-leipzig.de
9691
9692         reviewed by: David Schleef  <ds@schleef.org>
9693
9694         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9695         for libgstcontrol.
9696
9697 2004-02-18  David Schleef  <ds@schleef.org>
9698
9699         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9700         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9701         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9702         * tools/gst-inspect.c: (print_element_info): Support dumping of
9703         double dparam information.
9704
9705 2004-02-17  David Schleef  <ds@schleef.org>
9706
9707         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9708         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9709         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9710         Use GST_TYPE_CAPS in signal prototype.
9711         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9712         Convert GST_TYPE_CAPS to boxed.
9713         * gst/gstelement.c: (gst_element_class_init):
9714         Use GST_TYPE_TAG_LIST in signal prototype.
9715         * gst/gstindex.c: (gst_index_class_init):
9716         * gst/gstindex.h:
9717         Add GST_TYPE_INDEX_ENTRY type.
9718         * gst/gstmarshal.list:
9719         Add necessary marshal types.
9720         * gst/gstpad.c: (gst_real_pad_class_init),
9721         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9722         (gst_pad_recover_caps_error):
9723         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9724         * gst/gststructure.c: (_gst_structure_initialize),
9725         (gst_structure_copy), (_gst_structure_copy_conditional):
9726         * gst/gststructure.h:
9727         Convert GST_TYPE_STRUCTURE to boxed.
9728         * gst/gsttag.c: (gst_tag_list_get_type):
9729         * gst/gsttag.h:
9730         Add GST_TYPE_TAG_LIST type.
9731
9732 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9733
9734         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9735         to what we agreed with david.
9736         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9737
9738 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9739
9740         * po/nl.po: update translation
9741
9742 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9743
9744         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9745           throw an error if spider is trying to play a mime type there is
9746           no decoder for
9747         * po/POTFILES.in:
9748           add gst/autoplug/gstspider.c for translation
9749
9750 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9751
9752         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9753         silently when the pad is negotiating.
9754
9755 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9756
9757         * docs/faq/Makefile.am:
9758           add script to run gstreamer uninstalled 
9759         * docs/faq/faq.xml:
9760         * docs/faq/developing.xml:
9761         * docs/faq/gst-uninstalled:
9762           extract script to run gstreamer uninstalled
9763         * docs/manuals.mak:
9764           add EXTRA_SOURCES variable for Makefile.am's to set to
9765           use additional SOURCE files for the doc build
9766
9767 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9768
9769         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9770
9771 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9772
9773         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9774         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9775         an error was thrown by osssink. Basically a state change failure for
9776         an element in a different scheduling group was considered as
9777         successful, which means that caps nego was going on and weird stuff
9778         happened. Like I wrote in the comment there, if someone wants to
9779         revert that please drop me a mail explaining why because I really see
9780         no point in keeping that broken behaviour there.
9781         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9782         be empty, we then return NULL which will trigger a nice error when 
9783         pulling from the pad.
9784
9785 2004-02-13  David Schleef  <ds@schleef.org>
9786
9787         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9788         (gst_dparam_get_property), (gst_dparam_set_property),
9789         (gst_dparam_do_update_default):
9790         * libs/gst/control/dparam.h:
9791         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9792         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9793         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9794         (gst_dpsmooth_do_update_double):
9795         * libs/gst/control/dparam_smooth.h:
9796         * libs/gst/control/dparammanager.c:
9797         (gst_dpman_inline_direct_update):
9798         Add support for double dparams.
9799
9800 2004-02-13  David Schleef  <ds@schleef.org>
9801
9802         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9803         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9804
9805 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9806
9807         reviewed by: David Schleef  <ds@schleef.org>
9808
9809         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9810         (gst_fdsrc_init), (gst_fdsrc_set_property),
9811         (gst_fdsrc_get_property), (gst_fdsrc_get):
9812         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9813         and sends an EOS event if file descriptor reading times out.
9814
9815 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9816
9817         * configure.ac:
9818           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9819
9820 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9821
9822         * configure.ac: pass required libxml version as argument
9823         (bug reported by Christophe Fergeau)
9824
9825 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9826   
9827         * docs/gst/gstreamer-docs.sgml:
9828         * docs/gst/tmpl/gstxml.sgml:
9829         * docs/libs/gstreamer-libs-docs.sgml:
9830           version API docs
9831
9832 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9833
9834         * gst/gstinfo.c:
9835         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9836         (gst_registry_pool_feature_filter):
9837         * gst/gstthread.c: (gst_thread_class_init):
9838         * gst/gstvalue.c:
9839           add includes exposed by building without libxml
9840         * gst/indexers/Makefile.am:
9841           do not build fileindex when LOADSAVE disabled; we should have
9842           a better libxml check later since fileindex depends on xml, not
9843           LOADSAVE or REGISTRY
9844         * libs/gst/control/Makefile.am:
9845           link with m
9846         * tools/Makefile.am:
9847           fix wrong source code for gst-xmlinspect
9848
9849 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9850
9851         * configure.ac:
9852           fix gcov help output
9853           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
9854         * docs/random/release:
9855           some updated releasing notes
9856         * gstreamer.spec.in:
9857           more updates
9858
9859 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9860
9861         * docs/faq/faq.xml:
9862         * docs/manual/manual.xml:
9863         * docs/pwg/pwg.xml:
9864         * docs/pwg/titlepage.xml:
9865           put version in documentation
9866
9867 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9868
9869         * tools/Makefile.am: fix man page installation
9870
9871 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9872
9873         * configure.ac:
9874           don't check for libxml when load/save and registry disabled (#105844)
9875         * gstreamer.spec.in:
9876           sync with fedora candidate spec
9877
9878 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9879
9880         * po/fr.po:
9881         * po/nl.po:
9882           replace multidisksrc with multifilesrc
9883
9884 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
9885
9886         * po/POTFILES.in:
9887           update to multidisksrc => multifilesrc file renaming (#134145)
9888
9889 2004-02-11  David Schleef  <ds@schleef.org>
9890
9891         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
9892         * docs/gst/tmpl/gstpadtemplate.sgml: same
9893         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
9894         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
9895         fixing dance.
9896         * gst/gstutils.c: Remove disabled code that uses GstProps.
9897         * gst/registries/gstxmlregistry.h: same
9898         * docs/random/ds/0.9-suggested-changes: random notes
9899
9900 2004-02-11  kost@imn.htwk-leipzig.de
9901
9902         reviewed by: David Schleef  <ds@schleef.org>
9903
9904         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
9905         initialisation of clock (bug #134128)
9906
9907 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9908
9909         * configure.ac:
9910         * gst/elements/Makefile.am:
9911         * gst/elements/gstelements.c:
9912         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
9913         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
9914         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
9915         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
9916         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
9917         * gst/elements/gstmultifilesrc.h:
9918           rename multidisksrc to multifilesrc (part of #122200)
9919
9920 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9921
9922         * docs/manuals.mak:
9923           fix automake complaints
9924         * gst-element-check.m4:
9925           fix unquotedness
9926
9927 2004-02-11  David Schleef  <ds@schleef.org>
9928
9929         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
9930         * gst/gstatomic_impl.h: Disable sparc implementation.
9931
9932 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
9933
9934         * gst-element-check.m4:
9935           fix underquoted macros as reported by automake 1.8.x (#133800)
9936         * configure.ac:
9937           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
9938           by autopoint (fixes #132996)
9939
9940 2004-02-10  Andy Wingo  <wingo@pobox.com>
9941
9942         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
9943         way to do inheritance.
9944         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
9945         (gst_pad_get_query_types, gst_pad_get_query_types_default):
9946         Routine docs.
9947         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
9948         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
9949         doc.
9950         (gst_pad_unlink, gst_pad_is_linked): Docs.
9951         (gst_pad_renegotiate): A brief description of capsnego.
9952         (gst_pad_try_set_caps): Document.
9953         (gst_pad_try_set_caps_nonfixed): Document.
9954         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
9955         (gst_pad_set_parent): Deprecated (although not out of the API).
9956         (gst_pad_get_parent): Deprecated, although many plugins use this.
9957         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
9958         are private and will go away in 0.9.
9959         (gst_pad_perform_negotiate): Doc.
9960         (gst_pad_link_unnegotiate): I think this is meant to be static.
9961         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
9962         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
9963         (gst_pad_get_peer): Doc updates.
9964         (gst_pad_caps_change_notify): Doc.
9965         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
9966         (gst_ghost_pad_new): Doc fixes.
9967
9968         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
9969         (gst_object_check_uniqueness): 
9970
9971         * gst/gstelement.c (gst_element_add_pad) 
9972         (gst_element_add_ghost_pad, gst_element_remove_pad) 
9973         (gst_element_remove_ghost_pad, gst_element_get_pad) 
9974         (gst_element_get_static_pad, gst_element_get_pad_list) 
9975         (gst_element_class_get_pad_template_list) 
9976         (gst_element_class_get_pad_template): Work on the docs.
9977         (gst_element_get_pad_template_list): Uses the class method.
9978         (gst_element_get_compatible_pad_template): Docs, and consolidate
9979         some test conditions. 
9980         (gst_element_get_pad_from_template): New static function.
9981         (gst_element_request_compatible_pad): Docs, and work with
9982         non-request compatible templates. 
9983         (gst_element_get_compatible_pad_filtered): Docs and remove
9984         redundant checks.
9985         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
9986         (gst_element_link_filtered, gst_element_link_many) 
9987         (gst_element_link, gst_element_link_pads) 
9988         (gst_element_unlink_many): Docs.
9989
9990 2004-02-05  Andy Wingo  <wingo@pobox.com>
9991
9992         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
9993         s/pointer/boxed/.
9994
9995         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
9996
9997         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
9998         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
9999         with the type=GST_TYPE_CAPS. This allows language bindings to know
10000         what kind of data they're dealing with.
10001
10002         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
10003         to NULL when g_value_init is called. GstCaps, which rolls its own
10004         type implementation, now does the same instead of allocating empty
10005         caps.
10006         (_gst_caps_initialize, _gst_caps_collect_value,
10007         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
10008         table methods. This allows G_VALUE_COLLECT to work.
10009
10010 2004-02-05  Andy Wingo  <wingo@pobox.com>
10011
10012         * configure.ac:
10013         * testsuite/Makefile.am (SUBDIRS): 
10014         * testsuite/ghostpads/Makefile.am: 
10015         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
10016
10017         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
10018         These two routines are the only ones that set
10019         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
10020         pad template. They should be made static, depending on ABI needs.
10021         (gst_real_pad_dispose): Handle the case of ghost pads without a
10022         parent. Assert after dealing with ghost pads that the ghost pad
10023         list is empty.
10024         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
10025         set after creation.
10026         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
10027         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
10028         functions. set_property will call add_ghost_pad/remove_ghost_pad
10029         as appropriate.
10030         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
10031
10032         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
10033         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
10034         (gst_element_remove_pad): Handle ghost pads as well.
10035         (gst_element_remove_ghost_pad): Deprecated (could be removed,
10036         depending on API-stability needs).
10037
10038 2004-02-05  Andy Wingo  <wingo@pobox.com>
10039
10040         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
10041         of course they're const
10042
10043 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10044
10045         * tools/Makefile.am:
10046         * tools/gst-feedback:
10047         * tools/gst-feedback-0.7:
10048           make gst-feedback versioned too for consistency
10049
10050 2004-02-11  David Schleef  <ds@schleef.org>
10051
10052         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10053         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
10054
10055 2004-02-10  Julien MOUTTE <julien@moutte.net>
10056
10057         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
10058         the structure does not contain a valid tag list. Adding a safety check
10059         to remove a noisy warning in that case.
10060
10061 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10062
10063         * gst/gst.c: fix name to be in line with others
10064
10065 2004-02-09  Julien MOUTTE <julien@moutte.net>
10066
10067         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
10068         not shout that loud when len is 0. Just return 0 silently.
10069
10070 2004-02-09  Julien MOUTTE  <julien@moutte.net>
10071
10072         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
10073         because data_unref has one and I prefer the debug to be symetric.
10074         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
10075         were refed when added to the queue and unrefed only once when the queue
10076         was flushed. Now the flush handler unref the buffers two times : first
10077         unref for the ref added when pushing in the queue's tail and second
10078         unref to destroy the flushed buffer.
10079
10080 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10081
10082         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
10083
10084 2004-02-06  David Schleef  <ds@schleef.org>
10085
10086         * docs/random/ds/0.9-suggested-changes: Random ramblings
10087         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
10088         to int before printing.
10089         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
10090         * gst/parse/parse.l: same.  See bug #129600
10091
10092 2004-02-06  David Schleef  <ds@schleef.org>
10093
10094         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
10095         (gst_index_add_entry), (gst_index_add_associationv),
10096         (gst_index_add_association): Add gst_index_add_associationv()
10097         and clean up gst_index_add_association(). #127133
10098
10099 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10100
10101         * autogen.sh: check out common with right tag if CVS/Tag exists
10102
10103 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10104
10105         * testsuite/ghostpads/ghostpads.c: (main):
10106           fix testsuite from segfaulting
10107
10108 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10109
10110         * Makefile.am: add release target
10111         * configure.ac: bump nano to 1
10112         * docs/random/release:
10113
10114 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10115
10116         * gst/gstcaps.h:
10117         * gst/gstelement.c: (gst_element_base_class_init),
10118         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10119         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10120         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10121         (gst_real_pad_dispose):
10122         * gst/gststructure.c: (gst_structure_free),
10123         (gst_structure_from_string):
10124           put reverted patch back in
10125         * gst/gstelement.c: (gst_element_remove_pad):
10126           free explicit caps if they're set
10127         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10128           copy the structure when fixating
10129
10130 2004-02-05  David Schleef  <ds@schleef.org>
10131
10132         * gst/gstmarshal.list:
10133         * gst/gstpad.c: (gst_real_pad_class_init),
10134         (_gst_real_pad_fixate_accumulator):
10135         Revert POINTER->BOXED change in signal marshaller.
10136
10137 === release 0.7.4 ===
10138                                                                                 
10139 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10140                                                                                 
10141         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10142         * configure.ac: changed for release
10143
10144 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10145
10146         * gstreamer.spec.in:
10147           bump required version of gtk-doc
10148
10149 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10150
10151         * gst/gstcaps.h:
10152         * gst/gstelement.c: (gst_element_base_class_init),
10153         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10154         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10155         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10156         (gst_real_pad_dispose):
10157         * gst/gststructure.c: (gst_structure_free),
10158         (gst_structure_from_string):
10159           revert patch that breaks applications, reapply after release
10160           to get this fixed properly
10161
10162 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10163
10164         * gst/gsttag.c: (_gst_tag_initialize):
10165         * gst/gsttag.h:
10166           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10167
10168 2004-02-04  David Schleef  <ds@schleef.org>
10169
10170         Fix some memleaks:
10171         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10172         (gst_spider_plug_from_srcpad):
10173         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10174
10175 2004-02-04  David Schleef  <ds@schleef.org>
10176
10177         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10178         a GstRealPad before accessing its structure members.
10179
10180 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10181
10182         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10183         (gst_clock_get_speed):
10184         * gst/gstclock.h:
10185           reset padding, remove unused fields
10186
10187 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10188
10189         * gst/autoplug/gstspideridentity.c:
10190         (gst_spider_identity_sink_loop_type_finding):
10191           use get_allowed_caps, not get_caps (fixes #132519)
10192         * gst/elements/gsttypefind.c: (stop_typefinding):
10193           use correct order when sending buffers and seeking
10194
10195 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10196
10197         * configure.ac:
10198         * gst/gstelement.h:
10199         * gst/gstpad.h:
10200         * gst/gstqueue.h:
10201           upgrade libtool CURRENT, reset padding
10202
10203 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10204
10205         * configure.ac:
10206           bump to prerelease
10207           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10208
10209 2004-02-04  David Schleef  <ds@schleef.org>
10210
10211         * docs/random/ds/0.9-suggested-changes: random notes
10212         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10213         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10214         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10215         expansion.
10216         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10217         (gst_filesink_get_query_types): same
10218         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10219         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10220         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10221         to use new GST_PTR_FORMAT.
10222         * gst/gstelement.h: deprecate function factory macros
10223         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10224         These are our last variadic macros that can't be replaced with
10225         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10226         attempting to deprecate gst_element_clock_wait().
10227         * gst/gstevent.h: same
10228         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10229         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10230         * gst/gstpad.h: deprecate function factory macros similar to above.
10231
10232 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10233
10234         * configure.ac:
10235         * tools/Makefile.am:
10236         * tools/gst-run.c: (popt_callback), (hash_print_key),
10237         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10238         (get_candidates), (main):
10239           add new source file to generate non-versioned wrapper binaries
10240           for our tools.
10241
10242 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10243
10244         * gst/gstevent.c: (_gst_event_free):
10245           actually break; inside the switch statement
10246         * gst/parse/grammar.y:
10247           fix memleak where GValues weren't unset
10248
10249 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10250
10251         * gst/gststructure.c: (gst_structure_from_string):
10252           fix huge memleak
10253         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10254         (new_entry), (gst_type_find_element_chain):
10255         * gst/gstelement.c: (gst_element_base_class_init),
10256         (gst_element_class_set_details):
10257         * gst/gstpad.c: (gst_pad_can_link_filtered):
10258           fix smaller memleaks
10259         * gst/gstpad.c: (gst_real_pad_dispose):
10260           check that explicit caps are gone
10261         * gst/gststructure.c: (gst_structure_free):
10262           actually free the structure
10263         * gst/gstelement.c: (gst_element_clear_pad_caps):
10264           unset explicit caps
10265
10266 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10267
10268         * tools/Makefile.am:
10269           use AM_CFLAGS since all the CFLAGS are the same
10270           use AM_LDFAGS
10271
10272 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10273
10274         * docs/manual/gnome.xml:
10275           expand example a little
10276         * gst/gst.c: (gst_init_with_popt_table),
10277         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10278           make sure popt option displays are done with right textdomain
10279           use GstPoptOption type
10280         * gst/gst.h:
10281           create GstPoptOption type
10282
10283 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10284
10285         * gst/gsterror.c: (_gst_stream_errors_init):
10286         * gst/gsterror.h:
10287           adding error type for no codec
10288         * po/POTFILES.in:
10289           add gst-inspect
10290         * po/nl.po:
10291           update dutch translation
10292         * tools/gst-inspect.c: (print_element_list), (main):
10293           do proper internationalization
10294         * tools/gst-launch.c: (idle_func):
10295           remove commented out function call
10296
10297 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10298
10299         * docs/README:
10300           add some error fixing notes
10301         * docs/gst/gstreamer-sections.txt:
10302           remove double entries
10303         * docs/gst/tmpl/gstbin.sgml:
10304         * docs/gst/tmpl/gstclock.sgml:
10305           remove override
10306         * docs/gst/tmpl/gstelement.sgml:
10307         * docs/gst/tmpl/gstindex.sgml:
10308         * docs/gst/tmpl/gstobject.sgml:
10309         * docs/gst/tmpl/gstpadtemplate.sgml:
10310         * docs/gst/tmpl/gstreamer-unused.sgml:
10311         * docs/gst/tmpl/gsttag.sgml:
10312         * docs/gst/tmpl/gstthread.sgml:
10313         * docs/gst/tmpl/gstxml.sgml:
10314         * gst/gsttag.h:
10315           sync header prototypes with c decls
10316         * gst/gsttaginterface.c:
10317           fix doc headers
10318
10319 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10320
10321         * gst/parse/Makefile.am:
10322         * gst/gstobject.h:
10323           get rid of gstmarshal.h dependency. It's not needed.
10324         * gst/gst.h:
10325         * gst/elements/gstfakesink.c:
10326         * gst/elements/gstfakesrc.c:
10327         * gst/elements/gstidentity.c:
10328         * gst/gstbin.c:
10329         * gst/gstelement.c:
10330         * gst/gstindex.c:
10331         * gst/gstobject.c:
10332         * gst/gstpad.c:
10333         * gst/gstthread.c:
10334         * gst/gstxml.c:
10335         * libs/gst/control/dparam.c:
10336         * libs/gst/control/dparammanager.c:
10337           include gstmarshal.h.
10338         Fixes #132045
10339
10340 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10341
10342         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10343         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10344         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10345         * gst/elements/gstfilesrc.h:
10346           don't ref the filesrc when creating mmaped buffers. Don't keep a
10347           list of not-yet-destroyed buffers.
10348         * gst/gstbuffer.h:
10349           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10350
10351 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10352
10353         * gst/gst.c: (init_pre):
10354           remove textdomain
10355
10356 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10357
10358         * docs/pwg/advanced-events.xml:
10359         * docs/pwg/advanced-scheduling.xml:
10360         * docs/pwg/intro-basics.xml:
10361         * docs/pwg/other-manager.xml:
10362         * docs/pwg/other-nton.xml:
10363         * docs/pwg/other-ntoone.xml:
10364         * docs/pwg/other-oneton.xml:
10365         * docs/pwg/pwg.xml:
10366           All sort of documentation... Forgot what. Point is that I want this
10367           in before I leave. The 'other-*' will be the last section and will
10368           explain issues specific to these type of elements.
10369
10370 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10371
10372         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10373         (gst_filesrc_get_read):
10374           set all the values on buffers that we can
10375
10376 2004-02-02  David Schleef  <ds@schleef.org>
10377
10378         Change usage of isblah() to g_ascii_isblah() to be more locale
10379         independent.  (#133076)
10380         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10381         * gst/gstutils.c:
10382         * gst/parse/parse.l:
10383
10384 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10385
10386         reviewed by: David Schleef  <ds@schleef.org>
10387
10388         Fix memory leaks:
10389         * gst/gstcaps.c: (gst_caps_to_string):
10390         * gst/registries/gstxmlregistry.c:
10391         (gst_xml_registry_add_path_list_func),
10392         (gst_xml_registry_parse_padtemplate):
10393
10394 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10395
10396         * gst/gstelement.c: (gst_element_default_error):
10397           suffix error messages with period
10398
10399 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10400
10401         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10402         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10403         * gst/gsterror.c: (gst_error_get_message):
10404           Suffix with dots
10405         * po/fr.po:
10406         * po/nl.po:
10407           Update translation files
10408
10409 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10410
10411         * gst/autoplug/gstspideridentity.c:
10412         (gst_spider_identity_sink_loop_type_finding):
10413         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10414         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10415         (gst_filesink_close_file), (gst_filesink_handle_event),
10416         (gst_filesink_chain):
10417         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10418         (gst_filesrc_get_read), (gst_filesrc_open_file):
10419         * gst/elements/gstidentity.c: (gst_identity_chain):
10420         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10421         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10422         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10423         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10424         * gst/gsterror.c: (_gst_core_errors_init),
10425         (_gst_library_errors_init), (_gst_resource_errors_init),
10426         (_gst_stream_errors_init), (gst_error_get_message):
10427         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10428         (gst_pad_recover_caps_error), (gst_pad_pull):
10429         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10430         * gst/schedulers/gstbasicscheduler.c:
10431         (gst_basic_scheduler_chainhandler_proxy),
10432         (gst_basic_scheduler_gethandler_proxy),
10433         (gst_basic_scheduler_cothreaded_chain):
10434           Suffix error messages with period.
10435           Use (NULL) instead of NULL
10436
10437 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10438
10439         * docs/gst/tmpl/gstelement.sgml:
10440         * docs/gst/tmpl/gstxml.sgml:
10441         * gst/gstelement.c: (gst_element_error_full):
10442           add element path to error
10443
10444 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10445
10446         * docs/random/mimetypes:
10447           update raw int/float info
10448         * gst/gsttag.c: (_gst_tag_initialize):
10449         * gst/gsttag.h:
10450           add GST_TAG_ENCODER
10451
10452 2004-01-30  David Schleef  <ds@schleef.org>
10453
10454         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10455           missing (#132991)
10456
10457 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10458
10459         reviewed by Benjamin Otte 
10460           parts of the patch submitted in bug #113913
10461
10462         * configure.ac:
10463           use AC_C_INLINE. Use = instead of == with test
10464         * examples/plugins/example.c:
10465         * gst/autoplug/gstspideridentity.c:
10466         * gst/elements/gstfdsrc.c:
10467         * gst/elements/gstfilesrc.c:
10468         * gst/elements/gstidentity.c:
10469         * gst/elements/gstmultidisksrc.c:
10470         * gst/elements/gststatistics.c:
10471         * gst/gstelement.c:
10472         * gst/gstobject.c:
10473         * gst/gstpad.c:
10474         * gst/gstpipeline.c:
10475         * gst/gstthread.c:
10476           don't end enums with a comma
10477         * gst/gstindex.c: (gst_index_compare_func):
10478           do explicit casting to gint
10479         * gst/gsttrace.c: (gst_trace_text_flush):
10480           #define strsize as a macro
10481
10482 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10483
10484         * docs/README:
10485         * docs/gst/gstreamer-docs.sgml:
10486         * docs/gst/gstreamer-sections.txt:
10487         * docs/gst/tmpl/gstelement.sgml:
10488         * docs/gst/tmpl/gsterror.sgml:
10489         * docs/gst/tmpl/gstinterface.sgml:
10490         * docs/gst/tmpl/gstreamer-unused.sgml:
10491         * docs/gst/tmpl/gststructure.sgml:
10492         * docs/gst/tmpl/gsttag.sgml:
10493         * docs/gst/tmpl/gsttaginterface.sgml:
10494         * docs/gst/tmpl/gstvalue.sgml:
10495         make sure all API ends up in the built docs
10496         * gst/gstinterface.c:
10497         * gst/gststructure.c: (gst_structure_id_set_value),
10498         (gst_structure_set_value), (gst_structure_id_get_value):
10499         * gst/gststructure.h:
10500         * gst/gstvalue.h:
10501         sync .h with .c declarations
10502
10503 2004-01-30  Julien Moutte  <julien@moutte.net>
10504
10505         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10506         Ronald will fix riffread.
10507
10508 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10509
10510         * docs/pwg/advanced-interfaces.xml:
10511           Added tuner interface docs.
10512
10513 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10514
10515         * docs/random/mimetypes:
10516           correct Theora information
10517         * gst/gstelement.h:
10518           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10519
10520 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10521
10522         * gst/gstelement.c: (gst_element_error_full):
10523         * gst/gstelement.h:
10524           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10525
10526 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10527
10528         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10529         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10530         again and even before DISCONT.
10531         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10532         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10533         bytestream so that it's not stopping to fill the bytestream if events
10534         different than EOS or DISCONT are received. Instead it process them so
10535         that they go downstream.
10536
10537 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10538
10539         * docs/gst/tmpl/gstelement.sgml:
10540         * docs/gst/tmpl/gstreamer-unused.sgml:
10541         * docs/gst/tmpl/gstxml.sgml:
10542         * gst/autoplug/gstspideridentity.c:
10543         (gst_spider_identity_sink_loop_type_finding):
10544         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10545         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10546         (gst_filesink_close_file), (gst_filesink_handle_event),
10547         (gst_filesink_chain):
10548         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10549         (gst_filesrc_get_read), (gst_filesrc_open_file):
10550         * gst/elements/gstidentity.c: (gst_identity_chain):
10551         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10552         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10553         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10554         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10555         * gst/gstelement.h:
10556         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10557         (gst_pad_recover_caps_error), (gst_pad_pull):
10558         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10559         * gst/schedulers/gstbasicscheduler.c:
10560         (gst_basic_scheduler_chainhandler_proxy),
10561         (gst_basic_scheduler_gethandler_proxy),
10562         (gst_basic_scheduler_cothreaded_chain):
10563           gst_element_error -> GST_ELEMENT_ERROR
10564
10565 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10566
10567         * docs/Makefile.am:
10568         * docs/gst/tmpl/gstelement.sgml:
10569         * docs/gst/tmpl/gstxml.sgml:
10570         * docs/manuals.mak:
10571         * docs/pwg/advanced-request.xml:
10572         * docs/pwg/advanced-scheduling.xml:
10573         * docs/pwg/advanced-tagging.xml:
10574           fix non-validating docbook using CDATA
10575           make sure make check-local gets run first to check if it validates
10576
10577 2004-01-29  Julien MOUTTE <julien@moutte.net>
10578
10579         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10580         handling (up and downstream).
10581         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10582         my_filter thing.
10583
10584 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10585
10586         * docs/pwg/advanced-tagging.xml:
10587           Add docs about tag writing.
10588
10589 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10590
10591         * docs/pwg/advanced-tagging.xml:
10592           Add a part about tag reading and application signalling... Tag
10593           writing still needs to be documented.
10594         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10595           We can set file locations in READY, too.
10596
10597 2004-01-29  Julien MOUTTE <julien@moutte.net>
10598
10599         * docs/random/ds/element-checklist: Adding some notes about src
10600         events.
10601
10602 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10603
10604         * docs/random/mimetypes:
10605           Update docs to point to correct elements for various mimetypes, and
10606           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10607           <stephane.loeuillet@tiscali.fr>.
10608
10609 2004-01-28  David Schleef  <ds@schleef.org>
10610
10611         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10612
10613 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10614
10615         * docs/random/mimetypes:
10616           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10617           undefined"
10618         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10619           make it only work in NULL.
10620         * gst/gstcaps.c:
10621           don't posion NULL caps
10622         * gst/gstelement.c: (gst_element_set_time):
10623           add debugging statement
10624         * gst/gstelement.c: (gst_element_emit_found_tag),
10625         (gst_element_found_tag_func), (gst_element_found_tags):
10626         * gst/gstelement.h:
10627           These functions take const taglists
10628         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10629           fix memleak
10630         * gst/gstpad.c: (gst_pad_event_default):
10631           make more effort on handling discont and clocks, g_warn if everything
10632           fails
10633         * gst/gststructure.c: (gst_structure_remove_fields),
10634         (gst_structure_remove_fields_valist):
10635         * gst/gststructure.h:
10636           add gst_structure_remove_fields(_valist)
10637         * gst/gsttag.c:
10638           fix doc glitch
10639
10640 2004-01-28  David Schleef  <ds@schleef.org>
10641
10642         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10643         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10644         Fix memory leakage of gst_caps_to_string().
10645
10646         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10647         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10648         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10649         (gst_spider_identity_sink_loop_type_finding):
10650         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10651         (find_suggest):
10652         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10653         (gst_pad_set_explicit_caps):
10654         * gst/parse/grammar.y:
10655
10656 2004-01-28  David Schleef  <ds@schleef.org>
10657
10658         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10659         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10660         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10661         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10662         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10663         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10664         (gst_debug_log_default), (_gst_info_printf_extension),
10665         (_gst_info_printf_extension_arginfo):  Add printf extension.
10666         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10667         * gst/gststructure.c: (gst_structure_to_string),
10668         (_gst_structure_parse_value): Use gst_value_deserialize() and
10669         remove old code.
10670         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10671         (gst_value_deserialize_boolean), (gst_strtoi),
10672         (gst_value_deserialize_int), (gst_value_deserialize_double),
10673         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10674         a bunch of deserialize functions and gst_value_deserialize.
10675         * gst/gstvalue.h: er, _de_serialize, not unserialize
10676         * testsuite/caps/string-conversions.c: (main): We don't currently
10677         handle (float) in caps, so convert these to (double).
10678         * testsuite/debug/Makefile.am: Add new test for the printf extension
10679         * testsuite/debug/printf_extension.c: (main): same
10680
10681 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10682
10683         * docs/random/company/time:
10684           Add some docs about clocking and time
10685
10686 2004-01-28  Julien MOUTTE <julien@moutte.net>
10687
10688         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10689
10690 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10691
10692         * docs/pwg/advanced-clock.xml:
10693         * docs/pwg/advanced-dparams.xml:
10694         * docs/pwg/advanced-events.xml:
10695         * docs/pwg/advanced-interfaces.xml:
10696         * docs/pwg/advanced-midi.xml:
10697         * docs/pwg/advanced-request.xml:
10698         * docs/pwg/advanced-scheduling.xml:
10699         * docs/pwg/advanced-tagging.xml:
10700         * docs/pwg/advanced-types.xml:
10701         * docs/pwg/appendix-checklist.xml:
10702         * docs/pwg/building-boiler.xml:
10703         * docs/pwg/building-chainfn.xml:
10704         * docs/pwg/building-filterfactory.xml:
10705         * docs/pwg/building-pads.xml:
10706         * docs/pwg/building-props.xml:
10707         * docs/pwg/building-signals.xml:
10708         * docs/pwg/building-state.xml:
10709         * docs/pwg/building-testapp.xml:
10710         * docs/pwg/intro-basics.xml:
10711         * docs/pwg/intro-preface.xml:
10712         * docs/pwg/other-autoplugger.xml:
10713         * docs/pwg/other-sink.xml:
10714         * docs/pwg/other-source.xml:
10715         * docs/pwg/titlepage.xml:
10716           fix up id's
10717
10718 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10719
10720         * docs/95NonPath:
10721         * docs/HACKING:
10722         * docs/README:
10723         * docs/building-the-docs-on-debian:
10724           collect relevant bits of doc info
10725
10726 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10727
10728         * docs/pwg/advanced_tagging.xml:
10729           Half-assed commit so Thomas can re-arrange document IDs here to be
10730           consistent, too.
10731
10732 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10733
10734         * docs/manual/autoplugging.xml:
10735         * docs/manual/bins-api.xml:
10736         * docs/manual/bins.xml:
10737         * docs/manual/buffers-api.xml:
10738         * docs/manual/buffers.xml:
10739         * docs/manual/clocks.xml:
10740         * docs/manual/components.xml:
10741         * docs/manual/cothreads.xml:
10742         * docs/manual/debugging.xml:
10743         * docs/manual/dparams-app.xml:
10744         * docs/manual/dynamic.xml:
10745         * docs/manual/elements-api.xml:
10746         * docs/manual/elements.xml:
10747         * docs/manual/factories.xml:
10748         * docs/manual/gnome.xml:
10749         * docs/manual/goals.xml:
10750         * docs/manual/helloworld.xml:
10751         * docs/manual/helloworld2.xml:
10752         * docs/manual/init-api.xml:
10753         * docs/manual/intro.xml:
10754         * docs/manual/links-api.xml:
10755         * docs/manual/links.xml:
10756         * docs/manual/manual.xml:
10757         * docs/manual/motivation.xml:
10758         * docs/manual/pads-api.xml:
10759         * docs/manual/pads.xml:
10760         * docs/manual/plugins-api.xml:
10761         * docs/manual/plugins.xml:
10762         * docs/manual/programs.xml:
10763         * docs/manual/queues.xml:
10764         * docs/manual/quotes.xml:
10765         * docs/manual/schedulers.xml:
10766         * docs/manual/states-api.xml:
10767         * docs/manual/states.xml:
10768         * docs/manual/threads.xml:
10769         * docs/manual/typedetection.xml:
10770         * docs/manual/xml.xml:
10771           use chapter, part, section or misc as id starts for all bits
10772
10773 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10774
10775         * docs/gst/gstreamer-sections.txt:
10776           Fix up TITLE of the sections
10777
10778 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10779
10780         * docs/pwg/advanced_interfaces.xml:
10781           Add documentation on propertyprobing.
10782         * docs/pwg/advanced_events.xml:
10783         * docs/pwg/advanced_tagging.xml:
10784         * docs/pwg/building_boiler.xml:
10785         * docs/pwg/building_filterfactory.xml:
10786         * docs/pwg/pwg.xml:
10787           Move filterfactory and tagging into their own chapter, add a chapter
10788           on events. all these are empty placeholders that will be filled in
10789           some day.
10790
10791 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10792
10793         * docs/pwg/advanced_interfaces.xml:
10794           Docs for mixer interface. Also a check for website uploading.
10795
10796 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10797
10798         * docs/HACKING:
10799         * docs/Makefile.am:
10800         * docs/faq/Makefile.am:
10801         * docs/gst/Makefile.am:
10802         * docs/gst/tmpl/gstelement.sgml:
10803         * docs/gst/tmpl/gstplugin.sgml:
10804         * docs/gst/tmpl/gstreamer-unused.sgml:
10805         * docs/libs/Makefile.am:
10806         * docs/manual/Makefile.am:
10807         * docs/manuals.mak:
10808         * docs/pwg/Makefile.am:
10809         * docs/upload.mak:
10810           Separate out upload target and make it similar for
10811           both docbook and gtk-doc docs
10812
10813 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10814
10815         * docs/manuals.mak:
10816           Fix upload target to work with freedesktop
10817
10818 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10819
10820         * docs/pwg/advanced_types.xml:
10821           Add notes on creating your own types.
10822         * docs/pwg/building_boiler.xml:
10823         * docs/pwg/building_pads.xml:
10824         * docs/pwg/building_state.xml:
10825           Add some stuff about how to retrieve values from structures, how
10826           that relates to types and change layout slightly again to be almost
10827           perfect.
10828
10829 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10830
10831         * docs/pwg/advanced_dparams.xml:
10832         * docs/pwg/advanced_scheduling.xml:
10833           Change index layout slightly.
10834
10835 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10836
10837         * docs/pwg/advanced_clock.xml:
10838         * docs/pwg/advanced_interfaces.xml:
10839         * docs/pwg/advanced_midi.xml:
10840           General placeholders for now.
10841         * docs/pwg/advanced_request.xml:
10842           Explanation about sometimes and request pads.
10843         * docs/pwg/advanced_scheduling.xml:
10844           Concept of bytestream, loopfunctions and schedulers.
10845         * docs/pwg/building_boiler.xml:
10846           Add something about plugin-init.
10847
10848 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10849
10850         * docs/pwg/building_pads.xml:
10851           Fix broken docbook
10852
10853 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10854
10855         * docs/pwg/advanced_interfaces.xml:
10856         * docs/pwg/pwg.xml:
10857           Add as a placeholder for future filling-in.
10858         * docs/pwg/basics_autoplugging.xml:
10859         * docs/pwg/basics_buffers.xml:
10860         * docs/pwg/basics_elements.xml:
10861         * docs/pwg/basics_events.xml:
10862         * docs/pwg/basics_plugins.xml:
10863         * docs/pwg/basics_types.xml:
10864           Remove, because unused (this is all in intro_basics.xml).
10865         * docs/pwg/building_signals.xml:
10866           Short intro to signals + reference to GObject docs - we really
10867           shouldn't go into these sort of things to deply because we don't
10868           use them that extensively anyway.
10869         * docs/pwg/building_state.xml:
10870           Explanation of states. Benjamin, please check.
10871         * docs/pwg/building_testapp.xml:
10872           Put everything in one page - putting only a few lines of content
10873           per page doesn't really make sense.
10874
10875           Time to get into the advanced topics. ;).
10876
10877 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10878
10879         * docs/pwg/advanced_types.xml:
10880           Finish documenting the current state of mimetypes.
10881         * docs/pwg/building_boiler.xml:
10882         * docs/pwg/building_chainfn.xml:
10883         * docs/pwg/building_pads.xml:
10884         * docs/pwg/building_props.xml:
10885         * docs/pwg/building_testapp.xml:
10886           Start documenting the "how to build a simple audio filter" part
10887           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
10888           states and (maybe?) a short introduction to capsnego in the chapter
10889           on pads (building_pads.xml). Capsnego should probably be explained
10890           fully in advanced_capsnego.xml or so.
10891
10892 2004-01-26  David Schleef  <ds@schleef.org>
10893
10894         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
10895         * gst/gstpad.h: Add new function to allow element to (somewhat)
10896         specify non-fixed caps on a pad.
10897         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
10898         that I added a few weeks ago.
10899
10900 2004-01-26  David Schleef  <ds@schleef.org>
10901
10902         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
10903           making try_set_caps() work with non-fixed caps.
10904
10905 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10906
10907         * docs/pwg/advanced_types.xml:
10908         * docs/pwg/intro_basics.xml:
10909         * docs/pwg/intro_preface.xml:
10910         * docs/pwg/pwg.xml:
10911         * docs/pwg/titlepage.xml:
10912           First try to resurrect the PWG. I'm halfway integrating the mimetypes
10913           in here (docs/random/mimetypes), and will from there on work on both
10914           updating outdated parts and adding missing parts.
10915           That doesn't mean I'll fix it completely, but I'll try at least. ;).
10916
10917 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
10918
10919         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
10920           policy is set
10921
10922 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10923
10924         * gst/gstelement.h:
10925           remove gst_element_factory_get_version. It doesn't exist anymore.
10926         * gst/gstplugin.c:
10927         * gst/gstplugin.h:
10928           remove gst_plugin_set_name and change gst_plugin_get_longname to
10929           gst_plugin_get_description to match code.
10930         * gst/gsterror.h:
10931           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
10932         * gst/gstpad.c: (gst_pad_try_set_caps):
10933           make it work with nonfixed caps.
10934           Note that even in the nonfixed case the link function of the pad
10935           that tries to set caps isn't called.
10936
10937 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10938
10939         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
10940           fix bug where buffer was not assembled correctly
10941         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
10942           silence by default
10943         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10944           only seek if there's no more buffers that could work without seeking
10945
10946 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10947
10948         * gst/gsttag.c: (_gst_tag_initialize):
10949         * gst/gsttag.h:
10950           Add application tag (for encoding/muxing app).
10951
10952 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
10953
10954         * autogen.sh:
10955           make autopoint force, and libtoolize not copy
10956         * common/m4/as-docbook.m4:
10957           added docbook xml catalog setup check
10958         * common/m4/gst-doc.m4:
10959           use docbook check
10960
10961 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
10962
10963         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
10964         * gst/gsttag.h:
10965           add GstTagFlag
10966
10967 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10968
10969         * docs/gst/gstreamer-sections.txt:
10970         * docs/gst/tmpl/gst.sgml:
10971         * docs/gst/tmpl/gstbuffer.sgml:
10972         * docs/gst/tmpl/gstclock.sgml:
10973         * docs/gst/tmpl/gstelement.sgml:
10974         * docs/gst/tmpl/gstreamer-unused.sgml:
10975         * docs/gst/tmpl/gstxml.sgml:
10976           sync latest API changes to docs
10977
10978 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10979
10980         * gst/gstpluginfeature.c:
10981           fix doc snippet
10982         * tools/gst-inspect.c: (print_element_list):
10983           fix output of typefind
10984           add GPL header
10985         * tools/gst-launch.c:
10986           add GPL header
10987
10988 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
10989
10990         * gst/elements/Makefile.am:
10991         * gst/elements/gstelements.c:
10992         * gst/elements/gsttypefindelement.c:
10993         * gst/elements/gsttypefindelement.h:
10994         * po/POTFILES.in:
10995         * po/fr.po:
10996         * po/nl.po:
10997           renamed gsttypefindelement to gsttypefind, conserving CVS history
10998
10999 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11000
11001         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
11002         * gst/gsttag.h:
11003           add some tags used in ogg as well
11004           fix _ in replaygain tags
11005
11006 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11007
11008         * gst/gsterror.h:
11009           fix wrong GST_LIBRARY_ERROR_ENCODE addition
11010
11011 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11012
11013         * gst/gstelement.c: (gst_element_error_full):
11014         * gst/gstelement.h:
11015           change _extended to _full
11016
11017 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11018
11019         reviewed by: <delete if not using a buddy>
11020
11021         * docs/gst/tmpl/gst.sgml:
11022         * docs/gst/tmpl/gstbuffer.sgml:
11023         * docs/gst/tmpl/gstclock.sgml:
11024         * docs/gst/tmpl/gstelement.sgml:
11025         * docs/gst/tmpl/gstreamer-unused.sgml:
11026         * docs/gst/tmpl/gstxml.sgml:
11027         * gst/gstelement.c: (gst_element_error_full):
11028         * gst/gstelement.h:
11029
11030 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11031
11032         * gst/gstelement.h: fix _gst_element_error_printf prototype
11033
11034 2004-01-20  David Schleef  <ds@schleef.org>
11035
11036         * gst/gststructure.c: (gst_structure_to_string):
11037         Convert function to use gst_value_serialize().
11038         * gst/gstvalue.c: (gst_value_serialize_list),
11039         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
11040         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
11041         (gst_value_serialize_int), (gst_value_serialize_double),
11042         (gst_string_wrap), (gst_value_serialize_string),
11043         (gst_value_serialize), (gst_value_deserialize):
11044         * gst/gstvalue.h:
11045         Add implementations for serialize.
11046
11047 2004-01-20  Julien MOUTTE  <julien@moutte.net>
11048
11049         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
11050         we want to keep that one in the future or change xvidenc.c to use 
11051         another error.
11052
11053 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11054
11055         * gst/gstelement.c: (_gst_element_error_printf):
11056         * gst/gstelement.h:
11057           privatise function
11058
11059 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11060
11061         * docs/random/error:
11062           doc explaining error system
11063         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11064           cleanup
11065
11066 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11067
11068         * gst/gst-i18n-app.h:
11069         * gst/gst-i18n-lib.h:
11070           remove inclusion of config.h
11071         * po/POTFILES.in:
11072         * po/nl.po:
11073           add gst/gstelement.c
11074
11075 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11076
11077         * po/nl.po: updated Dutch translation
11078
11079 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11080
11081         * gst/gsterror.c: (_gst_core_errors_init),
11082         (_gst_library_errors_init), (_gst_resource_errors_init),
11083         (_gst_stream_errors_init):
11084         remove ending punctuation dots
11085
11086 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11087
11088         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11089         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
11090         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11091         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11092         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11093         use GST_ERROR_SYSTEM
11094
11095 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11096
11097         * gst/gstelement.c: (gst_element_error_printf),
11098         (gst_element_error_extended):
11099         * gst/gstelement.h:
11100           add a helper printf function so we can have NULL values passed.
11101
11102 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11103
11104         * gst/gstelement.h:
11105           add G_STMT macros to gst_element_error, which isn't strictly
11106           necessary but people tell me to anyway.
11107
11108 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11109
11110         * gst/Makefile.am:
11111         * gst/autoplug/gstspideridentity.c:
11112         (gst_spider_identity_sink_loop_type_finding):
11113         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11114         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11115         (gst_filesink_close_file), (gst_filesink_handle_event),
11116         (gst_filesink_chain):
11117         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11118         (gst_filesrc_map_region), (gst_filesrc_get_read),
11119         (gst_filesrc_open_file):
11120         * gst/elements/gstidentity.c: (gst_identity_chain):
11121         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11122         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11123         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11124         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11125         * gst/gst.h:
11126         * gst/gst_private.h:
11127         * gst/gstelement.c: (gst_element_class_init),
11128         (gst_element_default_error), (gst_element_error_func),
11129         (gst_element_error_extended):
11130         * gst/gstelement.h:
11131         * gst/gsterror.c: (_gst_core_errors_init),
11132         (_gst_library_errors_init), (_gst_resource_errors_init),
11133         (_gst_stream_errors_init), (gst_error_get_message):
11134         * gst/gsterror.h:
11135         * gst/gstinfo.c: (_gst_debug_init):
11136         * gst/gstmarshal.list:
11137         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11138         (gst_pad_recover_caps_error), (gst_pad_pull):
11139         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11140         * gst/schedulers/gstbasicscheduler.c:
11141         (gst_basic_scheduler_chainhandler_proxy),
11142         (gst_basic_scheduler_gethandler_proxy),
11143         (gst_basic_scheduler_cothreaded_chain):
11144         * po/POTFILES.in:
11145         * po/fr.po:
11146         * po/nl.po:
11147           change error signal
11148           add error categories
11149
11150 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11151
11152         * gst/gsttag.c: (_gst_tag_initialize):
11153         * gst/gsttag.h:
11154         Add replaygain tag
11155
11156 2004-01-18  Colin Walters  <walters@verbum.org>
11157
11158         * examples/retag/retag.c: Call gst_init before processing
11159         program args.  Add g_assert to _link_many call.
11160
11161 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11162
11163         * gst/gstpad.c: (gst_pad_alloc_buffer):
11164           Return a newly allocated buffer when the pad has no peer.
11165
11166 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11167
11168         * gst/gstclock.c: (gst_clock_get_time):
11169           make it compile with gcc 2.95 again.
11170           Patch by Scott Wheeler
11171
11172 2004-01-15  David Schleef  <ds@schleef.org>
11173
11174         * gst/gstcaps.h:
11175         Added gst_caps_is_simple() macro.
11176         * testsuite/caps/caps.c: (test1):
11177         * testsuite/caps/intersect2.c: (main):
11178         * testsuite/caps/intersection.c: (main):
11179         Fixes to make 'make check' work again after removing
11180         gst_caps_is_chained().
11181
11182 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11183
11184         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11185         and additions to the MIDI document.
11186
11187 2004-01-15  David Schleef  <ds@schleef.org>
11188
11189         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11190         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11191         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11192
11193 2004-01-15  David Schleef  <ds@schleef.org>
11194
11195         * gst/gstqueue.c:
11196         * gst/gstqueue.h:
11197         Fix the spelling of "treshold" and make min_threshold actually
11198         affect the queue.
11199
11200 2004-01-15  David Schleef  <ds@schleef.org>
11201
11202         * gst/gstcaps.c:
11203         Add lots of documentation.
11204         * gst/gstcaps.h:
11205         Deprecate a few functions.
11206         * gst/gstpad.c:
11207         Removed use of deprecated functions.
11208
11209 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11210
11211         * gst/gstpad.c: (gst_pad_is_linked):
11212         * gst/gstpad.h:
11213           implement gst_pad_is_linked
11214         * gst/gstelement.h:
11215           reserve space for initiate_state_change
11216
11217 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11218
11219         * gst/autoplug/gstspideridentity.c:
11220         (gst_spider_identity_sink_loop_type_finding):
11221           break infinite loop by just returning instead of looping
11222         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11223           set event time difference correctly. Set it to 1 second instead
11224           of 100ms to be more tolerant
11225         * gst/gstelement.c: (gst_element_set_time):
11226           add debugging output
11227
11228 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11229
11230         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11231           query if buffers are inside the pool, ignore events
11232
11233 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11234
11235         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11236         (gst_clock_set_speed), (gst_clock_set_active),
11237         (gst_clock_is_active), (gst_clock_reset),
11238         (gst_clock_handle_discont):
11239         * gst/gstclock.h:
11240           deprecate old interface and disable functions that aren't in use
11241           anymore.
11242         * gst/gstelement.h:
11243         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11244         (gst_element_set_time), (gst_element_adjust_time):
11245           add concept of "element time" and functions to get/set this time.
11246         * gst/gstelement.c: (gst_element_change_state):
11247           update element time correctly.
11248         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11249           This is a debug message, not a g_critical.
11250         * gst/gstpad.c: (gst_pad_event_default):
11251           handle discontinuous events right with element time.
11252         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11253           update to clocking fixes.
11254           set clocks on elements in READY=>PAUSED. The old behaviour caused
11255           a wrong element time on the first element that started playing.
11256         * gst/schedulers/gstbasicscheduler.c:
11257         (gst_basic_scheduler_class_init):
11258         * gst/schedulers/gstoptimalscheduler.c:
11259         (gst_opt_scheduler_class_init):
11260           remove code that just implements the default behaviour.
11261         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11262           update to use new clocking functions
11263         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11264         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11265           update to test new element time.
11266         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11267           use _get_allowed_caps instead of _get_caps. This catches filtered
11268           caps correctly.
11269         * testsuite/debug/commandline.c:
11270           update for new GST_DEBUG syntax.
11271         * testsuite/threads/Makefile.am:
11272           disable a test that only works sometimes.
11273
11274 2004-01-13  Julien MOUTTE <julien@moutte.net>
11275
11276         * po/LINGUAS: Adding fr.
11277         * po/fr.po: Adding french translation.
11278
11279 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11280
11281         * gst/parse/grammar.y:
11282         * po/POTFILES.in:
11283         * po/nl.po:
11284         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11285           translate parsing error messages
11286
11287 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11288
11289         * po/POTFILES.in: adding gst-launch
11290         * po/nl.po: updated translation, all 99 strings translated
11291         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11292         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11293           fix strings for translation
11294
11295 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11296
11297         * gst/gst.c:
11298           - capitalize beginnings of popt options
11299           - fix strings for translation
11300           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11301
11302 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11303
11304         * po/README: add some notes on how to update translations
11305
11306 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11307
11308         * ABOUT-NLS: removed, is autogenerated from autopoint
11309         * autogen.sh: add autopoint stuff
11310         * configure.ac: fix up gettext stuff
11311         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11312         * gst/elements/gsttypefindelement.c: add header include
11313         * gst/gettext.h: add header, copy from system-installed header
11314         * gst/gst-i18n-app.h: to be included by each app having translations
11315         * gst/gst-i18n-lib.h: to be included by each lib having translations
11316         * gst/gst.c: (init_pre): fix up gettext calls
11317         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11318         * po/LINGUAS: the new way to specify translations present
11319         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11320         * po/Makevars: the variables filled in for GStreamer
11321         * po/POTFILES.in: added new files with translations
11322         * po/de.po: has new strings
11323         * po/nl.po: readded, has new strings
11324
11325 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11326
11327         * gst/gsttag.c: fix some strings marked for translation
11328
11329 2004-01-13  Iain <iain@prettypeople.org>
11330
11331         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11332         group when we add an element to it, cos we unref it when we remove one
11333
11334 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11335
11336         * testsuite/debug/commandline.c: (debug_not_reached):
11337         * testsuite/debug/output.c: (check_message):
11338           fix testsuite
11339
11340 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11341
11342         * examples/cutter/.cvsignore:
11343         * examples/helloworld/.cvsignore:
11344         * examples/launch/.cvsignore:
11345         * examples/manual/.cvsignore:
11346         * examples/mixer/.cvsignore:
11347         * examples/pingpong/.cvsignore:
11348         * examples/plugins/.cvsignore:
11349         * examples/queue/.cvsignore:
11350         * examples/queue2/.cvsignore:
11351         * examples/queue3/.cvsignore:
11352         * examples/queue4/.cvsignore:
11353         * examples/retag/.cvsignore:
11354         * examples/thread/.cvsignore:
11355         * examples/typefind/.cvsignore:
11356         * examples/xml/.cvsignore:
11357         * gst/.cvsignore:
11358         * gst/autoplug/.cvsignore:
11359         * gst/elements/.cvsignore:
11360         * gst/indexers/.cvsignore:
11361         * gst/parse/.cvsignore:
11362         * gst/registries/.cvsignore:
11363         * gst/schedulers/.cvsignore:
11364         * libs/gst/bytestream/.cvsignore:
11365         * libs/gst/control/.cvsignore:
11366         * libs/gst/getbits/.cvsignore:
11367         * tests/.cvsignore:
11368         * tests/bufspeed/.cvsignore:
11369         * tests/instantiate/.cvsignore:
11370         * tests/memchunk/.cvsignore:
11371         * tests/muxing/.cvsignore:
11372         * tests/sched/.cvsignore:
11373         * tests/seeking/.cvsignore:
11374         * tests/threadstate/.cvsignore:
11375         * testsuite/.cvsignore:
11376         * testsuite/caps/.cvsignore:
11377         * testsuite/cleanup/.cvsignore:
11378         * testsuite/dynparams/.cvsignore:
11379         * testsuite/plugin/.cvsignore:
11380         * tools/.cvsignore:
11381           update - this is huge, because it includes *.bb, *.bbg and *.da files
11382           which are generated for gcov.
11383
11384 2004-01-11  David Schleef  <ds@schleef.org>
11385
11386         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11387         a function to parse integers in ways that strto[u]l() does not.
11388
11389 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11390
11391         * tools/gst-inspect.c: (print_caps):
11392           improve output of caps a bit
11393
11394 2004-01-11  David Schleef  <ds@schleef.org>
11395
11396         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11397         inherit correct flags (READONLY and DONTKEEP).
11398
11399 2004-01-11  David Schleef  <ds@schleef.org>
11400
11401         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11402         (gst_filesrc_map_region):
11403         * gst/gstbuffer.c: (_gst_buffer_initialize),
11404         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11405         (gst_buffer_new), (gst_buffer_create_sub),
11406         (gst_buffer_is_span_fast), (gst_buffer_span):
11407         * gst/gstbuffer.h:
11408         Change GstBuffer private structure element names. (all files)
11409         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11410         (gst_queue_link):
11411         * gst/gstqueue.h:
11412         Implement getcaps/pad_link functions that handle the case where
11413         there are data in the queue.
11414
11415 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11416
11417         * gst/elements/gstbufferstore.c:
11418           initialize debugging structure correctly
11419         * gst/elements/gsttee.c: (gst_tee_set_property):
11420           g_object_notify when property was changed
11421         * gst/elements/gsttypefindelement.c:
11422         (gst_type_find_element_change_state):
11423           clear caps correctly
11424
11425 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11426
11427         * gst/gstqueue.c: (gst_queue_init):
11428           Use better defaults for when a queue should block. This
11429           gets rid of jerky playback for quite a few files.
11430           It takes more memory.
11431
11432 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11433
11434         (gst_xml_registry_parse_padtemplate):
11435           make critical message slightly more useful
11436
11437 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11438
11439         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11440         (gst_debug_message_get), (gst_debug_log_default):
11441         * gst/gstinfo.h:
11442           Change gst_debug_log(_valist) to take a const format string.
11443           Change prototype of log function and functions using those to 
11444           take a GstDebugMessage instead of a string that requires using
11445           gst_debug_message_get.
11446
11447 2004-01-08  David Schleef  <ds@schleef.org>
11448
11449         * Makefile.am:
11450         * configure.ac:
11451         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11452         and -ftest-coverage, which allows gcov to show information about
11453         testsuite coverage.
11454
11455 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11456
11457         * gst/gstutils.h:
11458           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11459           GST_PARENT_CALL_WITH_DEFAULT
11460         * gst/elements/gstaggregator.c: 
11461         * gst/elements/gstbufferstore.c: 
11462         * gst/elements/gstfakesink.c: 
11463         * gst/elements/gstfakesrc.c: 
11464         * gst/elements/gstfdsink.c: 
11465         * gst/elements/gstfdsrc.c: 
11466         * gst/elements/gstfilesink.c: 
11467         * gst/elements/gstfilesrc.c: 
11468         * gst/elements/gstidentity.c: 
11469         * gst/elements/gstmd5sink.c: 
11470         * gst/elements/gstmultidisksrc.c:
11471         * gst/elements/gstpipefilter.c: 
11472         * gst/elements/gstshaper.c:
11473         * gst/elements/gststatistics.c:
11474         * gst/elements/gsttee.c:
11475         * gst/elements/gsttypefindelement.c:
11476           use them.
11477
11478 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11479
11480         * docs/gst/gstreamer-docs.sgml: remove props
11481         * docs/gst/gstreamer-sections.txt: remove props
11482         * docs/gst/tmpl/gst.sgml:
11483         * docs/gst/tmpl/gstbin.sgml:
11484         * docs/gst/tmpl/gstbuffer.sgml:
11485         * docs/gst/tmpl/gstcaps.sgml:
11486         * docs/gst/tmpl/gstclock.sgml:
11487         * docs/gst/tmpl/gstelement.sgml:
11488         * docs/gst/tmpl/gstindex.sgml:
11489         * docs/gst/tmpl/gstobject.sgml:
11490         * docs/gst/tmpl/gstpad.sgml:
11491         * docs/gst/tmpl/gstpadtemplate.sgml:
11492         * docs/gst/tmpl/gstreamer-unused.sgml:
11493         * docs/gst/tmpl/gstthread.sgml:
11494         * docs/gst/tmpl/gstxml.sgml:
11495           sync with code reorganization
11496
11497 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11498
11499         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11500         Make the 'Could not find compatible pad' message more informative.
11501
11502 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11503                                                                                 
11504         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11505           Fix for if we pass NULL as property to location.
11506         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11507         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11508           Fix for instantiate-test (see below).
11509         * gst/gststructure.c: (_gst_structure_parse_value):
11510           Fix compile error on gcc-2.96.
11511         * configure.ac:
11512         * tests/Makefile.am:
11513         * tests/instantiate/Makefile.am:
11514         * tests/instantiate/create.c: (create_all_elements), (main):
11515           Add a test that instantiates all elements. This makes it easy to
11516           track dead code for old API/design (like setting event functions
11517           on sink pads and so on).
11518
11519 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11520
11521         * gst/gstcaps.c: (gst_caps_append_structure):
11522           Move the poisoning to allow a NULL structure
11523         * gst/gstevent.c: (_gst_event_free):
11524           When freeing a navigation event, free the structure
11525           also
11526
11527 2004-01-04  David Schleef  <ds@schleef.org>
11528
11529         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11530         Remove usage of gst_pad_proxy_fixate.
11531         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11532         (gst_caps_split_one), (gst_caps_replace):
11533         Add poisoning code.
11534         * gst/gstmarshal.list:
11535         Add pointer__pointer for fixate signal
11536         * gst/gstpad.c: (gst_real_pad_class_init),
11537         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11538         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11539         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11540         Add poisoning code. Add fixate signal on RealPad. Change
11541         set_explicit_caps() to take const GstCaps, like try_set_caps().
11542         * gst/gstpad.h:
11543         * testsuite/caps/Makefile.am:
11544         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11545
11546 2004-01-03  David Schleef  <ds@schleef.org>
11547
11548         * gst/elements/gsttypefindelement.c:
11549         (gst_type_find_element_have_type), (gst_type_find_element_init):
11550         Use gst_pad_use_explicit_caps for src pad.
11551         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11552         before using it.
11553
11554 2004-01-03  David Schleef  <ds@schleef.org>
11555
11556         * gst/gstelement.c: (gst_element_link_pads_filtered),
11557         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11558         that linking was successful.
11559         * gst/gstpad.c: (gst_pad_link_free),
11560         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11561         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11562         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11563         GstPadLinkReturn correctly between functions, and don't fail
11564         when DELAYED is used (DELAYED is very important).  Better
11565         cleanup on unlinking and unnegotiation.  Should fix some spider
11566         bugs.
11567
11568 2004-01-02  David Schleef  <ds@schleef.org>
11569
11570         * gst/gstelement.c: (gst_element_class_init),
11571         (gst_element_base_class_init): ->padtemplates should be cleared
11572         in base_init, since we need to have a fresh list for every
11573         class.  (Alternately, we chould copy the list and share the
11574         actual pad templates (not the list), but that would require
11575         changing every plugin to move pad template registration from
11576         base_init to class_init.)
11577
11578 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11579
11580         * gst/gstelement.c: (gst_element_class_add_pad_template):
11581           Refuse registering a pad template if another pad template
11582           with the same name already exists (#114715).
11583
11584 2004-01-02  David Schleef  <ds@schleef.org>
11585
11586         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11587         (gst_caps_is_equal_fixed): Add new function.
11588         * gst/gstcaps.h: ditto.
11589         * gst/gstpad.c: (gst_real_pad_class_init),
11590         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11591         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11592         check new caps against existing caps -- if they're the same, return
11593         OK without renegotiating.  caps-nego-failed signal fixed so that
11594         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11595         to save an extra caps copy.  Don't complete negotiation if a pad
11596         link function returns DELAYED.
11597
11598 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11599
11600         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11601           Fix wrong g_return_if_fail
11602
11603 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11604
11605         * gst/gstbin.c: (gst_bin_class_init):
11606         Change the marshalling of element_added/element_removed
11607         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11608         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11609
11610 2004-01-01  David Schleef  <ds@schleef.org>
11611
11612         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11613         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11614         (gst_pad_use_explicit_caps):
11615         * gst/gstpad.h:
11616         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11617         to use an internal getcaps and link fuction so that negotiation
11618         always results in the explicitly set caps.
11619         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11620         are particularly useful for decoders.
11621
11622 2003-12-31  David Schleef  <ds@schleef.org>
11623
11624         * gst/elements/gstidentity.c: (gst_identity_class_init),
11625         (gst_identity_init), (gst_identity_chain),
11626         (gst_identity_set_property), (gst_identity_get_property):
11627         * gst/elements/gstidentity.h:
11628         * gst/gstqueue.c: (gst_queue_init):
11629           Negotiation fixes.
11630
11631 2003-12-31  David Schleef  <ds@schleef.org>
11632
11633         * gst/gstcaps.c: (gst_caps_intersect),
11634         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11635           Implement gst_caps_normalize().
11636         * testsuite/caps/normalisation.c: (main):
11637           Add an additional test
11638
11639 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11640
11641         * gst/gstqueue.c: (gst_queue_init):
11642           use gst_pad_proxy_getcaps()
11643
11644 2003-12-31  David Schleef  <ds@schleef.org>
11645
11646         * gst/elements/gstshaper.c: (gst_shaper_link):
11647         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11648         * gst/gstqueue.c: (gst_queue_link):
11649           Negotiation fixes.
11650
11651 2003-12-31  David Schleef  <ds@schleef.org>
11652
11653         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11654         * gst/gstpad.h: Add functions that are useful as default pad
11655         link and fixate functions for elements.
11656
11657 2003-12-30  David Schleef  <ds@schleef.org>
11658
11659         * gst/gstpad.c: (gst_pad_link_try):
11660           Fix segfault when attempting to return to old caps
11661
11662 2003-12-29  David Schleef  <ds@schleef.org>
11663
11664         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11665         (gst_caps_structure_simplify), (gst_caps_simplify):
11666         * gst/gstcaps.h:
11667           Add simplify function
11668         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11669         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11670         * gst/gstpad.h:
11671           Copy over srcnotify, sinknotify when calling old pad_link
11672           functions.  Add new is_negotiated() function.
11673         * gst/gststructure.c: (gst_structure_copy):
11674           Fix an incredibly stupid bug that should have been noticed
11675           weeks ago.  _copy() returned the argument, not the new copy.
11676
11677 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11678
11679         * gst/gstcaps.c: (gst_caps_append):
11680           add sanity checks
11681         * gst/gstcaps.h: (gst_caps_debug):
11682           remove, it doesn't exist anymore.
11683         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11684         (gst_element_threadsafe_properties_post_run):
11685           make debugging messages not clutter up THREAD debug category
11686         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11687         (gst_element_change_state):
11688           update to new caps API
11689         * gst/gstinterface.c: (gst_implements_interface_cast):
11690           don't put vital code in g_return_if_fail
11691         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11692         (gst_pad_link_filtered):
11693           add pst_pad_try_link and use it.
11694         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11695           implement correctly, deprecate first one.
11696         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11697           add and implement.
11698         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11699           implement.
11700         (gst_pad_get_negotiated_caps):
11701           add and implement. Make GST_PAD_CAPS call this function.
11702         (gst_pad_get_caps):
11703           remove unneeded check..
11704         (gst_pad_recover_caps_error):
11705           disable, always return FALSE.
11706         (gst_real_pad_dispose):
11707           don't free caps and appfilter anymore, they're unused.
11708         * gst/gstpad.h:
11709           Reflect changes mentioned above.
11710         * gst/gstsystemclock.c: (gst_system_clock_wait):
11711           Make 'clock is way behind' a debugging message.
11712         * gst/gstthread.c: (gst_thread_change_state):
11713           Fix debugging message
11714
11715 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11716
11717         * gst/gstinfo.h:
11718           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11719         * docs/gst/tmpl/gstreamer-unused.sgml:
11720           removed all traces of cvs conflicts
11721
11722 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11723
11724         * configure.ac:
11725         * gst/schedulers/cothreads_compat.h:
11726         * libs/Makefile.am:
11727           remove last instances of wingo cothread usage
11728
11729 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11730
11731         * gst/gstplugin.c:
11732         * gst/gstversion.h.in:
11733         * gst/parse/grammar.y:
11734           change comment block from /** to /* when not gtk-doc comments
11735
11736 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11737
11738         * gst/gst.c: whitespace and doc style fixes
11739
11740 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11741
11742         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11743
11744 2003-12-24  Colin Walters  <walters@verbum.org>
11745
11746         * gst/elements/gsttypefindelement.c:
11747           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11748           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11749           Don't double-free caps.
11750
11751 2003-12-23  David Schleef  <ds@schleef.org>
11752
11753         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11754           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11755           Many little fixes and additions of debug statements to
11756           get rhythmbox working.
11757
11758 2003-12-23  Colin Walters  <walters@verbum.org>
11759
11760         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11761         Use GST_PAD_LINK_SUCCESSFUL.
11762
11763 2003-12-23  David Schleef  <ds@schleef.org>
11764
11765         * gst/elements/gstaggregator.c:
11766         * gst/elements/gsttee.c:
11767           Use gst_pad_proxy_getcaps().
11768         * gst/gstpad.c:
11769         * gst/gstpad.h:
11770           Add gst_pad_proxy_getcaps(), which filter elements can use
11771           as a generic getcaps implementation.
11772           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11773           was advertised.
11774
11775 2003-12-23  David Schleef  <ds@schleef.org>
11776
11777         * gst/gstpad.c:
11778           Rearrange/rewrite much of the pad negotiation code, since it
11779           resembled pasta.  This actually changes the way some
11780           negotiation works, since the previous code was inconsistent
11781           depending on how it was invoked.  Add (internal) structure
11782           GstPadLink, which is used to hold some information (more in
11783           the future) about the link between two pads.  Fixes a number
11784           of bugs, including random lossage of filter caps when the
11785           initial negotiation is delayed.  A few functions are still
11786           unimplemented.
11787         * gst/gstpad.h:
11788           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11789           these when testing GstPadLinkReturn values instead of comparing
11790           directly.
11791
11792 2003-12-23  David Schleef  <ds@schleef.org>
11793
11794         * gst/gstvalue.c: 
11795         * gst/gstvalue.h:
11796           Rearrange lots of code.  Change registration of compare function
11797           into registration of compare/serialize/deserialize functions.
11798           Doesn't include implementation of gst_value_[de]serialize(),
11799           but that should be easy.
11800
11801 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11802
11803         * docs/gst/gstreamer-sections.txt:
11804         * docs/gst/tmpl/gstprops.sgml: removed
11805         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11806           David removed props and caps code, so let's remove their docs as well.
11807           Removed all no longer existing symbols from gstreamer-sections.txt
11808           
11809 2003-12-22  Colin Walters  <walters@verbum.org>
11810
11811         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11812           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11813           of tags directly.
11814
11815 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11816
11817         * gst/elements/gstelements.c:
11818           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11819         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11820           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11821           gst_caps (peer).
11822
11823 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11824
11825         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11826         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11827         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11828         (gst_spider_identity_sink_loop_type_finding):
11829         * gst/autoplug/gstspideridentity.h:
11830           Fix autoplugging in spider element, so it works with new caps.
11831           This was mainly caused by identifying empty caps incorrectly.
11832
11833 2003-12-22  David Schleef  <ds@schleef.org>
11834
11835         * gststructure.c, gstvalue.c, gstvalue.h: Add
11836           gst_value_init_and_copy() and use it, to avoid silly mistakes in
11837           using g_value_copy()
11838
11839 2003-12-21  David Schleef  <ds@schleef.org>
11840
11841         * many, many files: Merge CAPS branch.  This includes:
11842           - implemention of GstValue and several GstValue types
11843           - implemention of GstStructure
11844           - entire rewrite of GstCaps
11845           - removal of GstProps
11846           - many changes to GstPad to compensate for new caps paradigm
11847           - removal of GstBufferpool
11848         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
11849         gstvalue.h, gst/gstcaps[2]*.[ch]:
11850           - rename gstcaps2.[ch] to gstcaps.[ch]
11851
11852 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11853
11854         * gst/gstqueue.c: (gst_queue_handle_pending_events),
11855         (gst_queue_chain), (gst_queue_handle_src_event):
11856           implement timeout for sending events. Workaround for if the
11857           pipeline on this queue is not passing any data.
11858
11859 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
11860                                                                                 
11861         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
11862         * moved CVS to freedesktop.org
11863