gst/gstvalue.c: Fix memleak (#309125).
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
2
3         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4
5         * gst/gstvalue.c: (gst_value_intersect_list):
6           Fix memleak (#309125).
7
8 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
9
10         * docs/manual/advanced-dataaccess.xml:
11           Fix fakesrc example to compile; doesn't work, bug somewhere...?
12         * docs/manual/basics-pads.xml:
13           Add reference for filtered caps to above chapter.
14
15 2005-06-30  Wim Taymans  <wim@fluendo.com>
16
17         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
18         (gst_bin_change_state):
19         Probes are gone.
20         Lame attempt at making the state change function a bit
21         more readable.
22
23 2005-06-30  Wim Taymans  <wim@fluendo.com>
24
25         * docs/design/part-clocks.txt:
26         * docs/design/part-element-sink.txt:
27         * docs/design/part-events.txt:
28         * docs/design/part-preroll.txt:
29         * docs/design/part-states.txt:
30         Some more tweeks and additions to the docs.
31
32 2005-06-30  Wim Taymans  <wim@fluendo.com>
33
34         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
35         (default_have_data), (gst_pad_class_init), (gst_pad_init),
36         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
37         (gst_pad_check_pull_range), (gst_pad_get_range),
38         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
39         * gst/gstpad.h:
40         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
41         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
42         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
43         (gst_pad_remove_buffer_probe):
44         Removed atomic operations, use existing LOCK.
45         Move exception handling out of main code path.
46
47 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
48
49         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
50         (silly_return_true_function), (gst_pad_class_init),
51         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
52         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
53         (gst_pad_send_event):
54           Fix accumulator, add default value by using _emitv() instead
55           of _emit() for signal emission.
56
57 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
58
59         * docs/manual/advanced-dataaccess.xml:
60         * examples/manual/Makefile.am:
61           Add probe example.
62         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
63           Make work (??).
64
65 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
66
67         * gst/elements/gstfilesink.c: (gst_filesink_render):
68           Simplify code so that we don't have to handle short
69           writes and return GST_FLOW_ERROR if an error occured.
70
71 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
72
73         * docs/gst/gstreamer-docs.sgml:
74           Remove probes more.
75
76 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
77
78         * docs/gst/gstreamer-sections.txt:
79         * docs/gst/tmpl/gstpad.sgml:
80         * docs/gst/tmpl/gstprobe.sgml:
81         * gst/Makefile.am:
82         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
83         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
84         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
85         (gst_pad_push_event), (gst_pad_send_event):
86         * gst/gstpad.h:
87         * gst/gstutils.c: (gst_pad_add_data_probe),
88         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
89         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
90         (gst_pad_remove_buffer_probe):
91         * gst/gstutils.h:
92           Remove old probes, add new g-signal-based probes and some utility
93           functions.
94
95 2005-06-29  Edward Hervey  <edward@fluendo.com>
96
97         * gst/gstelementfactory.c:
98         * gst/gstutils.h:
99         * gst/gstutils.c:
100         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
101         the definition to the header file.
102
103 2005-06-29  Andy Wingo  <wingo@pobox.com>
104
105         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
106         plugins from the source directory.
107
108 2005-06-29  Wim Taymans  <wim@fluendo.com>
109
110         * docs/gst/tmpl/gstbuffer.sgml:
111         * docs/gst/tmpl/gstclock.sgml:
112         Some fixings for blantently wrong text.
113
114 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
115
116         * check/Makefile.am:
117         * gst/gst.c: (add_path_func), (init_pre):
118         * gst/gstregistry.c: (gst_registry_add_path):
119           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
120           only scan the GST_PLUGIN_PATH locations, and not add
121           system locations
122
123 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
124
125         * docs/gst/gstreamer-sections.txt:
126         * docs/gst/tmpl/gstbasesrc.sgml:
127         * gst/gstelement.c:
128         * gst/gstelement.h:
129         * gst/gstevent.c:
130         * gst/gstutils.c:
131           doc fixes
132
133 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
134
135         * docs/manual/advanced-autoplugging.xml:
136           Fix autoplugging example.
137
138 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
139
140         * docs/manual/advanced-autoplugging.xml:
141         * docs/manual/mime-world.fig:
142           Try to get autoplugging working, fix type detection. Fix text
143           in hello-world image.
144
145 2005-06-29  Wim Taymans  <wim@fluendo.com>
146
147         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
148         (gst_base_sink_change_state):
149         Small debug line.
150
151         * gst/gstclock.h:
152         map SIGNAL and BROADCAST to the right function.
153
154         * gst/gstobject.h:
155         Remove redundant braces.
156
157         * gst/gstpad.c: (gst_pad_set_caps):
158         Don't call setcaps function when reseting caps to NULL.
159
160         * gst/gstsystemclock.c: (gst_system_clock_dispose),
161         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
162         (gst_system_clock_id_unschedule):
163         Use BROADCAST as this is what we do.
164
165 2005-06-29  Wim Taymans  <wim@fluendo.com>
166
167         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
168         We are actually prerolling before commiting the state
169         change. 
170
171 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
172
173         * docs/manual/advanced-clocks.xml:
174         * docs/manual/advanced-interfaces.xml:
175         * docs/manual/advanced-metadata.xml:
176         * docs/manual/advanced-position.xml:
177         * docs/manual/advanced-schedulers.xml:
178         * docs/manual/advanced-threads.xml:
179         * docs/manual/appendix-porting.xml:
180         * docs/manual/basics-bins.xml:
181         * docs/manual/basics-bus.xml:
182         * docs/manual/basics-elements.xml:
183         * docs/manual/basics-helloworld.xml:
184         * docs/manual/basics-pads.xml:
185         * docs/manual/highlevel-components.xml:
186         * docs/manual/manual.xml:
187         * docs/manual/thread.fig:
188           Update (until threads/scheduling) Application Development Manual;
189           remove GstThread, add GstBus, add simple porting checklist, add
190           documentation for tag writing, clocks, make all examples until this
191           part compile and run.
192         * examples/manual/Makefile.am:
193           Update from changes to Application Development Manual; add bus
194           example, remove thread example.
195
196 2005-06-28  Wim Taymans  <wim@fluendo.com>
197
198         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
199         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
200         (gst_bus_source_dispatch):
201         Add debugging messages.
202         Make internal methods static.
203         Handle the case where the bus is flushed in the handler.
204         
205         * gst/gstelement.c: (gst_element_get_bus):
206         Fix refcount in _get_bus();
207
208         * gst/gstpipeline.c: (gst_pipeline_change_state),
209         (gst_pipeline_get_clock_func):
210         Clock refcounting fixes.
211         Handle the case where preroll timed out more gracefully.
212         
213         * gst/gstsystemclock.c: (gst_system_clock_dispose):
214         Clean up the internal thread in dispose. This is needed
215         for subclasses that actually get disposed.
216         
217         * gst/schedulers/threadscheduler.c:
218         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
219         (gst_thread_scheduler_dispose):
220         Free thread pool in dispose.
221
222 2005-06-28  Andy Wingo  <wingo@pobox.com>
223
224         * tests/network-clock-utils.scm (debug, print-event): New utils.
225
226         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
227         (*packet-loss*): Unified loss probability.
228         (network-time): Report out-of-band events.
229
230         * tests/plot-data: Add support for out-of-band events. Hack it
231         into this script instead of passing it down the pipe; should fix
232         this later.
233
234 2005-06-28  Wim Taymans  <wim@fluendo.com>
235
236         * docs/gst/gstreamer.types:
237         * docs/gst/tmpl/gstbasesrc.sgml:
238         * docs/gst/tmpl/gstpad.sgml:
239         Docs fixes.
240
241 2005-06-28  Wim Taymans  <wim@fluendo.com>
242
243         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
244         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
245         (gst_proxy_pad_do_fixatecaps):
246         Correctly proxy the check_pull_range function.
247
248 2005-06-28  Andy Wingo  <wingo@pobox.com>
249
250         * tests/network-clock.scm: Removed need for slib.
251         
252 2005-06-28  Wim Taymans  <wim@fluendo.com>
253
254         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
255         (gst_basesink_preroll_queue_flush):
256         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
257         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
258         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
259         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
260         (gst_proxy_pad_set_property):
261         * gst/gstpad.c:
262         * gst/gstpad.h:
263         * gst/gstqueue.c: (gst_queue_init):
264         The deprecated pad loop function is removed now.
265
266 2005-06-28  Andy Wingo  <wingo@pobox.com>
267
268         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
269         New parameters, simulate network packet loss.
270
271         * tests/network-clock-utils.scm: Initialize the RNG.
272
273 2005-06-28  Wim Taymans  <wim@fluendo.com>
274
275         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
276         (gst_basesink_event), (gst_basesink_deactivate):
277         Flushing the preroll queue always needs to unlock the waiters.
278
279 2005-06-28  Edward Hervey  <edward@fluendo.com>
280
281         * gst/gstpipeline.c: (gst_pipeline_send_event): 
282         Wheen a seek was successful on a pipeline, set the stream_time to the
283         seek offset in order to have a synchronized stream_time.
284
285 2005-06-28  Wim Taymans  <wim@fluendo.com>
286
287         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
288         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
289         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
290         (gst_proxy_pad_do_fixatecaps):
291         Call wrapper function instead of just calling the function
292         pointers. This takes care of any locking and whatmore.
293
294 2005-06-28  Wim Taymans  <wim@fluendo.com>
295
296         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
297         (gst_pad_pull_range):
298         * gst/gstpad.h:
299         CONNECTED -> LINKED.
300
301 2005-06-28  Andy Wingo  <wingo@pobox.com>
302
303         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
304         source-munging commit!!!
305
306         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
307         (gst_object_sink): Take gpointer arguments, not GstObject --
308         avoids casts. Like GLib.
309
310         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
311         activate.
312
313 2005-06-27  Andy Wingo  <wingo@pobox.com>
314
315         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
316         remaining buffer.
317
318         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
319         returns a sorted copy of the trace list.
320         (gst_alloc_trace_print_live): New API, only prints traces with
321         live objects. Sort the list.
322         (gst_alloc_trace_print_all): Sort the list.
323         (gst_alloc_trace_print): Align columns.
324
325         * gst/elements/gstttypefindelement.c:
326         * gst/elements/gsttee.c:
327         * gst/base/gstbasesrc.c:
328         * gst/base/gstbasesink.c:
329         * gst/base/gstbasetransform.c:
330         * gst/gstqueue.c: Adapt for pad activation changes.
331
332         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
333         sched.
334         (gst_pipeline_dispose): Drop ref on sched.
335
336         * gst/gstpad.c (gst_pad_init): Set the default activate func.
337         (gst_pad_activate_default): Push mode by default.
338         (pre_activate_switch, post_activate_switch): New stubs, things to
339         do before and after switching activation modes on pads.
340         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
341         the pad's activate function to choose which mode to activate.
342         Shortcut on deactivation and call the right function directly.
343         (gst_pad_activate_pull): New API, (de)activates a pad in pull
344         mode.
345         (gst_pad_activate_push): New API, same for push mode.
346         (gst_pad_set_activate_function) 
347         (gst_pad_set_activatepull_function) 
348         (gst_pad_set_activatepush_function): Setters for new API.
349
350         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
351         Trace all miniobjects.
352         (gst_mini_object_make_writable): Unref the arg if we copy, like
353         gst_caps_make_writable.
354
355         * gst/gstmessage.c (_gst_message_initialize): No trace init.
356
357         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
358         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
359         Adapt for new pad API.
360
361         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
362
363         * gst/gstelement.h:
364         * gst/gstelement.c (gst_element_iterate_src_pads) 
365         (gst_element_iterate_sink_pads): New API functions.
366         
367         * gst/gstelement.c (iterator_fold_with_resync): New utility,
368         should fold into gstiterator.c in some form.
369         (gst_element_pads_activate): Simplified via use of fold and
370         delegation of decisions to gstpad->activate.
371
372         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
373         help in debugging.
374
375         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
376         class once in init, like gstmessage. Didn't run into this issue
377         but it seems correct. Don't initialize a trace, gstminiobject does
378         that.
379
380         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
381         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
382         to the bus.
383         (assert_live_count): New util function, uses alloc traces to check
384         cleanup.
385
386         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
387         To be modified when unlink drops the internal pad.
388
389 2005-06-27  Wim Taymans  <wim@fluendo.com>
390
391         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
392         (gst_bin_change_state):
393         Cleanup the get_state() function a little, make sure it
394         iterates the same set of elements.
395         Added stub iterate_state_order().
396
397 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
398
399         * docs/gst/gstreamer-docs.sgml:
400         * docs/gst/gstreamer-sections.txt:
401         * docs/gst/gstreamer.types:
402         * docs/gst/tmpl/gstbasesink.sgml:
403         * docs/gst/tmpl/gstbasesrc.sgml:
404         * docs/gst/tmpl/gstbasetransform.sgml:
405         * docs/gst/tmpl/gstelement.sgml:
406         * docs/gst/tmpl/gstiterator.sgml:
407         * gst/base/gstbasesrc.c:
408         * gst/base/gstbasesrc.h:
409         * gst/base/gstbasetransform.h:
410         * gst/gstelement.c:
411         * gst/gstiterator.h:
412           adding basetransform and iterator docs
413
414 2005-06-27  Andy Wingo  <wingo@pobox.com>
415
416         * docs/design/part-activation.txt: Notes on how activation should
417         work -- not quite implemented yet.
418
419 2005-06-25  Wim Taymans  <wim@fluendo.com>
420
421         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
422         At least get the chain function correct, needs more
423         fixing.
424
425 2005-06-25  Wim Taymans  <wim@fluendo.com>
426
427         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
428         (gst_basesink_handle_object), (gst_basesink_event),
429         (gst_basesink_do_sync), (gst_basesink_handle_event),
430         (gst_basesink_change_state):
431         * gst/gsttask.h:
432         Right, two problems here: ghostpads don't take locks and
433         glib _rec_mutex_lock_full() with depth==0 still locks.
434         Catch illegal locking and g_warn them.
435
436 2005-06-25  Wim Taymans  <wim@fluendo.com>
437
438         * check/states/sinks.c: (START_TEST), (gst_object_suite):
439         Have to check for completion now...
440
441 2005-06-25  Wim Taymans  <wim@fluendo.com>
442
443         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
444         (gst_basesink_handle_object), (gst_basesink_event),
445         (gst_basesink_do_sync), (gst_basesink_handle_event),
446         (gst_basesink_change_state):
447         * gst/gstpad.h:
448         Unlock STREAM_LOCK whatever the recursion was.
449
450 2005-06-25  Wim Taymans  <wim@fluendo.com>
451
452         * gst/base/gstbasesink.c: (gst_basesink_set_property),
453         (gst_basesink_preroll_queue_empty),
454         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
455         (gst_basesink_event), (gst_basesink_do_sync),
456         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
457         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
458         (gst_basesink_change_state):
459         Reworked the base sink, handle event and buffer serialisation
460         correctly and removed possible deadlock.
461         Handle EOS correctly.
462
463 2005-06-25  Wim Taymans  <wim@fluendo.com>
464
465         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
466         (gst_pipeline_change_state):
467         * tools/gst-launch.c: (check_intr), (event_loop), (main):
468         Allow elements to post EOS in the state change function.
469         Fix up -launch, make it exit the poll loop when the
470         pipeline actually changed state.
471         Fix up warning parsing in -launch.
472
473 2005-06-25  Wim Taymans  <wim@fluendo.com>
474
475         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
476         (gst_tee_sink_activate):
477         Core takes STREAM_LOCK for us now.
478
479 2005-06-25  Wim Taymans  <wim@fluendo.com>
480
481         * gst/gstelement.c: (gst_element_get_state_func),
482         (gst_element_set_state):
483         * gst/gstelement.h:
484         * gst/gstmessage.c: (gst_message_parse_error),
485         (gst_message_parse_warning):
486         Keep track of current target state while performing a state
487         change so that subclasses can do something interesting.
488         Fix parsing of warning/error messages when GError is NULL.
489
490 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
491
492         * docs/gst/Makefile.am:
493         * docs/gst/gstreamer-docs.sgml:
494         * docs/gst/gstreamer-sections.txt:
495         * docs/gst/gstreamer.types:
496         * docs/gst/tmpl/gstbasesink.sgml:
497         * docs/gst/tmpl/gstbasesrc.sgml:
498         * docs/gst/tmpl/gstbin.sgml:
499         * docs/gst/tmpl/gstcompat.sgml:
500         * docs/gst/tmpl/gstfakesink.sgml:
501         * docs/gst/tmpl/gstfakesrc.sgml:
502         * docs/gst/tmpl/gstfilesink.sgml:
503         * docs/gst/tmpl/gstfilesrc.sgml:
504         * docs/gst/tmpl/gstindex.sgml:
505         * docs/manual/appendix-quotes.xml:
506         * gst/base/gstbasesrc.h:
507         * gst/elements/gstfakesrc.h:
508         * gst/gstmessage.h:
509           start pulling in base classes and elements in our docs
510
511 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
512
513         * docs/gst/Makefile.am:
514         * docs/libs/Makefile.am:
515           fixed make distcheck with gtk-doc 1.3
516
517 2005-06-23  Wim Taymans  <wim@fluendo.com>
518
519         * gst/gstelement.c: (gst_element_get_state_func),
520         (gst_element_set_state), (gst_element_change_state):
521         When the state did not change, also report NO_PREROLL
522         when it matters.
523
524 2005-06-23  Wim Taymans  <wim@fluendo.com>
525
526         * gst/gstpad.c: (gst_pad_event_default):
527         * gst/gstqueue.c: (gst_queue_loop):
528         No unsafe task pausing please.
529
530 2005-06-23  Wim Taymans  <wim@fluendo.com>
531
532         * gst/schedulers/threadscheduler.c:
533         (gst_thread_scheduler_task_start),
534         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
535         Ref the task before pushing it on the threadpool. This
536         makes sure that we have a ref when the threadfunction is
537         actually called.
538
539 2005-06-23  Andy Wingo  <wingo@pobox.com>
540
541         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
542         offset is greater than the file's size.
543
544         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
545         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
546         * gst/gstobject.c (gst_object_class_init): Make the class lock
547         recursive. Wim won't let me drop deep_notify. Decodebin works
548         again, whoopdy doo.
549
550         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
551         internal pad, and hacks accordingly. Doesn't do it on the target
552         pad because we change its caps. Probably catches all cases of
553         interest tho.
554         (gst_ghost_pad_set_property): Connect to notify::caps as
555         appropritate.
556
557         * tests/network-clock.scm (plot-simulation): Pipe data to the
558         elite python skript.
559
560         * tests/network-clock-utils.scm (define-parameter): New macro,
561         defines a parameter that can be set via the command line.
562         (set-parameter!, parse-parameter-arguments): Command line args
563         parser.
564
565         * tests/plot-data: Simple matplotlib-based plotter, takes input on
566         stdin.
567
568 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
569
570         * gst/elements/gsttypefindelement.c:
571         (gst_type_find_element_handle_event):
572           Don't restart typefinding on a discont.
573         * gst/gstelement.c: (gst_element_set_state):
574           Debug spelling fix.
575         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
576           Allow changing mode of an active pad.
577           Debug output fixes.
578         * gst/registries/gstlibxmlregistry.c: (load_feature):
579           Don't cast a static pad template to a normal pad template.
580
581 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
582
583         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
584         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
585           remove gst_strtoll completely, since it didn't actually do
586           anything more than what g_ascii_strtoull already does.
587           check for range errors when deserializing
588           do a cast for the unsigned cases; but further fixing needs
589           a decision on what the interpretation of "(int)" and
590           deserialization should be for values that fall outside the
591           type's boundaries (ie, refuse, or interpret as casting)
592
593 2005-06-23  Wim Taymans  <wim@fluendo.com>
594
595         * check/Makefile.am:
596         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
597         * docs/design/part-live-source.txt:
598         * docs/design/part-states.txt:
599         * gst/base/gstbasesrc.c: (gst_basesrc_init),
600         (gst_basesrc_set_live), (gst_basesrc_is_live),
601         (gst_basesrc_get_range), (gst_basesrc_activate),
602         (gst_basesrc_change_state):
603         * gst/base/gstbasesrc.h:
604         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
605         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
606         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
607         * gst/gstelement.c: (gst_element_get_state_func),
608         (gst_element_set_state):
609         * gst/gstelement.h:
610         * gst/gsttypes.h:
611         * tools/gst-launch.c: (event_loop), (main):
612         Added support for live sources and other elements that
613         cannot do preroll.
614         Updated design docs, added live-source design doc.
615         Implemented live source functionality in basesrc
616         Fix error condition in _bin_get_state()
617         Implement live source handling in -launch.
618         Added check for live sources.
619         Fixed case in GstBin where elements were changed state
620         multiple times.
621
622
623 2005-06-23  Andy Wingo  <wingo@pobox.com>
624
625         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
626         borken refcounting.
627
628         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
629         gst_caps_replace takes care of this for us.
630
631         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
632         gst_pad_set_caps on the target, not just its setcaps() function.
633
634         * tests/network-clock.scm: 
635         * tests/network-clock-utils.scm: A network clock simulator.
636         Something of an algorithmic testbed before doing something in C.
637
638 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
639
640         * check/Makefile.am:
641         * check/gst/capslist.h:
642           copy over from 0.8, and add two with bitmasks specified with
643           (int) 0xFF...
644         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
645           add test to parse everything from capslist.h
646         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
647         (main):
648           add test for structure deserialization
649         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
650           add tests for deserialization of strings to int types
651         * gst/gststructure.c: (gst_structure_nth_field_name):
652         * gst/gststructure.h:
653           add a way to get the name of a field referenced by index
654         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
655           instead of checking if the resulting long long lies between
656           min and max, we check if the long long would fit into
657           a number of bytes for the final type.
658           This fixes cases where a string represents 2^32 - 1, which
659           when cast to int would be the (valid) -1, but is bigger than
660           G_MAXINT
661
662 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
663
664         * gst/parse/grammar.y:
665           add a log line for type deserialization
666
667 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
668
669         * check/gst/gstvalue.c: (START_TEST):
670         * gst/gstvalue.c: (gst_value_deserialize):
671           return long long, not int, so gint64 deserialization actually
672           works.  Is there any flag that makes the compiler check this ?
673           Fixes #308559
674
675 2005-06-22  Wim Taymans  <wim@fluendo.com>
676
677         * gst/gstbuffer.h:
678         Added convenience macros for setting buffers in GValue.
679
680 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
681
682         * check/gst/.cvsignore:
683         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
684           add a test deserializing int64, and comment part out because
685           it fails, yay !
686
687 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
688
689         * check/Makefile.am:
690         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
691         * testsuite/Makefile.am:
692         * testsuite/caps/Makefile.am:
693         * testsuite/caps/value_serialize.c:
694         * testsuite/test_gst_init.c:
695           move a value_serialize test over
696
697 2005-06-20  Wim Taymans  <wim@fluendo.com>
698
699         * gst/gstpad.c:
700         Small doc updates.
701         
702         * gst/gstvalue.c: (gst_value_compare_buffer),
703         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
704         (gst_value_compare_flags), (gst_value_serialize_flags),
705         (gst_value_deserialize_flags), (_gst_value_initialize):
706         Fix serialisation of buffers, they are not boxed types anymore
707
708 2005-06-20  Wim Taymans  <wim@fluendo.com>
709
710         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
711         Testcase to show error in buffer-on-caps serialisation.
712
713 2005-06-20  Andy Wingo  <wingo@pobox.com>
714
715         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
716         will be adding to later.
717
718         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
719         if its socks fill with rocks.
720         (gst_system_clock_obtain): Set the name on object construction.
721         Avoid double-checked locking.
722
723 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
724
725         * gst/gsturi.c: (gst_element_make_from_uri):
726           Fix potential endless loop.
727
728 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
729
730         * check/Makefile.am:
731           add gsttag
732         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
733         (main):
734           move over from testsuite dir and clean up
735         * configure.ac:
736         * gst/gsttag.c:
737         * testsuite/Makefile.am:
738         * testsuite/tags/.cvsignore:
739         * testsuite/tags/Makefile.am:
740         * testsuite/tags/merge.c:
741           remove testsuite/tags
742
743 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
744
745         * docs/gst/gstreamer-sections.txt:
746         * docs/gst/tmpl/gstenumtypes.sgml:
747         * win32/gstenumtypes.c:
748           clean up documentation build a little
749
750 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
751
752         * check/gstcheck.h:
753           add macros for checking refcounts on objects and caps
754         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
755           add some more unit tests
756         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
757         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
758           fix leaked refcounts (I hope :)) so unittest works
759         * gst/gstpad.h:
760           whitespace removal
761
762 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
763
764         * configure.ac: back to HEAD
765
766 === release 0.9.1 ===
767
768 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
769
770         * NEWS:
771         * RELEASE:
772           updated
773
774 2005-06-17  Andy Wingo  <wingo@pobox.com>
775
776         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
777         assert; it's always possible that the pad gets deactivated in
778         between the checks in gstpad.c and the implementation. Rely on
779         finish_preroll() to return a FLUSHING or similar instead of on the
780         assert.
781         
782         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
783         clock and post an EOS message if we come out of finish_preroll in
784         the playing state.
785
786 2005-06-16  David Schleef  <ds@schleef.org>
787
788         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
789         (gst_capsfilter_set_property): Allow NULL as possible value
790         for filter_caps property, indicating GST_CAPS_ANY.
791
792 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
793
794         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
795           fix debug output
796         * gst/schedulers/Makefile.am:
797           use libgst prefix
798         * gstreamer.spec.in:
799           fix spec for it
800
801 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
802
803         * gstreamer.spec.in:
804           clean up
805
806 2005-06-08  Andy Wingo  <wingo@pobox.com>
807
808         * gst/gstutils.c: RPAD fixes all around.
809         (gst_element_link_pads): Refcounting fixes.
810
811         * tools/gst-inspect.c:
812         * tools/gst-xmlinspect.c:
813         * parse/grammar.y:
814         * gst/base/gsttypefindhelper.c:
815         * gst/base/gstbasesink.c:
816         * gst/gstqueue.c: RPAD fixes.
817
818         * gst/gstghostpad.h:
819         * gst/gstghostpad.c: New ghost pad implementation as full proxy
820         pads. The tricky thing is they provide both source and sink
821         interfaces, since they proxy the internal pad for the external
822         pad, and vice versa. Implement with lower-level ProxyPad objects,
823         with the interior proxy pad as a child of the exterior ghost pad.
824         Should write a doc on this.
825         
826         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
827         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
828         gst_object API.
829         
830         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
831         pads are real pads. No ghost pads in this file. Not documenting
832         the myriad s/RPAD/PAD/ and REALIZE fixes.
833         (gst_pad_class_init): Add properties for "direction" and
834         "template". Both are construct-only, so they can't change during
835         the life of the pad. Fixes properly deriving from GstPad.
836         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
837         derived objects, just set properties when creating the objects via
838         g_object_new.
839         (gst_pad_get_parent): Implement as a function, return NULL if the
840         parent is not an element.
841         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
842         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
843         
844         * gst/gstobject.c (gst_object_class_init): Make name a construct
845         property. Don't set it in the object init.
846
847         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
848         with UNKNOWN direction.
849         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
850         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
851         (gst_element_remove_pad): Remove ghost-pad special cases.
852         (gst_element_pads_activate): Remove rpad cruft.
853
854         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
855         catch the pad's-parent-not-an-element case.
856
857         * gst/gst.h: Include gstghostpad.h.
858
859         * gst/gst.c (init_post): No more real, ghost pads.
860
861         * gst/Makefile.am: Add gstghostpad.[ch].
862
863         * check/Makefile.am:
864         * check/gst/gstbin.c:
865         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
866         into a bin creates ghost pads, and that the refcounts are right.
867         Partly moved from gstbin.c.
868
869 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
870
871         * check/gst-libs/.cvsignore:
872         * check/gst/.cvsignore:
873         * check/pipelines/.cvsignore:
874           ignore more
875         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
876         (START_TEST), (cleanup_suite), (main):
877           add some tests related to cleanup after running pipelines
878
879 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
880
881         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
882           add a testsuite for GstBuffer
883
884 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
885
886         * gst/gstminiobject.h:
887           add defines for accessing the refcount
888
889 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
890
891         * Makefile.am: added support for html unit test coverage reports
892
893 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
894
895         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
896           Free existing caps if the capsfilter changes. Add a FIXME about
897           setting those caps on the pads.
898
899         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
900           Before adding a ghost pad to a parent bin, check that there isn't
901           already one for the element on the bin. Prevents infinite recursion
902           when using decodebin in parse pipelines. Andy says he'll rewrite the
903           way this works anyway, so ignore the hack.
904
905 2005-06-02  Andy Wingo  <wingo@pobox.com>
906
907         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
908         file size, pass it on to the type find helper.
909
910         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
911         segment_start and segment_end properly according to the seek
912         method. Segment_end is still a bit flaky because offset can be
913         negative for CUR and END cases, but it takes -1 as an "unset"
914         value.
915
916 2005-06-02  Wim Taymans  <wim@fluendo.com>
917
918         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
919         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
920         (gst_basesink_activate):
921         * gst/base/gstbasesink.h:
922         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
923         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
924         (gst_pad_query), (gst_pad_start_task):
925         * gst/gstpad.h:
926         * gst/gstqueue.c: (gst_queue_bufferalloc),
927         (gst_queue_handle_sink_event), (gst_queue_chain):
928         Bufferalloc: return GstFlowReturn to more accuratly report
929         why allocation failed.
930
931 2005-06-02  Wim Taymans  <wim@fluendo.com>
932
933         * gst/gstpipeline.c: (gst_pipeline_send_event):
934         Take snapshot of state without blocking.
935
936 2005-06-02  Wim Taymans  <wim@fluendo.com>
937
938         * docs/design/part-TODO.txt:
939         * docs/design/part-caps.txt:
940         * docs/design/part-clocks.txt:
941         * docs/design/part-negotiation.txt:
942         * docs/design/part-preroll.txt:
943         Small doc updates 
944
945 2005-05-30  Wim Taymans  <wim@fluendo.com>
946
947         * gst/elements/gstidentity.c: (gst_identity_event),
948         (gst_identity_transform), (gst_identity_get_property):
949         Protect last_message property as it is accessed from
950         multiple threads.
951
952 2005-05-30  Wim Taymans  <wim@fluendo.com>
953
954         * gst/gstelement.c: (gst_element_init),
955         (gst_element_pads_activate), (gst_element_change_state):
956         Slicker pad activation code.
957
958 2005-05-30  Wim Taymans  <wim@fluendo.com>
959
960         * gst/Makefile.am:
961         * gst/gstelement.h:
962         * gst/gstelementfactory.h:
963         * gst/gsttypes.h:
964         Move elementfactory methods to separate .h file.
965
966 2005-05-30  Wim Taymans  <wim@fluendo.com>
967
968         * docs/design/part-overview.txt:
969         * gst/gstsystemclock.h:
970         Small typo fixes, doc updates.
971
972 2005-05-30  Wim Taymans  <wim@fluendo.com>
973
974         * gst/gst.c: (gst_init_get_popt_table), (init_post),
975         (init_popt_callback):
976         Remove cpu-opt flag.
977
978 2005-05-30  Wim Taymans  <wim@fluendo.com>
979
980         * gst/gstbuffer.c: (gst_subbuffer_finalize),
981         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
982         * gst/gstbuffer.h:
983         Avoid typechecking in places where not needed.
984         Added accessor for malloc_data.
985
986 2005-05-30  Wim Taymans  <wim@fluendo.com>
987
988         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
989         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
990         (gst_pad_configure_sink), (gst_pad_configure_src),
991         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
992         (gst_pad_start_task):
993         Propagate errors from _set_caps() in configure_src/sink
994         functions instead of returning TRUE.
995         FLUSH events can travel up and downstream
996
997
998 2005-05-30  Wim Taymans  <wim@fluendo.com>
999
1000         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1001         (gst_basesink_activate):
1002         Handle EOS in preroll.
1003
1004 2005-05-30  Wim Taymans  <wim@fluendo.com>
1005
1006         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1007         (gst_queue_loop), (gst_queue_handle_src_event):
1008         Remove old pieces of code
1009         Flushing the queue in an upstream event is a very bad idea.
1010
1011 2005-05-26  Andy Wingo  <wingo@pobox.com>
1012
1013         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
1014         gst_value_set_mini_object so as to add a ref on the object (which
1015         will be removed when the value is unset).
1016
1017         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
1018         arg type in ::handoff.
1019
1020         * gst/gstelement.c (gst_element_change_state): Also deactivate
1021         pads in READY->NULL, just in case the element didn't make it to
1022         PAUSED. Wingo tested, Wim approved.
1023
1024 2005-05-26  Wim Taymans  <wim@fluendo.com>
1025
1026         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1027         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1028         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
1029         A flushing pad cannot be used to alloc_buffer from.
1030
1031 2005-05-26  Wim Taymans  <wim@fluendo.com>
1032
1033         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1034         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1035         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1036         (gst_bus_create_watch), (gst_bus_add_watch_full):
1037         * gst/gstbus.h:
1038         Implement a real GSource and use g_main_context_wakeup() to
1039         signal new messages instead of the socketpair.
1040
1041 2005-05-25  Wim Taymans  <wim@fluendo.com>
1042
1043         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1044         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1045         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1046         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1047         (gst_pad_send_event), (gst_pad_start_task):
1048         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1049         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1050         (gst_queue_sink_activate), (gst_queue_src_activate),
1051         (gst_queue_change_state):
1052         * gst/gstqueue.h:
1053         Fix state changes for non sinks. We now change sinks, then elements
1054         with unconnected srcpads, then the rest.
1055         More efficient queue unlocking in flush and state changes.
1056         Set the pad activate mode even if it does not have an activate
1057         function.
1058
1059 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1060
1061         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1062           Don't go in pull mode for non-seekable sources.
1063         * gst/elements/gsttypefindelement.h:
1064         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1065         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1066         (free_entry), (stop_typefinding),
1067         (gst_type_find_element_handle_event), (find_peek),
1068         (gst_type_find_element_chain), (do_pull_typefind),
1069         (gst_type_find_element_change_state):
1070           Allow typefinding (w/o seeking) in push-mode, simplified version
1071           of what was in 0.8.
1072         * gst/gstutils.c: (gst_buffer_join):
1073         * gst/gstutils.h:
1074           gst_buffer_join() from 0.8.
1075
1076 2005-05-25  Wim Taymans  <wim@fluendo.com>
1077
1078         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1079         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1080         (gst_pad_send_event), (gst_pad_start_task):
1081         Disable attempt at mode switching until it is figured out.
1082
1083 2005-05-25  Wim Taymans  <wim@fluendo.com>
1084
1085         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1086         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1087         (gst_basesink_finish_preroll), (gst_basesink_chain),
1088         (gst_basesink_loop), (gst_basesink_activate),
1089         (gst_basesink_change_state):
1090         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1091         (gst_basesrc_get_range), (gst_basesrc_loop),
1092         (gst_basesrc_activate):
1093         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1094         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1095         (gst_real_pad_init), (gst_real_pad_set_property),
1096         (gst_real_pad_get_property), (gst_pad_set_active),
1097         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1098         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1099         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1100         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1101         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1102         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
1103         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
1104         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1105         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
1106         (gst_pad_stop_task):
1107         * gst/gstpad.h:
1108         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1109         (gst_queue_loop), (gst_queue_src_activate):
1110         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
1111         (gst_task_get_state):
1112         * gst/gsttask.h:
1113         * gst/schedulers/threadscheduler.c:
1114         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
1115         Implement gst_pad_pause/start/stop_task(), take STREAM lock
1116         in task function.
1117         Remove ACTIVE pad flag, use FLUSHING everywhere
1118         Added _pad_chain(), _pad_get_range() to call chain/getrange 
1119         functions.
1120         Add locks around IS_FLUSHING when reading.
1121         Take STREAM lock in chain(), get_range() functions so plugins
1122         don't need to take it anymore.
1123         
1124
1125
1126 2005-05-25  Wim Taymans  <wim@fluendo.com>
1127
1128         * tools/gst-launch.c: (event_loop):
1129         Unref message after using its contents instead of
1130         before.
1131
1132 2005-05-24  Wim Taymans  <wim@fluendo.com>
1133
1134         * docs/design/draft-ghostpads.txt:
1135         * docs/design/draft-push-pull.txt:
1136         * docs/design/draft-query.txt:
1137         * docs/design/part-overview.txt:
1138         Docs updates, added general overview doc.
1139
1140 2005-05-21  David Schleef  <ds@schleef.org>
1141
1142         * docs/gst/tmpl/old/GstBin.sgml:
1143         * docs/gst/tmpl/old/GstBuffer.sgml:
1144         * docs/gst/tmpl/old/GstCaps.sgml:
1145         * docs/gst/tmpl/old/GstClock.sgml:
1146         * docs/gst/tmpl/old/GstCompat.sgml:
1147         * docs/gst/tmpl/old/GstData.sgml:
1148         * docs/gst/tmpl/old/GstElement.sgml:
1149         * docs/gst/tmpl/old/GstEvent.sgml:
1150         * docs/gst/tmpl/old/GstIndex.sgml:
1151         * docs/gst/tmpl/old/GstStructure.sgml:
1152         * docs/gst/tmpl/old/GstTag.sgml:
1153         * docs/gst/tmpl/old/cothreads.sgml:
1154         * docs/gst/tmpl/old/cothreads_compat.sgml:
1155         * docs/gst/tmpl/old/gettext.sgml:
1156         * docs/gst/tmpl/old/gobject2gtk.sgml:
1157         * docs/gst/tmpl/old/grammar.tab.sgml:
1158         * docs/gst/tmpl/old/gst-i18n-app.sgml:
1159         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
1160         * docs/gst/tmpl/old/gst_private.sgml:
1161         * docs/gst/tmpl/old/gstaggregator.sgml:
1162         * docs/gst/tmpl/old/gstarch.sgml:
1163         * docs/gst/tmpl/old/gstatomic_impl.sgml:
1164         * docs/gst/tmpl/old/gstbufferstore.sgml:
1165         * docs/gst/tmpl/old/gstdata_private.sgml:
1166         * docs/gst/tmpl/old/gstdisksink.sgml:
1167         * docs/gst/tmpl/old/gstdisksrc.sgml:
1168         * docs/gst/tmpl/old/gstelementfactory.sgml:
1169         * docs/gst/tmpl/old/gstextratypes.sgml:
1170         * docs/gst/tmpl/old/gstfakesink.sgml:
1171         * docs/gst/tmpl/old/gstfakesrc.sgml:
1172         * docs/gst/tmpl/old/gstfdsink.sgml:
1173         * docs/gst/tmpl/old/gstfdsrc.sgml:
1174         * docs/gst/tmpl/old/gstfilesink.sgml:
1175         * docs/gst/tmpl/old/gstfilesrc.sgml:
1176         * docs/gst/tmpl/old/gsthttpsrc.sgml:
1177         * docs/gst/tmpl/old/gstidentity.sgml:
1178         * docs/gst/tmpl/old/gstindexfactory.sgml:
1179         * docs/gst/tmpl/old/gstmarshal.sgml:
1180         * docs/gst/tmpl/old/gstmd5sink.sgml:
1181         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
1182         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
1183         * docs/gst/tmpl/old/gstpadtemplate.sgml:
1184         * docs/gst/tmpl/old/gstpipefilter.sgml:
1185         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
1186         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
1187         * docs/gst/tmpl/old/gstshaper.sgml:
1188         * docs/gst/tmpl/old/gstspider.sgml:
1189         * docs/gst/tmpl/old/gstspideridentity.sgml:
1190         * docs/gst/tmpl/old/gststatistics.sgml:
1191         * docs/gst/tmpl/old/gsttee.sgml:
1192         * docs/gst/tmpl/old/gsttimecache.sgml:
1193         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
1194         * docs/gst/tmpl/old/gstxmlregistry.sgml:
1195         * docs/gst/tmpl/old/gthread-cothreads.sgml:
1196         * docs/gst/tmpl/old/types.sgml:
1197           I didn't intend to add these or check them in.
1198
1199 2005-05-19  David Schleef  <ds@schleef.org>
1200
1201         * configure.ac: Use -no-common everywhere.  In a sane world, it
1202           would be the default in libtool, because without it, you can't
1203           build DLLs on Windows.
1204         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
1205         * docs/gst/gstreamer-sections.txt:
1206         * docs/gst/tmpl/gstcpu.sgml:
1207         * docs/gst/tmpl/gstdata.sgml:
1208         * docs/gst/tmpl/gstthread.sgml:
1209
1210 2005-05-19  David Schleef  <ds@schleef.org>
1211
1212         * gst/gstminiobject.c: (gst_value_set_mini_object),
1213         (gst_value_take_mini_object), (gst_value_get_mini_object):
1214         * gst/gstminiobject.h: Add GValue set/get functions.
1215
1216 2005-05-19  Wim Taymans  <wim@fluendo.com>
1217
1218         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
1219         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
1220         (gst_subbuffer_init), (gst_buffer_is_span_fast):
1221         * gst/gstbuffer.h:
1222         * gst/gstbus.c: (gst_bus_post):
1223         * gst/gstelement.c: (gst_element_get_random_pad):
1224         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
1225         Make subbufer unref the parent in finalize.
1226         some more debugging info.
1227
1228
1229 2005-05-19  Wim Taymans  <wim@fluendo.com>
1230
1231         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1232         (gst_basesink_init), (gst_basesink_finalize),
1233         (gst_basesink_activate), (gst_basesink_change_state):
1234         Don't free preroll queue too early.
1235
1236 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1237
1238         * gst/Makefile.am:
1239         * gst/ROADMAP:
1240           Hi, I'm outdated. Please shoot me.
1241
1242 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1243
1244         * gst/gstpipeline.c: (gst_pipeline_send_event):
1245           Do not access variables after they have been deleted.
1246
1247 2005-05-19  Wim Taymans  <wim@fluendo.com>
1248
1249         * tools/gst-inspect.c: (print_plugin_features):
1250         A plugin feature does unfortunatly not use the
1251         object name yet...
1252
1253 2005-05-18  Wim Taymans  <wim@fluendo.com>
1254
1255         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
1256         Port _span() functions to new subbuffers.
1257
1258 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1259
1260         * gst/gstbin.c: (gst_bin_add_func):
1261           Fix clock settery in bins when adding kids after the clock has
1262           been selected.
1263
1264 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1265
1266         * gst/elements/gstidentity.c: (gst_identity_class_init):
1267           Workaround until signals support GstMiniObject.
1268
1269 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1270
1271         * gst/gstbuffer.c:
1272         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
1273
1274 2005-05-18  Wim Taymans  <wim@fluendo.com>
1275
1276         * gst/base/Makefile.am:
1277         * gst/base/gstadapter.c: (gst_adapter_base_init),
1278         (gst_adapter_class_init), (gst_adapter_init),
1279         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1280         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1281         (gst_adapter_flush), (gst_adapter_available),
1282         (gst_adapter_available_fast):
1283         * gst/base/gstadapter.h:
1284         Ported and added adapter to the base classes.
1285
1286 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1287
1288         * gst/gst.c:
1289         * gst/gstmessage.c:
1290           Make sure the class is reffed/unreffed once before threads can be
1291           used.  Fixes #304551.
1292
1293 2005-05-17  Wim Taymans  <wim@fluendo.com>
1294
1295         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1296         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1297         * gst/gstminiobject.c: (gst_mini_object_get_type),
1298         (gst_mini_object_free):
1299         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1300         (gst_pad_push), (gst_pad_push_event):
1301         * gst/gstqueue.c: (gst_queue_change_state):
1302         Don't queue buffers in basesink when we are flushing.
1303         Unref buffer when flushing in basesink.
1304         Flush queue when going to READY
1305         Unref buffer when _push() returns an error.
1306         Don't free MiniObject instance when refcount is incremented
1307         in _finalize() so that we can recover objects.
1308
1309 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1310
1311         * docs/manual/advanced-schedulers.xml:
1312         * docs/manual/appendix-checklist.xml:
1313         * docs/pwg/advanced-clock.xml:
1314         * docs/pwg/advanced-interfaces.xml:
1315         * docs/pwg/advanced-request.xml:
1316         * docs/pwg/advanced-types.xml:
1317         * docs/pwg/intro-preface.xml:
1318         * examples/plugins/example.c: (gst_example_get_type),
1319         (gst_example_class_init), (gst_example_chain),
1320         (gst_example_set_property), (gst_example_get_property),
1321         (gst_example_change_state), (plugin_init):
1322         * examples/plugins/example.h:
1323           small doc fixes
1324
1325 2005-05-17  Wim Taymans  <wim@fluendo.com>
1326
1327         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1328         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1329         * gst/gstqueue.c: (gst_queue_change_state):
1330         Clear queue when going to READY.
1331         Remove IN_SETCAPS flag too.
1332
1333 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1334
1335         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1336           Remove implicit cast from gboolean to GstElementStateReturn;
1337           make sure we still return failure in paused => ready case if
1338           the parent class fails to change state and our own stop 
1339           vfunc succeeds.
1340
1341 2005-05-17  Wim Taymans  <wim@fluendo.com>
1342
1343         * tools/gst-launch.c: (event_loop):
1344         Message was unreffed too soon.
1345
1346 2005-05-16  Andy Wingo  <wingo@pobox.com>
1347
1348         * gst/gstbin.c (sink_iterator_filter): Err... um...
1349
1350         * check/gst/gstbin.c (test_ghost_pads): New test for the
1351         ghosting-if-elements-not-in-same-bin behavior.
1352
1353 2005-05-16  David Schleef  <ds@schleef.org>
1354
1355         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1356         accessing refcount directly.
1357
1358 2005-05-15  David Schleef  <ds@schleef.org>
1359
1360         * check/Makefile.am: remove GstData checks
1361         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1362         * gst/Makefile.am: add miniobject, remove data
1363         * gst/gst.h: add miniobject, remove data
1364         * gst/gstdata.c: remove
1365         * gst/gstdata.h: remove
1366         * gst/gstdata_private.h: remove
1367         * gst/gsttypes.h: remove GstEvent and GstMessage
1368         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1369         * gst/gstmarshal.list: change BOXED -> OBJECT
1370
1371         Implement GstMiniObject.
1372         * gst/gstminiobject.c:
1373         * gst/gstminiobject.h:
1374
1375         Modify to be subclasses of GstMiniObject.
1376         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1377         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1378         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1379         (gst_subbuffer_get_type), (gst_subbuffer_init),
1380         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1381         (gst_buffer_span):
1382         * gst/gstbuffer.h:
1383         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1384         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1385         (_gst_event_copy), (gst_event_new):
1386         * gst/gstevent.h:
1387         * gst/gstmessage.c: (_gst_message_initialize),
1388         (gst_message_get_type), (gst_message_class_init),
1389         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1390         (gst_message_new), (gst_message_new_error),
1391         (gst_message_new_warning), (gst_message_new_tag),
1392         (gst_message_new_state_changed), (gst_message_new_application):
1393         * gst/gstmessage.h:
1394         * gst/gstprobe.c: (gst_probe_perform),
1395         (gst_probe_dispatcher_dispatch):
1396         * gst/gstprobe.h:
1397         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1398         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1399         (_gst_query_copy), (gst_query_new):
1400
1401         Update elements for GstData -> GstMiniObject changes
1402         * gst/gstquery.h:
1403         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1404         (gst_queue_chain), (gst_queue_loop):
1405         * gst/elements/gstbufferstore.c:
1406         (gst_buffer_store_add_buffer_func),
1407         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1408         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1409         (gst_fakesink_render):
1410         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1411         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1412         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1413         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1414         (gst_filesrc_create_read):
1415         * gst/elements/gstidentity.c: (gst_identity_class_init):
1416         * gst/elements/gsttypefindelement.c:
1417         (gst_type_find_element_src_event), (free_entry_buffers),
1418         (gst_type_find_element_handle_event):
1419         * libs/gst/dataprotocol/dataprotocol.c:
1420         (gst_dp_header_from_buffer):
1421         * libs/gst/dataprotocol/dataprotocol.h:
1422         * libs/gst/dataprotocol/dp-private.h:
1423
1424 2005-05-15  David Schleef  <ds@schleef.org>
1425
1426         * gst/elements/gstelements.c: Don't include headers that were
1427         just removed.
1428
1429 2005-05-15  David Schleef  <ds@schleef.org>
1430
1431         * gst/elements/Makefile.am: Remove some elements that don't
1432         need to be in the core (or even exist at all).
1433         * gst/elements/gstaggregator.c:
1434         * gst/elements/gstaggregator.h:
1435         * gst/elements/gstmd5sink.c:
1436         * gst/elements/gstmd5sink.h:
1437         * gst/elements/gstmultifilesrc.c:
1438         * gst/elements/gstmultifilesrc.h:
1439         * gst/elements/gstpipefilter.c:
1440         * gst/elements/gstpipefilter.h:
1441         * gst/elements/gstshaper.c:
1442         * gst/elements/gstshaper.h:
1443         * gst/elements/gststatistics.c:
1444         * gst/elements/gststatistics.h:
1445         * po/POTFILES.in: Remove above files.
1446
1447 2005-05-14  Andy Wingo  <wingo@pobox.com>
1448
1449         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1450         so as to get the refs right.
1451         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1452         unreffing objects that don't pass the filter.
1453
1454         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1455         gst_element_set_bus.
1456         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1457         normal cases, this will destroy the bus.
1458
1459         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1460         object.
1461
1462         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1463         has no sinks.
1464
1465 2005-05-13  Andy Wingo  <wingo@pobox.com>
1466
1467         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1468         gst_pad_link, call pad_link_maybe_ghosting,
1469         (pad_link_maybe_ghosting): Links pads, making sure that the
1470         elements being linked are in the same bin.
1471         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1472         Helpers for pad_link_maybe_ghosting.
1473
1474 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1475
1476         * configure.ac:
1477           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1478
1479 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1480
1481         * docs/design/part-element-source.txt:
1482           Mention GstPushSrc
1483
1484 2005-05-12  Wim Taymans  <wim@fluendo.com>
1485
1486         * gst/base/gstbasesink.c: (gst_basesink_init),
1487         (gst_basesink_activate):
1488         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1489         (gst_basesrc_is_seekable):
1490         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1491         (bin_element_is_sink), (gst_bin_change_state):
1492         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1493         * gst/gstelement.h:
1494         Identify sinks by their flag to avoid overly complicated
1495         checks (fow now).
1496         Do state changes even for elements not reachable from the
1497         sinks.
1498         BaseSink is a sink now :)
1499         Some more debugging info in the basesrc.
1500
1501
1502 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1503
1504         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1505           Implement _query on a bin, similar to _send_event.
1506
1507 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1508
1509         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1510           Discont event offset format should be GST_FORMAT_BYTES,
1511           not GST_FORMAT_TIME.
1512
1513 2005-05-12  Wim Taymans  <wim@fluendo.com>
1514
1515         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1516         Same fix as Ronald's but without the signal. 
1517
1518 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1519
1520         * gst/gstutils.c: (gst_element_query_position):
1521           No, an element is not a pad.
1522
1523 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1524
1525         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1526         (gst_bin_get_state):
1527           If a child is removed from a bin while we remove the child from
1528           the bin and while we're retrieving its state, signal this to the
1529           get_state function so we abort the wait (instead of waiting for
1530           a timeout) and can immediately re-iterate over all other elements.
1531
1532 2005-05-12  Wim Taymans  <wim@fluendo.com>
1533
1534         * gst/base/Makefile.am:
1535         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1536         (gst_basesrc_start):
1537         * gst/base/gstbasesrc.h:
1538         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1539         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1540         (gst_pushsrc_init), (gst_pushsrc_create):
1541         * gst/base/gstpushsrc.h:
1542         Added is_seekable to BaseSrc
1543         Added simple PushSrc.
1544
1545 2005-05-11  Wim Taymans  <wim@fluendo.com>
1546
1547         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1548         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1549         (gst_element_link_pads), (gst_element_query_position),
1550         (gst_element_query_convert), (intersect_caps_func),
1551         (gst_pad_query_position), (gst_pad_query_convert):
1552         Fix refcounting in utils function.
1553         No point in trying to activate a pad when it's added, it could
1554         be added from the state change function and then we deadlock, the
1555         element has to decide what to do.
1556
1557 2005-05-10  Andy Wingo  <wingo@pobox.com>
1558
1559         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1560         *all* the arguments.
1561
1562         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1563         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1564         lock (according to the docs -- if this is wrong change the docs).
1565
1566         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1567         flush messages in the NULL state.
1568
1569         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1570         message immediately and return.
1571         (gst_bus_set_flushing): New function. If a bus is flushing, it
1572         flushes out any queued messages and immediately unrefs new
1573         messages. This is so when an element goes to NULL, all of the
1574         unhandled messages coming from it can be freed, and their
1575         references to the element dropped. In other words: message source
1576         ref considered harmful :P
1577
1578         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1579         we're finished with it.
1580
1581         * gst/gstmessage.c (gst_message_new_state_changed): 
1582
1583 2005-05-10  Wim Taymans  <wim@fluendo.com>
1584
1585         * gst/gstvalue.c: (gst_value_compare_flags),
1586         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1587         (_gst_value_initialize):
1588         Added flags serialize/deserialize/compare code.
1589
1590 2005-05-09  Andy Wingo  <wingo@pobox.com>
1591
1592         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1593         Intersect the peer's caps with our caps.
1594
1595 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1596
1597         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1598         * gst/elements/gsttypefindelement.c: (find_peek):
1599           Handle negative offsets better. Fixes decodebin.
1600
1601 2005-05-09  Wim Taymans  <wim@fluendo.com>
1602
1603         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1604         (gst_base_transform_event):
1605         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1606         Implement accept_caps.
1607         Fix silly lock/unlock mismatch in base class.
1608
1609 2005-05-09  Wim Taymans  <wim@fluendo.com>
1610
1611         * docs/design/draft-push-pull.txt:
1612         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1613         * gst/elements/gstfilesink.c: (gst_filesink_init),
1614         (gst_filesink_query):
1615         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1616         (gst_type_find_handle_src_query), (find_element_get_length):
1617         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1618         * gst/gstelement.h:
1619         * gst/gstmessage.c:
1620         * gst/gstmessage.h:
1621         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1622         (gst_real_pad_get_caps_unlocked),
1623         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1624         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1625         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1626         (gst_real_pad_dispose), (gst_real_pad_finalize),
1627         (gst_pad_load_and_link), (gst_pad_save_thyself),
1628         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1629         (gst_pad_check_pull_range), (gst_pad_pull_range),
1630         (gst_pad_template_get_type), (gst_pad_template_class_init),
1631         (gst_pad_template_init), (gst_pad_template_dispose),
1632         (name_is_valid), (gst_static_pad_template_get),
1633         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1634         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1635         (gst_pad_get_element_private), (gst_pad_start_task),
1636         (gst_pad_pause_task), (gst_pad_stop_task),
1637         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1638         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1639         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1640         (gst_ghost_pad_new):
1641         * gst/gstpad.h:
1642         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1643         (gst_query_new_position), (gst_query_set_position),
1644         (gst_query_parse_position), (gst_query_new_convert),
1645         (gst_query_set_convert), (gst_query_parse_convert):
1646         * gst/gstquery.h:
1647         * gst/gstqueryutils.c:
1648         * gst/gstqueryutils.h:
1649         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1650         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1651         (gst_queue_handle_src_query):
1652         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1653         (gst_element_query_position), (gst_element_query_convert),
1654         (intersect_caps_func), (gst_pad_query_position),
1655         (gst_pad_query_convert):
1656         * gst/gstutils.h:
1657         * tools/gst-inspect.c: (print_pad_info):
1658         * tools/gst-xmlinspect.c: (print_element_info):
1659         Remove old query functions. Ported old code.
1660         Added position/convert helper functions to gstutils.
1661         Reordered gstpad.c code, grouping relevant things.
1662         Remove gst_message_new(), always need to speficy a specific
1663         message.
1664
1665
1666 2005-05-09  Andy Wingo  <wingo@pobox.com>
1667
1668         * gst/gstiterator.h: Add some includes.
1669
1670         * gst/gstqueryutils.h: Include more headers.
1671
1672         * gst/gstpad.h:
1673         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1674         some uses of gst_pad_query.
1675
1676         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1677         NULL out parameters.
1678         (gst_query_new_position): New proc, allocates a new position
1679         query.
1680
1681         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1682         gstqueryutils.c to the build.
1683
1684         * gst/gststructure.c (gst_structure_set_valist): Implement with
1685         the generic G_VALUE_COLLECT.
1686         
1687 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1688
1689         * gst/Makefile.am: (gst_headers):
1690         Added gstqueryutils.h to the list of headers to install, that was
1691         a 'nachty' move wingo :)
1692
1693 2005-05-06  Andy Wingo  <wingo@pobox.com>
1694
1695         * gst/gstquery.h
1696         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1697         GstData, init a memchunk.
1698         (standard_definitions): Add a few query types, deprecate a few.
1699         (gst_query_get_type): New proc.
1700         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1701         implementation.
1702         (gst_query_new_application, gst_query_get_structure): New public
1703         procs.
1704
1705         * docs/design/draft-query.txt: Removed LINKS from the query types,
1706         because all the rest can be dispatched to other pads -- seemed
1707         ugly to have a query that couldn't be dispatched. internal_links
1708         is fine as a pad method.
1709
1710         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1711         in gstpad.c, but maintain binary compatibility for the moment.
1712         Will fix before 0.9 is out.
1713
1714         * gst/gstqueryutils.c: 
1715         * gst/gstqueryutils.h: New files, implement 3 methods for each
1716         query type: parse_query, parse_response, and set. Probably need an
1717         allocator as well.
1718
1719         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1720
1721         * gst/elements/gstfilesink.c (gst_filesink_query2):
1722         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1723         query_types, and formats methods.
1724
1725         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1726         (gst_pad_set_query2_function): New functions.
1727         (gst_real_pad_init): Set query2_default as the default query2
1728         function. Basically just dispatches to internally linked pads.
1729
1730         Needs review!
1731         
1732         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1733         without using the atomic operations. Only one thread can possibly
1734         be accessing the data at this point. Changed so as to avoid
1735         gst_atomic operations.
1736
1737 2005-05-06  Wim Taymans  <wim@fluendo.com>
1738
1739         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1740         Also set caps if we use the fallback buffer alloc.
1741
1742 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1743
1744         * docs/gst/Makefile.am:
1745         * docs/gst/gstreamer-docs.sgml:
1746         * docs/gst/gstreamer-sections.txt:
1747         * docs/gst/tmpl/gstatomic.sgml:
1748         * docs/gst/tmpl/gstmemchunk.sgml:
1749         * testsuite/elements/struct_i386.h:
1750         * win32/GStreamer.vcproj:
1751         * win32/Makefile:
1752           Purge GstAtomic stuff from docs and win32 makefiles as well
1753
1754 2005-05-06  Wim Taymans  <wim@fluendo.com>
1755
1756         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1757         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1758         * gst/gstpad.c: (gst_pad_peer_get_caps):
1759         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1760         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1761         (gst_queue_src_activate), (gst_queue_change_state):
1762         * gst/gstqueue.h:
1763         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1764         (intersect_caps_func):
1765         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1766         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1767         Some fixes for the peer_get_caps() change.
1768
1769 2005-05-06  Wim Taymans  <wim@fluendo.com>
1770
1771         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1772         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1773         (gst_basesink_activate):
1774         Actually do something with error codes returned from the push
1775         functions.
1776
1777 2005-05-06  Wim Taymans  <wim@fluendo.com>
1778
1779         * docs/design/part-element-sink.txt:
1780         * docs/design/part-element-source.txt:
1781         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1782         (gst_basesink_event), (gst_basesink_activate):
1783         * gst/base/gstbasesink.h:
1784         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1785         (gst_basesrc_activate):
1786         * gst/base/gstbasesrc.h:
1787         * gst/gstelement.c: (gst_element_pads_activate):
1788         Some more documentation.
1789         Fixed scheduling decision in _pads_activate().
1790
1791 2005-05-05  Andy Wingo  <wingo@pobox.com>
1792
1793         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1794         the test suite.
1795
1796 2005-05-05  Wim Taymans  <wim@fluendo.com>
1797
1798         * gst/base/Makefile.am:
1799         * gst/base/gstbasesink.h:
1800         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1801         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1802         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1803         (gst_collectpads_class_init), (gst_collectpads_init),
1804         (gst_collectpads_finalize), (gst_collectpads_new),
1805         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1806         (find_pad), (gst_collectpads_remove_pad),
1807         (gst_collectpads_is_active), (gst_collectpads_collect),
1808         (gst_collectpads_collect_range), (gst_collectpads_start),
1809         (gst_collectpads_stop), (gst_collectpads_peek),
1810         (gst_collectpads_pop), (gst_collectpads_available),
1811         (gst_collectpads_read), (gst_collectpads_flush),
1812         (gst_collectpads_chain):
1813         * gst/base/gstcollectpads.h:
1814         * gst/elements/Makefile.am:
1815         * gst/elements/gstelements.c:
1816         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1817         (gst_fakesink_get_times), (gst_fakesink_event),
1818         (gst_fakesink_preroll), (gst_fakesink_render):
1819         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1820         (gst_filesink_init), (gst_filesink_set_location),
1821         (gst_filesink_open_file), (gst_filesink_close_file),
1822         (gst_filesink_pad_query), (gst_filesink_event),
1823         (gst_filesink_render), (gst_filesink_change_state):
1824         * gst/elements/gstfilesink.h:
1825         Added object to help in making collect pad based elements.
1826         Ported filesink.
1827         Make event function in sink baseclass return gboolean.
1828
1829 2005-05-05  Wim Taymans  <wim@fluendo.com>
1830
1831         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1832         (gst_bin_get_by_name):
1833         * gst/gstbuffer.h:
1834         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1835         (gst_clock_finalize):
1836         * gst/gstdata.c: (gst_data_replace):
1837         * gst/gstdata.h:
1838         * gst/gstelement.c: (gst_element_request_pad),
1839         (gst_element_pads_activate):
1840         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1841         (gst_object_unref):
1842         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1843         (gst_pad_set_checkgetrange_function),
1844         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1845         (gst_pad_check_pull_range), (gst_pad_pull_range),
1846         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1847         (gst_pad_pause_task), (gst_pad_stop_task):
1848         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1849         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1850         Fix name lookup in GstBin.
1851         Added _data_replace() function and _buffer_replace()
1852         Use finalize method to clean up clock.
1853         Fix refcounting on request pads.
1854         Fix pad schedule mode error.
1855         Some more object refcounting debug info,
1856
1857
1858 2005-05-04  Andy Wingo <wingo@pobox.com>
1859
1860         * check/Makefile.am:
1861         * docs/gst/tmpl/gstatomic.sgml:
1862         * docs/gst/tmpl/gstplugin.sgml:
1863         * gst/base/gstbasesink.c: (gst_basesink_activate):
1864         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1865         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1866         (gst_basesrc_query), (gst_basesrc_set_property),
1867         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1868         (gst_basesrc_activate):
1869         * gst/base/gstbasesrc.h:
1870         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1871         (gst_base_transform_src_activate):
1872         * gst/elements/gstelements.c:
1873         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1874         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1875         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1876         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1877         (gst_type_find_element_checkgetrange),
1878         (gst_type_find_element_activate):
1879         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1880         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1881         (gst_caps_load_thyself):
1882         * gst/gstelement.c: (gst_element_pads_activate),
1883         (gst_element_save_thyself), (gst_element_restore_thyself):
1884         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1885         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1886         * gst/gstpad.h:
1887         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1888         (gst_xml_parse_file), (gst_xml_parse_memory),
1889         (gst_xml_get_element), (gst_xml_make_element):
1890         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1891         (_file_index_id_save_xml), (gst_file_index_commit):
1892         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1893         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1894         (load_paths):
1895         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1896         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1897         * tools/gst-complete.c: (main):
1898         * tools/gst-compprep.c: (main):
1899         * tools/gst-inspect.c: (print_element_properties_info):
1900         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1901         * tools/gst-xmlinspect.c: (print_element_properties):
1902         GCC 4 fixen.
1903         
1904 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1905
1906         * gst/gstplugin.c: (gst_plugin_check_module),
1907         (gst_plugin_check_file), (gst_plugin_load_file):
1908             apply patch from #172526 to make register work on MacOSX
1909
1910 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1911
1912         * docs/gst/tmpl/gstconfig.sgml:
1913         * gst/gstconfig.h.in:
1914           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1915         * testsuite/debug/printf_extension.c: (main):
1916           Do not use GST_PTR_FORMAT on pointers to types with
1917           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1918         * testsuite/elements/property.h:
1919           use correct printf format
1920
1921 2005-05-02  Wim Taymans  <wim@fluendo.com>
1922
1923         * docs/design/draft-push-pull.txt:
1924         * docs/design/draft-query.txt:
1925         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1926         (gst_basesrc_start):
1927         Added draft for new query API.
1928         Added draft for better selecting scheduling methods.
1929         Make basesrc ignore length if the subclass does not support
1930         it.
1931
1932 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1933
1934         * gst/Makefile.am:
1935           possible fixes for automake-1.5 - _LIBADD is reserved
1936
1937 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1938
1939         * docs/faq/Makefile.am:
1940         * docs/manual/Makefile.am:
1941         * docs/manuals.mak:
1942         * docs/pwg/Makefile.am:
1943         * gst/Makefile.am:
1944           possible fixes for automake-1.5
1945
1946 2005-04-28  Wim Taymans  <wim@fluendo.com>
1947
1948         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1949         (gst_basesink_pad_getcaps), (gst_basesink_init),
1950         (gst_basesink_do_sync):
1951         * gst/gstclock.c: (gst_clock_entry_new):
1952         * gst/gstevent.c: (gst_event_discont_get_value):
1953         * gst/gstpipeline.c: (pipeline_bus_handler),
1954         (gst_pipeline_change_state):
1955         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1956         Better debugging of clocking info.
1957         Allow NULL values when getting discont values.
1958
1959 2005-04-27  Wim Taymans  <wim@fluendo.com>
1960
1961         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1962         * check/gst/gstpad.c: (gst_pad_suite):
1963         Increase timeout for checks.
1964
1965 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1966
1967         * check/Makefile.am:
1968           fix the broken rule for cleanup.  Apparently this rule is
1969           only needed on FC2, so maybe this warrants further autotool
1970           inspection.
1971
1972 2005-04-26  Wim Taymans  <wim@fluendo.com>
1973
1974         * gst/gsttrashstack.h:
1975         Ooohh. a nasty one! After having a failed pop() from the stack,
1976         it's possible that the stack is empty. In that case, don't
1977         follow the NULL pointer.
1978
1979 2005-04-25  Wim Taymans  <wim@fluendo.com>
1980
1981         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1982         (gst_pad_set_checkgetrange_function),
1983         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1984         (gst_pad_check_pull_range), (gst_pad_pull_range),
1985         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1986         (gst_pad_pause_task), (gst_pad_stop_task):
1987         * gst/gstplugin.c: (gst_plugin_load):
1988         * gst/gstplugin.h:
1989         Remove gst_library_load as it does more harm than good with
1990         the new g_module flags.
1991         Revert bogus caps template check in pad linking, pad caps
1992         are important when linking not the template, which is more
1993         general than the current caps.
1994
1995 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1996
1997         * gst/autoplug/.cvsignore:
1998         * gst/autoplug/Makefile.am:
1999         * gst/autoplug/gstsearchfuncs.c:
2000         * gst/autoplug/gstsearchfuncs.h:
2001         * gst/autoplug/gstspider.c:
2002         * gst/autoplug/gstspider.h:
2003         * gst/autoplug/gstspideridentity.c:
2004         * gst/autoplug/gstspideridentity.h:
2005         * gst/autoplug/spidertest.c:
2006           Die, spider, die.
2007
2008 2005-04-25  Wim Taymans  <wim@fluendo.com>
2009
2010         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2011         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2012         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
2013         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
2014         * gst/gstpad.h:
2015         Added stubs for unimplemented functions. 
2016
2017 2005-04-24  David Schleef  <ds@schleef.org>
2018
2019         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
2020         please fix.
2021
2022 2005-04-24  David Schleef  <ds@schleef.org>
2023
2024         Convert everything from GstAtomicInt to g_atomic_int_*, and
2025         remove gstatomic.
2026         * gst/Makefile.am:
2027         * gst/gstatomic.c:
2028         * gst/gstatomic.h:
2029         * gst/gstatomic_impl.h:
2030         * gst/gstbuffer.c:
2031         * gst/gstcaps.c:
2032         * gst/gstcaps.h:
2033         * gst/gstclock.c:
2034         * gst/gstclock.h:
2035         * gst/gstdata.c:
2036         * gst/gstdata.h:
2037         * gst/gstdata_private.h:
2038         * gst/gstevent.c:
2039         * gst/gstinfo.c:
2040         * gst/gstinfo.h:
2041         * gst/gstmessage.c:
2042         * gst/gstobject.c:
2043         * gst/gstobject.h:
2044         * gst/gststructure.c:
2045         * gst/gststructure.h:
2046         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2047         * gst/gstutils.h:
2048
2049 2005-04-24  David Schleef  <ds@schleef.org>
2050
2051         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2052         make the regressions tests work.  Remove some code that is no
2053         longer true.
2054         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2055         Disable warning for pads without templates.
2056
2057 2005-04-24  David Schleef  <ds@schleef.org>
2058
2059         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2060         functions that handle filtered links.
2061         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2062         removed functions.
2063         * gst/gstutils.c: Fix/remove utility functions that handle
2064         filtered caps.
2065         * gst/gstutils.h:
2066         * gst/gstvalue.c: Add serialization/deserialization of caps
2067         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2068         requires fixing so that the filter caps notation creates
2069         a capsfilter element and sets the filter_caps property.  I
2070         think everyone probably wants to keep the shorthand notation.
2071         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2072         * docs/gst/tmpl/gstpad.sgml:
2073
2074         * gst/elements/gstelements.c: Register capsfilter element.
2075         * gst/Makefile.am: fix spacing
2076         * docs/random/ds/0.9-suggested-changes: random
2077
2078 2005-04-23  David Schleef  <ds@schleef.org>
2079
2080         * gst/elements/Makefile.am:
2081         * gst/elements/gstcapsfilter.c: New element that acts like an
2082         identity, but filters caps.  Will eventually replace filtered
2083         caps in pad linking.
2084         * gst/gstutils.c: (gst_element_create_all_pads): New function
2085         to create all the ALWAYS pads that are registered with an
2086         element class.  This functionality should eventually be
2087         merged in with GstElement initialization.
2088         * gst/gstutils.h:
2089         * testsuite/trigger/README: part of trigger test code that should
2090         have been checked in a long time ago.
2091
2092 2005-04-23  David Schleef  <ds@schleef.org>
2093
2094         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2095         needed with new versions of libtool (nobody will confirm this),
2096         and hard to carry around.
2097         * gst/autoplug/Makefile.am:
2098         * gst/base/Makefile.am:
2099         * gst/elements/Makefile.am:
2100         * gst/indexers/Makefile.am:
2101         * gst/schedulers/Makefile.am:
2102         * libs/gst/bytestream/Makefile.am:
2103         * libs/gst/control/Makefile.am:
2104         * libs/gst/dataprotocol/Makefile.am:
2105         * libs/gst/getbits/Makefile.am:
2106
2107 2005-04-21  Wim Taymans  <wim@fluendo.com>
2108
2109         * docs/design/draft-push-pull.txt:
2110         * docs/design/part-MT-refcounting.txt:
2111         * docs/design/part-TODO.txt:
2112         * docs/design/part-caps.txt:
2113         * docs/design/part-events.txt:
2114         * docs/design/part-gstbus.txt:
2115         * docs/design/part-gstpipeline.txt:
2116         * docs/design/part-messages.txt:
2117         * docs/design/part-push-pull.txt:
2118         * docs/design/part-query.txt:
2119         Some more docs.
2120
2121 2005-04-21  Wim Taymans  <wim@fluendo.com>
2122
2123         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
2124         (gst_message_new), (gst_message_new_error),
2125         (gst_message_new_warning), (gst_message_new_tag),
2126         (gst_message_new_state_changed), (gst_message_new_application),
2127         (gst_message_get_structure):
2128         * gst/gstmessage.h:
2129         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2130         (gst_structure_copy_conditional):
2131         Use parent refcount in GstMessage to ensure GstStructure
2132         consistency.
2133         Cleaned up headers a bit.
2134         
2135
2136 2005-04-20  Wim Taymans  <wim@fluendo.com>
2137
2138         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2139         (gst_basesink_pad_getcaps), (gst_basesink_init),
2140         (gst_basesink_chain_unlocked):
2141         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
2142         (gst_type_find_helper):
2143         * gst/elements/gsttypefindelement.c:
2144         (gst_type_find_element_have_type), (gst_type_find_element_init),
2145         (stop_typefinding), (gst_type_find_element_handle_event),
2146         (find_suggest), (gst_type_find_element_chain),
2147         (gst_type_find_element_checkgetrange),
2148         (gst_type_find_element_getrange), (do_typefind),
2149         (gst_type_find_element_activate):
2150         * gst/gstbuffer.c: (_gst_buffer_sub_free),
2151         (gst_buffer_default_free), (gst_buffer_default_copy),
2152         (gst_buffer_set_caps):
2153         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
2154         (gst_caps_replace):
2155         * gst/gstmessage.c: (gst_message_new),
2156         (gst_message_new_state_changed):
2157         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2158         (gst_pad_set_checkgetrange_function),
2159         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
2160         (gst_pad_set_caps), (gst_pad_check_pull_range),
2161         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
2162         * gst/gstpad.h:
2163         * gst/gsttypefind.c: (gst_type_find_register):
2164         Make gst_caps_replace() work like other _replace() functions.
2165         Use _caps_replace() where possible.
2166         Make sure _message_new() initialises its field.
2167         Add gst_static_pad_template_get_caps()
2168
2169
2170 2005-04-18  Andy Wingo  <wingo@pobox.com>
2171
2172         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
2173         on the peer, not the pad. I think that was a typo. Pass an extra
2174         arg to see if random access is possible. Activate the pads as
2175         PULL_RANGE if possible.
2176
2177         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
2178
2179         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
2180         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
2181         to PROP_....
2182
2183 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2184
2185         * docs/faq/using.xml:
2186           Add note on gstreamer-properties (#154996).
2187
2188 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2189
2190         * docs/random/bbb/optional-properties:
2191           Some analysis on optional properties.
2192
2193 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2194
2195         * docs/gst/tmpl/gstelementfactory.sgml:
2196         * gst/gstelement.h:
2197         * gst/gstelementfactory.c: (gst_element_factory_init),
2198         (gst_element_factory_cleanup), (gst_element_register),
2199         (__gst_element_factory_add_static_pad_template),
2200         (gst_element_factory_get_static_pad_templates),
2201         (gst_element_factory_can_src_caps),
2202         (gst_element_factory_can_sink_caps):
2203         * gst/registries/Makefile.am:
2204         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
2205         (gst_xml_registry_class_init), (gst_xml_registry_init),
2206         (gst_xml_registry_new), (gst_xml_registry_set_property),
2207         (gst_xml_registry_get_property), (get_time), (make_dir),
2208         (gst_xml_registry_get_perms_func),
2209         (plugin_times_older_than_recurse), (plugin_times_older_than),
2210         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
2211         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
2212         (add_to_char_array), (read_string), (read_uint), (read_enum),
2213         (load_pad_template), (load_feature), (load_plugin), (load_paths),
2214         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
2215         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
2216         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
2217         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
2218         (gst_xml_registry_rebuild):
2219         * gst/registries/gstlibxmlregistry.h:
2220         * tools/gst-compprep.c: (main):
2221         * tools/gst-inspect.c: (print_pad_templates_info):
2222         * tools/gst-xmlinspect.c: (print_element_info):
2223           Use libxml2 for registry parsing, use staticpadtemplates in
2224           elementfactories. Makes gst_init() +/- 10x faster.
2225
2226 2005-04-12  Wim Taymans  <wim@fluendo.com>
2227
2228         * gst/base/Makefile.am:
2229         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2230         (gst_basesink_pad_getcaps), (gst_basesink_init),
2231         (gst_basesink_event), (gst_basesink_change_state):
2232         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2233         (gst_basesrc_init), (gst_basesrc_query),
2234         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2235         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2236         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2237         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2238         (gst_basesrc_stop), (gst_basesrc_activate),
2239         (gst_basesrc_change_state):
2240         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2241         (helper_find_suggest), (gst_type_find_helper):
2242         * gst/base/gsttypefindhelper.h:
2243         * gst/elements/Makefile.am:
2244         * gst/elements/gstelements.c:
2245         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2246         (gst_fakesink_get_times), (gst_fakesink_event),
2247         (gst_fakesink_preroll), (gst_fakesink_render):
2248         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2249         (gst_fakesrc_init), (gst_fakesrc_event_handler),
2250         (gst_fakesrc_get_property), (gst_fakesrc_create),
2251         (gst_fakesrc_start), (gst_fakesrc_stop):
2252         * gst/elements/gstfakesrc.h:
2253         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
2254         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2255         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2256         (gst_filesrc_create_read), (gst_filesrc_create),
2257         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
2258         (gst_filesrc_start):
2259         * gst/elements/gsttypefindelement.c:
2260         (gst_type_find_element_have_type), (gst_type_find_element_init),
2261         (start_typefinding), (stop_typefinding), (push_buffer_store),
2262         (gst_type_find_element_handle_event),
2263         (gst_type_find_element_chain),
2264         (gst_type_find_element_checkgetrange),
2265         (gst_type_find_element_getrange), (do_typefind),
2266         (gst_type_find_element_activate),
2267         (gst_type_find_element_change_state):
2268         * gst/elements/gsttypefindelement.h:
2269         * gst/gstpipeline.c: (pipeline_bus_handler):
2270         Added typefind helper.
2271         Small preroll fix in the base sink.
2272         Disable typefind code in basesrc.
2273         Crude port of typefindelement.
2274         Fakesrc cleanups.
2275
2276
2277 2005-04-11  Wim Taymans  <wim@fluendo.com>
2278
2279         * check/gst/gstbus.c: (gstbus_suite):
2280         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2281         * check/gstcheck.h:
2282           Fix up the timeout so that the test does not fail.
2283
2284 2005-04-06  Wim Taymans  <wim@fluendo.com>
2285
2286         * gst/base/README:
2287         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2288         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2289         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2290         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2291         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2292         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2293         (gst_basesrc_stop), (gst_basesrc_activate),
2294         (gst_basesrc_change_state), (basesrc_find_peek),
2295         (basesrc_find_suggest), (gst_basesrc_type_find):
2296         * gst/base/gstbasesrc.h:
2297         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2298         (gst_filesrc_class_init), (gst_filesrc_init),
2299         (gst_filesrc_finalize), (gst_filesrc_set_location),
2300         (gst_filesrc_set_property), (gst_filesrc_get_property),
2301         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2302         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2303         (gst_filesrc_create_read), (gst_filesrc_create),
2304         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2305         * gst/elements/gstfilesrc.h:
2306         * gst/gstelement.c: (gst_element_get_state_func),
2307         (gst_element_lost_state), (gst_element_pads_activate):
2308         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2309         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2310         (gst_pad_pull_range):
2311         * gst/gstpad.h:
2312         More work on the generic source base class, implement seeking,
2313         query.
2314         Make filesrc extend the base source class.
2315         Added gst_pad_set_checkgetrange_function to GstPad.
2316
2317 2005-04-06  Andy Wingo  <wingo@pobox.com>
2318
2319         * pkgconfig/gstreamer-base.pc.in:
2320         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2321
2322         * pkgconfig/Makefile.am:
2323         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2324
2325 2005-04-04  Wim Taymans  <wim@fluendo.com>
2326
2327         * gst/base/Makefile.am:
2328         * gst/base/README:
2329         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2330         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2331         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2332         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2333         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2334         (gst_basesrc_base_init), (gst_basesrc_class_init),
2335         (gst_basesrc_init), (gst_basesrc_get_formats),
2336         (gst_basesrc_get_query_types), (gst_basesrc_query),
2337         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2338         (gst_basesrc_set_property), (gst_basesrc_get_property),
2339         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2340         (gst_basesrc_loop), (gst_basesrc_activate),
2341         (gst_basesrc_change_state):
2342         * gst/base/gstbasesrc.h:
2343         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2344         (gst_fakesrc_class_init), (gst_fakesrc_init),
2345         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2346         (gst_fakesrc_get_property), (gst_fakesrc_create):
2347         * gst/elements/gstfakesrc.h:
2348         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2349         (gst_filesrc_open_file), (gst_filesrc_loop),
2350         (gst_filesrc_activate), (filesrc_find_peek),
2351         (gst_filesrc_type_find):
2352         Made base source class, make fakesrc extend it.
2353         Add comments to basesink class.
2354         Some filesrc cleanup.
2355
2356 2005-03-31  David Schleef  <ds@schleef.org>
2357
2358         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2359         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2360         expected to link against libgstreamer.
2361         * gst/base/Makefile.am: link against libgstreamer
2362         * gst/elements/Makefile.am: same
2363
2364 2005-03-31  Andy Wingo  <wingo@pobox.com>
2365
2366         * tests/instantiate/Makefile.am:
2367         * tests/instantiate/caps.c: Add test to test speed of caps copy
2368         and free.
2369
2370         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2371         GMemChunk to be fair.
2372
2373         * gst/gsttrashstack.h: Remove warning about using the fallback
2374         trash stack implementation, it's still faster than malloc.
2375
2376 2005-03-30  Andy Wingo  <wingo@pobox.com>
2377
2378         * tests/complexity.c: Add a copyright.
2379
2380 2005-03-31  Wim Taymans  <wim@fluendo.com>
2381
2382         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2383         (gst_base_transform_class_init), (gst_base_transform_init),
2384         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2385         (gst_base_transform_get_property),
2386         (gst_base_transform_sink_activate),
2387         (gst_base_transform_src_activate),
2388         (gst_base_transform_change_state):
2389         * gst/base/gstbasetransform.h:
2390         * gst/elements/gstidentity.c: (gst_identity_class_init),
2391         (gst_identity_event), (gst_identity_check_perfect),
2392         (gst_identity_transform), (gst_identity_start),
2393         (gst_identity_stop):
2394         Added start/stop methods to transform base class so subclasses 
2395         don't need to deal with state changes even.
2396
2397 2005-03-31  Wim Taymans  <wim@fluendo.com>
2398
2399         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2400         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2401         * gst/gstevent.h:
2402         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2403         (gst_pad_pull_range):
2404         Added rate to the discont event to prepare for variable speed
2405         and reverse playback.
2406
2407 2005-03-29  David Schleef  <ds@schleef.org>
2408
2409         * configure.ac:
2410         * testsuite/trigger/Makefile.am:
2411         * testsuite/trigger/trigger.c: A little example program to show
2412         how trigger-based elements can work.
2413
2414 2005-03-29  Wim Taymans  <wim@fluendo.com>
2415
2416         * gst/base/Makefile.am:
2417         * gst/base/README:
2418         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2419         (gst_basesink_base_init), (gst_basesink_class_init),
2420         (gst_basesink_pad_getcaps), (gst_basesink_init),
2421         (gst_basesink_activate), (gst_basesink_change_state):
2422         * gst/base/gstbasesink.h:
2423         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2424         (gst_base_transform_base_init), (gst_base_transform_finalize),
2425         (gst_base_transform_class_init), (gst_base_transform_init),
2426         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2427         (gst_base_transform_event), (gst_base_transform_getrange),
2428         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2429         (gst_base_transform_set_property),
2430         (gst_base_transform_get_property),
2431         (gst_base_transform_sink_activate),
2432         (gst_base_transform_src_activate),
2433         (gst_base_transform_change_state):
2434         * gst/base/gstbasetransform.h:
2435         * gst/elements/gstidentity.c: (gst_identity_finalize),
2436         (gst_identity_class_init), (gst_identity_init),
2437         (gst_identity_event), (gst_identity_check_perfect),
2438         (gst_identity_transform), (gst_identity_set_property),
2439         (gst_identity_get_property), (gst_identity_change_state):
2440         * gst/elements/gstidentity.h:
2441         * gst/gstelement.c: (gst_element_get_state_func),
2442         (gst_element_lost_state), (gst_element_pads_activate):
2443         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2444         (gst_pad_check_pull_range), (gst_pad_pull_range):
2445         * gst/gstpad.h:
2446         Simplify pad activation.
2447         Added function to check if pull_range can be performed.
2448         Error out when pulling inactive or flushing pads.
2449         Removed const from refcounted types as it does not make sense.
2450         Simplify pad templates in basesink
2451         Added base class for simple 1-to-1 transforms.
2452         Make identity subclass the base transform.
2453
2454 2005-03-29  Andy Wingo  <wingo@pobox.com>
2455
2456         * docs/libs/gstreamer-libs-overrides.txt: 
2457         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2458         really don't understand what's going on, but like whatever. I want
2459         green buildbot!
2460
2461         * docs/gst/Makefile.am:
2462         * docs/libs/Makefile.am: Dist the overrides files.
2463
2464         * check/Makefile.am (clean-local): Remove .libs directories.
2465
2466         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2467         elements to EXTRA_DIST, so po/ files are happy.
2468
2469         * po/POTFILES.in: Er, remove it here.
2470
2471         * po/POTFILES: Remove gstspider.c.
2472
2473         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2474
2475         * docs/libs/gstreamer-libs-docs.sgml: 
2476         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2477         bytestream.
2478
2479         * tests/complexity.c (main): Set the length of the preroll queue
2480         on the sinks to prevent a lockup.
2481
2482         * libs/gst/dataprotocol/Makefile.am: 
2483         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2484         the same as the one in check/gst-libs/gdp.c.
2485
2486         * po/, docs/gst/: Commit automatic changes to docs and po files.
2487
2488         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2489         the versioned libgstbase.
2490
2491         * check/Makefile.am: Depend on an unversioned gst-register, seems
2492         to make autoconf happier.
2493
2494         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2495
2496 2005-03-28  Wim Taymans  <wim@fluendo.com>
2497
2498         * configure.ac:
2499         * docs/design/part-gstelement.txt:
2500         * docs/design/part-negotiation.txt:
2501         * docs/design/part-preroll.txt:
2502         * docs/design/part-scheduling.txt:
2503         * docs/design/part-states.txt:
2504         * gst/Makefile.am:
2505         * gst/base/Makefile.am:
2506         * gst/base/README:
2507         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2508         (gst_basesink_base_init), (gst_basesink_class_init),
2509         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2510         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2511         (gst_basesink_set_pad_functions),
2512         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2513         (gst_basesink_set_property), (gst_basesink_get_property),
2514         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2515         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2516         (gst_basesink_preroll_queue_push),
2517         (gst_basesink_preroll_queue_empty),
2518         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2519         (gst_basesink_event), (gst_basesink_get_times),
2520         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2521         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2522         (gst_basesink_loop), (gst_basesink_activate),
2523         (gst_basesink_change_state):
2524         * gst/base/gstbasesink.h:
2525         * gst/elements/Makefile.am:
2526         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2527         (gst_fakesink_class_init), (gst_fakesink_init),
2528         (gst_fakesink_set_property), (gst_fakesink_get_property),
2529         (gst_fakesink_get_times), (gst_fakesink_event),
2530         (gst_fakesink_preroll), (gst_fakesink_render),
2531         (gst_fakesink_change_state):
2532         * gst/elements/gstfakesink.h:
2533         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2534         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2535         * gst/gstelement.c: (gst_element_add_pad),
2536         (gst_element_get_state_func), (gst_element_abort_state),
2537         (gst_element_commit_state), (gst_element_lost_state),
2538         (gst_element_set_state), (gst_element_pads_activate):
2539         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2540         * gst/gstpipeline.c: (gst_pipeline_send_event),
2541         (gst_pipeline_change_state):
2542         Added state change code.
2543         Added/updated docs.
2544         Added sink base class, make fakesink extend the base class.
2545         Small cleanups in GstPipeline.
2546
2547 2005-03-26  David Schleef  <ds@schleef.org>
2548
2549         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2550         is broken and should be implemented in a different library.
2551         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2552         * gst/gst.h: remove gstcpu.h
2553         * gst/gstcpu.c: remove
2554         * gst/gstcpu.h: remove
2555         * gst/Makefile.am.future: Remove this file.  It's ancient.
2556
2557 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2558
2559         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2560         (gst_bin_send_event):
2561           Add default event/set_manager handlers. The set_manager handler
2562           takes care that the manager is distributed over kids that were
2563           already in the bin before the manager was set. The event handler
2564           is a utility virtual function that sends the event over all sinks,
2565           so that gst_element_send_event (bin, event); has the expected
2566           behaviour.
2567         * gst/gstpad.c: (gst_pad_event_default):
2568           Re-install default event handling for discontinuities, so that
2569           seeking works without requiring hacks in applications or extra
2570           code in sinks.
2571         * gst/gstpipeline.c: (gst_pipeline_class_init),
2572         (gst_pipeline_send_event):
2573           Half hack, half utility: set a pipeline to PAUSED for seek events,
2574           since that is the only way we can guarantee a/v sync. Means that
2575           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2576           and it "just works".
2577
2578 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2579
2580         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2581           Lock/unlock mismatch.
2582
2583 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2584
2585         * docs/faq/gst-uninstalled:
2586           add gst-plugins-base
2587         * docs/gst/Makefile.am:
2588           don't error out until docs are fixed
2589         * docs/gst/gstreamer.types:
2590           remove thread
2591
2592 2005-03-22  Wim Taymans  <wim@fluendo.com>
2593
2594         * check/Makefile.am:
2595         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2596         * gst/gststructure.c: (gst_structure_set_valist),
2597         (gst_structure_copy_conditional):
2598         Activated more tests.
2599         Added message test.
2600         Added G_TYPE_POINTER to GstStructure.
2601         
2602
2603 2005-03-22  Wim Taymans  <wim@fluendo.com>
2604
2605         * docs/design/part-TODO.txt:
2606         * docs/design/part-events.txt:
2607         * docs/design/part-gstbin.txt:
2608         * docs/design/part-gstbus.txt:
2609         * docs/design/part-gstpipeline.txt:
2610         * docs/design/part-messages.txt:
2611         * gst/gstbus.c:
2612         * gst/gstmessage.c:
2613         Docs updates
2614
2615 2005-03-21  Wim Taymans  <wim@fluendo.com>
2616
2617         * gst/gstbus.c: (gst_bus_post):
2618         Fix copy-and-paste error.
2619
2620 2005-03-21  Wim Taymans  <wim@fluendo.com>
2621
2622         * check/Makefile.am:
2623         * gst/Makefile.am:
2624         * gst/elements/Makefile.am:
2625         * gst/elements/gstelements.c:
2626         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2627         (gst_fakesink_event), (gst_fakesink_chain):
2628         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2629         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2630         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2631         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2632         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2633         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2634         (gst_fakesrc_loop), (gst_fakesrc_activate),
2635         (gst_fakesrc_change_state):
2636         * gst/elements/gstfakesrc.h:
2637         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2638         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2639         (gst_filesrc_open_file), (gst_filesrc_loop),
2640         (gst_filesrc_activate), (gst_filesrc_change_state),
2641         (filesrc_find_peek), (filesrc_find_suggest),
2642         (gst_filesrc_type_find):
2643         * gst/elements/gstidentity.c: (gst_identity_finalize),
2644         (gst_identity_class_init), (gst_identity_init),
2645         (gst_identity_proxy_getcaps), (identity_queue_push),
2646         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2647         (gst_identity_getrange), (gst_identity_chain),
2648         (gst_identity_sink_loop), (gst_identity_src_loop),
2649         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2650         (gst_identity_set_property), (gst_identity_get_property),
2651         (gst_identity_change_state):
2652         * gst/elements/gstidentity.h:
2653         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2654         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2655         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2656         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2657         (gst_tee_sink_activate):
2658         * gst/elements/gsttee.h:
2659         * gst/gst.c: (gst_register_core_elements), (init_post):
2660         * gst/gst.h:
2661         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2662         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2663         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2664         (gst_bin_change_state):
2665         * gst/gstbin.h:
2666         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2667         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2668         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2669         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2670         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2671         (bus_watch_callback), (bus_watch_destroy),
2672         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2673         (poll_timeout), (gst_bus_poll):
2674         * gst/gstbus.h:
2675         * gst/gstcaps.h:
2676         * gst/gstdata.h:
2677         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2678         (gst_element_post_message), (gst_element_message_full),
2679         (gst_element_get_state_func), (gst_element_get_state),
2680         (gst_element_abort_state), (gst_element_commit_state),
2681         (gst_element_lost_state), (gst_element_set_state),
2682         (gst_element_pads_activate), (gst_element_change_state),
2683         (gst_element_dispose), (gst_element_set_manager_func),
2684         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2685         (gst_element_set_manager), (gst_element_get_manager),
2686         (gst_element_set_bus), (gst_element_get_bus),
2687         (gst_element_set_scheduler), (gst_element_get_scheduler):
2688         * gst/gstelement.h:
2689         * gst/gstevent.c: (gst_event_new_segment_seek),
2690         (gst_event_new_flush):
2691         * gst/gstevent.h:
2692         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2693         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2694         (gst_message_new_eos), (gst_message_new_error),
2695         (gst_message_new_warning), (gst_message_new_tag),
2696         (gst_message_new_state_changed), (gst_message_new_application),
2697         (gst_message_get_structure), (gst_message_parse_tag),
2698         (gst_message_parse_state_changed), (gst_message_parse_error),
2699         (gst_message_parse_warning):
2700         * gst/gstmessage.h:
2701         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2702         (gst_real_pad_set_property), (gst_pad_set_active),
2703         (gst_pad_is_active), (gst_pad_set_blocked_async),
2704         (gst_pad_set_blocked), (gst_pad_is_blocked),
2705         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2706         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2707         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2708         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2709         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2710         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2711         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2712         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2713         (gst_pad_set_caps), (gst_pad_configure_sink),
2714         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2715         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2716         (gst_real_pad_dispose), (gst_real_pad_finalize),
2717         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2718         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2719         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2720         * gst/gstpad.h:
2721         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2722         (pipeline_bus_handler), (gst_pipeline_change_state),
2723         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2724         * gst/gstpipeline.h:
2725         * gst/gstprobe.h:
2726         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2727         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2728         (gst_queue_link_src), (gst_queue_bufferalloc),
2729         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2730         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2731         (gst_queue_loop), (gst_queue_handle_src_event),
2732         (gst_queue_handle_src_query), (gst_queue_src_activate),
2733         (gst_queue_change_state):
2734         * gst/gstqueue.h:
2735         * gst/gstscheduler.c: (gst_scheduler_init),
2736         (gst_scheduler_dispose), (gst_scheduler_create_task),
2737         (gst_scheduler_factory_create):
2738         * gst/gstscheduler.h:
2739         * gst/gststructure.c: (gst_structure_get_type),
2740         (gst_structure_copy_conditional):
2741         * gst/gststructure.h:
2742         * gst/gsttaginterface.h:
2743         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2744         (gst_task_init), (gst_task_dispose), (gst_task_create),
2745         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2746         (gst_task_pause):
2747         * gst/gsttask.h:
2748         * gst/gstthread.c:
2749         * gst/gstthread.h:
2750         * gst/gsttypes.h:
2751         * gst/schedulers/Makefile.am:
2752         * gst/schedulers/cothreads_compat.h:
2753         * gst/schedulers/entryscheduler.c:
2754         * gst/schedulers/faircothreads.c:
2755         * gst/schedulers/faircothreads.h:
2756         * gst/schedulers/fairscheduler.c:
2757         * gst/schedulers/gstbasicscheduler.c:
2758         * gst/schedulers/gstoptimalscheduler.c:
2759         * gst/schedulers/gthread-cothreads.h:
2760         * gst/schedulers/threadscheduler.c:
2761         (gst_thread_scheduler_task_get_type),
2762         (gst_thread_scheduler_task_class_init),
2763         (gst_thread_scheduler_task_init),
2764         (gst_thread_scheduler_task_start),
2765         (gst_thread_scheduler_task_stop),
2766         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2767         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2768         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2769         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2770         (plugin_init):
2771         * libs/gst/Makefile.am:
2772         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2773         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2774         (gst_file_pad_parent_set):
2775         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2776         (gst_dp_event_from_packet):
2777         * tests/complexity.c: (main):
2778         * tests/mass_elements.c: (main):
2779         * testsuite/states/locked.c: (message_received), (main):
2780         * testsuite/states/parent.c: (main):
2781         * tools/gst-inspect.c: (print_element_flag_info),
2782         (print_implementation_info), (print_pad_info):
2783         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2784         (main):
2785         * tools/gst-md5sum.c: (event_loop), (main):
2786         * tools/gst-typefind.c: (main):
2787         * tools/gst-xmlinspect.c: (print_element_info):
2788         Next big merge.
2789         Added GstBus for mainloop integration.
2790         Added GstMessage for sending notifications on the bus.
2791         Added GstTask as an abstraction for pipeline entry points.
2792         Removed GstThread.
2793         Removed Schedulers.
2794         Simplified GstQueue for multithreaded core.
2795         Made _link threadsafe, removed old capsnego.
2796         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2797         Added pad blocking functions.
2798         Reworked scheduling functions in GstPad to prepare for
2799         scheduling updates soon.
2800         Moved events out of data stream.
2801         Simplified GstEvent types.
2802         Added return values to push/pull.
2803         Removed clocking from GstElement.
2804         Added prototypes for state change function for next merge.
2805         Removed iterate from bins and state change management.
2806         Fixed some elements, disabled others for now.
2807         Fixed -inspect and -launch.
2808         Added check for GstBus.
2809
2810 2005-03-10  Wim Taymans  <wim@fluendo.com>
2811
2812         * docs/design/part-MT-refcounting.txt:
2813         * docs/design/part-clocks.txt:
2814         * docs/design/part-gstelement.txt:
2815         * docs/design/part-gstobject.txt:
2816         * docs/design/part-standards.txt:
2817         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2818         (gst_bin_remove_func), (gst_bin_remove):
2819         * gst/gstbin.h:
2820         * gst/gstbuffer.c:
2821         * gst/gstcaps.h:
2822         * testsuite/clock/clock1.c: (main):
2823         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2824         (main):
2825         * testsuite/dlopen/loadgst.c: (do_test):
2826         * testsuite/refcounting/bin.c: (add_remove_test1),
2827         (add_remove_test2), (main):
2828         * testsuite/refcounting/element.c: (main):
2829         * testsuite/refcounting/element_pad.c: (main):
2830         * testsuite/refcounting/pad.c: (main):
2831         * tools/gst-launch.c: (sigint_handler_sighandler):
2832         * tools/gst-typefind.c: (main):
2833         Doc updates.
2834         Added doc about clock.
2835         removed gst_bin_iterate_recurse_up(), marked methods
2836         for removal.
2837         Fix more testsuites.
2838
2839 2005-03-09  Wim Taymans  <wim@fluendo.com>
2840
2841         * gst/gstpad.c: (gst_pad_get_direction),
2842         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2843         (gst_pad_collect_valist):
2844         * testsuite/bins/interface.c: (main):
2845         * testsuite/caps/audioscale.c: (test_caps):
2846         * testsuite/caps/caps.c: (test1), (test2), (test3):
2847         * testsuite/caps/deserialize.c: (main):
2848         * testsuite/caps/enumcaps.c: (main):
2849         * testsuite/caps/filtercaps.c: (main):
2850         * testsuite/caps/intersect2.c: (main):
2851         * testsuite/caps/random.c: (main):
2852         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2853         * testsuite/caps/sets.c: (check_caps):
2854         * testsuite/caps/simplify.c: (check_caps), (main):
2855         * testsuite/caps/subtract.c: (check_caps):
2856         Fix _pad_get_direction wrt ghostpads.
2857         Fix caps testsuite.
2858
2859 2005-03-09  Wim Taymans  <wim@fluendo.com>
2860
2861         * check/Makefile.am:
2862         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2863         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2864         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2865         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2866         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2867         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2868         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2869         (bin_element_is_sink), (gst_bin_iterate_sinks),
2870         (gst_bin_iterate_all_by_interface):
2871         * gst/gstbin.h:
2872         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2873         (gst_element_change_state), (gst_element_dispose),
2874         (gst_element_finalize), (gst_element_set_loop_function):
2875         * gst/gstelement.h:
2876         * gst/gstiterator.c: (find_custom_fold_func):
2877         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2878         (gst_pad_collectv), (gst_pad_collect_valist),
2879         (gst_pad_template_new):
2880         * gst/gstpipeline.c: (gst_pipeline_class_init),
2881         (gst_pipeline_dispose), (gst_pipeline_set_property),
2882         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2883         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2884         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2885         * gst/gstutils.h:
2886         * gst/schedulers/entryscheduler.c:
2887         * gst/schedulers/gstbasicscheduler.c:
2888         (gst_basic_scheduler_cothreaded_chain),
2889         (gst_basic_scheduler_chain_add_element):
2890         * testsuite/bins/interface.c: (main):
2891         Added GstBin test.
2892         Added GstSystemClock test.
2893         Implemented clock distribution code in GstBin.
2894         Implemented iterate sinks method for future use.
2895         Rearranged gstelement.h
2896         Fix GstIterator comparison bug.
2897         Moved some code to GstPipeline, mostly clocking related.
2898
2899 2005-03-09  Wim Taymans  <wim@fluendo.com>
2900
2901         * configure.ac:
2902         * gst/gst_private.h:
2903         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2904         (gst_bin_remove_func), (gst_bin_remove),
2905         (gst_bin_get_by_name_recurse_up):
2906         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2907         (gst_clock_id_compare_func), (gst_clock_id_wait),
2908         (gst_clock_id_wait_async), (gst_clock_init),
2909         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2910         * gst/gstelement.h:
2911         * gst/gstinfo.c: (_gst_debug_init):
2912         * gst/gstobject.h:
2913         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2914         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2915         * gst/gstpad.h:
2916         Bump version number, we're now 0.9.0
2917         Add future debugging category.
2918         Fix NULL _unref() in _get_by_name_recurse_up
2919         Rearrange gstpad.h.
2920         Update some docs.
2921
2922 2005-03-08  Wim Taymans  <wim@fluendo.com>
2923
2924         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2925         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2926         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2927         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2928         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2929         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2930         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2931         * gst/elements/gstidentity.c: (gst_identity_class_init):
2932         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2933         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2934         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2935         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2936         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2937         (gst_tee_link):
2938         * gst/gstelement.c: (gst_element_class_init),
2939         (gst_element_base_class_init), (gst_element_init),
2940         (gst_element_get_random_pad), (gst_element_wait_state_change),
2941         (gst_element_change_state), (gst_element_dispose),
2942         (gst_element_finalize), (gst_element_set_loop_function):
2943         * gst/gstelement.h:
2944         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2945         * gst/gstthread.c: (gst_thread_class_init),
2946         (gst_thread_release_children_locks), (gst_thread_change_state):
2947         * gst/schedulers/gstbasicscheduler.c:
2948         (gst_basic_scheduler_loopfunc_wrapper),
2949         (gst_basic_scheduler_chain_wrapper),
2950         (gst_basic_scheduler_src_wrapper),
2951         (gst_basic_scheduler_remove_element):
2952         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2953         Remove threadsafe properties. Fix elements because GObject
2954         complains when installing a property before declaring a
2955         set/get_property handler.
2956         Rearrange gstelement.h file, use STATE macros for state locks.
2957         Free mutexes in the finalize method instead of dispose.
2958
2959 2005-03-08  Wim Taymans  <wim@fluendo.com>
2960
2961         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2962         * gst/gstthread.c: (gst_thread_release_children_locks):
2963         Added parentage check.
2964         Fix build og GstThread again.
2965
2966 2005-03-08  Wim Taymans  <wim@fluendo.com>
2967
2968         * docs/design/part-MT-refcounting.txt:
2969         * docs/design/part-conventions.txt:
2970         * docs/design/part-gstobject.txt:
2971         * docs/design/part-relations.txt:
2972         * docs/design/part-standards.txt:
2973         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2974         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2975         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2976         (gst_bin_iterate_all_by_interface):
2977         * gst/gstbuffer.h:
2978         * gst/gstclock.h:
2979         * gst/gstelement.c: (gst_element_class_init),
2980         (gst_element_change_state), (gst_element_set_loop_function):
2981         * gst/gstelement.h:
2982         * gst/gstiterator.c:
2983         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2984         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2985         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2986         (gst_object_set_parent), (gst_object_unparent),
2987         (gst_object_check_uniqueness):
2988         * gst/gstobject.h:
2989         Docs updates, clean up some headers.
2990
2991 2005-03-07  Wim Taymans  <wim@fluendo.com>
2992
2993         * check/.cvsignore:
2994         * check/Makefile.am:
2995         * check/gst-libs/.cvsignore:
2996         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2997         * check/gst/.cvsignore:
2998         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2999         (START_TEST), (gstbus_suite), (main):
3000         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
3001         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
3002         (gst_data_suite), (main):
3003         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
3004         (add_fold_func), (gstiterator_suite), (main):
3005         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
3006         (thread_name_object), (thread_name_object_default),
3007         (gst_object_name_compare), (gst_object_suite), (main):
3008         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
3009         (gst_pad_suite), (main):
3010         * check/gstcheck.c: (gst_check_log_message_func),
3011         (gst_check_log_critical_func), (gst_check_init):
3012         * check/gstcheck.h:
3013         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3014         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
3015         Added checks.
3016
3017 2005-03-07  Wim Taymans  <wim@fluendo.com>
3018
3019         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
3020         (gst_list_iterator_next), (gst_list_iterator_resync),
3021         (gst_list_iterator_free), (gst_iterator_new_list),
3022         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
3023         (gst_iterator_free), (gst_iterator_push), (filter_next),
3024         (filter_resync), (filter_uninit), (filter_free),
3025         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
3026         (gst_iterator_foreach), (find_custom_fold_func),
3027         (gst_iterator_find_custom):
3028         * gst/gstiterator.h:
3029         Added missing files.
3030
3031 2005-03-07  Wim Taymans  <wim@fluendo.com>
3032
3033         * Makefile.am:
3034         * configure.ac:
3035         * docs/design/part-MT-refcounting.txt:
3036         * docs/design/part-conventions.txt:
3037         * docs/design/part-gstobject.txt:
3038         * docs/design/part-relations.txt:
3039         * examples/mixer/mixer.c: (main):
3040         * examples/thread/thread.c: (eos), (main):
3041         * gst/Makefile.am:
3042         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3043         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3044         (gst_spider_plug_from_srcpad):
3045         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3046         (gst_spider_identity_change_state),
3047         (gst_spider_identity_sink_loop_type_finding):
3048         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3049         * gst/elements/gstidentity.c: (gst_identity_init):
3050         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3051         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3052         * gst/elements/gsttypefindelement.c: (free_entry):
3053         * gst/gst.c:
3054         * gst/gst.h:
3055         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3056         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3057         (gst_bin_set_index), (gst_bin_set_element_sched),
3058         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3059         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3060         (gst_bin_iterate_elements), (iterate_child_recurse),
3061         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3062         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3063         (compare_interface), (gst_bin_get_by_interface),
3064         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3065         * gst/gstbin.h:
3066         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3067         (gst_buffer_default_free), (gst_buffer_default_copy),
3068         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3069         (gst_buffer_create_sub):
3070         * gst/gstbuffer.h:
3071         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3072         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3073         (gst_caps_unref), (gst_static_caps_get),
3074         (gst_caps_remove_and_get_structure), (gst_caps_append),
3075         (gst_caps_append_structure), (gst_caps_remove_structure),
3076         (gst_caps_copy_nth), (gst_caps_set_simple),
3077         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3078         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3079         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3080         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3081         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3082         (gst_caps_structure_figure_out_union),
3083         (gst_caps_switch_structures), (gst_caps_do_simplify),
3084         (gst_caps_replace), (gst_caps_from_string),
3085         (gst_caps_copy_conditional):
3086         * gst/gstcaps.h:
3087         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3088         (_gst_clock_id_free), (gst_clock_id_unref),
3089         (gst_clock_id_compare_func), (gst_clock_id_wait),
3090         (gst_clock_id_wait_async), (gst_clock_class_init),
3091         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3092         (gst_clock_get_time), (gst_clock_set_time_adjust),
3093         (gst_clock_set_property), (gst_clock_get_property):
3094         * gst/gstclock.h:
3095         * gst/gstcompat.h:
3096         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3097         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3098         * gst/gstdata.h:
3099         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3100         (gst_element_requires_clock), (gst_element_provides_clock),
3101         (gst_element_set_clock), (gst_element_clock_wait),
3102         (gst_element_wait), (gst_element_set_time_delay),
3103         (gst_element_is_indexable), (gst_element_add_pad),
3104         (gst_element_add_ghost_pad), (gst_element_remove_pad),
3105         (pad_compare_name), (gst_element_get_static_pad),
3106         (gst_element_request_pad), (gst_element_get_request_pad),
3107         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
3108         (gst_element_class_get_pad_template_list),
3109         (gst_element_class_get_pad_template), (gst_element_error_func),
3110         (gst_element_get_random_pad), (gst_element_get_event_masks),
3111         (gst_element_send_event), (gst_element_seek),
3112         (gst_element_get_query_types), (gst_element_query),
3113         (gst_element_get_formats), (gst_element_convert),
3114         (gst_element_is_locked_state), (gst_element_set_locked_state),
3115         (gst_element_sync_state_with_parent), (gst_element_change_state),
3116         (gst_element_finalize), (gst_element_yield),
3117         (gst_element_interrupt), (gst_element_set_scheduler),
3118         (gst_element_get_scheduler), (gst_element_set_loop_function):
3119         * gst/gstelement.h:
3120         * gst/gstevent.h:
3121         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
3122         (gst_format_get_by_nick), (gst_format_get_details),
3123         (gst_format_iterate_definitions):
3124         * gst/gstformat.h:
3125         * gst/gstindex.c: (gst_index_gtype_resolver):
3126         * gst/gstinfo.c:
3127         * gst/gstinfo.h:
3128         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
3129         (gst_mem_chunk_free):
3130         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3131         (gst_object_ref), (gst_object_unref), (gst_object_sink),
3132         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
3133         (gst_object_dispatch_properties_changed),
3134         (gst_object_set_name_default), (gst_object_set_name),
3135         (gst_object_get_name), (gst_object_set_name_prefix),
3136         (gst_object_get_name_prefix), (gst_object_set_parent),
3137         (gst_object_get_parent), (gst_object_unparent),
3138         (gst_object_check_uniqueness), (gst_object_save_thyself),
3139         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
3140         (gst_object_set_property), (gst_object_get_property),
3141         (gst_object_get_path_string):
3142         * gst/gstobject.h:
3143         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3144         (gst_real_pad_init), (gst_real_pad_get_property),
3145         (gst_pad_custom_new), (gst_pad_get_direction),
3146         (gst_pad_set_active), (gst_pad_is_active),
3147         (gst_pad_set_event_function), (gst_pad_is_linked),
3148         (gst_pad_link_free), (gst_pad_link_intersect),
3149         (gst_pad_link_fixate), (gst_pad_set_caps),
3150         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
3151         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
3152         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
3153         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
3154         (gst_pad_get_caps), (gst_pad_peer_get_caps),
3155         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
3156         (gst_pad_realize), (gst_pad_get_allowed_caps),
3157         (gst_real_pad_dispose), (gst_real_pad_finalize),
3158         (gst_pad_collectv), (gst_pad_collect_valist),
3159         (gst_pad_template_dispose), (gst_pad_template_new),
3160         (gst_pad_get_internal_links):
3161         * gst/gstpad.h:
3162         * gst/gstpipeline.c: (gst_pipeline_dispose),
3163         (gst_pipeline_change_state):
3164         * gst/gstpipeline.h:
3165         * gst/gstplugin.c:
3166         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
3167         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
3168         * gst/gstpluginfeature.h:
3169         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3170         * gst/gstquery.c: (_gst_query_type_initialize),
3171         (gst_query_type_register), (gst_query_type_get_by_nick),
3172         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
3173         * gst/gstquery.h:
3174         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
3175         * gst/gstscheduler.c: (gst_scheduler_add_element),
3176         (gst_scheduler_factory_create):
3177         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3178         (gst_structure_free), (gst_structure_set_name),
3179         (gst_structure_id_set_value), (gst_structure_set_value),
3180         (gst_structure_set_valist), (gst_structure_remove_field),
3181         (gst_structure_remove_fields),
3182         (gst_structure_remove_fields_valist),
3183         (gst_structure_remove_all_fields), (gst_structure_foreach),
3184         (gst_structure_map_in_place),
3185         (gst_caps_structure_fixate_field_nearest_int),
3186         (gst_caps_structure_fixate_field_nearest_double):
3187         * gst/gststructure.h:
3188         * gst/gstsystemclock.c: (gst_system_clock_class_init),
3189         (gst_system_clock_init), (gst_system_clock_dispose),
3190         (gst_system_clock_async_thread),
3191         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
3192         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
3193         * gst/gstsystemclock.h:
3194         * gst/gsttag.c: (gst_tag_list_add_value_internal),
3195         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
3196         * gst/gsttaginterface.c:
3197         * gst/gstthread.c: (gst_thread_dispose),
3198         (gst_thread_release_children_locks), (gst_thread_change_state),
3199         (gst_thread_main_loop):
3200         * gst/gsttrashstack.h:
3201         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
3202         * gst/gsttypes.h:
3203         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3204         (gst_element_request_pad), (gst_element_get_pad_from_template),
3205         (gst_element_request_compatible_pad),
3206         (gst_element_get_compatible_pad_filtered),
3207         (gst_element_get_compatible_pad), (gst_element_state_get_name),
3208         (gst_element_link_pads_filtered), (gst_element_link_filtered),
3209         (gst_element_link_many), (gst_element_link),
3210         (gst_element_link_pads), (gst_element_unlink_pads),
3211         (gst_element_unlink_many), (gst_element_unlink),
3212         (gst_pad_can_link_filtered), (gst_pad_can_link),
3213         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
3214         (gst_object_default_error), (gst_bin_add_many),
3215         (gst_bin_remove_many), (gst_element_populate_std_props),
3216         (gst_element_class_install_std_props), (gst_buffer_merge),
3217         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
3218         (link_fold_func), (gst_pad_proxy_setcaps):
3219         * gst/gstutils.h:
3220         * gst/gstvalue.c: (gst_value_deserialize_string):
3221         * gst/parse/grammar.y:
3222         * gst/schedulers/gstbasicscheduler.c:
3223         (gst_basic_scheduler_cothreaded_chain),
3224         (gst_basic_scheduler_chain_recursive_add),
3225         (gst_basic_scheduler_pad_link):
3226         * gst/schedulers/gstoptimalscheduler.c:
3227         (get_group_schedule_function),
3228         (gst_opt_scheduler_state_transition),
3229         (gst_opt_scheduler_add_element), (element_get_reachables_func):
3230         * libs/gst/bytestream/bytestream.c:
3231         * libs/gst/dataprotocol/dataprotocol.c:
3232         (gst_dp_header_from_buffer):
3233         * po/nb.po:
3234         * po/ru.po:
3235         * tests/threadstate/threadstate2.c: (eos):
3236         * tools/gst-compprep.c: (main):
3237         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
3238         (print_pad_info), (print_children_info):
3239         * tools/gst-launch.c: (idle_func), (main):
3240         * tools/gst-md5sum.c: (idle_func), (main):
3241         * tools/gst-xmlinspect.c: (print_element_info):
3242         First THREADED backport attempt, focusing on adding locks and
3243         making sure the API is threadsafe. Needs more work. More docs
3244         follow this week.
3245
3246 2005-02-24  Andy Wingo  <wingo@pobox.com>
3247
3248         * tests/bench-complexity.scm:
3249         * tests/complexity.gnuplot: New files, good for running complexity
3250         benchmarks.
3251
3252         * tests/Makefile.am:
3253         * tests/complexity.c: New test, sets up N elements, at each level
3254         teeing into M streams per element. Eeeenteresting.
3255
3256         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
3257         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
3258         running bench-mass_elements.scm.
3259
3260         * tests/bench-mass_elements.scm: New script, runs mass_elements
3261         for various numbers of identities, outputting the results to a
3262         file. Requires guile 1.6. Just for testing.
3263
3264 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3265
3266         * gst/schedulers/fairscheduler.c:
3267           compile with debug disabled
3268
3269 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3270
3271         * configure.ac:
3272           hunting season on 0.9 is now OPEN
3273
3274 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
3275
3276         * docs/libs/tmpl/gstcontrol.sgml:
3277         * docs/libs/tmpl/gstdparam.sgml:
3278         * docs/libs/tmpl/gstdplinint.sgml:
3279         * docs/libs/tmpl/gstdpman.sgml:
3280         * docs/libs/tmpl/gstdpsmooth.sgml:
3281         * docs/libs/tmpl/gstunitconvert.sgml:
3282           more docs for the state of dparams
3283
3284 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3285
3286         * gst/gstelementfactory.c: (gst_element_factory_create):
3287         * gst/gstobject.c: (gst_object_init),
3288         (gst_object_set_name_default), (gst_object_set_name):
3289           name objects by default, not in gst_element_factory_create. Allows
3290           using elements created with g_object_new. (fixes #167283)
3291
3292 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3293
3294         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3295           make the time that debugging functions print relative to when
3296           gst_init was called
3297
3298 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3299
3300         * gst/gsttaginterface.c:
3301           Fix inline docs: tag setter vararg functions are NULL-terminated,
3302           GST_TAG_INVALID doesn't exist any more.
3303
3304 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3305
3306         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3307         Allocate the 1 byte more memory that was forgotten!!!!!
3308         fixes memory corruption on 64bit platforms
3309
3310 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3311
3312         * docs/pwg/building-pads.xml:
3313         * docs/pwg/intro-basics.xml:
3314           fixed a few typos, relabeled introductionary list of types
3315         * docs/random/ensonic/dparams.txt:
3316           more notes abut dparam changes
3317         * libs/gst/control/dparam.c: (gst_dparam_attach):
3318         * libs/gst/control/dparammanager.c:
3319         * libs/gst/control/dparammanager.h:
3320           - many comments and notes on dparam implementation
3321           - new dparams are were not initialized to the default value
3322             from param spec
3323
3324 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3325
3326         submitted by: Peter Astakhov
3327
3328         * po/LINGUAS:
3329         * po/ru.po:
3330           adding Russian translation
3331
3332 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3333
3334         * configure.ac:
3335         * docs/gst/Makefile.am:
3336         * docs/libs/Makefile.am:
3337           make sure popt is added to gtk-doc flags.  Fixes #147782.
3338
3339 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3340
3341         * docs/faq/using.xml:
3342           Fix typo in FAQ (artssink => artsdsink)
3343
3344 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3345
3346         * tools/gst-launch.1.in:
3347           Fix typo (#166699).
3348
3349 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3350
3351         * docs/faq/using.xml:
3352           Add -v argument to fakesrc/fakesink gst-launch line,
3353           so that the promised output will actually show up.
3354
3355 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3356
3357         * gst/gstthread.c: (gst_thread_change_state):
3358           Implement state-change error handling (#166073).
3359
3360 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3361
3362         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3363           Release interrupt after handling (#166250).
3364
3365 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3366
3367         * configure.ac:
3368           back to HEAD
3369
3370 === release 0.8.9 ===
3371
3372 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3373
3374         * NEWS:
3375         * RELEASE:
3376         * configure.ac:
3377           releasing 0.8.9, "Like Eating Glass"
3378
3379 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3380
3381         submitted by: Clytie Siddall
3382
3383         * po/vi.po: Added Vietnamese translation
3384
3385 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3386
3387         patch by: Tim Philipp-Müller
3388
3389         * configure.ac:
3390         * gst/gstpad.c:
3391           unref data when probe function returns FALSE.  Fixes #166362
3392
3393 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3394
3395         * gst/gst.c: (gst_init_get_popt_table):
3396           Fix typo (#166269).
3397
3398 2005-02-04  Andy Wingo  <wingo@pobox.com>
3399
3400         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3401         the debugging on whether the caps are compatible.
3402
3403 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3404
3405         * docs/manual/basics-elements.xml:
3406           Fix two typos.
3407
3408 2005-02-02  Wim Taymans  <wim@fluendo.com>
3409
3410         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3411         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3412         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3413         Remove some FIXMEs after analysing and commenting why they
3414         are not issues.
3415
3416 2005-02-02  Wim Taymans  <wim@fluendo.com>
3417
3418         * gst/schedulers/gstoptimalscheduler.c:
3419         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3420         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3421         (get_invalid_call), (chain_invalid_call),
3422         (get_group_schedule_function), (loop_group_schedule_function),
3423         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3424         (gst_opt_scheduler_state_transition),
3425         (gst_opt_scheduler_add_element),
3426         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3427         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3428         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3429         (gst_opt_scheduler_show):
3430         Added lock to protect scheduler data structures.
3431
3432 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3433
3434         * testsuite/threads/threadi.c: (cb_data):
3435           Fix buglet in test.
3436
3437 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3438
3439         * testsuite/threads/Makefile.am:
3440         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3441           On Wim's request, split the test in three separately-compiled
3442           tests that each test a very specific bug. Two of them still fail,
3443           will create bugs for those. threadi.c indicates why they fail.
3444
3445 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3446
3447         * gst/schedulers/gstoptimalscheduler.c:
3448         (get_group_schedule_function):
3449           Try to work with the threading mess that queue_link is.
3450
3451 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3452
3453         * gst/gstbin.c: (gst_bin_remove_func):
3454           Explicitely make an element release locks in a group when being
3455           remove from a bin.
3456         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3457           If there's no scheduler, always return immediately (similar to
3458           gst_element_interrupt).
3459
3460 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3461
3462         * gst/gstbin.c: (gst_bin_child_state_change_func):
3463           Remove a piece of code that could never be reached.
3464         * docs/gst/gstreamer-sections.txt:
3465         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3466         (gst_pad_call_get_function):
3467         * gst/gstpad.h:
3468         * testsuite/pad/Makefile.am:
3469           Fix #150546, enable tests.
3470
3471 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3472
3473         * docs/pwg/advanced-types.xml:
3474           Fix description for buffer-frames=0.
3475         * docs/gst/tmpl/gstbin.sgml:
3476         * gst/gstbin.c: (gst_bin_child_state_change_func),
3477         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3478         * gst/gstbin.h:
3479         * testsuite/threads/Makefile.am:
3480         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3481         (cb_state), (cb_play), (main):
3482           Fix non-recursive state changes to *really* change the state
3483           of the object, and not just call parent_class->state_change.
3484           Fix a lot of lockups caused by this. Fixes #132775. Add test
3485           for the problem. Also enable test to show #142588 (fixed).
3486         * gst/gstthread.c: (gst_thread_change_state),
3487         (gst_thread_child_state_change):
3488           Don't exit the thread if we go to NULL and are inside thread
3489           context. Instead, return control to the main thread context
3490           and exit from there.
3491         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3492           Don't unset virtual functions, since those may still be used.
3493           That's not necessarily correct, but suffices for now.
3494         * configure.ac:
3495         * testsuite/Makefile.am:
3496         * testsuite/pad/Makefile.am:
3497         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3498         (gst_test_sink_base_init), (gst_test_sink_chain),
3499         (gst_test_sink_init), (main):
3500         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3501         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3502         (main):
3503         * testsuite/pad/link.c: (gst_test_element_class_init),
3504         (gst_test_element_base_init), (gst_test_src_get),
3505         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3506         (gst_test_filter_loop), (gst_test_filter_init),
3507         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3508         (cb_error), (main):
3509           Add tests to show #150546. Pass, but should fail (currently
3510           disabled from the testsuite).
3511         * gst/gstscheduler.c: (gst_scheduler_dispose):
3512           Dereference child schedulers on dispose (#94464).
3513         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3514           Fix typo.
3515         * testsuite/threads/thread.c: (main):
3516           Add more debug.
3517
3518 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3519
3520         * gst/gstpad.c: (gst_pad_push):
3521           Oops, revert previous commit, broke testsuite...
3522
3523 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3524
3525         * gst/gstpad.c: (gst_pad_push):
3526           Add check that the pad on which the push is performed is not a
3527           get-based pad (#150546).
3528
3529 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3530
3531         * gst/elements/gsttypefindelement.c:
3532         (gst_type_find_element_handle_event):
3533           Fix buffer pushing if stream EOSes during typefinding.
3534
3535 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3536
3537         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3538
3539         * gst/gstvalue.c: (gst_string_wrap):
3540           Allow NULL-strings as argument (#165365).
3541
3542 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3543
3544         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3545
3546         * gst/schedulers/faircothreads.c:
3547         (gst_fair_scheduler_cothread_queue_show):
3548           Fix build without debug enabled.
3549
3550 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3551
3552         * docs/gst/gstreamer-sections.txt:
3553         * docs/libs/gstreamer-libs-docs.sgml:
3554         * docs/libs/gstreamer-libs-sections.txt:
3555         * docs/libs/tmpl/gstcontrol.sgml:
3556         * docs/libs/tmpl/gstdparam.sgml:
3557         * docs/libs/tmpl/gstdplinint.sgml:
3558         * docs/libs/tmpl/gstdpman.sgml:
3559         * docs/libs/tmpl/gstdpsmooth.sgml:
3560         * docs/libs/tmpl/gstputbits.sgml:
3561         * docs/libs/tmpl/gstunitconvert.sgml:
3562         * libs/gst/control/dparam.c:
3563         * libs/gst/control/dparam.h:
3564         * libs/gst/control/dparammanager.c:
3565         (gst_dpman_add_required_dparam_callback),
3566         (gst_dpman_add_required_dparam_direct),
3567         (gst_dpman_add_required_dparam_array),
3568         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3569         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3570         (gst_dpman_get_manager)
3571           restructured DParam docs
3572
3573 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3574
3575         * gst-element-check.m4:
3576           Only check for gst-inspect if we haven't already
3577           found it in previous element check runs
3578
3579 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3580
3581         * docs/gst/Makefile.am:
3582         * docs/libs/Makefile.am:
3583           fixed install rules to treat style.css as optional
3584
3585 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3586
3587         * docs/gst/Makefile.am:
3588         * docs/libs/Makefile.am:
3589           install style.css along with docs
3590         * docs/gst/tmpl/gstbin.sgml:
3591         * docs/gst/tmpl/gstclock.sgml:
3592         * docs/gst/tmpl/gstdata.sgml:
3593         * docs/gst/tmpl/gstelement.sgml:
3594         * gst/gstbin.h:
3595         * gst/gstelement.c: (gst_element_class_init):
3596         * gst/gstelement.h:
3597           fixing incomplete docs
3598
3599 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3600
3601         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3602           Don't unref seek event twice when fflush() fails
3603           
3604 2005-01-22  David Schleef  <ds@schleef.org>
3605
3606         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3607
3608 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3609
3610         * docs/gst/Makefile.am:
3611         * docs/libs/Makefile.am:
3612           added params for deprecation guards
3613         * gst/gst.c:
3614         * gst/gst.h:
3615         * gst/gsterror.c: (_gst_resource_errors_init),
3616         (_gst_stream_errors_init):
3617         * gst/gsterror.h:
3618           documented some more enums
3619
3620 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3621         * gst/autoplug/gstspideridentity.c:
3622         Cosmetic fix - spider_find_peek should be static
3623         * gst/parse/parse.l:
3624         Applying fix for #164261
3625
3626 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3627
3628         * docs/gst/gstreamer-sections.txt:
3629         * docs/gst/tmpl/gstplugin.sgml:
3630         * docs/libs/gstreamer-libs-sections.txt:
3631         * docs/libs/tmpl/gstcontrol.sgml:
3632         * gst/gstbuffer.h:
3633         * gst/gsttag.h:
3634         * gst/gstvalue.c:
3635           added docs for the TAG defines
3636
3637 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3638
3639         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3640           Only unref entry if there is an entry.
3641
3642 2005-01-17  Wim Taymans  <wim@fluendo.com>
3643
3644         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3645         (remove_from_group), (schedule_group), (normalize_group),
3646         (gst_opt_scheduler_iterate):
3647         Also ref/unref decoupled elements before iterating the
3648         group since they are not added to the list of elements.
3649
3650 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3651
3652         * docs/manual/highlevel-components.xml:
3653           Add subtitle/streamselection as new features to playbin.
3654
3655 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3656
3657         * docs/manual/manual.xml:
3658           Re-enable dataaccess docs (oops).
3659
3660 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3661
3662         * docs/pwg/advanced-types.xml:
3663         * docs/random/mimetypes:
3664           Add documentation on libsndfile types (#163309), by Steve Baker
3665           <steve@stevebaker.org>.
3666         * gst/gstelement.c: (gst_element_release_request_pad):
3667           If an element has no explicit function, just remove the pad.
3668
3669 2005-01-17  Luca Ognibene  <luogni@tin.it>
3670
3671         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3672
3673         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3674           Fix memleak (#163801).
3675
3676 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3677
3678         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3679           I think this is actually more correct...
3680
3681 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3682
3683         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3684           Another workaround for memory access while destroyed in callback.
3685           Please, someone with refcount knowledge, have a look at this.
3686
3687 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3688
3689         * docs/faq/faq.xml:
3690         * docs/faq/legal.xml:
3691           move the legal Q&A here
3692
3693 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3694
3695         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3696         (gst_tee_request_new_pad):
3697           Fix negotiation.
3698
3699 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3700
3701         * docs/random/omega/caps2:
3702         * testsuite/caps/caps_strings:
3703           replace framerate aproximations by their real value
3704           (24000/1001, 30000/1001, 60000/1001)
3705           Partially fixes bug #164049
3706
3707 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3708
3709         * docs/gst/Makefile.am:
3710           don't fail on the stupid GstPoptOption
3711
3712 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3713
3714         * gst/gstpad.h:
3715         * gst/gstprobe.c:
3716           allow probes to work on ghost pads by realizing the pad
3717           probe debugging
3718
3719 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3720
3721         * docs/gst/gstreamer-sections.txt:
3722         * docs/gst/tmpl/gstpad.sgml:
3723         * gst/gstpad.c: (gst_pad_set_active_recursive):
3724         * gst/gstpad.h:
3725           Add gst_pad_set_active_recursive().
3726
3727 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3728
3729         * docs/random/release:
3730           updates
3731         * gst/gst_private.h:
3732         * gst/gstinfo.c:
3733         * gst/gstobject.c:
3734           move deep_notify logging to a new category
3735         * gst/gstprobe.c:
3736         * gst/gstprobe.h:
3737           add stuff so bindings can wrap probes
3738
3739 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3740
3741         * gst/gstplugin.c: (gst_plugin_load):
3742           Fix plugin loading if plugin/lib was already loaded. Fixes
3743           #163383
3744
3745 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3746
3747         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3748
3749         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3750           Protect plugin loading by a mutex so it's threadsafe. Fixes
3751           #163234.
3752
3753 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3754
3755         * gst/gstevent.c: (_gst_event_copy):
3756           Reference source object when copying events, since it'll be
3757           dereferenced on event dereferencing as well.
3758
3759 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3760
3761         * docs/gst/gstreamer-sections.txt:
3762         * docs/gst/tmpl/gstevent.sgml:
3763         * gst/gstevent.c: (gst_event_new_filler_stamped),
3764         (gst_event_filler_get_duration):
3765         * gst/gstevent.h:
3766           Add two new functions for filler events (which are used to
3767           synchronize streams if one of them is not having any data
3768           for a while) without interrupting the actual data-stream.
3769           Basically a no-op.
3770         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3771         (gst_queue_link_sink), (gst_queue_link_src),
3772         (gst_queue_change_state):
3773           Allow for renegotiation while filled. Required for stream
3774           switching while playing.
3775
3776 2005-01-08  Benjamin Otte  <otte@gnome.org>
3777
3778         * gst/gstelement.c: (gst_element_link_many):
3779           fix up g_return_if_fail's
3780         * po/LINGUAS:
3781         * po/de.po:
3782           add German translation, that was somehow not included
3783
3784 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3785
3786         * docs/random/mimetypes:
3787           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3788           do not add them to riff-lib as they are not common
3789
3790 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3791
3792         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3793           Check for existence of probe after performing the probe before
3794           re-accessing it to prevent segfaults caused by removal of the
3795           probe in the callback.
3796
3797 2005-01-05  David Schleef  <ds@schleef.org>
3798
3799         * testsuite/registry/Makefile.am:
3800         * testsuite/registry/gst-print-formats.c:
3801         (print_pad_templates_info), (print_element_list),
3802         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3803         (g_list_uniqify), (get_pad_templates_info),
3804         (get_element_mime_list), (print_mime_list), (main): A little
3805         program that looks through the registry to find elements of
3806         a given type.  Not particularly interesting as a test, except
3807         that there's no other test covering the same area.
3808
3809 2005-01-05  David Schleef  <ds@schleef.org>
3810
3811         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3812         (fault_handler_sigaction), (fault_spin),
3813         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3814         in signal.h-type signal handlers by not calling forbidden functions,
3815         including gst_element_set_state().
3816
3817 2005-01-05  David Schleef  <ds@schleef.org>
3818
3819         * gst/gstvalue.h: Mark _gst_reserved[] as private
3820
3821 2005-01-05  David Schleef  <ds@schleef.org>
3822
3823         * gst/gstvalue.c: Fix doc build problem.
3824
3825 2005-01-05  David Schleef  <ds@schleef.org>
3826
3827         * gst/gstvalue.c: Add some documentation
3828
3829 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3830
3831         * docs/README:
3832           another shell oneliner for empty return value docs
3833         * gst/gstcaps.c:
3834         * gst/gstvalue.c:
3835         * libs/gst/control/dparam.c:
3836           more doc fixes (parameters and return values)
3837
3838 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3839
3840         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3841
3842         * gst/gstregistry.h:
3843         * gst/registries/gstxmlregistry.c:
3844           Fix macro's for Mingw (fixes #162276).
3845
3846 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3847
3848         * docs/README:
3849           quick shell oneliner to find undocumented members
3850         * docs/gst/tmpl/gstplugin.sgml:
3851         * docs/gst/tmpl/gstscheduler.sgml:
3852         * docs/gst/tmpl/gstthread.sgml:
3853           more enumtypes cleanup
3854         * gst/gsterror.h:
3855           activated documentation comments, now someone needs to document
3856           the enums :(
3857
3858 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3859
3860         * docs/manual/manual.xml:
3861           Add dataaccess part (doh!).
3862
3863 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3864
3865         * docs/manual/advanced-autoplugging.xml:
3866           Fix typo (intiate -> initiate).
3867
3868 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3869
3870         * docs/random/bbb/streamselection:
3871           Add some notes on how to handle multi-subtitle/-audio streams.
3872
3873 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3874
3875         * docs/gst/gstreamer-docs.sgml:
3876         * docs/gst/gstreamer-sections.txt:
3877         * docs/gst/tmpl/gstenumtypes.sgml:
3878         * docs/gst/tmpl/gsterror.sgml:
3879         * docs/gst/tmpl/gstevent.sgml:
3880         * docs/gst/tmpl/gstpad.sgml:
3881         * docs/gst/tmpl/gstpadtemplate.sgml:
3882         * docs/gst/tmpl/gstthread.sgml:
3883           removed gstenumtypes section from docs and put all the enums into
3884           their sections
3885
3886 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3887
3888         * gst/gstplugin.c:
3889           document gst_library_load a bit more (riff special case + return
3890           value if already loaded)
3891         * testsuite/bytestream/filepadsink.c:
3892           plugin name is 'gstbytestream', not 'bytestream'
3893
3894 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3895
3896         * docs/random/bbb/subtitles:
3897           Add some first mind rumblings on proper subtitle support.
3898
3899 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3900
3901         * po/ca.po:
3902         * po/sv.po:
3903           updated translations
3904
3905 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3906
3907         * docs/manual/advanced-dataaccess.xml:
3908           Add section on how to use fakesrc/fakesink/identity in your
3909           application, plus section on how to embed plugins. Also mention
3910           probes.
3911         * docs/manual/appendix-checklist.xml:
3912         * docs/manual/appendix-debugging.xml:
3913         * docs/manual/appendix-gnome.xml:
3914         * docs/manual/appendix-integration.xml:
3915           Debug -> checklist, GNOME -> integration, add sections on Linux,
3916           KDE integration and add other things useful for application
3917           development.
3918         * docs/manual/manual.xml:
3919           Remove some fixmes, update some file pointers.
3920         * docs/pwg/appendix-checklist.xml:
3921           Fix typo.
3922         * docs/pwg/building-boiler.xml:
3923           Remove ugly header and add commented fixme.
3924         * docs/pwg/pwg.xml:
3925           Add fixme.
3926         * examples/manual/Makefile.am:
3927           Add example for added docs.
3928
3929 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3930
3931         * configure.ac:
3932           back to HEAD
3933
3934 === release 0.8.8 ===
3935
3936 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3937
3938         * NEWS:
3939         * RELEASE:
3940         * configure.ac:
3941           Releasing 0.8.8, "I'll Take Care Of You"
3942
3943 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3944
3945         * configure.ac:
3946           second prerelease
3947
3948 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3949
3950         patch by: Wim Taymans
3951
3952         * gst/gstbin.c:
3953           Fix for #159852 - make iterate emission threadsafe
3954
3955 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3956
3957         * docs/faq/cvs.xml:
3958           notes about new fdo account request
3959
3960 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3961
3962         * docs/gst/gstreamer-docs.sgml:
3963         * docs/gst/tmpl/gstenumtypes.sgml:
3964         * docs/gst/tmpl/gstplugin.sgml:
3965         * docs/libs/gstreamer-libs-docs.sgml:
3966           Added missing short docs. Added ids for navigation.
3967
3968 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3969
3970         * docs/manual/advanced-autoplugging.xml:
3971         * docs/manual/advanced-schedulers.xml:
3972         * docs/manual/advanced-threads.xml:
3973           Rewrites. Remove cothreads, go a bit into opt specifically,
3974           document threads and their gotchas, and do some technical stuff
3975           on autoplugging plus add some working examples. Fixes #157395.
3976         * examples/manual/Makefile.am:
3977           Add typefind/autoplugger example (one that actually works).
3978           Remove queue example since it's a duplicate of the thread one.
3979
3980 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3981
3982         * gst/gstvalue.c: (gst_value_deserialize_string):
3983           use deprecated g_value_set_string_take_ownership to keep compatible
3984           with glib 2.2
3985
3986 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3987
3988         * gst/gstvalue.c: (gst_value_deserialize_string):
3989           revert last patch, only dom a g_utf8_validate now before accepting
3990           the string - caps parsing strips " from strings so we can't rely on
3991           them
3992         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3993           disable a test that tested the above and comment it
3994
3995 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3996
3997         Patch reviewed by David Schleef  <ds@schleef.org>
3998
3999         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
4000         bug #153882)
4001         * win32/gstenumtypes.h: same
4002
4003 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4004
4005         * gst/gstpad.c: (gst_pad_query):
4006           Do query on realized pad, similar to how convert/send_event handle
4007           this. Also makes sense, since this pad belongs to the function to
4008           which this query will be sent. Fixes #158163.
4009
4010 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
4011
4012         * docs/manual/appendix-programs.xml: fix pipeline to actually work
4013
4014 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4015
4016         * docs/faq/general.xml: fix pipeline to actually work
4017
4018 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4019
4020         * gst/gstvalue.c: (gst_value_deserialize_string):
4021           check that a simple string that gets deserialized does not contain
4022           invalid characters
4023         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4024           remove a test that tested a wring behaviour
4025
4026 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
4027
4028         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4029
4030         * docs/manual/intro-motivation.xml:
4031           Fix typos.
4032
4033 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4034
4035         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4036
4037         * docs/gst/tmpl/gstprobe.sgml:
4038           Fix documentation of probe callback - it is supposed to return
4039           FALSE, not TRUE, to remove data from the stream (#159087).
4040
4041 2004-12-16  Daniel Gazard  <dany42@free.fr>
4042
4043         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4044
4045         * gst/gstelementfactory.c: (gst_element_factory_create):
4046           Fix compile failure if compiling without libxml2 support (#149936).
4047
4048 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4049
4050         * docs/manual/advanced-autoplugging.xml:
4051         * docs/manual/highlevel-components.xml:
4052           Move spider from autoplugging to components. Autoplugging is for
4053           internals, not for solutions. ;-).
4054
4055 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4056
4057         * docs/random/ds/0.9-suggested-changes:
4058           Make note on device/location/uri property names.
4059
4060 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4061
4062         * docs/manual/advanced-autoplugging.xml:
4063         * docs/manual/advanced-clocks.xml:
4064         * docs/manual/advanced-interfaces.xml:
4065         * docs/manual/advanced-metadata.xml:
4066         * docs/manual/advanced-position.xml:
4067         * docs/manual/advanced-schedulers.xml:
4068         * docs/manual/advanced-threads.xml:
4069         * docs/manual/appendix-gnome.xml:
4070         * docs/manual/appendix-programs.xml:
4071         * docs/manual/appendix-quotes.xml:
4072         * docs/manual/autoplugging.xml:
4073         * docs/manual/basics-bins.xml:
4074         * docs/manual/basics-data.xml:
4075         * docs/manual/basics-elements.xml:
4076         * docs/manual/basics-helloworld.xml:
4077         * docs/manual/basics-init.xml:
4078         * docs/manual/basics-pads.xml:
4079         * docs/manual/basics-plugins.xml:
4080         * docs/manual/bins-api.xml:
4081         * docs/manual/bins.xml:
4082         * docs/manual/buffers-api.xml:
4083         * docs/manual/buffers.xml:
4084         * docs/manual/clocks.xml:
4085         * docs/manual/components.xml:
4086         * docs/manual/cothreads.xml:
4087         * docs/manual/debugging.xml:
4088         * docs/manual/dparams-app.xml:
4089         * docs/manual/dynamic.xml:
4090         * docs/manual/elements-api.xml:
4091         * docs/manual/elements.xml:
4092         * docs/manual/factories.xml:
4093         * docs/manual/gnome.xml:
4094         * docs/manual/goals.xml:
4095         * docs/manual/helloworld.xml:
4096         * docs/manual/helloworld2.xml:
4097         * docs/manual/highlevel-components.xml:
4098         * docs/manual/highlevel-xml.xml:
4099         * docs/manual/init-api.xml:
4100         * docs/manual/intro-basics.xml:
4101         * docs/manual/intro-motivation.xml:
4102         * docs/manual/intro-preface.xml:
4103         * docs/manual/intro.xml:
4104         * docs/manual/links-api.xml:
4105         * docs/manual/links.xml:
4106         * docs/manual/manual.xml:
4107         * docs/manual/motivation.xml:
4108         * docs/manual/pads-api.xml:
4109         * docs/manual/pads.xml:
4110         * docs/manual/plugins-api.xml:
4111         * docs/manual/plugins.xml:
4112         * docs/manual/programs.xml:
4113         * docs/manual/queues.xml:
4114         * docs/manual/quotes.xml:
4115         * docs/manual/schedulers.xml:
4116         * docs/manual/states-api.xml:
4117         * docs/manual/states.xml:
4118         * docs/manual/threads.xml:
4119         * docs/manual/typedetection.xml:
4120         * docs/manual/win32.xml:
4121         * docs/manual/xml.xml:
4122           Try 2. This time, include a short preface as a "general
4123           introduction", also add code blocks around all code samples
4124           so they get compiled. We still need a way to tell readers
4125           the filename of the code sample. In some cases, don't show
4126           all code in the documentation, but do include it in the generated
4127           code. This allows for focussing on specific bits in the docs,
4128           while still having a full test application available.
4129         * examples/manual/Makefile.am:
4130           Fix up examples for new ADM. Add several of the new examples that
4131           were either added or were missing from the build system.
4132         * examples/manual/extract.pl:
4133           Allow nameless blocks.
4134
4135 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4136
4137         * docs/manual/elements-api.xml:
4138         * docs/manual/helloworld.xml:
4139         * examples/manual/extract.pl:
4140           fix last example.  Add example of adding code blocks that are not
4141           shown in docbook output.
4142
4143 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4144
4145         * docs/manual/dynamic.xml:
4146         * docs/manual/elements-api.xml:
4147         * docs/manual/gnome.xml:
4148         * docs/manual/helloworld2.xml:
4149         * docs/manual/init-api.xml:
4150         * docs/manual/queues.xml:
4151         * docs/manual/threads.xml:
4152         * docs/manual/xml.xml:
4153         * examples/manual/extract.pl:
4154           Make it possible to extract example code from separate blocks.
4155           Should make Ronald happy.
4156
4157 2004-12-15  Wim Taymans  <wim@fluendo.com>
4158
4159         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4160         (remove_from_group), (group_elements_set_visited),
4161         (normalize_group), (gst_opt_scheduler_iterate):
4162         Fix bug where a flag was not updated on a decoupled entry point 
4163         because we were just checking the group element list and decoupled
4164         elements are not in that list..
4165
4166 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4167
4168         * docs/manual/advanced-autoplugging.xml:
4169         * docs/manual/advanced-clocks.xml:
4170         * docs/manual/advanced-dparams.xml:
4171         * docs/manual/advanced-interfaces.xml:
4172         * docs/manual/advanced-metadata.xml:
4173         * docs/manual/advanced-position.xml:
4174         * docs/manual/advanced-schedulers.xml:
4175         * docs/manual/advanced-threads.xml:
4176         * docs/manual/appendix-debugging.xml:
4177         * docs/manual/appendix-gnome.xml:
4178         * docs/manual/appendix-programs.xml:
4179         * docs/manual/appendix-quotes.xml:
4180         * docs/manual/appendix-win32.xml:
4181         * docs/manual/autoplugging.xml:
4182         * docs/manual/basics-bins.xml:
4183         * docs/manual/basics-data.xml:
4184         * docs/manual/basics-elements.xml:
4185         * docs/manual/basics-helloworld.xml:
4186         * docs/manual/basics-init.xml:
4187         * docs/manual/basics-pads.xml:
4188         * docs/manual/basics-plugins.xml:
4189         * docs/manual/bins-api.xml:
4190         * docs/manual/bins.xml:
4191         * docs/manual/buffers-api.xml:
4192         * docs/manual/buffers.xml:
4193         * docs/manual/clocks.xml:
4194         * docs/manual/components.xml:
4195         * docs/manual/cothreads.xml:
4196         * docs/manual/debugging.xml:
4197         * docs/manual/dparams-app.xml:
4198         * docs/manual/dynamic.xml:
4199         * docs/manual/elements-api.xml:
4200         * docs/manual/elements.xml:
4201         * docs/manual/factories.xml:
4202         * docs/manual/gnome.xml:
4203         * docs/manual/goals.xml:
4204         * docs/manual/helloworld.xml:
4205         * docs/manual/helloworld2.xml:
4206         * docs/manual/highlevel-components.xml:
4207         * docs/manual/highlevel-xml.xml:
4208         * docs/manual/init-api.xml:
4209         * docs/manual/intro-motivation.xml:
4210         * docs/manual/intro-preface.xml:
4211         * docs/manual/intro.xml:
4212         * docs/manual/links-api.xml:
4213         * docs/manual/links.xml:
4214         * docs/manual/manual.xml:
4215         * docs/manual/motivation.xml:
4216         * docs/manual/pads-api.xml:
4217         * docs/manual/pads.xml:
4218         * docs/manual/plugins-api.xml:
4219         * docs/manual/plugins.xml:
4220         * docs/manual/programs.xml:
4221         * docs/manual/queues.xml:
4222         * docs/manual/quotes.xml:
4223         * docs/manual/schedulers.xml:
4224         * docs/manual/states-api.xml:
4225         * docs/manual/states.xml:
4226         * docs/manual/threads.xml:
4227         * docs/manual/typedetection.xml:
4228         * docs/manual/win32.xml:
4229         * docs/manual/xml.xml:
4230           First try at rewriting the ADM. Needs lotsamore work, but some
4231           parts might already be somewhat useful.
4232         * docs/pwg/advanced-interfaces.xml:
4233           Remove properties interface, it never actually existed (except for
4234           on my HD...).
4235
4236 2004-12-13  David Schleef  <ds@schleef.org>
4237
4238         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
4239         be NULL (bug #160220).
4240
4241 2004-12-13  David Schleef  <ds@schleef.org>
4242
4243         * configure.ac: remove all mmx stuff, because it's not used.
4244         * docs/random/ds/0.9-suggested-changes: additional notes
4245         * include/Makefile.am: we don't use these anymore
4246         * include/mmx.h: remove
4247         * include/sse.h: remove
4248
4249 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4250
4251         * docs/random/mimetypes:
4252           Add FOURCC code for h264 codec (VSSH)
4253           Add alternate FOURCC codes for h263 related codecs
4254
4255 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
4256
4257         * docs/manual/programs.xml:
4258           Added more gst-launch examples.
4259
4260 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4261
4262         * gst/gstqueue.c: (gst_queue_handle_src_query):
4263           Check for availability again.
4264
4265 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4266
4267         * gst/gstcaps.c: (gst_caps_compare_structures):
4268           Simple caps go first. This has the nice side-effect of fixing an
4269           obscure warning.
4270
4271 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4272
4273         * gst/gstversion.h.in:
4274           Protect header.
4275
4276 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4277
4278         * gst/schedulers/gstoptimalscheduler.c:
4279         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4280         (gst_opt_scheduler_get_wrapper):
4281           When we're recursing into a chain run, only run the directly
4282           related group, not all queued ones. This will fix a possible
4283           deadlock in chains with more than two groups.
4284
4285 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4286
4287         * autogen.sh:
4288           remove patch if autopoint fails
4289
4290 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4291
4292         * docs/gst/gstreamer-sections.txt:
4293           Document Thomas' addition, fix build, make Luis the sheriff happy.
4294
4295 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4296
4297         * gst/gstplugin.c:
4298         * gst/gstplugin.h:
4299           add accessor for version field
4300
4301 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4302
4303         submitted by: Luca Ferretti <elle.uca@infinito.it>
4304
4305         * po/LINGUAS:
4306         * po/it.po:
4307           New tranlation added: Italian
4308
4309 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4310
4311         * gst/gstpad.c: (gst_pad_is_negotiated),
4312         (gst_pad_get_negotiated_caps):
4313           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4314           it doesn't actually check the contents), so be sure to hand it
4315           a RealPad else we'll crash.
4316
4317 2004-12-03  Wim Taymans  <wim@fluendo.com>
4318
4319         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4320         (gst_queue_link), (gst_queue_handle_src_query):
4321         Reverted to 1.110 until this makes the testsuite and various
4322         apps work.
4323
4324 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4325
4326         * docs/upload.mak: fix included CVS conflict strings
4327
4328 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4329
4330         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4331
4332         * gst/gstelement.c: (gst_element_error_full):
4333           Use g_error_new_literal because error text may have
4334           percentage signs in it. Fixes #160019.
4335
4336 2004-12-01  Benjamin Otte  <otte@gnome.org>
4337
4338         * gst/elements/gstbufferstore.c:
4339         (gst_buffer_store_add_buffer_func):
4340           don't try to make subbuffers bigger than they can be. (fixes
4341           #159970)
4342
4343 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4344
4345         * docs/gst/gstreamer-sections.txt:
4346         * docs/gst/tmpl/gstvalue.sgml:
4347           Add new function to docs to fix build.
4348
4349 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4350
4351         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4352         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4353         (_gst_pad_default_fixate_foreach):
4354         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4355         * gst/gstvalue.h:
4356           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4357           in some cases (arrays), the fixedness depends on the content.
4358         * gst/gstqueue.c: (gst_queue_handle_src_query):
4359           Check for availability before doing something.
4360
4361 2004-11-29  Wim Taymans  <wim@fluendo.com>
4362
4363         * testsuite/threads/Makefile.am:
4364         * testsuite/threads/signals.c: (gst_test_get_type),
4365         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4366         (gst_test_set_property), (gst_test_get_property),
4367         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4368         (gst_test_do_prop), (run_thread), (main):
4369         Added a bunch of testcases that show threadsafety bugs in glib.
4370
4371 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4372
4373         * docs/manual/programs.xml:
4374           Added a first batch of gst-launch examples, as provided by Ronald
4375           and others from the devel-mlist
4376
4377 2004-11-28  Benjamin Otte  <otte@gnome.org>
4378
4379         * gst/gstelement.c: (gst_element_negotiate_pads):
4380           simplify
4381         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4382         (gst_value_serialize_string), (gst_value_deserialize_string):
4383           add unwrapping of previously wrapped strings. Fix bug in wrapping
4384           while at it.
4385         * testsuite/caps/value_serialize.c: (test1),
4386         (test_string_serialization), (test_string_deserialization), (main):
4387           add tests for string (de)serialization
4388
4389 2004-11-26  Wim Taymans  <wim@fluendo.com>
4390
4391         * testsuite/threads/159566.c: (object_deep_notify), (main):
4392         * testsuite/threads/Makefile.am:
4393         Added testsuite to show bug #159566
4394
4395 2004-11-25  Wim Taymans  <wim@fluendo.com>
4396
4397         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4398         (gst_thread_child_state_change), (gst_thread_main_loop):
4399         Ref the thread object in the GThread mainloop. Break out of the
4400         thread mainloop if it holds the last ref. This properly exits
4401         the threads when disposing the thread from its own context. It
4402         also avoids possible deadlocks in the dispose function.
4403
4404 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4405
4406         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4407         it is necessary to wait.
4408
4409 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4410
4411         * docs/pwg/building-boiler.xml:
4412           Make description somewhat clearer.
4413
4414 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4415
4416         * docs/upload.mak:
4417           Apparently docs changed location on FDO's server.
4418
4419 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4420
4421         * docs/pwg/appendix-checklist.xml:
4422           Add some random notes on things to check when writing an element.
4423           This list can be extended as people see fit.
4424
4425 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4426
4427         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4428         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4429         pad. The queue will now wait until it is empty and forward the new
4430         caps to the source.
4431         * gst/gstbin.c (gst_bin_set_element_sched)
4432         (gst_bin_unset_element_sched): Make sure that all elements and
4433         links are registered and unregistered with the scheduler exactly
4434         once. This elaborates on a fix by Benjamin Otte, but
4435         guarantees that decoupled elements are also registered.
4436
4437 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4438
4439         * docs/manual/quotes.xml:
4440           add a quote
4441         * configure.ac:
4442         * gst/gst.c:
4443         * gst/gstinfo.c:
4444           add LIBDIR and move init message higher up so it's at the start
4445
4446 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4447
4448         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4449         * gstreamer.spec.in: add fair
4450
4451 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4452
4453         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4454         * gst/elements/gstidentity.c: (gst_identity_class_init):
4455           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4456           <teuf@gnome.org> (#157263).
4457         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4458         (gst_type_find_handle_src_query):
4459           Subtract size of internally stored data from position queries.
4460
4461 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4462
4463         * gst/schedulers/fairscheduler.c:
4464         * gst/schedulers/faircothreads.c:
4465         * gst/schedulers/faircothreads.h:
4466         New cothread based scheduler: Fair scheduler.
4467         * gst/schedulers/gthread-cothreads.h: 
4468         Add the standard #if around the whole file.
4469         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4470         compilation of the functions defined in this file. This is
4471         necessary to be able to use this file as a normal header.
4472         * gst/schedulers/Makefile.am: Add compiling support for fair
4473         scheduler.
4474         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4475         scheduler cothreads layer from documentation generation.
4476
4477 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4478
4479         * gst/autoplug/gstspideridentity.c:
4480         (gst_spider_identity_sink_loop_type_finding):
4481           Don't crash if that function is not implemented.
4482
4483 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4484
4485         * docs/pwg/advanced-types.xml:
4486           Another typo.
4487
4488 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4489
4490         * docs/pwg/intro-preface.xml:
4491           Hm, ok, so the brackets weren't really useful...
4492         * docs/pwg/other-ntoone.xml:
4493           Fix embarassing typo.
4494
4495 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4496
4497         * docs/pwg/intro-preface.xml:
4498           Rewrite preface.
4499
4500 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4501
4502         * docs/pwg/advanced-scheduling.xml:
4503         * docs/pwg/advanced-tagging.xml:
4504         * docs/pwg/advanced-types.xml:
4505         * docs/pwg/building-boiler.xml:
4506         * docs/pwg/building-chainfn.xml:
4507         * docs/pwg/building-signals.xml:
4508         * docs/pwg/building-state.xml:
4509         * docs/pwg/building-testapp.xml:
4510         * docs/pwg/intro-basics.xml:
4511         * docs/pwg/other-manager.xml:
4512         * docs/pwg/other-source.xml:
4513           Typo fixes.
4514         * docs/pwg/other-manager.xml:
4515           Add some first content. No example code yet.
4516         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4517           Remove double newlines.
4518
4519 2004-11-04  Wim Taymans  <wim@fluendo.com>
4520
4521         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4522         (remove_from_group), (normalize_group), (group_migrate_connected),
4523         (gst_opt_scheduler_iterate):
4524         * testsuite/schedulers/.cvsignore:
4525         * testsuite/schedulers/Makefile.am:
4526         * testsuite/schedulers/queue_link.c: (main):
4527         Added testcase for scheduler segfault.
4528         Fix scheduler segfault when removing a decoupled
4529         entry point as the last element from a group.
4530
4531 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4532
4533         * gst/gstmarshal.list: add missing marshaller, fixes build
4534
4535 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4536
4537         * docs/random/signal: added notes about using BOXED for GstBuffer
4538         signal marshallers, not POINTER
4539
4540 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4541
4542         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4543         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4544         POINTER=>BOXED changes to marshal GstBuffers
4545
4546 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4547
4548         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4549         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4550
4551 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4552
4553         * docs/gst/gstreamer-sections.txt:
4554         * docs/gst/tmpl/gstcaps.sgml:
4555         * docs/gst/tmpl/gsterror.sgml:
4556         * docs/gst/tmpl/gstinfo.sgml:
4557         * docs/gst/tmpl/gstmacros.sgml:
4558         * docs/gst/tmpl/gstutils.sgml:
4559         * docs/random/ensonic/interfaces.txt:
4560         * gst/gstinfo.h:
4561           added some more docs, removed two obsolete defines
4562
4563 2004-11-02  Kjartan Maraas <as at gnome.org>
4564
4565         reviewed by: Wim Taymans, Ronald Bultje.
4566
4567         * gst/cothreads.c: (cothread_create):
4568         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4569         (gst_bin_child_state_change_func):
4570         * gst/gstbuffer.c: (gst_buffer_span):
4571         * gst/gstelement.c: (gst_element_get_index),
4572         (gst_element_get_event_masks), (gst_element_get_query_types),
4573         (gst_element_get_formats):
4574         * gst/gsterror.c: (_gst_core_errors_init),
4575         (_gst_library_errors_init), (_gst_resource_errors_init),
4576         (_gst_stream_errors_init):
4577         * gst/gstobject.c: (gst_object_default_deep_notify):
4578         * gst/gstpad.c: (gst_pad_get_event_masks),
4579         (gst_pad_get_internal_links_default):
4580         * gst/gstplugin.c: (gst_plugin_register_func),
4581         (gst_plugin_get_module):
4582         * gst/gststructure.c: (gst_structure_get_string),
4583         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4584         (gst_structure_to_abbr):
4585         * gst/gstutils.c: (gst_print_element_args):
4586         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4587         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4588         Aplied part of patch #157127: Cleanup of issues reported by 
4589         sparse.
4590         Also do not try to use cothreads when there is no cothread
4591         context yet.
4592
4593 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4594
4595         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4596         (gst_opt_scheduler_iterate):
4597         Applied patch #154061. Running a pipeline in which an element 
4598         calls GST_ELEMENT_ERROR in the chain function, the opt 
4599         scheduler doesn't unref the chain so it never gets freed.
4600
4601 2004-11-02  Wim Taymans  <wim@fluendo.com>
4602
4603         * gst/gststructure.c: (gst_structure_get_abbrs),
4604         (gst_structure_from_abbr), (gst_structure_to_abbr):
4605         Remove that ugly if-then thing in the code that converts
4606         between strings and types.
4607
4608 2004-11-02  Wim Taymans  <wim@fluendo.com>
4609
4610         * gst/gstscheduler.c: (gst_scheduler_add_element),
4611         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4612         Aplied clock distribution patch, this should fix bug
4613         #148787.
4614
4615 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4616
4617         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4618
4619         * po/LINGUAS:
4620         * po/nb.po:
4621           Added Norwegian Bokmaal translation
4622
4623 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4624
4625         * tools/gst-inspect.c: (print_signal_info):
4626           print signal arguments as pointers if they are
4627
4628 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4629
4630         * docs/pwg/building-boiler.xml:
4631           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4632
4633 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4634
4635         * gst/parse/parse.l:
4636         * testsuite/parse/parse1.c: (main):
4637         Since parse can do 'element name=a:b' make 'a:b.' work as
4638         well. 
4639         Added testcase to verify fix.
4640
4641 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4642
4643         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4644         Use the realpad when printing the direction.
4645         Add extra \n when printing extensions of typefind factories.
4646
4647 2004-10-13  David Schleef  <ds@schleef.org>
4648
4649         * examples/manual/Makefile.am: $< isn't portable in Makefile
4650         rules.
4651
4652 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4653
4654         * docs/gst/tmpl/gstobject.sgml:
4655         * docs/gst/tmpl/gstplugin.sgml:
4656         * docs/gst/tmpl/gstpluginfeature.sgml:
4657         * docs/gst/tmpl/gstregistry.sgml:
4658         * docs/gst/tmpl/gstversion.sgml:
4659         * gst/gstbin.c:
4660           more api documentation
4661         * gst/gstplugin.c: (gst_plugin_register_func),
4662         (gst_plugin_check_file), (gst_plugin_load_file):
4663           better error signaling and logging
4664
4665 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4666
4667         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4668           Subtract current queue contents from position queries.
4669
4670 2004-10-11  Johan Dahlin  <johan@gnome.org>
4671
4672         * gst/gsturi.c (gst_uri_get_location): unescape string
4673         (gst_uri_construct): escape string.
4674
4675 2004-10-11  Benjamin Otte  <otte@gnome.org>
4676
4677         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4678         (gst_pad_try_set_caps_nonfixed):
4679           allow renegotiation of unconnected pads (as inside spider). Simply
4680           return OK if unconnected - mimic try_set_caps there.
4681
4682 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4683
4684         * gst/gstbin.c: (gst_bin_sync_children_state):
4685           Add missing break.
4686
4687 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4688
4689         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4690         Set element to EOS before sending EOS event
4691
4692 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4693
4694         * gst/elements/gsttypefindelement.c:
4695         (gst_type_find_element_handle_event):
4696         Handle EOS events when doing the transition from
4697         typefind to data passing. This should fix the
4698         infinite loops in short files.
4699
4700 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4701
4702         * gst/gstthread.c: (gst_thread_change_state),
4703         (gst_thread_child_state_change):
4704         Make sure no iteration happens while performing
4705         the state change as it could mess up the internal
4706         consistency of the thread state.
4707
4708 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4709
4710         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4711         (gst_thread_change_state), (gst_thread_child_state_change):
4712         Do not try to grab the iterate lock in the state change method
4713         when we are in the same thread as the iterate or else we
4714         could deadlock. Some other cleanups.
4715
4716 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4717
4718         * configure.ac:
4719           bump nano to cvs
4720
4721 === release 0.8.7 ===
4722
4723 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4724
4725         * configure.ac:
4726         * NEWS:
4727         * RELEASE:
4728         * configure.ac:
4729           releasing 0.8.7, "A Cruise"
4730
4731 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4732
4733         * docs/random/mimetypes:
4734         Add an entry for Sony ATRAC3 audio format with mime-type
4735         used by rmdemux et riff-read
4736
4737 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4738
4739         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4740         Push the buffer store instead of clearing it in case that
4741         the stream is not seekable.
4742
4743 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4744
4745         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4746         (gst_thread_main_loop):
4747         Lock the iteration and the state change so that automatic
4748         negotiation and fixation does not happen at the same time
4749         as the in stream negotiation.
4750
4751 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4752
4753         * configure.ac:
4754           bump nano to cvs
4755
4756 === release 0.8.6 ===
4757
4758 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4759
4760         * configure.ac:
4761         * NEWS:
4762         * RELEASE:
4763         * configure.ac:
4764           releasing 0.8.6, "Narc"
4765
4766 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4767
4768         * configure.ac:
4769           prerel bump
4770
4771 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4772
4773         patch by: Steve Lhomme
4774
4775         * gst/elements/gstfakesrc.c:
4776         * gst/elements/gstidentity.c:
4777         * gst/gstthread.c:
4778           Fix for #153881
4779
4780 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4781
4782         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4783         Fix threadsafety of the crc checking function.
4784
4785 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4786
4787         patch by: Ronald Bultje
4788
4789         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4790         (gst_type_find_element_handle_event),
4791         (gst_type_find_element_chain):
4792         * gst/elements/gsttypefindelement.h:
4793          #153657.
4794          Filter out discont event from seekable sources when typefind
4795          asks them to seek.  Fixes typefind with demuxers for
4796          avi, asf and matroska.
4797
4798 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4799
4800         * docs/gst/gstreamer-sections.txt:
4801         * gst/gstcaps.c:
4802         * gst/gstcaps.h:
4803         * gst/gstpad.c:
4804           Revert preferred caps: (#147789)
4805
4806 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4807
4808         * win32/dirent.c:
4809           fix a memory leak
4810
4811 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4812
4813         * configure.ac:
4814           bump for prerelease
4815
4816 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4817
4818         * docs/Makefile.am:
4819         * docs/manual/elements-api.xml:
4820           restructure so that common stuff is shown first
4821         * docs/manual/init-api.xml:
4822           convert to examples
4823         * docs/manual/manual.xml:
4824         * docs/manuals.mak:
4825         * docs/url.entities:
4826           link to API on the website, possibly override later in build
4827         * examples/manual/.cvsignore:
4828           ignore more
4829         * examples/manual/Makefile.am:
4830           add more examples
4831         * examples/manual/extract.pl:
4832           error out on failure
4833
4834 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4835
4836         * docs/gst/tmpl/gstthread.sgml:
4837         * docs/manual/init-api.xml:
4838         * examples/manual/Makefile.am:
4839           convert two code bits to examples
4840
4841 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4842
4843         * gst/gstelement.c: (gst_element_change_state):
4844           Well, actually, I was about to remove this insane assert when
4845           I noticed Wim already did that. A warning is nice so we can
4846           fix actual ugs (using --g-fatal-warnings and backtraces), so
4847           I added that instead.
4848
4849 2004-09-06  Wim Taymans  <wim@fluendo.com>
4850
4851         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4852         (gst_element_threadsafe_properties_post_run),
4853         (gst_element_set_state), (gst_element_change_state):
4854         Added extra refcounting around various places. 
4855
4856 2004-09-06  Wim Taymans  <wim@fluendo.com>
4857
4858         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4859         Fix debug info.
4860
4861 2004-09-06  Wim Taymans  <wim@fluendo.com>
4862
4863         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4864         (remove_from_group):
4865         Some more debug info.
4866
4867 2004-09-03  Wim Taymans  <wim@fluendo.com>
4868
4869         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4870         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4871         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4872         (gst_fakesrc_get), (gst_fakesrc_change_state):
4873         * gst/elements/gstfakesrc.h:
4874         * gst/elements/gstidentity.c: (gst_identity_class_init),
4875         (gst_identity_init), (gst_identity_chain),
4876         (gst_identity_set_property), (gst_identity_get_property),
4877         (gst_identity_change_state):
4878         * gst/elements/gstidentity.h:
4879         Added datarate properties to limit the datarate.
4880
4881 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4882
4883         * gst/autoplug/gstspider.c: (plugin_init):
4884           don't set a rank. We don't want to autoplug by inserting spiders.
4885
4886 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4887
4888         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4889         (gst_spider_identity_plug):
4890           add a template for spider's sink
4891         * gst/gst.c: (gst_register_core_elements):
4892           queue's rank should be NULL, we don't want spider to add it.
4893
4894 2004-08-18  David Schleef  <ds@schleef.org>
4895
4896         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4897         * docs/libs/Makefile.am: same
4898         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4899         * docs/random/ds/0.9-planning: random additions
4900         * docs/random/ds/0.9-suggested-changes: same
4901         * gst/gstxml.h: remove vestigal GstXMLNs definition
4902
4903         Preferred caps: (#147789)
4904         * docs/gst/gstreamer-sections.txt: Add symbols
4905         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4906         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4907         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4908         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4909         (gst_caps_get_preferred), (gst_caps_set_preferred),
4910         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4911         (gst_caps_use_preferred): Handle caps preferences
4912         * gst/gstcaps.h: Add caps preferences
4913         * gst/gstpad.c: (gst_pad_link_get_preferred),
4914         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4915         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4916         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4917         negotiation.
4918
4919 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4920
4921         * gst/autoplug/gstspideridentity.c:
4922         (gst_spider_identity_request_new_pad):
4923         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4924         (gst_aggregator_init):
4925         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4926         (gst_fakesink_init):
4927         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4928         (gst_fakesrc_init):
4929         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4930         (gst_fdsink_init):
4931         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4932         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4933         (gst_filesink_init):
4934         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4935         (gst_filesrc_init):
4936         * gst/elements/gstidentity.c: (gst_identity_base_init),
4937         (gst_identity_init):
4938         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4939         (gst_multifilesrc_init):
4940         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4941         (gst_pipefilter_init):
4942         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4943         (gst_statistics_init):
4944         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4945         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4946           s/gst_pad_new/&_from_template/
4947           register pad templates in the base_init function
4948           add static pad template definitions
4949
4950 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4951
4952         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4953         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4954         * testsuite/refcounting/pad.c: (main):
4955         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4956           s/gst_pad_new/&_from_template/
4957           prepare deprecation of gst_pad_new
4958
4959 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4960
4961         patch by: Luca Ognibene <skaboy81@virgilio.it>
4962
4963         * gst/gstcaps.c:
4964         * gst/gstelement.c:
4965         * gst/gstpad.c:
4966         * gst/gstxml.c:
4967           fix memleaks.  Fixes #150001
4968
4969 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4970
4971         * docs/random/ds/0.9-suggested-changes:
4972           add notes - mostly about pad templates
4973
4974 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4975
4976         * win32/GStreamer.vcproj:
4977           temporary locale files are .gmo not .mo
4978
4979 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4980
4981         * configure.ac: bump nano to cvs
4982
4983 === release 0.8.5 ===
4984
4985 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4986
4987         * configure.ac:
4988           releasing 0.8.5, "Stuttgart"
4989         * NEWS:
4990         * RELEASE:
4991         * configure.ac:
4992         * docs/random/release:
4993           updates for release
4994
4995 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4996
4997         patch by: Wim Taymans (wim@fluendo.com)
4998
4999         * gst/gstbuffer.c:
5000         * gst/gstindex.h:
5001         * libs/gst/dataprotocol/dataprotocol.c:
5002           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
5003
5004 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5005
5006         * Makefile.am:
5007         * win32/MANIFEST:
5008           add win32 dir to the build.  Fixes #149981.
5009
5010 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5011
5012         * configure.ac:
5013           bump libtool versioning
5014         * gst/gststructure.c:
5015           mark function as static
5016         * po/af.po:
5017         * po/az.po:
5018         * po/ca.po:
5019         * po/cs.po:
5020         * po/en_GB.po:
5021         * po/fr.po:
5022         * po/nl.po:
5023         * po/sq.po:
5024         * po/sr.po:
5025         * po/sv.po:
5026         * po/tr.po:
5027         * po/uk.po:
5028           translations update
5029         * win32/README.txt:
5030           trademark protection
5031
5032 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5033
5034         * configure.ac:
5035           fix GST_ORIGIN
5036           set GST_PACKAGE to source, and distinguish between release and other
5037         * tools/gst-inspect.c:
5038           print out plugin an element factory is part of so we see this info
5039
5040 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5041
5042         * docs/gst/gstreamer-sections.txt:
5043         * docs/gst/tmpl/gstbuffer.sgml:
5044         * docs/gst/tmpl/gstschedulerfactory.sgml:
5045           reorder docs a little, make GstBuffer's more sensible.
5046         * gst/gstbuffer.h:
5047           API: added GST_BUFFER_FLAG_DELTA_UNIT
5048         * gst/gstscheduler.c:
5049           comment API addition
5050
5051 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5052
5053         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5054           work with non-regular files that can be mmapped (like /dev/zero)
5055         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5056           get rid of typefinds that require a seek when we can't seek instead
5057           of trying them over and over again
5058         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5059           return non-zero failure value when the pipeline was interrupted or
5060           an error occurred
5061
5062 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5063
5064         * win32/config.h:
5065         * win32/GStreamer.vcproj:
5066           compile and install the locales
5067
5068 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5069
5070         * gst/gstvalue.c:
5071           fix a possible memory leak under Windows
5072
5073 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5074
5075         * win32/GStreamer.vcproj:
5076           fix a memory leak that occured under Windows
5077         * win32/gstreamer.def:
5078           add gst_scheduler_register
5079
5080 2004-08-11  Benjamin Otte  <otte@gnome.org>
5081
5082         * docs/gst/gstreamer-sections.txt:
5083         * gst/gstscheduler.c: (gst_scheduler_register):
5084         * gst/gstscheduler.h:
5085           API:
5086           add gst_scheduler_register shortcut similar to gst_element_register
5087         * gst/schedulers/entryscheduler.c: (plugin_init):
5088         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5089         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5090           use it
5091
5092 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5093
5094         * gst/gstvalue.h:
5095           fix a memory leak that occured under Windows
5096
5097 2004-08-10  Colin Walters  <walters@redhat.com>
5098
5099         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5100         Don't use O_EXCL to open temporary registry.  It will prevent
5101         registry creation if a temporary one already exists, which
5102         is unnecessary.
5103
5104 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5105
5106         * docs/gst/gstreamer-sections.txt:
5107         * docs/gst/tmpl/gstvalue.sgml:
5108           remove some valuable stuff from the documentation due to the use of GST_EXPORT
5109
5110 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5111
5112         * win32/gstbytestream.vcproj:
5113         * win32/gstelements.vcproj:
5114         * win32/gstgetbits.vcproj:
5115         * win32/gst-inspect.vcproj:
5116         * win32/gst-launch.vcproj:
5117         * win32/gstoptimalscheduler.vcproj:
5118         * win32/GStreamer.vcproj:
5119         * win32/gst-register.vcproj:
5120         * win32/gstspider.vcproj:
5121           update the include and lib dirs to fit standard libraries as
5122           described in the Win32 manual
5123
5124 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5125
5126         * win32/config.h:
5127         * win32/gstversion.h:
5128           enable NLS again, push the version number for the coming 0.8.5 release
5129
5130 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5131
5132         * gst/gstvalue.h:
5133           export gst_type_XXX for windows DLLs
5134
5135 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5136
5137         * docs/faq/gst-uninstalled:
5138           fix PKG_CONFIG_PATH and PYTHONPATH
5139         * gst/schedulers/Makefile.am:
5140           cleanup
5141         * libs/gst/bytestream/bytestream.c:
5142           remove newline
5143         * po/LINGUAS:
5144         * po/sq.po:
5145           adding Albanian translation (Laurent Dhima)
5146         * po/cs.po:
5147           updated
5148
5149 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5150
5151         * po/ca.po:
5152         * po/sv.po:
5153           updated translations
5154
5155 2004-08-04  Benjamin Otte  <otte@gnome.org>
5156
5157         * tests/mass_elements.c: (main):
5158           allow specifying src and sink element explicitly, so I can test
5159           videotestsrc instead of fakesrc
5160
5161 2004-08-04  Benjamin Otte  <otte@gnome.org>
5162
5163         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
5164         (gst_structure_id_empty_new), (gst_structure_empty_new),
5165         (gst_structure_copy):
5166           add gst_structure_id_empty_new_with_size to allow preallocating
5167           value array sizes. Use this in gst_structure_copy to get rid of
5168           reallocs.
5169           don't do quark=>string=>quark when copying structures
5170
5171 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
5172
5173         * docs/manual/win32.xml:
5174         * win32/README.txt:
5175           update documentation with the clean version of dependencies
5176
5177 2004-08-03  Benjamin Otte  <otte@gnome.org>
5178
5179         * gst/schedulers/entryscheduler.c:
5180         (gst_entry_scheduler_remove_element):
5181           fix for GST_DISABLE_DEBUG
5182         * tools/gst-launch.c: (print_tag):
5183           fixes for G_DISABLE_ASSERT
5184
5185 2004-08-03  Benjamin Otte  <otte@gnome.org>
5186
5187         * gst/gst.c: (gst_register_core_elements):
5188           fix for G_DISABLE_ASSERT
5189         * gst/gstinfo.c: (__gst_in_valgrind):
5190           add for GST_DISABLE_DEBUG
5191
5192 2004-08-03  Benjamin Otte  <otte@gnome.org>
5193
5194         * gst/parse/parse.l:
5195           fix for G_DISABLE_ASSERT
5196
5197 2004-08-03  Wim Taymans  <wim@fluendo.com>
5198
5199         * gst/gstbin.c: (gst_bin_get_type),
5200         (gst_bin_child_state_change_func):
5201         * gst/gstthread.c: (gst_thread_change_state):
5202         Backported some debug logging from a reverted patch
5203         Don't try to destroy the thread twice. Added some more
5204         debugging in GstThread. Unlock and signal even if we
5205         are in the thread context.
5206
5207 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5208
5209         * po/uk.po:
5210           updated translation
5211
5212 2004-07-30  David Schleef  <ds@schleef.org>
5213
5214         * gst/gstatomic_impl.h: Enable atomic code for x86_64
5215
5216 2004-07-29  David Schleef  <ds@schleef.org>
5217
5218         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
5219         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
5220
5221 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5222
5223         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5224         (gst_bin_add_func), (gst_bin_remove_func),
5225         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
5226         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
5227         (gst_bin_change_state_norecurse), (gst_bin_dispose),
5228         (gst_bin_sync_children_state):
5229         * gst/gstbin.h:
5230         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
5231         (gst_thread_change_state):
5232         * testsuite/states/Makefile.am:
5233           revert state change patches as agreed so we can rework them
5234           gradually
5235
5236 2004-07-29  Benjamin Otte  <otte@gnome.org>
5237
5238         * libs/gst/control/Makefile.am:
5239           link to libgstreamer (fixes Debian bug 262019, see
5240           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
5241
5242 2004-07-29  Wim Taymans  <wim@fluendo.com>
5243
5244         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5245         (check_from_fraction_convert), (transform_test), (main):
5246         Make the test less pedantic about float roundoff errors.
5247
5248 2004-07-29  Benjamin Otte  <otte@gnome.org>
5249
5250         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
5251         (gst_filesrc_srcpad_event):
5252           make seek events to before start/after end of file not fail, but
5253           seek to start/end instead
5254         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
5255           add more output
5256
5257 2004-07-29  Benjamin Otte  <otte@gnome.org>
5258
5259         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5260           check that caps are fixed
5261         * gst/gstpad.c: (gst_pad_template_new):
5262           don't try to simplify caps, costs too much time on gst_init
5263         * gst/gstplugin.c: (gst_plugin_add_feature):
5264           G_ERROR if features are added twice
5265         * gst/gsttypefind.c: (gst_type_find_register):
5266         * gst/gstelementfactory.c: (gst_element_register):
5267           don't add features twice
5268         * docs/random/ds/0.9-suggested-changes:
5269           add note about possible gst_init optimization
5270
5271 2004-07-28  David Schleef  <ds@schleef.org>
5272
5273         * testsuite/elements/Makefile.am:
5274         * testsuite/elements/struct_i386.h:
5275         * testsuite/elements/struct_size.c: (main):  A little test
5276         to keep distcheck from working if someone changes a structure
5277         size accidentally.
5278
5279 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5280
5281         * docs/libs/Makefile.am:
5282         * docs/libs/gstreamer-libs-docs.sgml:
5283         * docs/libs/gstreamer-libs-sections.txt:
5284         * docs/libs/tmpl/gstbytestream.sgml:
5285         * docs/libs/tmpl/gstcontrol.sgml:
5286         * docs/libs/tmpl/gstdataprotocol.sgml:
5287         * docs/libs/tmpl/gstgetbits.sgml:
5288         * libs/gst/bytestream/Makefile.am:
5289         * libs/gst/bytestream/bytestream.c:
5290         * libs/gst/bytestream/bytestream.h:
5291         * libs/gst/control/Makefile.am:
5292         * libs/gst/dataprotocol/Makefile.am:
5293         * libs/gst/getbits/Makefile.am:
5294         * libs/gst/getbits/getbits.h:
5295           various doc and style fixes, adding bytestream to libs docs.
5296
5297 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5298
5299         * docs/gst/gstreamer-docs.sgml:
5300         * docs/libs/Makefile.am:
5301         * docs/libs/gstreamer-libs-docs.sgml:
5302         * docs/libs/gstreamer-libs-sections.txt:
5303         * libs/gst/control/dparam.c:
5304           more doc fixes.  gst-libs docs now build the same way as gst.
5305
5306 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5307
5308         * configure.ac:
5309         * testsuite/Makefile.am:
5310         * testsuite/bins/Makefile.am:
5311         * testsuite/caps/Makefile.am:
5312         * testsuite/cleanup/Makefile.am:
5313         * testsuite/clock/Makefile.am:
5314         * testsuite/debug/Makefile.am:
5315         * testsuite/dlopen/Makefile.am:
5316         * testsuite/dynparams/Makefile.am:
5317         * testsuite/elements/.cvsignore:
5318         * testsuite/elements/Makefile.am:
5319         * testsuite/enumcaps/Makefile.am:
5320         * testsuite/enumcaps/enumcaps.c:
5321         * testsuite/ghostpads/Makefile.am:
5322         * testsuite/indexers/Makefile.am:
5323         * testsuite/negotiation/Makefile.am:
5324         * testsuite/parse/Makefile.am:
5325         * testsuite/plugin/Makefile.am:
5326         * testsuite/refcounting/Makefile.am:
5327         * testsuite/schedulers/.cvsignore:
5328         * testsuite/states/Makefile.am:
5329         * testsuite/tags/Makefile.am:
5330         * testsuite/threads/Makefile.am:
5331           fold enumcaps into caps dir
5332           clean up Makefile.am's for testsuite
5333
5334 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5335
5336         * docs/gst/Makefile.am:
5337         * docs/libs/Makefile.am:
5338           clean up docs build.  Fixes needless rebuilding of template files.
5339
5340 2004-07-28  Wim Taymans  <wim@fluendo.com>
5341
5342         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5343         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5344         Make sure that a bin state change tries to keep the children
5345         in sync. 
5346         Added debug logging to the thread.
5347
5348 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5349
5350         * win32/GStreamer.vcproj:
5351         * win32/gstreamer.def:
5352           more exports for the plugins
5353
5354 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5355
5356         * win32/gstgetbits.vcproj:
5357         * win32/gstgetbits.def:
5358         * win32/msvc71.sln:
5359           add support for the getbits plugin
5360
5361 2004-07-27  Wim Taymans  <wim@fluendo.com>
5362
5363         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5364         (gst_value_transform_fraction_double), (_gst_value_initialize):
5365         * testsuite/caps/Makefile.am:
5366         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5367         (check_from_fraction_convert), (transform_test), (main):
5368         Added transform functions between double and fraction.
5369         Added testcase to verify transforms
5370
5371 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5372
5373         * win32/GStreamer.vcproj:
5374           rename GStreamer-0.8.lib to libgstreamer.lib
5375
5376 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5377
5378         * win32/gstelements.vcproj:
5379         * win32/gstoptimalscheduler.vcproj:
5380           fixes for the Release build
5381
5382 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5383
5384         * win32/config.h:
5385           update the version number
5386
5387 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5388
5389         * win32/GStreamer.vcproj:
5390           add gstinterface to the build
5391
5392 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5393
5394         * win32/gstreamer.def:
5395           add many definitions needed by plugins,
5396           GST_CAT_DEFAULT only available in the Debug build ?
5397
5398 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5399
5400         * gst/gstelement.c: (gst_element_set_eos_recursive):
5401           various whitespace fixes.
5402           doc fix, fixes #148497
5403
5404 2004-07-25  Benjamin Otte  <otte@gnome.org>
5405
5406         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5407           don't delay links on the sink elements, it causes unnegotiated
5408           links.
5409         * gst/elements/gsttypefindelement.c:
5410         (gst_type_find_element_base_init):
5411           add our padtemplates, we indeed do have some.
5412         * gst/elements/gsttypefindelement.c:
5413         (gst_type_find_element_handle_event),
5414         (gst_type_find_element_chain):
5415           don't push data when typefinding failed.
5416         * gst/gstpad.c: (gst_pad_link_fixate):
5417           check that no fixate function returns empty caps.
5418         * gst/gstpad.c: (gst_pad_push):
5419           check that the link is negotiated before data gets pushed.
5420         * tools/gst-register.c: (main):
5421           don't assert (fixes #148283)
5422
5423 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5424
5425         * docs/gst/gstreamer-sections.txt:
5426         * docs/gst/tmpl/gstconfig.sgml:
5427           add GST_PLUGIN_EXPORT definition
5428
5429 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5430
5431         * gst/gstplugin.h:
5432         * gst/gstconfig.h.in:
5433         * win32/gstconfig.h:
5434         * win32/gstelements.def:
5435         * win32/gstelements.vcproj:
5436         * win32/gstoptimalscheduler.def:
5437         * win32/gstoptimalscheduler.vcproj:
5438         * win32/gstspider.def:
5439         * win32/gstspider.vcproj:
5440           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5441
5442 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5443
5444         * docs/gst/gstreamer-sections.txt:
5445           remove GST_CAT_DEFAULT because the type has changed
5446
5447 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5448
5449         * win32/gstbytestream.vcproj:
5450         * win32/gstelements.vcproj:
5451         * win32/gst-inspect.vcproj:
5452         * win32/gst-launch.vcproj:
5453         * win32/gstoptimalscheduler.vcproj:
5454         * win32/GStreamer.vcproj:
5455         * win32/gst-register.vcproj:
5456         * win32/gstspider.vcproj:
5457         * win32/msvc71.sln:
5458           Copy the files where needed after building, The testsuite will be
5459           built separately
5460
5461 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5462
5463         * win32/config.h:
5464         * win32/README.txt:
5465         * docs/manual/win32.xml:
5466         Fixed the plugin and GStreamer location
5467
5468 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5469
5470         * win32/gstreamer.def:
5471         More exports for the plugins
5472
5473 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5474
5475         * gst/gstinfo.h:
5476         Marc was right, we need to export literally GST_CAT_DEFAULT
5477
5478 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5479
5480         * win32/config.h:
5481         NLS crashes in gettext, disabled until this is solved
5482
5483 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5484
5485         * win32/gst-inspect.vcproj:
5486         * win32/gst-launch.vcproj:
5487         Should use NLS when available
5488
5489 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5490
5491         * gst/registries/gstxmlregistry.c:
5492         removing the file doesn't seem to be a good idea on Linux
5493
5494 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5495
5496         * gst/registries/gstxmlregistry.c:
5497         Remove the registry before renaming the tempfile (needed for Windows)
5498
5499 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5500
5501         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5502         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5503         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5504         * gst/elements/gstmultifilesrc.h:
5505         Added newmedia property so it generates newmedia events between each
5506         file when property is set, as well as fixed eos handling
5507
5508 2004-07-22  David Schleef  <ds@schleef.org>
5509
5510         * gst/gststructure.c: (gst_structure_id_empty_new),
5511         (gst_structure_empty_new):  Set type field correctly.
5512         * gst/gststructure.h: Check type field correctly.
5513         * testsuite/caps/Makefile.am:
5514         * testsuite/caps/structure.c: (test1), (main): Add a very small
5515         test for structures.
5516
5517 2004-07-22  David Schleef  <ds@schleef.org>
5518
5519         * docs/random/ds/0.9-suggested-changes: more comments
5520         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5521
5522 2004-07-22  Benjamin Otte  <otte@gnome.org>
5523
5524         * gst/gstelementfactory.c: (gst_element_register):
5525           set the factory in the class struct, so gst_element_get_factory
5526           actually works
5527         * gst/parse/grammar.y:
5528           set element to playing when it gets unlocked as we can't rely on the
5529           bin state - all elements in the bin state might still be locked in
5530           NULL)
5531
5532 2004-07-22  Benjamin Otte  <otte@gnome.org>
5533
5534         * gst/gstelement.c: (gst_element_set_state_func):
5535           make this a static function
5536
5537 2004-07-22  Wim Taymans  <wim@fluendo.com>
5538
5539         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5540         (gst_opt_scheduler_pad_link):
5541         fix 147894-2 and the group_link problem.
5542
5543 2004-07-22  Wim Taymans  <wim@fluendo.com>
5544
5545         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5546         (handoff_identity), (main):
5547         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5548         (handoff_identity), (main):
5549         * testsuite/schedulers/Makefile.am:
5550         * testsuite/schedulers/group_link.c: (main):
5551         Show bug in scheduler when linking chain and loop based element 
5552         where the chain based element was not yet in a group.
5553
5554 2004-07-21  Benjamin Otte  <otte@gnome.org>
5555
5556         * gst/.cvsignore:
5557         * gst/autoplug/.cvsignore:
5558         * gst/elements/.cvsignore:
5559         * gst/indexers/.cvsignore:
5560         * libs/gst/bytestream/.cvsignore:
5561         * libs/gst/control/.cvsignore:
5562         * libs/gst/getbits/.cvsignore:
5563         * testsuite/states/.cvsignore:
5564         * testsuite/threads/.cvsignore:
5565           keep this up to date, since I seem to be the only one who cares
5566           about not missing files on commits (editor's note: no you don't,
5567           but feel free to change them at the time you add stuff instead
5568           of later on)
5569
5570 2004-07-21  Benjamin Otte  <otte@gnome.org>
5571
5572         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5573         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5574         (gst_bin_child_state_change_func), (set_kid_state_func),
5575         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5576           make state changes work correctly and reentrant (so removing
5577           elements from bins during state changes of bins doesn't cause
5578           segfaults or even wrong states)
5579           add debugging category and debugging output to print children states
5580         * gst/gstbin.c: (gst_bin_dispose): 
5581           add some assertion checks
5582         * gst/gstbin.h:
5583         * gst/gstbin.c: (gst_bin_sync_children_state):
5584           deprecate this function - it just does gst_bin_set_state (bin,
5585           GST_STATE (bin)) 
5586         * testsuite/threads/queue.c: (main):
5587           don't use gst_bin_sync_children_state anymore
5588         * testsuite/states/Makefile.am:
5589         * testsuite/states/bin.c:
5590           test that the state changes of bins work as expected
5591         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5592           some adjustments to change states correctly, too
5593         * gst/gstthread.c: (gst_thread_change_state):
5594           don't enable/disable "threadsafe" properties, they're unused and
5595           cause random segfaults
5596         * testsuite/threads/Makefile.am:
5597           the queue check randomly passes now, ignore it
5598
5599 2004-07-21  Benjamin Otte  <otte@gnome.org>
5600
5601         * gst/gstpad.c:
5602           check if data is NULL before outputting debug info. (fixes #145100)
5603
5604 2004-07-21  Benjamin Otte  <otte@gnome.org>
5605
5606         * gst/schedulers/entryscheduler.c:
5607         (gst_entry_scheduler_loop_wrapper),
5608         (gst_entry_scheduler_chain_wrapper),
5609         (gst_entry_scheduler_get_wrapper):
5610           reset the state when the cothread starts, so we don't get assertion
5611           failures on restarting of cothreads
5612
5613 2004-07-20  Benjamin Otte  <otte@gnome.org>
5614
5615         * gst/gstelement.c: (gst_element_link_pads_filtered):
5616           use correct sinkpad, if only sinkpad is specified, but not srcpad
5617           (fixes #147889)
5618         * gst/gstelement.c: (gst_element_set_state_func),
5619         (gst_element_change_state): ref/unref the element, signal handlers
5620         could get rid of the element otherwise
5621
5622 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5623
5624         * docs/random/ds/0.9-suggested-changes:
5625           Make note about renaming fixed-list to array.
5626         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5627         (_gst_value_initialize):
5628           Add array intersections.
5629         * testsuite/caps/intersect2.c: (main):
5630           Add test for array intersections.
5631
5632 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5633
5634         * configure.ac: back to cvs
5635
5636 === release 0.8.4 ===
5637
5638 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5639
5640         * configure.ac:
5641           releasing 0.8.4, "Paella"
5642           bump libtool versioning
5643
5644 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5645
5646         * po/LINGUAS:
5647         * po/ca.po:
5648           adding Catalan translation (Jordi Mallach)
5649
5650 2004-07-20  Wim Taymans  <wim@fluendo.com>
5651
5652         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5653         (handoff_identity), (main):
5654         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5655         (handoff_identity), (main):
5656         * testsuite/schedulers/Makefile.am:
5657         Added failing testcase for variant of #147894
5658
5659 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5660
5661         patch by: David Moore
5662
5663         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5664         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5665         (group_migrate_connected):
5666         * testsuite/schedulers/Makefile.am:
5667           fix for #142813 (Deadlock in optimal scheduler)
5668
5669 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5670
5671         patch by: Wim Taymans
5672
5673         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5674         (gst_opt_scheduler_schedule_run_queue),
5675         (gst_opt_scheduler_get_wrapper), (get_group),
5676         (group_migrate_connected):
5677         * testsuite/schedulers/Makefile.am:
5678           fix for #147819 (Add some checks in the opt scheduler)
5679
5680 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5681
5682         patch by: Benjamin Otte
5683
5684         * gst/gstelementfactory.c: (__gst_element_details_set):
5685           fix for #147929: running gst-register in non-utf8 locale can cause
5686           invalid registry
5687
5688 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5689
5690         patch by: Wim Taymans
5691
5692         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5693         (group_has_element), (element_get_reachables_func),
5694         (group_migrate_connected):
5695           fix for #147894 (opt scheduler decoupled elements mismanagement)
5696         * testsuite/schedulers/Makefile.am:
5697           testsuite app now passes
5698
5699 2004-07-19  Wim Taymans  <wim@fluendo.com>
5700
5701         * testsuite/schedulers/147819.c: (handoff_identity1),
5702         (handoff_identity2), (main):
5703         * testsuite/schedulers/Makefile.am:
5704         Added testcase for bug 147819
5705
5706 2004-07-19  Wim Taymans  <wim@fluendo.com>
5707
5708         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5709         (handoff_identity), (main):
5710         * testsuite/schedulers/Makefile.am:
5711         Added testcase for bug 147894
5712
5713 2004-07-16  Wim Taymans  <wim@fluendo.com>
5714
5715         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5716         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5717         * testsuite/schedulers/Makefile.am:
5718         Added testsuite for bug 142183 in its two incarnations. Refcount
5719         is not increased for scheduled elements and threadsafe properties
5720         mutexes are not properly unlocked.
5721
5722 2004-07-16  Wim Taymans  <wim@fluendo.com>
5723
5724         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5725         (create_chain), (destroy_chain), (create_group), (destroy_group),
5726         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5727         (group_dec_link), (gst_opt_scheduler_pad_link),
5728         (group_inc_links_for_element), (group_migrate_connected):
5729         Call group_inc_link with the proper src->sink ordering -- 
5730         break this, and we break sort_chain. patch from wingo for bug
5731         147713.
5732         Partially revert patch 1.89. When adding a loop based element to 
5733         the scheduler, the links to other groups are automatically followed
5734         and incremented. This should not happen because the bin will call
5735         pad_link explicitly for those connection, resulting in them counted 
5736         twice. Results in assertion failure on pipeline cleanup.
5737
5738 2004-07-16  Wim Taymans  <wim@fluendo.com>
5739
5740         * testsuite/schedulers/143777-2.c: (main):
5741         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5742         (main):
5743         * testsuite/schedulers/Makefile.am:
5744         Added cleanup code to testcase 143777-2.
5745         Added testcase to show bug 147713, does not really show the
5746         deadlock as I can't figure out how to trigger it, but it does
5747         demonstrate bad ordering in the scheduler.
5748
5749 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5750
5751         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5752           change strndup to g_strndup.  Fixes #147707
5753
5754 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5755
5756         * po/af.po:
5757         * po/az.po:
5758         * po/cs.po:
5759         * po/en_GB.po:
5760         * po/fr.po:
5761         * po/nl.po:
5762         * po/sr.po:
5763         * po/sv.po:
5764         * po/tr.po:
5765         * po/uk.po:
5766           updated translations
5767
5768 2004-07-16  Benjamin Otte  <otte@gnome.org>
5769
5770         * gst/gstvalue.c: (gst_greatest_common_divisor):
5771           use ints and return ints, fractions only use ints, too, so this
5772           avoids accidently casting multiplications to unsigned
5773         (gst_value_lcopy_fraction): it's ints, not uint32
5774         (gst_value_set_fraction): disallow minint, multiplying and negation
5775           are broken with it
5776         (gst_value_fraction_multiply): fix to make large numbers work and get
5777         rid of the assumption that the multiplication of two ints fits an
5778         int64 - dunno if that's true for all systems
5779         * testsuite/caps/Makefile.am:
5780         * testsuite/caps/fraction-multiply-and-zero.c:
5781         (check_multiplication), (check_equal), (zero_test), (main):
5782           add tests for all the stuff above
5783         * testsuite/caps/value_compare.c: (test1):
5784           fix comment
5785         * tests/.cvsignore:
5786         * testsuite/caps/.cvsignore:
5787         * testsuite/debug/.cvsignore:
5788         * testsuite/dlopen/.cvsignore:
5789         * testsuite/states/.cvsignore:
5790           get up to date
5791
5792 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5793
5794         * docs/manual/bins-api.xml:
5795         * docs/manual/factories.xml:
5796         * docs/manual/helloworld.xml:
5797         * docs/manual/links-api.xml: 
5798           fixes for out of date info, incorrect info and grammar
5799
5800 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5801
5802         * docs/manual/pads.xml:
5803         * docs/manual/pads-api.xml: grammar fix
5804
5805 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5806
5807         * docs/manual/pads-api.xml: typo + grammar fix
5808
5809 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5810
5811         * docs/gst/gstreamer-sections.txt:
5812           add new symbols
5813         * docs/gst/tmpl/gstelement.sgml:
5814         * docs/gst/tmpl/gstpad.sgml:
5815         * docs/gst/tmpl/gsttypes.sgml:
5816         * docs/gst/tmpl/gstvalue.sgml:
5817           update docs
5818         * gst/gststructure.c: (gst_structure_set_valist),
5819         (gst_structure_from_abbr), (gst_structure_to_abbr):
5820         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5821         (gst_greatest_common_divisor), (gst_value_init_fraction),
5822         (gst_value_copy_fraction), (gst_value_collect_fraction),
5823         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5824         (gst_value_get_fraction_numerator),
5825         (gst_value_get_fraction_denominator),
5826         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5827         (gst_value_deserialize_fraction),
5828         (gst_value_transform_fraction_string),
5829         (gst_value_transform_string_fraction),
5830         (gst_value_compare_fraction), (_gst_value_initialize):
5831         * gst/gstvalue.h:
5832           adding GstFraction GValue type, get/set, and multiply
5833         * testsuite/caps/Makefile.am:
5834         * testsuite/caps/fraction.c: (test), (main):
5835         * testsuite/caps/string-conversions.c: (main):
5836         * testsuite/caps/value_compare.c: (test1), (main):
5837           add regression tests for GstFraction
5838
5839 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5840         
5841         * docs/manual/init-api.xml: Grammar fix
5842
5843 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5844
5845         * docs/manual/states.xml: Fix inconsistent information
5846
5847 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5848
5849         * gst/gstelement.c: (gst_element_set_state):
5850         * gst/gstpad.c: (gst_pad_try_set_caps):
5851         * gst/gststructure.c:
5852         * gst/gstthread.c: (gst_thread_child_state_change):
5853         * gst/gstvalue.c: (gst_value_compare_double):
5854         * gst/gstvalue.h:
5855         * testsuite/parse/parse1.c: (main):
5856           debugging additions and style cleanups
5857
5858 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5859
5860         * docs/manual/states.xml: Grammar fix
5861
5862 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5863
5864         * docs/manual/pads.xml: Grammar fix
5865
5866 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5867
5868         * docs/manual/elements.xml: Fixed image reference
5869
5870 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5871
5872         * docs/manual/goals.xml: Grammar fix
5873
5874 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5875
5876         * docs/manual/motivation.xml:
5877         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5878
5879 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5880
5881         * docs/manual/motivation.xml: Fix spelling
5882
5883 2004-07-15  Benjamin Otte  <otte@gnome.org>
5884
5885         * gst/gstelement.h: 
5886           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5887           strings.
5888         * gst/gstelement.c (gst_element_class_init):
5889           GError's are boxed, not objects
5890         * gst/gstmarshal.list:
5891           update list for the fixed error signal
5892
5893 2004-07-14  Andy Wingo  <wingo@pobox.com>
5894
5895         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5896         there all along, but the function wasn't. (guile-gstreamer's build
5897         system uses the address of the function -- I wasn't actually
5898         trying to use this.)
5899
5900 2004-07-14  Andy Wingo  <wingo@pobox.com>
5901
5902         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5903         as gst_pad_proxy_pad_link) just link to every other pad when they
5904         are called. In the case where the graph has cycles, this will mean
5905         that a call to try_set_caps will recurse. Allow this recursion
5906         and return OK, while we wait for the first try_set_caps to give a
5907         proper return value.
5908         (gst_pad_link_call_link_functions): Since this function is the
5909         only one to set the NEGOTIATING flag on a pad, if the flag is set
5910         it means that the link functions have indirectly recursed. If this
5911         happens, error out to avoid infinite recursion and an eventual
5912         SEGV.
5913         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5914         (gst_pad_proxy_getcaps): Intersect the result with the template
5915         caps to ensure that the return value is valid.
5916
5917 2004-07-14  Andy Wingo  <wingo@pobox.com>
5918
5919         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5920         one refcount, the calling function is the owner of the buffer.
5921
5922 2004-07-14  Wim Taymans  <wim@fluendo.com>
5923
5924         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5925         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5926         Fix stupid warning when an element is to be migrated but
5927         is already migrated.
5928
5929 2004-07-14  Wim Taymans  <wim@fluendo.com>
5930
5931         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5932         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5933         Make sure that a single non-loop-based element does not 
5934         end up in a group. This fixes the testsuite again.
5935
5936 2004-07-14  Wim Taymans  <wim@fluendo.com>
5937
5938         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5939         (add_to_group), (merge_groups), (schedule_group),
5940         (gst_opt_scheduler_get_wrapper), (group_elements),
5941         (group_dec_link), (gst_opt_scheduler_pad_link),
5942         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5943         (gst_opt_scheduler_iterate):
5944         move isolated groups to a new chain.
5945         Emit a warning instead of segfaulting in some error cases.
5946         Fix a bug where the link count between groups was not calculated 
5947         correctly. Fixes #144510.
5948
5949 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5950         * gst/elements/gstfilesrc.c:
5951           Binary files support under Windows now OK
5952       
5953 2004-07-13  Benjamin Otte  <otte@gnome.org>
5954
5955           compatibility fixes for Solaris 8/gcc 2.95
5956         * configure.ac:
5957           include libintl libs in LDFLAGS
5958         * gstvalue.c (gst_value_deserialize_buffer):
5959           cast isxdigit stuff to int to silence compiler warning
5960
5961 2004-07-12  Benjamin Otte  <otte@gnome.org>
5962
5963         * gst/gsttypes.h:
5964           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5965           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5966           just causes support madness
5967         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5968           make it work without this
5969         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5970         (gst_file_index_commit):
5971           glib IO channels don't want binary mode
5972         * testsuite/bytestream/filepadsink.c: (main):
5973         * testsuite/bytestream/test1.c: (read_param_file):
5974           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5975
5976 2004-07-12  Benjamin Otte  <otte@gnome.org>
5977
5978         * gst/gstelement.c: (gst_element_class_init),
5979         (gst_element_set_state), (gst_element_set_state_func):
5980           virutalize gst_element_set_state, use set_state member in class
5981           struct that was already added in 0.7 for this.
5982         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5983         (gst_bin_change_state):
5984           make gst_bin_foreach works similar to other foreach functions, plug
5985           memleaks in it. Make functions using it work with the new approach.
5986           Document gst_bin_foreach, so it can be exported if we want to
5987         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5988           use virtualized set_state to make set_state on bins set the state of
5989           all its children.
5990
5991 2004-07-12  Benjamin Otte  <otte@gnome.org>
5992
5993         * configure.ac:
5994           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5995           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5996         * gst/gstpad.c: (gst_pad_alloc_buffer):
5997           allow buffer_alloc functions to return NULL and allocate a normal
5998           buffer in that case
5999
6000 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6001         * gst/elements/gstfilesink.c:
6002         * gst/elements/gstfilesrc.c:
6003         * gst/indexers/gstfileindex.c:
6004         * gst/gsttypes.h:
6005         * testsuite/bytestream/filepadsink.c:
6006         * testsuite/bytestream/test1.c:
6007           Handle binary files under Windows
6008
6009 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6010         * docs/manual/win32.xml:
6011         * win32/config.h:
6012         * win32/gst-register.vcproj:
6013         * win32/gstreamer.def:
6014           Update to another gettext public build
6015
6016 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6017         * gst/gstplugin.c:
6018           Fix an impossible C syntax
6019         * win32/config.h:
6020           Disable i18n under Windows for the moment
6021         * win32/gst-register.vcproj:
6022           Use this configuration
6023
6024 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
6025         * docs/manual/quotes.xml:
6026           Keep the quotes file alive
6027         * docs/random/ds/0.9-suggested-changes:
6028           Add the suggestion of including a 'rowstride' as part of video
6029           format caps
6030
6031 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6032
6033         * gst/gstelement.c: (gst_element_set_state),
6034         (gst_element_change_state):
6035           d'oh.  Set PENDING state correctly before forcing bin to change.
6036         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6037         (gst_structure_parse_fixed_list):
6038         * gst/schedulers/gstoptimalscheduler.c:
6039         (gst_opt_scheduler_state_transition):
6040         * testsuite/states/parent.c: (main):
6041           remove comment now that it's fixed.
6042
6043 2004-07-11  Benjamin Otte  <otte@gnome.org>
6044
6045         * gst/gstclock.h:
6046           GST_SECOND shouldn't cause a conversion to unsigned.
6047         * testsuite/clock/.cvsignore:
6048         * testsuite/clock/Makefile.am:
6049         * testsuite/clock/signedness.c: (main):
6050           make sure it never will again
6051
6052 2004-07-11  Andy Wingo  <wingo@pobox.com>
6053
6054         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6055         whose state is higher than the bin state, raise the bin state to
6056         ensure that bin state := highest child state.
6057         
6058 2004-07-11  Andy Wingo  <wingo@pobox.com>
6059
6060         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6061         procedure on the children of a bin. Assumes that the procedure can
6062         change the set of children.
6063         (set_kid_state_func): New static function.
6064         (gst_bin_change_state): Use gst_bin_foreach to call
6065         set_kid_state_func. Fixes a bug: if a child had a state-change
6066         handler that removes it from the bin, there would be a segfault.
6067         Hopefully it should also work in the case where the state-change
6068         handler on one child adds or removes other children. In any case,
6069         fixes should go to gst_bin_foreach.
6070
6071 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6072
6073         * gst/gstelement.c: (gst_element_set_state):
6074           compatibility fix for latest plugins release.  Change loop back
6075           to while {}
6076
6077 2004-07-09  Wim Taymans  <wim@fluendo.com>
6078
6079         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6080         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6081         (gst_thread_main_loop):
6082         Since remove is virtual in GstBin we must not assume the 
6083         elements GList to have anothing useful.
6084         Add some more logging to GstThread and be a bit more paranoid
6085         when resetting the scheduler.
6086         Set the state of the bin to NULL before removing the children.
6087
6088 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6089
6090         * testsuite/threads/Makefile.am:
6091         * testsuite/threads/threadg.c:
6092           added test to check if problem when removing all elements from a
6093           GstThread before setting GstThread state to NULL
6094
6095 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6096
6097         * docs/gst/tmpl/gstelement.sgml:
6098         * docs/gst/tmpl/gsttypes.sgml:
6099         * gst/gstbin.c: (gst_bin_change_state):
6100         * gst/gstelement.c: (gst_element_set_state),
6101         (gst_element_change_state):
6102           rework so that for bins we try to set the state on all children
6103           as well even if the bin is in the correct state already.
6104           change while to do so at least one iteration is done.
6105           For regular elements, we fall back to the previous behaviour for
6106           now since we first need a new plugins release.
6107         * testsuite/states/parent.c: (main):
6108           test for this case
6109           Fixes #123774
6110
6111 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6112
6113         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
6114         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
6115         (gst_queue_release_locks), (gst_queue_change_state),
6116         (gst_queue_set_property):
6117           add proper lock debugging.  Change dispose to finalize, since
6118           we're freeing mutexes and other stuff which should happen only once.
6119
6120 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6121
6122         * docs/gst/tmpl/gstelement.sgml:
6123         * docs/gst/tmpl/gstplugin.sgml:
6124         * docs/gst/tmpl/gsttypes.sgml:
6125         * docs/pwg/building-state.xml:
6126         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
6127         * gst/gstelement.c: (gst_element_change_state):
6128         * gst/gstthread.c: (gst_thread_change_state):
6129           catch wrong state changes in element base class.
6130
6131 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6132
6133         * gst/gstinfo.h:
6134           clean up layout a little.
6135
6136 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6137
6138         * configure.ac:
6139         * testsuite/Makefile.am:
6140         * testsuite/states/Makefile.am:
6141         * testsuite/states/parent.c: (main):
6142           re-enable states testsuite dir.  Add test for state changes and
6143           parent behaviour
6144
6145 2004-07-09  Wim Taymans  <wim@fluendo.com>
6146
6147         * gst/schedulers/gstoptimalscheduler.c:
6148         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
6149         (element_get_reachables_func), (element_get_reachables),
6150         (debug_element), (rechain_group), (group_migrate_connected),
6151         (gst_opt_scheduler_pad_unlink):
6152         Do not try to migrate decoupled elements to a new group since
6153         they are not added to groups.
6154
6155 2004-07-08  Benjamin Otte  <otte@gnome.org>
6156
6157         * gst/gstelement.c: (gst_element_error_func):
6158           make reentrant (= allow removing elements in error handler)
6159
6160 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6161
6162         * gst/gstpad.c: (gst_pad_event_default_dispatch),
6163         (gst_pad_send_event), (gst_pad_call_chain_function):
6164           events sent to elements below PAUSED cannot be handled, so
6165           don't try to
6166
6167 2004-07-08  Wim Taymans  <wim@fluendo.com>
6168
6169         * gst/schedulers/gstoptimalscheduler.c:
6170         (chain_recursively_migrate_group), (create_group),
6171         (schedule_group), (gst_opt_scheduler_pad_link),
6172         (group_elements_set_visited), (element_get_reachables_func),
6173         (element_get_reachables), (group_can_reach_group), (debug_element),
6174         (rechain_group), (group_migrate_connected),
6175         (gst_opt_scheduler_pad_unlink):
6176         * testsuite/schedulers/Makefile.am:
6177         Implemented group splitting and rechaining.
6178         Fixes 143777 and 143777-2 in the testsuite.
6179
6180 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6181
6182         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6183           extra debugging
6184         * gst/gstevent.h:
6185         * gst/gstinfo.c: (gst_debug_log_default):
6186           print time nicely.  add thread pointer until someone figures out
6187           a completely portable way of getting at thread id's.
6188         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
6189         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
6190         (gst_pad_call_chain_function):
6191           extra debugging
6192         * gst/schedulers/gstoptimalscheduler.c:
6193         (get_group_schedule_function), (loop_group_schedule_function),
6194         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6195         (pad_clear_queued), (gst_opt_scheduler_iterate):
6196           rename BUFPEN and friends to DATAPEN since that's what they are.
6197
6198 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6199
6200         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6201         * gst/gstbuffer.h:
6202         * gst/gstpad.c:
6203           cleanups and debugging
6204
6205 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6206
6207         * configure.ac:
6208         * gst/gstvalue.c: (gst_value_compare_enum),
6209         (gst_value_serialize_enum), (gst_value_deserialize_enum),
6210         (gst_value_can_compare), (gst_value_compare):
6211         * testsuite/Makefile.am:
6212         * testsuite/enumcaps/Makefile.am:
6213         * testsuite/enumcaps/enumcaps.c:
6214           Fix enum serialization, deserialization, comparison in caps, add
6215           a test to ensure that this continues working in the future.
6216
6217 2004-07-06  David Schleef  <ds@schleef.org>
6218
6219         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6220         Fix memleak.
6221
6222 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6223
6224         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
6225         * gst/gstplugin.h:
6226         * gst/registries/gstxmlregistry.c:
6227         (plugin_times_older_than_recurse), (plugin_times_older_than),
6228         (gst_xml_registry_parse_padtemplate):
6229           only rebuild registry when actual plugins have a newer time than
6230           the registry.  Fixes #145520
6231
6232 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6233
6234         * docs/manual/manual.xml:
6235         * docs/manual/win32.xml:
6236           add chapter on win32 building.  fixes #142422
6237
6238 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6239
6240         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
6241
6242         * gst/autoplug/gstspider.c: (gst_spider_init),
6243         (gst_spider_dispose):
6244           fix spider memleaks.  fixes #137863
6245
6246 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6247
6248         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
6249
6250         * gst/schedulers/gstoptimalscheduler.c:
6251         (gst_opt_scheduler_pad_unlink):
6252           fix SIGBUS error, fixes #145338
6253
6254 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6255
6256         * gst/gstobject.c: (gst_object_replace):
6257         * gst/gstscheduler.c: (gst_scheduler_get_clock):
6258         * gst/gstsystemclock.c: (gst_system_clock_obtain):
6259           clean up clock lifecycle.  Fixes #109831
6260
6261 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6262
6263         * po/LINGUAS:
6264         * po/cs.po:
6265           added Czech translation (Miloslav Trmac)
6266
6267 2004-07-04  David Schleef  <ds@schleef.org>
6268
6269         * tools/Makefile.am:
6270         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
6271
6272 2004-07-04  David Schleef  <ds@schleef.org>
6273
6274         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
6275
6276 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6277
6278         * gst/gstbin.c: (gst_bin_restore_thyself):
6279           chain to parent restore so the bins get restored correctly
6280           in the editor
6281
6282 2004-07-03  David Schleef  <ds@schleef.org>
6283
6284         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6285         Actually do something in these functions, like before the big
6286         caps change.  (bug #145137)
6287
6288 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6289
6290         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6291         (gst_element_get_compatible_pad_filtered):
6292         * gst/gstthread.c: (gst_thread_main_loop):
6293           more debugging
6294
6295 2004-07-02  David Schleef  <ds@schleef.org>
6296
6297         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6298         * gst/gstobject.h:
6299         * gst/gstparse.h:
6300         * gst/gsttrace.h:
6301         * gst/gstxml.h:
6302
6303 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6304
6305         * gst/gstpad.c: (gst_pad_check_schedulers),
6306         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6307         (gst_pad_link_prepare):
6308           revert until testsuite is fixed
6309
6310 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6311
6312         * testsuite/Makefile.am:
6313         * testsuite/caps/filtercaps.c: (main):
6314         * testsuite/clock/clock1.c: (main):
6315         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6316           fix some more tests
6317
6318 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6319
6320         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6321         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6322         * testsuite/cleanup/cleanup4.c: (main):
6323           fix testsuite
6324
6325 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6326
6327         * libs/gst/control/control.c:
6328         * libs/gst/control/dparam.c:
6329         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6330         * libs/gst/control/dparammanager.c:
6331         * libs/gst/control/dparammanager.h:
6332         * testsuite/dynparams/Makefile.am:
6333         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6334         (gst_dptest_change_state), (gst_dptest_chain), (main):
6335           fix testcase for dparams
6336           add debugging category
6337
6338 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6339
6340         * testsuite/Rules:
6341           change path
6342
6343 2004-07-02  Benjamin Otte  <otte@gnome.org>
6344
6345         * tests/.cvsignore:
6346         * tests/Makefile.am:
6347         * tests/mass_elements.c: (gst_get_current_time), (main):
6348           add simple benchmark to test various speeds of fakesrc ! identity !
6349           identity ! ... ! fakesink.
6350           Usage: mass_elements [num_identities] [num_buffers]
6351           If not specified they default to 1000.
6352
6353 2004-07-02  Benjamin Otte  <otte@gnome.org>
6354
6355         * gst/gstpad.c: (gst_pad_check_schedulers),
6356         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6357         (gst_pad_link_prepare):
6358           check that pads that get linked belong to the same manager. The old
6359           code allowed linking elements before putting them into bins, so it
6360           worked to link them and then put them in different threads, which
6361           lead to weird behaviour.
6362           Since this effectively disallows linking elements before putting
6363           them in a bin, some applications might not work after this and error
6364           out. If these applications are too critical, we might need to revert
6365           that patch. Please test this before the next release...
6366
6367 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6368
6369         * gst/gstpad.c: (gst_pad_get_caps):
6370           throw an error if the getcaps function does not return a subset of
6371           the template caps.
6372         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6373           make disconts without position info an error in debugging
6374         * tests/spidey_bench.c: (handoff), (main):
6375           don't count first try when averaging
6376
6377 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6378
6379         * gst/gstplugin.c: (gst_plugin_load_file):
6380           figure out problem with dynamic test
6381
6382 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6383
6384         * docs/gst/Makefile.am:
6385           fix docs build
6386
6387 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6388
6389         * po/POTFILES.in:
6390         * po/af.po:
6391         * po/az.po:
6392         * po/en_GB.po:
6393         * po/fr.po:
6394         * po/nl.po:
6395         * po/sr.po:
6396         * po/sv.po:
6397         * po/tr.po:
6398         * po/uk.po:
6399         * tools/gst-register.c: (plugin_added_func), (main):
6400           i18n-ize -register, fix plural
6401
6402 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6403
6404         * gst/elements/gstidentity.c: (gst_identity_class_init),
6405         (gst_identity_init), (gst_identity_chain),
6406         (gst_identity_set_property), (gst_identity_get_property):
6407         * gst/elements/gstidentity.h:
6408           check for perfect stream
6409
6410 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6411
6412         * gst/elements/gstidentity.c: (gst_identity_chain):
6413           print offset_end
6414
6415 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6416
6417         * docs/gst/Makefile.am:
6418         * docs/gst/gstreamer-docs.sgml:
6419           doc fixes
6420
6421 2004-06-24  David Schleef  <ds@schleef.org>
6422
6423         * autogen.sh:  Remove call to env, since the buildbot isn't
6424         broken anymore.
6425
6426 2004-06-24  Wim Taymans  <wim@fluendo.com>
6427
6428         * gst/elements/Makefile.am:
6429         * gst/elements/gstelements.c:
6430         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6431         (gst_multifdsink_class_init), (gst_multifdsink_init),
6432         (gst_multifdsink_add), (gst_multifdsink_remove),
6433         (gst_multifdsink_clear), (gst_multifdsink_chain),
6434         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6435         * gst/elements/gstmultifdsink.h:
6436         Added an element that writes to multiple filedescriptors at once.
6437
6438 2004-06-24  Benjamin Otte  <otte@gnome.org>
6439
6440         * gst/parse/grammar.y:
6441           don't try to link elements before they have been added to bins
6442
6443 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6444
6445         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6446         (gst_file_pad_get_length):
6447         * libs/gst/bytestream/filepad.h:
6448           add 2 new functions
6449
6450 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6451
6452         * docs/gst/gstreamer-sections.txt:
6453         remove from docs, the define that Benjamin removed from gstelement.h
6454
6455 2004-06-22  Benjamin Otte  <otte@gnome.org>
6456
6457         * gst/gstelement.h:
6458           remove define that referenced a nonexisting GstElement struct member
6459
6460 2004-06-20  Benjamin Otte  <otte@gnome.org>
6461
6462         * gst/gstdata.c: (gst_data_is_writable):
6463           whoops, return values were wrong, so writable data was marked as
6464           non-writable and vice versa. (fixes #143953, spotted by Francis
6465           Labonte)
6466           Shows how rarely we need to copy data ;)
6467
6468 2004-06-20  Benjamin Otte  <otte@gnome.org>
6469
6470         * testsuite/schedulers/.cvsignore:
6471         * testsuite/schedulers/Makefile.am:
6472         * testsuite/schedulers/143777-2.c: (main):
6473           add test for opt breakage in bug #143777
6474
6475 2004-06-20  Benjamin Otte  <otte@gnome.org>
6476
6477         * gst/gstpad.c: (gst_pad_call_chain_function):
6478           check for if we were unlinked while inside the chainfunction (fixes
6479           entrygthread having issues with #143777)
6480         * testsuite/schedulers/143777.c: (main):
6481         * testsuite/schedulers/Makefile.am:
6482           add a test for that fix
6483
6484 2004-06-20  Benjamin Otte  <otte@gnome.org>
6485
6486         * gst/gstvalue.c: (gst_value_set_int_range):
6487           test that start is smaller then end
6488         * libs/gst/bytestream/Makefile.am:
6489         * libs/gst/bytestream/filepad.c: 
6490         * libs/gst/bytestream/filepad.h:
6491           add GstFilePad - a pad that behaves like a FILE*
6492         * testsuite/bytestream/.cvsignore:
6493         * testsuite/bytestream/Makefile.am:
6494         * testsuite/bytestream/filepadsink.c: 
6495           test for the GstFilePad
6496
6497 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6498
6499         * gst/elements/gstidentity.c: (gst_identity_class_init),
6500         (gst_identity_init), (gst_identity_set_clock),
6501         (gst_identity_chain), (gst_identity_set_property),
6502         (gst_identity_get_property):
6503         * gst/elements/gstidentity.h:
6504         * gst/gstclock.c: (gst_clock_id_wait):
6505           add a "sync" property to sync to the clock
6506
6507 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6508
6509         * gst/gstelementfactory.c: (gst_element_factory_create):
6510           make the freakin "elementfactory bla has no type" message more
6511           useful. So we actually can do something when someone shows up
6512           complaining about it.
6513
6514 2004-06-15  Johan Dahlin  <johan@gnome.org>
6515
6516         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6517         found. This matches the old behavior better. Thanks to Thomas for
6518         pointing out.
6519
6520 2004-06-14  David Schleef  <ds@schleef.org>
6521
6522         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6523         -fomit-frame-pointer.  Appears to generate correct code in
6524         other cases as well.
6525
6526 2004-06-14  Johan Dahlin  <johan@gnome.org>
6527
6528         * tools/gst-inspect.c (main): Add two new command line options: -a
6529         to print all elements and -n to print the name on each line. Also
6530         fix some error reporting.
6531         (main): Simplify, remove -n and always print names if -a is specified
6532
6533 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6534
6535         * win32/gstconfig.h:
6536         * win32/GSTreamer.vcproj:
6537         * win32/Makefile:
6538         * gst/gstconfig.h.in:
6539         * gst/gst.h:
6540         * gst/gstbin.h:
6541         * gst/gstelement.h:
6542         * gst/gstevent.h:
6543         * gst/gstobject.h:
6544         * gst/gstpad.h:
6545         * docs/gst/gstreamer-sections.txt:
6546         * docs/gst/tmpl/gstconfig.sgml:
6547           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6548
6549 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6550         * docs/gst/gstreamer-sections.txt:
6551         * docs/gst/tmpl/gstconfig.sgml:
6552         Add the GSTREAMER_EXPORT macro to the docs
6553
6554 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6555
6556         * tools/gst-compprep.c: (handle_xmlerror), (main):
6557         Add a check for the version that introduced SetStructuredError to fix
6558         the build on FC1
6559
6560 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6561
6562         * win32/msvc71.sln:
6563         * win32/testsuite/:
6564           prepare to compile the testsuite with MSVC
6565
6566 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6567
6568         * docs/manual/win32.xml:
6569           attempt to transform the Win32 README into an XML doc
6570
6571 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6572
6573         * gst/gst.c:
6574         * gst/gstbin.*:
6575         * gst/config.h.in:
6576         * gst/gstelement.*:
6577         * gst/gstevent.h:
6578         * gst/gstobject.*:
6579         * gst/gstpad.h:
6580         * tools/gst-register.c:
6581         * win32/gstreamer.def:
6582           extern symbols are now exported for the Windows DLL
6583
6584 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6585
6586         * gst/gstinfo.h:
6587           fix a problem to enable/disable DEBUG under MSVC
6588
6589 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6590
6591         * win32/:
6592           enable more debug code in DEBUG build
6593
6594 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6595
6596         * win32/config.h:
6597         * gst/gst-i18n-app.h:
6598           enable NLS under Windows
6599
6600 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6601         * tools/gst-compprep.c: (handle_xmlerror), (main):
6602           Make an error that baffled me a bit clearer
6603
6604 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6605
6606         * gst/gstqueue.c:
6607           don't use g_queue_get_length () because it's 2.4, use ->length
6608
6609 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6610
6611         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6612
6613         * tools/gst-inspect.c: (print_signal_info):
6614           don't free random data twice. (fixes #144185)
6615
6616 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6617
6618         * gst/gstqueue.c:
6619         * gst/gstqueue.h:
6620           fix removing from the wrong queue on event timeout
6621           fix disposing of the event queue by casting correctly
6622           add mutexes for handling the event queue
6623           someone was sleeping when fixing queue last time around :)
6624
6625 2004-06-10  Johan Dahlin  <johan@gnome.org>
6626
6627         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6628         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6629
6630 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6631
6632         * docs/random/gdp:
6633         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6634         * libs/gst/dataprotocol/dataprotocol.c:
6635         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6636         (gst_dp_buffer_from_header):
6637         * libs/gst/dataprotocol/dataprotocol.h:
6638         * libs/gst/dataprotocol/dp-private.h:
6639           rev version to 0.1, add buffer flags and copy them
6640
6641 2004-06-09  Johan Dahlin  <johan@gnome.org>
6642
6643         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6644         the flags from the buffer we're copying.
6645
6646 2004-06-09  Wim Taymans  <wim@fluendo.com>
6647
6648         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6649         * gst/elements/gstidentity.c: (gst_identity_init),
6650         (gst_identity_chain):
6651         Print more buffer info in fakesink.
6652         Make identity output similar to fakesink.
6653
6654 2004-06-07  Daniel Gazard  <dany42@free.fr>
6655
6656         reviewed by Benjamin Otte  <otte@gnome.org>
6657
6658         * configure.ac:
6659           fix cross compiling not working. (fixes #143741)
6660
6661 2004-06-07  Benjamin Otte  <otte@gnome.org>
6662
6663         * gst/gstelement.c: (gst_element_set_time_delay):
6664           add failure check
6665         * gst/gstinfo.h:
6666           put brackets around macro arguments of GST_TIME_ARGS, add note to
6667           move it to correct header in 0.9
6668
6669 2004-06-07  Benjamin Otte  <otte@gnome.org>
6670
6671         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6672         (gst_file_index_load), (_file_index_id_save_entries),
6673         (gst_file_index_commit), (gst_file_index_add_association),
6674         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6675         (gst_file_index_plugin_init):
6676           make debugging use a default category
6677
6678 2004-06-06  David Moore  <dcm@acm.org>
6679
6680         reviewed by Benjamin Otte  <otte@gnome.org>
6681
6682         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6683         (gst_fdsrc_change_state):
6684           reset offset counter when going READY => PAUSED. (fixes #142903)
6685
6686 2004-06-06  ed@catmur.co.uk
6687
6688         reviewed by Benjamin Otte  <otte@gnome.org>
6689
6690         * gst/registries/gstxmlregistry.c:
6691         (gst_xml_registry_rebuild_recurse):
6692           don't rely on g_dir_open to figure out if a file is a directory, use
6693           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6694           directories. (fixes #142850)
6695
6696 2004-06-06  Benjamin Otte  <otte@gnome.org>
6697
6698         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6699           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6700         * libs/gst/bytestream/adapter.c:
6701         * libs/gst/bytestream/adapter.h:
6702           fix copyright in header and typo in debugging category name
6703
6704 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6705
6706         * configure.ac:
6707           bump nano to cvs
6708
6709 === release 0.8.3 ===
6710
6711 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6712
6713         * configure.ac:
6714           update libtool versioning
6715           do a new release
6716         * docs/gst/tmpl/gstelement.sgml:
6717         * docs/gst/tmpl/gsttypes.sgml:
6718         * gst/gstinfo.c: (_gst_debug_init):
6719           put back GST_CAT_DATAFLOW to fix API breakage
6720
6721 2004-06-04  David Schleef  <ds@schleef.org>
6722
6723         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6724
6725 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6726
6727         * configure.ac:
6728           bump nano to cvs
6729
6730 === release 0.8.2 ===
6731
6732 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6733
6734         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6735           check GST_DEBUG environment variable which is parsed the same way
6736           as --gst-debug=
6737
6738 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6739
6740         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6741                             gstmd5sink.c gstshaper.c gsttee.c
6742                             gsttypefindelement.c
6743         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6744
6745           - removing trailing commas at end of enums
6746             it is correct C99 code but C90 compilers would complain
6747             (AIX, Forte, ...)
6748             ('should' fix #143290, at least partially)
6749
6750 2004-05-27  Wim Taymans  <wim@fluendo.com>
6751
6752         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6753         (chain_group_set_enabled), (create_group), (add_to_group),
6754         (merge_groups), (setup_group_scheduler), (group_elements),
6755         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6756         Don't try to follow the pad connections with other groups
6757         when a loop based element is added to the scheduler because
6758         the bin will inform the scheduler about the pad links a little
6759         later.
6760
6761 2004-05-27  Wim Taymans  <wim@fluendo.com>
6762
6763         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6764         (remove_from_chain), (chain_group_set_enabled),
6765         (setup_group_scheduler), (group_element_set_enabled),
6766         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6767         (gst_opt_scheduler_show):
6768         Elements without a group can do a state change as well, just wait
6769         with the setup of the scheduling function when it is added to a
6770         chain.
6771
6772 2004-05-27  Wim Taymans  <wim@fluendo.com>
6773
6774         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6775         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6776         (merge_groups), (setup_group_scheduler),
6777         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6778         (gst_opt_scheduler_show):
6779         Fixes to maintain internal consistency of the scheduler data
6780         structures. 
6781          - adding an enabled group to a chain should increment the
6782            number of enabled elements in that chain.
6783          - removing an enabled group from a chain could disable the
6784            chain.
6785          - removing a disabled group from a chain could enable the
6786            chain.
6787          - add g_assert when internal inconsistency is detected.
6788          - adding an element to a group could increase the number of
6789            links this group has with other groups.
6790          - merging two groups also merges the chains.
6791          - also show group links in the _show method.
6792            
6793
6794 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6795
6796         * gst/gstcaps.c: (gst_caps_structure_simplify):
6797           don't print error messages when there is no error
6798         * gst/gstvalue.c: (gst_value_compare_int_range):
6799           compare the second value, too
6800         * testsuite/caps/Makefile.am:
6801         * testsuite/caps/random.c: (assert_on_error), (main):
6802           add tests to make sure the two things above are checked for
6803
6804 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6805
6806         * configure.ac:
6807         * libs/gst/dataprotocol/Makefile.am:
6808         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6809         * libs/gst/dataprotocol/dataprotocol.h:
6810           wrap header in GST_ENABLE_NEW.  make code use it
6811
6812 2004-05-23  Johan Dahlin  <johan@gnome.org>
6813
6814         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6815         so verbose and print GstElement signal names all the time.
6816
6817 2004-05-22  David Schleef  <ds@schleef.org>
6818
6819         * gst/registries/gstxmlregistry.c:
6820         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6821         (bug #142957)
6822
6823 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6824
6825         * configure.ac:
6826           scrub cflags for glib2 so gcc doesn't complain when glib is in
6827           /usr/local
6828
6829 2004-05-21  Johan Dahlin  <johan@gnome.org>
6830
6831         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6832         __GNUC__, patch from Brian Cameron, fixes bug #142804
6833
6834 2004-05-20  David Schleef  <ds@schleef.org>
6835
6836         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6837         comparison code.  (bug #142819)
6838
6839 2004-05-20  Wim Taymans  <wim@fluendo.com>
6840
6841         * gst/gstbuffer.c: (gst_buffer_default_copy):
6842         * gst/gstbuffer.h:
6843         Added Comment to a flag.
6844         copy relevant flags in _buffer_copy.
6845
6846 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6847
6848         reviewed by: Wim Taymans <wim at fluendo dot com>
6849
6850         * gst/gstbuffer.h:
6851           add GST_BUFFER_IN_CAPS buffer flag
6852         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6853         (gst_structure_parse_any_list), (gst_structure_parse_list),
6854         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6855         * gst/gstvalue.c: (gst_value_serialize_any_list),
6856         (gst_value_transform_any_list_string),
6857         (gst_value_list_prepend_value), (gst_value_list_append_value),
6858         (gst_value_list_get_size), (gst_value_list_get_value),
6859         (gst_value_transform_list_string),
6860         (gst_value_transform_fixed_list_string),
6861         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6862         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6863         (_gst_value_initialize):
6864         * gst/gstvalue.h:
6865           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6866           < , > as a format.
6867         * testsuite/caps/string-conversions.c: (main):
6868           add regression tests for < >
6869
6870 2004-05-20  Johan Dahlin  <johan@gnome.org>
6871
6872         * docs/gst/Makefile.am (all-local): Re-add
6873
6874 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6875
6876         * docs/gst/Makefile.am:
6877         * docs/gst/gstreamer-docs.sgml:
6878         * docs/libs/Makefile.am:
6879         * docs/libs/gstreamer-libs-docs.sgml:
6880           fix distcheck issues
6881
6882 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6883
6884         * libs/gst/dataprotocol/Makefile.am:
6885           add to autotest
6886
6887 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6888
6889         * libs/gst/dataprotocol/Makefile.am:
6890         * libs/gst/dataprotocol/dataprotocol.c:
6891         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6892         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6893         * libs/gst/dataprotocol/dp-private.h:
6894           use GST macros to read/write fixed length ints
6895           add some more asserts
6896
6897 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6898
6899         * docs/libs/gstreamer-libs-docs.sgml:
6900         * docs/libs/gstreamer-libs-sections.txt:
6901           remove idct and putbits
6902         * configure.ac:
6903         * docs/libs/tmpl/gstdataprotocol.sgml:
6904         * libs/gst/Makefile.am:
6905         * libs/gst/dataprotocol/Makefile.am:
6906         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6907         (buffer_test), (caps_test), (event_test), (main):
6908         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6909         (gst_dp_dump_byte_array), (gst_dp_init),
6910         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6911         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6912         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6913         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6914         (gst_dp_validate_header), (gst_dp_validate_payload),
6915         (gst_dp_validate_packet), (plugin_init):
6916         * libs/gst/dataprotocol/dataprotocol.h:
6917         * libs/gst/dataprotocol/dp-private.h:
6918           add dataprotocol
6919
6920 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6921
6922         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6923           fix int variable deserialization and add a helper so we can actually
6924           debug this.
6925
6926 2004-05-18  David Schleef  <ds@schleef.org>
6927
6928         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6929           argv[0].  Calling yourself is probably not the best way to
6930           construct a test like this, btw.
6931
6932 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6933
6934         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6935           don't claim to be more intelligent than a scheduler when the
6936           scheduler claims the pipeline is stopped
6937         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6938         (safe_cothread_destroy),
6939         (gst_entry_scheduler_remove_all_cothreads),
6940         (gst_entry_scheduler_reset), (_remove_cothread),
6941         (gst_entry_scheduler_state_transition):
6942           hold off cothread destruction if we're not in main cothread
6943         * configure.ac:
6944         * testsuite/Makefile.am:
6945           add new test dir
6946         * testsuite/schedulers/.cvsignore:
6947         * testsuite/schedulers/Makefile.am:
6948           add tests
6949         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6950           check relinking and adding/removing elements from a running pipeline
6951         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6952           check unlinking in a running pipeline
6953         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6954           check unreffing a running pipeline
6955         * testsuite/schedulers/useless_iteration.c: (main):
6956           check iterating a pipeline that contains running threads works
6957
6958 2004-05-18  David Schleef  <ds@schleef.org>
6959
6960         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6961           is false.
6962
6963 2004-05-18  Wim Taymans  <wim@fluendo.com>
6964
6965         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6966         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6967         Fixed an error introduced with patch for 1.63. When setting
6968         a get based element as the entry point in a group, make sure
6969         to mark the group as GET based.
6970
6971 2004-05-18  Wim Taymans  <wim@fluendo.com>
6972
6973         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6974         (setup_group_scheduler), (loop_group_schedule_function),
6975         (gst_opt_scheduler_pad_link):
6976         Added some more debug info and fixed a bug where the group
6977         type was set to LOOP but it was in fact unknown.
6978
6979 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6980
6981         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6982           make resetting scheduler work twice in a row
6983
6984 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6985
6986         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6987         (CREATE_USERIALIZATION), (_gst_value_initialize),
6988         (gst_value_compare_float), (gst_value_serialize_float),
6989         (gst_value_deserialize_float), (gst_value_compare_enum),
6990         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6991           add serialization and comparison functions for long, int64, enum and
6992           float values
6993         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6994           use best serialization function in type hierarchy instead of only a
6995           matching one. This is required for enums to work.
6996         * gst/parse/grammar.y:
6997           use gst_caps_deserialize
6998         * testsuite/parse/Makefile.am:
6999           parse1 now works
7000         * testsuite/parse/parse1.c: (main):
7001           remove aggregator check, aggregator is broken, this test works now
7002           but fails because of bug #138012
7003         * testsuite/parse/parse2.c: (main):
7004           s/xvideosink/xvimagesink - this test looks a lot like we should
7005           disable it
7006
7007 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7008
7009         * gst/gstelement.c: (gst_element_class_init):
7010           whoops, store the signal id correctly
7011         * gst/schedulers/gstbasicscheduler.c:
7012         (gst_basic_scheduler_chain_wrapper):
7013           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
7014           chain function isn't linked
7015
7016 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
7017         * configure.ac:
7018         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
7019         support until we decide where the flags should be used
7020         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
7021         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
7022         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7023         Output refused caps in the debug info
7024
7025 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7026
7027         * gst/elements/gstidentity.c: (gst_identity_chain):
7028           add duration debug
7029         * gst/gstinfo.c: (gst_debug_log_default):
7030           add timestamp
7031
7032 2004-05-13  Benjamin Otte  <otte@gnome.org>
7033
7034         * gst/gstpipeline.c: (gst_pipeline_dispose),
7035         (gst_pipeline_change_state):
7036           call gst_scheduler_reset on dispose (fixes #141416)
7037
7038 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7039
7040         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7041           compute mapsize correctly
7042         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7043           use correct datatypes when calling a varargs function
7044         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7045           push a DISCONT event as first thing
7046         * gst/gst_private.h:
7047         * gst/gstinfo.c: (_gst_debug_init):
7048           remove GST_DATAFLOW debugging category
7049         * gst/gstbin.c: (gst_bin_iterate):
7050           use GST_SCHEDULING category
7051         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7052         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7053         (gst_pad_call_get_function):
7054           add GST_DATAFLOW to easily track flow of buffers or events.
7055         * gst/gstqueue.c: (gst_queue_get_type),
7056         (gst_queue_handle_pending_events), (gst_queue_chain),
7057         (gst_queue_get), (gst_queue_handle_src_event):
7058           use own static debugging category GST_DATAFLOW for dataflow,
7059           use DEBUG category for showing which path events go, use LOG
7060           category for buffers.
7061
7062 2004-05-10  David Schleef  <ds@schleef.org>
7063
7064         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7065
7066 2004-05-10  David Schleef  <ds@schleef.org>
7067
7068         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7069         symbols, because otherwise we don't know what they are.  Thanks,
7070         the GStreamer team.
7071         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7072
7073 2004-05-10  David Schleef  <ds@schleef.org>
7074
7075         (from Steve Lhomme)
7076         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7077         are deleted.  Fix.
7078         * win32/Makefile.inspect:
7079         * win32/Makefile.launch:
7080         * win32/Makefile.register:
7081
7082 2004-05-10  David Schleef  <ds@schleef.org>
7083
7084         * gst/gstinfo.h: Add missing inline function.
7085         * gst/gsttrace.c: add include
7086         * gst/parse/grammar.y: remove unused code
7087         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7088         more portable.
7089         * tools/gst-register.c: wrap unistd.h
7090         
7091         More additions/fixes from Steve for the MSVC build.
7092         * win32/GStreamer.vcproj:
7093         * win32/Makefile:
7094         * win32/Makefile.inspect:
7095         * win32/Makefile.launch:
7096         * win32/Makefile.register:
7097         * win32/README.txt:
7098         * win32/gst-inspect.vcproj:
7099         * win32/gst-launch.vcproj:
7100         * win32/gst-register.vcproj:
7101         * win32/gstbytestream.def:
7102         * win32/gstbytestream.vcproj:
7103         * win32/gstconfig.h:
7104         * win32/gstelements.def:
7105         * win32/gstelements.vcproj:
7106         * win32/gstenumtypes.c:
7107         * win32/gstenumtypes.h:
7108         * win32/gstoptimalscheduler.def:
7109         * win32/gstoptimalscheduler.vcproj:
7110         * win32/gstreamer.def:
7111         * win32/gstspider.def:
7112         * win32/gstspider.vcproj:
7113         * win32/gstversion.h:
7114         * win32/msvc71.sln:
7115
7116 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7117
7118         * gst/gstelement.c: (gst_element_class_init),
7119         (gst_element_no_more_pads):
7120         * gst/gstelement.h:
7121           add gst_element_no_more_pads and the "no-more-pads" signal
7122
7123 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7124
7125         * gst/gstregistry.c: (gst_registry_add_plugin):
7126           refuse to add plugins when a plugin with same name is already
7127           registered. Fixes a bunch of "How to remove plugins?" issues.
7128           May lead to other problems though, let's test
7129
7130 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7131
7132         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
7133         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
7134         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
7135
7136 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7137
7138         * tests/Makefile.am: fix am16 issue
7139
7140 2004-05-09  Benjamin Otte  <otte@gnome.org>
7141
7142         * libs/gst/bytestream/Makefile.am:
7143           we should indeed add .c files to makefiles or they won't be built
7144           (d'oh)
7145
7146 2004-05-08  Benjamin Otte  <otte@gnome.org>
7147
7148         * gst/gstpad.c: (gst_pad_proxy_fixate):
7149           really reduce the set of caps
7150
7151 2004-05-08  Benjamin Otte  <otte@gnome.org>
7152
7153         * tests/Makefile.am:
7154         * tests/spidey_bench.c: (handoff), (main):
7155           add benchmark to test how long spider needs to create a pipeline
7156
7157 2004-05-08  Benjamin Otte  <otte@gnome.org>
7158
7159         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
7160           mark links as unengaged when unnegotiating instead of deactivating.
7161           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
7162
7163 2004-05-08  Benjamin Otte  <otte@gnome.org>
7164
7165         * docs/manual/helloworld.xml:
7166           s/audiosink/osssink (patch by Patrick Guimond)
7167
7168 2004-05-07  David Schleef  <ds@schleef.org>
7169
7170         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
7171         since it contains important stuff.
7172
7173 2004-05-07  David Schleef  <ds@schleef.org>
7174
7175         * testsuite/caps/caps.c: (test3), (main): A check for appending
7176         ANY caps.
7177
7178 2004-05-07  David Schleef  <ds@schleef.org>
7179
7180         * common/m4/as-compiler-flag.m4: Properly quote arguments,
7181         which may contain commas.  Fixes detection of -Wa,-mregnames
7182
7183 2004-05-06  David Schleef  <ds@schleef.org>
7184
7185         Changes to handle compilers that don't have variadic macro
7186         support.  In particular, glib headers define some inlines
7187         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
7188         builds.
7189         * gst/Makefile.am:
7190         * gst/cothreads.c:
7191         * gst/elements/gstfdsink.c:
7192         * gst/elements/gstfdsrc.c:
7193         * gst/elements/gstfilesink.c:
7194         * gst/elements/gstfilesrc.c:
7195         * gst/gst_private.h:
7196         * gst/gstatomic.c:
7197         * gst/gstcaps.c: (gst_caps_append):
7198         * gst/gstcpu.c: (gst_cpuid_i386):
7199         * gst/gstelement.c:
7200         * gst/gsterror.c:
7201         * gst/gstfilter.c:
7202         * gst/gstinfo.h:
7203         * gst/gstprobe.c:
7204         * gst/gstquery.c:
7205         * gst/gstregistry.c:
7206         * gst/gststructure.c:
7207         * gst/gsttaginterface.c:
7208         * gst/gsttrace.c: (gst_trace_new):
7209         * gst/gsttrashstack.c:
7210         * gst/gsturi.c:
7211         * gst/gstvalue.c:
7212         * gst/parse/grammar.y:
7213         * gst/parse/parse.l:
7214         * tools/gst-inspect.c: (main):
7215         * tools/gst-launch.c: (main):
7216         * tools/gst-xmlinspect.c: (PUT_STRING):
7217
7218 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7219
7220         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7221         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7222         * gst/elements/gstfilesrc.h:
7223           send NEW_MEDIA events correctly
7224         * gst/elements/gsttypefindelement.c: (start_typefinding),
7225         (gst_type_find_element_handle_event):
7226           restart typefinding when we get a NEW_MEDIA event
7227         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
7228         (gst_bin_dispose):
7229           don't die when someone removes elements in callbacks
7230         * gst/gstelement.c: (gst_element_change_state):
7231           improve debugging
7232         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
7233           we need a NEW_MEDIA event to engage a link
7234         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
7235           don't g_print debugging stuff
7236         * testsuite/caps/simplify.c: (check_caps):
7237
7238 2004-05-04  Benjamin Otte  <otte@gnome.org>
7239
7240         * gst/parse/grammar.y:
7241           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
7242
7243 2004-05-04  Benjamin Otte  <otte@gnome.org>
7244
7245         * testsuite/caps/renegotiate.c: (main):
7246           improve output in error case
7247
7248 2004-05-04  Benjamin Otte  <otte@gnome.org>
7249
7250         * gst/parse/grammar.y:
7251           fix assert to not trigger when there's no error argument
7252         * gst/parse/parse.l:
7253           fix definition of caps to allow more than two structures
7254         * testsuite/caps/Makefile.am:
7255         * testsuite/caps/renegotiate.c: (main):
7256           it's sinesrc and works in that case
7257
7258 2004-05-04  Wim Taymans  <wim@fluendo.com>
7259
7260         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7261         (group_dec_link), (gst_opt_scheduler_pad_unlink):
7262         when removing an element from a group, we always need to
7263         decrement the link count that this group had with other 
7264         groups through the element.
7265         added an extra assert to catch inconsistencies when decrementing
7266         the link count.
7267
7268 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7269
7270         * configure.ac:
7271         * docs/gst/Makefile.am:
7272         * docs/gst/gstreamer-sections.txt:
7273         * docs/gst/tmpl/gstcompat.sgml:
7274         * examples/appreader/Makefile.am:
7275         * examples/cutter/Makefile.am:
7276         * examples/events/Makefile.am:
7277         * examples/helloworld/Makefile.am:
7278         * examples/helloworld2/Makefile.am:
7279         * examples/launch/Makefile.am:
7280         * examples/manual/Makefile.am:
7281         * examples/mixer/Makefile.am:
7282         * examples/pingpong/Makefile.am:
7283         * examples/plugins/Makefile.am:
7284         * examples/queue/Makefile.am:
7285         * examples/queue2/Makefile.am:
7286         * examples/queue3/Makefile.am:
7287         * examples/queue4/Makefile.am:
7288         * examples/retag/Makefile.am:
7289         * examples/thread/Makefile.am:
7290         * examples/typefind/Makefile.am:
7291         * examples/xml/Makefile.am:
7292         * gst/Makefile.am:
7293         * gst/autoplug/Makefile.am:
7294         * gst/elements/Makefile.am:
7295         * gst/gstcompat.h:
7296         * gst/indexers/Makefile.am:
7297         * gst/parse/Makefile.am:
7298         * gst/registries/Makefile.am:
7299         * gst/schedulers/Makefile.am:
7300         * libs/gst/bytestream/Makefile.am:
7301         * libs/gst/control/Makefile.am:
7302         * libs/gst/getbits/Makefile.am:
7303         * po/af.po:
7304         * po/az.po:
7305         * po/en_GB.po:
7306         * po/fr.po:
7307         * po/nl.po:
7308         * po/sr.po:
7309         * po/sv.po:
7310         * po/tr.po:
7311         * po/uk.po:
7312         * tests/Makefile.am:
7313         * tests/bufspeed/Makefile.am:
7314         * tests/instantiate/Makefile.am:
7315         * tests/memchunk/Makefile.am:
7316         * tests/muxing/Makefile.am:
7317         * tests/negotiation/Makefile.am:
7318         * tests/probes/Makefile.am:
7319         * tests/sched/Makefile.am:
7320         * tests/seeking/Makefile.am:
7321         * tests/threadstate/Makefile.am:
7322         * testsuite/caps/Makefile.am:
7323         * testsuite/cleanup/Makefile.am:
7324         * testsuite/dlopen/Makefile.am:
7325         * testsuite/dynparams/Makefile.am:
7326         * testsuite/plugin/Makefile.am:
7327         * testsuite/states/Makefile.am:
7328         * tools/Makefile.am:
7329           reorganize compile/link flags to be consistent
7330           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7331
7332 2004-05-04  David Schleef  <ds@schleef.org>
7333
7334         The "once more, with feeling" check-in.
7335         * testsuite/caps/Makefile.am: dist caps_strings
7336         * testsuite/caps/renegotiate.c: (main): This test triggers a
7337           segfault in the core.  Marking as failing.
7338
7339 2004-05-03  David Schleef  <ds@schleef.org>
7340
7341         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7342           by the build bots.
7343         * testsuite/caps/renegotiate.c: (main): Same.
7344
7345 2004-05-03  David Schleef  <ds@schleef.org>
7346
7347         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7348
7349 2004-05-03  David Schleef  <ds@schleef.org>
7350
7351         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7352           variable to find our source file.
7353
7354 2004-05-03  David Schleef  <ds@schleef.org>
7355
7356         * configure.ac:  Link plugins with libgstreamer and dependent
7357           libraries
7358         * testsuite/caps/Makefile.am:
7359         * testsuite/caps/caps_strings:
7360         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7361           through a file of caps strings and test each one
7362
7363 2004-05-04  Benjamin Otte  <otte@gnome.org>
7364
7365         * libs/gst/bytestream/Makefile.am:
7366         * libs/gst/bytestream/adapter.c: 
7367         * libs/gst/bytestream/adapter.h:
7368           add GstAdapter, similar to bytestream, but doesn't require ugly event
7369           handling or uglier loopbased elements
7370
7371 2004-05-03  David Schleef  <ds@schleef.org>
7372
7373         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7374         * testsuite/caps/erathostenes.c:
7375         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7376
7377 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7378
7379         * docs/pwg/pwg.xml:
7380           remove hardcoded stylesheet path (duh)
7381         * docs/random/release:
7382         * docs/gst/gstreamer-sections.txt:
7383         * gst/Makefile.am:
7384         * gst/gst.h:
7385         * gst/gst_private.h:
7386         * gst/gstcaps.c:
7387         * gst/gstevent.c:
7388         * gst/gstformat.c:
7389         * gst/gstinfo.c:
7390         * gst/gstinfo.h:
7391         * gst/gstinterface.c:
7392         * gst/gstmemchunk.c:
7393         * gst/gstprobe.c:
7394         * gst/gstquery.c:
7395         * gst/gstregistry.c:
7396         * gst/gstregistrypool.c:
7397         * gst/gststructure.c:
7398         * gst/gsttaginterface.c:
7399         * gst/gstthread.c:
7400         * gst/gsttrace.c:
7401         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7402         * gst/gsturi.c:
7403         * gst/gstvalue.c:
7404           deprecate gst_info; remove gstlog.h
7405    
7406
7407 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7408
7409         * Makefile.am:
7410         * po/en_GB.po:
7411         * po/sv.po:
7412         * po/uk.po:
7413           updated translations
7414
7415 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7416
7417         * gst/gstbin.c: (gst_bin_dispose):
7418           better debugging
7419
7420 2004-05-03  Johan Dahlin  <johan@gnome.org>
7421
7422         * gst/schedulers/gstoptimalscheduler.c
7423         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7424         really is a GstElement. Avoids critical when running gst-launch -v
7425         and a oggdemux/decoding pipeline.
7426
7427 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7428
7429         * docs/gst/tmpl/gstpipeline.sgml :
7430         * docs/manual/elements-api.xml :
7431                 doc fix by Patrick Guimond (Protector) from devel ML
7432                 reviewed by ronald
7433
7434 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7435
7436         * docs/gst/Makefile.am :
7437         * docs/libs/Makefile.am :
7438                 apply a patch from Arwed v. Merkatz so that gtk-doc
7439                 generated docs install (same for .devhelp file)
7440                 (fixes part 1 of #138836)
7441
7442 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7443
7444         * docs/faq/dependencies.xml: typo
7445         * docs/faq/getting.xml :
7446             - fix download URL for new gstreamer site
7447             - hide sf.net download page as latest version aren't there
7448             - fix apt URLs
7449             - fill "get via CVS" paragraph (link to dev page on the site)
7450         * docs/faq/general.xml:
7451             hide status tables as they no more exists
7452             change case on plugins license file to reflect reality
7453         * docs/faq/troubleshooting.xml:
7454             remove the wiki question/answer as there is no more wiki
7455
7456 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7457
7458         * gst/gsterror.h:
7459           include the headers needed for declarations used in this header
7460
7461 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7462
7463         * docs/random/uraeus/gstreamer_and_midi.txt :
7464           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7465           (fixes #132288)
7466
7467 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7468
7469         reviewed by Benjamin Otte  <otte@gnome.org>
7470
7471         * gst/schedulers/gthread-cothreads.h:
7472           free allocated data for main cothread, too when destroying context
7473           (fixes #141417)
7474
7475 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7476
7477         * docs/manual/goals.xml : remove duplicated paragraph at end 
7478         of doc page (fixes #141448)
7479
7480 2004-04-29  David Schleef  <ds@schleef.org>
7481
7482         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7483         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7484
7485 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7486
7487         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7488           fix property
7489         * gst/gstcaps.c:
7490           fix doc string
7491         * po/POTFILES.in:
7492           rename typefind source file
7493
7494 2004-04-28  David Schleef  <ds@schleef.org>
7495
7496         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7497         * win32/GStreamer.vcproj:
7498         * win32/Makefile:
7499         * win32/config.h:
7500         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7501         (_trewinddir), (_ttelldir), (_tseekdir):
7502         * win32/dirent.h:
7503         * win32/gst-inspect.vcproj:
7504         * win32/gst-launch.vcproj:
7505         * win32/gst-register.vcproj:
7506         * win32/gstbytestream.vcproj:
7507         * win32/gstelements.vcproj:
7508         * win32/gstoptimalscheduler.vcproj:
7509         * win32/gstspider.vcproj:
7510         * win32/gtchar.h:
7511         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7512         * win32/mman.h:
7513         * win32/mman.inl:
7514         * win32/msvc71.sln:
7515
7516 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7517
7518         * gst/gst.c: (init_post):
7519         * gst/gstinfo.c:
7520           remove useless _gst_progname stuff
7521         * tools/gst-inspect.c: (print_field), (print_caps):
7522           improve caps output
7523
7524 2004-04-28  David Schleef  <ds@schleef.org>
7525
7526         Disable parsing of a lot of files that aren't part of the
7527         exported API.  Move corresponding template files to old/,
7528         waiting for removal when they don't contain anything
7529         interesting.
7530         * docs/gst/Makefile.am:
7531         * docs/gst/gstreamer-sections.txt:
7532         * docs/gst/tmpl/cothreads.sgml:
7533         * docs/gst/tmpl/cothreads_compat.sgml:
7534         * docs/gst/tmpl/gettext.sgml:
7535         * docs/gst/tmpl/gobject2gtk.sgml:
7536         * docs/gst/tmpl/grammar.tab.sgml:
7537         * docs/gst/tmpl/gst-i18n-app.sgml:
7538         * docs/gst/tmpl/gst-i18n-lib.sgml:
7539         * docs/gst/tmpl/gst_private.sgml:
7540         * docs/gst/tmpl/gstaggregator.sgml:
7541         * docs/gst/tmpl/gstarch.sgml:
7542         * docs/gst/tmpl/gstatomic_impl.sgml:
7543         * docs/gst/tmpl/gstbufferstore.sgml:
7544         * docs/gst/tmpl/gstdata_private.sgml:
7545         * docs/gst/tmpl/gstdisksink.sgml:
7546         * docs/gst/tmpl/gstdisksrc.sgml:
7547         * docs/gst/tmpl/gstelementfactory.sgml:
7548         * docs/gst/tmpl/gstextratypes.sgml:
7549         * docs/gst/tmpl/gstfakesink.sgml:
7550         * docs/gst/tmpl/gstfakesrc.sgml:
7551         * docs/gst/tmpl/gstfdsink.sgml:
7552         * docs/gst/tmpl/gstfdsrc.sgml:
7553         * docs/gst/tmpl/gstfilesink.sgml:
7554         * docs/gst/tmpl/gstfilesrc.sgml:
7555         * docs/gst/tmpl/gsthttpsrc.sgml:
7556         * docs/gst/tmpl/gstidentity.sgml:
7557         * docs/gst/tmpl/gstindexfactory.sgml:
7558         * docs/gst/tmpl/gstmarshal.sgml:
7559         * docs/gst/tmpl/gstmd5sink.sgml:
7560         * docs/gst/tmpl/gstmultidisksrc.sgml:
7561         * docs/gst/tmpl/gstmultifilesrc.sgml:
7562         * docs/gst/tmpl/gstpadtemplate.sgml:
7563         * docs/gst/tmpl/gstpipefilter.sgml:
7564         * docs/gst/tmpl/gstschedulerfactory.sgml:
7565         * docs/gst/tmpl/gstsearchfuncs.sgml:
7566         * docs/gst/tmpl/gstshaper.sgml:
7567         * docs/gst/tmpl/gstspider.sgml:
7568         * docs/gst/tmpl/gstspideridentity.sgml:
7569         * docs/gst/tmpl/gststatistics.sgml:
7570         * docs/gst/tmpl/gsttee.sgml:
7571         * docs/gst/tmpl/gsttimecache.sgml:
7572         * docs/gst/tmpl/gsttypefind.sgml:
7573         * docs/gst/tmpl/gsttypefindfactory.sgml:
7574         * docs/gst/tmpl/gstxmlregistry.sgml:
7575         * docs/gst/tmpl/gthread-cothreads.sgml:
7576         * docs/gst/tmpl/old/cothreads.sgml:
7577         * docs/gst/tmpl/old/cothreads_compat.sgml:
7578         * docs/gst/tmpl/old/gettext.sgml:
7579         * docs/gst/tmpl/old/gobject2gtk.sgml:
7580         * docs/gst/tmpl/old/grammar.tab.sgml:
7581         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7582         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7583         * docs/gst/tmpl/old/gst_private.sgml:
7584         * docs/gst/tmpl/old/gstaggregator.sgml:
7585         * docs/gst/tmpl/old/gstarch.sgml:
7586         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7587         * docs/gst/tmpl/old/gstbufferstore.sgml:
7588         * docs/gst/tmpl/old/gstdata_private.sgml:
7589         * docs/gst/tmpl/old/gstdisksink.sgml:
7590         * docs/gst/tmpl/old/gstdisksrc.sgml:
7591         * docs/gst/tmpl/old/gstelementfactory.sgml:
7592         * docs/gst/tmpl/old/gstextratypes.sgml:
7593         * docs/gst/tmpl/old/gstfakesink.sgml:
7594         * docs/gst/tmpl/old/gstfakesrc.sgml:
7595         * docs/gst/tmpl/old/gstfdsink.sgml:
7596         * docs/gst/tmpl/old/gstfdsrc.sgml:
7597         * docs/gst/tmpl/old/gstfilesink.sgml:
7598         * docs/gst/tmpl/old/gstfilesrc.sgml:
7599         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7600         * docs/gst/tmpl/old/gstidentity.sgml:
7601         * docs/gst/tmpl/old/gstindexfactory.sgml:
7602         * docs/gst/tmpl/old/gstmarshal.sgml:
7603         * docs/gst/tmpl/old/gstmd5sink.sgml:
7604         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7605         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7606         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7607         * docs/gst/tmpl/old/gstpipefilter.sgml:
7608         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7609         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7610         * docs/gst/tmpl/old/gstshaper.sgml:
7611         * docs/gst/tmpl/old/gstspider.sgml:
7612         * docs/gst/tmpl/old/gstspideridentity.sgml:
7613         * docs/gst/tmpl/old/gststatistics.sgml:
7614         * docs/gst/tmpl/old/gsttee.sgml:
7615         * docs/gst/tmpl/old/gsttimecache.sgml:
7616         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7617         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7618         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7619         * docs/gst/tmpl/old/types.sgml:
7620         * docs/gst/tmpl/types.sgml:
7621
7622         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7623         gtkdoc-scan doesn't like files with the same name in different
7624         directories.
7625         * gst/elements/Makefile.am:
7626         * gst/elements/gstelements.c:
7627         * gst/elements/gsttypefind.c: 
7628         * gst/elements/gsttypefind.h:
7629         * gst/elements/gsttypefindelement.c:
7630         * gst/elements/gsttypefindelement.h:
7631
7632 2004-04-28  David Schleef  <ds@schleef.org>
7633
7634         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7635         patch (bug #141317):
7636         * gst/gst-i18n-lib.h: Allow disabling gettext.
7637         * gst/gstatomic_impl.h: disable warning when it's dumb.
7638         * gst/gstclock.c: fix include
7639         * gst/gstcompat.h: fix variadic macro
7640         * gst/gstinfo.c: fix include
7641         * gst/gstmacros.h: add defines for inlines on MSVC
7642         * gst/gstplugin.c: fix includes
7643         * gst/gstregistry.c: fix includes
7644         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7645         * gst/gstsystemclock.c: fix include
7646         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7647         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7648         * gst/registries/gstxmlregistry.c:
7649         (gst_xml_registry_parse_element_factory): fix use of non-portable
7650         functions
7651         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7652         * libs/gst/control/dparammanager.h: same
7653
7654 2004-04-28  David Schleef  <ds@schleef.org>
7655
7656         Move a bunch of unused files to old/ with names that are
7657         not case-insensitive-unique.  These files still contain some
7658         useful information that needs to be merged into gstbin.sgml,
7659         etc., so they shouldn't be deleted yet.
7660         * docs/gst/tmpl/GstBin.sgml:
7661         * docs/gst/tmpl/GstBuffer.sgml:
7662         * docs/gst/tmpl/GstCaps.sgml:
7663         * docs/gst/tmpl/GstClock.sgml:
7664         * docs/gst/tmpl/GstCompat.sgml:
7665         * docs/gst/tmpl/GstData.sgml:
7666         * docs/gst/tmpl/GstElement.sgml:
7667         * docs/gst/tmpl/GstEvent.sgml:
7668         * docs/gst/tmpl/GstIndex.sgml:
7669         * docs/gst/tmpl/GstStructure.sgml:
7670         * docs/gst/tmpl/GstTag.sgml:
7671         * docs/gst/tmpl/old/GstBin.sgml:
7672         * docs/gst/tmpl/old/GstBuffer.sgml:
7673         * docs/gst/tmpl/old/GstCaps.sgml:
7674         * docs/gst/tmpl/old/GstClock.sgml:
7675         * docs/gst/tmpl/old/GstCompat.sgml:
7676         * docs/gst/tmpl/old/GstData.sgml:
7677         * docs/gst/tmpl/old/GstElement.sgml:
7678         * docs/gst/tmpl/old/GstEvent.sgml:
7679         * docs/gst/tmpl/old/GstIndex.sgml:
7680         * docs/gst/tmpl/old/GstStructure.sgml:
7681         * docs/gst/tmpl/old/GstTag.sgml:
7682
7683 2004-04-28  David Schleef  <ds@schleef.org>
7684
7685         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7686         (gst_caps_append), (gst_caps_append_structure),
7687         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7688         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7689         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7690         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7691         (gst_caps_intersect), (gst_caps_normalize),
7692         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7693         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7694         * gst/gstcaps.h: use GST_IS_CAPS().
7695
7696 2004-04-26  David Schleef  <ds@schleef.org>
7697
7698         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7699         assembly.  gcc doesn't handle it correctly. (bug #141083)
7700         * gst/gsttrashstack.h: same
7701
7702 2004-04-25  Benjamin Otte  <otte@gnome.org>
7703
7704         * gst/gstelement.c: (gst_element_change_state):
7705           fix assertion to do an int comparison
7706
7707 2004-04-25  Benjamin Otte  <otte@gnome.org>
7708
7709         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7710           better debugging output on error
7711
7712 2004-04-25  Benjamin Otte  <otte@gnome.org>
7713
7714         * gst/gstcaps.c: (gst_caps_subtract):
7715           fix memleak
7716
7717 2004-04-23  Benjamin Otte  <otte@gnome.org>
7718
7719         * gst/gstvalue.c: (gst_value_compare_buffer),
7720         (_gst_value_initialize):
7721           add comparison function for buffers
7722
7723 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7724
7725         * docs/pwg/pwg.xml:
7726           Just found out that this so-called "ima-wav" format is really
7727           just "dvi adpcm" (according to the MS WAV documentation). So
7728           renaming it. We didn't use it yet anyway.
7729
7730 2004-04-23  Benjamin Otte  <otte@gnome.org>
7731
7732         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7733           call gst_caps_is_subset
7734
7735 2004-04-23  Benjamin Otte  <otte@gnome.org>
7736
7737         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7738         (gst_caps_is_subset):
7739           add documentation
7740
7741 2004-04-23  Benjamin Otte  <otte@gnome.org>
7742           
7743         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7744         (gst_caps_structure_subtract), (gst_caps_subtract),
7745         (gst_caps_structure_figure_out_union),
7746         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7747           fix simplifying and subtracting not working correctly with optional
7748           properties
7749           solve assorted problems that make it now simplify ebven more
7750         * docs/gst/tmpl/gstcaps.sgml:
7751         * gst/gstcaps.h:
7752           make gst_caps_do_simplify return a bool to indicate if it simplified
7753         * testsuite/caps/simplify.c: (main):
7754           add more checks. The tests is quite a bit useless right now because
7755           the core is heavily simplifying itself.
7756         * testsuite/caps/caps.h:
7757           fix caps to contain all optional properties
7758
7759 2004-04-22  Benjamin Otte  <otte@gnome.org>
7760
7761         * docs/gst/tmpl/gstcaps.sgml:
7762         * docs/gst/tmpl/gstfilesrc.sgml:
7763         * docs/gst/tmpl/gststructure.sgml:
7764         * docs/gst/tmpl/gstvalue.sgml:
7765           update for recent API changes
7766         * gst/gstcaps.c: (gst_caps_do_simplify):
7767           fix to stop trying with a freed structure
7768         * gst/gstpad.c: (gst_pad_link_fixate):
7769           simplify caps
7770         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7771           remove C++ comment
7772         * gst/gstpad.h:
7773           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7774         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7775         (gst_structure_to_string):
7776           keep the correct type when using lists of ranges
7777         * gst/gstvalue.c: (gst_value_list_prepend_value),
7778         (gst_value_list_append_value):
7779           copy the value before adding to the list (d'oh)
7780         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7781         (gst_value_subtract_int_range_int_range):
7782           handle overflows correctly
7783         * gst/gstvalue.c: (gst_value_subtract_from_list):
7784           fix memleak
7785         * testsuite/caps/caps.h:
7786           add a caps that caused segfaults
7787
7788 2004-04-22  Benjamin Otte  <otte@gnome.org>
7789
7790         * testsuite/refcounting/pad.c: (main):
7791           fix test
7792
7793 2004-04-22  Benjamin Otte  <otte@gnome.org>
7794
7795         * gst/gstcaps.c: (gst_caps_subtract):
7796           allow subtracting ANY and EMPTY from ANY caps
7797
7798 2004-04-22  Benjamin Otte  <otte@gnome.org>
7799
7800         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7801         (gst_caps_union):
7802           only simplify in functions that create new caps. Simplifying in
7803           gst_caps_append breaks tests.
7804
7805 2004-04-22  Benjamin Otte  <otte@gnome.org>
7806
7807         * gst/gstcaps.c: (gst_caps_structure_simplify):
7808           unset GValue after use
7809         * gst/gstcaps.c: (gst_caps_append), 
7810         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7811           use gst_caps_simplify (reduces registry size by 30%)
7812         * gst/gstpad.c: (gst_pad_template_new):
7813           don't allow NULL caps
7814
7815 2004-04-22  Benjamin Otte  <otte@gnome.org>
7816
7817         * docs/gst/gstreamer-sections.txt:
7818           add gst_caps_do_simplify
7819         * gst/gstcaps.c:
7820           add documentation for gst_caps_do_simplify
7821         * gst/gstvalue.h:
7822           fix typo in gst_value_register_subtract_func declaration for gst-doc
7823
7824 2004-04-22  Benjamin Otte  <otte@gnome.org>
7825
7826         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7827           fix bug when converting from empty string.
7828         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7829         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7830           use gst_caps_new_empty to allocate a new caps. Only that function
7831           allocates memory for caps now.
7832         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7833         (gst_caps_remove_structure):
7834           add ability to remove one structure (but not to header yet)
7835         * gst/gstcaps.c: (gst_caps_compare_structures),
7836         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7837         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7838         * gst/gstcaps.h:
7839           add gst_caps_do_simplify that tries to simplify a caps in place.
7840           Deprecate old gst_caps_simplify function.
7841         * testsuite/caps/caps.h:
7842           add caps.h containing a common set of caps to test against.
7843         * testsuite/caps/sets.c: (check_caps), (main):
7844           use it.
7845         * testsuite/caps/.cvsignore:
7846         * testsuite/caps/Makefile.am:
7847         * testsuite/caps/simplify.c: (check_caps), (main):
7848           add test to check correctness and efficency of caps simplification.
7849
7850 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7851
7852         reviewed by Benjamin Otte  <otte@gnome.org>
7853
7854         * gst/gstparse.c: (_gst_parse_escape):
7855           Free the GString used in _gst_parse_escape()
7856
7857 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7858
7859         * gst/gstpad.c: (gst_pad_link_negotiate):
7860           refuse to link if the link is not possible
7861         * configure.ac:
7862         * testsuite/Makefile.am:
7863         * testsuite/negotiation/.cvsignore:
7864         * testsuite/negotiation/Makefile.am:
7865         * testsuite/negotiation/pad_link.c: (main):
7866           add test that checks the above behaviour
7867
7868 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7869
7870         * docs/gst/gstreamer-sections.txt:
7871           add newly added API
7872
7873 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7874
7875         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7876         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7877         (gst_filesrc_open_file), (gst_filesrc_close_file),
7878         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7879         * gst/elements/gstfilesrc.h:
7880           add support for non-regular files (#140734)
7881
7882 2004-04-21  Benjamin Otte  <otte@gnome.org>
7883
7884         * gst/gstpad.c: (gst_pad_link_fixate):
7885           add sophisticated error checking code to see if fixation functions
7886           did their fixation right
7887
7888 2004-04-21  Benjamin Otte  <otte@gnome.org>
7889
7890         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7891           check for ANY caps before appending/unioning
7892         * gst/gstcaps.c: (gst_caps_is_subset),
7893         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7894         (gst_caps_structure_subtract), (gst_caps_subtract):
7895         * gst/gstcaps.h:
7896           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7897           the API. deprecate gst_caps_is_equal_fixed
7898         * gst/gstpad.c: (gst_pad_try_set_caps):
7899         * gst/gstqueue.c: (gst_queue_link):
7900           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7901         * gst/gststructure.c: (gst_structure_get_name_id):
7902         * gst/gststructure.h:
7903           add function gst_structure_get_name_id
7904         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7905         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7906         (gst_value_subtract_int_range_int_range),
7907         (gst_value_subtract_double_double_range),
7908         (gst_value_subtract_double_range_double),
7909         (gst_value_subtract_double_range_double_range),
7910         (gst_value_subtract_from_list), (gst_value_subtract_list),
7911         (gst_value_can_intersect), (gst_value_subtract),
7912         (gst_value_can_subtract), (gst_value_register_subtract_func),
7913         (_gst_value_initialize):
7914         * gst/gstvalue.h:
7915           add support for subtracting values from each other. Note that
7916           subtracting means subtracting as in set theory. Required for caps
7917           stuff above.
7918         * testsuite/caps/.cvsignore:
7919         * testsuite/caps/Makefile.am:
7920         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7921         * testsuite/caps/sets.c: (check_caps), (main):
7922         * testsuite/caps/subtract.c: (check_caps), (main):
7923           add tests for subtraction and equality code.
7924
7925 2004-04-20  David Schleef  <ds@schleef.org>
7926
7927         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7928         * gst/indexers/Makefile.am:
7929         * gst/schedulers/Makefile.am:
7930         * libs/gst/bytestream/Makefile.am:
7931         * libs/gst/control/Makefile.am:
7932         * libs/gst/getbits/Makefile.am:
7933
7934 2004-04-20  David Schleef  <ds@schleef.org>
7935
7936         * common/as-libtool.mak: Fine-tune DLL building.
7937         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7938         (like gst-plugins)
7939         * examples/plugins/Makefile.am: remove plugindir
7940         * gst/autoplug/Makefile.am: DLL building fixes
7941         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7942         Windows.
7943         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7944         * gst/indexers/Makefile.am: DLL building fixes
7945         * gst/schedulers/Makefile.am: DLL building fixes.
7946         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7947         * libs/gst/control/Makefile.am: same
7948         * libs/gst/getbits/Makefile.am: same
7949         * testsuite/Makefile.am: New dlopen directory
7950         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7951         when dlopened.
7952         * testsuite/dlopen/dlopen_gst.c: (main): same
7953         * testsuite/dlopen/loadgst.c: (do_test): same
7954
7955 2004-04-20  David Schleef  <ds@schleef.org>
7956
7957         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7958         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7959
7960 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7961
7962         * gst/gstelement.c: (gst_element_wait),
7963         (gst_element_set_time_delay), (gst_element_change_state):
7964           Use GST_TIME_*
7965
7966 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7967
7968         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7969         (gst_spider_identity_plug):
7970           improve debugging messages
7971         * gst/gstbin.c: (gst_bin_remove_func):
7972           make sure the state_change function is only called with simple state
7973           transitions
7974
7975 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7976
7977         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7978         (gst_fakesink_set_property), (gst_fakesink_chain):
7979         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7980         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7981         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7982         * gst/elements/gstidentity.c: (gst_identity_chain),
7983         (gst_identity_set_property):
7984         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7985         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7986           add warnings to _set_property for unknown arguments
7987           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7988
7989 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7990
7991         * Makefile.am:
7992         * docs/manuals.mak:
7993           add .po file download snippet
7994           fix a bug in the doc makefile
7995
7996 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7997
7998         * Makefile.am:
7999         * po/LINGUAS:
8000         * po/en_GB.po:
8001           Added en_GB translation (Gareth Owen)
8002
8003 2004-04-20  Johan Dahlin  <johan@gnome.org>
8004
8005         * gst/gstpad.c (_invent_event): Clean up
8006
8007 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8008
8009         * testsuite/caps/filtercaps.c: (main):
8010           fix test to test things correctly (caps are complicated)
8011
8012 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8013
8014         * testsuite/caps/Makefile.am:
8015         * testsuite/caps/filtercaps.c: (main):
8016           add test (that doesn't work right now, but should)
8017
8018 2004-04-19  David Schleef  <ds@schleef.org>
8019
8020         * configure.ac: Add test for allowing unaligned access.  Add define
8021         to put in gstconfig.h.
8022         * docs/gst/gstreamer-sections.txt: New symbols
8023         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
8024         * docs/gst/tmpl/gstfilesrc.sgml:
8025         * docs/gst/tmpl/gstparse.sgml:
8026         * docs/gst/tmpl/gsttypes.sgml:
8027         * docs/gst/tmpl/gstutils.sgml:
8028         * docs/gst/tmpl/gstvalue.sgml:
8029         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
8030         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8031         on most !i386/!powerpc architectures.  From Daniel Gazard
8032         <daniel.gazard@free.fr>.  (bug #140156)
8033         * po/af.po: Check in changes made by gettext.
8034         * po/az.po:
8035         * po/fr.po:
8036         * po/nl.po:
8037         * po/sr.po:
8038         * po/sv.po:
8039
8040 2004-04-20  Benjamin Otte  <otte@gnome.org>
8041
8042         * gst/schedulers/entryscheduler.c: 
8043         (gst_entry_scheduler_yield):
8044           refuse to yield when decoupled elements insist on doing that.
8045           At least it's better than crashing
8046
8047 2004-04-19  David Schleef  <ds@schleef.org>
8048
8049         * docs/libs/Makefile.am: Change sinclude to include
8050         * docs/gst/Makefile.am: same
8051         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8052
8053 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8054
8055         * po/LINGUAS:
8056         * po/uk.po:
8057           Added Ukrainian translation (Maxim V. Dziumanenko)
8058
8059 2004-04-19  Johan Dahlin  <johan@gnome.org>
8060
8061         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8062         checking here, do it before calling the function.
8063         Clean up, use for loops instead of while loops while iterating
8064         over lists.
8065
8066         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8067         in debug message.
8068         (gst_spider_create_and_plug): Improve debug message.
8069         General: Replace while loops which iterates over GLists with for
8070         loops. Which are much cleaner, improves readability, especially
8071         for gst_spider_identity_plug
8072
8073         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8074         fixes bug 140477
8075
8076 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8077
8078         * po/LINGUAS:
8079         * po/tr.po:
8080           Added Turkish translation (Baris Cicek)
8081
8082 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8083
8084         * docs/faq/troubleshooting.xml:
8085           Mention gst-register in the FAQ (fixes 139045).
8086
8087 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8088
8089         * docs/gst/gstreamer-sections.txt:
8090
8091 2004-04-17  Benjamin Otte  <otte@gnome.org>
8092
8093         * gst/gstelement.c: (gst_element_dispose):
8094           simplify
8095         * gst/gstpad.c: (gst_pad_call_chain_function):
8096           don't create loads of events due to bad macro usage
8097
8098 2004-04-16  David Schleef  <ds@schleef.org>
8099
8100         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8101         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8102         * gst/gstvalue.c: (gst_value_serialize_buffer),
8103         (gst_value_deserialize_buffer), (gst_type_is_fixed),
8104         (_gst_value_initialize): Create a new function gst_type_is_fixed()
8105         to indicate types that are fixed wrt caps or not.  Switching to
8106         this function fixes (bug #140298).
8107         * gst/gstvalue.h:
8108
8109 2004-04-16  David Schleef  <ds@schleef.org>
8110
8111         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
8112         for GST_UNALIGNED_ACESS, since we essentially know which archs
8113         are ok.
8114
8115 2004-04-17  Benjamin Otte  <otte@gnome.org>
8116
8117         * docs/gst/Makefile.am:
8118           ignore gst/parse directory when building docs (fixes #140205)
8119
8120 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8121
8122         * testsuite/refcounting/mem.c: (vmsize):
8123           do error checking
8124
8125 2004-04-16  Johan Dahlin  <johan@gnome.org>
8126
8127         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
8128         and gst_pad_call_get_function.
8129
8130 2004-04-15  David Schleef  <ds@schleef.org>
8131
8132         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
8133         checks if we can access unaligned memory.
8134         * configure.ac: Use it.
8135
8136 2004-04-16  Benjamin Otte  <otte@gnome.org>
8137
8138         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
8139         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8140         * gst/elements/gstfilesrc.h:
8141           s/seek_happened/need_discont/ and require discont before sending any
8142           data
8143
8144 2004-04-15  David Schleef  <ds@schleef.org>
8145
8146         * gst/gstvalue.c: (gst_value_serialize_buffer),
8147         (gst_value_deserialize_buffer), (_gst_value_initialize):
8148         Register these types as fundamental types. (bug #140015)
8149
8150 2004-04-16  Benjamin Otte  <otte@gnome.org>
8151
8152         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
8153         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
8154         (gst_pad_pull):
8155           implement enforcing discont events before buffers are passed. This
8156           allows state changes of only some elements and later correctly going
8157           on where they left off (or in short: you can now set audio sinks to
8158           NULL to release the device when the pipeline is paused)
8159         * gst/gstpad.c: (gst_pad_call_chain_function),
8160         (gst_pad_call_get_function):
8161         * gst/gstpad.h:
8162           add gst_pad_call_chain_function and gst_pad_call_get_function for
8163           scheduler interaction. They are required because of the changes
8164           above.
8165         * gst/schedulers/entryscheduler.c: (get_buffer),
8166         (gst_entry_scheduler_chain_wrapper),
8167         (gst_entry_scheduler_get_wrapper),
8168         (gst_entry_scheduler_state_transition),
8169         (gst_entry_scheduler_pad_link):
8170         * gst/schedulers/gstbasicscheduler.c:
8171         (gst_basic_scheduler_chain_wrapper),
8172         (gst_basic_scheduler_src_wrapper),
8173         (gst_basic_scheduler_chainhandler_proxy),
8174         (gst_basic_scheduler_gethandler_proxy),
8175         (gst_basic_scheduler_cothreaded_chain),
8176         (gst_basic_scheduler_chain_elements):
8177         * gst/schedulers/gstoptimalscheduler.c:
8178         (get_group_schedule_function), (pad_clear_queued),
8179         (gst_opt_scheduler_pad_link):
8180           use the new functions instead of calling get/chain-functions
8181           directly.
8182
8183 2004-04-15  David Schleef  <ds@schleef.org>
8184
8185         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
8186         * docs/gst/tmpl/gstinfo.sgml: same
8187         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
8188         gtk-doc put here.
8189         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
8190         * examples/queue/queue.c: (main):  We iterate pipelines, not
8191         bins.  (bug #139996)
8192
8193 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8194
8195         * docs/pwg/advanced-types.xml:
8196           Add MS RLE support. Also document Qt RLE although I have no sample
8197           files for that yet. And document an extra property for ADPCM.
8198
8199 2004-04-15  David Schleef  <ds@schleef.org>
8200
8201         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
8202         (_gst_plugin_fault_handler_setup):  Disable more stuff on
8203         Windows.
8204
8205 2004-04-15  David Schleef  <ds@schleef.org>
8206
8207         * gst/gstinfo.c: (_gst_debug_init): Change some internal
8208         symbol names to not conflict with new gstinfo.h symbols.
8209         * gst/gstinfo.h: Add inline functions for all those crazy
8210         compilers that don't know how to handle variadic macros (MSVC).
8211
8212 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8213
8214         * configure.ac: bump nano to 1
8215
8216 === release 0.8.1 ===
8217
8218 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8219
8220         * NEWS:
8221         * RELEASE:
8222         * configure.ac:
8223           releasing 0.8.1, "Snow Brigade"
8224
8225 2004-04-14  David Schleef  <ds@schleef.org>
8226
8227         * testsuite/Makefile.am: define tests_ignore
8228         * testsuite/Rules: Added new tests_ignore, which get compiled,
8229         but not run (generally because they're inconsistent or have
8230         heisenbugs).  Now we can ensure all the .c files compile in
8231         testsuite/.
8232         * testsuite/bins/Makefile.am: define tests_ignore
8233         * testsuite/bytestream/Makefile.am:
8234         * testsuite/caps/Makefile.am:
8235         * testsuite/clock/Makefile.am:
8236         * testsuite/debug/Makefile.am:
8237         * testsuite/debug/global.c: (gst_debug_log_one),
8238         (gst_debug_log_two): Fix compilation problem.
8239         * testsuite/dynparams/Makefile.am:
8240         * testsuite/elements/Makefile.am:
8241         * testsuite/ghostpads/Makefile.am:
8242         * testsuite/indexers/Makefile.am:
8243         * testsuite/parse/Makefile.am:
8244         * testsuite/plugin/Makefile.am:
8245         * testsuite/refcounting/Makefile.am:
8246         * testsuite/refcounting/element_pad.c: (main): Don't return leak
8247         results, because it's not calculated correctly.
8248         * testsuite/refcounting/pad.c: (main): same
8249         * testsuite/states/Makefile.am:
8250         * testsuite/tags/Makefile.am:
8251         * testsuite/threads/Makefile.am:
8252
8253 2004-04-14  David Schleef  <ds@schleef.org>
8254
8255         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
8256         generating bad code around the cpu detection asm code.
8257
8258 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8259
8260         * tools/gst-inspect.c: (print_element_info):
8261           print numeric version of rank as well, since we added some - 1
8262           rank values to elements
8263
8264 2004-04-13  David Schleef  <ds@schleef.org>
8265
8266         * configure.ac:  Disable various code when compiling for MinGW.
8267         * gst/elements/Makefile.am:
8268         * gst/elements/gstelements.c:
8269         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8270         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
8271         * gst/registries/gstxmlregistry.c: (make_dir):
8272
8273 2004-04-13  David Schleef  <ds@schleef.org>
8274
8275         * gst/Makefile.am:
8276         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
8277         assembly.
8278         * gst/gstcpuid_i386.s: remove
8279
8280 2004-04-13  David Schleef  <ds@schleef.org>
8281
8282         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8283         seems to think it needs to be done.
8284         * docs/gst/tmpl/gstfakesink.sgml:
8285         * docs/gst/tmpl/gstfakesrc.sgml:
8286         * docs/gst/tmpl/gstfdsink.sgml:
8287         * docs/gst/tmpl/gstfdsrc.sgml:
8288         * docs/gst/tmpl/gstfilesink.sgml:
8289         * docs/gst/tmpl/gstfilesrc.sgml:
8290         * docs/gst/tmpl/gstidentity.sgml:
8291         * docs/gst/tmpl/gstmd5sink.sgml:
8292         * docs/gst/tmpl/gstmultifilesrc.sgml:
8293         * docs/gst/tmpl/gstpipefilter.sgml:
8294         * docs/gst/tmpl/gstshaper.sgml:
8295         * docs/gst/tmpl/gstspider.sgml:
8296         * docs/gst/tmpl/gstspideridentity.sgml:
8297         * docs/gst/tmpl/gststatistics.sgml:
8298         * docs/gst/tmpl/gsttee.sgml:
8299         * docs/gst/tmpl/gsttypefind.sgml:
8300         * docs/gst/tmpl/gstutils.sgml:
8301
8302 2004-04-13  David Schleef  <ds@schleef.org>
8303
8304         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8305         and to build DLLs on Windows.
8306         * gst/Makefile.am:
8307         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8308         (gst_filesrc_open_file):
8309         * gst/schedulers/Makefile.am:
8310
8311 2004-04-13  David Schleef  <ds@schleef.org>
8312
8313         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8314         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8315         fixating lists.
8316
8317 2004-04-12  David Schleef  <ds@schleef.org>
8318
8319         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8320         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8321         to using it.
8322         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8323         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8324         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8325         * gst/gststructure.c: (gst_structure_set_valist),
8326         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8327         support for buffers.
8328         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8329         intended to be const.
8330         * gst/gsttag.h: same
8331         * gst/gstvalue.c: (gst_value_serialize_buffer),
8332         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8333         to (de)serialize buffers.
8334         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8335         * testsuite/caps/string-conversions.c: (main):
8336         * testsuite/caps/value_serialize.c: add new test
8337
8338 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8339
8340         * docs/pwg/advanced-types.xml:
8341           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8342
8343 2004-04-11  Benjamin Otte  <otte@gnome.org>
8344
8345         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8346           rename categories to basic_*
8347         * gst/schedulers/gstbasicscheduler.c: 
8348         (gst_basic_scheduler_chain_wrapper),
8349         (gst_basic_scheduler_chainhandler_proxy),
8350         (gst_basic_scheduler_gethandler_proxy),
8351         (gst_basic_scheduler_eventhandler_proxy):
8352           debugging category fixes - put common stuff in log category
8353         * gst/schedulers/gstbasicscheduler.c: 
8354         (gst_basic_scheduler_chain_elements):
8355           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8356           active and linking two active chains
8357
8358 2004-04-10  Benjamin Otte  <otte@gnome.org>
8359
8360         * docs/pwg/intro-preface.xml:
8361           fix dead links and remove reference to Wiki
8362
8363 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8364
8365         * gst/schedulers/gstbasicscheduler.c:
8366           make sure we can switch back to the main function if we're still in
8367           the main function (supposed to fix #139617)
8368         * gst/schedulers/gthread-cothreads.h:
8369           don't throw an error when switching to the same cothread
8370
8371 2004-04-09  Benjamin Otte  <otte@gnome.org>
8372
8373         * gst/gstbin.c: (gst_bin_get_type):
8374         * gst/gstclock.c: (gst_clock_get_type):
8375         * gst/gstindex.c: (gst_index_get_type):
8376         * gst/gstobject.c: (gst_object_get_type),
8377         (gst_signal_object_get_type):
8378         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8379         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8380         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8381         * gst/gstqueue.c: (gst_queue_get_type):
8382         * gst/gstregistry.c: (gst_registry_get_type):
8383         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8384         * gst/gstthread.c: (gst_thread_get_type):
8385           don't use memchunks for these objects, use malloc instead
8386
8387 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8388
8389         * docs/gst/.cvsignore:
8390         * docs/gst/Makefile.am:
8391         * docs/gst/gstreamer-sections.txt:
8392         * docs/gst/tmpl/gstaggregator.sgml:
8393         * docs/gst/tmpl/gstbuffer.sgml:
8394         * docs/gst/tmpl/gstclock.sgml:
8395         * docs/gst/tmpl/gstelement.sgml:
8396         * docs/gst/tmpl/gstfakesink.sgml:
8397         * docs/gst/tmpl/gstfakesrc.sgml:
8398         * docs/gst/tmpl/gstfdsink.sgml:
8399         * docs/gst/tmpl/gstfdsrc.sgml:
8400         * docs/gst/tmpl/gstfilesink.sgml:
8401         * docs/gst/tmpl/gstfilesrc.sgml:
8402         * docs/gst/tmpl/gstidentity.sgml:
8403         * docs/gst/tmpl/gstindex.sgml:
8404         * docs/gst/tmpl/gstinfo.sgml:
8405         * docs/gst/tmpl/gstmd5sink.sgml:
8406         * docs/gst/tmpl/gstmultifilesrc.sgml:
8407         * docs/gst/tmpl/gstpad.sgml:
8408         * docs/gst/tmpl/gstpipefilter.sgml:
8409         * docs/gst/tmpl/gstpipeline.sgml:
8410         * docs/gst/tmpl/gstpluginfeature.sgml:
8411         * docs/gst/tmpl/gstqueue.sgml:
8412         * docs/gst/tmpl/gstregistry.sgml:
8413         * docs/gst/tmpl/gstscheduler.sgml:
8414         * docs/gst/tmpl/gstshaper.sgml:
8415         * docs/gst/tmpl/gstspider.sgml:
8416         * docs/gst/tmpl/gstspideridentity.sgml:
8417         * docs/gst/tmpl/gststatistics.sgml:
8418         * docs/gst/tmpl/gstsystemclock.sgml:
8419         * docs/gst/tmpl/gsttee.sgml:
8420         * docs/gst/tmpl/gstthread.sgml:
8421         * docs/gst/tmpl/gsttypefind.sgml:
8422         * docs/gst/tmpl/gstutils.sgml:
8423           further doc build fixes
8424
8425 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8426
8427         * docs/gst/Makefile.am:
8428           make docs exit on scanning problems
8429           fix nonsrcdir build issues
8430         * docs/gst/gstreamer-sections.txt:
8431           adding stuff from -unused
8432         * gst/gstqueue.h:
8433           create GstQueueSize
8434         * gst/schedulers/cothreads_compat.h:
8435           fix cothread warnings
8436
8437 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8438
8439         * docs/gst/gstreamer-sections.txt:
8440           remove defines deprecated by Benjamin
8441
8442 2004-04-07  Benjamin Otte  <otte@gnome.org>
8443
8444         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8445           when the buffer is complete, don't check if other buffers are needed
8446         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8447           check that the offset is >0 so we don't try to read before the
8448           beginning of the file
8449         * gst/gstpad.c: (gst_pad_set_pad_template):
8450           sink the template, so we don't end up with 130k pad templates
8451
8452 2004-04-06  Benjamin Otte  <otte@gnome.org>
8453
8454         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8455           don't ref the element, adding already reffed it. And we didn't unref
8456           it later anyway... (huge memleak when you used many spider elements)
8457         * gst/gstelement.c: (gst_element_base_class_finalize):
8458         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8459         (gst_element_register):
8460         * gst/gsturi.c: (gst_element_make_from_uri):
8461           use gst_object_(un)ref instead of g_object(un)ref
8462
8463 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8464
8465         * gst/gstbuffer.h:
8466           remove macro that wouldn't work anymore because struct member has
8467           been removed.
8468         * gst/schedulers/entryscheduler.c: (schedule_forward):
8469           fix segfault for unconnected pads
8470         
8471 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8472
8473         reviewed by David Schleef <ds@schleef.org>
8474
8475         * gst/gstinfo.h:
8476           *_FORMAT modifiers should require putting a % in front of them for
8477           consistency reasons.
8478
8479 2004-04-05  Colin Walters  <walters@redhat.com>
8480
8481         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8482         space.
8483
8484 2004-04-05  Benjamin Otte  <otte@gnome.org>
8485
8486         * configure.ac:
8487         * gst/Makefile.am:
8488         * gst/gst_private.h:
8489         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8490           add support for detecting if GStreamer runs inside valgrind.
8491           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8492           print a big message in valgrind that GStreamer has detected it's
8493           running inside and might now use different code.
8494         * gst/gstmemchunk.c: (populate), (free_area),
8495         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8496         (gst_mem_chunk_free):
8497           flag memchunks for valgrind, so it can detect leaking of chunks.
8498           This allows detecting leaks of GstBuffer and GstEvent correctly
8499           inside valgrind.
8500
8501 2004-04-05  David Schleef  <ds@schleef.org>
8502
8503         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8504           jensgr@gmx.net (Jens Granseuer)
8505
8506 2004-04-05  David Schleef  <ds@schleef.org>
8507
8508         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8509         (gst_buffer_default_free), (gst_buffer_default_copy),
8510         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8511         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8512         structures in one place.
8513
8514 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8515
8516         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8517           (GST_TIME_FORMAT, GST_TIME_ARGS)
8518
8519 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8520
8521         * testsuite/elements/Makefile.am:
8522           disable test until it stops breaking make distcheck
8523
8524 2004-04-05  Johan Dahlin  <johan@gnome.org>
8525
8526         * po/sv.po: Updated translation
8527
8528 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8529
8530         * gst/gstplugin.c: (gst_plugin_load_file):
8531           fix segfault for when original plugin was loaded statically
8532
8533 2004-04-05  Benjamin Otte  <otte@gnome.org>
8534
8535         * testsuite/debug/category.c: (main):
8536         * testsuite/debug/commandline.c: (main):
8537         * testsuite/debug/output.c: (main):
8538           fix tests to work again with debugging enabled
8539
8540 2004-04-05  Benjamin Otte  <otte@gnome.org>
8541
8542         * gst/schedulers/gstbasicscheduler.c:
8543         (gst_basic_scheduler_pad_link):
8544           fix to work with recent scheduling changes
8545
8546 2004-04-05  Benjamin Otte  <otte@gnome.org>
8547
8548         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8549         prepareChangeLog doesn't work when cvs indents):
8550           don't throw an error when no element can be scheduled, there's too
8551           many weird reasons why it doesn't work. Return STOPPED instead.
8552           decoupled elemts' schedulability doesn't depend on bufpens.
8553
8554 2004-04-04  Benjamin Otte  <otte@gnome.org>
8555
8556         * gst/schedulers/gstbasicscheduler.c:
8557         (gst_basic_scheduler_pad_select):
8558           fix uninitialized variable warnings
8559
8560 2004-04-04  Benjamin Otte  <otte@gnome.org>
8561
8562         * gst/gstpad.c: (gst_pad_collect_valist):
8563           fix uninitialized variable warning
8564         * gst/schedulers/entryscheduler.c: (schedule_forward):
8565           fix shadowed variable
8566
8567 2004-04-04  Benjamin Otte  <otte@gnome.org>
8568
8569         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8570         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8571         (gst_pad_select):
8572         * gst/gstpad.h:
8573         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8574         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8575         * gst/gstscheduler.h:
8576           implement gst_pad_collect as replacement for gst_pad_select.
8577           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8578           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8579           new pad_select, lock and unlock calls.
8580         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8581         * gst/cothreads.h:
8582         * gst/schedulers/cothreads_compat.h:
8583         * gst/schedulers/gthread-cothreads.h:
8584           remove unused cothread_lock and cothread_unlock calls
8585         * gst/schedulers/entryscheduler.c:
8586         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8587         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8588         (gst_entry_scheduler_pad_select):
8589           update to new API
8590         * gst/schedulers/gstbasicscheduler.c:
8591         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8592         (gst_basic_scheduler_pad_select):
8593           remove useless lock and unlock calls, update pad_select to new API
8594           (untested)
8595         * gst/schedulers/gstoptimalscheduler.c:
8596         (gst_opt_scheduler_class_init):
8597           remove useless select, lock and unlock function calls
8598         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8599           use gst_pad_collect instead of gst_pad_select
8600
8601 2004-04-04  Benjamin Otte  <otte@gnome.org>
8602
8603         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8604         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8605         (schedule_next_element), (print_entry):
8606           add can_schedule_pad to handle element states.
8607           add schedule_forward to select the correct entry to schedule next
8608
8609 2004-04-03  Benjamin Otte  <otte@gnome.org>
8610
8611         * gst/schedulers/entryscheduler.c: 
8612           remove unused variable, fix error inside Rb, fix compile warning in
8613           unreachable code
8614
8615 2004-04-03  Benjamin Otte  <otte@gnome.org>
8616
8617         * gst/schedulers/entryscheduler.c:
8618           completely revamp the inner workings, so it's a lot easier to
8619           understand and extend
8620
8621 2004-04-03  Andy Wingo  <wingo@pobox.com>
8622
8623         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8624         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8625         This allows better introspection of pipeline topology.
8626         (add_to_chain): Don't do trickery to put loop elements first;
8627         rather, queue a chain sort by marking the chain as dirty.
8628         (remove_from_chain): Mark the chain dirty.
8629         (sort_chain): New function. Sorts the group list so that terminal
8630         sinks are first. This means elements on the sink side will be
8631         preferentially sscheduled before elements on the src side of the
8632         pipeline.
8633         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8634         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8635         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8636         (group_inc_link): Change argument and variable names to match the
8637         new link structure member names (src and sink).
8638         (group_dec_link): Add some description
8639
8640 2004-04-03  Benjamin Otte  <otte@gnome.org>
8641
8642         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8643         * gst/gstinfo.h:
8644         * testsuite/debug/category.c: (main):
8645         * testsuite/debug/commandline.c: (main):
8646         * testsuite/debug/output.c: (main):
8647         * testsuite/debug/printf_extension.c: (main):
8648           fix to successfully build and test with --disable-gst-debug
8649           configure switch (fixes #138705)
8650
8651 2004-04-03  Benjamin Otte  <otte@gnome.org>
8652
8653         * docs/pwg/building-boiler.xml:
8654           add cvs login line and s/anonymous/anoncvs/
8655
8656 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8657
8658         reviewed by Benjamin Otte  <otte@gnome.org>
8659
8660         * gst/gststructure.c: (gst_structure_free):
8661           memleak fix: free fields array (partial fix for #134839)
8662
8663 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8664
8665         * docs/random/ds/0.9-suggested-changes:
8666           Add a note to change handoff use in fakesrc to be usable in
8667           a more generic way (fakesrc should be renamed to appsrc or so).
8668         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8669           Change signal type to scope, so we can fill the buffer in the
8670           handoff handler (that's the whole use of this signal...).
8671
8672 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8673
8674         * docs/pwg/other-ntoone.xml:
8675           Document muxers and n-to-1 elements.
8676
8677 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8678
8679         * gst/registries/gstxmlregistry.c
8680         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8681         determine if a file is a G_MODULE. The old one discards paths
8682         containing "so" somewhere in the middle. My home directory is
8683         called "soto". Go figure...
8684
8685 2004-03-31  David Schleef  <ds@schleef.org>
8686
8687         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8688         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8689         * gst/gstbuffer.h:
8690
8691 2004-03-31  David Schleef  <ds@schleef.org>
8692
8693         * gst/gstvalue.c: (gst_value_union_int_int_range),
8694         (gst_value_union_int_range_int_range), (gst_value_can_union),
8695         (gst_value_union), (_gst_value_initialize):  Add some union
8696         implementations.  We didn't have any previously.
8697         * testsuite/caps/Makefile.am:
8698         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8699         (gst_audioscale_getcaps), (test_caps), (main): A little test
8700         that is the same as the caps manipulation in audioscale.
8701
8702 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8703
8704         * docs/faq/general.xml:
8705           add entry about "does gst support format X?"
8706
8707 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8708
8709         * gst/gstthread.c:
8710           fix docs
8711         * gst/gstutils.h:
8712           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8713
8714 2004-03-30  Benjamin Otte  <otte@gnome.org>
8715
8716         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8717           set the offset of the buffer to the requested offset
8718         * gst/elements/gsttypefind.c: (stop_typefinding):
8719           revert patch 1.18 (which I unfortunately don't know the reason for).
8720           This is needed to allow downstream elements to seek. Otherwise
8721           typefind might overwrite a previous seek by downstream elements.
8722           This lead to errors with id3tag and typefind on some mp3s.
8723         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8724         (gst_entry_scheduler_iterate):
8725           be more verbose when debugging
8726
8727 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8728
8729         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8730           make sure we don't get NULL strings
8731
8732 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8733
8734         * gst/gstcaps.c:
8735         * gst/gstelement.c:
8736         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8737         * gst/gstindex.c: (gst_index_resolver_get_type),
8738         (gst_index_get_type), (gst_index_factory_get_type):
8739         * gst/gstinfo.c:
8740         * gst/gstpad.c:
8741         * gst/gstplugin.c:
8742         * gst/gsturi.c: (gst_uri_handler_get_type):
8743         * gst/gstvalue.c:
8744           first batch of documentation fixes
8745
8746 2004-03-29  David Schleef  <ds@schleef.org>
8747
8748         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8749         * docs/gst/gstreamer-docs.sgml:  More hacking
8750         * docs/gst/gstreamer-sections.txt:
8751         * docs/gst/tmpl/cothreads_compat.sgml:
8752         * docs/gst/tmpl/gstcaps.sgml:
8753         * docs/gst/tmpl/gstclock.sgml:
8754         * docs/gst/tmpl/gstelement.sgml:
8755         * docs/gst/tmpl/gstevent.sgml:
8756         * docs/gst/tmpl/gstpad.sgml:
8757         * docs/gst/tmpl/gstutils.sgml:
8758         * docs/gst/tmpl/gstxml.sgml:
8759         * docs/gst/tmpl/gthread-cothreads.sgml:
8760         * docs/random/ds/0.9-suggested-changes:
8761         * gst/elements/gstfakesink.h: doc fixes
8762         * gst/elements/gstfakesrc.h: doc fixes
8763         * gst/gstcaps.c: doc fixes
8764         * gst/gstcaps.h: doc fixes
8765         * gst/gstelement.c: doc fixes
8766         * gst/gstelement.h: doc fixes
8767         * gst/gstindex.c: doc fixes
8768         * gst/gstinfo.c: doc fixes
8769         * gst/gstpad.c: doc fixes
8770         * gst/gstpad.h: doc fixes
8771         * gst/gstplugin.c: doc fixes
8772         * gst/gsttypefind.h: doc fixes
8773         * gst/gsturi.c: doc fixes
8774         * gst/gstvalue.c: doc fixes
8775
8776 2004-03-29  Colin Walters  <walters@redhat.com>
8777
8778         * gst/registries/gstxmlregistry.c (get_time)
8779         (plugin_times_older_than_recurse):
8780         Use the result of stat to determine whether a path is a file,
8781         so we don't attempt to opendir() files.
8782
8783 2004-03-29  Benjamin Otte  <otte@gnome.org>
8784
8785         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8786           print caps in debugging output when setting caps failed
8787         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8788         (schedule_next_element), (get_buffer), (run_chainhandler),
8789         (element_may_start), (gst_entry_scheduler_chain_handler),
8790         (gst_entry_scheduler_get_handler),
8791         (gst_entry_scheduler_state_transition),
8792         (gst_entry_scheduler_pad_link):
8793           make this scheduler a testcase for mandatory
8794           discont-before-first-buffer which is needed if we want to allow apps
8795           to release the sound device.
8796           add SCHED_ASSERT macro to print scheduler state before an assertion
8797           triggers.
8798
8799 2004-03-29  Benjamin Otte  <otte@gnome.org>
8800
8801         * COPYING:
8802           replace by LGPL (former COPYING.LIB). The core is completely
8803           licensed LGPL.
8804         * COPYING.LIB:
8805           remove
8806
8807 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8808
8809         * po/af.po:
8810         * po/sv.po:
8811           updated Afrikaans and Swedish
8812
8813 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8814
8815         * po/LINGUAS:
8816         * po/az.po:
8817           adding Azerbaijani (Mətin Əmirov)
8818
8819 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8820
8821         * gst/gstelement.h: 
8822         * gst/gstelement.c (gst_element_set_time_delay): New function for
8823         setting element time taking into account a hardware buffering
8824         delay.
8825         (gst_element_set_time): Now just an invocation of
8826         gst_element_set_time_delay.
8827         * gst/gstclock.h: 
8828         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8829         allowing to set event times in the future.
8830         (gst_clock_get_event_time): Now just an invocation of
8831         gst_clock_get_event_time_delay.
8832
8833 2004-03-28  Benjamin Otte  <otte@gnome.org>
8834
8835         * gst/gstbin.c: (gst_bin_set_element_sched),
8836         (gst_bin_unset_element_sched):
8837           don't add decoupled elements to schedulers - otherwise it's
8838           impossible to control if a link to a decoupled element was already
8839           removed from a scheduler or not.
8840         * gst/schedulers/cothreads_compat.h:
8841         * gst/schedulers/gthread-cothreads.h:
8842           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8843           is no "unused" warning.
8844         * gst/schedulers/Makefile.am:
8845         * gst/schedulers/entryscheduler.c:
8846           add new scheduler, based on ideas from talking to David and Martin.
8847           It's supposed to be small and correct. Currently it's also slow (but
8848           it's not noticable)
8849         * examples/retag/retag.c: (main):
8850         * testsuite/bytestream/test1.c: (main):
8851           fix missing NULLs at end of variadic functions
8852         * testsuite/elements/.cvsignore:
8853           update
8854
8855 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8856
8857         * gst/gstevent.h:
8858         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8859
8860 2004-03-25  David Schleef  <ds@schleef.org>
8861
8862         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8863         * docs/gst/tmpl/gstaggregator.sgml:
8864         * docs/gst/tmpl/gstautoplugfactory.sgml:
8865         * docs/gst/tmpl/gstbin.sgml:
8866         * docs/gst/tmpl/gstbuffer.sgml:
8867         * docs/gst/tmpl/gstbufferstore.sgml:
8868         * docs/gst/tmpl/gstfakesink.sgml:
8869         * docs/gst/tmpl/gstfakesrc.sgml:
8870         * docs/gst/tmpl/gstmd5sink.sgml:
8871         * docs/gst/tmpl/gstreamer-unused.sgml:
8872         * docs/gst/tmpl/gstsearchfuncs.sgml:
8873         * docs/gst/tmpl/gstshaper.sgml:
8874         * docs/gst/tmpl/gstspider.sgml:
8875         * docs/gst/tmpl/gsttee.sgml:
8876         * docs/gst/tmpl/gstutils.sgml:
8877         * docs/gst/tmpl/gstvalue.sgml:
8878         * docs/gst/tmpl/gstxml.sgml:
8879         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8880         and we don't support it.
8881         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8882         (gst_use_threads), (gst_has_threads): same
8883         * gst/gstthreaddummy.c: same
8884         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8885         * gst/autoplug/gstspider.h: same
8886         * gst/elements/gstaggregator.h: Remove bogus function from header
8887         * gst/elements/gstfakesink.h: same
8888         * gst/elements/gstfakesrc.h: same
8889         * gst/elements/gstmd5sink.h: same
8890         * gst/elements/gstshaper.h: same
8891         * gst/elements/gsttee.h: same
8892         * gst/gstbin.c: doc fixes
8893         * gst/gstbin.h: Remove unused definition.
8894         * gst/gstbuffer.c: doc fixes
8895         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8896         * gst/gstfilter.c: doc fixes
8897         * gst/gsttag.c: doc fixes
8898         * gst/gstvalue.c: doc fixes
8899
8900 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8901
8902         * docs/pwg/advanced-types.xml:
8903           Document typefinding.
8904         * docs/pwg/other-oneton.xml:
8905           Document one-to-n elements, demuxers and parsers.
8906
8907 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8908
8909         reviewed by: David Schleef  <ds@schleef.org>
8910
8911         * configure.ac: Check bison version (bug #127838)
8912
8913 2004-03-25  David Schleef  <ds@schleef.org>
8914
8915         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8916         * docs/gst/gstreamer-sections.txt:
8917         * docs/gst/tmpl/gstautoplug.sgml:
8918         * docs/gst/tmpl/gststaticautoplug.sgml:
8919         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8920         * docs/gst/tmpl/gstutils.sgml:
8921         * docs/gst/tmpl/gstxml.sgml:
8922
8923 2004-03-24  David Schleef  <ds@schleef.org>
8924
8925         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8926         manual being such complete crap, that I decided to do major
8927         hacking of it.  This checkin replaces any fine tuning that
8928         may have been done previously, with the benefit of actually
8929         being complete for much of the API that was changed since
8930         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8931         * docs/gst/gstreamer-sections.txt:
8932         * docs/gst/tmpl/GstBin.sgml:
8933         * docs/gst/tmpl/GstBuffer.sgml:
8934         * docs/gst/tmpl/GstCaps.sgml:
8935         * docs/gst/tmpl/GstClock.sgml:
8936         * docs/gst/tmpl/GstCompat.sgml:
8937         * docs/gst/tmpl/GstData.sgml:
8938         * docs/gst/tmpl/GstElement.sgml:
8939         * docs/gst/tmpl/GstEvent.sgml:
8940         * docs/gst/tmpl/GstIndex.sgml:
8941         * docs/gst/tmpl/GstStructure.sgml:
8942         * docs/gst/tmpl/GstTag.sgml:
8943         * docs/gst/tmpl/cothreads.sgml:
8944         * docs/gst/tmpl/cothreads_compat.sgml:
8945         * docs/gst/tmpl/gettext.sgml:
8946         * docs/gst/tmpl/grammar.tab.sgml:
8947         * docs/gst/tmpl/gst-i18n-app.sgml:
8948         * docs/gst/tmpl/gst-i18n-lib.sgml:
8949         * docs/gst/tmpl/gst.sgml:
8950         * docs/gst/tmpl/gst_private.sgml:
8951         * docs/gst/tmpl/gstaggregator.sgml:
8952         * docs/gst/tmpl/gstarch.sgml:
8953         * docs/gst/tmpl/gstatomic.sgml:
8954         * docs/gst/tmpl/gstatomic_impl.sgml:
8955         * docs/gst/tmpl/gstbin.sgml:
8956         * docs/gst/tmpl/gstbuffer.sgml:
8957         * docs/gst/tmpl/gstbufferstore.sgml:
8958         * docs/gst/tmpl/gstcaps.sgml:
8959         * docs/gst/tmpl/gstclock.sgml:
8960         * docs/gst/tmpl/gstcompat.sgml:
8961         * docs/gst/tmpl/gstconfig.sgml:
8962         * docs/gst/tmpl/gstcpu.sgml:
8963         * docs/gst/tmpl/gstdata.sgml:
8964         * docs/gst/tmpl/gstdata_private.sgml:
8965         * docs/gst/tmpl/gstelement.sgml:
8966         * docs/gst/tmpl/gstenumtypes.sgml:
8967         * docs/gst/tmpl/gsterror.sgml:
8968         * docs/gst/tmpl/gstevent.sgml:
8969         * docs/gst/tmpl/gstfakesink.sgml:
8970         * docs/gst/tmpl/gstfakesrc.sgml:
8971         * docs/gst/tmpl/gstfilesink.sgml:
8972         * docs/gst/tmpl/gstfilter.sgml:
8973         * docs/gst/tmpl/gstindex.sgml:
8974         * docs/gst/tmpl/gstinfo.sgml:
8975         * docs/gst/tmpl/gstinterface.sgml:
8976         * docs/gst/tmpl/gstlog.sgml:
8977         * docs/gst/tmpl/gstmacros.sgml:
8978         * docs/gst/tmpl/gstmarshal.sgml:
8979         * docs/gst/tmpl/gstmd5sink.sgml:
8980         * docs/gst/tmpl/gstmultifilesrc.sgml:
8981         * docs/gst/tmpl/gstobject.sgml:
8982         * docs/gst/tmpl/gstpad.sgml:
8983         * docs/gst/tmpl/gstparse.sgml:
8984         * docs/gst/tmpl/gstpipeline.sgml:
8985         * docs/gst/tmpl/gstplugin.sgml:
8986         * docs/gst/tmpl/gstpluginfeature.sgml:
8987         * docs/gst/tmpl/gstqueue.sgml:
8988         * docs/gst/tmpl/gstreamer-unused.sgml:
8989         * docs/gst/tmpl/gstregistry.sgml:
8990         * docs/gst/tmpl/gstregistrypool.sgml:
8991         * docs/gst/tmpl/gstscheduler.sgml:
8992         * docs/gst/tmpl/gstsearchfuncs.sgml:
8993         * docs/gst/tmpl/gstshaper.sgml:
8994         * docs/gst/tmpl/gstspider.sgml:
8995         * docs/gst/tmpl/gstspideridentity.sgml:
8996         * docs/gst/tmpl/gststructure.sgml:
8997         * docs/gst/tmpl/gstsystemclock.sgml:
8998         * docs/gst/tmpl/gsttag.sgml:
8999         * docs/gst/tmpl/gsttaginterface.sgml:
9000         * docs/gst/tmpl/gsttee.sgml:
9001         * docs/gst/tmpl/gstthread.sgml:
9002         * docs/gst/tmpl/gsttrace.sgml:
9003         * docs/gst/tmpl/gsttrashstack.sgml:
9004         * docs/gst/tmpl/gsttypefind.sgml:
9005         * docs/gst/tmpl/gsttypes.sgml:
9006         * docs/gst/tmpl/gsturi.sgml:
9007         * docs/gst/tmpl/gsturitype.sgml:
9008         * docs/gst/tmpl/gstutils.sgml:
9009         * docs/gst/tmpl/gstvalue.sgml:
9010         * docs/gst/tmpl/gstversion.sgml:
9011         * docs/gst/tmpl/gstxml.sgml:
9012         * docs/gst/tmpl/gstxmlregistry.sgml:
9013         * docs/gst/tmpl/gthread-cothreads.sgml:
9014         * docs/gst/tmpl/types.sgml:
9015
9016 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9017
9018         * docs/pwg/other-sink.xml:
9019         * docs/pwg/other-source.xml:
9020           Documentation on how to write source and sink elements. Other
9021           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
9022           manager, autoplugger) are all still pending.
9023
9024 2004-03-25  Benjamin Otte  <otte@gnome.org>
9025
9026         * testsuite/elements/Makefile.am:
9027         * testsuite/elements/gst-compprep-check:
9028           add check to make sure gst-compprep works
9029         * testsuite/elements/gst-inspect-check.in:
9030           improve initialization output
9031         * testsuite/Makefile.am:
9032         * testsuite/gst-inspect-check:
9033           remove old file
9034
9035 2004-03-24  David Schleef  <ds@schleef.org>
9036
9037         * testsuite/elements/Makefile.am:
9038         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9039         to the testsuite.
9040
9041 2004-03-24  Benjamin Otte  <otte@gnome.org>
9042
9043         * libs/gst/control/dparam.c: (gst_dparam_attach),
9044         (gst_dparam_detach):
9045         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9046           fix lvalue casts for real
9047
9048 2004-03-24  Benjamin Otte  <otte@gnome.org>
9049
9050         * gst/schedulers/gstbasicscheduler.c:
9051         (gst_basic_scheduler_src_wrapper):
9052         * gst/schedulers/gstoptimalscheduler.c:
9053         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9054         (pad_clear_queued), (gst_opt_scheduler_add_element),
9055         (gst_opt_scheduler_remove_element):
9056           fix GStreamer to not have issues with lvalue casts anymore (fixes
9057           #136841)
9058
9059 2004-03-24  Benjamin Otte  <otte@gnome.org>
9060
9061         * gst/gstelement.c:
9062           add documentation about a gobject quirk where the object hasn't the
9063           correct class pointer set on initialization
9064         * gst/schedulers/gstbasicscheduler.c:
9065         (gst_basic_scheduler_src_wrapper):
9066           make sure to not run into an infinite loop
9067
9068 2004-03-22  Benjamin Otte  <otte@gnome.org>
9069
9070         * gst/gstutils.c: (gst_util_dump_mem):
9071         * gst/gstutils.h:
9072           first argument of gst_util_dump_mem should be const
9073
9074 2004-03-22  Johan Dahlin  <johan@gnome.org>
9075
9076         * gst/gstvalue.h: Clean up a little bit.
9077
9078 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9079
9080         reviewed by Benjamin Otte  <otte@gnome.org>
9081
9082         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9083         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9084         (gst_aggregator_class_init), (gst_aggregator_init):
9085         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9086         (gst_filesrc_dispose), (gst_filesrc_set_location):
9087         * gst/elements/gstidentity.c: (gst_identity_finalize),
9088         (gst_identity_class_init), (gst_identity_chain):
9089         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9090         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9091         (gst_statistics_class_init):
9092         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9093         (gst_tee_get_property):
9094           clean up used memory in this elements correctly on teardown (closes
9095           #137279)
9096
9097 2004-03-20  Colin Walters  <walters@redhat.com>
9098
9099         * gst/registries/gstxmlregistry.c:
9100         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9101         registry saving atomic.
9102
9103 2004-03-20  Colin Walters  <walters@redhat.com>
9104
9105         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
9106         Just use
9107         access() instead of actually creating and deleting files.
9108
9109 2004-03-18  David Schleef  <ds@schleef.org>
9110
9111         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
9112         (bug #137625)
9113
9114 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9115
9116         * po/sv.po: updated translation (Christian Rose)
9117
9118 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9119
9120         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9121         (gst_filesink_get_query_types), (_do_init),
9122         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
9123           return FALSE silently
9124         * po/af.po: updated translation (Petri Jooste)
9125
9126 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9127
9128         * Makefile.am:
9129         * configure.ac:
9130           dist common properly
9131         * po/af.po:
9132         * po/fr.po:
9133         * po/nl.po:
9134         * po/sr.po:
9135         * po/sv.po:
9136           refreshing translations
9137
9138 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9139
9140         * po/LINGUAS:
9141         * po/sv.po:
9142         * po/af.po:
9143           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
9144
9145 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9146
9147         * Makefile.am: use common/release.mak
9148
9149 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9150
9151         * docs/faq/gst-uninstalled:
9152           adding gst-monkeysaudio to the list of possible plugin dirs
9153
9154 2004-03-16  David Schleef  <ds@schleef.org>
9155
9156         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
9157         (gst_init_check_with_popt_table):  Fix some gettext strings to
9158         make them easier to translate.  Required making the strings
9159         non-const.
9160
9161 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9162
9163         * configure.ac: bump nano to 1
9164
9165 === release 0.8.0 ===
9166
9167 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9168
9169         * configure.ac: release 0.8.0, "Executive Slacks"
9170
9171 2004-03-16  Johan Dahlin  <johan@gnome.org>
9172
9173         * gst/schedulers/gstoptimalscheduler.c
9174         (gst_opt_scheduler_pad_unlink): Remove double ;,
9175         spotted by Scott Wheeler
9176
9177 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9178
9179         * configure.ac: bump libtool version
9180
9181 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9182
9183         * gst/gstcaps.h:
9184         * gst/gststructure.h:
9185           add reserved padding
9186
9187 2004-03-15  Benjamin Otte  <otte@gnome.org>
9188
9189         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9190           set the first parameter for select call correctly.
9191           (fixes #137230)
9192
9193 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9194
9195         * *.c,*.h: don't mix tabs and spaces
9196
9197 2004-03-15  Johan Dahlin  <johan@gnome.org>
9198
9199         * gst/schedulers/gstoptimalscheduler.c
9200         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
9201         crash on MPEG playback. My boolean arithmetic is a bit rusty.
9202
9203         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
9204         
9205 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9206
9207         * testsuite/Rules:
9208           fix gst-register rules
9209
9210 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9211
9212         * testsuite/Rules:
9213           use versioned gst-register
9214
9215 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9216
9217         * docs/libs/gstreamer-libs-sections.txt:
9218           remove </SUBSECTION>
9219         * gst/gstplugin.c:
9220         * gst/gstregistry.c: (gst_registry_add_plugin):
9221         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
9222         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
9223           add debugging and fix some comment blocks
9224
9225 2004-03-15  Johan Dahlin  <johan@gnome.org>
9226
9227         * *.h: Revert indent changes.
9228         
9229 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9230
9231         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
9232           g_error_free the g_error
9233         * tools/gst-feedback-m.m:
9234           check for other versions of gstreamer
9235         * tools/gst-indent:
9236           use sh, not bash
9237
9238 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9239
9240         * tools/gst-register.c: do not spill paths when registries are not
9241           writable, until we fix the "user running gst-register" case.
9242
9243 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9244
9245         * *.c, *.h: commit of gst-indent run on core
9246
9247 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9248
9249         * tools/gst-indent:
9250         * tools/Makefile.am:
9251           add our indentation style as a script
9252
9253 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9254
9255         * po/sr.po:
9256         * po/LINGUAS:
9257           added Serbian translation
9258
9259 2004-03-13  Benjamin Otte  <otte@gnome.org>
9260
9261         * gst/gstelement.c:
9262           add documentation note about gst_element_found_tags_for_pad not
9263           being usable in getfunctions. (see #137042)
9264
9265 2004-03-12  David Schleef  <ds@schleef.org>
9266
9267         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
9268         change API right now!  Readd gst_caps_is_simple() macro.
9269         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
9270         uninitialized variable.  I'd bet this caused crashes.
9271         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
9272
9273 2004-03-12  Johan Dahlin  <johan@gnome.org>
9274
9275         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
9276         * gst/gstcaps.h: Clean up
9277
9278         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9279         _gst_caps_initalize()
9280
9281         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9282         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9283
9284         * gst/gststructure.c (gst_structure_get_type): Ditto
9285
9286         * gst/gststructure.h: Ditto
9287         
9288 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9289
9290         * gst/gstqueue.c: (gst_queue_init):
9291           Reset default max. values in queues. Reason is simply to avoid
9292           braindead use. If you want wider values, use the properties. The
9293           default is supposed to always work. Wider values would make this
9294           beast a memory hog by default (250 full-PAL RGB32 video frames?
9295           That's 440 MB! No thank you).
9296
9297 2004-03-10  David Schleef  <ds@schleef.org>
9298
9299         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9300         were found.  (bug #136793)
9301
9302 2004-03-10  Johan Dahlin  <johan@gnome.org>
9303
9304         * gst/schedulers/gstoptimalscheduler.c
9305         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9306         links to elements within the same group, so we can finally remove
9307         that annoying warning. Refactor the code a little bit
9308         (group_dec_links_for_element): Split out
9309
9310 2004-03-09  David Schleef  <ds@schleef.org>
9311
9312         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9313         (bug #134863)
9314
9315 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9316
9317         * configure.ac: first bug fix due to major/minor bump
9318
9319 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9320
9321         * configure.ac: bump nano to 1
9322
9323 === release 0.7.6 ===
9324
9325 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9326
9327         * NEWS:
9328         * RELEASE:
9329         * configure.ac:
9330           releasing 0.7.6, "Almost"
9331         * po/fr.po:
9332         * po/nl.po:
9333         * tools/Makefile.am:
9334         * tools/gst-feedback-m.m:
9335           unversioned source
9336
9337 2004-03-09  Johan Dahlin  <johan@gnome.org>
9338
9339         Reviewed by: Thomas Vander Stichele
9340
9341         * gst/gstelement.c (gst_element_class_init): register second
9342         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9343         language bindings can (de)marshall correctly.
9344
9345         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9346
9347         * gst/gsterror.c (gst_g_error_get_type): New function
9348
9349         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9350         with VOID:OBJECT,OBJECT,STRING 
9351
9352 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9353
9354         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9355         Free a leaked g_timer on early returns.
9356
9357 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9358
9359         * docs/pwg/advanced-types.xml:
9360           Add cinepak description.
9361
9362 2004-03-07  David Schleef  <ds@schleef.org>
9363
9364         * docs/random/mimetypes:  Added cinepak description
9365
9366 2004-03-07  Andy Wingo  <wingo@pobox.com>
9367
9368         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9369
9370         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9371         there are no links to other groups when a group is destroyed.
9372         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9373         removed from a group, make sure the link count to elements linked
9374         to other pads is appropriately decremented. This really fixes
9375         #135672.
9376
9377         The 1.60->1.61 patch has been reapplied in light of this fix.
9378
9379         * gst/gstelement.c (gst_element_dispose): Really protect against
9380         multiple invocations this time.
9381
9382 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9383
9384         * docs/gst/gstreamer-sections.txt:
9385         * docs/gst/tmpl/gsttag.sgml:
9386           remove some deprecated functions, document some existing ones
9387         * gst/gsttag.c: (gst_tag_get_flag):
9388         * gst/gsttag.h:
9389           add accessor function
9390
9391 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9392
9393         * docs/gst/gstreamer-sections.txt:
9394         * docs/gst/tmpl/gsttag.sgml:
9395         * docs/gst/tmpl/gstxml.sgml:
9396         * gst/gsttag.c: (gst_tag_get_flag):
9397         * gst/gsttag.h:
9398
9399 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9400
9401         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9402         leak
9403
9404 2004-03-05  David Schleef  <ds@schleef.org>
9405
9406         * REQUIREMENTS: Add bison and flex.
9407         * configure.ac: Fix comment about bison.
9408         * docs/random/ds/0.9-suggested-changes: yer ma
9409         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9410
9411 2004-03-05  Benjamin Otte  <otte@gnome.org>
9412
9413         * gst/gstelement.c: (gst_element_error_full):
9414           revert recent recursive state changing commit - messing with other
9415           elements' states is evil and should be done by apps only.
9416
9417 2004-03-05  Benjamin Otte  <otte@gnome.org>
9418
9419         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9420           check for empty intersection instead of NULL caps
9421         (gst_element_get_compatible_pad_filtered):
9422           remove old workaround that is only a bug nowadays
9423
9424 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9425
9426         * gst/gstelement.c: (gst_element_error_full):
9427           make elements try to recursively change state to PAUSED on all
9428           parents after an error to suppress ensuing warnings
9429         * gst/parse/grammar.y:
9430           make it check if it was able to sync the state, and throw an error
9431           if not, so stuff like
9432           oggdemux ! vorbisdec ! osssink gets caught
9433
9434 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9435
9436         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9437           it contains lib64; use AS_AC_EXPAND to handle it properly
9438
9439 2004-03-05  David Schleef  <ds@schleef.org>
9440
9441         * gst/gstcpuid_i386.s:  Remove unused code
9442         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9443         (gst_getbits_newbuf): Remove MMX code
9444         * libs/gst/getbits/getbits.h: Remove MMX code
9445
9446 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9447
9448         * debian/.cvsignore:
9449         * debian/README.Debian:
9450         * debian/changelog:
9451         * debian/control:
9452         * debian/control.in:
9453         * debian/copyright:
9454         * debian/gstreamer-core-libs-dev.files:
9455         * debian/gstreamer-core-libs.files:
9456         * debian/gstreamer-core.files:
9457         * debian/gstreamer-core.postinst:
9458         * debian/gstreamer-core.postrm:
9459         * debian/gstreamer-doc.files:
9460         * debian/gstreamer-doc.links:
9461         * debian/gstreamer-doc.lintian:
9462         * debian/gstreamer-runtime.files:
9463         * debian/gstreamer-runtime.manpages:
9464         * debian/gstreamer-runtime.postinst:
9465         * debian/gstreamer-runtime.postrm:
9466         * debian/gstreamer-tools.files:
9467         * debian/gstreamer-tools.manpages:
9468         * debian/libgstreamer-dev.files:
9469         * debian/libgstreamer0.4.1.files:
9470         * debian/libgstreamerVERSION.files:
9471         * debian/rules:
9472         Debian package info not maintained here.
9473
9474 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9475
9476         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9477         * gst/gstbin.c: (gst_bin_class_init):
9478         * gst/gstelement.c: (gst_element_class_init):
9479         * gst/gstindex.c: (gst_index_class_init):
9480         * gst/gstobject.c: (gst_object_class_init),
9481         (gst_signal_object_class_init):
9482         * gst/gstpad.c: (gst_pad_template_class_init):
9483         * gst/gstregistry.c: (gst_registry_class_init):
9484         * gst/gsturi.c: (gst_uri_handler_base_init):
9485         * gst/gstxml.c: (gst_xml_class_init):
9486         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9487         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9488           make all signal names use dashes instead of underscore
9489
9490 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9491
9492         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9493
9494 2004-03-03  Benjamin Otte  <otte@gnome.org>
9495
9496         * gst/schedulers/gstoptimalscheduler.c:
9497           revert last commit by Andy Wingo. It causes segfaults on unreffing
9498           in Rhythmbox. (see bug #135672)
9499
9500 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9501
9502         * po/fr.po: fix typo
9503
9504 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9505
9506         * tools/gst-inspect.c: (main): 
9507         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9508
9509 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9510
9511         * configure.ac:
9512           get GLIB_ONLY and POPT flags for the nonversioned binaries
9513         * tools/Makefile.am:
9514           use them
9515
9516 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9517
9518         * gst/gst.c: (init_post):
9519           change so that GST_REGISTRY now is where the global registry gets
9520           saved, since that is where plugins now get attached to first, and
9521           spilled over to the user registry.  Note that in the case of using
9522           GST_REGISTRY env var, we don't want to affect any real registries
9523           beyond the one given by this var, and thus we don't set a user
9524           registry to spill to.  So make sure GST_REGISTRY is writable.
9525
9526 2004-03-01  David Schleef  <ds@schleef.org>
9527
9528         * AUTHORS:  Added some names.  Add yourself if you're missing.
9529
9530 2004-03-01  David Schleef  <ds@schleef.org>
9531
9532         * MAINTAINERS: Add
9533
9534 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9535
9536         * configure.ac:
9537           remove whitespace
9538         * docs/gst/tmpl/gstbuffer.sgml:
9539         * docs/gst/tmpl/gstdata.sgml:
9540         * docs/gst/tmpl/gstreamer-unused.sgml:
9541         * docs/gst/tmpl/gstxml.sgml:
9542           doc update
9543         * docs/manuals.mak:
9544           add a FIXME
9545         * docs/pwg/intro-preface.xml:
9546         * docs/pwg/pwg.xml:
9547           remove GNOME
9548         * gst/gst.c: (init_post):
9549           try GST_PLUGIN_PATH paths for the _global_registry first
9550         * gst/gstelement.h:
9551           add the error message as well, otherwise (null) debug info doesn't
9552           make much sense
9553         * tools/gst-register.c: (main):
9554           spill paths to next registry if this registry is not writable
9555         * po/fr.po:
9556         * po/nl.po:
9557           translation updates
9558
9559 2004-03-01  Johan Dahlin  <johan@gnome.org>
9560
9561         * gst/gstbuffer.c (_gst_buffer_initialize): 
9562         * gst/gstdata.c (gst_data_get_type): 
9563         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9564         instead of ref, since some applications that uses GBoxed
9565         routines depends on a function that actually returns a copy.
9566
9567 2004-02-27  Benjamin Otte  <otte@gnome.org>
9568
9569         * gst/gstbuffer.h:
9570           remove gst_buffer_free, use gst_data_unref
9571         * gst/gstdata.c: (gst_data_get_type):
9572           use refcounting in GstData GBoxed registration
9573         * gst/gstdata.h:
9574           remove gst_data_free, use gst_data_unref
9575
9576 2004-02-27  Johan Dahlin  <johan@gnome.org>
9577
9578         * gst/gstdata.c (gst_data_get_type): New function, register
9579         GstData as a GBoxed type.
9580
9581         * gst/gstdata.h (GST_TYPE_DATA): New macro
9582
9583 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9584
9585         * Makefile.am:
9586         * gstreamer.spec.in:
9587           put back RELEASE
9588         * gst/Makefile.am:
9589           clean up non-disting of built files
9590         * testsuite/debug/commandline.c:
9591           test fix for option rename
9592
9593 2004-02-26  David Schleef  <ds@schleef.org>
9594
9595         * configure.ac:  We don't really need glib-2.3.  Also remove
9596         some unneeded checks for library functions.
9597         * gst/Makefile.am:  Instead, we need to not dist files created
9598         by glib-genmarshal.
9599
9600 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9601
9602         * configure.ac:
9603           bump glib required version to 2.3.0 for g_value_takes_boxed
9604
9605  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9606
9607         * common/m4/gst-docs.m4
9608         change flavour text from enable to disable as enable is our default
9609         closes bug Bug 135304
9610
9611 === release 0.7.5 ===
9612  
9613  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9614  
9615         * NEWS:
9616           instate NEWS file
9617         * Makefile.am:
9618         * gstreamer.spec.in:
9619         * RELEASE:
9620           put back release
9621         * configure.ac:
9622         * docs/random/release:
9623           more updates
9624
9625 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9626
9627         * gst/gsttag.c: (_gst_tag_initialize):
9628         * po/fr.po:
9629         * po/nl.po:
9630           remove hyphen from codec tags
9631
9632 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9633
9634         * gst/parse/Makefile.am:
9635           fix dependency so that a make from a clean build works the first
9636           time
9637
9638 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9639
9640         * docs/random/release:
9641           update release strategy
9642         * po/fr.po:
9643           auto-update po file
9644         * po/nl.po:
9645           update dutch translation
9646
9647 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9648
9649         * docs/manual/debugging.xml:
9650         fix manual for new debugging system
9651
9652 2004-02-25  Andy Wingo  <wingo@pobox.com>
9653
9654         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9655         gst_pad_link_prepare. Please email the list with specific reasons
9656         for reverting.
9657
9658 2004-02-24  Andy Wingo  <wingo@pobox.com>
9659
9660         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9661         invocations.
9662
9663         * gst/schedulers/gstoptimalscheduler.c:
9664         I added a mess of prototypes at the top of the file by way of
9665         documentation. Some of the operations on chains and groups were
9666         re-organized.
9667
9668         (create_group): Added a type argument so if the group is enabled,
9669         the setup_group_scheduler knows what to do.
9670         (group_elements): Added a type argument here, too, to be passed on
9671         to create_group.
9672         (group_element_set_enabled): If an unlinked PLAYING element is
9673         added to a bin, we have to create a new group to hold the element,
9674         and this function will be called before the group is added to the
9675         chain. Thus we have a valid case for group->chain==NULL. Instead
9676         of calling chain_group_set_enabled, just set the flag on the group
9677         (the chain's status will be set when the group is added to it).
9678         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9679         Setup the group scheduler when the group is enabled, not
9680         specifically when an element goes PAUSED->PLAYING. This means
9681         PLAYING elements can be added, linked, and scheduled into a
9682         PLAYING pipeline, as was intended.
9683         (add_to_group): Don't ref the group twice. I don't know when this
9684         double-ref got in here. Removing it has the potential to cause
9685         segfaults if other parts of the scheduler are buggy. If you find
9686         that the scheduler is segfaulting for you, put in an extra ref
9687         here and see if that hacks over the underlying issue. Of course,
9688         then find out what code is unreffing a group it doesn't own...
9689         (create_group): Make the extra refcount floating, and remove it
9690         after adding the element. This means that...
9691         (unref_group): Destroy when the refcount reaches 0, not 1, like
9692         every other refcounted object in the known universe.
9693         (remove_from_group): When a group becomes empty, set it to be not
9694         active, and remove it from its chain. Don't unref it again,
9695         there's no floating reference any more.
9696         (destroy_group): We have to remove the group from the chain in
9697         remove_from_group (rather than here) to break refcounting cycles
9698         (the chain always has a ref on the group). So assert that
9699         group->chain==NULL.
9700         (ref_group_by_count): Removed, it was commented out anyway.
9701         (merge_chains): Use the remove_from_chain and add_to_chain
9702         primitives to do the reparenting, instead of rolling our own
9703         implementation.
9704         (add_to_chain): The first non-disabled group in the chain's group
9705         list will be the entry point for the chain. Because buffers can
9706         accumulate in loop elements' peer bufpens, we preferentially
9707         schedule loop groups before get groups to avoid unnecessary
9708         execution of get-based groups when the bufpens are already full.
9709         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9710         (get_group_schedule_function): Ditto.
9711         (loop_group_schedule_function): Ditto.
9712         (gst_opt_scheduler_loop_wrapper): Ditto.
9713         (gst_opt_scheduler_iterate): Ditto.
9714
9715         I understand the opt scheduler now, yippee!
9716
9717         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9718         (gst_pad_get_name, gst_pad_set_chain_function) 
9719         (gst_pad_set_get_function, gst_pad_set_event_function) 
9720         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9721         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9722         (gst_pad_set_query_function, gst_pad_get_query_types) 
9723         (gst_pad_get_query_types_default) 
9724         (gst_pad_set_internal_link_function) 
9725         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9726         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9727         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9728         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9729         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9730         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9731         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9732         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9733         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9734         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9735         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9736         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9737         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9738         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9739         argument checks, and some doc fixes.
9740
9741         (gst_pad_custom_new_from_template): Um, does anyone
9742         use these functions? Actually make a custom pad instead of a
9743         normal one.
9744         (gst_pad_try_set_caps): Transpose some checks.
9745         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9746         the pad is in negotiation.
9747         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9748         
9749         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9750
9751         * gst/gstelement.h: 
9752         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9753         on the list.
9754
9755 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9756
9757         * gst/gstbin.c: (gst_bin_add):
9758           add error for not being able to add elements
9759
9760 2004-02-22  Julien MOUTTE <julien@moutte.net>
9761
9762         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9763         audio-codec and video-codec.
9764
9765 2004-02-22  Benjamin Otte  <otte@gnome.org>
9766
9767         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9768
9769         * autogen.sh:
9770           replace test -e with test -x for mkinstalldirs to be more portable.
9771           (fixes #134816)
9772
9773 2004-02-22  Benjamin Otte  <otte@gnome.org>
9774
9775         * gst/gstpad.c:
9776           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9777           too noisy
9778         * gst/gsttag.c: (_gst_tag_initialize):
9779         * gst/gsttag.h:
9780           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9781         * libs/gst/control/dparam.c: (gst_dparam_attach):
9782         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9783           check that types for attached dparams match
9784
9785 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9786
9787         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9788         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9789         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9790           fix errors
9791
9792 2004-02-20  Andy Wingo  <wingo@pobox.com>
9793
9794         * gst/gstbin.c:
9795         * gst/gstbuffer.c:
9796         * gst/gstplugin.c:
9797         * gst/registries/gstxmlregistry.c: 
9798         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9799
9800         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9801         (gst_element_add_pad): DEBUG->INFO, some fixes.
9802         (gst_element_get_compatible_pad_template): Just see if the
9803         templates' caps intersect, not if one is a strict subset of the
9804         other. This conforms more to what gst_pad_link_intersect() does.
9805         (gst_element_class_add_pad_template): Don't memcpy the pad
9806         template, just ref it.
9807         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9808
9809         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9810         (gst_pad_link_filtered): Debug changes.
9811         (gst_pad_link_prepare): New function, consolidated from
9812         can_link_filtered and link_filtered.
9813
9814         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9815         look more like that of the functions in gstelement.c
9816
9817         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9818         object, and return the empty string if object is NULL.
9819
9820         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9821         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9822         LOG, not DEBUG. We still get flex info on debug.
9823
9824         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9825         debug string more verbose.
9826         (plugin_times_older_than): DEBUG->LOG.
9827
9828 2004-02-20  Julien MOUTTE <julien@moutte.net>
9829
9830         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9831         will emit found_tag for each stream they demux with the codec.
9832
9833 2004-02-20  Benjamin Otte  <otte@gnome.org>
9834
9835         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9836           copy navigation event correctly. Check freeing tag lists. 
9837         * gst/gstthread.c: (gst_thread_change_state):
9838           don't abort() on state changing mess - it might happen because of
9839           bugs.
9840         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9841           use boxed functions
9842         * gst/gstvalue.h:
9843           fix GST_VALUE_HOLDS_CAPS
9844
9845 2004-02-19  David Schleef  <ds@schleef.org>
9846
9847         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9848         and use it for GST_FUNCTION.  (bug #134750)
9849
9850 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9851
9852         * po/fr.po:
9853         * po/nl.po:
9854           updating translations
9855
9856 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9857
9858         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9859
9860 2004-02-18  kost@imn.htwk-leipzig.de
9861
9862         reviewed by: David Schleef  <ds@schleef.org>
9863
9864         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9865         for libgstcontrol.
9866
9867 2004-02-18  David Schleef  <ds@schleef.org>
9868
9869         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9870         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9871         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9872         * tools/gst-inspect.c: (print_element_info): Support dumping of
9873         double dparam information.
9874
9875 2004-02-17  David Schleef  <ds@schleef.org>
9876
9877         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9878         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9879         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9880         Use GST_TYPE_CAPS in signal prototype.
9881         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9882         Convert GST_TYPE_CAPS to boxed.
9883         * gst/gstelement.c: (gst_element_class_init):
9884         Use GST_TYPE_TAG_LIST in signal prototype.
9885         * gst/gstindex.c: (gst_index_class_init):
9886         * gst/gstindex.h:
9887         Add GST_TYPE_INDEX_ENTRY type.
9888         * gst/gstmarshal.list:
9889         Add necessary marshal types.
9890         * gst/gstpad.c: (gst_real_pad_class_init),
9891         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9892         (gst_pad_recover_caps_error):
9893         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9894         * gst/gststructure.c: (_gst_structure_initialize),
9895         (gst_structure_copy), (_gst_structure_copy_conditional):
9896         * gst/gststructure.h:
9897         Convert GST_TYPE_STRUCTURE to boxed.
9898         * gst/gsttag.c: (gst_tag_list_get_type):
9899         * gst/gsttag.h:
9900         Add GST_TYPE_TAG_LIST type.
9901
9902 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9903
9904         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9905         to what we agreed with david.
9906         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9907
9908 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9909
9910         * po/nl.po: update translation
9911
9912 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9913
9914         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9915           throw an error if spider is trying to play a mime type there is
9916           no decoder for
9917         * po/POTFILES.in:
9918           add gst/autoplug/gstspider.c for translation
9919
9920 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9921
9922         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9923         silently when the pad is negotiating.
9924
9925 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9926
9927         * docs/faq/Makefile.am:
9928           add script to run gstreamer uninstalled 
9929         * docs/faq/faq.xml:
9930         * docs/faq/developing.xml:
9931         * docs/faq/gst-uninstalled:
9932           extract script to run gstreamer uninstalled
9933         * docs/manuals.mak:
9934           add EXTRA_SOURCES variable for Makefile.am's to set to
9935           use additional SOURCE files for the doc build
9936
9937 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9938
9939         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9940
9941 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9942
9943         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9944         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9945         an error was thrown by osssink. Basically a state change failure for
9946         an element in a different scheduling group was considered as
9947         successful, which means that caps nego was going on and weird stuff
9948         happened. Like I wrote in the comment there, if someone wants to
9949         revert that please drop me a mail explaining why because I really see
9950         no point in keeping that broken behaviour there.
9951         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9952         be empty, we then return NULL which will trigger a nice error when 
9953         pulling from the pad.
9954
9955 2004-02-13  David Schleef  <ds@schleef.org>
9956
9957         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9958         (gst_dparam_get_property), (gst_dparam_set_property),
9959         (gst_dparam_do_update_default):
9960         * libs/gst/control/dparam.h:
9961         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9962         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9963         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9964         (gst_dpsmooth_do_update_double):
9965         * libs/gst/control/dparam_smooth.h:
9966         * libs/gst/control/dparammanager.c:
9967         (gst_dpman_inline_direct_update):
9968         Add support for double dparams.
9969
9970 2004-02-13  David Schleef  <ds@schleef.org>
9971
9972         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9973         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9974
9975 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9976
9977         reviewed by: David Schleef  <ds@schleef.org>
9978
9979         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9980         (gst_fdsrc_init), (gst_fdsrc_set_property),
9981         (gst_fdsrc_get_property), (gst_fdsrc_get):
9982         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9983         and sends an EOS event if file descriptor reading times out.
9984
9985 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9986
9987         * configure.ac:
9988           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9989
9990 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9991
9992         * configure.ac: pass required libxml version as argument
9993         (bug reported by Christophe Fergeau)
9994
9995 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9996   
9997         * docs/gst/gstreamer-docs.sgml:
9998         * docs/gst/tmpl/gstxml.sgml:
9999         * docs/libs/gstreamer-libs-docs.sgml:
10000           version API docs
10001
10002 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10003
10004         * gst/gstinfo.c:
10005         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
10006         (gst_registry_pool_feature_filter):
10007         * gst/gstthread.c: (gst_thread_class_init):
10008         * gst/gstvalue.c:
10009           add includes exposed by building without libxml
10010         * gst/indexers/Makefile.am:
10011           do not build fileindex when LOADSAVE disabled; we should have
10012           a better libxml check later since fileindex depends on xml, not
10013           LOADSAVE or REGISTRY
10014         * libs/gst/control/Makefile.am:
10015           link with m
10016         * tools/Makefile.am:
10017           fix wrong source code for gst-xmlinspect
10018
10019 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10020
10021         * configure.ac:
10022           fix gcov help output
10023           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
10024         * docs/random/release:
10025           some updated releasing notes
10026         * gstreamer.spec.in:
10027           more updates
10028
10029 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10030
10031         * docs/faq/faq.xml:
10032         * docs/manual/manual.xml:
10033         * docs/pwg/pwg.xml:
10034         * docs/pwg/titlepage.xml:
10035           put version in documentation
10036
10037 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10038
10039         * tools/Makefile.am: fix man page installation
10040
10041 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10042
10043         * configure.ac:
10044           don't check for libxml when load/save and registry disabled (#105844)
10045         * gstreamer.spec.in:
10046           sync with fedora candidate spec
10047
10048 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10049
10050         * po/fr.po:
10051         * po/nl.po:
10052           replace multidisksrc with multifilesrc
10053
10054 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10055
10056         * po/POTFILES.in:
10057           update to multidisksrc => multifilesrc file renaming (#134145)
10058
10059 2004-02-11  David Schleef  <ds@schleef.org>
10060
10061         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10062         * docs/gst/tmpl/gstpadtemplate.sgml: same
10063         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10064         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10065         fixing dance.
10066         * gst/gstutils.c: Remove disabled code that uses GstProps.
10067         * gst/registries/gstxmlregistry.h: same
10068         * docs/random/ds/0.9-suggested-changes: random notes
10069
10070 2004-02-11  kost@imn.htwk-leipzig.de
10071
10072         reviewed by: David Schleef  <ds@schleef.org>
10073
10074         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10075         initialisation of clock (bug #134128)
10076
10077 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10078
10079         * configure.ac:
10080         * gst/elements/Makefile.am:
10081         * gst/elements/gstelements.c:
10082         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10083         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10084         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10085         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10086         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10087         * gst/elements/gstmultifilesrc.h:
10088           rename multidisksrc to multifilesrc (part of #122200)
10089
10090 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10091
10092         * docs/manuals.mak:
10093           fix automake complaints
10094         * gst-element-check.m4:
10095           fix unquotedness
10096
10097 2004-02-11  David Schleef  <ds@schleef.org>
10098
10099         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10100         * gst/gstatomic_impl.h: Disable sparc implementation.
10101
10102 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10103
10104         * gst-element-check.m4:
10105           fix underquoted macros as reported by automake 1.8.x (#133800)
10106         * configure.ac:
10107           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
10108           by autopoint (fixes #132996)
10109
10110 2004-02-10  Andy Wingo  <wingo@pobox.com>
10111
10112         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
10113         way to do inheritance.
10114         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
10115         (gst_pad_get_query_types, gst_pad_get_query_types_default):
10116         Routine docs.
10117         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
10118         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
10119         doc.
10120         (gst_pad_unlink, gst_pad_is_linked): Docs.
10121         (gst_pad_renegotiate): A brief description of capsnego.
10122         (gst_pad_try_set_caps): Document.
10123         (gst_pad_try_set_caps_nonfixed): Document.
10124         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
10125         (gst_pad_set_parent): Deprecated (although not out of the API).
10126         (gst_pad_get_parent): Deprecated, although many plugins use this.
10127         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
10128         are private and will go away in 0.9.
10129         (gst_pad_perform_negotiate): Doc.
10130         (gst_pad_link_unnegotiate): I think this is meant to be static.
10131         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
10132         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
10133         (gst_pad_get_peer): Doc updates.
10134         (gst_pad_caps_change_notify): Doc.
10135         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
10136         (gst_ghost_pad_new): Doc fixes.
10137
10138         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
10139         (gst_object_check_uniqueness): 
10140
10141         * gst/gstelement.c (gst_element_add_pad) 
10142         (gst_element_add_ghost_pad, gst_element_remove_pad) 
10143         (gst_element_remove_ghost_pad, gst_element_get_pad) 
10144         (gst_element_get_static_pad, gst_element_get_pad_list) 
10145         (gst_element_class_get_pad_template_list) 
10146         (gst_element_class_get_pad_template): Work on the docs.
10147         (gst_element_get_pad_template_list): Uses the class method.
10148         (gst_element_get_compatible_pad_template): Docs, and consolidate
10149         some test conditions. 
10150         (gst_element_get_pad_from_template): New static function.
10151         (gst_element_request_compatible_pad): Docs, and work with
10152         non-request compatible templates. 
10153         (gst_element_get_compatible_pad_filtered): Docs and remove
10154         redundant checks.
10155         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
10156         (gst_element_link_filtered, gst_element_link_many) 
10157         (gst_element_link, gst_element_link_pads) 
10158         (gst_element_unlink_many): Docs.
10159
10160 2004-02-05  Andy Wingo  <wingo@pobox.com>
10161
10162         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
10163         s/pointer/boxed/.
10164
10165         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
10166
10167         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
10168         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
10169         with the type=GST_TYPE_CAPS. This allows language bindings to know
10170         what kind of data they're dealing with.
10171
10172         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
10173         to NULL when g_value_init is called. GstCaps, which rolls its own
10174         type implementation, now does the same instead of allocating empty
10175         caps.
10176         (_gst_caps_initialize, _gst_caps_collect_value,
10177         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
10178         table methods. This allows G_VALUE_COLLECT to work.
10179
10180 2004-02-05  Andy Wingo  <wingo@pobox.com>
10181
10182         * configure.ac:
10183         * testsuite/Makefile.am (SUBDIRS): 
10184         * testsuite/ghostpads/Makefile.am: 
10185         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
10186
10187         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
10188         These two routines are the only ones that set
10189         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
10190         pad template. They should be made static, depending on ABI needs.
10191         (gst_real_pad_dispose): Handle the case of ghost pads without a
10192         parent. Assert after dealing with ghost pads that the ghost pad
10193         list is empty.
10194         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
10195         set after creation.
10196         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
10197         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
10198         functions. set_property will call add_ghost_pad/remove_ghost_pad
10199         as appropriate.
10200         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
10201
10202         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
10203         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
10204         (gst_element_remove_pad): Handle ghost pads as well.
10205         (gst_element_remove_ghost_pad): Deprecated (could be removed,
10206         depending on API-stability needs).
10207
10208 2004-02-05  Andy Wingo  <wingo@pobox.com>
10209
10210         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
10211         of course they're const
10212
10213 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10214
10215         * tools/Makefile.am:
10216         * tools/gst-feedback:
10217         * tools/gst-feedback-0.7:
10218           make gst-feedback versioned too for consistency
10219
10220 2004-02-11  David Schleef  <ds@schleef.org>
10221
10222         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10223         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
10224
10225 2004-02-10  Julien MOUTTE <julien@moutte.net>
10226
10227         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
10228         the structure does not contain a valid tag list. Adding a safety check
10229         to remove a noisy warning in that case.
10230
10231 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10232
10233         * gst/gst.c: fix name to be in line with others
10234
10235 2004-02-09  Julien MOUTTE <julien@moutte.net>
10236
10237         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
10238         not shout that loud when len is 0. Just return 0 silently.
10239
10240 2004-02-09  Julien MOUTTE  <julien@moutte.net>
10241
10242         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
10243         because data_unref has one and I prefer the debug to be symetric.
10244         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
10245         were refed when added to the queue and unrefed only once when the queue
10246         was flushed. Now the flush handler unref the buffers two times : first
10247         unref for the ref added when pushing in the queue's tail and second
10248         unref to destroy the flushed buffer.
10249
10250 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10251
10252         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
10253
10254 2004-02-06  David Schleef  <ds@schleef.org>
10255
10256         * docs/random/ds/0.9-suggested-changes: Random ramblings
10257         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
10258         to int before printing.
10259         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
10260         * gst/parse/parse.l: same.  See bug #129600
10261
10262 2004-02-06  David Schleef  <ds@schleef.org>
10263
10264         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
10265         (gst_index_add_entry), (gst_index_add_associationv),
10266         (gst_index_add_association): Add gst_index_add_associationv()
10267         and clean up gst_index_add_association(). #127133
10268
10269 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10270
10271         * autogen.sh: check out common with right tag if CVS/Tag exists
10272
10273 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10274
10275         * testsuite/ghostpads/ghostpads.c: (main):
10276           fix testsuite from segfaulting
10277
10278 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10279
10280         * Makefile.am: add release target
10281         * configure.ac: bump nano to 1
10282         * docs/random/release:
10283
10284 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10285
10286         * gst/gstcaps.h:
10287         * gst/gstelement.c: (gst_element_base_class_init),
10288         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10289         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10290         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10291         (gst_real_pad_dispose):
10292         * gst/gststructure.c: (gst_structure_free),
10293         (gst_structure_from_string):
10294           put reverted patch back in
10295         * gst/gstelement.c: (gst_element_remove_pad):
10296           free explicit caps if they're set
10297         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10298           copy the structure when fixating
10299
10300 2004-02-05  David Schleef  <ds@schleef.org>
10301
10302         * gst/gstmarshal.list:
10303         * gst/gstpad.c: (gst_real_pad_class_init),
10304         (_gst_real_pad_fixate_accumulator):
10305         Revert POINTER->BOXED change in signal marshaller.
10306
10307 === release 0.7.4 ===
10308                                                                                 
10309 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10310                                                                                 
10311         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10312         * configure.ac: changed for release
10313
10314 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10315
10316         * gstreamer.spec.in:
10317           bump required version of gtk-doc
10318
10319 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10320
10321         * gst/gstcaps.h:
10322         * gst/gstelement.c: (gst_element_base_class_init),
10323         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10324         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10325         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10326         (gst_real_pad_dispose):
10327         * gst/gststructure.c: (gst_structure_free),
10328         (gst_structure_from_string):
10329           revert patch that breaks applications, reapply after release
10330           to get this fixed properly
10331
10332 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10333
10334         * gst/gsttag.c: (_gst_tag_initialize):
10335         * gst/gsttag.h:
10336           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10337
10338 2004-02-04  David Schleef  <ds@schleef.org>
10339
10340         Fix some memleaks:
10341         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10342         (gst_spider_plug_from_srcpad):
10343         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10344
10345 2004-02-04  David Schleef  <ds@schleef.org>
10346
10347         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10348         a GstRealPad before accessing its structure members.
10349
10350 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10351
10352         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10353         (gst_clock_get_speed):
10354         * gst/gstclock.h:
10355           reset padding, remove unused fields
10356
10357 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10358
10359         * gst/autoplug/gstspideridentity.c:
10360         (gst_spider_identity_sink_loop_type_finding):
10361           use get_allowed_caps, not get_caps (fixes #132519)
10362         * gst/elements/gsttypefind.c: (stop_typefinding):
10363           use correct order when sending buffers and seeking
10364
10365 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10366
10367         * configure.ac:
10368         * gst/gstelement.h:
10369         * gst/gstpad.h:
10370         * gst/gstqueue.h:
10371           upgrade libtool CURRENT, reset padding
10372
10373 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10374
10375         * configure.ac:
10376           bump to prerelease
10377           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10378
10379 2004-02-04  David Schleef  <ds@schleef.org>
10380
10381         * docs/random/ds/0.9-suggested-changes: random notes
10382         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10383         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10384         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10385         expansion.
10386         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10387         (gst_filesink_get_query_types): same
10388         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10389         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10390         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10391         to use new GST_PTR_FORMAT.
10392         * gst/gstelement.h: deprecate function factory macros
10393         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10394         These are our last variadic macros that can't be replaced with
10395         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10396         attempting to deprecate gst_element_clock_wait().
10397         * gst/gstevent.h: same
10398         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10399         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10400         * gst/gstpad.h: deprecate function factory macros similar to above.
10401
10402 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10403
10404         * configure.ac:
10405         * tools/Makefile.am:
10406         * tools/gst-run.c: (popt_callback), (hash_print_key),
10407         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10408         (get_candidates), (main):
10409           add new source file to generate non-versioned wrapper binaries
10410           for our tools.
10411
10412 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10413
10414         * gst/gstevent.c: (_gst_event_free):
10415           actually break; inside the switch statement
10416         * gst/parse/grammar.y:
10417           fix memleak where GValues weren't unset
10418
10419 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10420
10421         * gst/gststructure.c: (gst_structure_from_string):
10422           fix huge memleak
10423         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10424         (new_entry), (gst_type_find_element_chain):
10425         * gst/gstelement.c: (gst_element_base_class_init),
10426         (gst_element_class_set_details):
10427         * gst/gstpad.c: (gst_pad_can_link_filtered):
10428           fix smaller memleaks
10429         * gst/gstpad.c: (gst_real_pad_dispose):
10430           check that explicit caps are gone
10431         * gst/gststructure.c: (gst_structure_free):
10432           actually free the structure
10433         * gst/gstelement.c: (gst_element_clear_pad_caps):
10434           unset explicit caps
10435
10436 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10437
10438         * tools/Makefile.am:
10439           use AM_CFLAGS since all the CFLAGS are the same
10440           use AM_LDFAGS
10441
10442 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10443
10444         * docs/manual/gnome.xml:
10445           expand example a little
10446         * gst/gst.c: (gst_init_with_popt_table),
10447         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10448           make sure popt option displays are done with right textdomain
10449           use GstPoptOption type
10450         * gst/gst.h:
10451           create GstPoptOption type
10452
10453 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10454
10455         * gst/gsterror.c: (_gst_stream_errors_init):
10456         * gst/gsterror.h:
10457           adding error type for no codec
10458         * po/POTFILES.in:
10459           add gst-inspect
10460         * po/nl.po:
10461           update dutch translation
10462         * tools/gst-inspect.c: (print_element_list), (main):
10463           do proper internationalization
10464         * tools/gst-launch.c: (idle_func):
10465           remove commented out function call
10466
10467 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10468
10469         * docs/README:
10470           add some error fixing notes
10471         * docs/gst/gstreamer-sections.txt:
10472           remove double entries
10473         * docs/gst/tmpl/gstbin.sgml:
10474         * docs/gst/tmpl/gstclock.sgml:
10475           remove override
10476         * docs/gst/tmpl/gstelement.sgml:
10477         * docs/gst/tmpl/gstindex.sgml:
10478         * docs/gst/tmpl/gstobject.sgml:
10479         * docs/gst/tmpl/gstpadtemplate.sgml:
10480         * docs/gst/tmpl/gstreamer-unused.sgml:
10481         * docs/gst/tmpl/gsttag.sgml:
10482         * docs/gst/tmpl/gstthread.sgml:
10483         * docs/gst/tmpl/gstxml.sgml:
10484         * gst/gsttag.h:
10485           sync header prototypes with c decls
10486         * gst/gsttaginterface.c:
10487           fix doc headers
10488
10489 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10490
10491         * gst/parse/Makefile.am:
10492         * gst/gstobject.h:
10493           get rid of gstmarshal.h dependency. It's not needed.
10494         * gst/gst.h:
10495         * gst/elements/gstfakesink.c:
10496         * gst/elements/gstfakesrc.c:
10497         * gst/elements/gstidentity.c:
10498         * gst/gstbin.c:
10499         * gst/gstelement.c:
10500         * gst/gstindex.c:
10501         * gst/gstobject.c:
10502         * gst/gstpad.c:
10503         * gst/gstthread.c:
10504         * gst/gstxml.c:
10505         * libs/gst/control/dparam.c:
10506         * libs/gst/control/dparammanager.c:
10507           include gstmarshal.h.
10508         Fixes #132045
10509
10510 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10511
10512         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10513         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10514         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10515         * gst/elements/gstfilesrc.h:
10516           don't ref the filesrc when creating mmaped buffers. Don't keep a
10517           list of not-yet-destroyed buffers.
10518         * gst/gstbuffer.h:
10519           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10520
10521 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10522
10523         * gst/gst.c: (init_pre):
10524           remove textdomain
10525
10526 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10527
10528         * docs/pwg/advanced-events.xml:
10529         * docs/pwg/advanced-scheduling.xml:
10530         * docs/pwg/intro-basics.xml:
10531         * docs/pwg/other-manager.xml:
10532         * docs/pwg/other-nton.xml:
10533         * docs/pwg/other-ntoone.xml:
10534         * docs/pwg/other-oneton.xml:
10535         * docs/pwg/pwg.xml:
10536           All sort of documentation... Forgot what. Point is that I want this
10537           in before I leave. The 'other-*' will be the last section and will
10538           explain issues specific to these type of elements.
10539
10540 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10541
10542         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10543         (gst_filesrc_get_read):
10544           set all the values on buffers that we can
10545
10546 2004-02-02  David Schleef  <ds@schleef.org>
10547
10548         Change usage of isblah() to g_ascii_isblah() to be more locale
10549         independent.  (#133076)
10550         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10551         * gst/gstutils.c:
10552         * gst/parse/parse.l:
10553
10554 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10555
10556         reviewed by: David Schleef  <ds@schleef.org>
10557
10558         Fix memory leaks:
10559         * gst/gstcaps.c: (gst_caps_to_string):
10560         * gst/registries/gstxmlregistry.c:
10561         (gst_xml_registry_add_path_list_func),
10562         (gst_xml_registry_parse_padtemplate):
10563
10564 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10565
10566         * gst/gstelement.c: (gst_element_default_error):
10567           suffix error messages with period
10568
10569 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10570
10571         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10572         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10573         * gst/gsterror.c: (gst_error_get_message):
10574           Suffix with dots
10575         * po/fr.po:
10576         * po/nl.po:
10577           Update translation files
10578
10579 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10580
10581         * gst/autoplug/gstspideridentity.c:
10582         (gst_spider_identity_sink_loop_type_finding):
10583         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10584         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10585         (gst_filesink_close_file), (gst_filesink_handle_event),
10586         (gst_filesink_chain):
10587         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10588         (gst_filesrc_get_read), (gst_filesrc_open_file):
10589         * gst/elements/gstidentity.c: (gst_identity_chain):
10590         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10591         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10592         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10593         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10594         * gst/gsterror.c: (_gst_core_errors_init),
10595         (_gst_library_errors_init), (_gst_resource_errors_init),
10596         (_gst_stream_errors_init), (gst_error_get_message):
10597         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10598         (gst_pad_recover_caps_error), (gst_pad_pull):
10599         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10600         * gst/schedulers/gstbasicscheduler.c:
10601         (gst_basic_scheduler_chainhandler_proxy),
10602         (gst_basic_scheduler_gethandler_proxy),
10603         (gst_basic_scheduler_cothreaded_chain):
10604           Suffix error messages with period.
10605           Use (NULL) instead of NULL
10606
10607 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10608
10609         * docs/gst/tmpl/gstelement.sgml:
10610         * docs/gst/tmpl/gstxml.sgml:
10611         * gst/gstelement.c: (gst_element_error_full):
10612           add element path to error
10613
10614 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10615
10616         * docs/random/mimetypes:
10617           update raw int/float info
10618         * gst/gsttag.c: (_gst_tag_initialize):
10619         * gst/gsttag.h:
10620           add GST_TAG_ENCODER
10621
10622 2004-01-30  David Schleef  <ds@schleef.org>
10623
10624         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10625           missing (#132991)
10626
10627 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10628
10629         reviewed by Benjamin Otte 
10630           parts of the patch submitted in bug #113913
10631
10632         * configure.ac:
10633           use AC_C_INLINE. Use = instead of == with test
10634         * examples/plugins/example.c:
10635         * gst/autoplug/gstspideridentity.c:
10636         * gst/elements/gstfdsrc.c:
10637         * gst/elements/gstfilesrc.c:
10638         * gst/elements/gstidentity.c:
10639         * gst/elements/gstmultidisksrc.c:
10640         * gst/elements/gststatistics.c:
10641         * gst/gstelement.c:
10642         * gst/gstobject.c:
10643         * gst/gstpad.c:
10644         * gst/gstpipeline.c:
10645         * gst/gstthread.c:
10646           don't end enums with a comma
10647         * gst/gstindex.c: (gst_index_compare_func):
10648           do explicit casting to gint
10649         * gst/gsttrace.c: (gst_trace_text_flush):
10650           #define strsize as a macro
10651
10652 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10653
10654         * docs/README:
10655         * docs/gst/gstreamer-docs.sgml:
10656         * docs/gst/gstreamer-sections.txt:
10657         * docs/gst/tmpl/gstelement.sgml:
10658         * docs/gst/tmpl/gsterror.sgml:
10659         * docs/gst/tmpl/gstinterface.sgml:
10660         * docs/gst/tmpl/gstreamer-unused.sgml:
10661         * docs/gst/tmpl/gststructure.sgml:
10662         * docs/gst/tmpl/gsttag.sgml:
10663         * docs/gst/tmpl/gsttaginterface.sgml:
10664         * docs/gst/tmpl/gstvalue.sgml:
10665         make sure all API ends up in the built docs
10666         * gst/gstinterface.c:
10667         * gst/gststructure.c: (gst_structure_id_set_value),
10668         (gst_structure_set_value), (gst_structure_id_get_value):
10669         * gst/gststructure.h:
10670         * gst/gstvalue.h:
10671         sync .h with .c declarations
10672
10673 2004-01-30  Julien Moutte  <julien@moutte.net>
10674
10675         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10676         Ronald will fix riffread.
10677
10678 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10679
10680         * docs/pwg/advanced-interfaces.xml:
10681           Added tuner interface docs.
10682
10683 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10684
10685         * docs/random/mimetypes:
10686           correct Theora information
10687         * gst/gstelement.h:
10688           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10689
10690 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10691
10692         * gst/gstelement.c: (gst_element_error_full):
10693         * gst/gstelement.h:
10694           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10695
10696 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10697
10698         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10699         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10700         again and even before DISCONT.
10701         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10702         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10703         bytestream so that it's not stopping to fill the bytestream if events
10704         different than EOS or DISCONT are received. Instead it process them so
10705         that they go downstream.
10706
10707 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10708
10709         * docs/gst/tmpl/gstelement.sgml:
10710         * docs/gst/tmpl/gstreamer-unused.sgml:
10711         * docs/gst/tmpl/gstxml.sgml:
10712         * gst/autoplug/gstspideridentity.c:
10713         (gst_spider_identity_sink_loop_type_finding):
10714         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10715         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10716         (gst_filesink_close_file), (gst_filesink_handle_event),
10717         (gst_filesink_chain):
10718         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10719         (gst_filesrc_get_read), (gst_filesrc_open_file):
10720         * gst/elements/gstidentity.c: (gst_identity_chain):
10721         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10722         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10723         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10724         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10725         * gst/gstelement.h:
10726         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10727         (gst_pad_recover_caps_error), (gst_pad_pull):
10728         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10729         * gst/schedulers/gstbasicscheduler.c:
10730         (gst_basic_scheduler_chainhandler_proxy),
10731         (gst_basic_scheduler_gethandler_proxy),
10732         (gst_basic_scheduler_cothreaded_chain):
10733           gst_element_error -> GST_ELEMENT_ERROR
10734
10735 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10736
10737         * docs/Makefile.am:
10738         * docs/gst/tmpl/gstelement.sgml:
10739         * docs/gst/tmpl/gstxml.sgml:
10740         * docs/manuals.mak:
10741         * docs/pwg/advanced-request.xml:
10742         * docs/pwg/advanced-scheduling.xml:
10743         * docs/pwg/advanced-tagging.xml:
10744           fix non-validating docbook using CDATA
10745           make sure make check-local gets run first to check if it validates
10746
10747 2004-01-29  Julien MOUTTE <julien@moutte.net>
10748
10749         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10750         handling (up and downstream).
10751         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10752         my_filter thing.
10753
10754 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10755
10756         * docs/pwg/advanced-tagging.xml:
10757           Add docs about tag writing.
10758
10759 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10760
10761         * docs/pwg/advanced-tagging.xml:
10762           Add a part about tag reading and application signalling... Tag
10763           writing still needs to be documented.
10764         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10765           We can set file locations in READY, too.
10766
10767 2004-01-29  Julien MOUTTE <julien@moutte.net>
10768
10769         * docs/random/ds/element-checklist: Adding some notes about src
10770         events.
10771
10772 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10773
10774         * docs/random/mimetypes:
10775           Update docs to point to correct elements for various mimetypes, and
10776           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10777           <stephane.loeuillet@tiscali.fr>.
10778
10779 2004-01-28  David Schleef  <ds@schleef.org>
10780
10781         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10782
10783 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10784
10785         * docs/random/mimetypes:
10786           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10787           undefined"
10788         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10789           make it only work in NULL.
10790         * gst/gstcaps.c:
10791           don't posion NULL caps
10792         * gst/gstelement.c: (gst_element_set_time):
10793           add debugging statement
10794         * gst/gstelement.c: (gst_element_emit_found_tag),
10795         (gst_element_found_tag_func), (gst_element_found_tags):
10796         * gst/gstelement.h:
10797           These functions take const taglists
10798         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10799           fix memleak
10800         * gst/gstpad.c: (gst_pad_event_default):
10801           make more effort on handling discont and clocks, g_warn if everything
10802           fails
10803         * gst/gststructure.c: (gst_structure_remove_fields),
10804         (gst_structure_remove_fields_valist):
10805         * gst/gststructure.h:
10806           add gst_structure_remove_fields(_valist)
10807         * gst/gsttag.c:
10808           fix doc glitch
10809
10810 2004-01-28  David Schleef  <ds@schleef.org>
10811
10812         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10813         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10814         Fix memory leakage of gst_caps_to_string().
10815
10816         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10817         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10818         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10819         (gst_spider_identity_sink_loop_type_finding):
10820         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10821         (find_suggest):
10822         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10823         (gst_pad_set_explicit_caps):
10824         * gst/parse/grammar.y:
10825
10826 2004-01-28  David Schleef  <ds@schleef.org>
10827
10828         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10829         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10830         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10831         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10832         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10833         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10834         (gst_debug_log_default), (_gst_info_printf_extension),
10835         (_gst_info_printf_extension_arginfo):  Add printf extension.
10836         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10837         * gst/gststructure.c: (gst_structure_to_string),
10838         (_gst_structure_parse_value): Use gst_value_deserialize() and
10839         remove old code.
10840         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10841         (gst_value_deserialize_boolean), (gst_strtoi),
10842         (gst_value_deserialize_int), (gst_value_deserialize_double),
10843         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10844         a bunch of deserialize functions and gst_value_deserialize.
10845         * gst/gstvalue.h: er, _de_serialize, not unserialize
10846         * testsuite/caps/string-conversions.c: (main): We don't currently
10847         handle (float) in caps, so convert these to (double).
10848         * testsuite/debug/Makefile.am: Add new test for the printf extension
10849         * testsuite/debug/printf_extension.c: (main): same
10850
10851 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10852
10853         * docs/random/company/time:
10854           Add some docs about clocking and time
10855
10856 2004-01-28  Julien MOUTTE <julien@moutte.net>
10857
10858         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10859
10860 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10861
10862         * docs/pwg/advanced-clock.xml:
10863         * docs/pwg/advanced-dparams.xml:
10864         * docs/pwg/advanced-events.xml:
10865         * docs/pwg/advanced-interfaces.xml:
10866         * docs/pwg/advanced-midi.xml:
10867         * docs/pwg/advanced-request.xml:
10868         * docs/pwg/advanced-scheduling.xml:
10869         * docs/pwg/advanced-tagging.xml:
10870         * docs/pwg/advanced-types.xml:
10871         * docs/pwg/appendix-checklist.xml:
10872         * docs/pwg/building-boiler.xml:
10873         * docs/pwg/building-chainfn.xml:
10874         * docs/pwg/building-filterfactory.xml:
10875         * docs/pwg/building-pads.xml:
10876         * docs/pwg/building-props.xml:
10877         * docs/pwg/building-signals.xml:
10878         * docs/pwg/building-state.xml:
10879         * docs/pwg/building-testapp.xml:
10880         * docs/pwg/intro-basics.xml:
10881         * docs/pwg/intro-preface.xml:
10882         * docs/pwg/other-autoplugger.xml:
10883         * docs/pwg/other-sink.xml:
10884         * docs/pwg/other-source.xml:
10885         * docs/pwg/titlepage.xml:
10886           fix up id's
10887
10888 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10889
10890         * docs/95NonPath:
10891         * docs/HACKING:
10892         * docs/README:
10893         * docs/building-the-docs-on-debian:
10894           collect relevant bits of doc info
10895
10896 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10897
10898         * docs/pwg/advanced_tagging.xml:
10899           Half-assed commit so Thomas can re-arrange document IDs here to be
10900           consistent, too.
10901
10902 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10903
10904         * docs/manual/autoplugging.xml:
10905         * docs/manual/bins-api.xml:
10906         * docs/manual/bins.xml:
10907         * docs/manual/buffers-api.xml:
10908         * docs/manual/buffers.xml:
10909         * docs/manual/clocks.xml:
10910         * docs/manual/components.xml:
10911         * docs/manual/cothreads.xml:
10912         * docs/manual/debugging.xml:
10913         * docs/manual/dparams-app.xml:
10914         * docs/manual/dynamic.xml:
10915         * docs/manual/elements-api.xml:
10916         * docs/manual/elements.xml:
10917         * docs/manual/factories.xml:
10918         * docs/manual/gnome.xml:
10919         * docs/manual/goals.xml:
10920         * docs/manual/helloworld.xml:
10921         * docs/manual/helloworld2.xml:
10922         * docs/manual/init-api.xml:
10923         * docs/manual/intro.xml:
10924         * docs/manual/links-api.xml:
10925         * docs/manual/links.xml:
10926         * docs/manual/manual.xml:
10927         * docs/manual/motivation.xml:
10928         * docs/manual/pads-api.xml:
10929         * docs/manual/pads.xml:
10930         * docs/manual/plugins-api.xml:
10931         * docs/manual/plugins.xml:
10932         * docs/manual/programs.xml:
10933         * docs/manual/queues.xml:
10934         * docs/manual/quotes.xml:
10935         * docs/manual/schedulers.xml:
10936         * docs/manual/states-api.xml:
10937         * docs/manual/states.xml:
10938         * docs/manual/threads.xml:
10939         * docs/manual/typedetection.xml:
10940         * docs/manual/xml.xml:
10941           use chapter, part, section or misc as id starts for all bits
10942
10943 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10944
10945         * docs/gst/gstreamer-sections.txt:
10946           Fix up TITLE of the sections
10947
10948 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10949
10950         * docs/pwg/advanced_interfaces.xml:
10951           Add documentation on propertyprobing.
10952         * docs/pwg/advanced_events.xml:
10953         * docs/pwg/advanced_tagging.xml:
10954         * docs/pwg/building_boiler.xml:
10955         * docs/pwg/building_filterfactory.xml:
10956         * docs/pwg/pwg.xml:
10957           Move filterfactory and tagging into their own chapter, add a chapter
10958           on events. all these are empty placeholders that will be filled in
10959           some day.
10960
10961 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10962
10963         * docs/pwg/advanced_interfaces.xml:
10964           Docs for mixer interface. Also a check for website uploading.
10965
10966 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10967
10968         * docs/HACKING:
10969         * docs/Makefile.am:
10970         * docs/faq/Makefile.am:
10971         * docs/gst/Makefile.am:
10972         * docs/gst/tmpl/gstelement.sgml:
10973         * docs/gst/tmpl/gstplugin.sgml:
10974         * docs/gst/tmpl/gstreamer-unused.sgml:
10975         * docs/libs/Makefile.am:
10976         * docs/manual/Makefile.am:
10977         * docs/manuals.mak:
10978         * docs/pwg/Makefile.am:
10979         * docs/upload.mak:
10980           Separate out upload target and make it similar for
10981           both docbook and gtk-doc docs
10982
10983 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10984
10985         * docs/manuals.mak:
10986           Fix upload target to work with freedesktop
10987
10988 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10989
10990         * docs/pwg/advanced_types.xml:
10991           Add notes on creating your own types.
10992         * docs/pwg/building_boiler.xml:
10993         * docs/pwg/building_pads.xml:
10994         * docs/pwg/building_state.xml:
10995           Add some stuff about how to retrieve values from structures, how
10996           that relates to types and change layout slightly again to be almost
10997           perfect.
10998
10999 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11000
11001         * docs/pwg/advanced_dparams.xml:
11002         * docs/pwg/advanced_scheduling.xml:
11003           Change index layout slightly.
11004
11005 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11006
11007         * docs/pwg/advanced_clock.xml:
11008         * docs/pwg/advanced_interfaces.xml:
11009         * docs/pwg/advanced_midi.xml:
11010           General placeholders for now.
11011         * docs/pwg/advanced_request.xml:
11012           Explanation about sometimes and request pads.
11013         * docs/pwg/advanced_scheduling.xml:
11014           Concept of bytestream, loopfunctions and schedulers.
11015         * docs/pwg/building_boiler.xml:
11016           Add something about plugin-init.
11017
11018 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11019
11020         * docs/pwg/building_pads.xml:
11021           Fix broken docbook
11022
11023 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11024
11025         * docs/pwg/advanced_interfaces.xml:
11026         * docs/pwg/pwg.xml:
11027           Add as a placeholder for future filling-in.
11028         * docs/pwg/basics_autoplugging.xml:
11029         * docs/pwg/basics_buffers.xml:
11030         * docs/pwg/basics_elements.xml:
11031         * docs/pwg/basics_events.xml:
11032         * docs/pwg/basics_plugins.xml:
11033         * docs/pwg/basics_types.xml:
11034           Remove, because unused (this is all in intro_basics.xml).
11035         * docs/pwg/building_signals.xml:
11036           Short intro to signals + reference to GObject docs - we really
11037           shouldn't go into these sort of things to deply because we don't
11038           use them that extensively anyway.
11039         * docs/pwg/building_state.xml:
11040           Explanation of states. Benjamin, please check.
11041         * docs/pwg/building_testapp.xml:
11042           Put everything in one page - putting only a few lines of content
11043           per page doesn't really make sense.
11044
11045           Time to get into the advanced topics. ;).
11046
11047 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11048
11049         * docs/pwg/advanced_types.xml:
11050           Finish documenting the current state of mimetypes.
11051         * docs/pwg/building_boiler.xml:
11052         * docs/pwg/building_chainfn.xml:
11053         * docs/pwg/building_pads.xml:
11054         * docs/pwg/building_props.xml:
11055         * docs/pwg/building_testapp.xml:
11056           Start documenting the "how to build a simple audio filter" part
11057           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11058           states and (maybe?) a short introduction to capsnego in the chapter
11059           on pads (building_pads.xml). Capsnego should probably be explained
11060           fully in advanced_capsnego.xml or so.
11061
11062 2004-01-26  David Schleef  <ds@schleef.org>
11063
11064         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11065         * gst/gstpad.h: Add new function to allow element to (somewhat)
11066         specify non-fixed caps on a pad.
11067         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11068         that I added a few weeks ago.
11069
11070 2004-01-26  David Schleef  <ds@schleef.org>
11071
11072         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11073           making try_set_caps() work with non-fixed caps.
11074
11075 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11076
11077         * docs/pwg/advanced_types.xml:
11078         * docs/pwg/intro_basics.xml:
11079         * docs/pwg/intro_preface.xml:
11080         * docs/pwg/pwg.xml:
11081         * docs/pwg/titlepage.xml:
11082           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11083           in here (docs/random/mimetypes), and will from there on work on both
11084           updating outdated parts and adding missing parts.
11085           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11086
11087 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11088
11089         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11090           policy is set
11091
11092 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11093
11094         * gst/gstelement.h:
11095           remove gst_element_factory_get_version. It doesn't exist anymore.
11096         * gst/gstplugin.c:
11097         * gst/gstplugin.h:
11098           remove gst_plugin_set_name and change gst_plugin_get_longname to
11099           gst_plugin_get_description to match code.
11100         * gst/gsterror.h:
11101           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11102         * gst/gstpad.c: (gst_pad_try_set_caps):
11103           make it work with nonfixed caps.
11104           Note that even in the nonfixed case the link function of the pad
11105           that tries to set caps isn't called.
11106
11107 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11108
11109         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11110           fix bug where buffer was not assembled correctly
11111         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
11112           silence by default
11113         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11114           only seek if there's no more buffers that could work without seeking
11115
11116 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11117
11118         * gst/gsttag.c: (_gst_tag_initialize):
11119         * gst/gsttag.h:
11120           Add application tag (for encoding/muxing app).
11121
11122 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11123
11124         * autogen.sh:
11125           make autopoint force, and libtoolize not copy
11126         * common/m4/as-docbook.m4:
11127           added docbook xml catalog setup check
11128         * common/m4/gst-doc.m4:
11129           use docbook check
11130
11131 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11132
11133         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
11134         * gst/gsttag.h:
11135           add GstTagFlag
11136
11137 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11138
11139         * docs/gst/gstreamer-sections.txt:
11140         * docs/gst/tmpl/gst.sgml:
11141         * docs/gst/tmpl/gstbuffer.sgml:
11142         * docs/gst/tmpl/gstclock.sgml:
11143         * docs/gst/tmpl/gstelement.sgml:
11144         * docs/gst/tmpl/gstreamer-unused.sgml:
11145         * docs/gst/tmpl/gstxml.sgml:
11146           sync latest API changes to docs
11147
11148 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11149
11150         * gst/gstpluginfeature.c:
11151           fix doc snippet
11152         * tools/gst-inspect.c: (print_element_list):
11153           fix output of typefind
11154           add GPL header
11155         * tools/gst-launch.c:
11156           add GPL header
11157
11158 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11159
11160         * gst/elements/Makefile.am:
11161         * gst/elements/gstelements.c:
11162         * gst/elements/gsttypefindelement.c:
11163         * gst/elements/gsttypefindelement.h:
11164         * po/POTFILES.in:
11165         * po/fr.po:
11166         * po/nl.po:
11167           renamed gsttypefindelement to gsttypefind, conserving CVS history
11168
11169 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11170
11171         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
11172         * gst/gsttag.h:
11173           add some tags used in ogg as well
11174           fix _ in replaygain tags
11175
11176 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11177
11178         * gst/gsterror.h:
11179           fix wrong GST_LIBRARY_ERROR_ENCODE addition
11180
11181 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11182
11183         * gst/gstelement.c: (gst_element_error_full):
11184         * gst/gstelement.h:
11185           change _extended to _full
11186
11187 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11188
11189         reviewed by: <delete if not using a buddy>
11190
11191         * docs/gst/tmpl/gst.sgml:
11192         * docs/gst/tmpl/gstbuffer.sgml:
11193         * docs/gst/tmpl/gstclock.sgml:
11194         * docs/gst/tmpl/gstelement.sgml:
11195         * docs/gst/tmpl/gstreamer-unused.sgml:
11196         * docs/gst/tmpl/gstxml.sgml:
11197         * gst/gstelement.c: (gst_element_error_full):
11198         * gst/gstelement.h:
11199
11200 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11201
11202         * gst/gstelement.h: fix _gst_element_error_printf prototype
11203
11204 2004-01-20  David Schleef  <ds@schleef.org>
11205
11206         * gst/gststructure.c: (gst_structure_to_string):
11207         Convert function to use gst_value_serialize().
11208         * gst/gstvalue.c: (gst_value_serialize_list),
11209         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
11210         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
11211         (gst_value_serialize_int), (gst_value_serialize_double),
11212         (gst_string_wrap), (gst_value_serialize_string),
11213         (gst_value_serialize), (gst_value_deserialize):
11214         * gst/gstvalue.h:
11215         Add implementations for serialize.
11216
11217 2004-01-20  Julien MOUTTE  <julien@moutte.net>
11218
11219         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
11220         we want to keep that one in the future or change xvidenc.c to use 
11221         another error.
11222
11223 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11224
11225         * gst/gstelement.c: (_gst_element_error_printf):
11226         * gst/gstelement.h:
11227           privatise function
11228
11229 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11230
11231         * docs/random/error:
11232           doc explaining error system
11233         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11234           cleanup
11235
11236 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11237
11238         * gst/gst-i18n-app.h:
11239         * gst/gst-i18n-lib.h:
11240           remove inclusion of config.h
11241         * po/POTFILES.in:
11242         * po/nl.po:
11243           add gst/gstelement.c
11244
11245 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11246
11247         * po/nl.po: updated Dutch translation
11248
11249 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11250
11251         * gst/gsterror.c: (_gst_core_errors_init),
11252         (_gst_library_errors_init), (_gst_resource_errors_init),
11253         (_gst_stream_errors_init):
11254         remove ending punctuation dots
11255
11256 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11257
11258         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11259         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
11260         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11261         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11262         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11263         use GST_ERROR_SYSTEM
11264
11265 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11266
11267         * gst/gstelement.c: (gst_element_error_printf),
11268         (gst_element_error_extended):
11269         * gst/gstelement.h:
11270           add a helper printf function so we can have NULL values passed.
11271
11272 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11273
11274         * gst/gstelement.h:
11275           add G_STMT macros to gst_element_error, which isn't strictly
11276           necessary but people tell me to anyway.
11277
11278 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11279
11280         * gst/Makefile.am:
11281         * gst/autoplug/gstspideridentity.c:
11282         (gst_spider_identity_sink_loop_type_finding):
11283         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11284         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11285         (gst_filesink_close_file), (gst_filesink_handle_event),
11286         (gst_filesink_chain):
11287         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11288         (gst_filesrc_map_region), (gst_filesrc_get_read),
11289         (gst_filesrc_open_file):
11290         * gst/elements/gstidentity.c: (gst_identity_chain):
11291         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11292         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11293         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11294         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11295         * gst/gst.h:
11296         * gst/gst_private.h:
11297         * gst/gstelement.c: (gst_element_class_init),
11298         (gst_element_default_error), (gst_element_error_func),
11299         (gst_element_error_extended):
11300         * gst/gstelement.h:
11301         * gst/gsterror.c: (_gst_core_errors_init),
11302         (_gst_library_errors_init), (_gst_resource_errors_init),
11303         (_gst_stream_errors_init), (gst_error_get_message):
11304         * gst/gsterror.h:
11305         * gst/gstinfo.c: (_gst_debug_init):
11306         * gst/gstmarshal.list:
11307         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11308         (gst_pad_recover_caps_error), (gst_pad_pull):
11309         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11310         * gst/schedulers/gstbasicscheduler.c:
11311         (gst_basic_scheduler_chainhandler_proxy),
11312         (gst_basic_scheduler_gethandler_proxy),
11313         (gst_basic_scheduler_cothreaded_chain):
11314         * po/POTFILES.in:
11315         * po/fr.po:
11316         * po/nl.po:
11317           change error signal
11318           add error categories
11319
11320 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11321
11322         * gst/gsttag.c: (_gst_tag_initialize):
11323         * gst/gsttag.h:
11324         Add replaygain tag
11325
11326 2004-01-18  Colin Walters  <walters@verbum.org>
11327
11328         * examples/retag/retag.c: Call gst_init before processing
11329         program args.  Add g_assert to _link_many call.
11330
11331 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11332
11333         * gst/gstpad.c: (gst_pad_alloc_buffer):
11334           Return a newly allocated buffer when the pad has no peer.
11335
11336 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11337
11338         * gst/gstclock.c: (gst_clock_get_time):
11339           make it compile with gcc 2.95 again.
11340           Patch by Scott Wheeler
11341
11342 2004-01-15  David Schleef  <ds@schleef.org>
11343
11344         * gst/gstcaps.h:
11345         Added gst_caps_is_simple() macro.
11346         * testsuite/caps/caps.c: (test1):
11347         * testsuite/caps/intersect2.c: (main):
11348         * testsuite/caps/intersection.c: (main):
11349         Fixes to make 'make check' work again after removing
11350         gst_caps_is_chained().
11351
11352 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11353
11354         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11355         and additions to the MIDI document.
11356
11357 2004-01-15  David Schleef  <ds@schleef.org>
11358
11359         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11360         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11361         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11362
11363 2004-01-15  David Schleef  <ds@schleef.org>
11364
11365         * gst/gstqueue.c:
11366         * gst/gstqueue.h:
11367         Fix the spelling of "treshold" and make min_threshold actually
11368         affect the queue.
11369
11370 2004-01-15  David Schleef  <ds@schleef.org>
11371
11372         * gst/gstcaps.c:
11373         Add lots of documentation.
11374         * gst/gstcaps.h:
11375         Deprecate a few functions.
11376         * gst/gstpad.c:
11377         Removed use of deprecated functions.
11378
11379 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11380
11381         * gst/gstpad.c: (gst_pad_is_linked):
11382         * gst/gstpad.h:
11383           implement gst_pad_is_linked
11384         * gst/gstelement.h:
11385           reserve space for initiate_state_change
11386
11387 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11388
11389         * gst/autoplug/gstspideridentity.c:
11390         (gst_spider_identity_sink_loop_type_finding):
11391           break infinite loop by just returning instead of looping
11392         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11393           set event time difference correctly. Set it to 1 second instead
11394           of 100ms to be more tolerant
11395         * gst/gstelement.c: (gst_element_set_time):
11396           add debugging output
11397
11398 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11399
11400         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11401           query if buffers are inside the pool, ignore events
11402
11403 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11404
11405         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11406         (gst_clock_set_speed), (gst_clock_set_active),
11407         (gst_clock_is_active), (gst_clock_reset),
11408         (gst_clock_handle_discont):
11409         * gst/gstclock.h:
11410           deprecate old interface and disable functions that aren't in use
11411           anymore.
11412         * gst/gstelement.h:
11413         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11414         (gst_element_set_time), (gst_element_adjust_time):
11415           add concept of "element time" and functions to get/set this time.
11416         * gst/gstelement.c: (gst_element_change_state):
11417           update element time correctly.
11418         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11419           This is a debug message, not a g_critical.
11420         * gst/gstpad.c: (gst_pad_event_default):
11421           handle discontinuous events right with element time.
11422         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11423           update to clocking fixes.
11424           set clocks on elements in READY=>PAUSED. The old behaviour caused
11425           a wrong element time on the first element that started playing.
11426         * gst/schedulers/gstbasicscheduler.c:
11427         (gst_basic_scheduler_class_init):
11428         * gst/schedulers/gstoptimalscheduler.c:
11429         (gst_opt_scheduler_class_init):
11430           remove code that just implements the default behaviour.
11431         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11432           update to use new clocking functions
11433         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11434         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11435           update to test new element time.
11436         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11437           use _get_allowed_caps instead of _get_caps. This catches filtered
11438           caps correctly.
11439         * testsuite/debug/commandline.c:
11440           update for new GST_DEBUG syntax.
11441         * testsuite/threads/Makefile.am:
11442           disable a test that only works sometimes.
11443
11444 2004-01-13  Julien MOUTTE <julien@moutte.net>
11445
11446         * po/LINGUAS: Adding fr.
11447         * po/fr.po: Adding french translation.
11448
11449 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11450
11451         * gst/parse/grammar.y:
11452         * po/POTFILES.in:
11453         * po/nl.po:
11454         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11455           translate parsing error messages
11456
11457 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11458
11459         * po/POTFILES.in: adding gst-launch
11460         * po/nl.po: updated translation, all 99 strings translated
11461         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11462         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11463           fix strings for translation
11464
11465 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11466
11467         * gst/gst.c:
11468           - capitalize beginnings of popt options
11469           - fix strings for translation
11470           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11471
11472 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11473
11474         * po/README: add some notes on how to update translations
11475
11476 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11477
11478         * ABOUT-NLS: removed, is autogenerated from autopoint
11479         * autogen.sh: add autopoint stuff
11480         * configure.ac: fix up gettext stuff
11481         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11482         * gst/elements/gsttypefindelement.c: add header include
11483         * gst/gettext.h: add header, copy from system-installed header
11484         * gst/gst-i18n-app.h: to be included by each app having translations
11485         * gst/gst-i18n-lib.h: to be included by each lib having translations
11486         * gst/gst.c: (init_pre): fix up gettext calls
11487         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11488         * po/LINGUAS: the new way to specify translations present
11489         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11490         * po/Makevars: the variables filled in for GStreamer
11491         * po/POTFILES.in: added new files with translations
11492         * po/de.po: has new strings
11493         * po/nl.po: readded, has new strings
11494
11495 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11496
11497         * gst/gsttag.c: fix some strings marked for translation
11498
11499 2004-01-13  Iain <iain@prettypeople.org>
11500
11501         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11502         group when we add an element to it, cos we unref it when we remove one
11503
11504 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11505
11506         * testsuite/debug/commandline.c: (debug_not_reached):
11507         * testsuite/debug/output.c: (check_message):
11508           fix testsuite
11509
11510 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11511
11512         * examples/cutter/.cvsignore:
11513         * examples/helloworld/.cvsignore:
11514         * examples/launch/.cvsignore:
11515         * examples/manual/.cvsignore:
11516         * examples/mixer/.cvsignore:
11517         * examples/pingpong/.cvsignore:
11518         * examples/plugins/.cvsignore:
11519         * examples/queue/.cvsignore:
11520         * examples/queue2/.cvsignore:
11521         * examples/queue3/.cvsignore:
11522         * examples/queue4/.cvsignore:
11523         * examples/retag/.cvsignore:
11524         * examples/thread/.cvsignore:
11525         * examples/typefind/.cvsignore:
11526         * examples/xml/.cvsignore:
11527         * gst/.cvsignore:
11528         * gst/autoplug/.cvsignore:
11529         * gst/elements/.cvsignore:
11530         * gst/indexers/.cvsignore:
11531         * gst/parse/.cvsignore:
11532         * gst/registries/.cvsignore:
11533         * gst/schedulers/.cvsignore:
11534         * libs/gst/bytestream/.cvsignore:
11535         * libs/gst/control/.cvsignore:
11536         * libs/gst/getbits/.cvsignore:
11537         * tests/.cvsignore:
11538         * tests/bufspeed/.cvsignore:
11539         * tests/instantiate/.cvsignore:
11540         * tests/memchunk/.cvsignore:
11541         * tests/muxing/.cvsignore:
11542         * tests/sched/.cvsignore:
11543         * tests/seeking/.cvsignore:
11544         * tests/threadstate/.cvsignore:
11545         * testsuite/.cvsignore:
11546         * testsuite/caps/.cvsignore:
11547         * testsuite/cleanup/.cvsignore:
11548         * testsuite/dynparams/.cvsignore:
11549         * testsuite/plugin/.cvsignore:
11550         * tools/.cvsignore:
11551           update - this is huge, because it includes *.bb, *.bbg and *.da files
11552           which are generated for gcov.
11553
11554 2004-01-11  David Schleef  <ds@schleef.org>
11555
11556         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11557         a function to parse integers in ways that strto[u]l() does not.
11558
11559 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11560
11561         * tools/gst-inspect.c: (print_caps):
11562           improve output of caps a bit
11563
11564 2004-01-11  David Schleef  <ds@schleef.org>
11565
11566         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11567         inherit correct flags (READONLY and DONTKEEP).
11568
11569 2004-01-11  David Schleef  <ds@schleef.org>
11570
11571         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11572         (gst_filesrc_map_region):
11573         * gst/gstbuffer.c: (_gst_buffer_initialize),
11574         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11575         (gst_buffer_new), (gst_buffer_create_sub),
11576         (gst_buffer_is_span_fast), (gst_buffer_span):
11577         * gst/gstbuffer.h:
11578         Change GstBuffer private structure element names. (all files)
11579         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11580         (gst_queue_link):
11581         * gst/gstqueue.h:
11582         Implement getcaps/pad_link functions that handle the case where
11583         there are data in the queue.
11584
11585 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11586
11587         * gst/elements/gstbufferstore.c:
11588           initialize debugging structure correctly
11589         * gst/elements/gsttee.c: (gst_tee_set_property):
11590           g_object_notify when property was changed
11591         * gst/elements/gsttypefindelement.c:
11592         (gst_type_find_element_change_state):
11593           clear caps correctly
11594
11595 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11596
11597         * gst/gstqueue.c: (gst_queue_init):
11598           Use better defaults for when a queue should block. This
11599           gets rid of jerky playback for quite a few files.
11600           It takes more memory.
11601
11602 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11603
11604         (gst_xml_registry_parse_padtemplate):
11605           make critical message slightly more useful
11606
11607 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11608
11609         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11610         (gst_debug_message_get), (gst_debug_log_default):
11611         * gst/gstinfo.h:
11612           Change gst_debug_log(_valist) to take a const format string.
11613           Change prototype of log function and functions using those to 
11614           take a GstDebugMessage instead of a string that requires using
11615           gst_debug_message_get.
11616
11617 2004-01-08  David Schleef  <ds@schleef.org>
11618
11619         * Makefile.am:
11620         * configure.ac:
11621         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11622         and -ftest-coverage, which allows gcov to show information about
11623         testsuite coverage.
11624
11625 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11626
11627         * gst/gstutils.h:
11628           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11629           GST_PARENT_CALL_WITH_DEFAULT
11630         * gst/elements/gstaggregator.c: 
11631         * gst/elements/gstbufferstore.c: 
11632         * gst/elements/gstfakesink.c: 
11633         * gst/elements/gstfakesrc.c: 
11634         * gst/elements/gstfdsink.c: 
11635         * gst/elements/gstfdsrc.c: 
11636         * gst/elements/gstfilesink.c: 
11637         * gst/elements/gstfilesrc.c: 
11638         * gst/elements/gstidentity.c: 
11639         * gst/elements/gstmd5sink.c: 
11640         * gst/elements/gstmultidisksrc.c:
11641         * gst/elements/gstpipefilter.c: 
11642         * gst/elements/gstshaper.c:
11643         * gst/elements/gststatistics.c:
11644         * gst/elements/gsttee.c:
11645         * gst/elements/gsttypefindelement.c:
11646           use them.
11647
11648 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11649
11650         * docs/gst/gstreamer-docs.sgml: remove props
11651         * docs/gst/gstreamer-sections.txt: remove props
11652         * docs/gst/tmpl/gst.sgml:
11653         * docs/gst/tmpl/gstbin.sgml:
11654         * docs/gst/tmpl/gstbuffer.sgml:
11655         * docs/gst/tmpl/gstcaps.sgml:
11656         * docs/gst/tmpl/gstclock.sgml:
11657         * docs/gst/tmpl/gstelement.sgml:
11658         * docs/gst/tmpl/gstindex.sgml:
11659         * docs/gst/tmpl/gstobject.sgml:
11660         * docs/gst/tmpl/gstpad.sgml:
11661         * docs/gst/tmpl/gstpadtemplate.sgml:
11662         * docs/gst/tmpl/gstreamer-unused.sgml:
11663         * docs/gst/tmpl/gstthread.sgml:
11664         * docs/gst/tmpl/gstxml.sgml:
11665           sync with code reorganization
11666
11667 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11668
11669         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11670         Make the 'Could not find compatible pad' message more informative.
11671
11672 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11673                                                                                 
11674         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11675           Fix for if we pass NULL as property to location.
11676         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11677         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11678           Fix for instantiate-test (see below).
11679         * gst/gststructure.c: (_gst_structure_parse_value):
11680           Fix compile error on gcc-2.96.
11681         * configure.ac:
11682         * tests/Makefile.am:
11683         * tests/instantiate/Makefile.am:
11684         * tests/instantiate/create.c: (create_all_elements), (main):
11685           Add a test that instantiates all elements. This makes it easy to
11686           track dead code for old API/design (like setting event functions
11687           on sink pads and so on).
11688
11689 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11690
11691         * gst/gstcaps.c: (gst_caps_append_structure):
11692           Move the poisoning to allow a NULL structure
11693         * gst/gstevent.c: (_gst_event_free):
11694           When freeing a navigation event, free the structure
11695           also
11696
11697 2004-01-04  David Schleef  <ds@schleef.org>
11698
11699         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11700         Remove usage of gst_pad_proxy_fixate.
11701         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11702         (gst_caps_split_one), (gst_caps_replace):
11703         Add poisoning code.
11704         * gst/gstmarshal.list:
11705         Add pointer__pointer for fixate signal
11706         * gst/gstpad.c: (gst_real_pad_class_init),
11707         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11708         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11709         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11710         Add poisoning code. Add fixate signal on RealPad. Change
11711         set_explicit_caps() to take const GstCaps, like try_set_caps().
11712         * gst/gstpad.h:
11713         * testsuite/caps/Makefile.am:
11714         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11715
11716 2004-01-03  David Schleef  <ds@schleef.org>
11717
11718         * gst/elements/gsttypefindelement.c:
11719         (gst_type_find_element_have_type), (gst_type_find_element_init):
11720         Use gst_pad_use_explicit_caps for src pad.
11721         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11722         before using it.
11723
11724 2004-01-03  David Schleef  <ds@schleef.org>
11725
11726         * gst/gstelement.c: (gst_element_link_pads_filtered),
11727         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11728         that linking was successful.
11729         * gst/gstpad.c: (gst_pad_link_free),
11730         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11731         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11732         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11733         GstPadLinkReturn correctly between functions, and don't fail
11734         when DELAYED is used (DELAYED is very important).  Better
11735         cleanup on unlinking and unnegotiation.  Should fix some spider
11736         bugs.
11737
11738 2004-01-02  David Schleef  <ds@schleef.org>
11739
11740         * gst/gstelement.c: (gst_element_class_init),
11741         (gst_element_base_class_init): ->padtemplates should be cleared
11742         in base_init, since we need to have a fresh list for every
11743         class.  (Alternately, we chould copy the list and share the
11744         actual pad templates (not the list), but that would require
11745         changing every plugin to move pad template registration from
11746         base_init to class_init.)
11747
11748 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11749
11750         * gst/gstelement.c: (gst_element_class_add_pad_template):
11751           Refuse registering a pad template if another pad template
11752           with the same name already exists (#114715).
11753
11754 2004-01-02  David Schleef  <ds@schleef.org>
11755
11756         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11757         (gst_caps_is_equal_fixed): Add new function.
11758         * gst/gstcaps.h: ditto.
11759         * gst/gstpad.c: (gst_real_pad_class_init),
11760         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11761         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11762         check new caps against existing caps -- if they're the same, return
11763         OK without renegotiating.  caps-nego-failed signal fixed so that
11764         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11765         to save an extra caps copy.  Don't complete negotiation if a pad
11766         link function returns DELAYED.
11767
11768 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11769
11770         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11771           Fix wrong g_return_if_fail
11772
11773 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11774
11775         * gst/gstbin.c: (gst_bin_class_init):
11776         Change the marshalling of element_added/element_removed
11777         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11778         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11779
11780 2004-01-01  David Schleef  <ds@schleef.org>
11781
11782         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11783         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11784         (gst_pad_use_explicit_caps):
11785         * gst/gstpad.h:
11786         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11787         to use an internal getcaps and link fuction so that negotiation
11788         always results in the explicitly set caps.
11789         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11790         are particularly useful for decoders.
11791
11792 2003-12-31  David Schleef  <ds@schleef.org>
11793
11794         * gst/elements/gstidentity.c: (gst_identity_class_init),
11795         (gst_identity_init), (gst_identity_chain),
11796         (gst_identity_set_property), (gst_identity_get_property):
11797         * gst/elements/gstidentity.h:
11798         * gst/gstqueue.c: (gst_queue_init):
11799           Negotiation fixes.
11800
11801 2003-12-31  David Schleef  <ds@schleef.org>
11802
11803         * gst/gstcaps.c: (gst_caps_intersect),
11804         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11805           Implement gst_caps_normalize().
11806         * testsuite/caps/normalisation.c: (main):
11807           Add an additional test
11808
11809 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11810
11811         * gst/gstqueue.c: (gst_queue_init):
11812           use gst_pad_proxy_getcaps()
11813
11814 2003-12-31  David Schleef  <ds@schleef.org>
11815
11816         * gst/elements/gstshaper.c: (gst_shaper_link):
11817         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11818         * gst/gstqueue.c: (gst_queue_link):
11819           Negotiation fixes.
11820
11821 2003-12-31  David Schleef  <ds@schleef.org>
11822
11823         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11824         * gst/gstpad.h: Add functions that are useful as default pad
11825         link and fixate functions for elements.
11826
11827 2003-12-30  David Schleef  <ds@schleef.org>
11828
11829         * gst/gstpad.c: (gst_pad_link_try):
11830           Fix segfault when attempting to return to old caps
11831
11832 2003-12-29  David Schleef  <ds@schleef.org>
11833
11834         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11835         (gst_caps_structure_simplify), (gst_caps_simplify):
11836         * gst/gstcaps.h:
11837           Add simplify function
11838         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11839         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11840         * gst/gstpad.h:
11841           Copy over srcnotify, sinknotify when calling old pad_link
11842           functions.  Add new is_negotiated() function.
11843         * gst/gststructure.c: (gst_structure_copy):
11844           Fix an incredibly stupid bug that should have been noticed
11845           weeks ago.  _copy() returned the argument, not the new copy.
11846
11847 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11848
11849         * gst/gstcaps.c: (gst_caps_append):
11850           add sanity checks
11851         * gst/gstcaps.h: (gst_caps_debug):
11852           remove, it doesn't exist anymore.
11853         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11854         (gst_element_threadsafe_properties_post_run):
11855           make debugging messages not clutter up THREAD debug category
11856         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11857         (gst_element_change_state):
11858           update to new caps API
11859         * gst/gstinterface.c: (gst_implements_interface_cast):
11860           don't put vital code in g_return_if_fail
11861         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11862         (gst_pad_link_filtered):
11863           add pst_pad_try_link and use it.
11864         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11865           implement correctly, deprecate first one.
11866         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11867           add and implement.
11868         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11869           implement.
11870         (gst_pad_get_negotiated_caps):
11871           add and implement. Make GST_PAD_CAPS call this function.
11872         (gst_pad_get_caps):
11873           remove unneeded check..
11874         (gst_pad_recover_caps_error):
11875           disable, always return FALSE.
11876         (gst_real_pad_dispose):
11877           don't free caps and appfilter anymore, they're unused.
11878         * gst/gstpad.h:
11879           Reflect changes mentioned above.
11880         * gst/gstsystemclock.c: (gst_system_clock_wait):
11881           Make 'clock is way behind' a debugging message.
11882         * gst/gstthread.c: (gst_thread_change_state):
11883           Fix debugging message
11884
11885 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11886
11887         * gst/gstinfo.h:
11888           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11889         * docs/gst/tmpl/gstreamer-unused.sgml:
11890           removed all traces of cvs conflicts
11891
11892 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11893
11894         * configure.ac:
11895         * gst/schedulers/cothreads_compat.h:
11896         * libs/Makefile.am:
11897           remove last instances of wingo cothread usage
11898
11899 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11900
11901         * gst/gstplugin.c:
11902         * gst/gstversion.h.in:
11903         * gst/parse/grammar.y:
11904           change comment block from /** to /* when not gtk-doc comments
11905
11906 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11907
11908         * gst/gst.c: whitespace and doc style fixes
11909
11910 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11911
11912         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11913
11914 2003-12-24  Colin Walters  <walters@verbum.org>
11915
11916         * gst/elements/gsttypefindelement.c:
11917           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11918           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11919           Don't double-free caps.
11920
11921 2003-12-23  David Schleef  <ds@schleef.org>
11922
11923         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11924           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11925           Many little fixes and additions of debug statements to
11926           get rhythmbox working.
11927
11928 2003-12-23  Colin Walters  <walters@verbum.org>
11929
11930         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11931         Use GST_PAD_LINK_SUCCESSFUL.
11932
11933 2003-12-23  David Schleef  <ds@schleef.org>
11934
11935         * gst/elements/gstaggregator.c:
11936         * gst/elements/gsttee.c:
11937           Use gst_pad_proxy_getcaps().
11938         * gst/gstpad.c:
11939         * gst/gstpad.h:
11940           Add gst_pad_proxy_getcaps(), which filter elements can use
11941           as a generic getcaps implementation.
11942           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11943           was advertised.
11944
11945 2003-12-23  David Schleef  <ds@schleef.org>
11946
11947         * gst/gstpad.c:
11948           Rearrange/rewrite much of the pad negotiation code, since it
11949           resembled pasta.  This actually changes the way some
11950           negotiation works, since the previous code was inconsistent
11951           depending on how it was invoked.  Add (internal) structure
11952           GstPadLink, which is used to hold some information (more in
11953           the future) about the link between two pads.  Fixes a number
11954           of bugs, including random lossage of filter caps when the
11955           initial negotiation is delayed.  A few functions are still
11956           unimplemented.
11957         * gst/gstpad.h:
11958           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11959           these when testing GstPadLinkReturn values instead of comparing
11960           directly.
11961
11962 2003-12-23  David Schleef  <ds@schleef.org>
11963
11964         * gst/gstvalue.c: 
11965         * gst/gstvalue.h:
11966           Rearrange lots of code.  Change registration of compare function
11967           into registration of compare/serialize/deserialize functions.
11968           Doesn't include implementation of gst_value_[de]serialize(),
11969           but that should be easy.
11970
11971 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11972
11973         * docs/gst/gstreamer-sections.txt:
11974         * docs/gst/tmpl/gstprops.sgml: removed
11975         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11976           David removed props and caps code, so let's remove their docs as well.
11977           Removed all no longer existing symbols from gstreamer-sections.txt
11978           
11979 2003-12-22  Colin Walters  <walters@verbum.org>
11980
11981         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11982           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11983           of tags directly.
11984
11985 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11986
11987         * gst/elements/gstelements.c:
11988           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11989         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11990           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11991           gst_caps (peer).
11992
11993 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11994
11995         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11996         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11997         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11998         (gst_spider_identity_sink_loop_type_finding):
11999         * gst/autoplug/gstspideridentity.h:
12000           Fix autoplugging in spider element, so it works with new caps.
12001           This was mainly caused by identifying empty caps incorrectly.
12002
12003 2003-12-22  David Schleef  <ds@schleef.org>
12004
12005         * gststructure.c, gstvalue.c, gstvalue.h: Add
12006           gst_value_init_and_copy() and use it, to avoid silly mistakes in
12007           using g_value_copy()
12008
12009 2003-12-21  David Schleef  <ds@schleef.org>
12010
12011         * many, many files: Merge CAPS branch.  This includes:
12012           - implemention of GstValue and several GstValue types
12013           - implemention of GstStructure
12014           - entire rewrite of GstCaps
12015           - removal of GstProps
12016           - many changes to GstPad to compensate for new caps paradigm
12017           - removal of GstBufferpool
12018         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
12019         gstvalue.h, gst/gstcaps[2]*.[ch]:
12020           - rename gstcaps2.[ch] to gstcaps.[ch]
12021
12022 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12023
12024         * gst/gstqueue.c: (gst_queue_handle_pending_events),
12025         (gst_queue_chain), (gst_queue_handle_src_event):
12026           implement timeout for sending events. Workaround for if the
12027           pipeline on this queue is not passing any data.
12028
12029 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
12030                                                                                 
12031         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12032         * moved CVS to freedesktop.org
12033