docs/manual/advanced-dataaccess.xml: Fix fakesrc example to compile; doesn't work...
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2
3         * docs/manual/advanced-dataaccess.xml:
4           Fix fakesrc example to compile; doesn't work, bug somewhere...?
5         * docs/manual/basics-pads.xml:
6           Add reference for filtered caps to above chapter.
7
8 2005-06-30  Wim Taymans  <wim@fluendo.com>
9
10         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
11         (gst_bin_change_state):
12         Probes are gone.
13         Lame attempt at making the state change function a bit
14         more readable.
15
16 2005-06-30  Wim Taymans  <wim@fluendo.com>
17
18         * docs/design/part-clocks.txt:
19         * docs/design/part-element-sink.txt:
20         * docs/design/part-events.txt:
21         * docs/design/part-preroll.txt:
22         * docs/design/part-states.txt:
23         Some more tweeks and additions to the docs.
24
25 2005-06-30  Wim Taymans  <wim@fluendo.com>
26
27         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
28         (default_have_data), (gst_pad_class_init), (gst_pad_init),
29         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
30         (gst_pad_check_pull_range), (gst_pad_get_range),
31         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
32         * gst/gstpad.h:
33         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
34         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
35         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
36         (gst_pad_remove_buffer_probe):
37         Removed atomic operations, use existing LOCK.
38         Move exception handling out of main code path.
39
40 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
41
42         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
43         (silly_return_true_function), (gst_pad_class_init),
44         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
45         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
46         (gst_pad_send_event):
47           Fix accumulator, add default value by using _emitv() instead
48           of _emit() for signal emission.
49
50 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
51
52         * docs/manual/advanced-dataaccess.xml:
53         * examples/manual/Makefile.am:
54           Add probe example.
55         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
56           Make work (??).
57
58 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
59
60         * gst/elements/gstfilesink.c: (gst_filesink_render):
61           Simplify code so that we don't have to handle short
62           writes and return GST_FLOW_ERROR if an error occured.
63
64 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
65
66         * docs/gst/gstreamer-docs.sgml:
67           Remove probes more.
68
69 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
70
71         * docs/gst/gstreamer-sections.txt:
72         * docs/gst/tmpl/gstpad.sgml:
73         * docs/gst/tmpl/gstprobe.sgml:
74         * gst/Makefile.am:
75         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
76         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
77         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
78         (gst_pad_push_event), (gst_pad_send_event):
79         * gst/gstpad.h:
80         * gst/gstutils.c: (gst_pad_add_data_probe),
81         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
82         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
83         (gst_pad_remove_buffer_probe):
84         * gst/gstutils.h:
85           Remove old probes, add new g-signal-based probes and some utility
86           functions.
87
88 2005-06-29  Edward Hervey  <edward@fluendo.com>
89
90         * gst/gstelementfactory.c:
91         * gst/gstutils.h:
92         * gst/gstutils.c:
93         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
94         the definition to the header file.
95
96 2005-06-29  Andy Wingo  <wingo@pobox.com>
97
98         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
99         plugins from the source directory.
100
101 2005-06-29  Wim Taymans  <wim@fluendo.com>
102
103         * docs/gst/tmpl/gstbuffer.sgml:
104         * docs/gst/tmpl/gstclock.sgml:
105         Some fixings for blantently wrong text.
106
107 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
108
109         * check/Makefile.am:
110         * gst/gst.c: (add_path_func), (init_pre):
111         * gst/gstregistry.c: (gst_registry_add_path):
112           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
113           only scan the GST_PLUGIN_PATH locations, and not add
114           system locations
115
116 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
117
118         * docs/gst/gstreamer-sections.txt:
119         * docs/gst/tmpl/gstbasesrc.sgml:
120         * gst/gstelement.c:
121         * gst/gstelement.h:
122         * gst/gstevent.c:
123         * gst/gstutils.c:
124           doc fixes
125
126 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
127
128         * docs/manual/advanced-autoplugging.xml:
129           Fix autoplugging example.
130
131 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
132
133         * docs/manual/advanced-autoplugging.xml:
134         * docs/manual/mime-world.fig:
135           Try to get autoplugging working, fix type detection. Fix text
136           in hello-world image.
137
138 2005-06-29  Wim Taymans  <wim@fluendo.com>
139
140         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
141         (gst_base_sink_change_state):
142         Small debug line.
143
144         * gst/gstclock.h:
145         map SIGNAL and BROADCAST to the right function.
146
147         * gst/gstobject.h:
148         Remove redundant braces.
149
150         * gst/gstpad.c: (gst_pad_set_caps):
151         Don't call setcaps function when reseting caps to NULL.
152
153         * gst/gstsystemclock.c: (gst_system_clock_dispose),
154         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
155         (gst_system_clock_id_unschedule):
156         Use BROADCAST as this is what we do.
157
158 2005-06-29  Wim Taymans  <wim@fluendo.com>
159
160         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
161         We are actually prerolling before commiting the state
162         change. 
163
164 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
165
166         * docs/manual/advanced-clocks.xml:
167         * docs/manual/advanced-interfaces.xml:
168         * docs/manual/advanced-metadata.xml:
169         * docs/manual/advanced-position.xml:
170         * docs/manual/advanced-schedulers.xml:
171         * docs/manual/advanced-threads.xml:
172         * docs/manual/appendix-porting.xml:
173         * docs/manual/basics-bins.xml:
174         * docs/manual/basics-bus.xml:
175         * docs/manual/basics-elements.xml:
176         * docs/manual/basics-helloworld.xml:
177         * docs/manual/basics-pads.xml:
178         * docs/manual/highlevel-components.xml:
179         * docs/manual/manual.xml:
180         * docs/manual/thread.fig:
181           Update (until threads/scheduling) Application Development Manual;
182           remove GstThread, add GstBus, add simple porting checklist, add
183           documentation for tag writing, clocks, make all examples until this
184           part compile and run.
185         * examples/manual/Makefile.am:
186           Update from changes to Application Development Manual; add bus
187           example, remove thread example.
188
189 2005-06-28  Wim Taymans  <wim@fluendo.com>
190
191         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
192         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
193         (gst_bus_source_dispatch):
194         Add debugging messages.
195         Make internal methods static.
196         Handle the case where the bus is flushed in the handler.
197         
198         * gst/gstelement.c: (gst_element_get_bus):
199         Fix refcount in _get_bus();
200
201         * gst/gstpipeline.c: (gst_pipeline_change_state),
202         (gst_pipeline_get_clock_func):
203         Clock refcounting fixes.
204         Handle the case where preroll timed out more gracefully.
205         
206         * gst/gstsystemclock.c: (gst_system_clock_dispose):
207         Clean up the internal thread in dispose. This is needed
208         for subclasses that actually get disposed.
209         
210         * gst/schedulers/threadscheduler.c:
211         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
212         (gst_thread_scheduler_dispose):
213         Free thread pool in dispose.
214
215 2005-06-28  Andy Wingo  <wingo@pobox.com>
216
217         * tests/network-clock-utils.scm (debug, print-event): New utils.
218
219         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
220         (*packet-loss*): Unified loss probability.
221         (network-time): Report out-of-band events.
222
223         * tests/plot-data: Add support for out-of-band events. Hack it
224         into this script instead of passing it down the pipe; should fix
225         this later.
226
227 2005-06-28  Wim Taymans  <wim@fluendo.com>
228
229         * docs/gst/gstreamer.types:
230         * docs/gst/tmpl/gstbasesrc.sgml:
231         * docs/gst/tmpl/gstpad.sgml:
232         Docs fixes.
233
234 2005-06-28  Wim Taymans  <wim@fluendo.com>
235
236         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
237         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
238         (gst_proxy_pad_do_fixatecaps):
239         Correctly proxy the check_pull_range function.
240
241 2005-06-28  Andy Wingo  <wingo@pobox.com>
242
243         * tests/network-clock.scm: Removed need for slib.
244         
245 2005-06-28  Wim Taymans  <wim@fluendo.com>
246
247         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
248         (gst_basesink_preroll_queue_flush):
249         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
250         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
251         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
252         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
253         (gst_proxy_pad_set_property):
254         * gst/gstpad.c:
255         * gst/gstpad.h:
256         * gst/gstqueue.c: (gst_queue_init):
257         The deprecated pad loop function is removed now.
258
259 2005-06-28  Andy Wingo  <wingo@pobox.com>
260
261         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
262         New parameters, simulate network packet loss.
263
264         * tests/network-clock-utils.scm: Initialize the RNG.
265
266 2005-06-28  Wim Taymans  <wim@fluendo.com>
267
268         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
269         (gst_basesink_event), (gst_basesink_deactivate):
270         Flushing the preroll queue always needs to unlock the waiters.
271
272 2005-06-28  Edward Hervey  <edward@fluendo.com>
273
274         * gst/gstpipeline.c: (gst_pipeline_send_event): 
275         Wheen a seek was successful on a pipeline, set the stream_time to the
276         seek offset in order to have a synchronized stream_time.
277
278 2005-06-28  Wim Taymans  <wim@fluendo.com>
279
280         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
281         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
282         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
283         (gst_proxy_pad_do_fixatecaps):
284         Call wrapper function instead of just calling the function
285         pointers. This takes care of any locking and whatmore.
286
287 2005-06-28  Wim Taymans  <wim@fluendo.com>
288
289         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
290         (gst_pad_pull_range):
291         * gst/gstpad.h:
292         CONNECTED -> LINKED.
293
294 2005-06-28  Andy Wingo  <wingo@pobox.com>
295
296         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
297         source-munging commit!!!
298
299         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
300         (gst_object_sink): Take gpointer arguments, not GstObject --
301         avoids casts. Like GLib.
302
303         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
304         activate.
305
306 2005-06-27  Andy Wingo  <wingo@pobox.com>
307
308         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
309         remaining buffer.
310
311         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
312         returns a sorted copy of the trace list.
313         (gst_alloc_trace_print_live): New API, only prints traces with
314         live objects. Sort the list.
315         (gst_alloc_trace_print_all): Sort the list.
316         (gst_alloc_trace_print): Align columns.
317
318         * gst/elements/gstttypefindelement.c:
319         * gst/elements/gsttee.c:
320         * gst/base/gstbasesrc.c:
321         * gst/base/gstbasesink.c:
322         * gst/base/gstbasetransform.c:
323         * gst/gstqueue.c: Adapt for pad activation changes.
324
325         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
326         sched.
327         (gst_pipeline_dispose): Drop ref on sched.
328
329         * gst/gstpad.c (gst_pad_init): Set the default activate func.
330         (gst_pad_activate_default): Push mode by default.
331         (pre_activate_switch, post_activate_switch): New stubs, things to
332         do before and after switching activation modes on pads.
333         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
334         the pad's activate function to choose which mode to activate.
335         Shortcut on deactivation and call the right function directly.
336         (gst_pad_activate_pull): New API, (de)activates a pad in pull
337         mode.
338         (gst_pad_activate_push): New API, same for push mode.
339         (gst_pad_set_activate_function) 
340         (gst_pad_set_activatepull_function) 
341         (gst_pad_set_activatepush_function): Setters for new API.
342
343         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
344         Trace all miniobjects.
345         (gst_mini_object_make_writable): Unref the arg if we copy, like
346         gst_caps_make_writable.
347
348         * gst/gstmessage.c (_gst_message_initialize): No trace init.
349
350         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
351         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
352         Adapt for new pad API.
353
354         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
355
356         * gst/gstelement.h:
357         * gst/gstelement.c (gst_element_iterate_src_pads) 
358         (gst_element_iterate_sink_pads): New API functions.
359         
360         * gst/gstelement.c (iterator_fold_with_resync): New utility,
361         should fold into gstiterator.c in some form.
362         (gst_element_pads_activate): Simplified via use of fold and
363         delegation of decisions to gstpad->activate.
364
365         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
366         help in debugging.
367
368         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
369         class once in init, like gstmessage. Didn't run into this issue
370         but it seems correct. Don't initialize a trace, gstminiobject does
371         that.
372
373         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
374         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
375         to the bus.
376         (assert_live_count): New util function, uses alloc traces to check
377         cleanup.
378
379         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
380         To be modified when unlink drops the internal pad.
381
382 2005-06-27  Wim Taymans  <wim@fluendo.com>
383
384         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
385         (gst_bin_change_state):
386         Cleanup the get_state() function a little, make sure it
387         iterates the same set of elements.
388         Added stub iterate_state_order().
389
390 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
391
392         * docs/gst/gstreamer-docs.sgml:
393         * docs/gst/gstreamer-sections.txt:
394         * docs/gst/gstreamer.types:
395         * docs/gst/tmpl/gstbasesink.sgml:
396         * docs/gst/tmpl/gstbasesrc.sgml:
397         * docs/gst/tmpl/gstbasetransform.sgml:
398         * docs/gst/tmpl/gstelement.sgml:
399         * docs/gst/tmpl/gstiterator.sgml:
400         * gst/base/gstbasesrc.c:
401         * gst/base/gstbasesrc.h:
402         * gst/base/gstbasetransform.h:
403         * gst/gstelement.c:
404         * gst/gstiterator.h:
405           adding basetransform and iterator docs
406
407 2005-06-27  Andy Wingo  <wingo@pobox.com>
408
409         * docs/design/part-activation.txt: Notes on how activation should
410         work -- not quite implemented yet.
411
412 2005-06-25  Wim Taymans  <wim@fluendo.com>
413
414         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
415         At least get the chain function correct, needs more
416         fixing.
417
418 2005-06-25  Wim Taymans  <wim@fluendo.com>
419
420         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
421         (gst_basesink_handle_object), (gst_basesink_event),
422         (gst_basesink_do_sync), (gst_basesink_handle_event),
423         (gst_basesink_change_state):
424         * gst/gsttask.h:
425         Right, two problems here: ghostpads don't take locks and
426         glib _rec_mutex_lock_full() with depth==0 still locks.
427         Catch illegal locking and g_warn them.
428
429 2005-06-25  Wim Taymans  <wim@fluendo.com>
430
431         * check/states/sinks.c: (START_TEST), (gst_object_suite):
432         Have to check for completion now...
433
434 2005-06-25  Wim Taymans  <wim@fluendo.com>
435
436         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
437         (gst_basesink_handle_object), (gst_basesink_event),
438         (gst_basesink_do_sync), (gst_basesink_handle_event),
439         (gst_basesink_change_state):
440         * gst/gstpad.h:
441         Unlock STREAM_LOCK whatever the recursion was.
442
443 2005-06-25  Wim Taymans  <wim@fluendo.com>
444
445         * gst/base/gstbasesink.c: (gst_basesink_set_property),
446         (gst_basesink_preroll_queue_empty),
447         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
448         (gst_basesink_event), (gst_basesink_do_sync),
449         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
450         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
451         (gst_basesink_change_state):
452         Reworked the base sink, handle event and buffer serialisation
453         correctly and removed possible deadlock.
454         Handle EOS correctly.
455
456 2005-06-25  Wim Taymans  <wim@fluendo.com>
457
458         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
459         (gst_pipeline_change_state):
460         * tools/gst-launch.c: (check_intr), (event_loop), (main):
461         Allow elements to post EOS in the state change function.
462         Fix up -launch, make it exit the poll loop when the
463         pipeline actually changed state.
464         Fix up warning parsing in -launch.
465
466 2005-06-25  Wim Taymans  <wim@fluendo.com>
467
468         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
469         (gst_tee_sink_activate):
470         Core takes STREAM_LOCK for us now.
471
472 2005-06-25  Wim Taymans  <wim@fluendo.com>
473
474         * gst/gstelement.c: (gst_element_get_state_func),
475         (gst_element_set_state):
476         * gst/gstelement.h:
477         * gst/gstmessage.c: (gst_message_parse_error),
478         (gst_message_parse_warning):
479         Keep track of current target state while performing a state
480         change so that subclasses can do something interesting.
481         Fix parsing of warning/error messages when GError is NULL.
482
483 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
484
485         * docs/gst/Makefile.am:
486         * docs/gst/gstreamer-docs.sgml:
487         * docs/gst/gstreamer-sections.txt:
488         * docs/gst/gstreamer.types:
489         * docs/gst/tmpl/gstbasesink.sgml:
490         * docs/gst/tmpl/gstbasesrc.sgml:
491         * docs/gst/tmpl/gstbin.sgml:
492         * docs/gst/tmpl/gstcompat.sgml:
493         * docs/gst/tmpl/gstfakesink.sgml:
494         * docs/gst/tmpl/gstfakesrc.sgml:
495         * docs/gst/tmpl/gstfilesink.sgml:
496         * docs/gst/tmpl/gstfilesrc.sgml:
497         * docs/gst/tmpl/gstindex.sgml:
498         * docs/manual/appendix-quotes.xml:
499         * gst/base/gstbasesrc.h:
500         * gst/elements/gstfakesrc.h:
501         * gst/gstmessage.h:
502           start pulling in base classes and elements in our docs
503
504 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
505
506         * docs/gst/Makefile.am:
507         * docs/libs/Makefile.am:
508           fixed make distcheck with gtk-doc 1.3
509
510 2005-06-23  Wim Taymans  <wim@fluendo.com>
511
512         * gst/gstelement.c: (gst_element_get_state_func),
513         (gst_element_set_state), (gst_element_change_state):
514         When the state did not change, also report NO_PREROLL
515         when it matters.
516
517 2005-06-23  Wim Taymans  <wim@fluendo.com>
518
519         * gst/gstpad.c: (gst_pad_event_default):
520         * gst/gstqueue.c: (gst_queue_loop):
521         No unsafe task pausing please.
522
523 2005-06-23  Wim Taymans  <wim@fluendo.com>
524
525         * gst/schedulers/threadscheduler.c:
526         (gst_thread_scheduler_task_start),
527         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
528         Ref the task before pushing it on the threadpool. This
529         makes sure that we have a ref when the threadfunction is
530         actually called.
531
532 2005-06-23  Andy Wingo  <wingo@pobox.com>
533
534         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
535         offset is greater than the file's size.
536
537         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
538         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
539         * gst/gstobject.c (gst_object_class_init): Make the class lock
540         recursive. Wim won't let me drop deep_notify. Decodebin works
541         again, whoopdy doo.
542
543         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
544         internal pad, and hacks accordingly. Doesn't do it on the target
545         pad because we change its caps. Probably catches all cases of
546         interest tho.
547         (gst_ghost_pad_set_property): Connect to notify::caps as
548         appropritate.
549
550         * tests/network-clock.scm (plot-simulation): Pipe data to the
551         elite python skript.
552
553         * tests/network-clock-utils.scm (define-parameter): New macro,
554         defines a parameter that can be set via the command line.
555         (set-parameter!, parse-parameter-arguments): Command line args
556         parser.
557
558         * tests/plot-data: Simple matplotlib-based plotter, takes input on
559         stdin.
560
561 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
562
563         * gst/elements/gsttypefindelement.c:
564         (gst_type_find_element_handle_event):
565           Don't restart typefinding on a discont.
566         * gst/gstelement.c: (gst_element_set_state):
567           Debug spelling fix.
568         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
569           Allow changing mode of an active pad.
570           Debug output fixes.
571         * gst/registries/gstlibxmlregistry.c: (load_feature):
572           Don't cast a static pad template to a normal pad template.
573
574 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
575
576         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
577         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
578           remove gst_strtoll completely, since it didn't actually do
579           anything more than what g_ascii_strtoull already does.
580           check for range errors when deserializing
581           do a cast for the unsigned cases; but further fixing needs
582           a decision on what the interpretation of "(int)" and
583           deserialization should be for values that fall outside the
584           type's boundaries (ie, refuse, or interpret as casting)
585
586 2005-06-23  Wim Taymans  <wim@fluendo.com>
587
588         * check/Makefile.am:
589         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
590         * docs/design/part-live-source.txt:
591         * docs/design/part-states.txt:
592         * gst/base/gstbasesrc.c: (gst_basesrc_init),
593         (gst_basesrc_set_live), (gst_basesrc_is_live),
594         (gst_basesrc_get_range), (gst_basesrc_activate),
595         (gst_basesrc_change_state):
596         * gst/base/gstbasesrc.h:
597         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
598         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
599         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
600         * gst/gstelement.c: (gst_element_get_state_func),
601         (gst_element_set_state):
602         * gst/gstelement.h:
603         * gst/gsttypes.h:
604         * tools/gst-launch.c: (event_loop), (main):
605         Added support for live sources and other elements that
606         cannot do preroll.
607         Updated design docs, added live-source design doc.
608         Implemented live source functionality in basesrc
609         Fix error condition in _bin_get_state()
610         Implement live source handling in -launch.
611         Added check for live sources.
612         Fixed case in GstBin where elements were changed state
613         multiple times.
614
615
616 2005-06-23  Andy Wingo  <wingo@pobox.com>
617
618         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
619         borken refcounting.
620
621         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
622         gst_caps_replace takes care of this for us.
623
624         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
625         gst_pad_set_caps on the target, not just its setcaps() function.
626
627         * tests/network-clock.scm: 
628         * tests/network-clock-utils.scm: A network clock simulator.
629         Something of an algorithmic testbed before doing something in C.
630
631 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
632
633         * check/Makefile.am:
634         * check/gst/capslist.h:
635           copy over from 0.8, and add two with bitmasks specified with
636           (int) 0xFF...
637         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
638           add test to parse everything from capslist.h
639         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
640         (main):
641           add test for structure deserialization
642         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
643           add tests for deserialization of strings to int types
644         * gst/gststructure.c: (gst_structure_nth_field_name):
645         * gst/gststructure.h:
646           add a way to get the name of a field referenced by index
647         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
648           instead of checking if the resulting long long lies between
649           min and max, we check if the long long would fit into
650           a number of bytes for the final type.
651           This fixes cases where a string represents 2^32 - 1, which
652           when cast to int would be the (valid) -1, but is bigger than
653           G_MAXINT
654
655 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
656
657         * gst/parse/grammar.y:
658           add a log line for type deserialization
659
660 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
661
662         * check/gst/gstvalue.c: (START_TEST):
663         * gst/gstvalue.c: (gst_value_deserialize):
664           return long long, not int, so gint64 deserialization actually
665           works.  Is there any flag that makes the compiler check this ?
666           Fixes #308559
667
668 2005-06-22  Wim Taymans  <wim@fluendo.com>
669
670         * gst/gstbuffer.h:
671         Added convenience macros for setting buffers in GValue.
672
673 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
674
675         * check/gst/.cvsignore:
676         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
677           add a test deserializing int64, and comment part out because
678           it fails, yay !
679
680 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
681
682         * check/Makefile.am:
683         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
684         * testsuite/Makefile.am:
685         * testsuite/caps/Makefile.am:
686         * testsuite/caps/value_serialize.c:
687         * testsuite/test_gst_init.c:
688           move a value_serialize test over
689
690 2005-06-20  Wim Taymans  <wim@fluendo.com>
691
692         * gst/gstpad.c:
693         Small doc updates.
694         
695         * gst/gstvalue.c: (gst_value_compare_buffer),
696         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
697         (gst_value_compare_flags), (gst_value_serialize_flags),
698         (gst_value_deserialize_flags), (_gst_value_initialize):
699         Fix serialisation of buffers, they are not boxed types anymore
700
701 2005-06-20  Wim Taymans  <wim@fluendo.com>
702
703         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
704         Testcase to show error in buffer-on-caps serialisation.
705
706 2005-06-20  Andy Wingo  <wingo@pobox.com>
707
708         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
709         will be adding to later.
710
711         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
712         if its socks fill with rocks.
713         (gst_system_clock_obtain): Set the name on object construction.
714         Avoid double-checked locking.
715
716 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
717
718         * gst/gsturi.c: (gst_element_make_from_uri):
719           Fix potential endless loop.
720
721 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
722
723         * check/Makefile.am:
724           add gsttag
725         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
726         (main):
727           move over from testsuite dir and clean up
728         * configure.ac:
729         * gst/gsttag.c:
730         * testsuite/Makefile.am:
731         * testsuite/tags/.cvsignore:
732         * testsuite/tags/Makefile.am:
733         * testsuite/tags/merge.c:
734           remove testsuite/tags
735
736 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
737
738         * docs/gst/gstreamer-sections.txt:
739         * docs/gst/tmpl/gstenumtypes.sgml:
740         * win32/gstenumtypes.c:
741           clean up documentation build a little
742
743 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
744
745         * check/gstcheck.h:
746           add macros for checking refcounts on objects and caps
747         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
748           add some more unit tests
749         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
750         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
751           fix leaked refcounts (I hope :)) so unittest works
752         * gst/gstpad.h:
753           whitespace removal
754
755 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
756
757         * configure.ac: back to HEAD
758
759 === release 0.9.1 ===
760
761 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
762
763         * NEWS:
764         * RELEASE:
765           updated
766
767 2005-06-17  Andy Wingo  <wingo@pobox.com>
768
769         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
770         assert; it's always possible that the pad gets deactivated in
771         between the checks in gstpad.c and the implementation. Rely on
772         finish_preroll() to return a FLUSHING or similar instead of on the
773         assert.
774         
775         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
776         clock and post an EOS message if we come out of finish_preroll in
777         the playing state.
778
779 2005-06-16  David Schleef  <ds@schleef.org>
780
781         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
782         (gst_capsfilter_set_property): Allow NULL as possible value
783         for filter_caps property, indicating GST_CAPS_ANY.
784
785 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
786
787         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
788           fix debug output
789         * gst/schedulers/Makefile.am:
790           use libgst prefix
791         * gstreamer.spec.in:
792           fix spec for it
793
794 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
795
796         * gstreamer.spec.in:
797           clean up
798
799 2005-06-08  Andy Wingo  <wingo@pobox.com>
800
801         * gst/gstutils.c: RPAD fixes all around.
802         (gst_element_link_pads): Refcounting fixes.
803
804         * tools/gst-inspect.c:
805         * tools/gst-xmlinspect.c:
806         * parse/grammar.y:
807         * gst/base/gsttypefindhelper.c:
808         * gst/base/gstbasesink.c:
809         * gst/gstqueue.c: RPAD fixes.
810
811         * gst/gstghostpad.h:
812         * gst/gstghostpad.c: New ghost pad implementation as full proxy
813         pads. The tricky thing is they provide both source and sink
814         interfaces, since they proxy the internal pad for the external
815         pad, and vice versa. Implement with lower-level ProxyPad objects,
816         with the interior proxy pad as a child of the exterior ghost pad.
817         Should write a doc on this.
818         
819         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
820         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
821         gst_object API.
822         
823         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
824         pads are real pads. No ghost pads in this file. Not documenting
825         the myriad s/RPAD/PAD/ and REALIZE fixes.
826         (gst_pad_class_init): Add properties for "direction" and
827         "template". Both are construct-only, so they can't change during
828         the life of the pad. Fixes properly deriving from GstPad.
829         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
830         derived objects, just set properties when creating the objects via
831         g_object_new.
832         (gst_pad_get_parent): Implement as a function, return NULL if the
833         parent is not an element.
834         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
835         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
836         
837         * gst/gstobject.c (gst_object_class_init): Make name a construct
838         property. Don't set it in the object init.
839
840         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
841         with UNKNOWN direction.
842         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
843         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
844         (gst_element_remove_pad): Remove ghost-pad special cases.
845         (gst_element_pads_activate): Remove rpad cruft.
846
847         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
848         catch the pad's-parent-not-an-element case.
849
850         * gst/gst.h: Include gstghostpad.h.
851
852         * gst/gst.c (init_post): No more real, ghost pads.
853
854         * gst/Makefile.am: Add gstghostpad.[ch].
855
856         * check/Makefile.am:
857         * check/gst/gstbin.c:
858         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
859         into a bin creates ghost pads, and that the refcounts are right.
860         Partly moved from gstbin.c.
861
862 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
863
864         * check/gst-libs/.cvsignore:
865         * check/gst/.cvsignore:
866         * check/pipelines/.cvsignore:
867           ignore more
868         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
869         (START_TEST), (cleanup_suite), (main):
870           add some tests related to cleanup after running pipelines
871
872 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
873
874         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
875           add a testsuite for GstBuffer
876
877 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
878
879         * gst/gstminiobject.h:
880           add defines for accessing the refcount
881
882 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
883
884         * Makefile.am: added support for html unit test coverage reports
885
886 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
887
888         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
889           Free existing caps if the capsfilter changes. Add a FIXME about
890           setting those caps on the pads.
891
892         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
893           Before adding a ghost pad to a parent bin, check that there isn't
894           already one for the element on the bin. Prevents infinite recursion
895           when using decodebin in parse pipelines. Andy says he'll rewrite the
896           way this works anyway, so ignore the hack.
897
898 2005-06-02  Andy Wingo  <wingo@pobox.com>
899
900         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
901         file size, pass it on to the type find helper.
902
903         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
904         segment_start and segment_end properly according to the seek
905         method. Segment_end is still a bit flaky because offset can be
906         negative for CUR and END cases, but it takes -1 as an "unset"
907         value.
908
909 2005-06-02  Wim Taymans  <wim@fluendo.com>
910
911         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
912         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
913         (gst_basesink_activate):
914         * gst/base/gstbasesink.h:
915         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
916         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
917         (gst_pad_query), (gst_pad_start_task):
918         * gst/gstpad.h:
919         * gst/gstqueue.c: (gst_queue_bufferalloc),
920         (gst_queue_handle_sink_event), (gst_queue_chain):
921         Bufferalloc: return GstFlowReturn to more accuratly report
922         why allocation failed.
923
924 2005-06-02  Wim Taymans  <wim@fluendo.com>
925
926         * gst/gstpipeline.c: (gst_pipeline_send_event):
927         Take snapshot of state without blocking.
928
929 2005-06-02  Wim Taymans  <wim@fluendo.com>
930
931         * docs/design/part-TODO.txt:
932         * docs/design/part-caps.txt:
933         * docs/design/part-clocks.txt:
934         * docs/design/part-negotiation.txt:
935         * docs/design/part-preroll.txt:
936         Small doc updates 
937
938 2005-05-30  Wim Taymans  <wim@fluendo.com>
939
940         * gst/elements/gstidentity.c: (gst_identity_event),
941         (gst_identity_transform), (gst_identity_get_property):
942         Protect last_message property as it is accessed from
943         multiple threads.
944
945 2005-05-30  Wim Taymans  <wim@fluendo.com>
946
947         * gst/gstelement.c: (gst_element_init),
948         (gst_element_pads_activate), (gst_element_change_state):
949         Slicker pad activation code.
950
951 2005-05-30  Wim Taymans  <wim@fluendo.com>
952
953         * gst/Makefile.am:
954         * gst/gstelement.h:
955         * gst/gstelementfactory.h:
956         * gst/gsttypes.h:
957         Move elementfactory methods to separate .h file.
958
959 2005-05-30  Wim Taymans  <wim@fluendo.com>
960
961         * docs/design/part-overview.txt:
962         * gst/gstsystemclock.h:
963         Small typo fixes, doc updates.
964
965 2005-05-30  Wim Taymans  <wim@fluendo.com>
966
967         * gst/gst.c: (gst_init_get_popt_table), (init_post),
968         (init_popt_callback):
969         Remove cpu-opt flag.
970
971 2005-05-30  Wim Taymans  <wim@fluendo.com>
972
973         * gst/gstbuffer.c: (gst_subbuffer_finalize),
974         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
975         * gst/gstbuffer.h:
976         Avoid typechecking in places where not needed.
977         Added accessor for malloc_data.
978
979 2005-05-30  Wim Taymans  <wim@fluendo.com>
980
981         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
982         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
983         (gst_pad_configure_sink), (gst_pad_configure_src),
984         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
985         (gst_pad_start_task):
986         Propagate errors from _set_caps() in configure_src/sink
987         functions instead of returning TRUE.
988         FLUSH events can travel up and downstream
989
990
991 2005-05-30  Wim Taymans  <wim@fluendo.com>
992
993         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
994         (gst_basesink_activate):
995         Handle EOS in preroll.
996
997 2005-05-30  Wim Taymans  <wim@fluendo.com>
998
999         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1000         (gst_queue_loop), (gst_queue_handle_src_event):
1001         Remove old pieces of code
1002         Flushing the queue in an upstream event is a very bad idea.
1003
1004 2005-05-26  Andy Wingo  <wingo@pobox.com>
1005
1006         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
1007         gst_value_set_mini_object so as to add a ref on the object (which
1008         will be removed when the value is unset).
1009
1010         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
1011         arg type in ::handoff.
1012
1013         * gst/gstelement.c (gst_element_change_state): Also deactivate
1014         pads in READY->NULL, just in case the element didn't make it to
1015         PAUSED. Wingo tested, Wim approved.
1016
1017 2005-05-26  Wim Taymans  <wim@fluendo.com>
1018
1019         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1020         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1021         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
1022         A flushing pad cannot be used to alloc_buffer from.
1023
1024 2005-05-26  Wim Taymans  <wim@fluendo.com>
1025
1026         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1027         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1028         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1029         (gst_bus_create_watch), (gst_bus_add_watch_full):
1030         * gst/gstbus.h:
1031         Implement a real GSource and use g_main_context_wakeup() to
1032         signal new messages instead of the socketpair.
1033
1034 2005-05-25  Wim Taymans  <wim@fluendo.com>
1035
1036         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1037         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1038         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1039         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1040         (gst_pad_send_event), (gst_pad_start_task):
1041         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1042         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1043         (gst_queue_sink_activate), (gst_queue_src_activate),
1044         (gst_queue_change_state):
1045         * gst/gstqueue.h:
1046         Fix state changes for non sinks. We now change sinks, then elements
1047         with unconnected srcpads, then the rest.
1048         More efficient queue unlocking in flush and state changes.
1049         Set the pad activate mode even if it does not have an activate
1050         function.
1051
1052 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1053
1054         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1055           Don't go in pull mode for non-seekable sources.
1056         * gst/elements/gsttypefindelement.h:
1057         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1058         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1059         (free_entry), (stop_typefinding),
1060         (gst_type_find_element_handle_event), (find_peek),
1061         (gst_type_find_element_chain), (do_pull_typefind),
1062         (gst_type_find_element_change_state):
1063           Allow typefinding (w/o seeking) in push-mode, simplified version
1064           of what was in 0.8.
1065         * gst/gstutils.c: (gst_buffer_join):
1066         * gst/gstutils.h:
1067           gst_buffer_join() from 0.8.
1068
1069 2005-05-25  Wim Taymans  <wim@fluendo.com>
1070
1071         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1072         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1073         (gst_pad_send_event), (gst_pad_start_task):
1074         Disable attempt at mode switching until it is figured out.
1075
1076 2005-05-25  Wim Taymans  <wim@fluendo.com>
1077
1078         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1079         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1080         (gst_basesink_finish_preroll), (gst_basesink_chain),
1081         (gst_basesink_loop), (gst_basesink_activate),
1082         (gst_basesink_change_state):
1083         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1084         (gst_basesrc_get_range), (gst_basesrc_loop),
1085         (gst_basesrc_activate):
1086         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1087         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1088         (gst_real_pad_init), (gst_real_pad_set_property),
1089         (gst_real_pad_get_property), (gst_pad_set_active),
1090         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1091         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1092         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1093         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1094         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1095         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
1096         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
1097         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1098         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
1099         (gst_pad_stop_task):
1100         * gst/gstpad.h:
1101         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1102         (gst_queue_loop), (gst_queue_src_activate):
1103         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
1104         (gst_task_get_state):
1105         * gst/gsttask.h:
1106         * gst/schedulers/threadscheduler.c:
1107         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
1108         Implement gst_pad_pause/start/stop_task(), take STREAM lock
1109         in task function.
1110         Remove ACTIVE pad flag, use FLUSHING everywhere
1111         Added _pad_chain(), _pad_get_range() to call chain/getrange 
1112         functions.
1113         Add locks around IS_FLUSHING when reading.
1114         Take STREAM lock in chain(), get_range() functions so plugins
1115         don't need to take it anymore.
1116         
1117
1118
1119 2005-05-25  Wim Taymans  <wim@fluendo.com>
1120
1121         * tools/gst-launch.c: (event_loop):
1122         Unref message after using its contents instead of
1123         before.
1124
1125 2005-05-24  Wim Taymans  <wim@fluendo.com>
1126
1127         * docs/design/draft-ghostpads.txt:
1128         * docs/design/draft-push-pull.txt:
1129         * docs/design/draft-query.txt:
1130         * docs/design/part-overview.txt:
1131         Docs updates, added general overview doc.
1132
1133 2005-05-21  David Schleef  <ds@schleef.org>
1134
1135         * docs/gst/tmpl/old/GstBin.sgml:
1136         * docs/gst/tmpl/old/GstBuffer.sgml:
1137         * docs/gst/tmpl/old/GstCaps.sgml:
1138         * docs/gst/tmpl/old/GstClock.sgml:
1139         * docs/gst/tmpl/old/GstCompat.sgml:
1140         * docs/gst/tmpl/old/GstData.sgml:
1141         * docs/gst/tmpl/old/GstElement.sgml:
1142         * docs/gst/tmpl/old/GstEvent.sgml:
1143         * docs/gst/tmpl/old/GstIndex.sgml:
1144         * docs/gst/tmpl/old/GstStructure.sgml:
1145         * docs/gst/tmpl/old/GstTag.sgml:
1146         * docs/gst/tmpl/old/cothreads.sgml:
1147         * docs/gst/tmpl/old/cothreads_compat.sgml:
1148         * docs/gst/tmpl/old/gettext.sgml:
1149         * docs/gst/tmpl/old/gobject2gtk.sgml:
1150         * docs/gst/tmpl/old/grammar.tab.sgml:
1151         * docs/gst/tmpl/old/gst-i18n-app.sgml:
1152         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
1153         * docs/gst/tmpl/old/gst_private.sgml:
1154         * docs/gst/tmpl/old/gstaggregator.sgml:
1155         * docs/gst/tmpl/old/gstarch.sgml:
1156         * docs/gst/tmpl/old/gstatomic_impl.sgml:
1157         * docs/gst/tmpl/old/gstbufferstore.sgml:
1158         * docs/gst/tmpl/old/gstdata_private.sgml:
1159         * docs/gst/tmpl/old/gstdisksink.sgml:
1160         * docs/gst/tmpl/old/gstdisksrc.sgml:
1161         * docs/gst/tmpl/old/gstelementfactory.sgml:
1162         * docs/gst/tmpl/old/gstextratypes.sgml:
1163         * docs/gst/tmpl/old/gstfakesink.sgml:
1164         * docs/gst/tmpl/old/gstfakesrc.sgml:
1165         * docs/gst/tmpl/old/gstfdsink.sgml:
1166         * docs/gst/tmpl/old/gstfdsrc.sgml:
1167         * docs/gst/tmpl/old/gstfilesink.sgml:
1168         * docs/gst/tmpl/old/gstfilesrc.sgml:
1169         * docs/gst/tmpl/old/gsthttpsrc.sgml:
1170         * docs/gst/tmpl/old/gstidentity.sgml:
1171         * docs/gst/tmpl/old/gstindexfactory.sgml:
1172         * docs/gst/tmpl/old/gstmarshal.sgml:
1173         * docs/gst/tmpl/old/gstmd5sink.sgml:
1174         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
1175         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
1176         * docs/gst/tmpl/old/gstpadtemplate.sgml:
1177         * docs/gst/tmpl/old/gstpipefilter.sgml:
1178         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
1179         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
1180         * docs/gst/tmpl/old/gstshaper.sgml:
1181         * docs/gst/tmpl/old/gstspider.sgml:
1182         * docs/gst/tmpl/old/gstspideridentity.sgml:
1183         * docs/gst/tmpl/old/gststatistics.sgml:
1184         * docs/gst/tmpl/old/gsttee.sgml:
1185         * docs/gst/tmpl/old/gsttimecache.sgml:
1186         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
1187         * docs/gst/tmpl/old/gstxmlregistry.sgml:
1188         * docs/gst/tmpl/old/gthread-cothreads.sgml:
1189         * docs/gst/tmpl/old/types.sgml:
1190           I didn't intend to add these or check them in.
1191
1192 2005-05-19  David Schleef  <ds@schleef.org>
1193
1194         * configure.ac: Use -no-common everywhere.  In a sane world, it
1195           would be the default in libtool, because without it, you can't
1196           build DLLs on Windows.
1197         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
1198         * docs/gst/gstreamer-sections.txt:
1199         * docs/gst/tmpl/gstcpu.sgml:
1200         * docs/gst/tmpl/gstdata.sgml:
1201         * docs/gst/tmpl/gstthread.sgml:
1202
1203 2005-05-19  David Schleef  <ds@schleef.org>
1204
1205         * gst/gstminiobject.c: (gst_value_set_mini_object),
1206         (gst_value_take_mini_object), (gst_value_get_mini_object):
1207         * gst/gstminiobject.h: Add GValue set/get functions.
1208
1209 2005-05-19  Wim Taymans  <wim@fluendo.com>
1210
1211         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
1212         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
1213         (gst_subbuffer_init), (gst_buffer_is_span_fast):
1214         * gst/gstbuffer.h:
1215         * gst/gstbus.c: (gst_bus_post):
1216         * gst/gstelement.c: (gst_element_get_random_pad):
1217         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
1218         Make subbufer unref the parent in finalize.
1219         some more debugging info.
1220
1221
1222 2005-05-19  Wim Taymans  <wim@fluendo.com>
1223
1224         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1225         (gst_basesink_init), (gst_basesink_finalize),
1226         (gst_basesink_activate), (gst_basesink_change_state):
1227         Don't free preroll queue too early.
1228
1229 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1230
1231         * gst/Makefile.am:
1232         * gst/ROADMAP:
1233           Hi, I'm outdated. Please shoot me.
1234
1235 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1236
1237         * gst/gstpipeline.c: (gst_pipeline_send_event):
1238           Do not access variables after they have been deleted.
1239
1240 2005-05-19  Wim Taymans  <wim@fluendo.com>
1241
1242         * tools/gst-inspect.c: (print_plugin_features):
1243         A plugin feature does unfortunatly not use the
1244         object name yet...
1245
1246 2005-05-18  Wim Taymans  <wim@fluendo.com>
1247
1248         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
1249         Port _span() functions to new subbuffers.
1250
1251 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1252
1253         * gst/gstbin.c: (gst_bin_add_func):
1254           Fix clock settery in bins when adding kids after the clock has
1255           been selected.
1256
1257 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1258
1259         * gst/elements/gstidentity.c: (gst_identity_class_init):
1260           Workaround until signals support GstMiniObject.
1261
1262 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1263
1264         * gst/gstbuffer.c:
1265         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
1266
1267 2005-05-18  Wim Taymans  <wim@fluendo.com>
1268
1269         * gst/base/Makefile.am:
1270         * gst/base/gstadapter.c: (gst_adapter_base_init),
1271         (gst_adapter_class_init), (gst_adapter_init),
1272         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1273         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1274         (gst_adapter_flush), (gst_adapter_available),
1275         (gst_adapter_available_fast):
1276         * gst/base/gstadapter.h:
1277         Ported and added adapter to the base classes.
1278
1279 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1280
1281         * gst/gst.c:
1282         * gst/gstmessage.c:
1283           Make sure the class is reffed/unreffed once before threads can be
1284           used.  Fixes #304551.
1285
1286 2005-05-17  Wim Taymans  <wim@fluendo.com>
1287
1288         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1289         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1290         * gst/gstminiobject.c: (gst_mini_object_get_type),
1291         (gst_mini_object_free):
1292         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1293         (gst_pad_push), (gst_pad_push_event):
1294         * gst/gstqueue.c: (gst_queue_change_state):
1295         Don't queue buffers in basesink when we are flushing.
1296         Unref buffer when flushing in basesink.
1297         Flush queue when going to READY
1298         Unref buffer when _push() returns an error.
1299         Don't free MiniObject instance when refcount is incremented
1300         in _finalize() so that we can recover objects.
1301
1302 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1303
1304         * docs/manual/advanced-schedulers.xml:
1305         * docs/manual/appendix-checklist.xml:
1306         * docs/pwg/advanced-clock.xml:
1307         * docs/pwg/advanced-interfaces.xml:
1308         * docs/pwg/advanced-request.xml:
1309         * docs/pwg/advanced-types.xml:
1310         * docs/pwg/intro-preface.xml:
1311         * examples/plugins/example.c: (gst_example_get_type),
1312         (gst_example_class_init), (gst_example_chain),
1313         (gst_example_set_property), (gst_example_get_property),
1314         (gst_example_change_state), (plugin_init):
1315         * examples/plugins/example.h:
1316           small doc fixes
1317
1318 2005-05-17  Wim Taymans  <wim@fluendo.com>
1319
1320         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1321         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1322         * gst/gstqueue.c: (gst_queue_change_state):
1323         Clear queue when going to READY.
1324         Remove IN_SETCAPS flag too.
1325
1326 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1327
1328         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1329           Remove implicit cast from gboolean to GstElementStateReturn;
1330           make sure we still return failure in paused => ready case if
1331           the parent class fails to change state and our own stop 
1332           vfunc succeeds.
1333
1334 2005-05-17  Wim Taymans  <wim@fluendo.com>
1335
1336         * tools/gst-launch.c: (event_loop):
1337         Message was unreffed too soon.
1338
1339 2005-05-16  Andy Wingo  <wingo@pobox.com>
1340
1341         * gst/gstbin.c (sink_iterator_filter): Err... um...
1342
1343         * check/gst/gstbin.c (test_ghost_pads): New test for the
1344         ghosting-if-elements-not-in-same-bin behavior.
1345
1346 2005-05-16  David Schleef  <ds@schleef.org>
1347
1348         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1349         accessing refcount directly.
1350
1351 2005-05-15  David Schleef  <ds@schleef.org>
1352
1353         * check/Makefile.am: remove GstData checks
1354         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1355         * gst/Makefile.am: add miniobject, remove data
1356         * gst/gst.h: add miniobject, remove data
1357         * gst/gstdata.c: remove
1358         * gst/gstdata.h: remove
1359         * gst/gstdata_private.h: remove
1360         * gst/gsttypes.h: remove GstEvent and GstMessage
1361         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1362         * gst/gstmarshal.list: change BOXED -> OBJECT
1363
1364         Implement GstMiniObject.
1365         * gst/gstminiobject.c:
1366         * gst/gstminiobject.h:
1367
1368         Modify to be subclasses of GstMiniObject.
1369         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1370         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1371         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1372         (gst_subbuffer_get_type), (gst_subbuffer_init),
1373         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1374         (gst_buffer_span):
1375         * gst/gstbuffer.h:
1376         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1377         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1378         (_gst_event_copy), (gst_event_new):
1379         * gst/gstevent.h:
1380         * gst/gstmessage.c: (_gst_message_initialize),
1381         (gst_message_get_type), (gst_message_class_init),
1382         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1383         (gst_message_new), (gst_message_new_error),
1384         (gst_message_new_warning), (gst_message_new_tag),
1385         (gst_message_new_state_changed), (gst_message_new_application):
1386         * gst/gstmessage.h:
1387         * gst/gstprobe.c: (gst_probe_perform),
1388         (gst_probe_dispatcher_dispatch):
1389         * gst/gstprobe.h:
1390         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1391         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1392         (_gst_query_copy), (gst_query_new):
1393
1394         Update elements for GstData -> GstMiniObject changes
1395         * gst/gstquery.h:
1396         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1397         (gst_queue_chain), (gst_queue_loop):
1398         * gst/elements/gstbufferstore.c:
1399         (gst_buffer_store_add_buffer_func),
1400         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1401         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1402         (gst_fakesink_render):
1403         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1404         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1405         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1406         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1407         (gst_filesrc_create_read):
1408         * gst/elements/gstidentity.c: (gst_identity_class_init):
1409         * gst/elements/gsttypefindelement.c:
1410         (gst_type_find_element_src_event), (free_entry_buffers),
1411         (gst_type_find_element_handle_event):
1412         * libs/gst/dataprotocol/dataprotocol.c:
1413         (gst_dp_header_from_buffer):
1414         * libs/gst/dataprotocol/dataprotocol.h:
1415         * libs/gst/dataprotocol/dp-private.h:
1416
1417 2005-05-15  David Schleef  <ds@schleef.org>
1418
1419         * gst/elements/gstelements.c: Don't include headers that were
1420         just removed.
1421
1422 2005-05-15  David Schleef  <ds@schleef.org>
1423
1424         * gst/elements/Makefile.am: Remove some elements that don't
1425         need to be in the core (or even exist at all).
1426         * gst/elements/gstaggregator.c:
1427         * gst/elements/gstaggregator.h:
1428         * gst/elements/gstmd5sink.c:
1429         * gst/elements/gstmd5sink.h:
1430         * gst/elements/gstmultifilesrc.c:
1431         * gst/elements/gstmultifilesrc.h:
1432         * gst/elements/gstpipefilter.c:
1433         * gst/elements/gstpipefilter.h:
1434         * gst/elements/gstshaper.c:
1435         * gst/elements/gstshaper.h:
1436         * gst/elements/gststatistics.c:
1437         * gst/elements/gststatistics.h:
1438         * po/POTFILES.in: Remove above files.
1439
1440 2005-05-14  Andy Wingo  <wingo@pobox.com>
1441
1442         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1443         so as to get the refs right.
1444         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1445         unreffing objects that don't pass the filter.
1446
1447         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1448         gst_element_set_bus.
1449         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1450         normal cases, this will destroy the bus.
1451
1452         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1453         object.
1454
1455         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1456         has no sinks.
1457
1458 2005-05-13  Andy Wingo  <wingo@pobox.com>
1459
1460         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1461         gst_pad_link, call pad_link_maybe_ghosting,
1462         (pad_link_maybe_ghosting): Links pads, making sure that the
1463         elements being linked are in the same bin.
1464         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1465         Helpers for pad_link_maybe_ghosting.
1466
1467 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1468
1469         * configure.ac:
1470           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1471
1472 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1473
1474         * docs/design/part-element-source.txt:
1475           Mention GstPushSrc
1476
1477 2005-05-12  Wim Taymans  <wim@fluendo.com>
1478
1479         * gst/base/gstbasesink.c: (gst_basesink_init),
1480         (gst_basesink_activate):
1481         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1482         (gst_basesrc_is_seekable):
1483         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1484         (bin_element_is_sink), (gst_bin_change_state):
1485         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1486         * gst/gstelement.h:
1487         Identify sinks by their flag to avoid overly complicated
1488         checks (fow now).
1489         Do state changes even for elements not reachable from the
1490         sinks.
1491         BaseSink is a sink now :)
1492         Some more debugging info in the basesrc.
1493
1494
1495 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1496
1497         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1498           Implement _query on a bin, similar to _send_event.
1499
1500 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1501
1502         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1503           Discont event offset format should be GST_FORMAT_BYTES,
1504           not GST_FORMAT_TIME.
1505
1506 2005-05-12  Wim Taymans  <wim@fluendo.com>
1507
1508         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1509         Same fix as Ronald's but without the signal. 
1510
1511 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1512
1513         * gst/gstutils.c: (gst_element_query_position):
1514           No, an element is not a pad.
1515
1516 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1517
1518         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1519         (gst_bin_get_state):
1520           If a child is removed from a bin while we remove the child from
1521           the bin and while we're retrieving its state, signal this to the
1522           get_state function so we abort the wait (instead of waiting for
1523           a timeout) and can immediately re-iterate over all other elements.
1524
1525 2005-05-12  Wim Taymans  <wim@fluendo.com>
1526
1527         * gst/base/Makefile.am:
1528         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1529         (gst_basesrc_start):
1530         * gst/base/gstbasesrc.h:
1531         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1532         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1533         (gst_pushsrc_init), (gst_pushsrc_create):
1534         * gst/base/gstpushsrc.h:
1535         Added is_seekable to BaseSrc
1536         Added simple PushSrc.
1537
1538 2005-05-11  Wim Taymans  <wim@fluendo.com>
1539
1540         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1541         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1542         (gst_element_link_pads), (gst_element_query_position),
1543         (gst_element_query_convert), (intersect_caps_func),
1544         (gst_pad_query_position), (gst_pad_query_convert):
1545         Fix refcounting in utils function.
1546         No point in trying to activate a pad when it's added, it could
1547         be added from the state change function and then we deadlock, the
1548         element has to decide what to do.
1549
1550 2005-05-10  Andy Wingo  <wingo@pobox.com>
1551
1552         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1553         *all* the arguments.
1554
1555         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1556         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1557         lock (according to the docs -- if this is wrong change the docs).
1558
1559         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1560         flush messages in the NULL state.
1561
1562         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1563         message immediately and return.
1564         (gst_bus_set_flushing): New function. If a bus is flushing, it
1565         flushes out any queued messages and immediately unrefs new
1566         messages. This is so when an element goes to NULL, all of the
1567         unhandled messages coming from it can be freed, and their
1568         references to the element dropped. In other words: message source
1569         ref considered harmful :P
1570
1571         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1572         we're finished with it.
1573
1574         * gst/gstmessage.c (gst_message_new_state_changed): 
1575
1576 2005-05-10  Wim Taymans  <wim@fluendo.com>
1577
1578         * gst/gstvalue.c: (gst_value_compare_flags),
1579         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1580         (_gst_value_initialize):
1581         Added flags serialize/deserialize/compare code.
1582
1583 2005-05-09  Andy Wingo  <wingo@pobox.com>
1584
1585         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1586         Intersect the peer's caps with our caps.
1587
1588 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1589
1590         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1591         * gst/elements/gsttypefindelement.c: (find_peek):
1592           Handle negative offsets better. Fixes decodebin.
1593
1594 2005-05-09  Wim Taymans  <wim@fluendo.com>
1595
1596         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1597         (gst_base_transform_event):
1598         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1599         Implement accept_caps.
1600         Fix silly lock/unlock mismatch in base class.
1601
1602 2005-05-09  Wim Taymans  <wim@fluendo.com>
1603
1604         * docs/design/draft-push-pull.txt:
1605         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1606         * gst/elements/gstfilesink.c: (gst_filesink_init),
1607         (gst_filesink_query):
1608         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1609         (gst_type_find_handle_src_query), (find_element_get_length):
1610         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1611         * gst/gstelement.h:
1612         * gst/gstmessage.c:
1613         * gst/gstmessage.h:
1614         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1615         (gst_real_pad_get_caps_unlocked),
1616         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1617         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1618         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1619         (gst_real_pad_dispose), (gst_real_pad_finalize),
1620         (gst_pad_load_and_link), (gst_pad_save_thyself),
1621         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1622         (gst_pad_check_pull_range), (gst_pad_pull_range),
1623         (gst_pad_template_get_type), (gst_pad_template_class_init),
1624         (gst_pad_template_init), (gst_pad_template_dispose),
1625         (name_is_valid), (gst_static_pad_template_get),
1626         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1627         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1628         (gst_pad_get_element_private), (gst_pad_start_task),
1629         (gst_pad_pause_task), (gst_pad_stop_task),
1630         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1631         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1632         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1633         (gst_ghost_pad_new):
1634         * gst/gstpad.h:
1635         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1636         (gst_query_new_position), (gst_query_set_position),
1637         (gst_query_parse_position), (gst_query_new_convert),
1638         (gst_query_set_convert), (gst_query_parse_convert):
1639         * gst/gstquery.h:
1640         * gst/gstqueryutils.c:
1641         * gst/gstqueryutils.h:
1642         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1643         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1644         (gst_queue_handle_src_query):
1645         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1646         (gst_element_query_position), (gst_element_query_convert),
1647         (intersect_caps_func), (gst_pad_query_position),
1648         (gst_pad_query_convert):
1649         * gst/gstutils.h:
1650         * tools/gst-inspect.c: (print_pad_info):
1651         * tools/gst-xmlinspect.c: (print_element_info):
1652         Remove old query functions. Ported old code.
1653         Added position/convert helper functions to gstutils.
1654         Reordered gstpad.c code, grouping relevant things.
1655         Remove gst_message_new(), always need to speficy a specific
1656         message.
1657
1658
1659 2005-05-09  Andy Wingo  <wingo@pobox.com>
1660
1661         * gst/gstiterator.h: Add some includes.
1662
1663         * gst/gstqueryutils.h: Include more headers.
1664
1665         * gst/gstpad.h:
1666         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1667         some uses of gst_pad_query.
1668
1669         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1670         NULL out parameters.
1671         (gst_query_new_position): New proc, allocates a new position
1672         query.
1673
1674         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1675         gstqueryutils.c to the build.
1676
1677         * gst/gststructure.c (gst_structure_set_valist): Implement with
1678         the generic G_VALUE_COLLECT.
1679         
1680 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1681
1682         * gst/Makefile.am: (gst_headers):
1683         Added gstqueryutils.h to the list of headers to install, that was
1684         a 'nachty' move wingo :)
1685
1686 2005-05-06  Andy Wingo  <wingo@pobox.com>
1687
1688         * gst/gstquery.h
1689         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1690         GstData, init a memchunk.
1691         (standard_definitions): Add a few query types, deprecate a few.
1692         (gst_query_get_type): New proc.
1693         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1694         implementation.
1695         (gst_query_new_application, gst_query_get_structure): New public
1696         procs.
1697
1698         * docs/design/draft-query.txt: Removed LINKS from the query types,
1699         because all the rest can be dispatched to other pads -- seemed
1700         ugly to have a query that couldn't be dispatched. internal_links
1701         is fine as a pad method.
1702
1703         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1704         in gstpad.c, but maintain binary compatibility for the moment.
1705         Will fix before 0.9 is out.
1706
1707         * gst/gstqueryutils.c: 
1708         * gst/gstqueryutils.h: New files, implement 3 methods for each
1709         query type: parse_query, parse_response, and set. Probably need an
1710         allocator as well.
1711
1712         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1713
1714         * gst/elements/gstfilesink.c (gst_filesink_query2):
1715         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1716         query_types, and formats methods.
1717
1718         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1719         (gst_pad_set_query2_function): New functions.
1720         (gst_real_pad_init): Set query2_default as the default query2
1721         function. Basically just dispatches to internally linked pads.
1722
1723         Needs review!
1724         
1725         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1726         without using the atomic operations. Only one thread can possibly
1727         be accessing the data at this point. Changed so as to avoid
1728         gst_atomic operations.
1729
1730 2005-05-06  Wim Taymans  <wim@fluendo.com>
1731
1732         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1733         Also set caps if we use the fallback buffer alloc.
1734
1735 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1736
1737         * docs/gst/Makefile.am:
1738         * docs/gst/gstreamer-docs.sgml:
1739         * docs/gst/gstreamer-sections.txt:
1740         * docs/gst/tmpl/gstatomic.sgml:
1741         * docs/gst/tmpl/gstmemchunk.sgml:
1742         * testsuite/elements/struct_i386.h:
1743         * win32/GStreamer.vcproj:
1744         * win32/Makefile:
1745           Purge GstAtomic stuff from docs and win32 makefiles as well
1746
1747 2005-05-06  Wim Taymans  <wim@fluendo.com>
1748
1749         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1750         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1751         * gst/gstpad.c: (gst_pad_peer_get_caps):
1752         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1753         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1754         (gst_queue_src_activate), (gst_queue_change_state):
1755         * gst/gstqueue.h:
1756         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1757         (intersect_caps_func):
1758         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1759         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1760         Some fixes for the peer_get_caps() change.
1761
1762 2005-05-06  Wim Taymans  <wim@fluendo.com>
1763
1764         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1765         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1766         (gst_basesink_activate):
1767         Actually do something with error codes returned from the push
1768         functions.
1769
1770 2005-05-06  Wim Taymans  <wim@fluendo.com>
1771
1772         * docs/design/part-element-sink.txt:
1773         * docs/design/part-element-source.txt:
1774         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1775         (gst_basesink_event), (gst_basesink_activate):
1776         * gst/base/gstbasesink.h:
1777         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1778         (gst_basesrc_activate):
1779         * gst/base/gstbasesrc.h:
1780         * gst/gstelement.c: (gst_element_pads_activate):
1781         Some more documentation.
1782         Fixed scheduling decision in _pads_activate().
1783
1784 2005-05-05  Andy Wingo  <wingo@pobox.com>
1785
1786         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1787         the test suite.
1788
1789 2005-05-05  Wim Taymans  <wim@fluendo.com>
1790
1791         * gst/base/Makefile.am:
1792         * gst/base/gstbasesink.h:
1793         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1794         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1795         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1796         (gst_collectpads_class_init), (gst_collectpads_init),
1797         (gst_collectpads_finalize), (gst_collectpads_new),
1798         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1799         (find_pad), (gst_collectpads_remove_pad),
1800         (gst_collectpads_is_active), (gst_collectpads_collect),
1801         (gst_collectpads_collect_range), (gst_collectpads_start),
1802         (gst_collectpads_stop), (gst_collectpads_peek),
1803         (gst_collectpads_pop), (gst_collectpads_available),
1804         (gst_collectpads_read), (gst_collectpads_flush),
1805         (gst_collectpads_chain):
1806         * gst/base/gstcollectpads.h:
1807         * gst/elements/Makefile.am:
1808         * gst/elements/gstelements.c:
1809         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1810         (gst_fakesink_get_times), (gst_fakesink_event),
1811         (gst_fakesink_preroll), (gst_fakesink_render):
1812         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1813         (gst_filesink_init), (gst_filesink_set_location),
1814         (gst_filesink_open_file), (gst_filesink_close_file),
1815         (gst_filesink_pad_query), (gst_filesink_event),
1816         (gst_filesink_render), (gst_filesink_change_state):
1817         * gst/elements/gstfilesink.h:
1818         Added object to help in making collect pad based elements.
1819         Ported filesink.
1820         Make event function in sink baseclass return gboolean.
1821
1822 2005-05-05  Wim Taymans  <wim@fluendo.com>
1823
1824         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1825         (gst_bin_get_by_name):
1826         * gst/gstbuffer.h:
1827         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1828         (gst_clock_finalize):
1829         * gst/gstdata.c: (gst_data_replace):
1830         * gst/gstdata.h:
1831         * gst/gstelement.c: (gst_element_request_pad),
1832         (gst_element_pads_activate):
1833         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1834         (gst_object_unref):
1835         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1836         (gst_pad_set_checkgetrange_function),
1837         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1838         (gst_pad_check_pull_range), (gst_pad_pull_range),
1839         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1840         (gst_pad_pause_task), (gst_pad_stop_task):
1841         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1842         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1843         Fix name lookup in GstBin.
1844         Added _data_replace() function and _buffer_replace()
1845         Use finalize method to clean up clock.
1846         Fix refcounting on request pads.
1847         Fix pad schedule mode error.
1848         Some more object refcounting debug info,
1849
1850
1851 2005-05-04  Andy Wingo <wingo@pobox.com>
1852
1853         * check/Makefile.am:
1854         * docs/gst/tmpl/gstatomic.sgml:
1855         * docs/gst/tmpl/gstplugin.sgml:
1856         * gst/base/gstbasesink.c: (gst_basesink_activate):
1857         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1858         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1859         (gst_basesrc_query), (gst_basesrc_set_property),
1860         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1861         (gst_basesrc_activate):
1862         * gst/base/gstbasesrc.h:
1863         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1864         (gst_base_transform_src_activate):
1865         * gst/elements/gstelements.c:
1866         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1867         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1868         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1869         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1870         (gst_type_find_element_checkgetrange),
1871         (gst_type_find_element_activate):
1872         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1873         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1874         (gst_caps_load_thyself):
1875         * gst/gstelement.c: (gst_element_pads_activate),
1876         (gst_element_save_thyself), (gst_element_restore_thyself):
1877         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1878         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1879         * gst/gstpad.h:
1880         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1881         (gst_xml_parse_file), (gst_xml_parse_memory),
1882         (gst_xml_get_element), (gst_xml_make_element):
1883         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1884         (_file_index_id_save_xml), (gst_file_index_commit):
1885         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1886         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1887         (load_paths):
1888         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1889         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1890         * tools/gst-complete.c: (main):
1891         * tools/gst-compprep.c: (main):
1892         * tools/gst-inspect.c: (print_element_properties_info):
1893         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1894         * tools/gst-xmlinspect.c: (print_element_properties):
1895         GCC 4 fixen.
1896         
1897 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1898
1899         * gst/gstplugin.c: (gst_plugin_check_module),
1900         (gst_plugin_check_file), (gst_plugin_load_file):
1901             apply patch from #172526 to make register work on MacOSX
1902
1903 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1904
1905         * docs/gst/tmpl/gstconfig.sgml:
1906         * gst/gstconfig.h.in:
1907           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1908         * testsuite/debug/printf_extension.c: (main):
1909           Do not use GST_PTR_FORMAT on pointers to types with
1910           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1911         * testsuite/elements/property.h:
1912           use correct printf format
1913
1914 2005-05-02  Wim Taymans  <wim@fluendo.com>
1915
1916         * docs/design/draft-push-pull.txt:
1917         * docs/design/draft-query.txt:
1918         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1919         (gst_basesrc_start):
1920         Added draft for new query API.
1921         Added draft for better selecting scheduling methods.
1922         Make basesrc ignore length if the subclass does not support
1923         it.
1924
1925 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1926
1927         * gst/Makefile.am:
1928           possible fixes for automake-1.5 - _LIBADD is reserved
1929
1930 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1931
1932         * docs/faq/Makefile.am:
1933         * docs/manual/Makefile.am:
1934         * docs/manuals.mak:
1935         * docs/pwg/Makefile.am:
1936         * gst/Makefile.am:
1937           possible fixes for automake-1.5
1938
1939 2005-04-28  Wim Taymans  <wim@fluendo.com>
1940
1941         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1942         (gst_basesink_pad_getcaps), (gst_basesink_init),
1943         (gst_basesink_do_sync):
1944         * gst/gstclock.c: (gst_clock_entry_new):
1945         * gst/gstevent.c: (gst_event_discont_get_value):
1946         * gst/gstpipeline.c: (pipeline_bus_handler),
1947         (gst_pipeline_change_state):
1948         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1949         Better debugging of clocking info.
1950         Allow NULL values when getting discont values.
1951
1952 2005-04-27  Wim Taymans  <wim@fluendo.com>
1953
1954         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1955         * check/gst/gstpad.c: (gst_pad_suite):
1956         Increase timeout for checks.
1957
1958 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1959
1960         * check/Makefile.am:
1961           fix the broken rule for cleanup.  Apparently this rule is
1962           only needed on FC2, so maybe this warrants further autotool
1963           inspection.
1964
1965 2005-04-26  Wim Taymans  <wim@fluendo.com>
1966
1967         * gst/gsttrashstack.h:
1968         Ooohh. a nasty one! After having a failed pop() from the stack,
1969         it's possible that the stack is empty. In that case, don't
1970         follow the NULL pointer.
1971
1972 2005-04-25  Wim Taymans  <wim@fluendo.com>
1973
1974         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1975         (gst_pad_set_checkgetrange_function),
1976         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
1977         (gst_pad_check_pull_range), (gst_pad_pull_range),
1978         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1979         (gst_pad_pause_task), (gst_pad_stop_task):
1980         * gst/gstplugin.c: (gst_plugin_load):
1981         * gst/gstplugin.h:
1982         Remove gst_library_load as it does more harm than good with
1983         the new g_module flags.
1984         Revert bogus caps template check in pad linking, pad caps
1985         are important when linking not the template, which is more
1986         general than the current caps.
1987
1988 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1989
1990         * gst/autoplug/.cvsignore:
1991         * gst/autoplug/Makefile.am:
1992         * gst/autoplug/gstsearchfuncs.c:
1993         * gst/autoplug/gstsearchfuncs.h:
1994         * gst/autoplug/gstspider.c:
1995         * gst/autoplug/gstspider.h:
1996         * gst/autoplug/gstspideridentity.c:
1997         * gst/autoplug/gstspideridentity.h:
1998         * gst/autoplug/spidertest.c:
1999           Die, spider, die.
2000
2001 2005-04-25  Wim Taymans  <wim@fluendo.com>
2002
2003         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2004         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2005         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
2006         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
2007         * gst/gstpad.h:
2008         Added stubs for unimplemented functions. 
2009
2010 2005-04-24  David Schleef  <ds@schleef.org>
2011
2012         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
2013         please fix.
2014
2015 2005-04-24  David Schleef  <ds@schleef.org>
2016
2017         Convert everything from GstAtomicInt to g_atomic_int_*, and
2018         remove gstatomic.
2019         * gst/Makefile.am:
2020         * gst/gstatomic.c:
2021         * gst/gstatomic.h:
2022         * gst/gstatomic_impl.h:
2023         * gst/gstbuffer.c:
2024         * gst/gstcaps.c:
2025         * gst/gstcaps.h:
2026         * gst/gstclock.c:
2027         * gst/gstclock.h:
2028         * gst/gstdata.c:
2029         * gst/gstdata.h:
2030         * gst/gstdata_private.h:
2031         * gst/gstevent.c:
2032         * gst/gstinfo.c:
2033         * gst/gstinfo.h:
2034         * gst/gstmessage.c:
2035         * gst/gstobject.c:
2036         * gst/gstobject.h:
2037         * gst/gststructure.c:
2038         * gst/gststructure.h:
2039         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2040         * gst/gstutils.h:
2041
2042 2005-04-24  David Schleef  <ds@schleef.org>
2043
2044         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2045         make the regressions tests work.  Remove some code that is no
2046         longer true.
2047         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2048         Disable warning for pads without templates.
2049
2050 2005-04-24  David Schleef  <ds@schleef.org>
2051
2052         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2053         functions that handle filtered links.
2054         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2055         removed functions.
2056         * gst/gstutils.c: Fix/remove utility functions that handle
2057         filtered caps.
2058         * gst/gstutils.h:
2059         * gst/gstvalue.c: Add serialization/deserialization of caps
2060         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2061         requires fixing so that the filter caps notation creates
2062         a capsfilter element and sets the filter_caps property.  I
2063         think everyone probably wants to keep the shorthand notation.
2064         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2065         * docs/gst/tmpl/gstpad.sgml:
2066
2067         * gst/elements/gstelements.c: Register capsfilter element.
2068         * gst/Makefile.am: fix spacing
2069         * docs/random/ds/0.9-suggested-changes: random
2070
2071 2005-04-23  David Schleef  <ds@schleef.org>
2072
2073         * gst/elements/Makefile.am:
2074         * gst/elements/gstcapsfilter.c: New element that acts like an
2075         identity, but filters caps.  Will eventually replace filtered
2076         caps in pad linking.
2077         * gst/gstutils.c: (gst_element_create_all_pads): New function
2078         to create all the ALWAYS pads that are registered with an
2079         element class.  This functionality should eventually be
2080         merged in with GstElement initialization.
2081         * gst/gstutils.h:
2082         * testsuite/trigger/README: part of trigger test code that should
2083         have been checked in a long time ago.
2084
2085 2005-04-23  David Schleef  <ds@schleef.org>
2086
2087         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2088         needed with new versions of libtool (nobody will confirm this),
2089         and hard to carry around.
2090         * gst/autoplug/Makefile.am:
2091         * gst/base/Makefile.am:
2092         * gst/elements/Makefile.am:
2093         * gst/indexers/Makefile.am:
2094         * gst/schedulers/Makefile.am:
2095         * libs/gst/bytestream/Makefile.am:
2096         * libs/gst/control/Makefile.am:
2097         * libs/gst/dataprotocol/Makefile.am:
2098         * libs/gst/getbits/Makefile.am:
2099
2100 2005-04-21  Wim Taymans  <wim@fluendo.com>
2101
2102         * docs/design/draft-push-pull.txt:
2103         * docs/design/part-MT-refcounting.txt:
2104         * docs/design/part-TODO.txt:
2105         * docs/design/part-caps.txt:
2106         * docs/design/part-events.txt:
2107         * docs/design/part-gstbus.txt:
2108         * docs/design/part-gstpipeline.txt:
2109         * docs/design/part-messages.txt:
2110         * docs/design/part-push-pull.txt:
2111         * docs/design/part-query.txt:
2112         Some more docs.
2113
2114 2005-04-21  Wim Taymans  <wim@fluendo.com>
2115
2116         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
2117         (gst_message_new), (gst_message_new_error),
2118         (gst_message_new_warning), (gst_message_new_tag),
2119         (gst_message_new_state_changed), (gst_message_new_application),
2120         (gst_message_get_structure):
2121         * gst/gstmessage.h:
2122         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2123         (gst_structure_copy_conditional):
2124         Use parent refcount in GstMessage to ensure GstStructure
2125         consistency.
2126         Cleaned up headers a bit.
2127         
2128
2129 2005-04-20  Wim Taymans  <wim@fluendo.com>
2130
2131         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2132         (gst_basesink_pad_getcaps), (gst_basesink_init),
2133         (gst_basesink_chain_unlocked):
2134         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
2135         (gst_type_find_helper):
2136         * gst/elements/gsttypefindelement.c:
2137         (gst_type_find_element_have_type), (gst_type_find_element_init),
2138         (stop_typefinding), (gst_type_find_element_handle_event),
2139         (find_suggest), (gst_type_find_element_chain),
2140         (gst_type_find_element_checkgetrange),
2141         (gst_type_find_element_getrange), (do_typefind),
2142         (gst_type_find_element_activate):
2143         * gst/gstbuffer.c: (_gst_buffer_sub_free),
2144         (gst_buffer_default_free), (gst_buffer_default_copy),
2145         (gst_buffer_set_caps):
2146         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
2147         (gst_caps_replace):
2148         * gst/gstmessage.c: (gst_message_new),
2149         (gst_message_new_state_changed):
2150         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2151         (gst_pad_set_checkgetrange_function),
2152         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
2153         (gst_pad_set_caps), (gst_pad_check_pull_range),
2154         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
2155         * gst/gstpad.h:
2156         * gst/gsttypefind.c: (gst_type_find_register):
2157         Make gst_caps_replace() work like other _replace() functions.
2158         Use _caps_replace() where possible.
2159         Make sure _message_new() initialises its field.
2160         Add gst_static_pad_template_get_caps()
2161
2162
2163 2005-04-18  Andy Wingo  <wingo@pobox.com>
2164
2165         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
2166         on the peer, not the pad. I think that was a typo. Pass an extra
2167         arg to see if random access is possible. Activate the pads as
2168         PULL_RANGE if possible.
2169
2170         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
2171
2172         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
2173         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
2174         to PROP_....
2175
2176 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2177
2178         * docs/faq/using.xml:
2179           Add note on gstreamer-properties (#154996).
2180
2181 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2182
2183         * docs/random/bbb/optional-properties:
2184           Some analysis on optional properties.
2185
2186 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2187
2188         * docs/gst/tmpl/gstelementfactory.sgml:
2189         * gst/gstelement.h:
2190         * gst/gstelementfactory.c: (gst_element_factory_init),
2191         (gst_element_factory_cleanup), (gst_element_register),
2192         (__gst_element_factory_add_static_pad_template),
2193         (gst_element_factory_get_static_pad_templates),
2194         (gst_element_factory_can_src_caps),
2195         (gst_element_factory_can_sink_caps):
2196         * gst/registries/Makefile.am:
2197         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
2198         (gst_xml_registry_class_init), (gst_xml_registry_init),
2199         (gst_xml_registry_new), (gst_xml_registry_set_property),
2200         (gst_xml_registry_get_property), (get_time), (make_dir),
2201         (gst_xml_registry_get_perms_func),
2202         (plugin_times_older_than_recurse), (plugin_times_older_than),
2203         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
2204         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
2205         (add_to_char_array), (read_string), (read_uint), (read_enum),
2206         (load_pad_template), (load_feature), (load_plugin), (load_paths),
2207         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
2208         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
2209         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
2210         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
2211         (gst_xml_registry_rebuild):
2212         * gst/registries/gstlibxmlregistry.h:
2213         * tools/gst-compprep.c: (main):
2214         * tools/gst-inspect.c: (print_pad_templates_info):
2215         * tools/gst-xmlinspect.c: (print_element_info):
2216           Use libxml2 for registry parsing, use staticpadtemplates in
2217           elementfactories. Makes gst_init() +/- 10x faster.
2218
2219 2005-04-12  Wim Taymans  <wim@fluendo.com>
2220
2221         * gst/base/Makefile.am:
2222         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2223         (gst_basesink_pad_getcaps), (gst_basesink_init),
2224         (gst_basesink_event), (gst_basesink_change_state):
2225         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2226         (gst_basesrc_init), (gst_basesrc_query),
2227         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2228         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2229         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2230         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2231         (gst_basesrc_stop), (gst_basesrc_activate),
2232         (gst_basesrc_change_state):
2233         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2234         (helper_find_suggest), (gst_type_find_helper):
2235         * gst/base/gsttypefindhelper.h:
2236         * gst/elements/Makefile.am:
2237         * gst/elements/gstelements.c:
2238         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2239         (gst_fakesink_get_times), (gst_fakesink_event),
2240         (gst_fakesink_preroll), (gst_fakesink_render):
2241         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2242         (gst_fakesrc_init), (gst_fakesrc_event_handler),
2243         (gst_fakesrc_get_property), (gst_fakesrc_create),
2244         (gst_fakesrc_start), (gst_fakesrc_stop):
2245         * gst/elements/gstfakesrc.h:
2246         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
2247         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2248         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2249         (gst_filesrc_create_read), (gst_filesrc_create),
2250         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
2251         (gst_filesrc_start):
2252         * gst/elements/gsttypefindelement.c:
2253         (gst_type_find_element_have_type), (gst_type_find_element_init),
2254         (start_typefinding), (stop_typefinding), (push_buffer_store),
2255         (gst_type_find_element_handle_event),
2256         (gst_type_find_element_chain),
2257         (gst_type_find_element_checkgetrange),
2258         (gst_type_find_element_getrange), (do_typefind),
2259         (gst_type_find_element_activate),
2260         (gst_type_find_element_change_state):
2261         * gst/elements/gsttypefindelement.h:
2262         * gst/gstpipeline.c: (pipeline_bus_handler):
2263         Added typefind helper.
2264         Small preroll fix in the base sink.
2265         Disable typefind code in basesrc.
2266         Crude port of typefindelement.
2267         Fakesrc cleanups.
2268
2269
2270 2005-04-11  Wim Taymans  <wim@fluendo.com>
2271
2272         * check/gst/gstbus.c: (gstbus_suite):
2273         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2274         * check/gstcheck.h:
2275           Fix up the timeout so that the test does not fail.
2276
2277 2005-04-06  Wim Taymans  <wim@fluendo.com>
2278
2279         * gst/base/README:
2280         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2281         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2282         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2283         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2284         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2285         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2286         (gst_basesrc_stop), (gst_basesrc_activate),
2287         (gst_basesrc_change_state), (basesrc_find_peek),
2288         (basesrc_find_suggest), (gst_basesrc_type_find):
2289         * gst/base/gstbasesrc.h:
2290         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2291         (gst_filesrc_class_init), (gst_filesrc_init),
2292         (gst_filesrc_finalize), (gst_filesrc_set_location),
2293         (gst_filesrc_set_property), (gst_filesrc_get_property),
2294         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2295         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2296         (gst_filesrc_create_read), (gst_filesrc_create),
2297         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2298         * gst/elements/gstfilesrc.h:
2299         * gst/gstelement.c: (gst_element_get_state_func),
2300         (gst_element_lost_state), (gst_element_pads_activate):
2301         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2302         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2303         (gst_pad_pull_range):
2304         * gst/gstpad.h:
2305         More work on the generic source base class, implement seeking,
2306         query.
2307         Make filesrc extend the base source class.
2308         Added gst_pad_set_checkgetrange_function to GstPad.
2309
2310 2005-04-06  Andy Wingo  <wingo@pobox.com>
2311
2312         * pkgconfig/gstreamer-base.pc.in:
2313         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2314
2315         * pkgconfig/Makefile.am:
2316         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2317
2318 2005-04-04  Wim Taymans  <wim@fluendo.com>
2319
2320         * gst/base/Makefile.am:
2321         * gst/base/README:
2322         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2323         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2324         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2325         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2326         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2327         (gst_basesrc_base_init), (gst_basesrc_class_init),
2328         (gst_basesrc_init), (gst_basesrc_get_formats),
2329         (gst_basesrc_get_query_types), (gst_basesrc_query),
2330         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2331         (gst_basesrc_set_property), (gst_basesrc_get_property),
2332         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2333         (gst_basesrc_loop), (gst_basesrc_activate),
2334         (gst_basesrc_change_state):
2335         * gst/base/gstbasesrc.h:
2336         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2337         (gst_fakesrc_class_init), (gst_fakesrc_init),
2338         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2339         (gst_fakesrc_get_property), (gst_fakesrc_create):
2340         * gst/elements/gstfakesrc.h:
2341         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2342         (gst_filesrc_open_file), (gst_filesrc_loop),
2343         (gst_filesrc_activate), (filesrc_find_peek),
2344         (gst_filesrc_type_find):
2345         Made base source class, make fakesrc extend it.
2346         Add comments to basesink class.
2347         Some filesrc cleanup.
2348
2349 2005-03-31  David Schleef  <ds@schleef.org>
2350
2351         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2352         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2353         expected to link against libgstreamer.
2354         * gst/base/Makefile.am: link against libgstreamer
2355         * gst/elements/Makefile.am: same
2356
2357 2005-03-31  Andy Wingo  <wingo@pobox.com>
2358
2359         * tests/instantiate/Makefile.am:
2360         * tests/instantiate/caps.c: Add test to test speed of caps copy
2361         and free.
2362
2363         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2364         GMemChunk to be fair.
2365
2366         * gst/gsttrashstack.h: Remove warning about using the fallback
2367         trash stack implementation, it's still faster than malloc.
2368
2369 2005-03-30  Andy Wingo  <wingo@pobox.com>
2370
2371         * tests/complexity.c: Add a copyright.
2372
2373 2005-03-31  Wim Taymans  <wim@fluendo.com>
2374
2375         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2376         (gst_base_transform_class_init), (gst_base_transform_init),
2377         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2378         (gst_base_transform_get_property),
2379         (gst_base_transform_sink_activate),
2380         (gst_base_transform_src_activate),
2381         (gst_base_transform_change_state):
2382         * gst/base/gstbasetransform.h:
2383         * gst/elements/gstidentity.c: (gst_identity_class_init),
2384         (gst_identity_event), (gst_identity_check_perfect),
2385         (gst_identity_transform), (gst_identity_start),
2386         (gst_identity_stop):
2387         Added start/stop methods to transform base class so subclasses 
2388         don't need to deal with state changes even.
2389
2390 2005-03-31  Wim Taymans  <wim@fluendo.com>
2391
2392         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2393         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2394         * gst/gstevent.h:
2395         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2396         (gst_pad_pull_range):
2397         Added rate to the discont event to prepare for variable speed
2398         and reverse playback.
2399
2400 2005-03-29  David Schleef  <ds@schleef.org>
2401
2402         * configure.ac:
2403         * testsuite/trigger/Makefile.am:
2404         * testsuite/trigger/trigger.c: A little example program to show
2405         how trigger-based elements can work.
2406
2407 2005-03-29  Wim Taymans  <wim@fluendo.com>
2408
2409         * gst/base/Makefile.am:
2410         * gst/base/README:
2411         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2412         (gst_basesink_base_init), (gst_basesink_class_init),
2413         (gst_basesink_pad_getcaps), (gst_basesink_init),
2414         (gst_basesink_activate), (gst_basesink_change_state):
2415         * gst/base/gstbasesink.h:
2416         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2417         (gst_base_transform_base_init), (gst_base_transform_finalize),
2418         (gst_base_transform_class_init), (gst_base_transform_init),
2419         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2420         (gst_base_transform_event), (gst_base_transform_getrange),
2421         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2422         (gst_base_transform_set_property),
2423         (gst_base_transform_get_property),
2424         (gst_base_transform_sink_activate),
2425         (gst_base_transform_src_activate),
2426         (gst_base_transform_change_state):
2427         * gst/base/gstbasetransform.h:
2428         * gst/elements/gstidentity.c: (gst_identity_finalize),
2429         (gst_identity_class_init), (gst_identity_init),
2430         (gst_identity_event), (gst_identity_check_perfect),
2431         (gst_identity_transform), (gst_identity_set_property),
2432         (gst_identity_get_property), (gst_identity_change_state):
2433         * gst/elements/gstidentity.h:
2434         * gst/gstelement.c: (gst_element_get_state_func),
2435         (gst_element_lost_state), (gst_element_pads_activate):
2436         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2437         (gst_pad_check_pull_range), (gst_pad_pull_range):
2438         * gst/gstpad.h:
2439         Simplify pad activation.
2440         Added function to check if pull_range can be performed.
2441         Error out when pulling inactive or flushing pads.
2442         Removed const from refcounted types as it does not make sense.
2443         Simplify pad templates in basesink
2444         Added base class for simple 1-to-1 transforms.
2445         Make identity subclass the base transform.
2446
2447 2005-03-29  Andy Wingo  <wingo@pobox.com>
2448
2449         * docs/libs/gstreamer-libs-overrides.txt: 
2450         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2451         really don't understand what's going on, but like whatever. I want
2452         green buildbot!
2453
2454         * docs/gst/Makefile.am:
2455         * docs/libs/Makefile.am: Dist the overrides files.
2456
2457         * check/Makefile.am (clean-local): Remove .libs directories.
2458
2459         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2460         elements to EXTRA_DIST, so po/ files are happy.
2461
2462         * po/POTFILES.in: Er, remove it here.
2463
2464         * po/POTFILES: Remove gstspider.c.
2465
2466         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2467
2468         * docs/libs/gstreamer-libs-docs.sgml: 
2469         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2470         bytestream.
2471
2472         * tests/complexity.c (main): Set the length of the preroll queue
2473         on the sinks to prevent a lockup.
2474
2475         * libs/gst/dataprotocol/Makefile.am: 
2476         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2477         the same as the one in check/gst-libs/gdp.c.
2478
2479         * po/, docs/gst/: Commit automatic changes to docs and po files.
2480
2481         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2482         the versioned libgstbase.
2483
2484         * check/Makefile.am: Depend on an unversioned gst-register, seems
2485         to make autoconf happier.
2486
2487         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2488
2489 2005-03-28  Wim Taymans  <wim@fluendo.com>
2490
2491         * configure.ac:
2492         * docs/design/part-gstelement.txt:
2493         * docs/design/part-negotiation.txt:
2494         * docs/design/part-preroll.txt:
2495         * docs/design/part-scheduling.txt:
2496         * docs/design/part-states.txt:
2497         * gst/Makefile.am:
2498         * gst/base/Makefile.am:
2499         * gst/base/README:
2500         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2501         (gst_basesink_base_init), (gst_basesink_class_init),
2502         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2503         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2504         (gst_basesink_set_pad_functions),
2505         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2506         (gst_basesink_set_property), (gst_basesink_get_property),
2507         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2508         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2509         (gst_basesink_preroll_queue_push),
2510         (gst_basesink_preroll_queue_empty),
2511         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2512         (gst_basesink_event), (gst_basesink_get_times),
2513         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2514         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2515         (gst_basesink_loop), (gst_basesink_activate),
2516         (gst_basesink_change_state):
2517         * gst/base/gstbasesink.h:
2518         * gst/elements/Makefile.am:
2519         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2520         (gst_fakesink_class_init), (gst_fakesink_init),
2521         (gst_fakesink_set_property), (gst_fakesink_get_property),
2522         (gst_fakesink_get_times), (gst_fakesink_event),
2523         (gst_fakesink_preroll), (gst_fakesink_render),
2524         (gst_fakesink_change_state):
2525         * gst/elements/gstfakesink.h:
2526         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2527         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2528         * gst/gstelement.c: (gst_element_add_pad),
2529         (gst_element_get_state_func), (gst_element_abort_state),
2530         (gst_element_commit_state), (gst_element_lost_state),
2531         (gst_element_set_state), (gst_element_pads_activate):
2532         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2533         * gst/gstpipeline.c: (gst_pipeline_send_event),
2534         (gst_pipeline_change_state):
2535         Added state change code.
2536         Added/updated docs.
2537         Added sink base class, make fakesink extend the base class.
2538         Small cleanups in GstPipeline.
2539
2540 2005-03-26  David Schleef  <ds@schleef.org>
2541
2542         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2543         is broken and should be implemented in a different library.
2544         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2545         * gst/gst.h: remove gstcpu.h
2546         * gst/gstcpu.c: remove
2547         * gst/gstcpu.h: remove
2548         * gst/Makefile.am.future: Remove this file.  It's ancient.
2549
2550 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2551
2552         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2553         (gst_bin_send_event):
2554           Add default event/set_manager handlers. The set_manager handler
2555           takes care that the manager is distributed over kids that were
2556           already in the bin before the manager was set. The event handler
2557           is a utility virtual function that sends the event over all sinks,
2558           so that gst_element_send_event (bin, event); has the expected
2559           behaviour.
2560         * gst/gstpad.c: (gst_pad_event_default):
2561           Re-install default event handling for discontinuities, so that
2562           seeking works without requiring hacks in applications or extra
2563           code in sinks.
2564         * gst/gstpipeline.c: (gst_pipeline_class_init),
2565         (gst_pipeline_send_event):
2566           Half hack, half utility: set a pipeline to PAUSED for seek events,
2567           since that is the only way we can guarantee a/v sync. Means that
2568           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2569           and it "just works".
2570
2571 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2572
2573         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2574           Lock/unlock mismatch.
2575
2576 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2577
2578         * docs/faq/gst-uninstalled:
2579           add gst-plugins-base
2580         * docs/gst/Makefile.am:
2581           don't error out until docs are fixed
2582         * docs/gst/gstreamer.types:
2583           remove thread
2584
2585 2005-03-22  Wim Taymans  <wim@fluendo.com>
2586
2587         * check/Makefile.am:
2588         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2589         * gst/gststructure.c: (gst_structure_set_valist),
2590         (gst_structure_copy_conditional):
2591         Activated more tests.
2592         Added message test.
2593         Added G_TYPE_POINTER to GstStructure.
2594         
2595
2596 2005-03-22  Wim Taymans  <wim@fluendo.com>
2597
2598         * docs/design/part-TODO.txt:
2599         * docs/design/part-events.txt:
2600         * docs/design/part-gstbin.txt:
2601         * docs/design/part-gstbus.txt:
2602         * docs/design/part-gstpipeline.txt:
2603         * docs/design/part-messages.txt:
2604         * gst/gstbus.c:
2605         * gst/gstmessage.c:
2606         Docs updates
2607
2608 2005-03-21  Wim Taymans  <wim@fluendo.com>
2609
2610         * gst/gstbus.c: (gst_bus_post):
2611         Fix copy-and-paste error.
2612
2613 2005-03-21  Wim Taymans  <wim@fluendo.com>
2614
2615         * check/Makefile.am:
2616         * gst/Makefile.am:
2617         * gst/elements/Makefile.am:
2618         * gst/elements/gstelements.c:
2619         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2620         (gst_fakesink_event), (gst_fakesink_chain):
2621         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2622         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2623         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2624         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2625         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2626         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2627         (gst_fakesrc_loop), (gst_fakesrc_activate),
2628         (gst_fakesrc_change_state):
2629         * gst/elements/gstfakesrc.h:
2630         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2631         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2632         (gst_filesrc_open_file), (gst_filesrc_loop),
2633         (gst_filesrc_activate), (gst_filesrc_change_state),
2634         (filesrc_find_peek), (filesrc_find_suggest),
2635         (gst_filesrc_type_find):
2636         * gst/elements/gstidentity.c: (gst_identity_finalize),
2637         (gst_identity_class_init), (gst_identity_init),
2638         (gst_identity_proxy_getcaps), (identity_queue_push),
2639         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2640         (gst_identity_getrange), (gst_identity_chain),
2641         (gst_identity_sink_loop), (gst_identity_src_loop),
2642         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2643         (gst_identity_set_property), (gst_identity_get_property),
2644         (gst_identity_change_state):
2645         * gst/elements/gstidentity.h:
2646         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2647         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2648         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2649         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2650         (gst_tee_sink_activate):
2651         * gst/elements/gsttee.h:
2652         * gst/gst.c: (gst_register_core_elements), (init_post):
2653         * gst/gst.h:
2654         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2655         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2656         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2657         (gst_bin_change_state):
2658         * gst/gstbin.h:
2659         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2660         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2661         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2662         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2663         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2664         (bus_watch_callback), (bus_watch_destroy),
2665         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2666         (poll_timeout), (gst_bus_poll):
2667         * gst/gstbus.h:
2668         * gst/gstcaps.h:
2669         * gst/gstdata.h:
2670         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2671         (gst_element_post_message), (gst_element_message_full),
2672         (gst_element_get_state_func), (gst_element_get_state),
2673         (gst_element_abort_state), (gst_element_commit_state),
2674         (gst_element_lost_state), (gst_element_set_state),
2675         (gst_element_pads_activate), (gst_element_change_state),
2676         (gst_element_dispose), (gst_element_set_manager_func),
2677         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2678         (gst_element_set_manager), (gst_element_get_manager),
2679         (gst_element_set_bus), (gst_element_get_bus),
2680         (gst_element_set_scheduler), (gst_element_get_scheduler):
2681         * gst/gstelement.h:
2682         * gst/gstevent.c: (gst_event_new_segment_seek),
2683         (gst_event_new_flush):
2684         * gst/gstevent.h:
2685         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2686         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2687         (gst_message_new_eos), (gst_message_new_error),
2688         (gst_message_new_warning), (gst_message_new_tag),
2689         (gst_message_new_state_changed), (gst_message_new_application),
2690         (gst_message_get_structure), (gst_message_parse_tag),
2691         (gst_message_parse_state_changed), (gst_message_parse_error),
2692         (gst_message_parse_warning):
2693         * gst/gstmessage.h:
2694         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2695         (gst_real_pad_set_property), (gst_pad_set_active),
2696         (gst_pad_is_active), (gst_pad_set_blocked_async),
2697         (gst_pad_set_blocked), (gst_pad_is_blocked),
2698         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2699         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2700         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2701         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2702         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2703         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2704         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2705         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2706         (gst_pad_set_caps), (gst_pad_configure_sink),
2707         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2708         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2709         (gst_real_pad_dispose), (gst_real_pad_finalize),
2710         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2711         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2712         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2713         * gst/gstpad.h:
2714         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2715         (pipeline_bus_handler), (gst_pipeline_change_state),
2716         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2717         * gst/gstpipeline.h:
2718         * gst/gstprobe.h:
2719         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2720         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2721         (gst_queue_link_src), (gst_queue_bufferalloc),
2722         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2723         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2724         (gst_queue_loop), (gst_queue_handle_src_event),
2725         (gst_queue_handle_src_query), (gst_queue_src_activate),
2726         (gst_queue_change_state):
2727         * gst/gstqueue.h:
2728         * gst/gstscheduler.c: (gst_scheduler_init),
2729         (gst_scheduler_dispose), (gst_scheduler_create_task),
2730         (gst_scheduler_factory_create):
2731         * gst/gstscheduler.h:
2732         * gst/gststructure.c: (gst_structure_get_type),
2733         (gst_structure_copy_conditional):
2734         * gst/gststructure.h:
2735         * gst/gsttaginterface.h:
2736         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2737         (gst_task_init), (gst_task_dispose), (gst_task_create),
2738         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2739         (gst_task_pause):
2740         * gst/gsttask.h:
2741         * gst/gstthread.c:
2742         * gst/gstthread.h:
2743         * gst/gsttypes.h:
2744         * gst/schedulers/Makefile.am:
2745         * gst/schedulers/cothreads_compat.h:
2746         * gst/schedulers/entryscheduler.c:
2747         * gst/schedulers/faircothreads.c:
2748         * gst/schedulers/faircothreads.h:
2749         * gst/schedulers/fairscheduler.c:
2750         * gst/schedulers/gstbasicscheduler.c:
2751         * gst/schedulers/gstoptimalscheduler.c:
2752         * gst/schedulers/gthread-cothreads.h:
2753         * gst/schedulers/threadscheduler.c:
2754         (gst_thread_scheduler_task_get_type),
2755         (gst_thread_scheduler_task_class_init),
2756         (gst_thread_scheduler_task_init),
2757         (gst_thread_scheduler_task_start),
2758         (gst_thread_scheduler_task_stop),
2759         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2760         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2761         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2762         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2763         (plugin_init):
2764         * libs/gst/Makefile.am:
2765         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2766         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2767         (gst_file_pad_parent_set):
2768         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2769         (gst_dp_event_from_packet):
2770         * tests/complexity.c: (main):
2771         * tests/mass_elements.c: (main):
2772         * testsuite/states/locked.c: (message_received), (main):
2773         * testsuite/states/parent.c: (main):
2774         * tools/gst-inspect.c: (print_element_flag_info),
2775         (print_implementation_info), (print_pad_info):
2776         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2777         (main):
2778         * tools/gst-md5sum.c: (event_loop), (main):
2779         * tools/gst-typefind.c: (main):
2780         * tools/gst-xmlinspect.c: (print_element_info):
2781         Next big merge.
2782         Added GstBus for mainloop integration.
2783         Added GstMessage for sending notifications on the bus.
2784         Added GstTask as an abstraction for pipeline entry points.
2785         Removed GstThread.
2786         Removed Schedulers.
2787         Simplified GstQueue for multithreaded core.
2788         Made _link threadsafe, removed old capsnego.
2789         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2790         Added pad blocking functions.
2791         Reworked scheduling functions in GstPad to prepare for
2792         scheduling updates soon.
2793         Moved events out of data stream.
2794         Simplified GstEvent types.
2795         Added return values to push/pull.
2796         Removed clocking from GstElement.
2797         Added prototypes for state change function for next merge.
2798         Removed iterate from bins and state change management.
2799         Fixed some elements, disabled others for now.
2800         Fixed -inspect and -launch.
2801         Added check for GstBus.
2802
2803 2005-03-10  Wim Taymans  <wim@fluendo.com>
2804
2805         * docs/design/part-MT-refcounting.txt:
2806         * docs/design/part-clocks.txt:
2807         * docs/design/part-gstelement.txt:
2808         * docs/design/part-gstobject.txt:
2809         * docs/design/part-standards.txt:
2810         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2811         (gst_bin_remove_func), (gst_bin_remove):
2812         * gst/gstbin.h:
2813         * gst/gstbuffer.c:
2814         * gst/gstcaps.h:
2815         * testsuite/clock/clock1.c: (main):
2816         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2817         (main):
2818         * testsuite/dlopen/loadgst.c: (do_test):
2819         * testsuite/refcounting/bin.c: (add_remove_test1),
2820         (add_remove_test2), (main):
2821         * testsuite/refcounting/element.c: (main):
2822         * testsuite/refcounting/element_pad.c: (main):
2823         * testsuite/refcounting/pad.c: (main):
2824         * tools/gst-launch.c: (sigint_handler_sighandler):
2825         * tools/gst-typefind.c: (main):
2826         Doc updates.
2827         Added doc about clock.
2828         removed gst_bin_iterate_recurse_up(), marked methods
2829         for removal.
2830         Fix more testsuites.
2831
2832 2005-03-09  Wim Taymans  <wim@fluendo.com>
2833
2834         * gst/gstpad.c: (gst_pad_get_direction),
2835         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2836         (gst_pad_collect_valist):
2837         * testsuite/bins/interface.c: (main):
2838         * testsuite/caps/audioscale.c: (test_caps):
2839         * testsuite/caps/caps.c: (test1), (test2), (test3):
2840         * testsuite/caps/deserialize.c: (main):
2841         * testsuite/caps/enumcaps.c: (main):
2842         * testsuite/caps/filtercaps.c: (main):
2843         * testsuite/caps/intersect2.c: (main):
2844         * testsuite/caps/random.c: (main):
2845         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2846         * testsuite/caps/sets.c: (check_caps):
2847         * testsuite/caps/simplify.c: (check_caps), (main):
2848         * testsuite/caps/subtract.c: (check_caps):
2849         Fix _pad_get_direction wrt ghostpads.
2850         Fix caps testsuite.
2851
2852 2005-03-09  Wim Taymans  <wim@fluendo.com>
2853
2854         * check/Makefile.am:
2855         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2856         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2857         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2858         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2859         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2860         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2861         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2862         (bin_element_is_sink), (gst_bin_iterate_sinks),
2863         (gst_bin_iterate_all_by_interface):
2864         * gst/gstbin.h:
2865         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2866         (gst_element_change_state), (gst_element_dispose),
2867         (gst_element_finalize), (gst_element_set_loop_function):
2868         * gst/gstelement.h:
2869         * gst/gstiterator.c: (find_custom_fold_func):
2870         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2871         (gst_pad_collectv), (gst_pad_collect_valist),
2872         (gst_pad_template_new):
2873         * gst/gstpipeline.c: (gst_pipeline_class_init),
2874         (gst_pipeline_dispose), (gst_pipeline_set_property),
2875         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2876         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2877         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2878         * gst/gstutils.h:
2879         * gst/schedulers/entryscheduler.c:
2880         * gst/schedulers/gstbasicscheduler.c:
2881         (gst_basic_scheduler_cothreaded_chain),
2882         (gst_basic_scheduler_chain_add_element):
2883         * testsuite/bins/interface.c: (main):
2884         Added GstBin test.
2885         Added GstSystemClock test.
2886         Implemented clock distribution code in GstBin.
2887         Implemented iterate sinks method for future use.
2888         Rearranged gstelement.h
2889         Fix GstIterator comparison bug.
2890         Moved some code to GstPipeline, mostly clocking related.
2891
2892 2005-03-09  Wim Taymans  <wim@fluendo.com>
2893
2894         * configure.ac:
2895         * gst/gst_private.h:
2896         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2897         (gst_bin_remove_func), (gst_bin_remove),
2898         (gst_bin_get_by_name_recurse_up):
2899         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2900         (gst_clock_id_compare_func), (gst_clock_id_wait),
2901         (gst_clock_id_wait_async), (gst_clock_init),
2902         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2903         * gst/gstelement.h:
2904         * gst/gstinfo.c: (_gst_debug_init):
2905         * gst/gstobject.h:
2906         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2907         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2908         * gst/gstpad.h:
2909         Bump version number, we're now 0.9.0
2910         Add future debugging category.
2911         Fix NULL _unref() in _get_by_name_recurse_up
2912         Rearrange gstpad.h.
2913         Update some docs.
2914
2915 2005-03-08  Wim Taymans  <wim@fluendo.com>
2916
2917         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2918         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2919         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2920         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2921         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2922         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2923         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2924         * gst/elements/gstidentity.c: (gst_identity_class_init):
2925         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2926         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2927         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2928         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2929         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2930         (gst_tee_link):
2931         * gst/gstelement.c: (gst_element_class_init),
2932         (gst_element_base_class_init), (gst_element_init),
2933         (gst_element_get_random_pad), (gst_element_wait_state_change),
2934         (gst_element_change_state), (gst_element_dispose),
2935         (gst_element_finalize), (gst_element_set_loop_function):
2936         * gst/gstelement.h:
2937         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2938         * gst/gstthread.c: (gst_thread_class_init),
2939         (gst_thread_release_children_locks), (gst_thread_change_state):
2940         * gst/schedulers/gstbasicscheduler.c:
2941         (gst_basic_scheduler_loopfunc_wrapper),
2942         (gst_basic_scheduler_chain_wrapper),
2943         (gst_basic_scheduler_src_wrapper),
2944         (gst_basic_scheduler_remove_element):
2945         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2946         Remove threadsafe properties. Fix elements because GObject
2947         complains when installing a property before declaring a
2948         set/get_property handler.
2949         Rearrange gstelement.h file, use STATE macros for state locks.
2950         Free mutexes in the finalize method instead of dispose.
2951
2952 2005-03-08  Wim Taymans  <wim@fluendo.com>
2953
2954         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2955         * gst/gstthread.c: (gst_thread_release_children_locks):
2956         Added parentage check.
2957         Fix build og GstThread again.
2958
2959 2005-03-08  Wim Taymans  <wim@fluendo.com>
2960
2961         * docs/design/part-MT-refcounting.txt:
2962         * docs/design/part-conventions.txt:
2963         * docs/design/part-gstobject.txt:
2964         * docs/design/part-relations.txt:
2965         * docs/design/part-standards.txt:
2966         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2967         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
2968         (gst_bin_get_by_name), (gst_bin_get_by_interface),
2969         (gst_bin_iterate_all_by_interface):
2970         * gst/gstbuffer.h:
2971         * gst/gstclock.h:
2972         * gst/gstelement.c: (gst_element_class_init),
2973         (gst_element_change_state), (gst_element_set_loop_function):
2974         * gst/gstelement.h:
2975         * gst/gstiterator.c:
2976         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
2977         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
2978         (gst_object_dispatch_properties_changed), (gst_object_set_name),
2979         (gst_object_set_parent), (gst_object_unparent),
2980         (gst_object_check_uniqueness):
2981         * gst/gstobject.h:
2982         Docs updates, clean up some headers.
2983
2984 2005-03-07  Wim Taymans  <wim@fluendo.com>
2985
2986         * check/.cvsignore:
2987         * check/Makefile.am:
2988         * check/gst-libs/.cvsignore:
2989         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
2990         * check/gst/.cvsignore:
2991         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
2992         (START_TEST), (gstbus_suite), (main):
2993         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
2994         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
2995         (gst_data_suite), (main):
2996         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
2997         (add_fold_func), (gstiterator_suite), (main):
2998         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
2999         (thread_name_object), (thread_name_object_default),
3000         (gst_object_name_compare), (gst_object_suite), (main):
3001         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
3002         (gst_pad_suite), (main):
3003         * check/gstcheck.c: (gst_check_log_message_func),
3004         (gst_check_log_critical_func), (gst_check_init):
3005         * check/gstcheck.h:
3006         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3007         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
3008         Added checks.
3009
3010 2005-03-07  Wim Taymans  <wim@fluendo.com>
3011
3012         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
3013         (gst_list_iterator_next), (gst_list_iterator_resync),
3014         (gst_list_iterator_free), (gst_iterator_new_list),
3015         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
3016         (gst_iterator_free), (gst_iterator_push), (filter_next),
3017         (filter_resync), (filter_uninit), (filter_free),
3018         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
3019         (gst_iterator_foreach), (find_custom_fold_func),
3020         (gst_iterator_find_custom):
3021         * gst/gstiterator.h:
3022         Added missing files.
3023
3024 2005-03-07  Wim Taymans  <wim@fluendo.com>
3025
3026         * Makefile.am:
3027         * configure.ac:
3028         * docs/design/part-MT-refcounting.txt:
3029         * docs/design/part-conventions.txt:
3030         * docs/design/part-gstobject.txt:
3031         * docs/design/part-relations.txt:
3032         * examples/mixer/mixer.c: (main):
3033         * examples/thread/thread.c: (eos), (main):
3034         * gst/Makefile.am:
3035         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3036         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3037         (gst_spider_plug_from_srcpad):
3038         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3039         (gst_spider_identity_change_state),
3040         (gst_spider_identity_sink_loop_type_finding):
3041         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3042         * gst/elements/gstidentity.c: (gst_identity_init):
3043         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3044         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3045         * gst/elements/gsttypefindelement.c: (free_entry):
3046         * gst/gst.c:
3047         * gst/gst.h:
3048         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3049         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3050         (gst_bin_set_index), (gst_bin_set_element_sched),
3051         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3052         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3053         (gst_bin_iterate_elements), (iterate_child_recurse),
3054         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3055         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3056         (compare_interface), (gst_bin_get_by_interface),
3057         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3058         * gst/gstbin.h:
3059         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3060         (gst_buffer_default_free), (gst_buffer_default_copy),
3061         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3062         (gst_buffer_create_sub):
3063         * gst/gstbuffer.h:
3064         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3065         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3066         (gst_caps_unref), (gst_static_caps_get),
3067         (gst_caps_remove_and_get_structure), (gst_caps_append),
3068         (gst_caps_append_structure), (gst_caps_remove_structure),
3069         (gst_caps_copy_nth), (gst_caps_set_simple),
3070         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3071         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3072         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3073         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3074         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3075         (gst_caps_structure_figure_out_union),
3076         (gst_caps_switch_structures), (gst_caps_do_simplify),
3077         (gst_caps_replace), (gst_caps_from_string),
3078         (gst_caps_copy_conditional):
3079         * gst/gstcaps.h:
3080         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3081         (_gst_clock_id_free), (gst_clock_id_unref),
3082         (gst_clock_id_compare_func), (gst_clock_id_wait),
3083         (gst_clock_id_wait_async), (gst_clock_class_init),
3084         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3085         (gst_clock_get_time), (gst_clock_set_time_adjust),
3086         (gst_clock_set_property), (gst_clock_get_property):
3087         * gst/gstclock.h:
3088         * gst/gstcompat.h:
3089         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3090         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3091         * gst/gstdata.h:
3092         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3093         (gst_element_requires_clock), (gst_element_provides_clock),
3094         (gst_element_set_clock), (gst_element_clock_wait),
3095         (gst_element_wait), (gst_element_set_time_delay),
3096         (gst_element_is_indexable), (gst_element_add_pad),
3097         (gst_element_add_ghost_pad), (gst_element_remove_pad),
3098         (pad_compare_name), (gst_element_get_static_pad),
3099         (gst_element_request_pad), (gst_element_get_request_pad),
3100         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
3101         (gst_element_class_get_pad_template_list),
3102         (gst_element_class_get_pad_template), (gst_element_error_func),
3103         (gst_element_get_random_pad), (gst_element_get_event_masks),
3104         (gst_element_send_event), (gst_element_seek),
3105         (gst_element_get_query_types), (gst_element_query),
3106         (gst_element_get_formats), (gst_element_convert),
3107         (gst_element_is_locked_state), (gst_element_set_locked_state),
3108         (gst_element_sync_state_with_parent), (gst_element_change_state),
3109         (gst_element_finalize), (gst_element_yield),
3110         (gst_element_interrupt), (gst_element_set_scheduler),
3111         (gst_element_get_scheduler), (gst_element_set_loop_function):
3112         * gst/gstelement.h:
3113         * gst/gstevent.h:
3114         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
3115         (gst_format_get_by_nick), (gst_format_get_details),
3116         (gst_format_iterate_definitions):
3117         * gst/gstformat.h:
3118         * gst/gstindex.c: (gst_index_gtype_resolver):
3119         * gst/gstinfo.c:
3120         * gst/gstinfo.h:
3121         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
3122         (gst_mem_chunk_free):
3123         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3124         (gst_object_ref), (gst_object_unref), (gst_object_sink),
3125         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
3126         (gst_object_dispatch_properties_changed),
3127         (gst_object_set_name_default), (gst_object_set_name),
3128         (gst_object_get_name), (gst_object_set_name_prefix),
3129         (gst_object_get_name_prefix), (gst_object_set_parent),
3130         (gst_object_get_parent), (gst_object_unparent),
3131         (gst_object_check_uniqueness), (gst_object_save_thyself),
3132         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
3133         (gst_object_set_property), (gst_object_get_property),
3134         (gst_object_get_path_string):
3135         * gst/gstobject.h:
3136         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3137         (gst_real_pad_init), (gst_real_pad_get_property),
3138         (gst_pad_custom_new), (gst_pad_get_direction),
3139         (gst_pad_set_active), (gst_pad_is_active),
3140         (gst_pad_set_event_function), (gst_pad_is_linked),
3141         (gst_pad_link_free), (gst_pad_link_intersect),
3142         (gst_pad_link_fixate), (gst_pad_set_caps),
3143         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
3144         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
3145         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
3146         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
3147         (gst_pad_get_caps), (gst_pad_peer_get_caps),
3148         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
3149         (gst_pad_realize), (gst_pad_get_allowed_caps),
3150         (gst_real_pad_dispose), (gst_real_pad_finalize),
3151         (gst_pad_collectv), (gst_pad_collect_valist),
3152         (gst_pad_template_dispose), (gst_pad_template_new),
3153         (gst_pad_get_internal_links):
3154         * gst/gstpad.h:
3155         * gst/gstpipeline.c: (gst_pipeline_dispose),
3156         (gst_pipeline_change_state):
3157         * gst/gstpipeline.h:
3158         * gst/gstplugin.c:
3159         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
3160         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
3161         * gst/gstpluginfeature.h:
3162         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3163         * gst/gstquery.c: (_gst_query_type_initialize),
3164         (gst_query_type_register), (gst_query_type_get_by_nick),
3165         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
3166         * gst/gstquery.h:
3167         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
3168         * gst/gstscheduler.c: (gst_scheduler_add_element),
3169         (gst_scheduler_factory_create):
3170         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3171         (gst_structure_free), (gst_structure_set_name),
3172         (gst_structure_id_set_value), (gst_structure_set_value),
3173         (gst_structure_set_valist), (gst_structure_remove_field),
3174         (gst_structure_remove_fields),
3175         (gst_structure_remove_fields_valist),
3176         (gst_structure_remove_all_fields), (gst_structure_foreach),
3177         (gst_structure_map_in_place),
3178         (gst_caps_structure_fixate_field_nearest_int),
3179         (gst_caps_structure_fixate_field_nearest_double):
3180         * gst/gststructure.h:
3181         * gst/gstsystemclock.c: (gst_system_clock_class_init),
3182         (gst_system_clock_init), (gst_system_clock_dispose),
3183         (gst_system_clock_async_thread),
3184         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
3185         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
3186         * gst/gstsystemclock.h:
3187         * gst/gsttag.c: (gst_tag_list_add_value_internal),
3188         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
3189         * gst/gsttaginterface.c:
3190         * gst/gstthread.c: (gst_thread_dispose),
3191         (gst_thread_release_children_locks), (gst_thread_change_state),
3192         (gst_thread_main_loop):
3193         * gst/gsttrashstack.h:
3194         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
3195         * gst/gsttypes.h:
3196         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3197         (gst_element_request_pad), (gst_element_get_pad_from_template),
3198         (gst_element_request_compatible_pad),
3199         (gst_element_get_compatible_pad_filtered),
3200         (gst_element_get_compatible_pad), (gst_element_state_get_name),
3201         (gst_element_link_pads_filtered), (gst_element_link_filtered),
3202         (gst_element_link_many), (gst_element_link),
3203         (gst_element_link_pads), (gst_element_unlink_pads),
3204         (gst_element_unlink_many), (gst_element_unlink),
3205         (gst_pad_can_link_filtered), (gst_pad_can_link),
3206         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
3207         (gst_object_default_error), (gst_bin_add_many),
3208         (gst_bin_remove_many), (gst_element_populate_std_props),
3209         (gst_element_class_install_std_props), (gst_buffer_merge),
3210         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
3211         (link_fold_func), (gst_pad_proxy_setcaps):
3212         * gst/gstutils.h:
3213         * gst/gstvalue.c: (gst_value_deserialize_string):
3214         * gst/parse/grammar.y:
3215         * gst/schedulers/gstbasicscheduler.c:
3216         (gst_basic_scheduler_cothreaded_chain),
3217         (gst_basic_scheduler_chain_recursive_add),
3218         (gst_basic_scheduler_pad_link):
3219         * gst/schedulers/gstoptimalscheduler.c:
3220         (get_group_schedule_function),
3221         (gst_opt_scheduler_state_transition),
3222         (gst_opt_scheduler_add_element), (element_get_reachables_func):
3223         * libs/gst/bytestream/bytestream.c:
3224         * libs/gst/dataprotocol/dataprotocol.c:
3225         (gst_dp_header_from_buffer):
3226         * po/nb.po:
3227         * po/ru.po:
3228         * tests/threadstate/threadstate2.c: (eos):
3229         * tools/gst-compprep.c: (main):
3230         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
3231         (print_pad_info), (print_children_info):
3232         * tools/gst-launch.c: (idle_func), (main):
3233         * tools/gst-md5sum.c: (idle_func), (main):
3234         * tools/gst-xmlinspect.c: (print_element_info):
3235         First THREADED backport attempt, focusing on adding locks and
3236         making sure the API is threadsafe. Needs more work. More docs
3237         follow this week.
3238
3239 2005-02-24  Andy Wingo  <wingo@pobox.com>
3240
3241         * tests/bench-complexity.scm:
3242         * tests/complexity.gnuplot: New files, good for running complexity
3243         benchmarks.
3244
3245         * tests/Makefile.am:
3246         * tests/complexity.c: New test, sets up N elements, at each level
3247         teeing into M streams per element. Eeeenteresting.
3248
3249         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
3250         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
3251         running bench-mass_elements.scm.
3252
3253         * tests/bench-mass_elements.scm: New script, runs mass_elements
3254         for various numbers of identities, outputting the results to a
3255         file. Requires guile 1.6. Just for testing.
3256
3257 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3258
3259         * gst/schedulers/fairscheduler.c:
3260           compile with debug disabled
3261
3262 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3263
3264         * configure.ac:
3265           hunting season on 0.9 is now OPEN
3266
3267 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
3268
3269         * docs/libs/tmpl/gstcontrol.sgml:
3270         * docs/libs/tmpl/gstdparam.sgml:
3271         * docs/libs/tmpl/gstdplinint.sgml:
3272         * docs/libs/tmpl/gstdpman.sgml:
3273         * docs/libs/tmpl/gstdpsmooth.sgml:
3274         * docs/libs/tmpl/gstunitconvert.sgml:
3275           more docs for the state of dparams
3276
3277 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3278
3279         * gst/gstelementfactory.c: (gst_element_factory_create):
3280         * gst/gstobject.c: (gst_object_init),
3281         (gst_object_set_name_default), (gst_object_set_name):
3282           name objects by default, not in gst_element_factory_create. Allows
3283           using elements created with g_object_new. (fixes #167283)
3284
3285 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3286
3287         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3288           make the time that debugging functions print relative to when
3289           gst_init was called
3290
3291 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3292
3293         * gst/gsttaginterface.c:
3294           Fix inline docs: tag setter vararg functions are NULL-terminated,
3295           GST_TAG_INVALID doesn't exist any more.
3296
3297 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3298
3299         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3300         Allocate the 1 byte more memory that was forgotten!!!!!
3301         fixes memory corruption on 64bit platforms
3302
3303 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3304
3305         * docs/pwg/building-pads.xml:
3306         * docs/pwg/intro-basics.xml:
3307           fixed a few typos, relabeled introductionary list of types
3308         * docs/random/ensonic/dparams.txt:
3309           more notes abut dparam changes
3310         * libs/gst/control/dparam.c: (gst_dparam_attach):
3311         * libs/gst/control/dparammanager.c:
3312         * libs/gst/control/dparammanager.h:
3313           - many comments and notes on dparam implementation
3314           - new dparams are were not initialized to the default value
3315             from param spec
3316
3317 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3318
3319         submitted by: Peter Astakhov
3320
3321         * po/LINGUAS:
3322         * po/ru.po:
3323           adding Russian translation
3324
3325 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3326
3327         * configure.ac:
3328         * docs/gst/Makefile.am:
3329         * docs/libs/Makefile.am:
3330           make sure popt is added to gtk-doc flags.  Fixes #147782.
3331
3332 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3333
3334         * docs/faq/using.xml:
3335           Fix typo in FAQ (artssink => artsdsink)
3336
3337 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3338
3339         * tools/gst-launch.1.in:
3340           Fix typo (#166699).
3341
3342 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3343
3344         * docs/faq/using.xml:
3345           Add -v argument to fakesrc/fakesink gst-launch line,
3346           so that the promised output will actually show up.
3347
3348 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3349
3350         * gst/gstthread.c: (gst_thread_change_state):
3351           Implement state-change error handling (#166073).
3352
3353 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3354
3355         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3356           Release interrupt after handling (#166250).
3357
3358 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3359
3360         * configure.ac:
3361           back to HEAD
3362
3363 === release 0.8.9 ===
3364
3365 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3366
3367         * NEWS:
3368         * RELEASE:
3369         * configure.ac:
3370           releasing 0.8.9, "Like Eating Glass"
3371
3372 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3373
3374         submitted by: Clytie Siddall
3375
3376         * po/vi.po: Added Vietnamese translation
3377
3378 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3379
3380         patch by: Tim Philipp-Müller
3381
3382         * configure.ac:
3383         * gst/gstpad.c:
3384           unref data when probe function returns FALSE.  Fixes #166362
3385
3386 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3387
3388         * gst/gst.c: (gst_init_get_popt_table):
3389           Fix typo (#166269).
3390
3391 2005-02-04  Andy Wingo  <wingo@pobox.com>
3392
3393         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3394         the debugging on whether the caps are compatible.
3395
3396 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3397
3398         * docs/manual/basics-elements.xml:
3399           Fix two typos.
3400
3401 2005-02-02  Wim Taymans  <wim@fluendo.com>
3402
3403         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3404         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3405         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3406         Remove some FIXMEs after analysing and commenting why they
3407         are not issues.
3408
3409 2005-02-02  Wim Taymans  <wim@fluendo.com>
3410
3411         * gst/schedulers/gstoptimalscheduler.c:
3412         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3413         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3414         (get_invalid_call), (chain_invalid_call),
3415         (get_group_schedule_function), (loop_group_schedule_function),
3416         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3417         (gst_opt_scheduler_state_transition),
3418         (gst_opt_scheduler_add_element),
3419         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3420         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3421         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3422         (gst_opt_scheduler_show):
3423         Added lock to protect scheduler data structures.
3424
3425 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3426
3427         * testsuite/threads/threadi.c: (cb_data):
3428           Fix buglet in test.
3429
3430 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3431
3432         * testsuite/threads/Makefile.am:
3433         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3434           On Wim's request, split the test in three separately-compiled
3435           tests that each test a very specific bug. Two of them still fail,
3436           will create bugs for those. threadi.c indicates why they fail.
3437
3438 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3439
3440         * gst/schedulers/gstoptimalscheduler.c:
3441         (get_group_schedule_function):
3442           Try to work with the threading mess that queue_link is.
3443
3444 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3445
3446         * gst/gstbin.c: (gst_bin_remove_func):
3447           Explicitely make an element release locks in a group when being
3448           remove from a bin.
3449         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3450           If there's no scheduler, always return immediately (similar to
3451           gst_element_interrupt).
3452
3453 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3454
3455         * gst/gstbin.c: (gst_bin_child_state_change_func):
3456           Remove a piece of code that could never be reached.
3457         * docs/gst/gstreamer-sections.txt:
3458         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3459         (gst_pad_call_get_function):
3460         * gst/gstpad.h:
3461         * testsuite/pad/Makefile.am:
3462           Fix #150546, enable tests.
3463
3464 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3465
3466         * docs/pwg/advanced-types.xml:
3467           Fix description for buffer-frames=0.
3468         * docs/gst/tmpl/gstbin.sgml:
3469         * gst/gstbin.c: (gst_bin_child_state_change_func),
3470         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3471         * gst/gstbin.h:
3472         * testsuite/threads/Makefile.am:
3473         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3474         (cb_state), (cb_play), (main):
3475           Fix non-recursive state changes to *really* change the state
3476           of the object, and not just call parent_class->state_change.
3477           Fix a lot of lockups caused by this. Fixes #132775. Add test
3478           for the problem. Also enable test to show #142588 (fixed).
3479         * gst/gstthread.c: (gst_thread_change_state),
3480         (gst_thread_child_state_change):
3481           Don't exit the thread if we go to NULL and are inside thread
3482           context. Instead, return control to the main thread context
3483           and exit from there.
3484         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3485           Don't unset virtual functions, since those may still be used.
3486           That's not necessarily correct, but suffices for now.
3487         * configure.ac:
3488         * testsuite/Makefile.am:
3489         * testsuite/pad/Makefile.am:
3490         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3491         (gst_test_sink_base_init), (gst_test_sink_chain),
3492         (gst_test_sink_init), (main):
3493         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3494         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3495         (main):
3496         * testsuite/pad/link.c: (gst_test_element_class_init),
3497         (gst_test_element_base_init), (gst_test_src_get),
3498         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3499         (gst_test_filter_loop), (gst_test_filter_init),
3500         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3501         (cb_error), (main):
3502           Add tests to show #150546. Pass, but should fail (currently
3503           disabled from the testsuite).
3504         * gst/gstscheduler.c: (gst_scheduler_dispose):
3505           Dereference child schedulers on dispose (#94464).
3506         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3507           Fix typo.
3508         * testsuite/threads/thread.c: (main):
3509           Add more debug.
3510
3511 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3512
3513         * gst/gstpad.c: (gst_pad_push):
3514           Oops, revert previous commit, broke testsuite...
3515
3516 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3517
3518         * gst/gstpad.c: (gst_pad_push):
3519           Add check that the pad on which the push is performed is not a
3520           get-based pad (#150546).
3521
3522 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3523
3524         * gst/elements/gsttypefindelement.c:
3525         (gst_type_find_element_handle_event):
3526           Fix buffer pushing if stream EOSes during typefinding.
3527
3528 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3529
3530         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3531
3532         * gst/gstvalue.c: (gst_string_wrap):
3533           Allow NULL-strings as argument (#165365).
3534
3535 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3536
3537         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3538
3539         * gst/schedulers/faircothreads.c:
3540         (gst_fair_scheduler_cothread_queue_show):
3541           Fix build without debug enabled.
3542
3543 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3544
3545         * docs/gst/gstreamer-sections.txt:
3546         * docs/libs/gstreamer-libs-docs.sgml:
3547         * docs/libs/gstreamer-libs-sections.txt:
3548         * docs/libs/tmpl/gstcontrol.sgml:
3549         * docs/libs/tmpl/gstdparam.sgml:
3550         * docs/libs/tmpl/gstdplinint.sgml:
3551         * docs/libs/tmpl/gstdpman.sgml:
3552         * docs/libs/tmpl/gstdpsmooth.sgml:
3553         * docs/libs/tmpl/gstputbits.sgml:
3554         * docs/libs/tmpl/gstunitconvert.sgml:
3555         * libs/gst/control/dparam.c:
3556         * libs/gst/control/dparam.h:
3557         * libs/gst/control/dparammanager.c:
3558         (gst_dpman_add_required_dparam_callback),
3559         (gst_dpman_add_required_dparam_direct),
3560         (gst_dpman_add_required_dparam_array),
3561         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3562         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3563         (gst_dpman_get_manager)
3564           restructured DParam docs
3565
3566 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3567
3568         * gst-element-check.m4:
3569           Only check for gst-inspect if we haven't already
3570           found it in previous element check runs
3571
3572 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3573
3574         * docs/gst/Makefile.am:
3575         * docs/libs/Makefile.am:
3576           fixed install rules to treat style.css as optional
3577
3578 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3579
3580         * docs/gst/Makefile.am:
3581         * docs/libs/Makefile.am:
3582           install style.css along with docs
3583         * docs/gst/tmpl/gstbin.sgml:
3584         * docs/gst/tmpl/gstclock.sgml:
3585         * docs/gst/tmpl/gstdata.sgml:
3586         * docs/gst/tmpl/gstelement.sgml:
3587         * gst/gstbin.h:
3588         * gst/gstelement.c: (gst_element_class_init):
3589         * gst/gstelement.h:
3590           fixing incomplete docs
3591
3592 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3593
3594         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3595           Don't unref seek event twice when fflush() fails
3596           
3597 2005-01-22  David Schleef  <ds@schleef.org>
3598
3599         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3600
3601 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3602
3603         * docs/gst/Makefile.am:
3604         * docs/libs/Makefile.am:
3605           added params for deprecation guards
3606         * gst/gst.c:
3607         * gst/gst.h:
3608         * gst/gsterror.c: (_gst_resource_errors_init),
3609         (_gst_stream_errors_init):
3610         * gst/gsterror.h:
3611           documented some more enums
3612
3613 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3614         * gst/autoplug/gstspideridentity.c:
3615         Cosmetic fix - spider_find_peek should be static
3616         * gst/parse/parse.l:
3617         Applying fix for #164261
3618
3619 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3620
3621         * docs/gst/gstreamer-sections.txt:
3622         * docs/gst/tmpl/gstplugin.sgml:
3623         * docs/libs/gstreamer-libs-sections.txt:
3624         * docs/libs/tmpl/gstcontrol.sgml:
3625         * gst/gstbuffer.h:
3626         * gst/gsttag.h:
3627         * gst/gstvalue.c:
3628           added docs for the TAG defines
3629
3630 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3631
3632         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3633           Only unref entry if there is an entry.
3634
3635 2005-01-17  Wim Taymans  <wim@fluendo.com>
3636
3637         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3638         (remove_from_group), (schedule_group), (normalize_group),
3639         (gst_opt_scheduler_iterate):
3640         Also ref/unref decoupled elements before iterating the
3641         group since they are not added to the list of elements.
3642
3643 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3644
3645         * docs/manual/highlevel-components.xml:
3646           Add subtitle/streamselection as new features to playbin.
3647
3648 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3649
3650         * docs/manual/manual.xml:
3651           Re-enable dataaccess docs (oops).
3652
3653 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3654
3655         * docs/pwg/advanced-types.xml:
3656         * docs/random/mimetypes:
3657           Add documentation on libsndfile types (#163309), by Steve Baker
3658           <steve@stevebaker.org>.
3659         * gst/gstelement.c: (gst_element_release_request_pad):
3660           If an element has no explicit function, just remove the pad.
3661
3662 2005-01-17  Luca Ognibene  <luogni@tin.it>
3663
3664         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3665
3666         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3667           Fix memleak (#163801).
3668
3669 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3670
3671         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3672           I think this is actually more correct...
3673
3674 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3675
3676         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3677           Another workaround for memory access while destroyed in callback.
3678           Please, someone with refcount knowledge, have a look at this.
3679
3680 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3681
3682         * docs/faq/faq.xml:
3683         * docs/faq/legal.xml:
3684           move the legal Q&A here
3685
3686 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3687
3688         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3689         (gst_tee_request_new_pad):
3690           Fix negotiation.
3691
3692 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3693
3694         * docs/random/omega/caps2:
3695         * testsuite/caps/caps_strings:
3696           replace framerate aproximations by their real value
3697           (24000/1001, 30000/1001, 60000/1001)
3698           Partially fixes bug #164049
3699
3700 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3701
3702         * docs/gst/Makefile.am:
3703           don't fail on the stupid GstPoptOption
3704
3705 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3706
3707         * gst/gstpad.h:
3708         * gst/gstprobe.c:
3709           allow probes to work on ghost pads by realizing the pad
3710           probe debugging
3711
3712 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3713
3714         * docs/gst/gstreamer-sections.txt:
3715         * docs/gst/tmpl/gstpad.sgml:
3716         * gst/gstpad.c: (gst_pad_set_active_recursive):
3717         * gst/gstpad.h:
3718           Add gst_pad_set_active_recursive().
3719
3720 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3721
3722         * docs/random/release:
3723           updates
3724         * gst/gst_private.h:
3725         * gst/gstinfo.c:
3726         * gst/gstobject.c:
3727           move deep_notify logging to a new category
3728         * gst/gstprobe.c:
3729         * gst/gstprobe.h:
3730           add stuff so bindings can wrap probes
3731
3732 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3733
3734         * gst/gstplugin.c: (gst_plugin_load):
3735           Fix plugin loading if plugin/lib was already loaded. Fixes
3736           #163383
3737
3738 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3739
3740         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3741
3742         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3743           Protect plugin loading by a mutex so it's threadsafe. Fixes
3744           #163234.
3745
3746 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3747
3748         * gst/gstevent.c: (_gst_event_copy):
3749           Reference source object when copying events, since it'll be
3750           dereferenced on event dereferencing as well.
3751
3752 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3753
3754         * docs/gst/gstreamer-sections.txt:
3755         * docs/gst/tmpl/gstevent.sgml:
3756         * gst/gstevent.c: (gst_event_new_filler_stamped),
3757         (gst_event_filler_get_duration):
3758         * gst/gstevent.h:
3759           Add two new functions for filler events (which are used to
3760           synchronize streams if one of them is not having any data
3761           for a while) without interrupting the actual data-stream.
3762           Basically a no-op.
3763         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3764         (gst_queue_link_sink), (gst_queue_link_src),
3765         (gst_queue_change_state):
3766           Allow for renegotiation while filled. Required for stream
3767           switching while playing.
3768
3769 2005-01-08  Benjamin Otte  <otte@gnome.org>
3770
3771         * gst/gstelement.c: (gst_element_link_many):
3772           fix up g_return_if_fail's
3773         * po/LINGUAS:
3774         * po/de.po:
3775           add German translation, that was somehow not included
3776
3777 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3778
3779         * docs/random/mimetypes:
3780           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3781           do not add them to riff-lib as they are not common
3782
3783 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3784
3785         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3786           Check for existence of probe after performing the probe before
3787           re-accessing it to prevent segfaults caused by removal of the
3788           probe in the callback.
3789
3790 2005-01-05  David Schleef  <ds@schleef.org>
3791
3792         * testsuite/registry/Makefile.am:
3793         * testsuite/registry/gst-print-formats.c:
3794         (print_pad_templates_info), (print_element_list),
3795         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3796         (g_list_uniqify), (get_pad_templates_info),
3797         (get_element_mime_list), (print_mime_list), (main): A little
3798         program that looks through the registry to find elements of
3799         a given type.  Not particularly interesting as a test, except
3800         that there's no other test covering the same area.
3801
3802 2005-01-05  David Schleef  <ds@schleef.org>
3803
3804         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3805         (fault_handler_sigaction), (fault_spin),
3806         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3807         in signal.h-type signal handlers by not calling forbidden functions,
3808         including gst_element_set_state().
3809
3810 2005-01-05  David Schleef  <ds@schleef.org>
3811
3812         * gst/gstvalue.h: Mark _gst_reserved[] as private
3813
3814 2005-01-05  David Schleef  <ds@schleef.org>
3815
3816         * gst/gstvalue.c: Fix doc build problem.
3817
3818 2005-01-05  David Schleef  <ds@schleef.org>
3819
3820         * gst/gstvalue.c: Add some documentation
3821
3822 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3823
3824         * docs/README:
3825           another shell oneliner for empty return value docs
3826         * gst/gstcaps.c:
3827         * gst/gstvalue.c:
3828         * libs/gst/control/dparam.c:
3829           more doc fixes (parameters and return values)
3830
3831 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3832
3833         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3834
3835         * gst/gstregistry.h:
3836         * gst/registries/gstxmlregistry.c:
3837           Fix macro's for Mingw (fixes #162276).
3838
3839 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3840
3841         * docs/README:
3842           quick shell oneliner to find undocumented members
3843         * docs/gst/tmpl/gstplugin.sgml:
3844         * docs/gst/tmpl/gstscheduler.sgml:
3845         * docs/gst/tmpl/gstthread.sgml:
3846           more enumtypes cleanup
3847         * gst/gsterror.h:
3848           activated documentation comments, now someone needs to document
3849           the enums :(
3850
3851 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3852
3853         * docs/manual/manual.xml:
3854           Add dataaccess part (doh!).
3855
3856 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3857
3858         * docs/manual/advanced-autoplugging.xml:
3859           Fix typo (intiate -> initiate).
3860
3861 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3862
3863         * docs/random/bbb/streamselection:
3864           Add some notes on how to handle multi-subtitle/-audio streams.
3865
3866 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3867
3868         * docs/gst/gstreamer-docs.sgml:
3869         * docs/gst/gstreamer-sections.txt:
3870         * docs/gst/tmpl/gstenumtypes.sgml:
3871         * docs/gst/tmpl/gsterror.sgml:
3872         * docs/gst/tmpl/gstevent.sgml:
3873         * docs/gst/tmpl/gstpad.sgml:
3874         * docs/gst/tmpl/gstpadtemplate.sgml:
3875         * docs/gst/tmpl/gstthread.sgml:
3876           removed gstenumtypes section from docs and put all the enums into
3877           their sections
3878
3879 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3880
3881         * gst/gstplugin.c:
3882           document gst_library_load a bit more (riff special case + return
3883           value if already loaded)
3884         * testsuite/bytestream/filepadsink.c:
3885           plugin name is 'gstbytestream', not 'bytestream'
3886
3887 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3888
3889         * docs/random/bbb/subtitles:
3890           Add some first mind rumblings on proper subtitle support.
3891
3892 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3893
3894         * po/ca.po:
3895         * po/sv.po:
3896           updated translations
3897
3898 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3899
3900         * docs/manual/advanced-dataaccess.xml:
3901           Add section on how to use fakesrc/fakesink/identity in your
3902           application, plus section on how to embed plugins. Also mention
3903           probes.
3904         * docs/manual/appendix-checklist.xml:
3905         * docs/manual/appendix-debugging.xml:
3906         * docs/manual/appendix-gnome.xml:
3907         * docs/manual/appendix-integration.xml:
3908           Debug -> checklist, GNOME -> integration, add sections on Linux,
3909           KDE integration and add other things useful for application
3910           development.
3911         * docs/manual/manual.xml:
3912           Remove some fixmes, update some file pointers.
3913         * docs/pwg/appendix-checklist.xml:
3914           Fix typo.
3915         * docs/pwg/building-boiler.xml:
3916           Remove ugly header and add commented fixme.
3917         * docs/pwg/pwg.xml:
3918           Add fixme.
3919         * examples/manual/Makefile.am:
3920           Add example for added docs.
3921
3922 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3923
3924         * configure.ac:
3925           back to HEAD
3926
3927 === release 0.8.8 ===
3928
3929 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3930
3931         * NEWS:
3932         * RELEASE:
3933         * configure.ac:
3934           Releasing 0.8.8, "I'll Take Care Of You"
3935
3936 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3937
3938         * configure.ac:
3939           second prerelease
3940
3941 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3942
3943         patch by: Wim Taymans
3944
3945         * gst/gstbin.c:
3946           Fix for #159852 - make iterate emission threadsafe
3947
3948 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3949
3950         * docs/faq/cvs.xml:
3951           notes about new fdo account request
3952
3953 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3954
3955         * docs/gst/gstreamer-docs.sgml:
3956         * docs/gst/tmpl/gstenumtypes.sgml:
3957         * docs/gst/tmpl/gstplugin.sgml:
3958         * docs/libs/gstreamer-libs-docs.sgml:
3959           Added missing short docs. Added ids for navigation.
3960
3961 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3962
3963         * docs/manual/advanced-autoplugging.xml:
3964         * docs/manual/advanced-schedulers.xml:
3965         * docs/manual/advanced-threads.xml:
3966           Rewrites. Remove cothreads, go a bit into opt specifically,
3967           document threads and their gotchas, and do some technical stuff
3968           on autoplugging plus add some working examples. Fixes #157395.
3969         * examples/manual/Makefile.am:
3970           Add typefind/autoplugger example (one that actually works).
3971           Remove queue example since it's a duplicate of the thread one.
3972
3973 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3974
3975         * gst/gstvalue.c: (gst_value_deserialize_string):
3976           use deprecated g_value_set_string_take_ownership to keep compatible
3977           with glib 2.2
3978
3979 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3980
3981         * gst/gstvalue.c: (gst_value_deserialize_string):
3982           revert last patch, only dom a g_utf8_validate now before accepting
3983           the string - caps parsing strips " from strings so we can't rely on
3984           them
3985         * testsuite/caps/value_serialize.c: (test_string_deserialization):
3986           disable a test that tested the above and comment it
3987
3988 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
3989
3990         Patch reviewed by David Schleef  <ds@schleef.org>
3991
3992         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
3993         bug #153882)
3994         * win32/gstenumtypes.h: same
3995
3996 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3997
3998         * gst/gstpad.c: (gst_pad_query):
3999           Do query on realized pad, similar to how convert/send_event handle
4000           this. Also makes sense, since this pad belongs to the function to
4001           which this query will be sent. Fixes #158163.
4002
4003 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
4004
4005         * docs/manual/appendix-programs.xml: fix pipeline to actually work
4006
4007 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4008
4009         * docs/faq/general.xml: fix pipeline to actually work
4010
4011 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4012
4013         * gst/gstvalue.c: (gst_value_deserialize_string):
4014           check that a simple string that gets deserialized does not contain
4015           invalid characters
4016         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4017           remove a test that tested a wring behaviour
4018
4019 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
4020
4021         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4022
4023         * docs/manual/intro-motivation.xml:
4024           Fix typos.
4025
4026 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4027
4028         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4029
4030         * docs/gst/tmpl/gstprobe.sgml:
4031           Fix documentation of probe callback - it is supposed to return
4032           FALSE, not TRUE, to remove data from the stream (#159087).
4033
4034 2004-12-16  Daniel Gazard  <dany42@free.fr>
4035
4036         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4037
4038         * gst/gstelementfactory.c: (gst_element_factory_create):
4039           Fix compile failure if compiling without libxml2 support (#149936).
4040
4041 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4042
4043         * docs/manual/advanced-autoplugging.xml:
4044         * docs/manual/highlevel-components.xml:
4045           Move spider from autoplugging to components. Autoplugging is for
4046           internals, not for solutions. ;-).
4047
4048 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4049
4050         * docs/random/ds/0.9-suggested-changes:
4051           Make note on device/location/uri property names.
4052
4053 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4054
4055         * docs/manual/advanced-autoplugging.xml:
4056         * docs/manual/advanced-clocks.xml:
4057         * docs/manual/advanced-interfaces.xml:
4058         * docs/manual/advanced-metadata.xml:
4059         * docs/manual/advanced-position.xml:
4060         * docs/manual/advanced-schedulers.xml:
4061         * docs/manual/advanced-threads.xml:
4062         * docs/manual/appendix-gnome.xml:
4063         * docs/manual/appendix-programs.xml:
4064         * docs/manual/appendix-quotes.xml:
4065         * docs/manual/autoplugging.xml:
4066         * docs/manual/basics-bins.xml:
4067         * docs/manual/basics-data.xml:
4068         * docs/manual/basics-elements.xml:
4069         * docs/manual/basics-helloworld.xml:
4070         * docs/manual/basics-init.xml:
4071         * docs/manual/basics-pads.xml:
4072         * docs/manual/basics-plugins.xml:
4073         * docs/manual/bins-api.xml:
4074         * docs/manual/bins.xml:
4075         * docs/manual/buffers-api.xml:
4076         * docs/manual/buffers.xml:
4077         * docs/manual/clocks.xml:
4078         * docs/manual/components.xml:
4079         * docs/manual/cothreads.xml:
4080         * docs/manual/debugging.xml:
4081         * docs/manual/dparams-app.xml:
4082         * docs/manual/dynamic.xml:
4083         * docs/manual/elements-api.xml:
4084         * docs/manual/elements.xml:
4085         * docs/manual/factories.xml:
4086         * docs/manual/gnome.xml:
4087         * docs/manual/goals.xml:
4088         * docs/manual/helloworld.xml:
4089         * docs/manual/helloworld2.xml:
4090         * docs/manual/highlevel-components.xml:
4091         * docs/manual/highlevel-xml.xml:
4092         * docs/manual/init-api.xml:
4093         * docs/manual/intro-basics.xml:
4094         * docs/manual/intro-motivation.xml:
4095         * docs/manual/intro-preface.xml:
4096         * docs/manual/intro.xml:
4097         * docs/manual/links-api.xml:
4098         * docs/manual/links.xml:
4099         * docs/manual/manual.xml:
4100         * docs/manual/motivation.xml:
4101         * docs/manual/pads-api.xml:
4102         * docs/manual/pads.xml:
4103         * docs/manual/plugins-api.xml:
4104         * docs/manual/plugins.xml:
4105         * docs/manual/programs.xml:
4106         * docs/manual/queues.xml:
4107         * docs/manual/quotes.xml:
4108         * docs/manual/schedulers.xml:
4109         * docs/manual/states-api.xml:
4110         * docs/manual/states.xml:
4111         * docs/manual/threads.xml:
4112         * docs/manual/typedetection.xml:
4113         * docs/manual/win32.xml:
4114         * docs/manual/xml.xml:
4115           Try 2. This time, include a short preface as a "general
4116           introduction", also add code blocks around all code samples
4117           so they get compiled. We still need a way to tell readers
4118           the filename of the code sample. In some cases, don't show
4119           all code in the documentation, but do include it in the generated
4120           code. This allows for focussing on specific bits in the docs,
4121           while still having a full test application available.
4122         * examples/manual/Makefile.am:
4123           Fix up examples for new ADM. Add several of the new examples that
4124           were either added or were missing from the build system.
4125         * examples/manual/extract.pl:
4126           Allow nameless blocks.
4127
4128 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4129
4130         * docs/manual/elements-api.xml:
4131         * docs/manual/helloworld.xml:
4132         * examples/manual/extract.pl:
4133           fix last example.  Add example of adding code blocks that are not
4134           shown in docbook output.
4135
4136 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4137
4138         * docs/manual/dynamic.xml:
4139         * docs/manual/elements-api.xml:
4140         * docs/manual/gnome.xml:
4141         * docs/manual/helloworld2.xml:
4142         * docs/manual/init-api.xml:
4143         * docs/manual/queues.xml:
4144         * docs/manual/threads.xml:
4145         * docs/manual/xml.xml:
4146         * examples/manual/extract.pl:
4147           Make it possible to extract example code from separate blocks.
4148           Should make Ronald happy.
4149
4150 2004-12-15  Wim Taymans  <wim@fluendo.com>
4151
4152         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4153         (remove_from_group), (group_elements_set_visited),
4154         (normalize_group), (gst_opt_scheduler_iterate):
4155         Fix bug where a flag was not updated on a decoupled entry point 
4156         because we were just checking the group element list and decoupled
4157         elements are not in that list..
4158
4159 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4160
4161         * docs/manual/advanced-autoplugging.xml:
4162         * docs/manual/advanced-clocks.xml:
4163         * docs/manual/advanced-dparams.xml:
4164         * docs/manual/advanced-interfaces.xml:
4165         * docs/manual/advanced-metadata.xml:
4166         * docs/manual/advanced-position.xml:
4167         * docs/manual/advanced-schedulers.xml:
4168         * docs/manual/advanced-threads.xml:
4169         * docs/manual/appendix-debugging.xml:
4170         * docs/manual/appendix-gnome.xml:
4171         * docs/manual/appendix-programs.xml:
4172         * docs/manual/appendix-quotes.xml:
4173         * docs/manual/appendix-win32.xml:
4174         * docs/manual/autoplugging.xml:
4175         * docs/manual/basics-bins.xml:
4176         * docs/manual/basics-data.xml:
4177         * docs/manual/basics-elements.xml:
4178         * docs/manual/basics-helloworld.xml:
4179         * docs/manual/basics-init.xml:
4180         * docs/manual/basics-pads.xml:
4181         * docs/manual/basics-plugins.xml:
4182         * docs/manual/bins-api.xml:
4183         * docs/manual/bins.xml:
4184         * docs/manual/buffers-api.xml:
4185         * docs/manual/buffers.xml:
4186         * docs/manual/clocks.xml:
4187         * docs/manual/components.xml:
4188         * docs/manual/cothreads.xml:
4189         * docs/manual/debugging.xml:
4190         * docs/manual/dparams-app.xml:
4191         * docs/manual/dynamic.xml:
4192         * docs/manual/elements-api.xml:
4193         * docs/manual/elements.xml:
4194         * docs/manual/factories.xml:
4195         * docs/manual/gnome.xml:
4196         * docs/manual/goals.xml:
4197         * docs/manual/helloworld.xml:
4198         * docs/manual/helloworld2.xml:
4199         * docs/manual/highlevel-components.xml:
4200         * docs/manual/highlevel-xml.xml:
4201         * docs/manual/init-api.xml:
4202         * docs/manual/intro-motivation.xml:
4203         * docs/manual/intro-preface.xml:
4204         * docs/manual/intro.xml:
4205         * docs/manual/links-api.xml:
4206         * docs/manual/links.xml:
4207         * docs/manual/manual.xml:
4208         * docs/manual/motivation.xml:
4209         * docs/manual/pads-api.xml:
4210         * docs/manual/pads.xml:
4211         * docs/manual/plugins-api.xml:
4212         * docs/manual/plugins.xml:
4213         * docs/manual/programs.xml:
4214         * docs/manual/queues.xml:
4215         * docs/manual/quotes.xml:
4216         * docs/manual/schedulers.xml:
4217         * docs/manual/states-api.xml:
4218         * docs/manual/states.xml:
4219         * docs/manual/threads.xml:
4220         * docs/manual/typedetection.xml:
4221         * docs/manual/win32.xml:
4222         * docs/manual/xml.xml:
4223           First try at rewriting the ADM. Needs lotsamore work, but some
4224           parts might already be somewhat useful.
4225         * docs/pwg/advanced-interfaces.xml:
4226           Remove properties interface, it never actually existed (except for
4227           on my HD...).
4228
4229 2004-12-13  David Schleef  <ds@schleef.org>
4230
4231         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
4232         be NULL (bug #160220).
4233
4234 2004-12-13  David Schleef  <ds@schleef.org>
4235
4236         * configure.ac: remove all mmx stuff, because it's not used.
4237         * docs/random/ds/0.9-suggested-changes: additional notes
4238         * include/Makefile.am: we don't use these anymore
4239         * include/mmx.h: remove
4240         * include/sse.h: remove
4241
4242 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4243
4244         * docs/random/mimetypes:
4245           Add FOURCC code for h264 codec (VSSH)
4246           Add alternate FOURCC codes for h263 related codecs
4247
4248 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
4249
4250         * docs/manual/programs.xml:
4251           Added more gst-launch examples.
4252
4253 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4254
4255         * gst/gstqueue.c: (gst_queue_handle_src_query):
4256           Check for availability again.
4257
4258 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4259
4260         * gst/gstcaps.c: (gst_caps_compare_structures):
4261           Simple caps go first. This has the nice side-effect of fixing an
4262           obscure warning.
4263
4264 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4265
4266         * gst/gstversion.h.in:
4267           Protect header.
4268
4269 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4270
4271         * gst/schedulers/gstoptimalscheduler.c:
4272         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4273         (gst_opt_scheduler_get_wrapper):
4274           When we're recursing into a chain run, only run the directly
4275           related group, not all queued ones. This will fix a possible
4276           deadlock in chains with more than two groups.
4277
4278 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4279
4280         * autogen.sh:
4281           remove patch if autopoint fails
4282
4283 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4284
4285         * docs/gst/gstreamer-sections.txt:
4286           Document Thomas' addition, fix build, make Luis the sheriff happy.
4287
4288 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4289
4290         * gst/gstplugin.c:
4291         * gst/gstplugin.h:
4292           add accessor for version field
4293
4294 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4295
4296         submitted by: Luca Ferretti <elle.uca@infinito.it>
4297
4298         * po/LINGUAS:
4299         * po/it.po:
4300           New tranlation added: Italian
4301
4302 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4303
4304         * gst/gstpad.c: (gst_pad_is_negotiated),
4305         (gst_pad_get_negotiated_caps):
4306           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4307           it doesn't actually check the contents), so be sure to hand it
4308           a RealPad else we'll crash.
4309
4310 2004-12-03  Wim Taymans  <wim@fluendo.com>
4311
4312         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4313         (gst_queue_link), (gst_queue_handle_src_query):
4314         Reverted to 1.110 until this makes the testsuite and various
4315         apps work.
4316
4317 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4318
4319         * docs/upload.mak: fix included CVS conflict strings
4320
4321 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4322
4323         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4324
4325         * gst/gstelement.c: (gst_element_error_full):
4326           Use g_error_new_literal because error text may have
4327           percentage signs in it. Fixes #160019.
4328
4329 2004-12-01  Benjamin Otte  <otte@gnome.org>
4330
4331         * gst/elements/gstbufferstore.c:
4332         (gst_buffer_store_add_buffer_func):
4333           don't try to make subbuffers bigger than they can be. (fixes
4334           #159970)
4335
4336 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4337
4338         * docs/gst/gstreamer-sections.txt:
4339         * docs/gst/tmpl/gstvalue.sgml:
4340           Add new function to docs to fix build.
4341
4342 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4343
4344         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4345         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4346         (_gst_pad_default_fixate_foreach):
4347         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4348         * gst/gstvalue.h:
4349           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4350           in some cases (arrays), the fixedness depends on the content.
4351         * gst/gstqueue.c: (gst_queue_handle_src_query):
4352           Check for availability before doing something.
4353
4354 2004-11-29  Wim Taymans  <wim@fluendo.com>
4355
4356         * testsuite/threads/Makefile.am:
4357         * testsuite/threads/signals.c: (gst_test_get_type),
4358         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4359         (gst_test_set_property), (gst_test_get_property),
4360         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4361         (gst_test_do_prop), (run_thread), (main):
4362         Added a bunch of testcases that show threadsafety bugs in glib.
4363
4364 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4365
4366         * docs/manual/programs.xml:
4367           Added a first batch of gst-launch examples, as provided by Ronald
4368           and others from the devel-mlist
4369
4370 2004-11-28  Benjamin Otte  <otte@gnome.org>
4371
4372         * gst/gstelement.c: (gst_element_negotiate_pads):
4373           simplify
4374         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4375         (gst_value_serialize_string), (gst_value_deserialize_string):
4376           add unwrapping of previously wrapped strings. Fix bug in wrapping
4377           while at it.
4378         * testsuite/caps/value_serialize.c: (test1),
4379         (test_string_serialization), (test_string_deserialization), (main):
4380           add tests for string (de)serialization
4381
4382 2004-11-26  Wim Taymans  <wim@fluendo.com>
4383
4384         * testsuite/threads/159566.c: (object_deep_notify), (main):
4385         * testsuite/threads/Makefile.am:
4386         Added testsuite to show bug #159566
4387
4388 2004-11-25  Wim Taymans  <wim@fluendo.com>
4389
4390         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4391         (gst_thread_child_state_change), (gst_thread_main_loop):
4392         Ref the thread object in the GThread mainloop. Break out of the
4393         thread mainloop if it holds the last ref. This properly exits
4394         the threads when disposing the thread from its own context. It
4395         also avoids possible deadlocks in the dispose function.
4396
4397 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4398
4399         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4400         it is necessary to wait.
4401
4402 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4403
4404         * docs/pwg/building-boiler.xml:
4405           Make description somewhat clearer.
4406
4407 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4408
4409         * docs/upload.mak:
4410           Apparently docs changed location on FDO's server.
4411
4412 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4413
4414         * docs/pwg/appendix-checklist.xml:
4415           Add some random notes on things to check when writing an element.
4416           This list can be extended as people see fit.
4417
4418 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4419
4420         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4421         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4422         pad. The queue will now wait until it is empty and forward the new
4423         caps to the source.
4424         * gst/gstbin.c (gst_bin_set_element_sched)
4425         (gst_bin_unset_element_sched): Make sure that all elements and
4426         links are registered and unregistered with the scheduler exactly
4427         once. This elaborates on a fix by Benjamin Otte, but
4428         guarantees that decoupled elements are also registered.
4429
4430 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4431
4432         * docs/manual/quotes.xml:
4433           add a quote
4434         * configure.ac:
4435         * gst/gst.c:
4436         * gst/gstinfo.c:
4437           add LIBDIR and move init message higher up so it's at the start
4438
4439 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4440
4441         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4442         * gstreamer.spec.in: add fair
4443
4444 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4445
4446         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4447         * gst/elements/gstidentity.c: (gst_identity_class_init):
4448           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4449           <teuf@gnome.org> (#157263).
4450         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4451         (gst_type_find_handle_src_query):
4452           Subtract size of internally stored data from position queries.
4453
4454 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4455
4456         * gst/schedulers/fairscheduler.c:
4457         * gst/schedulers/faircothreads.c:
4458         * gst/schedulers/faircothreads.h:
4459         New cothread based scheduler: Fair scheduler.
4460         * gst/schedulers/gthread-cothreads.h: 
4461         Add the standard #if around the whole file.
4462         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4463         compilation of the functions defined in this file. This is
4464         necessary to be able to use this file as a normal header.
4465         * gst/schedulers/Makefile.am: Add compiling support for fair
4466         scheduler.
4467         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4468         scheduler cothreads layer from documentation generation.
4469
4470 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4471
4472         * gst/autoplug/gstspideridentity.c:
4473         (gst_spider_identity_sink_loop_type_finding):
4474           Don't crash if that function is not implemented.
4475
4476 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4477
4478         * docs/pwg/advanced-types.xml:
4479           Another typo.
4480
4481 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4482
4483         * docs/pwg/intro-preface.xml:
4484           Hm, ok, so the brackets weren't really useful...
4485         * docs/pwg/other-ntoone.xml:
4486           Fix embarassing typo.
4487
4488 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4489
4490         * docs/pwg/intro-preface.xml:
4491           Rewrite preface.
4492
4493 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4494
4495         * docs/pwg/advanced-scheduling.xml:
4496         * docs/pwg/advanced-tagging.xml:
4497         * docs/pwg/advanced-types.xml:
4498         * docs/pwg/building-boiler.xml:
4499         * docs/pwg/building-chainfn.xml:
4500         * docs/pwg/building-signals.xml:
4501         * docs/pwg/building-state.xml:
4502         * docs/pwg/building-testapp.xml:
4503         * docs/pwg/intro-basics.xml:
4504         * docs/pwg/other-manager.xml:
4505         * docs/pwg/other-source.xml:
4506           Typo fixes.
4507         * docs/pwg/other-manager.xml:
4508           Add some first content. No example code yet.
4509         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4510           Remove double newlines.
4511
4512 2004-11-04  Wim Taymans  <wim@fluendo.com>
4513
4514         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4515         (remove_from_group), (normalize_group), (group_migrate_connected),
4516         (gst_opt_scheduler_iterate):
4517         * testsuite/schedulers/.cvsignore:
4518         * testsuite/schedulers/Makefile.am:
4519         * testsuite/schedulers/queue_link.c: (main):
4520         Added testcase for scheduler segfault.
4521         Fix scheduler segfault when removing a decoupled
4522         entry point as the last element from a group.
4523
4524 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4525
4526         * gst/gstmarshal.list: add missing marshaller, fixes build
4527
4528 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4529
4530         * docs/random/signal: added notes about using BOXED for GstBuffer
4531         signal marshallers, not POINTER
4532
4533 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4534
4535         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4536         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4537         POINTER=>BOXED changes to marshal GstBuffers
4538
4539 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4540
4541         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4542         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4543
4544 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4545
4546         * docs/gst/gstreamer-sections.txt:
4547         * docs/gst/tmpl/gstcaps.sgml:
4548         * docs/gst/tmpl/gsterror.sgml:
4549         * docs/gst/tmpl/gstinfo.sgml:
4550         * docs/gst/tmpl/gstmacros.sgml:
4551         * docs/gst/tmpl/gstutils.sgml:
4552         * docs/random/ensonic/interfaces.txt:
4553         * gst/gstinfo.h:
4554           added some more docs, removed two obsolete defines
4555
4556 2004-11-02  Kjartan Maraas <as at gnome.org>
4557
4558         reviewed by: Wim Taymans, Ronald Bultje.
4559
4560         * gst/cothreads.c: (cothread_create):
4561         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4562         (gst_bin_child_state_change_func):
4563         * gst/gstbuffer.c: (gst_buffer_span):
4564         * gst/gstelement.c: (gst_element_get_index),
4565         (gst_element_get_event_masks), (gst_element_get_query_types),
4566         (gst_element_get_formats):
4567         * gst/gsterror.c: (_gst_core_errors_init),
4568         (_gst_library_errors_init), (_gst_resource_errors_init),
4569         (_gst_stream_errors_init):
4570         * gst/gstobject.c: (gst_object_default_deep_notify):
4571         * gst/gstpad.c: (gst_pad_get_event_masks),
4572         (gst_pad_get_internal_links_default):
4573         * gst/gstplugin.c: (gst_plugin_register_func),
4574         (gst_plugin_get_module):
4575         * gst/gststructure.c: (gst_structure_get_string),
4576         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4577         (gst_structure_to_abbr):
4578         * gst/gstutils.c: (gst_print_element_args):
4579         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4580         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4581         Aplied part of patch #157127: Cleanup of issues reported by 
4582         sparse.
4583         Also do not try to use cothreads when there is no cothread
4584         context yet.
4585
4586 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4587
4588         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4589         (gst_opt_scheduler_iterate):
4590         Applied patch #154061. Running a pipeline in which an element 
4591         calls GST_ELEMENT_ERROR in the chain function, the opt 
4592         scheduler doesn't unref the chain so it never gets freed.
4593
4594 2004-11-02  Wim Taymans  <wim@fluendo.com>
4595
4596         * gst/gststructure.c: (gst_structure_get_abbrs),
4597         (gst_structure_from_abbr), (gst_structure_to_abbr):
4598         Remove that ugly if-then thing in the code that converts
4599         between strings and types.
4600
4601 2004-11-02  Wim Taymans  <wim@fluendo.com>
4602
4603         * gst/gstscheduler.c: (gst_scheduler_add_element),
4604         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4605         Aplied clock distribution patch, this should fix bug
4606         #148787.
4607
4608 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4609
4610         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4611
4612         * po/LINGUAS:
4613         * po/nb.po:
4614           Added Norwegian Bokmaal translation
4615
4616 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4617
4618         * tools/gst-inspect.c: (print_signal_info):
4619           print signal arguments as pointers if they are
4620
4621 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4622
4623         * docs/pwg/building-boiler.xml:
4624           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4625
4626 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4627
4628         * gst/parse/parse.l:
4629         * testsuite/parse/parse1.c: (main):
4630         Since parse can do 'element name=a:b' make 'a:b.' work as
4631         well. 
4632         Added testcase to verify fix.
4633
4634 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4635
4636         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4637         Use the realpad when printing the direction.
4638         Add extra \n when printing extensions of typefind factories.
4639
4640 2004-10-13  David Schleef  <ds@schleef.org>
4641
4642         * examples/manual/Makefile.am: $< isn't portable in Makefile
4643         rules.
4644
4645 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4646
4647         * docs/gst/tmpl/gstobject.sgml:
4648         * docs/gst/tmpl/gstplugin.sgml:
4649         * docs/gst/tmpl/gstpluginfeature.sgml:
4650         * docs/gst/tmpl/gstregistry.sgml:
4651         * docs/gst/tmpl/gstversion.sgml:
4652         * gst/gstbin.c:
4653           more api documentation
4654         * gst/gstplugin.c: (gst_plugin_register_func),
4655         (gst_plugin_check_file), (gst_plugin_load_file):
4656           better error signaling and logging
4657
4658 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4659
4660         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4661           Subtract current queue contents from position queries.
4662
4663 2004-10-11  Johan Dahlin  <johan@gnome.org>
4664
4665         * gst/gsturi.c (gst_uri_get_location): unescape string
4666         (gst_uri_construct): escape string.
4667
4668 2004-10-11  Benjamin Otte  <otte@gnome.org>
4669
4670         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4671         (gst_pad_try_set_caps_nonfixed):
4672           allow renegotiation of unconnected pads (as inside spider). Simply
4673           return OK if unconnected - mimic try_set_caps there.
4674
4675 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4676
4677         * gst/gstbin.c: (gst_bin_sync_children_state):
4678           Add missing break.
4679
4680 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4681
4682         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4683         Set element to EOS before sending EOS event
4684
4685 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4686
4687         * gst/elements/gsttypefindelement.c:
4688         (gst_type_find_element_handle_event):
4689         Handle EOS events when doing the transition from
4690         typefind to data passing. This should fix the
4691         infinite loops in short files.
4692
4693 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4694
4695         * gst/gstthread.c: (gst_thread_change_state),
4696         (gst_thread_child_state_change):
4697         Make sure no iteration happens while performing
4698         the state change as it could mess up the internal
4699         consistency of the thread state.
4700
4701 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4702
4703         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4704         (gst_thread_change_state), (gst_thread_child_state_change):
4705         Do not try to grab the iterate lock in the state change method
4706         when we are in the same thread as the iterate or else we
4707         could deadlock. Some other cleanups.
4708
4709 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4710
4711         * configure.ac:
4712           bump nano to cvs
4713
4714 === release 0.8.7 ===
4715
4716 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4717
4718         * configure.ac:
4719         * NEWS:
4720         * RELEASE:
4721         * configure.ac:
4722           releasing 0.8.7, "A Cruise"
4723
4724 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4725
4726         * docs/random/mimetypes:
4727         Add an entry for Sony ATRAC3 audio format with mime-type
4728         used by rmdemux et riff-read
4729
4730 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4731
4732         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4733         Push the buffer store instead of clearing it in case that
4734         the stream is not seekable.
4735
4736 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4737
4738         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4739         (gst_thread_main_loop):
4740         Lock the iteration and the state change so that automatic
4741         negotiation and fixation does not happen at the same time
4742         as the in stream negotiation.
4743
4744 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4745
4746         * configure.ac:
4747           bump nano to cvs
4748
4749 === release 0.8.6 ===
4750
4751 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4752
4753         * configure.ac:
4754         * NEWS:
4755         * RELEASE:
4756         * configure.ac:
4757           releasing 0.8.6, "Narc"
4758
4759 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4760
4761         * configure.ac:
4762           prerel bump
4763
4764 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4765
4766         patch by: Steve Lhomme
4767
4768         * gst/elements/gstfakesrc.c:
4769         * gst/elements/gstidentity.c:
4770         * gst/gstthread.c:
4771           Fix for #153881
4772
4773 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4774
4775         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4776         Fix threadsafety of the crc checking function.
4777
4778 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4779
4780         patch by: Ronald Bultje
4781
4782         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4783         (gst_type_find_element_handle_event),
4784         (gst_type_find_element_chain):
4785         * gst/elements/gsttypefindelement.h:
4786          #153657.
4787          Filter out discont event from seekable sources when typefind
4788          asks them to seek.  Fixes typefind with demuxers for
4789          avi, asf and matroska.
4790
4791 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4792
4793         * docs/gst/gstreamer-sections.txt:
4794         * gst/gstcaps.c:
4795         * gst/gstcaps.h:
4796         * gst/gstpad.c:
4797           Revert preferred caps: (#147789)
4798
4799 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4800
4801         * win32/dirent.c:
4802           fix a memory leak
4803
4804 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4805
4806         * configure.ac:
4807           bump for prerelease
4808
4809 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4810
4811         * docs/Makefile.am:
4812         * docs/manual/elements-api.xml:
4813           restructure so that common stuff is shown first
4814         * docs/manual/init-api.xml:
4815           convert to examples
4816         * docs/manual/manual.xml:
4817         * docs/manuals.mak:
4818         * docs/url.entities:
4819           link to API on the website, possibly override later in build
4820         * examples/manual/.cvsignore:
4821           ignore more
4822         * examples/manual/Makefile.am:
4823           add more examples
4824         * examples/manual/extract.pl:
4825           error out on failure
4826
4827 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4828
4829         * docs/gst/tmpl/gstthread.sgml:
4830         * docs/manual/init-api.xml:
4831         * examples/manual/Makefile.am:
4832           convert two code bits to examples
4833
4834 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4835
4836         * gst/gstelement.c: (gst_element_change_state):
4837           Well, actually, I was about to remove this insane assert when
4838           I noticed Wim already did that. A warning is nice so we can
4839           fix actual ugs (using --g-fatal-warnings and backtraces), so
4840           I added that instead.
4841
4842 2004-09-06  Wim Taymans  <wim@fluendo.com>
4843
4844         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4845         (gst_element_threadsafe_properties_post_run),
4846         (gst_element_set_state), (gst_element_change_state):
4847         Added extra refcounting around various places. 
4848
4849 2004-09-06  Wim Taymans  <wim@fluendo.com>
4850
4851         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4852         Fix debug info.
4853
4854 2004-09-06  Wim Taymans  <wim@fluendo.com>
4855
4856         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4857         (remove_from_group):
4858         Some more debug info.
4859
4860 2004-09-03  Wim Taymans  <wim@fluendo.com>
4861
4862         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4863         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4864         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4865         (gst_fakesrc_get), (gst_fakesrc_change_state):
4866         * gst/elements/gstfakesrc.h:
4867         * gst/elements/gstidentity.c: (gst_identity_class_init),
4868         (gst_identity_init), (gst_identity_chain),
4869         (gst_identity_set_property), (gst_identity_get_property),
4870         (gst_identity_change_state):
4871         * gst/elements/gstidentity.h:
4872         Added datarate properties to limit the datarate.
4873
4874 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4875
4876         * gst/autoplug/gstspider.c: (plugin_init):
4877           don't set a rank. We don't want to autoplug by inserting spiders.
4878
4879 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4880
4881         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4882         (gst_spider_identity_plug):
4883           add a template for spider's sink
4884         * gst/gst.c: (gst_register_core_elements):
4885           queue's rank should be NULL, we don't want spider to add it.
4886
4887 2004-08-18  David Schleef  <ds@schleef.org>
4888
4889         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4890         * docs/libs/Makefile.am: same
4891         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4892         * docs/random/ds/0.9-planning: random additions
4893         * docs/random/ds/0.9-suggested-changes: same
4894         * gst/gstxml.h: remove vestigal GstXMLNs definition
4895
4896         Preferred caps: (#147789)
4897         * docs/gst/gstreamer-sections.txt: Add symbols
4898         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4899         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4900         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4901         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4902         (gst_caps_get_preferred), (gst_caps_set_preferred),
4903         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4904         (gst_caps_use_preferred): Handle caps preferences
4905         * gst/gstcaps.h: Add caps preferences
4906         * gst/gstpad.c: (gst_pad_link_get_preferred),
4907         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4908         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4909         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4910         negotiation.
4911
4912 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4913
4914         * gst/autoplug/gstspideridentity.c:
4915         (gst_spider_identity_request_new_pad):
4916         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4917         (gst_aggregator_init):
4918         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4919         (gst_fakesink_init):
4920         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4921         (gst_fakesrc_init):
4922         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4923         (gst_fdsink_init):
4924         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4925         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4926         (gst_filesink_init):
4927         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4928         (gst_filesrc_init):
4929         * gst/elements/gstidentity.c: (gst_identity_base_init),
4930         (gst_identity_init):
4931         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4932         (gst_multifilesrc_init):
4933         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4934         (gst_pipefilter_init):
4935         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4936         (gst_statistics_init):
4937         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4938         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4939           s/gst_pad_new/&_from_template/
4940           register pad templates in the base_init function
4941           add static pad template definitions
4942
4943 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4944
4945         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4946         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4947         * testsuite/refcounting/pad.c: (main):
4948         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4949           s/gst_pad_new/&_from_template/
4950           prepare deprecation of gst_pad_new
4951
4952 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4953
4954         patch by: Luca Ognibene <skaboy81@virgilio.it>
4955
4956         * gst/gstcaps.c:
4957         * gst/gstelement.c:
4958         * gst/gstpad.c:
4959         * gst/gstxml.c:
4960           fix memleaks.  Fixes #150001
4961
4962 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4963
4964         * docs/random/ds/0.9-suggested-changes:
4965           add notes - mostly about pad templates
4966
4967 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
4968
4969         * win32/GStreamer.vcproj:
4970           temporary locale files are .gmo not .mo
4971
4972 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4973
4974         * configure.ac: bump nano to cvs
4975
4976 === release 0.8.5 ===
4977
4978 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4979
4980         * configure.ac:
4981           releasing 0.8.5, "Stuttgart"
4982         * NEWS:
4983         * RELEASE:
4984         * configure.ac:
4985         * docs/random/release:
4986           updates for release
4987
4988 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
4989
4990         patch by: Wim Taymans (wim@fluendo.com)
4991
4992         * gst/gstbuffer.c:
4993         * gst/gstindex.h:
4994         * libs/gst/dataprotocol/dataprotocol.c:
4995           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
4996
4997 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
4998
4999         * Makefile.am:
5000         * win32/MANIFEST:
5001           add win32 dir to the build.  Fixes #149981.
5002
5003 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5004
5005         * configure.ac:
5006           bump libtool versioning
5007         * gst/gststructure.c:
5008           mark function as static
5009         * po/af.po:
5010         * po/az.po:
5011         * po/ca.po:
5012         * po/cs.po:
5013         * po/en_GB.po:
5014         * po/fr.po:
5015         * po/nl.po:
5016         * po/sq.po:
5017         * po/sr.po:
5018         * po/sv.po:
5019         * po/tr.po:
5020         * po/uk.po:
5021           translations update
5022         * win32/README.txt:
5023           trademark protection
5024
5025 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5026
5027         * configure.ac:
5028           fix GST_ORIGIN
5029           set GST_PACKAGE to source, and distinguish between release and other
5030         * tools/gst-inspect.c:
5031           print out plugin an element factory is part of so we see this info
5032
5033 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5034
5035         * docs/gst/gstreamer-sections.txt:
5036         * docs/gst/tmpl/gstbuffer.sgml:
5037         * docs/gst/tmpl/gstschedulerfactory.sgml:
5038           reorder docs a little, make GstBuffer's more sensible.
5039         * gst/gstbuffer.h:
5040           API: added GST_BUFFER_FLAG_DELTA_UNIT
5041         * gst/gstscheduler.c:
5042           comment API addition
5043
5044 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5045
5046         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5047           work with non-regular files that can be mmapped (like /dev/zero)
5048         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5049           get rid of typefinds that require a seek when we can't seek instead
5050           of trying them over and over again
5051         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5052           return non-zero failure value when the pipeline was interrupted or
5053           an error occurred
5054
5055 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5056
5057         * win32/config.h:
5058         * win32/GStreamer.vcproj:
5059           compile and install the locales
5060
5061 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5062
5063         * gst/gstvalue.c:
5064           fix a possible memory leak under Windows
5065
5066 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5067
5068         * win32/GStreamer.vcproj:
5069           fix a memory leak that occured under Windows
5070         * win32/gstreamer.def:
5071           add gst_scheduler_register
5072
5073 2004-08-11  Benjamin Otte  <otte@gnome.org>
5074
5075         * docs/gst/gstreamer-sections.txt:
5076         * gst/gstscheduler.c: (gst_scheduler_register):
5077         * gst/gstscheduler.h:
5078           API:
5079           add gst_scheduler_register shortcut similar to gst_element_register
5080         * gst/schedulers/entryscheduler.c: (plugin_init):
5081         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5082         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5083           use it
5084
5085 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5086
5087         * gst/gstvalue.h:
5088           fix a memory leak that occured under Windows
5089
5090 2004-08-10  Colin Walters  <walters@redhat.com>
5091
5092         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5093         Don't use O_EXCL to open temporary registry.  It will prevent
5094         registry creation if a temporary one already exists, which
5095         is unnecessary.
5096
5097 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5098
5099         * docs/gst/gstreamer-sections.txt:
5100         * docs/gst/tmpl/gstvalue.sgml:
5101           remove some valuable stuff from the documentation due to the use of GST_EXPORT
5102
5103 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5104
5105         * win32/gstbytestream.vcproj:
5106         * win32/gstelements.vcproj:
5107         * win32/gstgetbits.vcproj:
5108         * win32/gst-inspect.vcproj:
5109         * win32/gst-launch.vcproj:
5110         * win32/gstoptimalscheduler.vcproj:
5111         * win32/GStreamer.vcproj:
5112         * win32/gst-register.vcproj:
5113         * win32/gstspider.vcproj:
5114           update the include and lib dirs to fit standard libraries as
5115           described in the Win32 manual
5116
5117 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5118
5119         * win32/config.h:
5120         * win32/gstversion.h:
5121           enable NLS again, push the version number for the coming 0.8.5 release
5122
5123 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5124
5125         * gst/gstvalue.h:
5126           export gst_type_XXX for windows DLLs
5127
5128 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5129
5130         * docs/faq/gst-uninstalled:
5131           fix PKG_CONFIG_PATH and PYTHONPATH
5132         * gst/schedulers/Makefile.am:
5133           cleanup
5134         * libs/gst/bytestream/bytestream.c:
5135           remove newline
5136         * po/LINGUAS:
5137         * po/sq.po:
5138           adding Albanian translation (Laurent Dhima)
5139         * po/cs.po:
5140           updated
5141
5142 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5143
5144         * po/ca.po:
5145         * po/sv.po:
5146           updated translations
5147
5148 2004-08-04  Benjamin Otte  <otte@gnome.org>
5149
5150         * tests/mass_elements.c: (main):
5151           allow specifying src and sink element explicitly, so I can test
5152           videotestsrc instead of fakesrc
5153
5154 2004-08-04  Benjamin Otte  <otte@gnome.org>
5155
5156         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
5157         (gst_structure_id_empty_new), (gst_structure_empty_new),
5158         (gst_structure_copy):
5159           add gst_structure_id_empty_new_with_size to allow preallocating
5160           value array sizes. Use this in gst_structure_copy to get rid of
5161           reallocs.
5162           don't do quark=>string=>quark when copying structures
5163
5164 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
5165
5166         * docs/manual/win32.xml:
5167         * win32/README.txt:
5168           update documentation with the clean version of dependencies
5169
5170 2004-08-03  Benjamin Otte  <otte@gnome.org>
5171
5172         * gst/schedulers/entryscheduler.c:
5173         (gst_entry_scheduler_remove_element):
5174           fix for GST_DISABLE_DEBUG
5175         * tools/gst-launch.c: (print_tag):
5176           fixes for G_DISABLE_ASSERT
5177
5178 2004-08-03  Benjamin Otte  <otte@gnome.org>
5179
5180         * gst/gst.c: (gst_register_core_elements):
5181           fix for G_DISABLE_ASSERT
5182         * gst/gstinfo.c: (__gst_in_valgrind):
5183           add for GST_DISABLE_DEBUG
5184
5185 2004-08-03  Benjamin Otte  <otte@gnome.org>
5186
5187         * gst/parse/parse.l:
5188           fix for G_DISABLE_ASSERT
5189
5190 2004-08-03  Wim Taymans  <wim@fluendo.com>
5191
5192         * gst/gstbin.c: (gst_bin_get_type),
5193         (gst_bin_child_state_change_func):
5194         * gst/gstthread.c: (gst_thread_change_state):
5195         Backported some debug logging from a reverted patch
5196         Don't try to destroy the thread twice. Added some more
5197         debugging in GstThread. Unlock and signal even if we
5198         are in the thread context.
5199
5200 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5201
5202         * po/uk.po:
5203           updated translation
5204
5205 2004-07-30  David Schleef  <ds@schleef.org>
5206
5207         * gst/gstatomic_impl.h: Enable atomic code for x86_64
5208
5209 2004-07-29  David Schleef  <ds@schleef.org>
5210
5211         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
5212         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
5213
5214 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5215
5216         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5217         (gst_bin_add_func), (gst_bin_remove_func),
5218         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
5219         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
5220         (gst_bin_change_state_norecurse), (gst_bin_dispose),
5221         (gst_bin_sync_children_state):
5222         * gst/gstbin.h:
5223         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
5224         (gst_thread_change_state):
5225         * testsuite/states/Makefile.am:
5226           revert state change patches as agreed so we can rework them
5227           gradually
5228
5229 2004-07-29  Benjamin Otte  <otte@gnome.org>
5230
5231         * libs/gst/control/Makefile.am:
5232           link to libgstreamer (fixes Debian bug 262019, see
5233           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
5234
5235 2004-07-29  Wim Taymans  <wim@fluendo.com>
5236
5237         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5238         (check_from_fraction_convert), (transform_test), (main):
5239         Make the test less pedantic about float roundoff errors.
5240
5241 2004-07-29  Benjamin Otte  <otte@gnome.org>
5242
5243         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
5244         (gst_filesrc_srcpad_event):
5245           make seek events to before start/after end of file not fail, but
5246           seek to start/end instead
5247         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
5248           add more output
5249
5250 2004-07-29  Benjamin Otte  <otte@gnome.org>
5251
5252         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5253           check that caps are fixed
5254         * gst/gstpad.c: (gst_pad_template_new):
5255           don't try to simplify caps, costs too much time on gst_init
5256         * gst/gstplugin.c: (gst_plugin_add_feature):
5257           G_ERROR if features are added twice
5258         * gst/gsttypefind.c: (gst_type_find_register):
5259         * gst/gstelementfactory.c: (gst_element_register):
5260           don't add features twice
5261         * docs/random/ds/0.9-suggested-changes:
5262           add note about possible gst_init optimization
5263
5264 2004-07-28  David Schleef  <ds@schleef.org>
5265
5266         * testsuite/elements/Makefile.am:
5267         * testsuite/elements/struct_i386.h:
5268         * testsuite/elements/struct_size.c: (main):  A little test
5269         to keep distcheck from working if someone changes a structure
5270         size accidentally.
5271
5272 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5273
5274         * docs/libs/Makefile.am:
5275         * docs/libs/gstreamer-libs-docs.sgml:
5276         * docs/libs/gstreamer-libs-sections.txt:
5277         * docs/libs/tmpl/gstbytestream.sgml:
5278         * docs/libs/tmpl/gstcontrol.sgml:
5279         * docs/libs/tmpl/gstdataprotocol.sgml:
5280         * docs/libs/tmpl/gstgetbits.sgml:
5281         * libs/gst/bytestream/Makefile.am:
5282         * libs/gst/bytestream/bytestream.c:
5283         * libs/gst/bytestream/bytestream.h:
5284         * libs/gst/control/Makefile.am:
5285         * libs/gst/dataprotocol/Makefile.am:
5286         * libs/gst/getbits/Makefile.am:
5287         * libs/gst/getbits/getbits.h:
5288           various doc and style fixes, adding bytestream to libs docs.
5289
5290 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5291
5292         * docs/gst/gstreamer-docs.sgml:
5293         * docs/libs/Makefile.am:
5294         * docs/libs/gstreamer-libs-docs.sgml:
5295         * docs/libs/gstreamer-libs-sections.txt:
5296         * libs/gst/control/dparam.c:
5297           more doc fixes.  gst-libs docs now build the same way as gst.
5298
5299 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5300
5301         * configure.ac:
5302         * testsuite/Makefile.am:
5303         * testsuite/bins/Makefile.am:
5304         * testsuite/caps/Makefile.am:
5305         * testsuite/cleanup/Makefile.am:
5306         * testsuite/clock/Makefile.am:
5307         * testsuite/debug/Makefile.am:
5308         * testsuite/dlopen/Makefile.am:
5309         * testsuite/dynparams/Makefile.am:
5310         * testsuite/elements/.cvsignore:
5311         * testsuite/elements/Makefile.am:
5312         * testsuite/enumcaps/Makefile.am:
5313         * testsuite/enumcaps/enumcaps.c:
5314         * testsuite/ghostpads/Makefile.am:
5315         * testsuite/indexers/Makefile.am:
5316         * testsuite/negotiation/Makefile.am:
5317         * testsuite/parse/Makefile.am:
5318         * testsuite/plugin/Makefile.am:
5319         * testsuite/refcounting/Makefile.am:
5320         * testsuite/schedulers/.cvsignore:
5321         * testsuite/states/Makefile.am:
5322         * testsuite/tags/Makefile.am:
5323         * testsuite/threads/Makefile.am:
5324           fold enumcaps into caps dir
5325           clean up Makefile.am's for testsuite
5326
5327 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5328
5329         * docs/gst/Makefile.am:
5330         * docs/libs/Makefile.am:
5331           clean up docs build.  Fixes needless rebuilding of template files.
5332
5333 2004-07-28  Wim Taymans  <wim@fluendo.com>
5334
5335         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5336         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5337         Make sure that a bin state change tries to keep the children
5338         in sync. 
5339         Added debug logging to the thread.
5340
5341 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5342
5343         * win32/GStreamer.vcproj:
5344         * win32/gstreamer.def:
5345           more exports for the plugins
5346
5347 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5348
5349         * win32/gstgetbits.vcproj:
5350         * win32/gstgetbits.def:
5351         * win32/msvc71.sln:
5352           add support for the getbits plugin
5353
5354 2004-07-27  Wim Taymans  <wim@fluendo.com>
5355
5356         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5357         (gst_value_transform_fraction_double), (_gst_value_initialize):
5358         * testsuite/caps/Makefile.am:
5359         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5360         (check_from_fraction_convert), (transform_test), (main):
5361         Added transform functions between double and fraction.
5362         Added testcase to verify transforms
5363
5364 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5365
5366         * win32/GStreamer.vcproj:
5367           rename GStreamer-0.8.lib to libgstreamer.lib
5368
5369 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5370
5371         * win32/gstelements.vcproj:
5372         * win32/gstoptimalscheduler.vcproj:
5373           fixes for the Release build
5374
5375 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5376
5377         * win32/config.h:
5378           update the version number
5379
5380 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5381
5382         * win32/GStreamer.vcproj:
5383           add gstinterface to the build
5384
5385 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5386
5387         * win32/gstreamer.def:
5388           add many definitions needed by plugins,
5389           GST_CAT_DEFAULT only available in the Debug build ?
5390
5391 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5392
5393         * gst/gstelement.c: (gst_element_set_eos_recursive):
5394           various whitespace fixes.
5395           doc fix, fixes #148497
5396
5397 2004-07-25  Benjamin Otte  <otte@gnome.org>
5398
5399         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5400           don't delay links on the sink elements, it causes unnegotiated
5401           links.
5402         * gst/elements/gsttypefindelement.c:
5403         (gst_type_find_element_base_init):
5404           add our padtemplates, we indeed do have some.
5405         * gst/elements/gsttypefindelement.c:
5406         (gst_type_find_element_handle_event),
5407         (gst_type_find_element_chain):
5408           don't push data when typefinding failed.
5409         * gst/gstpad.c: (gst_pad_link_fixate):
5410           check that no fixate function returns empty caps.
5411         * gst/gstpad.c: (gst_pad_push):
5412           check that the link is negotiated before data gets pushed.
5413         * tools/gst-register.c: (main):
5414           don't assert (fixes #148283)
5415
5416 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5417
5418         * docs/gst/gstreamer-sections.txt:
5419         * docs/gst/tmpl/gstconfig.sgml:
5420           add GST_PLUGIN_EXPORT definition
5421
5422 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5423
5424         * gst/gstplugin.h:
5425         * gst/gstconfig.h.in:
5426         * win32/gstconfig.h:
5427         * win32/gstelements.def:
5428         * win32/gstelements.vcproj:
5429         * win32/gstoptimalscheduler.def:
5430         * win32/gstoptimalscheduler.vcproj:
5431         * win32/gstspider.def:
5432         * win32/gstspider.vcproj:
5433           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5434
5435 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5436
5437         * docs/gst/gstreamer-sections.txt:
5438           remove GST_CAT_DEFAULT because the type has changed
5439
5440 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5441
5442         * win32/gstbytestream.vcproj:
5443         * win32/gstelements.vcproj:
5444         * win32/gst-inspect.vcproj:
5445         * win32/gst-launch.vcproj:
5446         * win32/gstoptimalscheduler.vcproj:
5447         * win32/GStreamer.vcproj:
5448         * win32/gst-register.vcproj:
5449         * win32/gstspider.vcproj:
5450         * win32/msvc71.sln:
5451           Copy the files where needed after building, The testsuite will be
5452           built separately
5453
5454 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5455
5456         * win32/config.h:
5457         * win32/README.txt:
5458         * docs/manual/win32.xml:
5459         Fixed the plugin and GStreamer location
5460
5461 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5462
5463         * win32/gstreamer.def:
5464         More exports for the plugins
5465
5466 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5467
5468         * gst/gstinfo.h:
5469         Marc was right, we need to export literally GST_CAT_DEFAULT
5470
5471 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5472
5473         * win32/config.h:
5474         NLS crashes in gettext, disabled until this is solved
5475
5476 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5477
5478         * win32/gst-inspect.vcproj:
5479         * win32/gst-launch.vcproj:
5480         Should use NLS when available
5481
5482 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5483
5484         * gst/registries/gstxmlregistry.c:
5485         removing the file doesn't seem to be a good idea on Linux
5486
5487 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5488
5489         * gst/registries/gstxmlregistry.c:
5490         Remove the registry before renaming the tempfile (needed for Windows)
5491
5492 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5493
5494         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5495         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5496         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5497         * gst/elements/gstmultifilesrc.h:
5498         Added newmedia property so it generates newmedia events between each
5499         file when property is set, as well as fixed eos handling
5500
5501 2004-07-22  David Schleef  <ds@schleef.org>
5502
5503         * gst/gststructure.c: (gst_structure_id_empty_new),
5504         (gst_structure_empty_new):  Set type field correctly.
5505         * gst/gststructure.h: Check type field correctly.
5506         * testsuite/caps/Makefile.am:
5507         * testsuite/caps/structure.c: (test1), (main): Add a very small
5508         test for structures.
5509
5510 2004-07-22  David Schleef  <ds@schleef.org>
5511
5512         * docs/random/ds/0.9-suggested-changes: more comments
5513         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5514
5515 2004-07-22  Benjamin Otte  <otte@gnome.org>
5516
5517         * gst/gstelementfactory.c: (gst_element_register):
5518           set the factory in the class struct, so gst_element_get_factory
5519           actually works
5520         * gst/parse/grammar.y:
5521           set element to playing when it gets unlocked as we can't rely on the
5522           bin state - all elements in the bin state might still be locked in
5523           NULL)
5524
5525 2004-07-22  Benjamin Otte  <otte@gnome.org>
5526
5527         * gst/gstelement.c: (gst_element_set_state_func):
5528           make this a static function
5529
5530 2004-07-22  Wim Taymans  <wim@fluendo.com>
5531
5532         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5533         (gst_opt_scheduler_pad_link):
5534         fix 147894-2 and the group_link problem.
5535
5536 2004-07-22  Wim Taymans  <wim@fluendo.com>
5537
5538         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5539         (handoff_identity), (main):
5540         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5541         (handoff_identity), (main):
5542         * testsuite/schedulers/Makefile.am:
5543         * testsuite/schedulers/group_link.c: (main):
5544         Show bug in scheduler when linking chain and loop based element 
5545         where the chain based element was not yet in a group.
5546
5547 2004-07-21  Benjamin Otte  <otte@gnome.org>
5548
5549         * gst/.cvsignore:
5550         * gst/autoplug/.cvsignore:
5551         * gst/elements/.cvsignore:
5552         * gst/indexers/.cvsignore:
5553         * libs/gst/bytestream/.cvsignore:
5554         * libs/gst/control/.cvsignore:
5555         * libs/gst/getbits/.cvsignore:
5556         * testsuite/states/.cvsignore:
5557         * testsuite/threads/.cvsignore:
5558           keep this up to date, since I seem to be the only one who cares
5559           about not missing files on commits (editor's note: no you don't,
5560           but feel free to change them at the time you add stuff instead
5561           of later on)
5562
5563 2004-07-21  Benjamin Otte  <otte@gnome.org>
5564
5565         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5566         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5567         (gst_bin_child_state_change_func), (set_kid_state_func),
5568         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5569           make state changes work correctly and reentrant (so removing
5570           elements from bins during state changes of bins doesn't cause
5571           segfaults or even wrong states)
5572           add debugging category and debugging output to print children states
5573         * gst/gstbin.c: (gst_bin_dispose): 
5574           add some assertion checks
5575         * gst/gstbin.h:
5576         * gst/gstbin.c: (gst_bin_sync_children_state):
5577           deprecate this function - it just does gst_bin_set_state (bin,
5578           GST_STATE (bin)) 
5579         * testsuite/threads/queue.c: (main):
5580           don't use gst_bin_sync_children_state anymore
5581         * testsuite/states/Makefile.am:
5582         * testsuite/states/bin.c:
5583           test that the state changes of bins work as expected
5584         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5585           some adjustments to change states correctly, too
5586         * gst/gstthread.c: (gst_thread_change_state):
5587           don't enable/disable "threadsafe" properties, they're unused and
5588           cause random segfaults
5589         * testsuite/threads/Makefile.am:
5590           the queue check randomly passes now, ignore it
5591
5592 2004-07-21  Benjamin Otte  <otte@gnome.org>
5593
5594         * gst/gstpad.c:
5595           check if data is NULL before outputting debug info. (fixes #145100)
5596
5597 2004-07-21  Benjamin Otte  <otte@gnome.org>
5598
5599         * gst/schedulers/entryscheduler.c:
5600         (gst_entry_scheduler_loop_wrapper),
5601         (gst_entry_scheduler_chain_wrapper),
5602         (gst_entry_scheduler_get_wrapper):
5603           reset the state when the cothread starts, so we don't get assertion
5604           failures on restarting of cothreads
5605
5606 2004-07-20  Benjamin Otte  <otte@gnome.org>
5607
5608         * gst/gstelement.c: (gst_element_link_pads_filtered):
5609           use correct sinkpad, if only sinkpad is specified, but not srcpad
5610           (fixes #147889)
5611         * gst/gstelement.c: (gst_element_set_state_func),
5612         (gst_element_change_state): ref/unref the element, signal handlers
5613         could get rid of the element otherwise
5614
5615 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5616
5617         * docs/random/ds/0.9-suggested-changes:
5618           Make note about renaming fixed-list to array.
5619         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5620         (_gst_value_initialize):
5621           Add array intersections.
5622         * testsuite/caps/intersect2.c: (main):
5623           Add test for array intersections.
5624
5625 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5626
5627         * configure.ac: back to cvs
5628
5629 === release 0.8.4 ===
5630
5631 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5632
5633         * configure.ac:
5634           releasing 0.8.4, "Paella"
5635           bump libtool versioning
5636
5637 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5638
5639         * po/LINGUAS:
5640         * po/ca.po:
5641           adding Catalan translation (Jordi Mallach)
5642
5643 2004-07-20  Wim Taymans  <wim@fluendo.com>
5644
5645         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5646         (handoff_identity), (main):
5647         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5648         (handoff_identity), (main):
5649         * testsuite/schedulers/Makefile.am:
5650         Added failing testcase for variant of #147894
5651
5652 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5653
5654         patch by: David Moore
5655
5656         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5657         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5658         (group_migrate_connected):
5659         * testsuite/schedulers/Makefile.am:
5660           fix for #142813 (Deadlock in optimal scheduler)
5661
5662 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5663
5664         patch by: Wim Taymans
5665
5666         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5667         (gst_opt_scheduler_schedule_run_queue),
5668         (gst_opt_scheduler_get_wrapper), (get_group),
5669         (group_migrate_connected):
5670         * testsuite/schedulers/Makefile.am:
5671           fix for #147819 (Add some checks in the opt scheduler)
5672
5673 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5674
5675         patch by: Benjamin Otte
5676
5677         * gst/gstelementfactory.c: (__gst_element_details_set):
5678           fix for #147929: running gst-register in non-utf8 locale can cause
5679           invalid registry
5680
5681 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5682
5683         patch by: Wim Taymans
5684
5685         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5686         (group_has_element), (element_get_reachables_func),
5687         (group_migrate_connected):
5688           fix for #147894 (opt scheduler decoupled elements mismanagement)
5689         * testsuite/schedulers/Makefile.am:
5690           testsuite app now passes
5691
5692 2004-07-19  Wim Taymans  <wim@fluendo.com>
5693
5694         * testsuite/schedulers/147819.c: (handoff_identity1),
5695         (handoff_identity2), (main):
5696         * testsuite/schedulers/Makefile.am:
5697         Added testcase for bug 147819
5698
5699 2004-07-19  Wim Taymans  <wim@fluendo.com>
5700
5701         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5702         (handoff_identity), (main):
5703         * testsuite/schedulers/Makefile.am:
5704         Added testcase for bug 147894
5705
5706 2004-07-16  Wim Taymans  <wim@fluendo.com>
5707
5708         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5709         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5710         * testsuite/schedulers/Makefile.am:
5711         Added testsuite for bug 142183 in its two incarnations. Refcount
5712         is not increased for scheduled elements and threadsafe properties
5713         mutexes are not properly unlocked.
5714
5715 2004-07-16  Wim Taymans  <wim@fluendo.com>
5716
5717         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5718         (create_chain), (destroy_chain), (create_group), (destroy_group),
5719         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5720         (group_dec_link), (gst_opt_scheduler_pad_link),
5721         (group_inc_links_for_element), (group_migrate_connected):
5722         Call group_inc_link with the proper src->sink ordering -- 
5723         break this, and we break sort_chain. patch from wingo for bug
5724         147713.
5725         Partially revert patch 1.89. When adding a loop based element to 
5726         the scheduler, the links to other groups are automatically followed
5727         and incremented. This should not happen because the bin will call
5728         pad_link explicitly for those connection, resulting in them counted 
5729         twice. Results in assertion failure on pipeline cleanup.
5730
5731 2004-07-16  Wim Taymans  <wim@fluendo.com>
5732
5733         * testsuite/schedulers/143777-2.c: (main):
5734         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5735         (main):
5736         * testsuite/schedulers/Makefile.am:
5737         Added cleanup code to testcase 143777-2.
5738         Added testcase to show bug 147713, does not really show the
5739         deadlock as I can't figure out how to trigger it, but it does
5740         demonstrate bad ordering in the scheduler.
5741
5742 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5743
5744         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5745           change strndup to g_strndup.  Fixes #147707
5746
5747 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5748
5749         * po/af.po:
5750         * po/az.po:
5751         * po/cs.po:
5752         * po/en_GB.po:
5753         * po/fr.po:
5754         * po/nl.po:
5755         * po/sr.po:
5756         * po/sv.po:
5757         * po/tr.po:
5758         * po/uk.po:
5759           updated translations
5760
5761 2004-07-16  Benjamin Otte  <otte@gnome.org>
5762
5763         * gst/gstvalue.c: (gst_greatest_common_divisor):
5764           use ints and return ints, fractions only use ints, too, so this
5765           avoids accidently casting multiplications to unsigned
5766         (gst_value_lcopy_fraction): it's ints, not uint32
5767         (gst_value_set_fraction): disallow minint, multiplying and negation
5768           are broken with it
5769         (gst_value_fraction_multiply): fix to make large numbers work and get
5770         rid of the assumption that the multiplication of two ints fits an
5771         int64 - dunno if that's true for all systems
5772         * testsuite/caps/Makefile.am:
5773         * testsuite/caps/fraction-multiply-and-zero.c:
5774         (check_multiplication), (check_equal), (zero_test), (main):
5775           add tests for all the stuff above
5776         * testsuite/caps/value_compare.c: (test1):
5777           fix comment
5778         * tests/.cvsignore:
5779         * testsuite/caps/.cvsignore:
5780         * testsuite/debug/.cvsignore:
5781         * testsuite/dlopen/.cvsignore:
5782         * testsuite/states/.cvsignore:
5783           get up to date
5784
5785 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5786
5787         * docs/manual/bins-api.xml:
5788         * docs/manual/factories.xml:
5789         * docs/manual/helloworld.xml:
5790         * docs/manual/links-api.xml: 
5791           fixes for out of date info, incorrect info and grammar
5792
5793 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5794
5795         * docs/manual/pads.xml:
5796         * docs/manual/pads-api.xml: grammar fix
5797
5798 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5799
5800         * docs/manual/pads-api.xml: typo + grammar fix
5801
5802 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5803
5804         * docs/gst/gstreamer-sections.txt:
5805           add new symbols
5806         * docs/gst/tmpl/gstelement.sgml:
5807         * docs/gst/tmpl/gstpad.sgml:
5808         * docs/gst/tmpl/gsttypes.sgml:
5809         * docs/gst/tmpl/gstvalue.sgml:
5810           update docs
5811         * gst/gststructure.c: (gst_structure_set_valist),
5812         (gst_structure_from_abbr), (gst_structure_to_abbr):
5813         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5814         (gst_greatest_common_divisor), (gst_value_init_fraction),
5815         (gst_value_copy_fraction), (gst_value_collect_fraction),
5816         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5817         (gst_value_get_fraction_numerator),
5818         (gst_value_get_fraction_denominator),
5819         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5820         (gst_value_deserialize_fraction),
5821         (gst_value_transform_fraction_string),
5822         (gst_value_transform_string_fraction),
5823         (gst_value_compare_fraction), (_gst_value_initialize):
5824         * gst/gstvalue.h:
5825           adding GstFraction GValue type, get/set, and multiply
5826         * testsuite/caps/Makefile.am:
5827         * testsuite/caps/fraction.c: (test), (main):
5828         * testsuite/caps/string-conversions.c: (main):
5829         * testsuite/caps/value_compare.c: (test1), (main):
5830           add regression tests for GstFraction
5831
5832 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5833         
5834         * docs/manual/init-api.xml: Grammar fix
5835
5836 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5837
5838         * docs/manual/states.xml: Fix inconsistent information
5839
5840 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5841
5842         * gst/gstelement.c: (gst_element_set_state):
5843         * gst/gstpad.c: (gst_pad_try_set_caps):
5844         * gst/gststructure.c:
5845         * gst/gstthread.c: (gst_thread_child_state_change):
5846         * gst/gstvalue.c: (gst_value_compare_double):
5847         * gst/gstvalue.h:
5848         * testsuite/parse/parse1.c: (main):
5849           debugging additions and style cleanups
5850
5851 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5852
5853         * docs/manual/states.xml: Grammar fix
5854
5855 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5856
5857         * docs/manual/pads.xml: Grammar fix
5858
5859 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5860
5861         * docs/manual/elements.xml: Fixed image reference
5862
5863 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5864
5865         * docs/manual/goals.xml: Grammar fix
5866
5867 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5868
5869         * docs/manual/motivation.xml:
5870         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5871
5872 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5873
5874         * docs/manual/motivation.xml: Fix spelling
5875
5876 2004-07-15  Benjamin Otte  <otte@gnome.org>
5877
5878         * gst/gstelement.h: 
5879           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5880           strings.
5881         * gst/gstelement.c (gst_element_class_init):
5882           GError's are boxed, not objects
5883         * gst/gstmarshal.list:
5884           update list for the fixed error signal
5885
5886 2004-07-14  Andy Wingo  <wingo@pobox.com>
5887
5888         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5889         there all along, but the function wasn't. (guile-gstreamer's build
5890         system uses the address of the function -- I wasn't actually
5891         trying to use this.)
5892
5893 2004-07-14  Andy Wingo  <wingo@pobox.com>
5894
5895         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5896         as gst_pad_proxy_pad_link) just link to every other pad when they
5897         are called. In the case where the graph has cycles, this will mean
5898         that a call to try_set_caps will recurse. Allow this recursion
5899         and return OK, while we wait for the first try_set_caps to give a
5900         proper return value.
5901         (gst_pad_link_call_link_functions): Since this function is the
5902         only one to set the NEGOTIATING flag on a pad, if the flag is set
5903         it means that the link functions have indirectly recursed. If this
5904         happens, error out to avoid infinite recursion and an eventual
5905         SEGV.
5906         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5907         (gst_pad_proxy_getcaps): Intersect the result with the template
5908         caps to ensure that the return value is valid.
5909
5910 2004-07-14  Andy Wingo  <wingo@pobox.com>
5911
5912         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5913         one refcount, the calling function is the owner of the buffer.
5914
5915 2004-07-14  Wim Taymans  <wim@fluendo.com>
5916
5917         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5918         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5919         Fix stupid warning when an element is to be migrated but
5920         is already migrated.
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         Make sure that a single non-loop-based element does not 
5927         end up in a group. This fixes the testsuite again.
5928
5929 2004-07-14  Wim Taymans  <wim@fluendo.com>
5930
5931         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5932         (add_to_group), (merge_groups), (schedule_group),
5933         (gst_opt_scheduler_get_wrapper), (group_elements),
5934         (group_dec_link), (gst_opt_scheduler_pad_link),
5935         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5936         (gst_opt_scheduler_iterate):
5937         move isolated groups to a new chain.
5938         Emit a warning instead of segfaulting in some error cases.
5939         Fix a bug where the link count between groups was not calculated 
5940         correctly. Fixes #144510.
5941
5942 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5943         * gst/elements/gstfilesrc.c:
5944           Binary files support under Windows now OK
5945       
5946 2004-07-13  Benjamin Otte  <otte@gnome.org>
5947
5948           compatibility fixes for Solaris 8/gcc 2.95
5949         * configure.ac:
5950           include libintl libs in LDFLAGS
5951         * gstvalue.c (gst_value_deserialize_buffer):
5952           cast isxdigit stuff to int to silence compiler warning
5953
5954 2004-07-12  Benjamin Otte  <otte@gnome.org>
5955
5956         * gst/gsttypes.h:
5957           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5958           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5959           just causes support madness
5960         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
5961           make it work without this
5962         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
5963         (gst_file_index_commit):
5964           glib IO channels don't want binary mode
5965         * testsuite/bytestream/filepadsink.c: (main):
5966         * testsuite/bytestream/test1.c: (read_param_file):
5967           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
5968
5969 2004-07-12  Benjamin Otte  <otte@gnome.org>
5970
5971         * gst/gstelement.c: (gst_element_class_init),
5972         (gst_element_set_state), (gst_element_set_state_func):
5973           virutalize gst_element_set_state, use set_state member in class
5974           struct that was already added in 0.7 for this.
5975         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
5976         (gst_bin_change_state):
5977           make gst_bin_foreach works similar to other foreach functions, plug
5978           memleaks in it. Make functions using it work with the new approach.
5979           Document gst_bin_foreach, so it can be exported if we want to
5980         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
5981           use virtualized set_state to make set_state on bins set the state of
5982           all its children.
5983
5984 2004-07-12  Benjamin Otte  <otte@gnome.org>
5985
5986         * configure.ac:
5987           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
5988           http://bugs.gentoo.org/show_bug.cgi?id=53967)
5989         * gst/gstpad.c: (gst_pad_alloc_buffer):
5990           allow buffer_alloc functions to return NULL and allocate a normal
5991           buffer in that case
5992
5993 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
5994         * gst/elements/gstfilesink.c:
5995         * gst/elements/gstfilesrc.c:
5996         * gst/indexers/gstfileindex.c:
5997         * gst/gsttypes.h:
5998         * testsuite/bytestream/filepadsink.c:
5999         * testsuite/bytestream/test1.c:
6000           Handle binary files under Windows
6001
6002 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6003         * docs/manual/win32.xml:
6004         * win32/config.h:
6005         * win32/gst-register.vcproj:
6006         * win32/gstreamer.def:
6007           Update to another gettext public build
6008
6009 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6010         * gst/gstplugin.c:
6011           Fix an impossible C syntax
6012         * win32/config.h:
6013           Disable i18n under Windows for the moment
6014         * win32/gst-register.vcproj:
6015           Use this configuration
6016
6017 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
6018         * docs/manual/quotes.xml:
6019           Keep the quotes file alive
6020         * docs/random/ds/0.9-suggested-changes:
6021           Add the suggestion of including a 'rowstride' as part of video
6022           format caps
6023
6024 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6025
6026         * gst/gstelement.c: (gst_element_set_state),
6027         (gst_element_change_state):
6028           d'oh.  Set PENDING state correctly before forcing bin to change.
6029         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6030         (gst_structure_parse_fixed_list):
6031         * gst/schedulers/gstoptimalscheduler.c:
6032         (gst_opt_scheduler_state_transition):
6033         * testsuite/states/parent.c: (main):
6034           remove comment now that it's fixed.
6035
6036 2004-07-11  Benjamin Otte  <otte@gnome.org>
6037
6038         * gst/gstclock.h:
6039           GST_SECOND shouldn't cause a conversion to unsigned.
6040         * testsuite/clock/.cvsignore:
6041         * testsuite/clock/Makefile.am:
6042         * testsuite/clock/signedness.c: (main):
6043           make sure it never will again
6044
6045 2004-07-11  Andy Wingo  <wingo@pobox.com>
6046
6047         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6048         whose state is higher than the bin state, raise the bin state to
6049         ensure that bin state := highest child state.
6050         
6051 2004-07-11  Andy Wingo  <wingo@pobox.com>
6052
6053         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6054         procedure on the children of a bin. Assumes that the procedure can
6055         change the set of children.
6056         (set_kid_state_func): New static function.
6057         (gst_bin_change_state): Use gst_bin_foreach to call
6058         set_kid_state_func. Fixes a bug: if a child had a state-change
6059         handler that removes it from the bin, there would be a segfault.
6060         Hopefully it should also work in the case where the state-change
6061         handler on one child adds or removes other children. In any case,
6062         fixes should go to gst_bin_foreach.
6063
6064 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6065
6066         * gst/gstelement.c: (gst_element_set_state):
6067           compatibility fix for latest plugins release.  Change loop back
6068           to while {}
6069
6070 2004-07-09  Wim Taymans  <wim@fluendo.com>
6071
6072         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6073         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6074         (gst_thread_main_loop):
6075         Since remove is virtual in GstBin we must not assume the 
6076         elements GList to have anothing useful.
6077         Add some more logging to GstThread and be a bit more paranoid
6078         when resetting the scheduler.
6079         Set the state of the bin to NULL before removing the children.
6080
6081 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6082
6083         * testsuite/threads/Makefile.am:
6084         * testsuite/threads/threadg.c:
6085           added test to check if problem when removing all elements from a
6086           GstThread before setting GstThread state to NULL
6087
6088 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6089
6090         * docs/gst/tmpl/gstelement.sgml:
6091         * docs/gst/tmpl/gsttypes.sgml:
6092         * gst/gstbin.c: (gst_bin_change_state):
6093         * gst/gstelement.c: (gst_element_set_state),
6094         (gst_element_change_state):
6095           rework so that for bins we try to set the state on all children
6096           as well even if the bin is in the correct state already.
6097           change while to do so at least one iteration is done.
6098           For regular elements, we fall back to the previous behaviour for
6099           now since we first need a new plugins release.
6100         * testsuite/states/parent.c: (main):
6101           test for this case
6102           Fixes #123774
6103
6104 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6105
6106         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
6107         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
6108         (gst_queue_release_locks), (gst_queue_change_state),
6109         (gst_queue_set_property):
6110           add proper lock debugging.  Change dispose to finalize, since
6111           we're freeing mutexes and other stuff which should happen only once.
6112
6113 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6114
6115         * docs/gst/tmpl/gstelement.sgml:
6116         * docs/gst/tmpl/gstplugin.sgml:
6117         * docs/gst/tmpl/gsttypes.sgml:
6118         * docs/pwg/building-state.xml:
6119         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
6120         * gst/gstelement.c: (gst_element_change_state):
6121         * gst/gstthread.c: (gst_thread_change_state):
6122           catch wrong state changes in element base class.
6123
6124 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6125
6126         * gst/gstinfo.h:
6127           clean up layout a little.
6128
6129 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6130
6131         * configure.ac:
6132         * testsuite/Makefile.am:
6133         * testsuite/states/Makefile.am:
6134         * testsuite/states/parent.c: (main):
6135           re-enable states testsuite dir.  Add test for state changes and
6136           parent behaviour
6137
6138 2004-07-09  Wim Taymans  <wim@fluendo.com>
6139
6140         * gst/schedulers/gstoptimalscheduler.c:
6141         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
6142         (element_get_reachables_func), (element_get_reachables),
6143         (debug_element), (rechain_group), (group_migrate_connected),
6144         (gst_opt_scheduler_pad_unlink):
6145         Do not try to migrate decoupled elements to a new group since
6146         they are not added to groups.
6147
6148 2004-07-08  Benjamin Otte  <otte@gnome.org>
6149
6150         * gst/gstelement.c: (gst_element_error_func):
6151           make reentrant (= allow removing elements in error handler)
6152
6153 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6154
6155         * gst/gstpad.c: (gst_pad_event_default_dispatch),
6156         (gst_pad_send_event), (gst_pad_call_chain_function):
6157           events sent to elements below PAUSED cannot be handled, so
6158           don't try to
6159
6160 2004-07-08  Wim Taymans  <wim@fluendo.com>
6161
6162         * gst/schedulers/gstoptimalscheduler.c:
6163         (chain_recursively_migrate_group), (create_group),
6164         (schedule_group), (gst_opt_scheduler_pad_link),
6165         (group_elements_set_visited), (element_get_reachables_func),
6166         (element_get_reachables), (group_can_reach_group), (debug_element),
6167         (rechain_group), (group_migrate_connected),
6168         (gst_opt_scheduler_pad_unlink):
6169         * testsuite/schedulers/Makefile.am:
6170         Implemented group splitting and rechaining.
6171         Fixes 143777 and 143777-2 in the testsuite.
6172
6173 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6174
6175         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6176           extra debugging
6177         * gst/gstevent.h:
6178         * gst/gstinfo.c: (gst_debug_log_default):
6179           print time nicely.  add thread pointer until someone figures out
6180           a completely portable way of getting at thread id's.
6181         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
6182         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
6183         (gst_pad_call_chain_function):
6184           extra debugging
6185         * gst/schedulers/gstoptimalscheduler.c:
6186         (get_group_schedule_function), (loop_group_schedule_function),
6187         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6188         (pad_clear_queued), (gst_opt_scheduler_iterate):
6189           rename BUFPEN and friends to DATAPEN since that's what they are.
6190
6191 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6192
6193         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6194         * gst/gstbuffer.h:
6195         * gst/gstpad.c:
6196           cleanups and debugging
6197
6198 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6199
6200         * configure.ac:
6201         * gst/gstvalue.c: (gst_value_compare_enum),
6202         (gst_value_serialize_enum), (gst_value_deserialize_enum),
6203         (gst_value_can_compare), (gst_value_compare):
6204         * testsuite/Makefile.am:
6205         * testsuite/enumcaps/Makefile.am:
6206         * testsuite/enumcaps/enumcaps.c:
6207           Fix enum serialization, deserialization, comparison in caps, add
6208           a test to ensure that this continues working in the future.
6209
6210 2004-07-06  David Schleef  <ds@schleef.org>
6211
6212         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6213         Fix memleak.
6214
6215 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6216
6217         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
6218         * gst/gstplugin.h:
6219         * gst/registries/gstxmlregistry.c:
6220         (plugin_times_older_than_recurse), (plugin_times_older_than),
6221         (gst_xml_registry_parse_padtemplate):
6222           only rebuild registry when actual plugins have a newer time than
6223           the registry.  Fixes #145520
6224
6225 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6226
6227         * docs/manual/manual.xml:
6228         * docs/manual/win32.xml:
6229           add chapter on win32 building.  fixes #142422
6230
6231 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6232
6233         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
6234
6235         * gst/autoplug/gstspider.c: (gst_spider_init),
6236         (gst_spider_dispose):
6237           fix spider memleaks.  fixes #137863
6238
6239 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6240
6241         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
6242
6243         * gst/schedulers/gstoptimalscheduler.c:
6244         (gst_opt_scheduler_pad_unlink):
6245           fix SIGBUS error, fixes #145338
6246
6247 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6248
6249         * gst/gstobject.c: (gst_object_replace):
6250         * gst/gstscheduler.c: (gst_scheduler_get_clock):
6251         * gst/gstsystemclock.c: (gst_system_clock_obtain):
6252           clean up clock lifecycle.  Fixes #109831
6253
6254 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6255
6256         * po/LINGUAS:
6257         * po/cs.po:
6258           added Czech translation (Miloslav Trmac)
6259
6260 2004-07-04  David Schleef  <ds@schleef.org>
6261
6262         * tools/Makefile.am:
6263         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
6264
6265 2004-07-04  David Schleef  <ds@schleef.org>
6266
6267         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
6268
6269 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6270
6271         * gst/gstbin.c: (gst_bin_restore_thyself):
6272           chain to parent restore so the bins get restored correctly
6273           in the editor
6274
6275 2004-07-03  David Schleef  <ds@schleef.org>
6276
6277         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6278         Actually do something in these functions, like before the big
6279         caps change.  (bug #145137)
6280
6281 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6282
6283         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6284         (gst_element_get_compatible_pad_filtered):
6285         * gst/gstthread.c: (gst_thread_main_loop):
6286           more debugging
6287
6288 2004-07-02  David Schleef  <ds@schleef.org>
6289
6290         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6291         * gst/gstobject.h:
6292         * gst/gstparse.h:
6293         * gst/gsttrace.h:
6294         * gst/gstxml.h:
6295
6296 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6297
6298         * gst/gstpad.c: (gst_pad_check_schedulers),
6299         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6300         (gst_pad_link_prepare):
6301           revert until testsuite is fixed
6302
6303 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6304
6305         * testsuite/Makefile.am:
6306         * testsuite/caps/filtercaps.c: (main):
6307         * testsuite/clock/clock1.c: (main):
6308         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6309           fix some more tests
6310
6311 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6312
6313         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6314         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6315         * testsuite/cleanup/cleanup4.c: (main):
6316           fix testsuite
6317
6318 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6319
6320         * libs/gst/control/control.c:
6321         * libs/gst/control/dparam.c:
6322         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6323         * libs/gst/control/dparammanager.c:
6324         * libs/gst/control/dparammanager.h:
6325         * testsuite/dynparams/Makefile.am:
6326         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6327         (gst_dptest_change_state), (gst_dptest_chain), (main):
6328           fix testcase for dparams
6329           add debugging category
6330
6331 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6332
6333         * testsuite/Rules:
6334           change path
6335
6336 2004-07-02  Benjamin Otte  <otte@gnome.org>
6337
6338         * tests/.cvsignore:
6339         * tests/Makefile.am:
6340         * tests/mass_elements.c: (gst_get_current_time), (main):
6341           add simple benchmark to test various speeds of fakesrc ! identity !
6342           identity ! ... ! fakesink.
6343           Usage: mass_elements [num_identities] [num_buffers]
6344           If not specified they default to 1000.
6345
6346 2004-07-02  Benjamin Otte  <otte@gnome.org>
6347
6348         * gst/gstpad.c: (gst_pad_check_schedulers),
6349         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6350         (gst_pad_link_prepare):
6351           check that pads that get linked belong to the same manager. The old
6352           code allowed linking elements before putting them into bins, so it
6353           worked to link them and then put them in different threads, which
6354           lead to weird behaviour.
6355           Since this effectively disallows linking elements before putting
6356           them in a bin, some applications might not work after this and error
6357           out. If these applications are too critical, we might need to revert
6358           that patch. Please test this before the next release...
6359
6360 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6361
6362         * gst/gstpad.c: (gst_pad_get_caps):
6363           throw an error if the getcaps function does not return a subset of
6364           the template caps.
6365         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6366           make disconts without position info an error in debugging
6367         * tests/spidey_bench.c: (handoff), (main):
6368           don't count first try when averaging
6369
6370 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6371
6372         * gst/gstplugin.c: (gst_plugin_load_file):
6373           figure out problem with dynamic test
6374
6375 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6376
6377         * docs/gst/Makefile.am:
6378           fix docs build
6379
6380 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6381
6382         * po/POTFILES.in:
6383         * po/af.po:
6384         * po/az.po:
6385         * po/en_GB.po:
6386         * po/fr.po:
6387         * po/nl.po:
6388         * po/sr.po:
6389         * po/sv.po:
6390         * po/tr.po:
6391         * po/uk.po:
6392         * tools/gst-register.c: (plugin_added_func), (main):
6393           i18n-ize -register, fix plural
6394
6395 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6396
6397         * gst/elements/gstidentity.c: (gst_identity_class_init),
6398         (gst_identity_init), (gst_identity_chain),
6399         (gst_identity_set_property), (gst_identity_get_property):
6400         * gst/elements/gstidentity.h:
6401           check for perfect stream
6402
6403 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6404
6405         * gst/elements/gstidentity.c: (gst_identity_chain):
6406           print offset_end
6407
6408 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6409
6410         * docs/gst/Makefile.am:
6411         * docs/gst/gstreamer-docs.sgml:
6412           doc fixes
6413
6414 2004-06-24  David Schleef  <ds@schleef.org>
6415
6416         * autogen.sh:  Remove call to env, since the buildbot isn't
6417         broken anymore.
6418
6419 2004-06-24  Wim Taymans  <wim@fluendo.com>
6420
6421         * gst/elements/Makefile.am:
6422         * gst/elements/gstelements.c:
6423         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6424         (gst_multifdsink_class_init), (gst_multifdsink_init),
6425         (gst_multifdsink_add), (gst_multifdsink_remove),
6426         (gst_multifdsink_clear), (gst_multifdsink_chain),
6427         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6428         * gst/elements/gstmultifdsink.h:
6429         Added an element that writes to multiple filedescriptors at once.
6430
6431 2004-06-24  Benjamin Otte  <otte@gnome.org>
6432
6433         * gst/parse/grammar.y:
6434           don't try to link elements before they have been added to bins
6435
6436 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6437
6438         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6439         (gst_file_pad_get_length):
6440         * libs/gst/bytestream/filepad.h:
6441           add 2 new functions
6442
6443 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6444
6445         * docs/gst/gstreamer-sections.txt:
6446         remove from docs, the define that Benjamin removed from gstelement.h
6447
6448 2004-06-22  Benjamin Otte  <otte@gnome.org>
6449
6450         * gst/gstelement.h:
6451           remove define that referenced a nonexisting GstElement struct member
6452
6453 2004-06-20  Benjamin Otte  <otte@gnome.org>
6454
6455         * gst/gstdata.c: (gst_data_is_writable):
6456           whoops, return values were wrong, so writable data was marked as
6457           non-writable and vice versa. (fixes #143953, spotted by Francis
6458           Labonte)
6459           Shows how rarely we need to copy data ;)
6460
6461 2004-06-20  Benjamin Otte  <otte@gnome.org>
6462
6463         * testsuite/schedulers/.cvsignore:
6464         * testsuite/schedulers/Makefile.am:
6465         * testsuite/schedulers/143777-2.c: (main):
6466           add test for opt breakage in bug #143777
6467
6468 2004-06-20  Benjamin Otte  <otte@gnome.org>
6469
6470         * gst/gstpad.c: (gst_pad_call_chain_function):
6471           check for if we were unlinked while inside the chainfunction (fixes
6472           entrygthread having issues with #143777)
6473         * testsuite/schedulers/143777.c: (main):
6474         * testsuite/schedulers/Makefile.am:
6475           add a test for that fix
6476
6477 2004-06-20  Benjamin Otte  <otte@gnome.org>
6478
6479         * gst/gstvalue.c: (gst_value_set_int_range):
6480           test that start is smaller then end
6481         * libs/gst/bytestream/Makefile.am:
6482         * libs/gst/bytestream/filepad.c: 
6483         * libs/gst/bytestream/filepad.h:
6484           add GstFilePad - a pad that behaves like a FILE*
6485         * testsuite/bytestream/.cvsignore:
6486         * testsuite/bytestream/Makefile.am:
6487         * testsuite/bytestream/filepadsink.c: 
6488           test for the GstFilePad
6489
6490 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6491
6492         * gst/elements/gstidentity.c: (gst_identity_class_init),
6493         (gst_identity_init), (gst_identity_set_clock),
6494         (gst_identity_chain), (gst_identity_set_property),
6495         (gst_identity_get_property):
6496         * gst/elements/gstidentity.h:
6497         * gst/gstclock.c: (gst_clock_id_wait):
6498           add a "sync" property to sync to the clock
6499
6500 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6501
6502         * gst/gstelementfactory.c: (gst_element_factory_create):
6503           make the freakin "elementfactory bla has no type" message more
6504           useful. So we actually can do something when someone shows up
6505           complaining about it.
6506
6507 2004-06-15  Johan Dahlin  <johan@gnome.org>
6508
6509         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6510         found. This matches the old behavior better. Thanks to Thomas for
6511         pointing out.
6512
6513 2004-06-14  David Schleef  <ds@schleef.org>
6514
6515         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6516         -fomit-frame-pointer.  Appears to generate correct code in
6517         other cases as well.
6518
6519 2004-06-14  Johan Dahlin  <johan@gnome.org>
6520
6521         * tools/gst-inspect.c (main): Add two new command line options: -a
6522         to print all elements and -n to print the name on each line. Also
6523         fix some error reporting.
6524         (main): Simplify, remove -n and always print names if -a is specified
6525
6526 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6527
6528         * win32/gstconfig.h:
6529         * win32/GSTreamer.vcproj:
6530         * win32/Makefile:
6531         * gst/gstconfig.h.in:
6532         * gst/gst.h:
6533         * gst/gstbin.h:
6534         * gst/gstelement.h:
6535         * gst/gstevent.h:
6536         * gst/gstobject.h:
6537         * gst/gstpad.h:
6538         * docs/gst/gstreamer-sections.txt:
6539         * docs/gst/tmpl/gstconfig.sgml:
6540           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6541
6542 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6543         * docs/gst/gstreamer-sections.txt:
6544         * docs/gst/tmpl/gstconfig.sgml:
6545         Add the GSTREAMER_EXPORT macro to the docs
6546
6547 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6548
6549         * tools/gst-compprep.c: (handle_xmlerror), (main):
6550         Add a check for the version that introduced SetStructuredError to fix
6551         the build on FC1
6552
6553 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6554
6555         * win32/msvc71.sln:
6556         * win32/testsuite/:
6557           prepare to compile the testsuite with MSVC
6558
6559 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6560
6561         * docs/manual/win32.xml:
6562           attempt to transform the Win32 README into an XML doc
6563
6564 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6565
6566         * gst/gst.c:
6567         * gst/gstbin.*:
6568         * gst/config.h.in:
6569         * gst/gstelement.*:
6570         * gst/gstevent.h:
6571         * gst/gstobject.*:
6572         * gst/gstpad.h:
6573         * tools/gst-register.c:
6574         * win32/gstreamer.def:
6575           extern symbols are now exported for the Windows DLL
6576
6577 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6578
6579         * gst/gstinfo.h:
6580           fix a problem to enable/disable DEBUG under MSVC
6581
6582 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6583
6584         * win32/:
6585           enable more debug code in DEBUG build
6586
6587 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6588
6589         * win32/config.h:
6590         * gst/gst-i18n-app.h:
6591           enable NLS under Windows
6592
6593 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6594         * tools/gst-compprep.c: (handle_xmlerror), (main):
6595           Make an error that baffled me a bit clearer
6596
6597 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6598
6599         * gst/gstqueue.c:
6600           don't use g_queue_get_length () because it's 2.4, use ->length
6601
6602 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6603
6604         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6605
6606         * tools/gst-inspect.c: (print_signal_info):
6607           don't free random data twice. (fixes #144185)
6608
6609 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6610
6611         * gst/gstqueue.c:
6612         * gst/gstqueue.h:
6613           fix removing from the wrong queue on event timeout
6614           fix disposing of the event queue by casting correctly
6615           add mutexes for handling the event queue
6616           someone was sleeping when fixing queue last time around :)
6617
6618 2004-06-10  Johan Dahlin  <johan@gnome.org>
6619
6620         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6621         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6622
6623 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6624
6625         * docs/random/gdp:
6626         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6627         * libs/gst/dataprotocol/dataprotocol.c:
6628         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6629         (gst_dp_buffer_from_header):
6630         * libs/gst/dataprotocol/dataprotocol.h:
6631         * libs/gst/dataprotocol/dp-private.h:
6632           rev version to 0.1, add buffer flags and copy them
6633
6634 2004-06-09  Johan Dahlin  <johan@gnome.org>
6635
6636         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6637         the flags from the buffer we're copying.
6638
6639 2004-06-09  Wim Taymans  <wim@fluendo.com>
6640
6641         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6642         * gst/elements/gstidentity.c: (gst_identity_init),
6643         (gst_identity_chain):
6644         Print more buffer info in fakesink.
6645         Make identity output similar to fakesink.
6646
6647 2004-06-07  Daniel Gazard  <dany42@free.fr>
6648
6649         reviewed by Benjamin Otte  <otte@gnome.org>
6650
6651         * configure.ac:
6652           fix cross compiling not working. (fixes #143741)
6653
6654 2004-06-07  Benjamin Otte  <otte@gnome.org>
6655
6656         * gst/gstelement.c: (gst_element_set_time_delay):
6657           add failure check
6658         * gst/gstinfo.h:
6659           put brackets around macro arguments of GST_TIME_ARGS, add note to
6660           move it to correct header in 0.9
6661
6662 2004-06-07  Benjamin Otte  <otte@gnome.org>
6663
6664         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6665         (gst_file_index_load), (_file_index_id_save_entries),
6666         (gst_file_index_commit), (gst_file_index_add_association),
6667         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6668         (gst_file_index_plugin_init):
6669           make debugging use a default category
6670
6671 2004-06-06  David Moore  <dcm@acm.org>
6672
6673         reviewed by Benjamin Otte  <otte@gnome.org>
6674
6675         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6676         (gst_fdsrc_change_state):
6677           reset offset counter when going READY => PAUSED. (fixes #142903)
6678
6679 2004-06-06  ed@catmur.co.uk
6680
6681         reviewed by Benjamin Otte  <otte@gnome.org>
6682
6683         * gst/registries/gstxmlregistry.c:
6684         (gst_xml_registry_rebuild_recurse):
6685           don't rely on g_dir_open to figure out if a file is a directory, use
6686           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6687           directories. (fixes #142850)
6688
6689 2004-06-06  Benjamin Otte  <otte@gnome.org>
6690
6691         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6692           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6693         * libs/gst/bytestream/adapter.c:
6694         * libs/gst/bytestream/adapter.h:
6695           fix copyright in header and typo in debugging category name
6696
6697 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6698
6699         * configure.ac:
6700           bump nano to cvs
6701
6702 === release 0.8.3 ===
6703
6704 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6705
6706         * configure.ac:
6707           update libtool versioning
6708           do a new release
6709         * docs/gst/tmpl/gstelement.sgml:
6710         * docs/gst/tmpl/gsttypes.sgml:
6711         * gst/gstinfo.c: (_gst_debug_init):
6712           put back GST_CAT_DATAFLOW to fix API breakage
6713
6714 2004-06-04  David Schleef  <ds@schleef.org>
6715
6716         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6717
6718 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6719
6720         * configure.ac:
6721           bump nano to cvs
6722
6723 === release 0.8.2 ===
6724
6725 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6726
6727         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6728           check GST_DEBUG environment variable which is parsed the same way
6729           as --gst-debug=
6730
6731 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6732
6733         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6734                             gstmd5sink.c gstshaper.c gsttee.c
6735                             gsttypefindelement.c
6736         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6737
6738           - removing trailing commas at end of enums
6739             it is correct C99 code but C90 compilers would complain
6740             (AIX, Forte, ...)
6741             ('should' fix #143290, at least partially)
6742
6743 2004-05-27  Wim Taymans  <wim@fluendo.com>
6744
6745         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6746         (chain_group_set_enabled), (create_group), (add_to_group),
6747         (merge_groups), (setup_group_scheduler), (group_elements),
6748         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6749         Don't try to follow the pad connections with other groups
6750         when a loop based element is added to the scheduler because
6751         the bin will inform the scheduler about the pad links a little
6752         later.
6753
6754 2004-05-27  Wim Taymans  <wim@fluendo.com>
6755
6756         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6757         (remove_from_chain), (chain_group_set_enabled),
6758         (setup_group_scheduler), (group_element_set_enabled),
6759         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6760         (gst_opt_scheduler_show):
6761         Elements without a group can do a state change as well, just wait
6762         with the setup of the scheduling function when it is added to a
6763         chain.
6764
6765 2004-05-27  Wim Taymans  <wim@fluendo.com>
6766
6767         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6768         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6769         (merge_groups), (setup_group_scheduler),
6770         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6771         (gst_opt_scheduler_show):
6772         Fixes to maintain internal consistency of the scheduler data
6773         structures. 
6774          - adding an enabled group to a chain should increment the
6775            number of enabled elements in that chain.
6776          - removing an enabled group from a chain could disable the
6777            chain.
6778          - removing a disabled group from a chain could enable the
6779            chain.
6780          - add g_assert when internal inconsistency is detected.
6781          - adding an element to a group could increase the number of
6782            links this group has with other groups.
6783          - merging two groups also merges the chains.
6784          - also show group links in the _show method.
6785            
6786
6787 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6788
6789         * gst/gstcaps.c: (gst_caps_structure_simplify):
6790           don't print error messages when there is no error
6791         * gst/gstvalue.c: (gst_value_compare_int_range):
6792           compare the second value, too
6793         * testsuite/caps/Makefile.am:
6794         * testsuite/caps/random.c: (assert_on_error), (main):
6795           add tests to make sure the two things above are checked for
6796
6797 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6798
6799         * configure.ac:
6800         * libs/gst/dataprotocol/Makefile.am:
6801         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6802         * libs/gst/dataprotocol/dataprotocol.h:
6803           wrap header in GST_ENABLE_NEW.  make code use it
6804
6805 2004-05-23  Johan Dahlin  <johan@gnome.org>
6806
6807         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6808         so verbose and print GstElement signal names all the time.
6809
6810 2004-05-22  David Schleef  <ds@schleef.org>
6811
6812         * gst/registries/gstxmlregistry.c:
6813         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6814         (bug #142957)
6815
6816 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6817
6818         * configure.ac:
6819           scrub cflags for glib2 so gcc doesn't complain when glib is in
6820           /usr/local
6821
6822 2004-05-21  Johan Dahlin  <johan@gnome.org>
6823
6824         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6825         __GNUC__, patch from Brian Cameron, fixes bug #142804
6826
6827 2004-05-20  David Schleef  <ds@schleef.org>
6828
6829         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6830         comparison code.  (bug #142819)
6831
6832 2004-05-20  Wim Taymans  <wim@fluendo.com>
6833
6834         * gst/gstbuffer.c: (gst_buffer_default_copy):
6835         * gst/gstbuffer.h:
6836         Added Comment to a flag.
6837         copy relevant flags in _buffer_copy.
6838
6839 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6840
6841         reviewed by: Wim Taymans <wim at fluendo dot com>
6842
6843         * gst/gstbuffer.h:
6844           add GST_BUFFER_IN_CAPS buffer flag
6845         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6846         (gst_structure_parse_any_list), (gst_structure_parse_list),
6847         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6848         * gst/gstvalue.c: (gst_value_serialize_any_list),
6849         (gst_value_transform_any_list_string),
6850         (gst_value_list_prepend_value), (gst_value_list_append_value),
6851         (gst_value_list_get_size), (gst_value_list_get_value),
6852         (gst_value_transform_list_string),
6853         (gst_value_transform_fixed_list_string),
6854         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6855         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6856         (_gst_value_initialize):
6857         * gst/gstvalue.h:
6858           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6859           < , > as a format.
6860         * testsuite/caps/string-conversions.c: (main):
6861           add regression tests for < >
6862
6863 2004-05-20  Johan Dahlin  <johan@gnome.org>
6864
6865         * docs/gst/Makefile.am (all-local): Re-add
6866
6867 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6868
6869         * docs/gst/Makefile.am:
6870         * docs/gst/gstreamer-docs.sgml:
6871         * docs/libs/Makefile.am:
6872         * docs/libs/gstreamer-libs-docs.sgml:
6873           fix distcheck issues
6874
6875 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6876
6877         * libs/gst/dataprotocol/Makefile.am:
6878           add to autotest
6879
6880 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6881
6882         * libs/gst/dataprotocol/Makefile.am:
6883         * libs/gst/dataprotocol/dataprotocol.c:
6884         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6885         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6886         * libs/gst/dataprotocol/dp-private.h:
6887           use GST macros to read/write fixed length ints
6888           add some more asserts
6889
6890 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6891
6892         * docs/libs/gstreamer-libs-docs.sgml:
6893         * docs/libs/gstreamer-libs-sections.txt:
6894           remove idct and putbits
6895         * configure.ac:
6896         * docs/libs/tmpl/gstdataprotocol.sgml:
6897         * libs/gst/Makefile.am:
6898         * libs/gst/dataprotocol/Makefile.am:
6899         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6900         (buffer_test), (caps_test), (event_test), (main):
6901         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6902         (gst_dp_dump_byte_array), (gst_dp_init),
6903         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6904         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6905         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6906         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6907         (gst_dp_validate_header), (gst_dp_validate_payload),
6908         (gst_dp_validate_packet), (plugin_init):
6909         * libs/gst/dataprotocol/dataprotocol.h:
6910         * libs/gst/dataprotocol/dp-private.h:
6911           add dataprotocol
6912
6913 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6914
6915         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6916           fix int variable deserialization and add a helper so we can actually
6917           debug this.
6918
6919 2004-05-18  David Schleef  <ds@schleef.org>
6920
6921         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6922           argv[0].  Calling yourself is probably not the best way to
6923           construct a test like this, btw.
6924
6925 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6926
6927         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6928           don't claim to be more intelligent than a scheduler when the
6929           scheduler claims the pipeline is stopped
6930         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6931         (safe_cothread_destroy),
6932         (gst_entry_scheduler_remove_all_cothreads),
6933         (gst_entry_scheduler_reset), (_remove_cothread),
6934         (gst_entry_scheduler_state_transition):
6935           hold off cothread destruction if we're not in main cothread
6936         * configure.ac:
6937         * testsuite/Makefile.am:
6938           add new test dir
6939         * testsuite/schedulers/.cvsignore:
6940         * testsuite/schedulers/Makefile.am:
6941           add tests
6942         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6943           check relinking and adding/removing elements from a running pipeline
6944         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6945           check unlinking in a running pipeline
6946         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6947           check unreffing a running pipeline
6948         * testsuite/schedulers/useless_iteration.c: (main):
6949           check iterating a pipeline that contains running threads works
6950
6951 2004-05-18  David Schleef  <ds@schleef.org>
6952
6953         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6954           is false.
6955
6956 2004-05-18  Wim Taymans  <wim@fluendo.com>
6957
6958         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6959         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
6960         Fixed an error introduced with patch for 1.63. When setting
6961         a get based element as the entry point in a group, make sure
6962         to mark the group as GET based.
6963
6964 2004-05-18  Wim Taymans  <wim@fluendo.com>
6965
6966         * gst/schedulers/gstoptimalscheduler.c: (create_group),
6967         (setup_group_scheduler), (loop_group_schedule_function),
6968         (gst_opt_scheduler_pad_link):
6969         Added some more debug info and fixed a bug where the group
6970         type was set to LOOP but it was in fact unknown.
6971
6972 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6973
6974         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
6975           make resetting scheduler work twice in a row
6976
6977 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6978
6979         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
6980         (CREATE_USERIALIZATION), (_gst_value_initialize),
6981         (gst_value_compare_float), (gst_value_serialize_float),
6982         (gst_value_deserialize_float), (gst_value_compare_enum),
6983         (gst_value_serialize_enum), (gst_value_deserialize_enum):
6984           add serialization and comparison functions for long, int64, enum and
6985           float values
6986         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
6987           use best serialization function in type hierarchy instead of only a
6988           matching one. This is required for enums to work.
6989         * gst/parse/grammar.y:
6990           use gst_caps_deserialize
6991         * testsuite/parse/Makefile.am:
6992           parse1 now works
6993         * testsuite/parse/parse1.c: (main):
6994           remove aggregator check, aggregator is broken, this test works now
6995           but fails because of bug #138012
6996         * testsuite/parse/parse2.c: (main):
6997           s/xvideosink/xvimagesink - this test looks a lot like we should
6998           disable it
6999
7000 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7001
7002         * gst/gstelement.c: (gst_element_class_init):
7003           whoops, store the signal id correctly
7004         * gst/schedulers/gstbasicscheduler.c:
7005         (gst_basic_scheduler_chain_wrapper):
7006           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
7007           chain function isn't linked
7008
7009 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
7010         * configure.ac:
7011         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
7012         support until we decide where the flags should be used
7013         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
7014         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
7015         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7016         Output refused caps in the debug info
7017
7018 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7019
7020         * gst/elements/gstidentity.c: (gst_identity_chain):
7021           add duration debug
7022         * gst/gstinfo.c: (gst_debug_log_default):
7023           add timestamp
7024
7025 2004-05-13  Benjamin Otte  <otte@gnome.org>
7026
7027         * gst/gstpipeline.c: (gst_pipeline_dispose),
7028         (gst_pipeline_change_state):
7029           call gst_scheduler_reset on dispose (fixes #141416)
7030
7031 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7032
7033         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7034           compute mapsize correctly
7035         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7036           use correct datatypes when calling a varargs function
7037         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7038           push a DISCONT event as first thing
7039         * gst/gst_private.h:
7040         * gst/gstinfo.c: (_gst_debug_init):
7041           remove GST_DATAFLOW debugging category
7042         * gst/gstbin.c: (gst_bin_iterate):
7043           use GST_SCHEDULING category
7044         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7045         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7046         (gst_pad_call_get_function):
7047           add GST_DATAFLOW to easily track flow of buffers or events.
7048         * gst/gstqueue.c: (gst_queue_get_type),
7049         (gst_queue_handle_pending_events), (gst_queue_chain),
7050         (gst_queue_get), (gst_queue_handle_src_event):
7051           use own static debugging category GST_DATAFLOW for dataflow,
7052           use DEBUG category for showing which path events go, use LOG
7053           category for buffers.
7054
7055 2004-05-10  David Schleef  <ds@schleef.org>
7056
7057         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7058
7059 2004-05-10  David Schleef  <ds@schleef.org>
7060
7061         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7062         symbols, because otherwise we don't know what they are.  Thanks,
7063         the GStreamer team.
7064         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7065
7066 2004-05-10  David Schleef  <ds@schleef.org>
7067
7068         (from Steve Lhomme)
7069         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7070         are deleted.  Fix.
7071         * win32/Makefile.inspect:
7072         * win32/Makefile.launch:
7073         * win32/Makefile.register:
7074
7075 2004-05-10  David Schleef  <ds@schleef.org>
7076
7077         * gst/gstinfo.h: Add missing inline function.
7078         * gst/gsttrace.c: add include
7079         * gst/parse/grammar.y: remove unused code
7080         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7081         more portable.
7082         * tools/gst-register.c: wrap unistd.h
7083         
7084         More additions/fixes from Steve for the MSVC build.
7085         * win32/GStreamer.vcproj:
7086         * win32/Makefile:
7087         * win32/Makefile.inspect:
7088         * win32/Makefile.launch:
7089         * win32/Makefile.register:
7090         * win32/README.txt:
7091         * win32/gst-inspect.vcproj:
7092         * win32/gst-launch.vcproj:
7093         * win32/gst-register.vcproj:
7094         * win32/gstbytestream.def:
7095         * win32/gstbytestream.vcproj:
7096         * win32/gstconfig.h:
7097         * win32/gstelements.def:
7098         * win32/gstelements.vcproj:
7099         * win32/gstenumtypes.c:
7100         * win32/gstenumtypes.h:
7101         * win32/gstoptimalscheduler.def:
7102         * win32/gstoptimalscheduler.vcproj:
7103         * win32/gstreamer.def:
7104         * win32/gstspider.def:
7105         * win32/gstspider.vcproj:
7106         * win32/gstversion.h:
7107         * win32/msvc71.sln:
7108
7109 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7110
7111         * gst/gstelement.c: (gst_element_class_init),
7112         (gst_element_no_more_pads):
7113         * gst/gstelement.h:
7114           add gst_element_no_more_pads and the "no-more-pads" signal
7115
7116 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7117
7118         * gst/gstregistry.c: (gst_registry_add_plugin):
7119           refuse to add plugins when a plugin with same name is already
7120           registered. Fixes a bunch of "How to remove plugins?" issues.
7121           May lead to other problems though, let's test
7122
7123 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7124
7125         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
7126         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
7127         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
7128
7129 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7130
7131         * tests/Makefile.am: fix am16 issue
7132
7133 2004-05-09  Benjamin Otte  <otte@gnome.org>
7134
7135         * libs/gst/bytestream/Makefile.am:
7136           we should indeed add .c files to makefiles or they won't be built
7137           (d'oh)
7138
7139 2004-05-08  Benjamin Otte  <otte@gnome.org>
7140
7141         * gst/gstpad.c: (gst_pad_proxy_fixate):
7142           really reduce the set of caps
7143
7144 2004-05-08  Benjamin Otte  <otte@gnome.org>
7145
7146         * tests/Makefile.am:
7147         * tests/spidey_bench.c: (handoff), (main):
7148           add benchmark to test how long spider needs to create a pipeline
7149
7150 2004-05-08  Benjamin Otte  <otte@gnome.org>
7151
7152         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
7153           mark links as unengaged when unnegotiating instead of deactivating.
7154           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
7155
7156 2004-05-08  Benjamin Otte  <otte@gnome.org>
7157
7158         * docs/manual/helloworld.xml:
7159           s/audiosink/osssink (patch by Patrick Guimond)
7160
7161 2004-05-07  David Schleef  <ds@schleef.org>
7162
7163         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
7164         since it contains important stuff.
7165
7166 2004-05-07  David Schleef  <ds@schleef.org>
7167
7168         * testsuite/caps/caps.c: (test3), (main): A check for appending
7169         ANY caps.
7170
7171 2004-05-07  David Schleef  <ds@schleef.org>
7172
7173         * common/m4/as-compiler-flag.m4: Properly quote arguments,
7174         which may contain commas.  Fixes detection of -Wa,-mregnames
7175
7176 2004-05-06  David Schleef  <ds@schleef.org>
7177
7178         Changes to handle compilers that don't have variadic macro
7179         support.  In particular, glib headers define some inlines
7180         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
7181         builds.
7182         * gst/Makefile.am:
7183         * gst/cothreads.c:
7184         * gst/elements/gstfdsink.c:
7185         * gst/elements/gstfdsrc.c:
7186         * gst/elements/gstfilesink.c:
7187         * gst/elements/gstfilesrc.c:
7188         * gst/gst_private.h:
7189         * gst/gstatomic.c:
7190         * gst/gstcaps.c: (gst_caps_append):
7191         * gst/gstcpu.c: (gst_cpuid_i386):
7192         * gst/gstelement.c:
7193         * gst/gsterror.c:
7194         * gst/gstfilter.c:
7195         * gst/gstinfo.h:
7196         * gst/gstprobe.c:
7197         * gst/gstquery.c:
7198         * gst/gstregistry.c:
7199         * gst/gststructure.c:
7200         * gst/gsttaginterface.c:
7201         * gst/gsttrace.c: (gst_trace_new):
7202         * gst/gsttrashstack.c:
7203         * gst/gsturi.c:
7204         * gst/gstvalue.c:
7205         * gst/parse/grammar.y:
7206         * gst/parse/parse.l:
7207         * tools/gst-inspect.c: (main):
7208         * tools/gst-launch.c: (main):
7209         * tools/gst-xmlinspect.c: (PUT_STRING):
7210
7211 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7212
7213         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7214         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7215         * gst/elements/gstfilesrc.h:
7216           send NEW_MEDIA events correctly
7217         * gst/elements/gsttypefindelement.c: (start_typefinding),
7218         (gst_type_find_element_handle_event):
7219           restart typefinding when we get a NEW_MEDIA event
7220         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
7221         (gst_bin_dispose):
7222           don't die when someone removes elements in callbacks
7223         * gst/gstelement.c: (gst_element_change_state):
7224           improve debugging
7225         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
7226           we need a NEW_MEDIA event to engage a link
7227         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
7228           don't g_print debugging stuff
7229         * testsuite/caps/simplify.c: (check_caps):
7230
7231 2004-05-04  Benjamin Otte  <otte@gnome.org>
7232
7233         * gst/parse/grammar.y:
7234           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
7235
7236 2004-05-04  Benjamin Otte  <otte@gnome.org>
7237
7238         * testsuite/caps/renegotiate.c: (main):
7239           improve output in error case
7240
7241 2004-05-04  Benjamin Otte  <otte@gnome.org>
7242
7243         * gst/parse/grammar.y:
7244           fix assert to not trigger when there's no error argument
7245         * gst/parse/parse.l:
7246           fix definition of caps to allow more than two structures
7247         * testsuite/caps/Makefile.am:
7248         * testsuite/caps/renegotiate.c: (main):
7249           it's sinesrc and works in that case
7250
7251 2004-05-04  Wim Taymans  <wim@fluendo.com>
7252
7253         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7254         (group_dec_link), (gst_opt_scheduler_pad_unlink):
7255         when removing an element from a group, we always need to
7256         decrement the link count that this group had with other 
7257         groups through the element.
7258         added an extra assert to catch inconsistencies when decrementing
7259         the link count.
7260
7261 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7262
7263         * configure.ac:
7264         * docs/gst/Makefile.am:
7265         * docs/gst/gstreamer-sections.txt:
7266         * docs/gst/tmpl/gstcompat.sgml:
7267         * examples/appreader/Makefile.am:
7268         * examples/cutter/Makefile.am:
7269         * examples/events/Makefile.am:
7270         * examples/helloworld/Makefile.am:
7271         * examples/helloworld2/Makefile.am:
7272         * examples/launch/Makefile.am:
7273         * examples/manual/Makefile.am:
7274         * examples/mixer/Makefile.am:
7275         * examples/pingpong/Makefile.am:
7276         * examples/plugins/Makefile.am:
7277         * examples/queue/Makefile.am:
7278         * examples/queue2/Makefile.am:
7279         * examples/queue3/Makefile.am:
7280         * examples/queue4/Makefile.am:
7281         * examples/retag/Makefile.am:
7282         * examples/thread/Makefile.am:
7283         * examples/typefind/Makefile.am:
7284         * examples/xml/Makefile.am:
7285         * gst/Makefile.am:
7286         * gst/autoplug/Makefile.am:
7287         * gst/elements/Makefile.am:
7288         * gst/gstcompat.h:
7289         * gst/indexers/Makefile.am:
7290         * gst/parse/Makefile.am:
7291         * gst/registries/Makefile.am:
7292         * gst/schedulers/Makefile.am:
7293         * libs/gst/bytestream/Makefile.am:
7294         * libs/gst/control/Makefile.am:
7295         * libs/gst/getbits/Makefile.am:
7296         * po/af.po:
7297         * po/az.po:
7298         * po/en_GB.po:
7299         * po/fr.po:
7300         * po/nl.po:
7301         * po/sr.po:
7302         * po/sv.po:
7303         * po/tr.po:
7304         * po/uk.po:
7305         * tests/Makefile.am:
7306         * tests/bufspeed/Makefile.am:
7307         * tests/instantiate/Makefile.am:
7308         * tests/memchunk/Makefile.am:
7309         * tests/muxing/Makefile.am:
7310         * tests/negotiation/Makefile.am:
7311         * tests/probes/Makefile.am:
7312         * tests/sched/Makefile.am:
7313         * tests/seeking/Makefile.am:
7314         * tests/threadstate/Makefile.am:
7315         * testsuite/caps/Makefile.am:
7316         * testsuite/cleanup/Makefile.am:
7317         * testsuite/dlopen/Makefile.am:
7318         * testsuite/dynparams/Makefile.am:
7319         * testsuite/plugin/Makefile.am:
7320         * testsuite/states/Makefile.am:
7321         * tools/Makefile.am:
7322           reorganize compile/link flags to be consistent
7323           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7324
7325 2004-05-04  David Schleef  <ds@schleef.org>
7326
7327         The "once more, with feeling" check-in.
7328         * testsuite/caps/Makefile.am: dist caps_strings
7329         * testsuite/caps/renegotiate.c: (main): This test triggers a
7330           segfault in the core.  Marking as failing.
7331
7332 2004-05-03  David Schleef  <ds@schleef.org>
7333
7334         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7335           by the build bots.
7336         * testsuite/caps/renegotiate.c: (main): Same.
7337
7338 2004-05-03  David Schleef  <ds@schleef.org>
7339
7340         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7341
7342 2004-05-03  David Schleef  <ds@schleef.org>
7343
7344         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7345           variable to find our source file.
7346
7347 2004-05-03  David Schleef  <ds@schleef.org>
7348
7349         * configure.ac:  Link plugins with libgstreamer and dependent
7350           libraries
7351         * testsuite/caps/Makefile.am:
7352         * testsuite/caps/caps_strings:
7353         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7354           through a file of caps strings and test each one
7355
7356 2004-05-04  Benjamin Otte  <otte@gnome.org>
7357
7358         * libs/gst/bytestream/Makefile.am:
7359         * libs/gst/bytestream/adapter.c: 
7360         * libs/gst/bytestream/adapter.h:
7361           add GstAdapter, similar to bytestream, but doesn't require ugly event
7362           handling or uglier loopbased elements
7363
7364 2004-05-03  David Schleef  <ds@schleef.org>
7365
7366         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7367         * testsuite/caps/erathostenes.c:
7368         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7369
7370 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7371
7372         * docs/pwg/pwg.xml:
7373           remove hardcoded stylesheet path (duh)
7374         * docs/random/release:
7375         * docs/gst/gstreamer-sections.txt:
7376         * gst/Makefile.am:
7377         * gst/gst.h:
7378         * gst/gst_private.h:
7379         * gst/gstcaps.c:
7380         * gst/gstevent.c:
7381         * gst/gstformat.c:
7382         * gst/gstinfo.c:
7383         * gst/gstinfo.h:
7384         * gst/gstinterface.c:
7385         * gst/gstmemchunk.c:
7386         * gst/gstprobe.c:
7387         * gst/gstquery.c:
7388         * gst/gstregistry.c:
7389         * gst/gstregistrypool.c:
7390         * gst/gststructure.c:
7391         * gst/gsttaginterface.c:
7392         * gst/gstthread.c:
7393         * gst/gsttrace.c:
7394         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7395         * gst/gsturi.c:
7396         * gst/gstvalue.c:
7397           deprecate gst_info; remove gstlog.h
7398    
7399
7400 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7401
7402         * Makefile.am:
7403         * po/en_GB.po:
7404         * po/sv.po:
7405         * po/uk.po:
7406           updated translations
7407
7408 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7409
7410         * gst/gstbin.c: (gst_bin_dispose):
7411           better debugging
7412
7413 2004-05-03  Johan Dahlin  <johan@gnome.org>
7414
7415         * gst/schedulers/gstoptimalscheduler.c
7416         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7417         really is a GstElement. Avoids critical when running gst-launch -v
7418         and a oggdemux/decoding pipeline.
7419
7420 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7421
7422         * docs/gst/tmpl/gstpipeline.sgml :
7423         * docs/manual/elements-api.xml :
7424                 doc fix by Patrick Guimond (Protector) from devel ML
7425                 reviewed by ronald
7426
7427 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7428
7429         * docs/gst/Makefile.am :
7430         * docs/libs/Makefile.am :
7431                 apply a patch from Arwed v. Merkatz so that gtk-doc
7432                 generated docs install (same for .devhelp file)
7433                 (fixes part 1 of #138836)
7434
7435 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7436
7437         * docs/faq/dependencies.xml: typo
7438         * docs/faq/getting.xml :
7439             - fix download URL for new gstreamer site
7440             - hide sf.net download page as latest version aren't there
7441             - fix apt URLs
7442             - fill "get via CVS" paragraph (link to dev page on the site)
7443         * docs/faq/general.xml:
7444             hide status tables as they no more exists
7445             change case on plugins license file to reflect reality
7446         * docs/faq/troubleshooting.xml:
7447             remove the wiki question/answer as there is no more wiki
7448
7449 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7450
7451         * gst/gsterror.h:
7452           include the headers needed for declarations used in this header
7453
7454 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7455
7456         * docs/random/uraeus/gstreamer_and_midi.txt :
7457           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7458           (fixes #132288)
7459
7460 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7461
7462         reviewed by Benjamin Otte  <otte@gnome.org>
7463
7464         * gst/schedulers/gthread-cothreads.h:
7465           free allocated data for main cothread, too when destroying context
7466           (fixes #141417)
7467
7468 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7469
7470         * docs/manual/goals.xml : remove duplicated paragraph at end 
7471         of doc page (fixes #141448)
7472
7473 2004-04-29  David Schleef  <ds@schleef.org>
7474
7475         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7476         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7477
7478 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7479
7480         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7481           fix property
7482         * gst/gstcaps.c:
7483           fix doc string
7484         * po/POTFILES.in:
7485           rename typefind source file
7486
7487 2004-04-28  David Schleef  <ds@schleef.org>
7488
7489         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7490         * win32/GStreamer.vcproj:
7491         * win32/Makefile:
7492         * win32/config.h:
7493         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7494         (_trewinddir), (_ttelldir), (_tseekdir):
7495         * win32/dirent.h:
7496         * win32/gst-inspect.vcproj:
7497         * win32/gst-launch.vcproj:
7498         * win32/gst-register.vcproj:
7499         * win32/gstbytestream.vcproj:
7500         * win32/gstelements.vcproj:
7501         * win32/gstoptimalscheduler.vcproj:
7502         * win32/gstspider.vcproj:
7503         * win32/gtchar.h:
7504         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7505         * win32/mman.h:
7506         * win32/mman.inl:
7507         * win32/msvc71.sln:
7508
7509 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7510
7511         * gst/gst.c: (init_post):
7512         * gst/gstinfo.c:
7513           remove useless _gst_progname stuff
7514         * tools/gst-inspect.c: (print_field), (print_caps):
7515           improve caps output
7516
7517 2004-04-28  David Schleef  <ds@schleef.org>
7518
7519         Disable parsing of a lot of files that aren't part of the
7520         exported API.  Move corresponding template files to old/,
7521         waiting for removal when they don't contain anything
7522         interesting.
7523         * docs/gst/Makefile.am:
7524         * docs/gst/gstreamer-sections.txt:
7525         * docs/gst/tmpl/cothreads.sgml:
7526         * docs/gst/tmpl/cothreads_compat.sgml:
7527         * docs/gst/tmpl/gettext.sgml:
7528         * docs/gst/tmpl/gobject2gtk.sgml:
7529         * docs/gst/tmpl/grammar.tab.sgml:
7530         * docs/gst/tmpl/gst-i18n-app.sgml:
7531         * docs/gst/tmpl/gst-i18n-lib.sgml:
7532         * docs/gst/tmpl/gst_private.sgml:
7533         * docs/gst/tmpl/gstaggregator.sgml:
7534         * docs/gst/tmpl/gstarch.sgml:
7535         * docs/gst/tmpl/gstatomic_impl.sgml:
7536         * docs/gst/tmpl/gstbufferstore.sgml:
7537         * docs/gst/tmpl/gstdata_private.sgml:
7538         * docs/gst/tmpl/gstdisksink.sgml:
7539         * docs/gst/tmpl/gstdisksrc.sgml:
7540         * docs/gst/tmpl/gstelementfactory.sgml:
7541         * docs/gst/tmpl/gstextratypes.sgml:
7542         * docs/gst/tmpl/gstfakesink.sgml:
7543         * docs/gst/tmpl/gstfakesrc.sgml:
7544         * docs/gst/tmpl/gstfdsink.sgml:
7545         * docs/gst/tmpl/gstfdsrc.sgml:
7546         * docs/gst/tmpl/gstfilesink.sgml:
7547         * docs/gst/tmpl/gstfilesrc.sgml:
7548         * docs/gst/tmpl/gsthttpsrc.sgml:
7549         * docs/gst/tmpl/gstidentity.sgml:
7550         * docs/gst/tmpl/gstindexfactory.sgml:
7551         * docs/gst/tmpl/gstmarshal.sgml:
7552         * docs/gst/tmpl/gstmd5sink.sgml:
7553         * docs/gst/tmpl/gstmultidisksrc.sgml:
7554         * docs/gst/tmpl/gstmultifilesrc.sgml:
7555         * docs/gst/tmpl/gstpadtemplate.sgml:
7556         * docs/gst/tmpl/gstpipefilter.sgml:
7557         * docs/gst/tmpl/gstschedulerfactory.sgml:
7558         * docs/gst/tmpl/gstsearchfuncs.sgml:
7559         * docs/gst/tmpl/gstshaper.sgml:
7560         * docs/gst/tmpl/gstspider.sgml:
7561         * docs/gst/tmpl/gstspideridentity.sgml:
7562         * docs/gst/tmpl/gststatistics.sgml:
7563         * docs/gst/tmpl/gsttee.sgml:
7564         * docs/gst/tmpl/gsttimecache.sgml:
7565         * docs/gst/tmpl/gsttypefind.sgml:
7566         * docs/gst/tmpl/gsttypefindfactory.sgml:
7567         * docs/gst/tmpl/gstxmlregistry.sgml:
7568         * docs/gst/tmpl/gthread-cothreads.sgml:
7569         * docs/gst/tmpl/old/cothreads.sgml:
7570         * docs/gst/tmpl/old/cothreads_compat.sgml:
7571         * docs/gst/tmpl/old/gettext.sgml:
7572         * docs/gst/tmpl/old/gobject2gtk.sgml:
7573         * docs/gst/tmpl/old/grammar.tab.sgml:
7574         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7575         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7576         * docs/gst/tmpl/old/gst_private.sgml:
7577         * docs/gst/tmpl/old/gstaggregator.sgml:
7578         * docs/gst/tmpl/old/gstarch.sgml:
7579         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7580         * docs/gst/tmpl/old/gstbufferstore.sgml:
7581         * docs/gst/tmpl/old/gstdata_private.sgml:
7582         * docs/gst/tmpl/old/gstdisksink.sgml:
7583         * docs/gst/tmpl/old/gstdisksrc.sgml:
7584         * docs/gst/tmpl/old/gstelementfactory.sgml:
7585         * docs/gst/tmpl/old/gstextratypes.sgml:
7586         * docs/gst/tmpl/old/gstfakesink.sgml:
7587         * docs/gst/tmpl/old/gstfakesrc.sgml:
7588         * docs/gst/tmpl/old/gstfdsink.sgml:
7589         * docs/gst/tmpl/old/gstfdsrc.sgml:
7590         * docs/gst/tmpl/old/gstfilesink.sgml:
7591         * docs/gst/tmpl/old/gstfilesrc.sgml:
7592         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7593         * docs/gst/tmpl/old/gstidentity.sgml:
7594         * docs/gst/tmpl/old/gstindexfactory.sgml:
7595         * docs/gst/tmpl/old/gstmarshal.sgml:
7596         * docs/gst/tmpl/old/gstmd5sink.sgml:
7597         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7598         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7599         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7600         * docs/gst/tmpl/old/gstpipefilter.sgml:
7601         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7602         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7603         * docs/gst/tmpl/old/gstshaper.sgml:
7604         * docs/gst/tmpl/old/gstspider.sgml:
7605         * docs/gst/tmpl/old/gstspideridentity.sgml:
7606         * docs/gst/tmpl/old/gststatistics.sgml:
7607         * docs/gst/tmpl/old/gsttee.sgml:
7608         * docs/gst/tmpl/old/gsttimecache.sgml:
7609         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7610         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7611         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7612         * docs/gst/tmpl/old/types.sgml:
7613         * docs/gst/tmpl/types.sgml:
7614
7615         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7616         gtkdoc-scan doesn't like files with the same name in different
7617         directories.
7618         * gst/elements/Makefile.am:
7619         * gst/elements/gstelements.c:
7620         * gst/elements/gsttypefind.c: 
7621         * gst/elements/gsttypefind.h:
7622         * gst/elements/gsttypefindelement.c:
7623         * gst/elements/gsttypefindelement.h:
7624
7625 2004-04-28  David Schleef  <ds@schleef.org>
7626
7627         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7628         patch (bug #141317):
7629         * gst/gst-i18n-lib.h: Allow disabling gettext.
7630         * gst/gstatomic_impl.h: disable warning when it's dumb.
7631         * gst/gstclock.c: fix include
7632         * gst/gstcompat.h: fix variadic macro
7633         * gst/gstinfo.c: fix include
7634         * gst/gstmacros.h: add defines for inlines on MSVC
7635         * gst/gstplugin.c: fix includes
7636         * gst/gstregistry.c: fix includes
7637         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7638         * gst/gstsystemclock.c: fix include
7639         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7640         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7641         * gst/registries/gstxmlregistry.c:
7642         (gst_xml_registry_parse_element_factory): fix use of non-portable
7643         functions
7644         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7645         * libs/gst/control/dparammanager.h: same
7646
7647 2004-04-28  David Schleef  <ds@schleef.org>
7648
7649         Move a bunch of unused files to old/ with names that are
7650         not case-insensitive-unique.  These files still contain some
7651         useful information that needs to be merged into gstbin.sgml,
7652         etc., so they shouldn't be deleted yet.
7653         * docs/gst/tmpl/GstBin.sgml:
7654         * docs/gst/tmpl/GstBuffer.sgml:
7655         * docs/gst/tmpl/GstCaps.sgml:
7656         * docs/gst/tmpl/GstClock.sgml:
7657         * docs/gst/tmpl/GstCompat.sgml:
7658         * docs/gst/tmpl/GstData.sgml:
7659         * docs/gst/tmpl/GstElement.sgml:
7660         * docs/gst/tmpl/GstEvent.sgml:
7661         * docs/gst/tmpl/GstIndex.sgml:
7662         * docs/gst/tmpl/GstStructure.sgml:
7663         * docs/gst/tmpl/GstTag.sgml:
7664         * docs/gst/tmpl/old/GstBin.sgml:
7665         * docs/gst/tmpl/old/GstBuffer.sgml:
7666         * docs/gst/tmpl/old/GstCaps.sgml:
7667         * docs/gst/tmpl/old/GstClock.sgml:
7668         * docs/gst/tmpl/old/GstCompat.sgml:
7669         * docs/gst/tmpl/old/GstData.sgml:
7670         * docs/gst/tmpl/old/GstElement.sgml:
7671         * docs/gst/tmpl/old/GstEvent.sgml:
7672         * docs/gst/tmpl/old/GstIndex.sgml:
7673         * docs/gst/tmpl/old/GstStructure.sgml:
7674         * docs/gst/tmpl/old/GstTag.sgml:
7675
7676 2004-04-28  David Schleef  <ds@schleef.org>
7677
7678         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7679         (gst_caps_append), (gst_caps_append_structure),
7680         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7681         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7682         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7683         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7684         (gst_caps_intersect), (gst_caps_normalize),
7685         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7686         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7687         * gst/gstcaps.h: use GST_IS_CAPS().
7688
7689 2004-04-26  David Schleef  <ds@schleef.org>
7690
7691         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7692         assembly.  gcc doesn't handle it correctly. (bug #141083)
7693         * gst/gsttrashstack.h: same
7694
7695 2004-04-25  Benjamin Otte  <otte@gnome.org>
7696
7697         * gst/gstelement.c: (gst_element_change_state):
7698           fix assertion to do an int comparison
7699
7700 2004-04-25  Benjamin Otte  <otte@gnome.org>
7701
7702         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7703           better debugging output on error
7704
7705 2004-04-25  Benjamin Otte  <otte@gnome.org>
7706
7707         * gst/gstcaps.c: (gst_caps_subtract):
7708           fix memleak
7709
7710 2004-04-23  Benjamin Otte  <otte@gnome.org>
7711
7712         * gst/gstvalue.c: (gst_value_compare_buffer),
7713         (_gst_value_initialize):
7714           add comparison function for buffers
7715
7716 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7717
7718         * docs/pwg/pwg.xml:
7719           Just found out that this so-called "ima-wav" format is really
7720           just "dvi adpcm" (according to the MS WAV documentation). So
7721           renaming it. We didn't use it yet anyway.
7722
7723 2004-04-23  Benjamin Otte  <otte@gnome.org>
7724
7725         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7726           call gst_caps_is_subset
7727
7728 2004-04-23  Benjamin Otte  <otte@gnome.org>
7729
7730         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7731         (gst_caps_is_subset):
7732           add documentation
7733
7734 2004-04-23  Benjamin Otte  <otte@gnome.org>
7735           
7736         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7737         (gst_caps_structure_subtract), (gst_caps_subtract),
7738         (gst_caps_structure_figure_out_union),
7739         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7740           fix simplifying and subtracting not working correctly with optional
7741           properties
7742           solve assorted problems that make it now simplify ebven more
7743         * docs/gst/tmpl/gstcaps.sgml:
7744         * gst/gstcaps.h:
7745           make gst_caps_do_simplify return a bool to indicate if it simplified
7746         * testsuite/caps/simplify.c: (main):
7747           add more checks. The tests is quite a bit useless right now because
7748           the core is heavily simplifying itself.
7749         * testsuite/caps/caps.h:
7750           fix caps to contain all optional properties
7751
7752 2004-04-22  Benjamin Otte  <otte@gnome.org>
7753
7754         * docs/gst/tmpl/gstcaps.sgml:
7755         * docs/gst/tmpl/gstfilesrc.sgml:
7756         * docs/gst/tmpl/gststructure.sgml:
7757         * docs/gst/tmpl/gstvalue.sgml:
7758           update for recent API changes
7759         * gst/gstcaps.c: (gst_caps_do_simplify):
7760           fix to stop trying with a freed structure
7761         * gst/gstpad.c: (gst_pad_link_fixate):
7762           simplify caps
7763         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7764           remove C++ comment
7765         * gst/gstpad.h:
7766           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7767         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7768         (gst_structure_to_string):
7769           keep the correct type when using lists of ranges
7770         * gst/gstvalue.c: (gst_value_list_prepend_value),
7771         (gst_value_list_append_value):
7772           copy the value before adding to the list (d'oh)
7773         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7774         (gst_value_subtract_int_range_int_range):
7775           handle overflows correctly
7776         * gst/gstvalue.c: (gst_value_subtract_from_list):
7777           fix memleak
7778         * testsuite/caps/caps.h:
7779           add a caps that caused segfaults
7780
7781 2004-04-22  Benjamin Otte  <otte@gnome.org>
7782
7783         * testsuite/refcounting/pad.c: (main):
7784           fix test
7785
7786 2004-04-22  Benjamin Otte  <otte@gnome.org>
7787
7788         * gst/gstcaps.c: (gst_caps_subtract):
7789           allow subtracting ANY and EMPTY from ANY caps
7790
7791 2004-04-22  Benjamin Otte  <otte@gnome.org>
7792
7793         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7794         (gst_caps_union):
7795           only simplify in functions that create new caps. Simplifying in
7796           gst_caps_append breaks tests.
7797
7798 2004-04-22  Benjamin Otte  <otte@gnome.org>
7799
7800         * gst/gstcaps.c: (gst_caps_structure_simplify):
7801           unset GValue after use
7802         * gst/gstcaps.c: (gst_caps_append), 
7803         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7804           use gst_caps_simplify (reduces registry size by 30%)
7805         * gst/gstpad.c: (gst_pad_template_new):
7806           don't allow NULL caps
7807
7808 2004-04-22  Benjamin Otte  <otte@gnome.org>
7809
7810         * docs/gst/gstreamer-sections.txt:
7811           add gst_caps_do_simplify
7812         * gst/gstcaps.c:
7813           add documentation for gst_caps_do_simplify
7814         * gst/gstvalue.h:
7815           fix typo in gst_value_register_subtract_func declaration for gst-doc
7816
7817 2004-04-22  Benjamin Otte  <otte@gnome.org>
7818
7819         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7820           fix bug when converting from empty string.
7821         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7822         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7823           use gst_caps_new_empty to allocate a new caps. Only that function
7824           allocates memory for caps now.
7825         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7826         (gst_caps_remove_structure):
7827           add ability to remove one structure (but not to header yet)
7828         * gst/gstcaps.c: (gst_caps_compare_structures),
7829         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7830         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7831         * gst/gstcaps.h:
7832           add gst_caps_do_simplify that tries to simplify a caps in place.
7833           Deprecate old gst_caps_simplify function.
7834         * testsuite/caps/caps.h:
7835           add caps.h containing a common set of caps to test against.
7836         * testsuite/caps/sets.c: (check_caps), (main):
7837           use it.
7838         * testsuite/caps/.cvsignore:
7839         * testsuite/caps/Makefile.am:
7840         * testsuite/caps/simplify.c: (check_caps), (main):
7841           add test to check correctness and efficency of caps simplification.
7842
7843 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7844
7845         reviewed by Benjamin Otte  <otte@gnome.org>
7846
7847         * gst/gstparse.c: (_gst_parse_escape):
7848           Free the GString used in _gst_parse_escape()
7849
7850 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7851
7852         * gst/gstpad.c: (gst_pad_link_negotiate):
7853           refuse to link if the link is not possible
7854         * configure.ac:
7855         * testsuite/Makefile.am:
7856         * testsuite/negotiation/.cvsignore:
7857         * testsuite/negotiation/Makefile.am:
7858         * testsuite/negotiation/pad_link.c: (main):
7859           add test that checks the above behaviour
7860
7861 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7862
7863         * docs/gst/gstreamer-sections.txt:
7864           add newly added API
7865
7866 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7867
7868         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7869         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7870         (gst_filesrc_open_file), (gst_filesrc_close_file),
7871         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7872         * gst/elements/gstfilesrc.h:
7873           add support for non-regular files (#140734)
7874
7875 2004-04-21  Benjamin Otte  <otte@gnome.org>
7876
7877         * gst/gstpad.c: (gst_pad_link_fixate):
7878           add sophisticated error checking code to see if fixation functions
7879           did their fixation right
7880
7881 2004-04-21  Benjamin Otte  <otte@gnome.org>
7882
7883         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7884           check for ANY caps before appending/unioning
7885         * gst/gstcaps.c: (gst_caps_is_subset),
7886         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7887         (gst_caps_structure_subtract), (gst_caps_subtract):
7888         * gst/gstcaps.h:
7889           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7890           the API. deprecate gst_caps_is_equal_fixed
7891         * gst/gstpad.c: (gst_pad_try_set_caps):
7892         * gst/gstqueue.c: (gst_queue_link):
7893           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7894         * gst/gststructure.c: (gst_structure_get_name_id):
7895         * gst/gststructure.h:
7896           add function gst_structure_get_name_id
7897         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7898         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7899         (gst_value_subtract_int_range_int_range),
7900         (gst_value_subtract_double_double_range),
7901         (gst_value_subtract_double_range_double),
7902         (gst_value_subtract_double_range_double_range),
7903         (gst_value_subtract_from_list), (gst_value_subtract_list),
7904         (gst_value_can_intersect), (gst_value_subtract),
7905         (gst_value_can_subtract), (gst_value_register_subtract_func),
7906         (_gst_value_initialize):
7907         * gst/gstvalue.h:
7908           add support for subtracting values from each other. Note that
7909           subtracting means subtracting as in set theory. Required for caps
7910           stuff above.
7911         * testsuite/caps/.cvsignore:
7912         * testsuite/caps/Makefile.am:
7913         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7914         * testsuite/caps/sets.c: (check_caps), (main):
7915         * testsuite/caps/subtract.c: (check_caps), (main):
7916           add tests for subtraction and equality code.
7917
7918 2004-04-20  David Schleef  <ds@schleef.org>
7919
7920         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7921         * gst/indexers/Makefile.am:
7922         * gst/schedulers/Makefile.am:
7923         * libs/gst/bytestream/Makefile.am:
7924         * libs/gst/control/Makefile.am:
7925         * libs/gst/getbits/Makefile.am:
7926
7927 2004-04-20  David Schleef  <ds@schleef.org>
7928
7929         * common/as-libtool.mak: Fine-tune DLL building.
7930         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7931         (like gst-plugins)
7932         * examples/plugins/Makefile.am: remove plugindir
7933         * gst/autoplug/Makefile.am: DLL building fixes
7934         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7935         Windows.
7936         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7937         * gst/indexers/Makefile.am: DLL building fixes
7938         * gst/schedulers/Makefile.am: DLL building fixes.
7939         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7940         * libs/gst/control/Makefile.am: same
7941         * libs/gst/getbits/Makefile.am: same
7942         * testsuite/Makefile.am: New dlopen directory
7943         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7944         when dlopened.
7945         * testsuite/dlopen/dlopen_gst.c: (main): same
7946         * testsuite/dlopen/loadgst.c: (do_test): same
7947
7948 2004-04-20  David Schleef  <ds@schleef.org>
7949
7950         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7951         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7952
7953 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7954
7955         * gst/gstelement.c: (gst_element_wait),
7956         (gst_element_set_time_delay), (gst_element_change_state):
7957           Use GST_TIME_*
7958
7959 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7960
7961         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
7962         (gst_spider_identity_plug):
7963           improve debugging messages
7964         * gst/gstbin.c: (gst_bin_remove_func):
7965           make sure the state_change function is only called with simple state
7966           transitions
7967
7968 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7969
7970         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
7971         (gst_fakesink_set_property), (gst_fakesink_chain):
7972         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
7973         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
7974         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
7975         * gst/elements/gstidentity.c: (gst_identity_chain),
7976         (gst_identity_set_property):
7977         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
7978         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
7979           add warnings to _set_property for unknown arguments
7980           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
7981
7982 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7983
7984         * Makefile.am:
7985         * docs/manuals.mak:
7986           add .po file download snippet
7987           fix a bug in the doc makefile
7988
7989 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7990
7991         * Makefile.am:
7992         * po/LINGUAS:
7993         * po/en_GB.po:
7994           Added en_GB translation (Gareth Owen)
7995
7996 2004-04-20  Johan Dahlin  <johan@gnome.org>
7997
7998         * gst/gstpad.c (_invent_event): Clean up
7999
8000 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8001
8002         * testsuite/caps/filtercaps.c: (main):
8003           fix test to test things correctly (caps are complicated)
8004
8005 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8006
8007         * testsuite/caps/Makefile.am:
8008         * testsuite/caps/filtercaps.c: (main):
8009           add test (that doesn't work right now, but should)
8010
8011 2004-04-19  David Schleef  <ds@schleef.org>
8012
8013         * configure.ac: Add test for allowing unaligned access.  Add define
8014         to put in gstconfig.h.
8015         * docs/gst/gstreamer-sections.txt: New symbols
8016         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
8017         * docs/gst/tmpl/gstfilesrc.sgml:
8018         * docs/gst/tmpl/gstparse.sgml:
8019         * docs/gst/tmpl/gsttypes.sgml:
8020         * docs/gst/tmpl/gstutils.sgml:
8021         * docs/gst/tmpl/gstvalue.sgml:
8022         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
8023         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8024         on most !i386/!powerpc architectures.  From Daniel Gazard
8025         <daniel.gazard@free.fr>.  (bug #140156)
8026         * po/af.po: Check in changes made by gettext.
8027         * po/az.po:
8028         * po/fr.po:
8029         * po/nl.po:
8030         * po/sr.po:
8031         * po/sv.po:
8032
8033 2004-04-20  Benjamin Otte  <otte@gnome.org>
8034
8035         * gst/schedulers/entryscheduler.c: 
8036         (gst_entry_scheduler_yield):
8037           refuse to yield when decoupled elements insist on doing that.
8038           At least it's better than crashing
8039
8040 2004-04-19  David Schleef  <ds@schleef.org>
8041
8042         * docs/libs/Makefile.am: Change sinclude to include
8043         * docs/gst/Makefile.am: same
8044         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8045
8046 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8047
8048         * po/LINGUAS:
8049         * po/uk.po:
8050           Added Ukrainian translation (Maxim V. Dziumanenko)
8051
8052 2004-04-19  Johan Dahlin  <johan@gnome.org>
8053
8054         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8055         checking here, do it before calling the function.
8056         Clean up, use for loops instead of while loops while iterating
8057         over lists.
8058
8059         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8060         in debug message.
8061         (gst_spider_create_and_plug): Improve debug message.
8062         General: Replace while loops which iterates over GLists with for
8063         loops. Which are much cleaner, improves readability, especially
8064         for gst_spider_identity_plug
8065
8066         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8067         fixes bug 140477
8068
8069 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8070
8071         * po/LINGUAS:
8072         * po/tr.po:
8073           Added Turkish translation (Baris Cicek)
8074
8075 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8076
8077         * docs/faq/troubleshooting.xml:
8078           Mention gst-register in the FAQ (fixes 139045).
8079
8080 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8081
8082         * docs/gst/gstreamer-sections.txt:
8083
8084 2004-04-17  Benjamin Otte  <otte@gnome.org>
8085
8086         * gst/gstelement.c: (gst_element_dispose):
8087           simplify
8088         * gst/gstpad.c: (gst_pad_call_chain_function):
8089           don't create loads of events due to bad macro usage
8090
8091 2004-04-16  David Schleef  <ds@schleef.org>
8092
8093         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8094         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8095         * gst/gstvalue.c: (gst_value_serialize_buffer),
8096         (gst_value_deserialize_buffer), (gst_type_is_fixed),
8097         (_gst_value_initialize): Create a new function gst_type_is_fixed()
8098         to indicate types that are fixed wrt caps or not.  Switching to
8099         this function fixes (bug #140298).
8100         * gst/gstvalue.h:
8101
8102 2004-04-16  David Schleef  <ds@schleef.org>
8103
8104         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
8105         for GST_UNALIGNED_ACESS, since we essentially know which archs
8106         are ok.
8107
8108 2004-04-17  Benjamin Otte  <otte@gnome.org>
8109
8110         * docs/gst/Makefile.am:
8111           ignore gst/parse directory when building docs (fixes #140205)
8112
8113 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8114
8115         * testsuite/refcounting/mem.c: (vmsize):
8116           do error checking
8117
8118 2004-04-16  Johan Dahlin  <johan@gnome.org>
8119
8120         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
8121         and gst_pad_call_get_function.
8122
8123 2004-04-15  David Schleef  <ds@schleef.org>
8124
8125         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
8126         checks if we can access unaligned memory.
8127         * configure.ac: Use it.
8128
8129 2004-04-16  Benjamin Otte  <otte@gnome.org>
8130
8131         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
8132         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8133         * gst/elements/gstfilesrc.h:
8134           s/seek_happened/need_discont/ and require discont before sending any
8135           data
8136
8137 2004-04-15  David Schleef  <ds@schleef.org>
8138
8139         * gst/gstvalue.c: (gst_value_serialize_buffer),
8140         (gst_value_deserialize_buffer), (_gst_value_initialize):
8141         Register these types as fundamental types. (bug #140015)
8142
8143 2004-04-16  Benjamin Otte  <otte@gnome.org>
8144
8145         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
8146         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
8147         (gst_pad_pull):
8148           implement enforcing discont events before buffers are passed. This
8149           allows state changes of only some elements and later correctly going
8150           on where they left off (or in short: you can now set audio sinks to
8151           NULL to release the device when the pipeline is paused)
8152         * gst/gstpad.c: (gst_pad_call_chain_function),
8153         (gst_pad_call_get_function):
8154         * gst/gstpad.h:
8155           add gst_pad_call_chain_function and gst_pad_call_get_function for
8156           scheduler interaction. They are required because of the changes
8157           above.
8158         * gst/schedulers/entryscheduler.c: (get_buffer),
8159         (gst_entry_scheduler_chain_wrapper),
8160         (gst_entry_scheduler_get_wrapper),
8161         (gst_entry_scheduler_state_transition),
8162         (gst_entry_scheduler_pad_link):
8163         * gst/schedulers/gstbasicscheduler.c:
8164         (gst_basic_scheduler_chain_wrapper),
8165         (gst_basic_scheduler_src_wrapper),
8166         (gst_basic_scheduler_chainhandler_proxy),
8167         (gst_basic_scheduler_gethandler_proxy),
8168         (gst_basic_scheduler_cothreaded_chain),
8169         (gst_basic_scheduler_chain_elements):
8170         * gst/schedulers/gstoptimalscheduler.c:
8171         (get_group_schedule_function), (pad_clear_queued),
8172         (gst_opt_scheduler_pad_link):
8173           use the new functions instead of calling get/chain-functions
8174           directly.
8175
8176 2004-04-15  David Schleef  <ds@schleef.org>
8177
8178         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
8179         * docs/gst/tmpl/gstinfo.sgml: same
8180         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
8181         gtk-doc put here.
8182         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
8183         * examples/queue/queue.c: (main):  We iterate pipelines, not
8184         bins.  (bug #139996)
8185
8186 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8187
8188         * docs/pwg/advanced-types.xml:
8189           Add MS RLE support. Also document Qt RLE although I have no sample
8190           files for that yet. And document an extra property for ADPCM.
8191
8192 2004-04-15  David Schleef  <ds@schleef.org>
8193
8194         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
8195         (_gst_plugin_fault_handler_setup):  Disable more stuff on
8196         Windows.
8197
8198 2004-04-15  David Schleef  <ds@schleef.org>
8199
8200         * gst/gstinfo.c: (_gst_debug_init): Change some internal
8201         symbol names to not conflict with new gstinfo.h symbols.
8202         * gst/gstinfo.h: Add inline functions for all those crazy
8203         compilers that don't know how to handle variadic macros (MSVC).
8204
8205 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8206
8207         * configure.ac: bump nano to 1
8208
8209 === release 0.8.1 ===
8210
8211 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8212
8213         * NEWS:
8214         * RELEASE:
8215         * configure.ac:
8216           releasing 0.8.1, "Snow Brigade"
8217
8218 2004-04-14  David Schleef  <ds@schleef.org>
8219
8220         * testsuite/Makefile.am: define tests_ignore
8221         * testsuite/Rules: Added new tests_ignore, which get compiled,
8222         but not run (generally because they're inconsistent or have
8223         heisenbugs).  Now we can ensure all the .c files compile in
8224         testsuite/.
8225         * testsuite/bins/Makefile.am: define tests_ignore
8226         * testsuite/bytestream/Makefile.am:
8227         * testsuite/caps/Makefile.am:
8228         * testsuite/clock/Makefile.am:
8229         * testsuite/debug/Makefile.am:
8230         * testsuite/debug/global.c: (gst_debug_log_one),
8231         (gst_debug_log_two): Fix compilation problem.
8232         * testsuite/dynparams/Makefile.am:
8233         * testsuite/elements/Makefile.am:
8234         * testsuite/ghostpads/Makefile.am:
8235         * testsuite/indexers/Makefile.am:
8236         * testsuite/parse/Makefile.am:
8237         * testsuite/plugin/Makefile.am:
8238         * testsuite/refcounting/Makefile.am:
8239         * testsuite/refcounting/element_pad.c: (main): Don't return leak
8240         results, because it's not calculated correctly.
8241         * testsuite/refcounting/pad.c: (main): same
8242         * testsuite/states/Makefile.am:
8243         * testsuite/tags/Makefile.am:
8244         * testsuite/threads/Makefile.am:
8245
8246 2004-04-14  David Schleef  <ds@schleef.org>
8247
8248         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
8249         generating bad code around the cpu detection asm code.
8250
8251 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8252
8253         * tools/gst-inspect.c: (print_element_info):
8254           print numeric version of rank as well, since we added some - 1
8255           rank values to elements
8256
8257 2004-04-13  David Schleef  <ds@schleef.org>
8258
8259         * configure.ac:  Disable various code when compiling for MinGW.
8260         * gst/elements/Makefile.am:
8261         * gst/elements/gstelements.c:
8262         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8263         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
8264         * gst/registries/gstxmlregistry.c: (make_dir):
8265
8266 2004-04-13  David Schleef  <ds@schleef.org>
8267
8268         * gst/Makefile.am:
8269         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
8270         assembly.
8271         * gst/gstcpuid_i386.s: remove
8272
8273 2004-04-13  David Schleef  <ds@schleef.org>
8274
8275         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8276         seems to think it needs to be done.
8277         * docs/gst/tmpl/gstfakesink.sgml:
8278         * docs/gst/tmpl/gstfakesrc.sgml:
8279         * docs/gst/tmpl/gstfdsink.sgml:
8280         * docs/gst/tmpl/gstfdsrc.sgml:
8281         * docs/gst/tmpl/gstfilesink.sgml:
8282         * docs/gst/tmpl/gstfilesrc.sgml:
8283         * docs/gst/tmpl/gstidentity.sgml:
8284         * docs/gst/tmpl/gstmd5sink.sgml:
8285         * docs/gst/tmpl/gstmultifilesrc.sgml:
8286         * docs/gst/tmpl/gstpipefilter.sgml:
8287         * docs/gst/tmpl/gstshaper.sgml:
8288         * docs/gst/tmpl/gstspider.sgml:
8289         * docs/gst/tmpl/gstspideridentity.sgml:
8290         * docs/gst/tmpl/gststatistics.sgml:
8291         * docs/gst/tmpl/gsttee.sgml:
8292         * docs/gst/tmpl/gsttypefind.sgml:
8293         * docs/gst/tmpl/gstutils.sgml:
8294
8295 2004-04-13  David Schleef  <ds@schleef.org>
8296
8297         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8298         and to build DLLs on Windows.
8299         * gst/Makefile.am:
8300         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8301         (gst_filesrc_open_file):
8302         * gst/schedulers/Makefile.am:
8303
8304 2004-04-13  David Schleef  <ds@schleef.org>
8305
8306         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8307         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8308         fixating lists.
8309
8310 2004-04-12  David Schleef  <ds@schleef.org>
8311
8312         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8313         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8314         to using it.
8315         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8316         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8317         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8318         * gst/gststructure.c: (gst_structure_set_valist),
8319         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8320         support for buffers.
8321         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8322         intended to be const.
8323         * gst/gsttag.h: same
8324         * gst/gstvalue.c: (gst_value_serialize_buffer),
8325         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8326         to (de)serialize buffers.
8327         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8328         * testsuite/caps/string-conversions.c: (main):
8329         * testsuite/caps/value_serialize.c: add new test
8330
8331 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8332
8333         * docs/pwg/advanced-types.xml:
8334           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8335
8336 2004-04-11  Benjamin Otte  <otte@gnome.org>
8337
8338         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8339           rename categories to basic_*
8340         * gst/schedulers/gstbasicscheduler.c: 
8341         (gst_basic_scheduler_chain_wrapper),
8342         (gst_basic_scheduler_chainhandler_proxy),
8343         (gst_basic_scheduler_gethandler_proxy),
8344         (gst_basic_scheduler_eventhandler_proxy):
8345           debugging category fixes - put common stuff in log category
8346         * gst/schedulers/gstbasicscheduler.c: 
8347         (gst_basic_scheduler_chain_elements):
8348           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8349           active and linking two active chains
8350
8351 2004-04-10  Benjamin Otte  <otte@gnome.org>
8352
8353         * docs/pwg/intro-preface.xml:
8354           fix dead links and remove reference to Wiki
8355
8356 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8357
8358         * gst/schedulers/gstbasicscheduler.c:
8359           make sure we can switch back to the main function if we're still in
8360           the main function (supposed to fix #139617)
8361         * gst/schedulers/gthread-cothreads.h:
8362           don't throw an error when switching to the same cothread
8363
8364 2004-04-09  Benjamin Otte  <otte@gnome.org>
8365
8366         * gst/gstbin.c: (gst_bin_get_type):
8367         * gst/gstclock.c: (gst_clock_get_type):
8368         * gst/gstindex.c: (gst_index_get_type):
8369         * gst/gstobject.c: (gst_object_get_type),
8370         (gst_signal_object_get_type):
8371         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8372         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8373         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8374         * gst/gstqueue.c: (gst_queue_get_type):
8375         * gst/gstregistry.c: (gst_registry_get_type):
8376         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8377         * gst/gstthread.c: (gst_thread_get_type):
8378           don't use memchunks for these objects, use malloc instead
8379
8380 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8381
8382         * docs/gst/.cvsignore:
8383         * docs/gst/Makefile.am:
8384         * docs/gst/gstreamer-sections.txt:
8385         * docs/gst/tmpl/gstaggregator.sgml:
8386         * docs/gst/tmpl/gstbuffer.sgml:
8387         * docs/gst/tmpl/gstclock.sgml:
8388         * docs/gst/tmpl/gstelement.sgml:
8389         * docs/gst/tmpl/gstfakesink.sgml:
8390         * docs/gst/tmpl/gstfakesrc.sgml:
8391         * docs/gst/tmpl/gstfdsink.sgml:
8392         * docs/gst/tmpl/gstfdsrc.sgml:
8393         * docs/gst/tmpl/gstfilesink.sgml:
8394         * docs/gst/tmpl/gstfilesrc.sgml:
8395         * docs/gst/tmpl/gstidentity.sgml:
8396         * docs/gst/tmpl/gstindex.sgml:
8397         * docs/gst/tmpl/gstinfo.sgml:
8398         * docs/gst/tmpl/gstmd5sink.sgml:
8399         * docs/gst/tmpl/gstmultifilesrc.sgml:
8400         * docs/gst/tmpl/gstpad.sgml:
8401         * docs/gst/tmpl/gstpipefilter.sgml:
8402         * docs/gst/tmpl/gstpipeline.sgml:
8403         * docs/gst/tmpl/gstpluginfeature.sgml:
8404         * docs/gst/tmpl/gstqueue.sgml:
8405         * docs/gst/tmpl/gstregistry.sgml:
8406         * docs/gst/tmpl/gstscheduler.sgml:
8407         * docs/gst/tmpl/gstshaper.sgml:
8408         * docs/gst/tmpl/gstspider.sgml:
8409         * docs/gst/tmpl/gstspideridentity.sgml:
8410         * docs/gst/tmpl/gststatistics.sgml:
8411         * docs/gst/tmpl/gstsystemclock.sgml:
8412         * docs/gst/tmpl/gsttee.sgml:
8413         * docs/gst/tmpl/gstthread.sgml:
8414         * docs/gst/tmpl/gsttypefind.sgml:
8415         * docs/gst/tmpl/gstutils.sgml:
8416           further doc build fixes
8417
8418 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8419
8420         * docs/gst/Makefile.am:
8421           make docs exit on scanning problems
8422           fix nonsrcdir build issues
8423         * docs/gst/gstreamer-sections.txt:
8424           adding stuff from -unused
8425         * gst/gstqueue.h:
8426           create GstQueueSize
8427         * gst/schedulers/cothreads_compat.h:
8428           fix cothread warnings
8429
8430 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8431
8432         * docs/gst/gstreamer-sections.txt:
8433           remove defines deprecated by Benjamin
8434
8435 2004-04-07  Benjamin Otte  <otte@gnome.org>
8436
8437         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8438           when the buffer is complete, don't check if other buffers are needed
8439         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8440           check that the offset is >0 so we don't try to read before the
8441           beginning of the file
8442         * gst/gstpad.c: (gst_pad_set_pad_template):
8443           sink the template, so we don't end up with 130k pad templates
8444
8445 2004-04-06  Benjamin Otte  <otte@gnome.org>
8446
8447         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8448           don't ref the element, adding already reffed it. And we didn't unref
8449           it later anyway... (huge memleak when you used many spider elements)
8450         * gst/gstelement.c: (gst_element_base_class_finalize):
8451         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8452         (gst_element_register):
8453         * gst/gsturi.c: (gst_element_make_from_uri):
8454           use gst_object_(un)ref instead of g_object(un)ref
8455
8456 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8457
8458         * gst/gstbuffer.h:
8459           remove macro that wouldn't work anymore because struct member has
8460           been removed.
8461         * gst/schedulers/entryscheduler.c: (schedule_forward):
8462           fix segfault for unconnected pads
8463         
8464 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8465
8466         reviewed by David Schleef <ds@schleef.org>
8467
8468         * gst/gstinfo.h:
8469           *_FORMAT modifiers should require putting a % in front of them for
8470           consistency reasons.
8471
8472 2004-04-05  Colin Walters  <walters@redhat.com>
8473
8474         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8475         space.
8476
8477 2004-04-05  Benjamin Otte  <otte@gnome.org>
8478
8479         * configure.ac:
8480         * gst/Makefile.am:
8481         * gst/gst_private.h:
8482         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8483           add support for detecting if GStreamer runs inside valgrind.
8484           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8485           print a big message in valgrind that GStreamer has detected it's
8486           running inside and might now use different code.
8487         * gst/gstmemchunk.c: (populate), (free_area),
8488         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8489         (gst_mem_chunk_free):
8490           flag memchunks for valgrind, so it can detect leaking of chunks.
8491           This allows detecting leaks of GstBuffer and GstEvent correctly
8492           inside valgrind.
8493
8494 2004-04-05  David Schleef  <ds@schleef.org>
8495
8496         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8497           jensgr@gmx.net (Jens Granseuer)
8498
8499 2004-04-05  David Schleef  <ds@schleef.org>
8500
8501         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8502         (gst_buffer_default_free), (gst_buffer_default_copy),
8503         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8504         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8505         structures in one place.
8506
8507 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8508
8509         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8510           (GST_TIME_FORMAT, GST_TIME_ARGS)
8511
8512 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8513
8514         * testsuite/elements/Makefile.am:
8515           disable test until it stops breaking make distcheck
8516
8517 2004-04-05  Johan Dahlin  <johan@gnome.org>
8518
8519         * po/sv.po: Updated translation
8520
8521 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8522
8523         * gst/gstplugin.c: (gst_plugin_load_file):
8524           fix segfault for when original plugin was loaded statically
8525
8526 2004-04-05  Benjamin Otte  <otte@gnome.org>
8527
8528         * testsuite/debug/category.c: (main):
8529         * testsuite/debug/commandline.c: (main):
8530         * testsuite/debug/output.c: (main):
8531           fix tests to work again with debugging enabled
8532
8533 2004-04-05  Benjamin Otte  <otte@gnome.org>
8534
8535         * gst/schedulers/gstbasicscheduler.c:
8536         (gst_basic_scheduler_pad_link):
8537           fix to work with recent scheduling changes
8538
8539 2004-04-05  Benjamin Otte  <otte@gnome.org>
8540
8541         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8542         prepareChangeLog doesn't work when cvs indents):
8543           don't throw an error when no element can be scheduled, there's too
8544           many weird reasons why it doesn't work. Return STOPPED instead.
8545           decoupled elemts' schedulability doesn't depend on bufpens.
8546
8547 2004-04-04  Benjamin Otte  <otte@gnome.org>
8548
8549         * gst/schedulers/gstbasicscheduler.c:
8550         (gst_basic_scheduler_pad_select):
8551           fix uninitialized variable warnings
8552
8553 2004-04-04  Benjamin Otte  <otte@gnome.org>
8554
8555         * gst/gstpad.c: (gst_pad_collect_valist):
8556           fix uninitialized variable warning
8557         * gst/schedulers/entryscheduler.c: (schedule_forward):
8558           fix shadowed variable
8559
8560 2004-04-04  Benjamin Otte  <otte@gnome.org>
8561
8562         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8563         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8564         (gst_pad_select):
8565         * gst/gstpad.h:
8566         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8567         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8568         * gst/gstscheduler.h:
8569           implement gst_pad_collect as replacement for gst_pad_select.
8570           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8571           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8572           new pad_select, lock and unlock calls.
8573         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8574         * gst/cothreads.h:
8575         * gst/schedulers/cothreads_compat.h:
8576         * gst/schedulers/gthread-cothreads.h:
8577           remove unused cothread_lock and cothread_unlock calls
8578         * gst/schedulers/entryscheduler.c:
8579         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8580         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8581         (gst_entry_scheduler_pad_select):
8582           update to new API
8583         * gst/schedulers/gstbasicscheduler.c:
8584         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8585         (gst_basic_scheduler_pad_select):
8586           remove useless lock and unlock calls, update pad_select to new API
8587           (untested)
8588         * gst/schedulers/gstoptimalscheduler.c:
8589         (gst_opt_scheduler_class_init):
8590           remove useless select, lock and unlock function calls
8591         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8592           use gst_pad_collect instead of gst_pad_select
8593
8594 2004-04-04  Benjamin Otte  <otte@gnome.org>
8595
8596         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8597         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8598         (schedule_next_element), (print_entry):
8599           add can_schedule_pad to handle element states.
8600           add schedule_forward to select the correct entry to schedule next
8601
8602 2004-04-03  Benjamin Otte  <otte@gnome.org>
8603
8604         * gst/schedulers/entryscheduler.c: 
8605           remove unused variable, fix error inside Rb, fix compile warning in
8606           unreachable code
8607
8608 2004-04-03  Benjamin Otte  <otte@gnome.org>
8609
8610         * gst/schedulers/entryscheduler.c:
8611           completely revamp the inner workings, so it's a lot easier to
8612           understand and extend
8613
8614 2004-04-03  Andy Wingo  <wingo@pobox.com>
8615
8616         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8617         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8618         This allows better introspection of pipeline topology.
8619         (add_to_chain): Don't do trickery to put loop elements first;
8620         rather, queue a chain sort by marking the chain as dirty.
8621         (remove_from_chain): Mark the chain dirty.
8622         (sort_chain): New function. Sorts the group list so that terminal
8623         sinks are first. This means elements on the sink side will be
8624         preferentially sscheduled before elements on the src side of the
8625         pipeline.
8626         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8627         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8628         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8629         (group_inc_link): Change argument and variable names to match the
8630         new link structure member names (src and sink).
8631         (group_dec_link): Add some description
8632
8633 2004-04-03  Benjamin Otte  <otte@gnome.org>
8634
8635         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8636         * gst/gstinfo.h:
8637         * testsuite/debug/category.c: (main):
8638         * testsuite/debug/commandline.c: (main):
8639         * testsuite/debug/output.c: (main):
8640         * testsuite/debug/printf_extension.c: (main):
8641           fix to successfully build and test with --disable-gst-debug
8642           configure switch (fixes #138705)
8643
8644 2004-04-03  Benjamin Otte  <otte@gnome.org>
8645
8646         * docs/pwg/building-boiler.xml:
8647           add cvs login line and s/anonymous/anoncvs/
8648
8649 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8650
8651         reviewed by Benjamin Otte  <otte@gnome.org>
8652
8653         * gst/gststructure.c: (gst_structure_free):
8654           memleak fix: free fields array (partial fix for #134839)
8655
8656 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8657
8658         * docs/random/ds/0.9-suggested-changes:
8659           Add a note to change handoff use in fakesrc to be usable in
8660           a more generic way (fakesrc should be renamed to appsrc or so).
8661         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8662           Change signal type to scope, so we can fill the buffer in the
8663           handoff handler (that's the whole use of this signal...).
8664
8665 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8666
8667         * docs/pwg/other-ntoone.xml:
8668           Document muxers and n-to-1 elements.
8669
8670 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8671
8672         * gst/registries/gstxmlregistry.c
8673         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8674         determine if a file is a G_MODULE. The old one discards paths
8675         containing "so" somewhere in the middle. My home directory is
8676         called "soto". Go figure...
8677
8678 2004-03-31  David Schleef  <ds@schleef.org>
8679
8680         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8681         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8682         * gst/gstbuffer.h:
8683
8684 2004-03-31  David Schleef  <ds@schleef.org>
8685
8686         * gst/gstvalue.c: (gst_value_union_int_int_range),
8687         (gst_value_union_int_range_int_range), (gst_value_can_union),
8688         (gst_value_union), (_gst_value_initialize):  Add some union
8689         implementations.  We didn't have any previously.
8690         * testsuite/caps/Makefile.am:
8691         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8692         (gst_audioscale_getcaps), (test_caps), (main): A little test
8693         that is the same as the caps manipulation in audioscale.
8694
8695 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8696
8697         * docs/faq/general.xml:
8698           add entry about "does gst support format X?"
8699
8700 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8701
8702         * gst/gstthread.c:
8703           fix docs
8704         * gst/gstutils.h:
8705           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8706
8707 2004-03-30  Benjamin Otte  <otte@gnome.org>
8708
8709         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8710           set the offset of the buffer to the requested offset
8711         * gst/elements/gsttypefind.c: (stop_typefinding):
8712           revert patch 1.18 (which I unfortunately don't know the reason for).
8713           This is needed to allow downstream elements to seek. Otherwise
8714           typefind might overwrite a previous seek by downstream elements.
8715           This lead to errors with id3tag and typefind on some mp3s.
8716         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8717         (gst_entry_scheduler_iterate):
8718           be more verbose when debugging
8719
8720 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8721
8722         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8723           make sure we don't get NULL strings
8724
8725 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8726
8727         * gst/gstcaps.c:
8728         * gst/gstelement.c:
8729         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8730         * gst/gstindex.c: (gst_index_resolver_get_type),
8731         (gst_index_get_type), (gst_index_factory_get_type):
8732         * gst/gstinfo.c:
8733         * gst/gstpad.c:
8734         * gst/gstplugin.c:
8735         * gst/gsturi.c: (gst_uri_handler_get_type):
8736         * gst/gstvalue.c:
8737           first batch of documentation fixes
8738
8739 2004-03-29  David Schleef  <ds@schleef.org>
8740
8741         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8742         * docs/gst/gstreamer-docs.sgml:  More hacking
8743         * docs/gst/gstreamer-sections.txt:
8744         * docs/gst/tmpl/cothreads_compat.sgml:
8745         * docs/gst/tmpl/gstcaps.sgml:
8746         * docs/gst/tmpl/gstclock.sgml:
8747         * docs/gst/tmpl/gstelement.sgml:
8748         * docs/gst/tmpl/gstevent.sgml:
8749         * docs/gst/tmpl/gstpad.sgml:
8750         * docs/gst/tmpl/gstutils.sgml:
8751         * docs/gst/tmpl/gstxml.sgml:
8752         * docs/gst/tmpl/gthread-cothreads.sgml:
8753         * docs/random/ds/0.9-suggested-changes:
8754         * gst/elements/gstfakesink.h: doc fixes
8755         * gst/elements/gstfakesrc.h: doc fixes
8756         * gst/gstcaps.c: doc fixes
8757         * gst/gstcaps.h: doc fixes
8758         * gst/gstelement.c: doc fixes
8759         * gst/gstelement.h: doc fixes
8760         * gst/gstindex.c: doc fixes
8761         * gst/gstinfo.c: doc fixes
8762         * gst/gstpad.c: doc fixes
8763         * gst/gstpad.h: doc fixes
8764         * gst/gstplugin.c: doc fixes
8765         * gst/gsttypefind.h: doc fixes
8766         * gst/gsturi.c: doc fixes
8767         * gst/gstvalue.c: doc fixes
8768
8769 2004-03-29  Colin Walters  <walters@redhat.com>
8770
8771         * gst/registries/gstxmlregistry.c (get_time)
8772         (plugin_times_older_than_recurse):
8773         Use the result of stat to determine whether a path is a file,
8774         so we don't attempt to opendir() files.
8775
8776 2004-03-29  Benjamin Otte  <otte@gnome.org>
8777
8778         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8779           print caps in debugging output when setting caps failed
8780         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8781         (schedule_next_element), (get_buffer), (run_chainhandler),
8782         (element_may_start), (gst_entry_scheduler_chain_handler),
8783         (gst_entry_scheduler_get_handler),
8784         (gst_entry_scheduler_state_transition),
8785         (gst_entry_scheduler_pad_link):
8786           make this scheduler a testcase for mandatory
8787           discont-before-first-buffer which is needed if we want to allow apps
8788           to release the sound device.
8789           add SCHED_ASSERT macro to print scheduler state before an assertion
8790           triggers.
8791
8792 2004-03-29  Benjamin Otte  <otte@gnome.org>
8793
8794         * COPYING:
8795           replace by LGPL (former COPYING.LIB). The core is completely
8796           licensed LGPL.
8797         * COPYING.LIB:
8798           remove
8799
8800 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8801
8802         * po/af.po:
8803         * po/sv.po:
8804           updated Afrikaans and Swedish
8805
8806 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8807
8808         * po/LINGUAS:
8809         * po/az.po:
8810           adding Azerbaijani (Mətin Əmirov)
8811
8812 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8813
8814         * gst/gstelement.h: 
8815         * gst/gstelement.c (gst_element_set_time_delay): New function for
8816         setting element time taking into account a hardware buffering
8817         delay.
8818         (gst_element_set_time): Now just an invocation of
8819         gst_element_set_time_delay.
8820         * gst/gstclock.h: 
8821         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8822         allowing to set event times in the future.
8823         (gst_clock_get_event_time): Now just an invocation of
8824         gst_clock_get_event_time_delay.
8825
8826 2004-03-28  Benjamin Otte  <otte@gnome.org>
8827
8828         * gst/gstbin.c: (gst_bin_set_element_sched),
8829         (gst_bin_unset_element_sched):
8830           don't add decoupled elements to schedulers - otherwise it's
8831           impossible to control if a link to a decoupled element was already
8832           removed from a scheduler or not.
8833         * gst/schedulers/cothreads_compat.h:
8834         * gst/schedulers/gthread-cothreads.h:
8835           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8836           is no "unused" warning.
8837         * gst/schedulers/Makefile.am:
8838         * gst/schedulers/entryscheduler.c:
8839           add new scheduler, based on ideas from talking to David and Martin.
8840           It's supposed to be small and correct. Currently it's also slow (but
8841           it's not noticable)
8842         * examples/retag/retag.c: (main):
8843         * testsuite/bytestream/test1.c: (main):
8844           fix missing NULLs at end of variadic functions
8845         * testsuite/elements/.cvsignore:
8846           update
8847
8848 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8849
8850         * gst/gstevent.h:
8851         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8852
8853 2004-03-25  David Schleef  <ds@schleef.org>
8854
8855         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8856         * docs/gst/tmpl/gstaggregator.sgml:
8857         * docs/gst/tmpl/gstautoplugfactory.sgml:
8858         * docs/gst/tmpl/gstbin.sgml:
8859         * docs/gst/tmpl/gstbuffer.sgml:
8860         * docs/gst/tmpl/gstbufferstore.sgml:
8861         * docs/gst/tmpl/gstfakesink.sgml:
8862         * docs/gst/tmpl/gstfakesrc.sgml:
8863         * docs/gst/tmpl/gstmd5sink.sgml:
8864         * docs/gst/tmpl/gstreamer-unused.sgml:
8865         * docs/gst/tmpl/gstsearchfuncs.sgml:
8866         * docs/gst/tmpl/gstshaper.sgml:
8867         * docs/gst/tmpl/gstspider.sgml:
8868         * docs/gst/tmpl/gsttee.sgml:
8869         * docs/gst/tmpl/gstutils.sgml:
8870         * docs/gst/tmpl/gstvalue.sgml:
8871         * docs/gst/tmpl/gstxml.sgml:
8872         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8873         and we don't support it.
8874         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8875         (gst_use_threads), (gst_has_threads): same
8876         * gst/gstthreaddummy.c: same
8877         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8878         * gst/autoplug/gstspider.h: same
8879         * gst/elements/gstaggregator.h: Remove bogus function from header
8880         * gst/elements/gstfakesink.h: same
8881         * gst/elements/gstfakesrc.h: same
8882         * gst/elements/gstmd5sink.h: same
8883         * gst/elements/gstshaper.h: same
8884         * gst/elements/gsttee.h: same
8885         * gst/gstbin.c: doc fixes
8886         * gst/gstbin.h: Remove unused definition.
8887         * gst/gstbuffer.c: doc fixes
8888         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8889         * gst/gstfilter.c: doc fixes
8890         * gst/gsttag.c: doc fixes
8891         * gst/gstvalue.c: doc fixes
8892
8893 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8894
8895         * docs/pwg/advanced-types.xml:
8896           Document typefinding.
8897         * docs/pwg/other-oneton.xml:
8898           Document one-to-n elements, demuxers and parsers.
8899
8900 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8901
8902         reviewed by: David Schleef  <ds@schleef.org>
8903
8904         * configure.ac: Check bison version (bug #127838)
8905
8906 2004-03-25  David Schleef  <ds@schleef.org>
8907
8908         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8909         * docs/gst/gstreamer-sections.txt:
8910         * docs/gst/tmpl/gstautoplug.sgml:
8911         * docs/gst/tmpl/gststaticautoplug.sgml:
8912         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8913         * docs/gst/tmpl/gstutils.sgml:
8914         * docs/gst/tmpl/gstxml.sgml:
8915
8916 2004-03-24  David Schleef  <ds@schleef.org>
8917
8918         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8919         manual being such complete crap, that I decided to do major
8920         hacking of it.  This checkin replaces any fine tuning that
8921         may have been done previously, with the benefit of actually
8922         being complete for much of the API that was changed since
8923         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8924         * docs/gst/gstreamer-sections.txt:
8925         * docs/gst/tmpl/GstBin.sgml:
8926         * docs/gst/tmpl/GstBuffer.sgml:
8927         * docs/gst/tmpl/GstCaps.sgml:
8928         * docs/gst/tmpl/GstClock.sgml:
8929         * docs/gst/tmpl/GstCompat.sgml:
8930         * docs/gst/tmpl/GstData.sgml:
8931         * docs/gst/tmpl/GstElement.sgml:
8932         * docs/gst/tmpl/GstEvent.sgml:
8933         * docs/gst/tmpl/GstIndex.sgml:
8934         * docs/gst/tmpl/GstStructure.sgml:
8935         * docs/gst/tmpl/GstTag.sgml:
8936         * docs/gst/tmpl/cothreads.sgml:
8937         * docs/gst/tmpl/cothreads_compat.sgml:
8938         * docs/gst/tmpl/gettext.sgml:
8939         * docs/gst/tmpl/grammar.tab.sgml:
8940         * docs/gst/tmpl/gst-i18n-app.sgml:
8941         * docs/gst/tmpl/gst-i18n-lib.sgml:
8942         * docs/gst/tmpl/gst.sgml:
8943         * docs/gst/tmpl/gst_private.sgml:
8944         * docs/gst/tmpl/gstaggregator.sgml:
8945         * docs/gst/tmpl/gstarch.sgml:
8946         * docs/gst/tmpl/gstatomic.sgml:
8947         * docs/gst/tmpl/gstatomic_impl.sgml:
8948         * docs/gst/tmpl/gstbin.sgml:
8949         * docs/gst/tmpl/gstbuffer.sgml:
8950         * docs/gst/tmpl/gstbufferstore.sgml:
8951         * docs/gst/tmpl/gstcaps.sgml:
8952         * docs/gst/tmpl/gstclock.sgml:
8953         * docs/gst/tmpl/gstcompat.sgml:
8954         * docs/gst/tmpl/gstconfig.sgml:
8955         * docs/gst/tmpl/gstcpu.sgml:
8956         * docs/gst/tmpl/gstdata.sgml:
8957         * docs/gst/tmpl/gstdata_private.sgml:
8958         * docs/gst/tmpl/gstelement.sgml:
8959         * docs/gst/tmpl/gstenumtypes.sgml:
8960         * docs/gst/tmpl/gsterror.sgml:
8961         * docs/gst/tmpl/gstevent.sgml:
8962         * docs/gst/tmpl/gstfakesink.sgml:
8963         * docs/gst/tmpl/gstfakesrc.sgml:
8964         * docs/gst/tmpl/gstfilesink.sgml:
8965         * docs/gst/tmpl/gstfilter.sgml:
8966         * docs/gst/tmpl/gstindex.sgml:
8967         * docs/gst/tmpl/gstinfo.sgml:
8968         * docs/gst/tmpl/gstinterface.sgml:
8969         * docs/gst/tmpl/gstlog.sgml:
8970         * docs/gst/tmpl/gstmacros.sgml:
8971         * docs/gst/tmpl/gstmarshal.sgml:
8972         * docs/gst/tmpl/gstmd5sink.sgml:
8973         * docs/gst/tmpl/gstmultifilesrc.sgml:
8974         * docs/gst/tmpl/gstobject.sgml:
8975         * docs/gst/tmpl/gstpad.sgml:
8976         * docs/gst/tmpl/gstparse.sgml:
8977         * docs/gst/tmpl/gstpipeline.sgml:
8978         * docs/gst/tmpl/gstplugin.sgml:
8979         * docs/gst/tmpl/gstpluginfeature.sgml:
8980         * docs/gst/tmpl/gstqueue.sgml:
8981         * docs/gst/tmpl/gstreamer-unused.sgml:
8982         * docs/gst/tmpl/gstregistry.sgml:
8983         * docs/gst/tmpl/gstregistrypool.sgml:
8984         * docs/gst/tmpl/gstscheduler.sgml:
8985         * docs/gst/tmpl/gstsearchfuncs.sgml:
8986         * docs/gst/tmpl/gstshaper.sgml:
8987         * docs/gst/tmpl/gstspider.sgml:
8988         * docs/gst/tmpl/gstspideridentity.sgml:
8989         * docs/gst/tmpl/gststructure.sgml:
8990         * docs/gst/tmpl/gstsystemclock.sgml:
8991         * docs/gst/tmpl/gsttag.sgml:
8992         * docs/gst/tmpl/gsttaginterface.sgml:
8993         * docs/gst/tmpl/gsttee.sgml:
8994         * docs/gst/tmpl/gstthread.sgml:
8995         * docs/gst/tmpl/gsttrace.sgml:
8996         * docs/gst/tmpl/gsttrashstack.sgml:
8997         * docs/gst/tmpl/gsttypefind.sgml:
8998         * docs/gst/tmpl/gsttypes.sgml:
8999         * docs/gst/tmpl/gsturi.sgml:
9000         * docs/gst/tmpl/gsturitype.sgml:
9001         * docs/gst/tmpl/gstutils.sgml:
9002         * docs/gst/tmpl/gstvalue.sgml:
9003         * docs/gst/tmpl/gstversion.sgml:
9004         * docs/gst/tmpl/gstxml.sgml:
9005         * docs/gst/tmpl/gstxmlregistry.sgml:
9006         * docs/gst/tmpl/gthread-cothreads.sgml:
9007         * docs/gst/tmpl/types.sgml:
9008
9009 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9010
9011         * docs/pwg/other-sink.xml:
9012         * docs/pwg/other-source.xml:
9013           Documentation on how to write source and sink elements. Other
9014           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
9015           manager, autoplugger) are all still pending.
9016
9017 2004-03-25  Benjamin Otte  <otte@gnome.org>
9018
9019         * testsuite/elements/Makefile.am:
9020         * testsuite/elements/gst-compprep-check:
9021           add check to make sure gst-compprep works
9022         * testsuite/elements/gst-inspect-check.in:
9023           improve initialization output
9024         * testsuite/Makefile.am:
9025         * testsuite/gst-inspect-check:
9026           remove old file
9027
9028 2004-03-24  David Schleef  <ds@schleef.org>
9029
9030         * testsuite/elements/Makefile.am:
9031         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9032         to the testsuite.
9033
9034 2004-03-24  Benjamin Otte  <otte@gnome.org>
9035
9036         * libs/gst/control/dparam.c: (gst_dparam_attach),
9037         (gst_dparam_detach):
9038         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9039           fix lvalue casts for real
9040
9041 2004-03-24  Benjamin Otte  <otte@gnome.org>
9042
9043         * gst/schedulers/gstbasicscheduler.c:
9044         (gst_basic_scheduler_src_wrapper):
9045         * gst/schedulers/gstoptimalscheduler.c:
9046         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9047         (pad_clear_queued), (gst_opt_scheduler_add_element),
9048         (gst_opt_scheduler_remove_element):
9049           fix GStreamer to not have issues with lvalue casts anymore (fixes
9050           #136841)
9051
9052 2004-03-24  Benjamin Otte  <otte@gnome.org>
9053
9054         * gst/gstelement.c:
9055           add documentation about a gobject quirk where the object hasn't the
9056           correct class pointer set on initialization
9057         * gst/schedulers/gstbasicscheduler.c:
9058         (gst_basic_scheduler_src_wrapper):
9059           make sure to not run into an infinite loop
9060
9061 2004-03-22  Benjamin Otte  <otte@gnome.org>
9062
9063         * gst/gstutils.c: (gst_util_dump_mem):
9064         * gst/gstutils.h:
9065           first argument of gst_util_dump_mem should be const
9066
9067 2004-03-22  Johan Dahlin  <johan@gnome.org>
9068
9069         * gst/gstvalue.h: Clean up a little bit.
9070
9071 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9072
9073         reviewed by Benjamin Otte  <otte@gnome.org>
9074
9075         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9076         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9077         (gst_aggregator_class_init), (gst_aggregator_init):
9078         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9079         (gst_filesrc_dispose), (gst_filesrc_set_location):
9080         * gst/elements/gstidentity.c: (gst_identity_finalize),
9081         (gst_identity_class_init), (gst_identity_chain):
9082         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9083         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9084         (gst_statistics_class_init):
9085         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9086         (gst_tee_get_property):
9087           clean up used memory in this elements correctly on teardown (closes
9088           #137279)
9089
9090 2004-03-20  Colin Walters  <walters@redhat.com>
9091
9092         * gst/registries/gstxmlregistry.c:
9093         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9094         registry saving atomic.
9095
9096 2004-03-20  Colin Walters  <walters@redhat.com>
9097
9098         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
9099         Just use
9100         access() instead of actually creating and deleting files.
9101
9102 2004-03-18  David Schleef  <ds@schleef.org>
9103
9104         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
9105         (bug #137625)
9106
9107 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9108
9109         * po/sv.po: updated translation (Christian Rose)
9110
9111 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9112
9113         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9114         (gst_filesink_get_query_types), (_do_init),
9115         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
9116           return FALSE silently
9117         * po/af.po: updated translation (Petri Jooste)
9118
9119 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9120
9121         * Makefile.am:
9122         * configure.ac:
9123           dist common properly
9124         * po/af.po:
9125         * po/fr.po:
9126         * po/nl.po:
9127         * po/sr.po:
9128         * po/sv.po:
9129           refreshing translations
9130
9131 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9132
9133         * po/LINGUAS:
9134         * po/sv.po:
9135         * po/af.po:
9136           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
9137
9138 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9139
9140         * Makefile.am: use common/release.mak
9141
9142 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9143
9144         * docs/faq/gst-uninstalled:
9145           adding gst-monkeysaudio to the list of possible plugin dirs
9146
9147 2004-03-16  David Schleef  <ds@schleef.org>
9148
9149         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
9150         (gst_init_check_with_popt_table):  Fix some gettext strings to
9151         make them easier to translate.  Required making the strings
9152         non-const.
9153
9154 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9155
9156         * configure.ac: bump nano to 1
9157
9158 === release 0.8.0 ===
9159
9160 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9161
9162         * configure.ac: release 0.8.0, "Executive Slacks"
9163
9164 2004-03-16  Johan Dahlin  <johan@gnome.org>
9165
9166         * gst/schedulers/gstoptimalscheduler.c
9167         (gst_opt_scheduler_pad_unlink): Remove double ;,
9168         spotted by Scott Wheeler
9169
9170 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9171
9172         * configure.ac: bump libtool version
9173
9174 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9175
9176         * gst/gstcaps.h:
9177         * gst/gststructure.h:
9178           add reserved padding
9179
9180 2004-03-15  Benjamin Otte  <otte@gnome.org>
9181
9182         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9183           set the first parameter for select call correctly.
9184           (fixes #137230)
9185
9186 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9187
9188         * *.c,*.h: don't mix tabs and spaces
9189
9190 2004-03-15  Johan Dahlin  <johan@gnome.org>
9191
9192         * gst/schedulers/gstoptimalscheduler.c
9193         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
9194         crash on MPEG playback. My boolean arithmetic is a bit rusty.
9195
9196         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
9197         
9198 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9199
9200         * testsuite/Rules:
9201           fix gst-register rules
9202
9203 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9204
9205         * testsuite/Rules:
9206           use versioned gst-register
9207
9208 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9209
9210         * docs/libs/gstreamer-libs-sections.txt:
9211           remove </SUBSECTION>
9212         * gst/gstplugin.c:
9213         * gst/gstregistry.c: (gst_registry_add_plugin):
9214         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
9215         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
9216           add debugging and fix some comment blocks
9217
9218 2004-03-15  Johan Dahlin  <johan@gnome.org>
9219
9220         * *.h: Revert indent changes.
9221         
9222 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9223
9224         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
9225           g_error_free the g_error
9226         * tools/gst-feedback-m.m:
9227           check for other versions of gstreamer
9228         * tools/gst-indent:
9229           use sh, not bash
9230
9231 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9232
9233         * tools/gst-register.c: do not spill paths when registries are not
9234           writable, until we fix the "user running gst-register" case.
9235
9236 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9237
9238         * *.c, *.h: commit of gst-indent run on core
9239
9240 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9241
9242         * tools/gst-indent:
9243         * tools/Makefile.am:
9244           add our indentation style as a script
9245
9246 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9247
9248         * po/sr.po:
9249         * po/LINGUAS:
9250           added Serbian translation
9251
9252 2004-03-13  Benjamin Otte  <otte@gnome.org>
9253
9254         * gst/gstelement.c:
9255           add documentation note about gst_element_found_tags_for_pad not
9256           being usable in getfunctions. (see #137042)
9257
9258 2004-03-12  David Schleef  <ds@schleef.org>
9259
9260         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
9261         change API right now!  Readd gst_caps_is_simple() macro.
9262         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
9263         uninitialized variable.  I'd bet this caused crashes.
9264         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
9265
9266 2004-03-12  Johan Dahlin  <johan@gnome.org>
9267
9268         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
9269         * gst/gstcaps.h: Clean up
9270
9271         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9272         _gst_caps_initalize()
9273
9274         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9275         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9276
9277         * gst/gststructure.c (gst_structure_get_type): Ditto
9278
9279         * gst/gststructure.h: Ditto
9280         
9281 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9282
9283         * gst/gstqueue.c: (gst_queue_init):
9284           Reset default max. values in queues. Reason is simply to avoid
9285           braindead use. If you want wider values, use the properties. The
9286           default is supposed to always work. Wider values would make this
9287           beast a memory hog by default (250 full-PAL RGB32 video frames?
9288           That's 440 MB! No thank you).
9289
9290 2004-03-10  David Schleef  <ds@schleef.org>
9291
9292         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9293         were found.  (bug #136793)
9294
9295 2004-03-10  Johan Dahlin  <johan@gnome.org>
9296
9297         * gst/schedulers/gstoptimalscheduler.c
9298         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9299         links to elements within the same group, so we can finally remove
9300         that annoying warning. Refactor the code a little bit
9301         (group_dec_links_for_element): Split out
9302
9303 2004-03-09  David Schleef  <ds@schleef.org>
9304
9305         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9306         (bug #134863)
9307
9308 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9309
9310         * configure.ac: first bug fix due to major/minor bump
9311
9312 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9313
9314         * configure.ac: bump nano to 1
9315
9316 === release 0.7.6 ===
9317
9318 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9319
9320         * NEWS:
9321         * RELEASE:
9322         * configure.ac:
9323           releasing 0.7.6, "Almost"
9324         * po/fr.po:
9325         * po/nl.po:
9326         * tools/Makefile.am:
9327         * tools/gst-feedback-m.m:
9328           unversioned source
9329
9330 2004-03-09  Johan Dahlin  <johan@gnome.org>
9331
9332         Reviewed by: Thomas Vander Stichele
9333
9334         * gst/gstelement.c (gst_element_class_init): register second
9335         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9336         language bindings can (de)marshall correctly.
9337
9338         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9339
9340         * gst/gsterror.c (gst_g_error_get_type): New function
9341
9342         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9343         with VOID:OBJECT,OBJECT,STRING 
9344
9345 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9346
9347         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9348         Free a leaked g_timer on early returns.
9349
9350 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9351
9352         * docs/pwg/advanced-types.xml:
9353           Add cinepak description.
9354
9355 2004-03-07  David Schleef  <ds@schleef.org>
9356
9357         * docs/random/mimetypes:  Added cinepak description
9358
9359 2004-03-07  Andy Wingo  <wingo@pobox.com>
9360
9361         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9362
9363         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9364         there are no links to other groups when a group is destroyed.
9365         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9366         removed from a group, make sure the link count to elements linked
9367         to other pads is appropriately decremented. This really fixes
9368         #135672.
9369
9370         The 1.60->1.61 patch has been reapplied in light of this fix.
9371
9372         * gst/gstelement.c (gst_element_dispose): Really protect against
9373         multiple invocations this time.
9374
9375 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9376
9377         * docs/gst/gstreamer-sections.txt:
9378         * docs/gst/tmpl/gsttag.sgml:
9379           remove some deprecated functions, document some existing ones
9380         * gst/gsttag.c: (gst_tag_get_flag):
9381         * gst/gsttag.h:
9382           add accessor function
9383
9384 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9385
9386         * docs/gst/gstreamer-sections.txt:
9387         * docs/gst/tmpl/gsttag.sgml:
9388         * docs/gst/tmpl/gstxml.sgml:
9389         * gst/gsttag.c: (gst_tag_get_flag):
9390         * gst/gsttag.h:
9391
9392 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9393
9394         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9395         leak
9396
9397 2004-03-05  David Schleef  <ds@schleef.org>
9398
9399         * REQUIREMENTS: Add bison and flex.
9400         * configure.ac: Fix comment about bison.
9401         * docs/random/ds/0.9-suggested-changes: yer ma
9402         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9403
9404 2004-03-05  Benjamin Otte  <otte@gnome.org>
9405
9406         * gst/gstelement.c: (gst_element_error_full):
9407           revert recent recursive state changing commit - messing with other
9408           elements' states is evil and should be done by apps only.
9409
9410 2004-03-05  Benjamin Otte  <otte@gnome.org>
9411
9412         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9413           check for empty intersection instead of NULL caps
9414         (gst_element_get_compatible_pad_filtered):
9415           remove old workaround that is only a bug nowadays
9416
9417 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9418
9419         * gst/gstelement.c: (gst_element_error_full):
9420           make elements try to recursively change state to PAUSED on all
9421           parents after an error to suppress ensuing warnings
9422         * gst/parse/grammar.y:
9423           make it check if it was able to sync the state, and throw an error
9424           if not, so stuff like
9425           oggdemux ! vorbisdec ! osssink gets caught
9426
9427 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9428
9429         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9430           it contains lib64; use AS_AC_EXPAND to handle it properly
9431
9432 2004-03-05  David Schleef  <ds@schleef.org>
9433
9434         * gst/gstcpuid_i386.s:  Remove unused code
9435         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9436         (gst_getbits_newbuf): Remove MMX code
9437         * libs/gst/getbits/getbits.h: Remove MMX code
9438
9439 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9440
9441         * debian/.cvsignore:
9442         * debian/README.Debian:
9443         * debian/changelog:
9444         * debian/control:
9445         * debian/control.in:
9446         * debian/copyright:
9447         * debian/gstreamer-core-libs-dev.files:
9448         * debian/gstreamer-core-libs.files:
9449         * debian/gstreamer-core.files:
9450         * debian/gstreamer-core.postinst:
9451         * debian/gstreamer-core.postrm:
9452         * debian/gstreamer-doc.files:
9453         * debian/gstreamer-doc.links:
9454         * debian/gstreamer-doc.lintian:
9455         * debian/gstreamer-runtime.files:
9456         * debian/gstreamer-runtime.manpages:
9457         * debian/gstreamer-runtime.postinst:
9458         * debian/gstreamer-runtime.postrm:
9459         * debian/gstreamer-tools.files:
9460         * debian/gstreamer-tools.manpages:
9461         * debian/libgstreamer-dev.files:
9462         * debian/libgstreamer0.4.1.files:
9463         * debian/libgstreamerVERSION.files:
9464         * debian/rules:
9465         Debian package info not maintained here.
9466
9467 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9468
9469         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9470         * gst/gstbin.c: (gst_bin_class_init):
9471         * gst/gstelement.c: (gst_element_class_init):
9472         * gst/gstindex.c: (gst_index_class_init):
9473         * gst/gstobject.c: (gst_object_class_init),
9474         (gst_signal_object_class_init):
9475         * gst/gstpad.c: (gst_pad_template_class_init):
9476         * gst/gstregistry.c: (gst_registry_class_init):
9477         * gst/gsturi.c: (gst_uri_handler_base_init):
9478         * gst/gstxml.c: (gst_xml_class_init):
9479         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9480         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9481           make all signal names use dashes instead of underscore
9482
9483 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9484
9485         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9486
9487 2004-03-03  Benjamin Otte  <otte@gnome.org>
9488
9489         * gst/schedulers/gstoptimalscheduler.c:
9490           revert last commit by Andy Wingo. It causes segfaults on unreffing
9491           in Rhythmbox. (see bug #135672)
9492
9493 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9494
9495         * po/fr.po: fix typo
9496
9497 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9498
9499         * tools/gst-inspect.c: (main): 
9500         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9501
9502 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9503
9504         * configure.ac:
9505           get GLIB_ONLY and POPT flags for the nonversioned binaries
9506         * tools/Makefile.am:
9507           use them
9508
9509 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9510
9511         * gst/gst.c: (init_post):
9512           change so that GST_REGISTRY now is where the global registry gets
9513           saved, since that is where plugins now get attached to first, and
9514           spilled over to the user registry.  Note that in the case of using
9515           GST_REGISTRY env var, we don't want to affect any real registries
9516           beyond the one given by this var, and thus we don't set a user
9517           registry to spill to.  So make sure GST_REGISTRY is writable.
9518
9519 2004-03-01  David Schleef  <ds@schleef.org>
9520
9521         * AUTHORS:  Added some names.  Add yourself if you're missing.
9522
9523 2004-03-01  David Schleef  <ds@schleef.org>
9524
9525         * MAINTAINERS: Add
9526
9527 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9528
9529         * configure.ac:
9530           remove whitespace
9531         * docs/gst/tmpl/gstbuffer.sgml:
9532         * docs/gst/tmpl/gstdata.sgml:
9533         * docs/gst/tmpl/gstreamer-unused.sgml:
9534         * docs/gst/tmpl/gstxml.sgml:
9535           doc update
9536         * docs/manuals.mak:
9537           add a FIXME
9538         * docs/pwg/intro-preface.xml:
9539         * docs/pwg/pwg.xml:
9540           remove GNOME
9541         * gst/gst.c: (init_post):
9542           try GST_PLUGIN_PATH paths for the _global_registry first
9543         * gst/gstelement.h:
9544           add the error message as well, otherwise (null) debug info doesn't
9545           make much sense
9546         * tools/gst-register.c: (main):
9547           spill paths to next registry if this registry is not writable
9548         * po/fr.po:
9549         * po/nl.po:
9550           translation updates
9551
9552 2004-03-01  Johan Dahlin  <johan@gnome.org>
9553
9554         * gst/gstbuffer.c (_gst_buffer_initialize): 
9555         * gst/gstdata.c (gst_data_get_type): 
9556         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9557         instead of ref, since some applications that uses GBoxed
9558         routines depends on a function that actually returns a copy.
9559
9560 2004-02-27  Benjamin Otte  <otte@gnome.org>
9561
9562         * gst/gstbuffer.h:
9563           remove gst_buffer_free, use gst_data_unref
9564         * gst/gstdata.c: (gst_data_get_type):
9565           use refcounting in GstData GBoxed registration
9566         * gst/gstdata.h:
9567           remove gst_data_free, use gst_data_unref
9568
9569 2004-02-27  Johan Dahlin  <johan@gnome.org>
9570
9571         * gst/gstdata.c (gst_data_get_type): New function, register
9572         GstData as a GBoxed type.
9573
9574         * gst/gstdata.h (GST_TYPE_DATA): New macro
9575
9576 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9577
9578         * Makefile.am:
9579         * gstreamer.spec.in:
9580           put back RELEASE
9581         * gst/Makefile.am:
9582           clean up non-disting of built files
9583         * testsuite/debug/commandline.c:
9584           test fix for option rename
9585
9586 2004-02-26  David Schleef  <ds@schleef.org>
9587
9588         * configure.ac:  We don't really need glib-2.3.  Also remove
9589         some unneeded checks for library functions.
9590         * gst/Makefile.am:  Instead, we need to not dist files created
9591         by glib-genmarshal.
9592
9593 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9594
9595         * configure.ac:
9596           bump glib required version to 2.3.0 for g_value_takes_boxed
9597
9598  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9599
9600         * common/m4/gst-docs.m4
9601         change flavour text from enable to disable as enable is our default
9602         closes bug Bug 135304
9603
9604 === release 0.7.5 ===
9605  
9606  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9607  
9608         * NEWS:
9609           instate NEWS file
9610         * Makefile.am:
9611         * gstreamer.spec.in:
9612         * RELEASE:
9613           put back release
9614         * configure.ac:
9615         * docs/random/release:
9616           more updates
9617
9618 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9619
9620         * gst/gsttag.c: (_gst_tag_initialize):
9621         * po/fr.po:
9622         * po/nl.po:
9623           remove hyphen from codec tags
9624
9625 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9626
9627         * gst/parse/Makefile.am:
9628           fix dependency so that a make from a clean build works the first
9629           time
9630
9631 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9632
9633         * docs/random/release:
9634           update release strategy
9635         * po/fr.po:
9636           auto-update po file
9637         * po/nl.po:
9638           update dutch translation
9639
9640 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9641
9642         * docs/manual/debugging.xml:
9643         fix manual for new debugging system
9644
9645 2004-02-25  Andy Wingo  <wingo@pobox.com>
9646
9647         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9648         gst_pad_link_prepare. Please email the list with specific reasons
9649         for reverting.
9650
9651 2004-02-24  Andy Wingo  <wingo@pobox.com>
9652
9653         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9654         invocations.
9655
9656         * gst/schedulers/gstoptimalscheduler.c:
9657         I added a mess of prototypes at the top of the file by way of
9658         documentation. Some of the operations on chains and groups were
9659         re-organized.
9660
9661         (create_group): Added a type argument so if the group is enabled,
9662         the setup_group_scheduler knows what to do.
9663         (group_elements): Added a type argument here, too, to be passed on
9664         to create_group.
9665         (group_element_set_enabled): If an unlinked PLAYING element is
9666         added to a bin, we have to create a new group to hold the element,
9667         and this function will be called before the group is added to the
9668         chain. Thus we have a valid case for group->chain==NULL. Instead
9669         of calling chain_group_set_enabled, just set the flag on the group
9670         (the chain's status will be set when the group is added to it).
9671         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9672         Setup the group scheduler when the group is enabled, not
9673         specifically when an element goes PAUSED->PLAYING. This means
9674         PLAYING elements can be added, linked, and scheduled into a
9675         PLAYING pipeline, as was intended.
9676         (add_to_group): Don't ref the group twice. I don't know when this
9677         double-ref got in here. Removing it has the potential to cause
9678         segfaults if other parts of the scheduler are buggy. If you find
9679         that the scheduler is segfaulting for you, put in an extra ref
9680         here and see if that hacks over the underlying issue. Of course,
9681         then find out what code is unreffing a group it doesn't own...
9682         (create_group): Make the extra refcount floating, and remove it
9683         after adding the element. This means that...
9684         (unref_group): Destroy when the refcount reaches 0, not 1, like
9685         every other refcounted object in the known universe.
9686         (remove_from_group): When a group becomes empty, set it to be not
9687         active, and remove it from its chain. Don't unref it again,
9688         there's no floating reference any more.
9689         (destroy_group): We have to remove the group from the chain in
9690         remove_from_group (rather than here) to break refcounting cycles
9691         (the chain always has a ref on the group). So assert that
9692         group->chain==NULL.
9693         (ref_group_by_count): Removed, it was commented out anyway.
9694         (merge_chains): Use the remove_from_chain and add_to_chain
9695         primitives to do the reparenting, instead of rolling our own
9696         implementation.
9697         (add_to_chain): The first non-disabled group in the chain's group
9698         list will be the entry point for the chain. Because buffers can
9699         accumulate in loop elements' peer bufpens, we preferentially
9700         schedule loop groups before get groups to avoid unnecessary
9701         execution of get-based groups when the bufpens are already full.
9702         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9703         (get_group_schedule_function): Ditto.
9704         (loop_group_schedule_function): Ditto.
9705         (gst_opt_scheduler_loop_wrapper): Ditto.
9706         (gst_opt_scheduler_iterate): Ditto.
9707
9708         I understand the opt scheduler now, yippee!
9709
9710         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9711         (gst_pad_get_name, gst_pad_set_chain_function) 
9712         (gst_pad_set_get_function, gst_pad_set_event_function) 
9713         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9714         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9715         (gst_pad_set_query_function, gst_pad_get_query_types) 
9716         (gst_pad_get_query_types_default) 
9717         (gst_pad_set_internal_link_function) 
9718         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9719         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9720         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9721         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9722         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9723         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9724         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9725         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9726         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9727         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9728         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9729         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9730         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9731         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9732         argument checks, and some doc fixes.
9733
9734         (gst_pad_custom_new_from_template): Um, does anyone
9735         use these functions? Actually make a custom pad instead of a
9736         normal one.
9737         (gst_pad_try_set_caps): Transpose some checks.
9738         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9739         the pad is in negotiation.
9740         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9741         
9742         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9743
9744         * gst/gstelement.h: 
9745         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9746         on the list.
9747
9748 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9749
9750         * gst/gstbin.c: (gst_bin_add):
9751           add error for not being able to add elements
9752
9753 2004-02-22  Julien MOUTTE <julien@moutte.net>
9754
9755         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9756         audio-codec and video-codec.
9757
9758 2004-02-22  Benjamin Otte  <otte@gnome.org>
9759
9760         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9761
9762         * autogen.sh:
9763           replace test -e with test -x for mkinstalldirs to be more portable.
9764           (fixes #134816)
9765
9766 2004-02-22  Benjamin Otte  <otte@gnome.org>
9767
9768         * gst/gstpad.c:
9769           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9770           too noisy
9771         * gst/gsttag.c: (_gst_tag_initialize):
9772         * gst/gsttag.h:
9773           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9774         * libs/gst/control/dparam.c: (gst_dparam_attach):
9775         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9776           check that types for attached dparams match
9777
9778 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9779
9780         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9781         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9782         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9783           fix errors
9784
9785 2004-02-20  Andy Wingo  <wingo@pobox.com>
9786
9787         * gst/gstbin.c:
9788         * gst/gstbuffer.c:
9789         * gst/gstplugin.c:
9790         * gst/registries/gstxmlregistry.c: 
9791         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9792
9793         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9794         (gst_element_add_pad): DEBUG->INFO, some fixes.
9795         (gst_element_get_compatible_pad_template): Just see if the
9796         templates' caps intersect, not if one is a strict subset of the
9797         other. This conforms more to what gst_pad_link_intersect() does.
9798         (gst_element_class_add_pad_template): Don't memcpy the pad
9799         template, just ref it.
9800         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9801
9802         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9803         (gst_pad_link_filtered): Debug changes.
9804         (gst_pad_link_prepare): New function, consolidated from
9805         can_link_filtered and link_filtered.
9806
9807         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9808         look more like that of the functions in gstelement.c
9809
9810         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9811         object, and return the empty string if object is NULL.
9812
9813         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9814         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9815         LOG, not DEBUG. We still get flex info on debug.
9816
9817         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9818         debug string more verbose.
9819         (plugin_times_older_than): DEBUG->LOG.
9820
9821 2004-02-20  Julien MOUTTE <julien@moutte.net>
9822
9823         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9824         will emit found_tag for each stream they demux with the codec.
9825
9826 2004-02-20  Benjamin Otte  <otte@gnome.org>
9827
9828         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9829           copy navigation event correctly. Check freeing tag lists. 
9830         * gst/gstthread.c: (gst_thread_change_state):
9831           don't abort() on state changing mess - it might happen because of
9832           bugs.
9833         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9834           use boxed functions
9835         * gst/gstvalue.h:
9836           fix GST_VALUE_HOLDS_CAPS
9837
9838 2004-02-19  David Schleef  <ds@schleef.org>
9839
9840         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9841         and use it for GST_FUNCTION.  (bug #134750)
9842
9843 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9844
9845         * po/fr.po:
9846         * po/nl.po:
9847           updating translations
9848
9849 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9850
9851         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9852
9853 2004-02-18  kost@imn.htwk-leipzig.de
9854
9855         reviewed by: David Schleef  <ds@schleef.org>
9856
9857         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9858         for libgstcontrol.
9859
9860 2004-02-18  David Schleef  <ds@schleef.org>
9861
9862         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9863         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9864         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9865         * tools/gst-inspect.c: (print_element_info): Support dumping of
9866         double dparam information.
9867
9868 2004-02-17  David Schleef  <ds@schleef.org>
9869
9870         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9871         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9872         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9873         Use GST_TYPE_CAPS in signal prototype.
9874         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9875         Convert GST_TYPE_CAPS to boxed.
9876         * gst/gstelement.c: (gst_element_class_init):
9877         Use GST_TYPE_TAG_LIST in signal prototype.
9878         * gst/gstindex.c: (gst_index_class_init):
9879         * gst/gstindex.h:
9880         Add GST_TYPE_INDEX_ENTRY type.
9881         * gst/gstmarshal.list:
9882         Add necessary marshal types.
9883         * gst/gstpad.c: (gst_real_pad_class_init),
9884         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9885         (gst_pad_recover_caps_error):
9886         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9887         * gst/gststructure.c: (_gst_structure_initialize),
9888         (gst_structure_copy), (_gst_structure_copy_conditional):
9889         * gst/gststructure.h:
9890         Convert GST_TYPE_STRUCTURE to boxed.
9891         * gst/gsttag.c: (gst_tag_list_get_type):
9892         * gst/gsttag.h:
9893         Add GST_TYPE_TAG_LIST type.
9894
9895 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9896
9897         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9898         to what we agreed with david.
9899         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9900
9901 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9902
9903         * po/nl.po: update translation
9904
9905 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9906
9907         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9908           throw an error if spider is trying to play a mime type there is
9909           no decoder for
9910         * po/POTFILES.in:
9911           add gst/autoplug/gstspider.c for translation
9912
9913 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9914
9915         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9916         silently when the pad is negotiating.
9917
9918 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9919
9920         * docs/faq/Makefile.am:
9921           add script to run gstreamer uninstalled 
9922         * docs/faq/faq.xml:
9923         * docs/faq/developing.xml:
9924         * docs/faq/gst-uninstalled:
9925           extract script to run gstreamer uninstalled
9926         * docs/manuals.mak:
9927           add EXTRA_SOURCES variable for Makefile.am's to set to
9928           use additional SOURCE files for the doc build
9929
9930 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9931
9932         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9933
9934 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9935
9936         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9937         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9938         an error was thrown by osssink. Basically a state change failure for
9939         an element in a different scheduling group was considered as
9940         successful, which means that caps nego was going on and weird stuff
9941         happened. Like I wrote in the comment there, if someone wants to
9942         revert that please drop me a mail explaining why because I really see
9943         no point in keeping that broken behaviour there.
9944         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9945         be empty, we then return NULL which will trigger a nice error when 
9946         pulling from the pad.
9947
9948 2004-02-13  David Schleef  <ds@schleef.org>
9949
9950         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9951         (gst_dparam_get_property), (gst_dparam_set_property),
9952         (gst_dparam_do_update_default):
9953         * libs/gst/control/dparam.h:
9954         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9955         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9956         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9957         (gst_dpsmooth_do_update_double):
9958         * libs/gst/control/dparam_smooth.h:
9959         * libs/gst/control/dparammanager.c:
9960         (gst_dpman_inline_direct_update):
9961         Add support for double dparams.
9962
9963 2004-02-13  David Schleef  <ds@schleef.org>
9964
9965         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
9966         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
9967
9968 2004-02-13  Mattias Wadman  <mattias@sudac.org>
9969
9970         reviewed by: David Schleef  <ds@schleef.org>
9971
9972         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
9973         (gst_fdsrc_init), (gst_fdsrc_set_property),
9974         (gst_fdsrc_get_property), (gst_fdsrc_get):
9975         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
9976         and sends an EOS event if file descriptor reading times out.
9977
9978 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9979
9980         * configure.ac:
9981           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
9982
9983 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9984
9985         * configure.ac: pass required libxml version as argument
9986         (bug reported by Christophe Fergeau)
9987
9988 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9989   
9990         * docs/gst/gstreamer-docs.sgml:
9991         * docs/gst/tmpl/gstxml.sgml:
9992         * docs/libs/gstreamer-libs-docs.sgml:
9993           version API docs
9994
9995 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
9996
9997         * gst/gstinfo.c:
9998         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
9999         (gst_registry_pool_feature_filter):
10000         * gst/gstthread.c: (gst_thread_class_init):
10001         * gst/gstvalue.c:
10002           add includes exposed by building without libxml
10003         * gst/indexers/Makefile.am:
10004           do not build fileindex when LOADSAVE disabled; we should have
10005           a better libxml check later since fileindex depends on xml, not
10006           LOADSAVE or REGISTRY
10007         * libs/gst/control/Makefile.am:
10008           link with m
10009         * tools/Makefile.am:
10010           fix wrong source code for gst-xmlinspect
10011
10012 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10013
10014         * configure.ac:
10015           fix gcov help output
10016           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
10017         * docs/random/release:
10018           some updated releasing notes
10019         * gstreamer.spec.in:
10020           more updates
10021
10022 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10023
10024         * docs/faq/faq.xml:
10025         * docs/manual/manual.xml:
10026         * docs/pwg/pwg.xml:
10027         * docs/pwg/titlepage.xml:
10028           put version in documentation
10029
10030 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10031
10032         * tools/Makefile.am: fix man page installation
10033
10034 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10035
10036         * configure.ac:
10037           don't check for libxml when load/save and registry disabled (#105844)
10038         * gstreamer.spec.in:
10039           sync with fedora candidate spec
10040
10041 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10042
10043         * po/fr.po:
10044         * po/nl.po:
10045           replace multidisksrc with multifilesrc
10046
10047 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10048
10049         * po/POTFILES.in:
10050           update to multidisksrc => multifilesrc file renaming (#134145)
10051
10052 2004-02-11  David Schleef  <ds@schleef.org>
10053
10054         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10055         * docs/gst/tmpl/gstpadtemplate.sgml: same
10056         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10057         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10058         fixing dance.
10059         * gst/gstutils.c: Remove disabled code that uses GstProps.
10060         * gst/registries/gstxmlregistry.h: same
10061         * docs/random/ds/0.9-suggested-changes: random notes
10062
10063 2004-02-11  kost@imn.htwk-leipzig.de
10064
10065         reviewed by: David Schleef  <ds@schleef.org>
10066
10067         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10068         initialisation of clock (bug #134128)
10069
10070 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10071
10072         * configure.ac:
10073         * gst/elements/Makefile.am:
10074         * gst/elements/gstelements.c:
10075         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10076         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10077         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10078         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10079         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10080         * gst/elements/gstmultifilesrc.h:
10081           rename multidisksrc to multifilesrc (part of #122200)
10082
10083 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10084
10085         * docs/manuals.mak:
10086           fix automake complaints
10087         * gst-element-check.m4:
10088           fix unquotedness
10089
10090 2004-02-11  David Schleef  <ds@schleef.org>
10091
10092         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10093         * gst/gstatomic_impl.h: Disable sparc implementation.
10094
10095 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10096
10097         * gst-element-check.m4:
10098           fix underquoted macros as reported by automake 1.8.x (#133800)
10099         * configure.ac:
10100           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
10101           by autopoint (fixes #132996)
10102
10103 2004-02-10  Andy Wingo  <wingo@pobox.com>
10104
10105         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
10106         way to do inheritance.
10107         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
10108         (gst_pad_get_query_types, gst_pad_get_query_types_default):
10109         Routine docs.
10110         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
10111         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
10112         doc.
10113         (gst_pad_unlink, gst_pad_is_linked): Docs.
10114         (gst_pad_renegotiate): A brief description of capsnego.
10115         (gst_pad_try_set_caps): Document.
10116         (gst_pad_try_set_caps_nonfixed): Document.
10117         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
10118         (gst_pad_set_parent): Deprecated (although not out of the API).
10119         (gst_pad_get_parent): Deprecated, although many plugins use this.
10120         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
10121         are private and will go away in 0.9.
10122         (gst_pad_perform_negotiate): Doc.
10123         (gst_pad_link_unnegotiate): I think this is meant to be static.
10124         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
10125         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
10126         (gst_pad_get_peer): Doc updates.
10127         (gst_pad_caps_change_notify): Doc.
10128         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
10129         (gst_ghost_pad_new): Doc fixes.
10130
10131         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
10132         (gst_object_check_uniqueness): 
10133
10134         * gst/gstelement.c (gst_element_add_pad) 
10135         (gst_element_add_ghost_pad, gst_element_remove_pad) 
10136         (gst_element_remove_ghost_pad, gst_element_get_pad) 
10137         (gst_element_get_static_pad, gst_element_get_pad_list) 
10138         (gst_element_class_get_pad_template_list) 
10139         (gst_element_class_get_pad_template): Work on the docs.
10140         (gst_element_get_pad_template_list): Uses the class method.
10141         (gst_element_get_compatible_pad_template): Docs, and consolidate
10142         some test conditions. 
10143         (gst_element_get_pad_from_template): New static function.
10144         (gst_element_request_compatible_pad): Docs, and work with
10145         non-request compatible templates. 
10146         (gst_element_get_compatible_pad_filtered): Docs and remove
10147         redundant checks.
10148         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
10149         (gst_element_link_filtered, gst_element_link_many) 
10150         (gst_element_link, gst_element_link_pads) 
10151         (gst_element_unlink_many): Docs.
10152
10153 2004-02-05  Andy Wingo  <wingo@pobox.com>
10154
10155         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
10156         s/pointer/boxed/.
10157
10158         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
10159
10160         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
10161         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
10162         with the type=GST_TYPE_CAPS. This allows language bindings to know
10163         what kind of data they're dealing with.
10164
10165         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
10166         to NULL when g_value_init is called. GstCaps, which rolls its own
10167         type implementation, now does the same instead of allocating empty
10168         caps.
10169         (_gst_caps_initialize, _gst_caps_collect_value,
10170         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
10171         table methods. This allows G_VALUE_COLLECT to work.
10172
10173 2004-02-05  Andy Wingo  <wingo@pobox.com>
10174
10175         * configure.ac:
10176         * testsuite/Makefile.am (SUBDIRS): 
10177         * testsuite/ghostpads/Makefile.am: 
10178         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
10179
10180         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
10181         These two routines are the only ones that set
10182         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
10183         pad template. They should be made static, depending on ABI needs.
10184         (gst_real_pad_dispose): Handle the case of ghost pads without a
10185         parent. Assert after dealing with ghost pads that the ghost pad
10186         list is empty.
10187         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
10188         set after creation.
10189         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
10190         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
10191         functions. set_property will call add_ghost_pad/remove_ghost_pad
10192         as appropriate.
10193         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
10194
10195         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
10196         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
10197         (gst_element_remove_pad): Handle ghost pads as well.
10198         (gst_element_remove_ghost_pad): Deprecated (could be removed,
10199         depending on API-stability needs).
10200
10201 2004-02-05  Andy Wingo  <wingo@pobox.com>
10202
10203         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
10204         of course they're const
10205
10206 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10207
10208         * tools/Makefile.am:
10209         * tools/gst-feedback:
10210         * tools/gst-feedback-0.7:
10211           make gst-feedback versioned too for consistency
10212
10213 2004-02-11  David Schleef  <ds@schleef.org>
10214
10215         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10216         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
10217
10218 2004-02-10  Julien MOUTTE <julien@moutte.net>
10219
10220         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
10221         the structure does not contain a valid tag list. Adding a safety check
10222         to remove a noisy warning in that case.
10223
10224 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10225
10226         * gst/gst.c: fix name to be in line with others
10227
10228 2004-02-09  Julien MOUTTE <julien@moutte.net>
10229
10230         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
10231         not shout that loud when len is 0. Just return 0 silently.
10232
10233 2004-02-09  Julien MOUTTE  <julien@moutte.net>
10234
10235         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
10236         because data_unref has one and I prefer the debug to be symetric.
10237         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
10238         were refed when added to the queue and unrefed only once when the queue
10239         was flushed. Now the flush handler unref the buffers two times : first
10240         unref for the ref added when pushing in the queue's tail and second
10241         unref to destroy the flushed buffer.
10242
10243 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10244
10245         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
10246
10247 2004-02-06  David Schleef  <ds@schleef.org>
10248
10249         * docs/random/ds/0.9-suggested-changes: Random ramblings
10250         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
10251         to int before printing.
10252         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
10253         * gst/parse/parse.l: same.  See bug #129600
10254
10255 2004-02-06  David Schleef  <ds@schleef.org>
10256
10257         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
10258         (gst_index_add_entry), (gst_index_add_associationv),
10259         (gst_index_add_association): Add gst_index_add_associationv()
10260         and clean up gst_index_add_association(). #127133
10261
10262 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10263
10264         * autogen.sh: check out common with right tag if CVS/Tag exists
10265
10266 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10267
10268         * testsuite/ghostpads/ghostpads.c: (main):
10269           fix testsuite from segfaulting
10270
10271 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10272
10273         * Makefile.am: add release target
10274         * configure.ac: bump nano to 1
10275         * docs/random/release:
10276
10277 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10278
10279         * gst/gstcaps.h:
10280         * gst/gstelement.c: (gst_element_base_class_init),
10281         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10282         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10283         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10284         (gst_real_pad_dispose):
10285         * gst/gststructure.c: (gst_structure_free),
10286         (gst_structure_from_string):
10287           put reverted patch back in
10288         * gst/gstelement.c: (gst_element_remove_pad):
10289           free explicit caps if they're set
10290         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10291           copy the structure when fixating
10292
10293 2004-02-05  David Schleef  <ds@schleef.org>
10294
10295         * gst/gstmarshal.list:
10296         * gst/gstpad.c: (gst_real_pad_class_init),
10297         (_gst_real_pad_fixate_accumulator):
10298         Revert POINTER->BOXED change in signal marshaller.
10299
10300 === release 0.7.4 ===
10301                                                                                 
10302 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10303                                                                                 
10304         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10305         * configure.ac: changed for release
10306
10307 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10308
10309         * gstreamer.spec.in:
10310           bump required version of gtk-doc
10311
10312 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10313
10314         * gst/gstcaps.h:
10315         * gst/gstelement.c: (gst_element_base_class_init),
10316         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10317         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10318         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10319         (gst_real_pad_dispose):
10320         * gst/gststructure.c: (gst_structure_free),
10321         (gst_structure_from_string):
10322           revert patch that breaks applications, reapply after release
10323           to get this fixed properly
10324
10325 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10326
10327         * gst/gsttag.c: (_gst_tag_initialize):
10328         * gst/gsttag.h:
10329           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10330
10331 2004-02-04  David Schleef  <ds@schleef.org>
10332
10333         Fix some memleaks:
10334         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10335         (gst_spider_plug_from_srcpad):
10336         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10337
10338 2004-02-04  David Schleef  <ds@schleef.org>
10339
10340         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10341         a GstRealPad before accessing its structure members.
10342
10343 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10344
10345         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10346         (gst_clock_get_speed):
10347         * gst/gstclock.h:
10348           reset padding, remove unused fields
10349
10350 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10351
10352         * gst/autoplug/gstspideridentity.c:
10353         (gst_spider_identity_sink_loop_type_finding):
10354           use get_allowed_caps, not get_caps (fixes #132519)
10355         * gst/elements/gsttypefind.c: (stop_typefinding):
10356           use correct order when sending buffers and seeking
10357
10358 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10359
10360         * configure.ac:
10361         * gst/gstelement.h:
10362         * gst/gstpad.h:
10363         * gst/gstqueue.h:
10364           upgrade libtool CURRENT, reset padding
10365
10366 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10367
10368         * configure.ac:
10369           bump to prerelease
10370           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10371
10372 2004-02-04  David Schleef  <ds@schleef.org>
10373
10374         * docs/random/ds/0.9-suggested-changes: random notes
10375         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10376         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10377         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10378         expansion.
10379         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10380         (gst_filesink_get_query_types): same
10381         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10382         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10383         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10384         to use new GST_PTR_FORMAT.
10385         * gst/gstelement.h: deprecate function factory macros
10386         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10387         These are our last variadic macros that can't be replaced with
10388         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10389         attempting to deprecate gst_element_clock_wait().
10390         * gst/gstevent.h: same
10391         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10392         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10393         * gst/gstpad.h: deprecate function factory macros similar to above.
10394
10395 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10396
10397         * configure.ac:
10398         * tools/Makefile.am:
10399         * tools/gst-run.c: (popt_callback), (hash_print_key),
10400         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10401         (get_candidates), (main):
10402           add new source file to generate non-versioned wrapper binaries
10403           for our tools.
10404
10405 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10406
10407         * gst/gstevent.c: (_gst_event_free):
10408           actually break; inside the switch statement
10409         * gst/parse/grammar.y:
10410           fix memleak where GValues weren't unset
10411
10412 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10413
10414         * gst/gststructure.c: (gst_structure_from_string):
10415           fix huge memleak
10416         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10417         (new_entry), (gst_type_find_element_chain):
10418         * gst/gstelement.c: (gst_element_base_class_init),
10419         (gst_element_class_set_details):
10420         * gst/gstpad.c: (gst_pad_can_link_filtered):
10421           fix smaller memleaks
10422         * gst/gstpad.c: (gst_real_pad_dispose):
10423           check that explicit caps are gone
10424         * gst/gststructure.c: (gst_structure_free):
10425           actually free the structure
10426         * gst/gstelement.c: (gst_element_clear_pad_caps):
10427           unset explicit caps
10428
10429 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10430
10431         * tools/Makefile.am:
10432           use AM_CFLAGS since all the CFLAGS are the same
10433           use AM_LDFAGS
10434
10435 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10436
10437         * docs/manual/gnome.xml:
10438           expand example a little
10439         * gst/gst.c: (gst_init_with_popt_table),
10440         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10441           make sure popt option displays are done with right textdomain
10442           use GstPoptOption type
10443         * gst/gst.h:
10444           create GstPoptOption type
10445
10446 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10447
10448         * gst/gsterror.c: (_gst_stream_errors_init):
10449         * gst/gsterror.h:
10450           adding error type for no codec
10451         * po/POTFILES.in:
10452           add gst-inspect
10453         * po/nl.po:
10454           update dutch translation
10455         * tools/gst-inspect.c: (print_element_list), (main):
10456           do proper internationalization
10457         * tools/gst-launch.c: (idle_func):
10458           remove commented out function call
10459
10460 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10461
10462         * docs/README:
10463           add some error fixing notes
10464         * docs/gst/gstreamer-sections.txt:
10465           remove double entries
10466         * docs/gst/tmpl/gstbin.sgml:
10467         * docs/gst/tmpl/gstclock.sgml:
10468           remove override
10469         * docs/gst/tmpl/gstelement.sgml:
10470         * docs/gst/tmpl/gstindex.sgml:
10471         * docs/gst/tmpl/gstobject.sgml:
10472         * docs/gst/tmpl/gstpadtemplate.sgml:
10473         * docs/gst/tmpl/gstreamer-unused.sgml:
10474         * docs/gst/tmpl/gsttag.sgml:
10475         * docs/gst/tmpl/gstthread.sgml:
10476         * docs/gst/tmpl/gstxml.sgml:
10477         * gst/gsttag.h:
10478           sync header prototypes with c decls
10479         * gst/gsttaginterface.c:
10480           fix doc headers
10481
10482 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10483
10484         * gst/parse/Makefile.am:
10485         * gst/gstobject.h:
10486           get rid of gstmarshal.h dependency. It's not needed.
10487         * gst/gst.h:
10488         * gst/elements/gstfakesink.c:
10489         * gst/elements/gstfakesrc.c:
10490         * gst/elements/gstidentity.c:
10491         * gst/gstbin.c:
10492         * gst/gstelement.c:
10493         * gst/gstindex.c:
10494         * gst/gstobject.c:
10495         * gst/gstpad.c:
10496         * gst/gstthread.c:
10497         * gst/gstxml.c:
10498         * libs/gst/control/dparam.c:
10499         * libs/gst/control/dparammanager.c:
10500           include gstmarshal.h.
10501         Fixes #132045
10502
10503 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10504
10505         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10506         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10507         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10508         * gst/elements/gstfilesrc.h:
10509           don't ref the filesrc when creating mmaped buffers. Don't keep a
10510           list of not-yet-destroyed buffers.
10511         * gst/gstbuffer.h:
10512           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10513
10514 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10515
10516         * gst/gst.c: (init_pre):
10517           remove textdomain
10518
10519 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10520
10521         * docs/pwg/advanced-events.xml:
10522         * docs/pwg/advanced-scheduling.xml:
10523         * docs/pwg/intro-basics.xml:
10524         * docs/pwg/other-manager.xml:
10525         * docs/pwg/other-nton.xml:
10526         * docs/pwg/other-ntoone.xml:
10527         * docs/pwg/other-oneton.xml:
10528         * docs/pwg/pwg.xml:
10529           All sort of documentation... Forgot what. Point is that I want this
10530           in before I leave. The 'other-*' will be the last section and will
10531           explain issues specific to these type of elements.
10532
10533 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10534
10535         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10536         (gst_filesrc_get_read):
10537           set all the values on buffers that we can
10538
10539 2004-02-02  David Schleef  <ds@schleef.org>
10540
10541         Change usage of isblah() to g_ascii_isblah() to be more locale
10542         independent.  (#133076)
10543         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10544         * gst/gstutils.c:
10545         * gst/parse/parse.l:
10546
10547 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10548
10549         reviewed by: David Schleef  <ds@schleef.org>
10550
10551         Fix memory leaks:
10552         * gst/gstcaps.c: (gst_caps_to_string):
10553         * gst/registries/gstxmlregistry.c:
10554         (gst_xml_registry_add_path_list_func),
10555         (gst_xml_registry_parse_padtemplate):
10556
10557 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10558
10559         * gst/gstelement.c: (gst_element_default_error):
10560           suffix error messages with period
10561
10562 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10563
10564         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10565         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10566         * gst/gsterror.c: (gst_error_get_message):
10567           Suffix with dots
10568         * po/fr.po:
10569         * po/nl.po:
10570           Update translation files
10571
10572 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10573
10574         * gst/autoplug/gstspideridentity.c:
10575         (gst_spider_identity_sink_loop_type_finding):
10576         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10577         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10578         (gst_filesink_close_file), (gst_filesink_handle_event),
10579         (gst_filesink_chain):
10580         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10581         (gst_filesrc_get_read), (gst_filesrc_open_file):
10582         * gst/elements/gstidentity.c: (gst_identity_chain):
10583         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10584         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10585         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10586         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10587         * gst/gsterror.c: (_gst_core_errors_init),
10588         (_gst_library_errors_init), (_gst_resource_errors_init),
10589         (_gst_stream_errors_init), (gst_error_get_message):
10590         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10591         (gst_pad_recover_caps_error), (gst_pad_pull):
10592         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10593         * gst/schedulers/gstbasicscheduler.c:
10594         (gst_basic_scheduler_chainhandler_proxy),
10595         (gst_basic_scheduler_gethandler_proxy),
10596         (gst_basic_scheduler_cothreaded_chain):
10597           Suffix error messages with period.
10598           Use (NULL) instead of NULL
10599
10600 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10601
10602         * docs/gst/tmpl/gstelement.sgml:
10603         * docs/gst/tmpl/gstxml.sgml:
10604         * gst/gstelement.c: (gst_element_error_full):
10605           add element path to error
10606
10607 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10608
10609         * docs/random/mimetypes:
10610           update raw int/float info
10611         * gst/gsttag.c: (_gst_tag_initialize):
10612         * gst/gsttag.h:
10613           add GST_TAG_ENCODER
10614
10615 2004-01-30  David Schleef  <ds@schleef.org>
10616
10617         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10618           missing (#132991)
10619
10620 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10621
10622         reviewed by Benjamin Otte 
10623           parts of the patch submitted in bug #113913
10624
10625         * configure.ac:
10626           use AC_C_INLINE. Use = instead of == with test
10627         * examples/plugins/example.c:
10628         * gst/autoplug/gstspideridentity.c:
10629         * gst/elements/gstfdsrc.c:
10630         * gst/elements/gstfilesrc.c:
10631         * gst/elements/gstidentity.c:
10632         * gst/elements/gstmultidisksrc.c:
10633         * gst/elements/gststatistics.c:
10634         * gst/gstelement.c:
10635         * gst/gstobject.c:
10636         * gst/gstpad.c:
10637         * gst/gstpipeline.c:
10638         * gst/gstthread.c:
10639           don't end enums with a comma
10640         * gst/gstindex.c: (gst_index_compare_func):
10641           do explicit casting to gint
10642         * gst/gsttrace.c: (gst_trace_text_flush):
10643           #define strsize as a macro
10644
10645 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10646
10647         * docs/README:
10648         * docs/gst/gstreamer-docs.sgml:
10649         * docs/gst/gstreamer-sections.txt:
10650         * docs/gst/tmpl/gstelement.sgml:
10651         * docs/gst/tmpl/gsterror.sgml:
10652         * docs/gst/tmpl/gstinterface.sgml:
10653         * docs/gst/tmpl/gstreamer-unused.sgml:
10654         * docs/gst/tmpl/gststructure.sgml:
10655         * docs/gst/tmpl/gsttag.sgml:
10656         * docs/gst/tmpl/gsttaginterface.sgml:
10657         * docs/gst/tmpl/gstvalue.sgml:
10658         make sure all API ends up in the built docs
10659         * gst/gstinterface.c:
10660         * gst/gststructure.c: (gst_structure_id_set_value),
10661         (gst_structure_set_value), (gst_structure_id_get_value):
10662         * gst/gststructure.h:
10663         * gst/gstvalue.h:
10664         sync .h with .c declarations
10665
10666 2004-01-30  Julien Moutte  <julien@moutte.net>
10667
10668         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10669         Ronald will fix riffread.
10670
10671 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10672
10673         * docs/pwg/advanced-interfaces.xml:
10674           Added tuner interface docs.
10675
10676 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10677
10678         * docs/random/mimetypes:
10679           correct Theora information
10680         * gst/gstelement.h:
10681           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10682
10683 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10684
10685         * gst/gstelement.c: (gst_element_error_full):
10686         * gst/gstelement.h:
10687           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10688
10689 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10690
10691         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10692         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10693         again and even before DISCONT.
10694         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10695         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10696         bytestream so that it's not stopping to fill the bytestream if events
10697         different than EOS or DISCONT are received. Instead it process them so
10698         that they go downstream.
10699
10700 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10701
10702         * docs/gst/tmpl/gstelement.sgml:
10703         * docs/gst/tmpl/gstreamer-unused.sgml:
10704         * docs/gst/tmpl/gstxml.sgml:
10705         * gst/autoplug/gstspideridentity.c:
10706         (gst_spider_identity_sink_loop_type_finding):
10707         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10708         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10709         (gst_filesink_close_file), (gst_filesink_handle_event),
10710         (gst_filesink_chain):
10711         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10712         (gst_filesrc_get_read), (gst_filesrc_open_file):
10713         * gst/elements/gstidentity.c: (gst_identity_chain):
10714         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10715         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10716         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10717         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10718         * gst/gstelement.h:
10719         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10720         (gst_pad_recover_caps_error), (gst_pad_pull):
10721         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10722         * gst/schedulers/gstbasicscheduler.c:
10723         (gst_basic_scheduler_chainhandler_proxy),
10724         (gst_basic_scheduler_gethandler_proxy),
10725         (gst_basic_scheduler_cothreaded_chain):
10726           gst_element_error -> GST_ELEMENT_ERROR
10727
10728 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10729
10730         * docs/Makefile.am:
10731         * docs/gst/tmpl/gstelement.sgml:
10732         * docs/gst/tmpl/gstxml.sgml:
10733         * docs/manuals.mak:
10734         * docs/pwg/advanced-request.xml:
10735         * docs/pwg/advanced-scheduling.xml:
10736         * docs/pwg/advanced-tagging.xml:
10737           fix non-validating docbook using CDATA
10738           make sure make check-local gets run first to check if it validates
10739
10740 2004-01-29  Julien MOUTTE <julien@moutte.net>
10741
10742         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10743         handling (up and downstream).
10744         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10745         my_filter thing.
10746
10747 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10748
10749         * docs/pwg/advanced-tagging.xml:
10750           Add docs about tag writing.
10751
10752 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10753
10754         * docs/pwg/advanced-tagging.xml:
10755           Add a part about tag reading and application signalling... Tag
10756           writing still needs to be documented.
10757         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10758           We can set file locations in READY, too.
10759
10760 2004-01-29  Julien MOUTTE <julien@moutte.net>
10761
10762         * docs/random/ds/element-checklist: Adding some notes about src
10763         events.
10764
10765 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10766
10767         * docs/random/mimetypes:
10768           Update docs to point to correct elements for various mimetypes, and
10769           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10770           <stephane.loeuillet@tiscali.fr>.
10771
10772 2004-01-28  David Schleef  <ds@schleef.org>
10773
10774         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10775
10776 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10777
10778         * docs/random/mimetypes:
10779           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10780           undefined"
10781         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10782           make it only work in NULL.
10783         * gst/gstcaps.c:
10784           don't posion NULL caps
10785         * gst/gstelement.c: (gst_element_set_time):
10786           add debugging statement
10787         * gst/gstelement.c: (gst_element_emit_found_tag),
10788         (gst_element_found_tag_func), (gst_element_found_tags):
10789         * gst/gstelement.h:
10790           These functions take const taglists
10791         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10792           fix memleak
10793         * gst/gstpad.c: (gst_pad_event_default):
10794           make more effort on handling discont and clocks, g_warn if everything
10795           fails
10796         * gst/gststructure.c: (gst_structure_remove_fields),
10797         (gst_structure_remove_fields_valist):
10798         * gst/gststructure.h:
10799           add gst_structure_remove_fields(_valist)
10800         * gst/gsttag.c:
10801           fix doc glitch
10802
10803 2004-01-28  David Schleef  <ds@schleef.org>
10804
10805         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10806         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10807         Fix memory leakage of gst_caps_to_string().
10808
10809         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10810         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10811         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10812         (gst_spider_identity_sink_loop_type_finding):
10813         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10814         (find_suggest):
10815         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10816         (gst_pad_set_explicit_caps):
10817         * gst/parse/grammar.y:
10818
10819 2004-01-28  David Schleef  <ds@schleef.org>
10820
10821         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10822         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10823         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10824         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10825         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10826         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10827         (gst_debug_log_default), (_gst_info_printf_extension),
10828         (_gst_info_printf_extension_arginfo):  Add printf extension.
10829         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10830         * gst/gststructure.c: (gst_structure_to_string),
10831         (_gst_structure_parse_value): Use gst_value_deserialize() and
10832         remove old code.
10833         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10834         (gst_value_deserialize_boolean), (gst_strtoi),
10835         (gst_value_deserialize_int), (gst_value_deserialize_double),
10836         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10837         a bunch of deserialize functions and gst_value_deserialize.
10838         * gst/gstvalue.h: er, _de_serialize, not unserialize
10839         * testsuite/caps/string-conversions.c: (main): We don't currently
10840         handle (float) in caps, so convert these to (double).
10841         * testsuite/debug/Makefile.am: Add new test for the printf extension
10842         * testsuite/debug/printf_extension.c: (main): same
10843
10844 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10845
10846         * docs/random/company/time:
10847           Add some docs about clocking and time
10848
10849 2004-01-28  Julien MOUTTE <julien@moutte.net>
10850
10851         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10852
10853 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10854
10855         * docs/pwg/advanced-clock.xml:
10856         * docs/pwg/advanced-dparams.xml:
10857         * docs/pwg/advanced-events.xml:
10858         * docs/pwg/advanced-interfaces.xml:
10859         * docs/pwg/advanced-midi.xml:
10860         * docs/pwg/advanced-request.xml:
10861         * docs/pwg/advanced-scheduling.xml:
10862         * docs/pwg/advanced-tagging.xml:
10863         * docs/pwg/advanced-types.xml:
10864         * docs/pwg/appendix-checklist.xml:
10865         * docs/pwg/building-boiler.xml:
10866         * docs/pwg/building-chainfn.xml:
10867         * docs/pwg/building-filterfactory.xml:
10868         * docs/pwg/building-pads.xml:
10869         * docs/pwg/building-props.xml:
10870         * docs/pwg/building-signals.xml:
10871         * docs/pwg/building-state.xml:
10872         * docs/pwg/building-testapp.xml:
10873         * docs/pwg/intro-basics.xml:
10874         * docs/pwg/intro-preface.xml:
10875         * docs/pwg/other-autoplugger.xml:
10876         * docs/pwg/other-sink.xml:
10877         * docs/pwg/other-source.xml:
10878         * docs/pwg/titlepage.xml:
10879           fix up id's
10880
10881 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10882
10883         * docs/95NonPath:
10884         * docs/HACKING:
10885         * docs/README:
10886         * docs/building-the-docs-on-debian:
10887           collect relevant bits of doc info
10888
10889 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10890
10891         * docs/pwg/advanced_tagging.xml:
10892           Half-assed commit so Thomas can re-arrange document IDs here to be
10893           consistent, too.
10894
10895 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10896
10897         * docs/manual/autoplugging.xml:
10898         * docs/manual/bins-api.xml:
10899         * docs/manual/bins.xml:
10900         * docs/manual/buffers-api.xml:
10901         * docs/manual/buffers.xml:
10902         * docs/manual/clocks.xml:
10903         * docs/manual/components.xml:
10904         * docs/manual/cothreads.xml:
10905         * docs/manual/debugging.xml:
10906         * docs/manual/dparams-app.xml:
10907         * docs/manual/dynamic.xml:
10908         * docs/manual/elements-api.xml:
10909         * docs/manual/elements.xml:
10910         * docs/manual/factories.xml:
10911         * docs/manual/gnome.xml:
10912         * docs/manual/goals.xml:
10913         * docs/manual/helloworld.xml:
10914         * docs/manual/helloworld2.xml:
10915         * docs/manual/init-api.xml:
10916         * docs/manual/intro.xml:
10917         * docs/manual/links-api.xml:
10918         * docs/manual/links.xml:
10919         * docs/manual/manual.xml:
10920         * docs/manual/motivation.xml:
10921         * docs/manual/pads-api.xml:
10922         * docs/manual/pads.xml:
10923         * docs/manual/plugins-api.xml:
10924         * docs/manual/plugins.xml:
10925         * docs/manual/programs.xml:
10926         * docs/manual/queues.xml:
10927         * docs/manual/quotes.xml:
10928         * docs/manual/schedulers.xml:
10929         * docs/manual/states-api.xml:
10930         * docs/manual/states.xml:
10931         * docs/manual/threads.xml:
10932         * docs/manual/typedetection.xml:
10933         * docs/manual/xml.xml:
10934           use chapter, part, section or misc as id starts for all bits
10935
10936 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10937
10938         * docs/gst/gstreamer-sections.txt:
10939           Fix up TITLE of the sections
10940
10941 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10942
10943         * docs/pwg/advanced_interfaces.xml:
10944           Add documentation on propertyprobing.
10945         * docs/pwg/advanced_events.xml:
10946         * docs/pwg/advanced_tagging.xml:
10947         * docs/pwg/building_boiler.xml:
10948         * docs/pwg/building_filterfactory.xml:
10949         * docs/pwg/pwg.xml:
10950           Move filterfactory and tagging into their own chapter, add a chapter
10951           on events. all these are empty placeholders that will be filled in
10952           some day.
10953
10954 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10955
10956         * docs/pwg/advanced_interfaces.xml:
10957           Docs for mixer interface. Also a check for website uploading.
10958
10959 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10960
10961         * docs/HACKING:
10962         * docs/Makefile.am:
10963         * docs/faq/Makefile.am:
10964         * docs/gst/Makefile.am:
10965         * docs/gst/tmpl/gstelement.sgml:
10966         * docs/gst/tmpl/gstplugin.sgml:
10967         * docs/gst/tmpl/gstreamer-unused.sgml:
10968         * docs/libs/Makefile.am:
10969         * docs/manual/Makefile.am:
10970         * docs/manuals.mak:
10971         * docs/pwg/Makefile.am:
10972         * docs/upload.mak:
10973           Separate out upload target and make it similar for
10974           both docbook and gtk-doc docs
10975
10976 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10977
10978         * docs/manuals.mak:
10979           Fix upload target to work with freedesktop
10980
10981 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10982
10983         * docs/pwg/advanced_types.xml:
10984           Add notes on creating your own types.
10985         * docs/pwg/building_boiler.xml:
10986         * docs/pwg/building_pads.xml:
10987         * docs/pwg/building_state.xml:
10988           Add some stuff about how to retrieve values from structures, how
10989           that relates to types and change layout slightly again to be almost
10990           perfect.
10991
10992 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10993
10994         * docs/pwg/advanced_dparams.xml:
10995         * docs/pwg/advanced_scheduling.xml:
10996           Change index layout slightly.
10997
10998 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10999
11000         * docs/pwg/advanced_clock.xml:
11001         * docs/pwg/advanced_interfaces.xml:
11002         * docs/pwg/advanced_midi.xml:
11003           General placeholders for now.
11004         * docs/pwg/advanced_request.xml:
11005           Explanation about sometimes and request pads.
11006         * docs/pwg/advanced_scheduling.xml:
11007           Concept of bytestream, loopfunctions and schedulers.
11008         * docs/pwg/building_boiler.xml:
11009           Add something about plugin-init.
11010
11011 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11012
11013         * docs/pwg/building_pads.xml:
11014           Fix broken docbook
11015
11016 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11017
11018         * docs/pwg/advanced_interfaces.xml:
11019         * docs/pwg/pwg.xml:
11020           Add as a placeholder for future filling-in.
11021         * docs/pwg/basics_autoplugging.xml:
11022         * docs/pwg/basics_buffers.xml:
11023         * docs/pwg/basics_elements.xml:
11024         * docs/pwg/basics_events.xml:
11025         * docs/pwg/basics_plugins.xml:
11026         * docs/pwg/basics_types.xml:
11027           Remove, because unused (this is all in intro_basics.xml).
11028         * docs/pwg/building_signals.xml:
11029           Short intro to signals + reference to GObject docs - we really
11030           shouldn't go into these sort of things to deply because we don't
11031           use them that extensively anyway.
11032         * docs/pwg/building_state.xml:
11033           Explanation of states. Benjamin, please check.
11034         * docs/pwg/building_testapp.xml:
11035           Put everything in one page - putting only a few lines of content
11036           per page doesn't really make sense.
11037
11038           Time to get into the advanced topics. ;).
11039
11040 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11041
11042         * docs/pwg/advanced_types.xml:
11043           Finish documenting the current state of mimetypes.
11044         * docs/pwg/building_boiler.xml:
11045         * docs/pwg/building_chainfn.xml:
11046         * docs/pwg/building_pads.xml:
11047         * docs/pwg/building_props.xml:
11048         * docs/pwg/building_testapp.xml:
11049           Start documenting the "how to build a simple audio filter" part
11050           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11051           states and (maybe?) a short introduction to capsnego in the chapter
11052           on pads (building_pads.xml). Capsnego should probably be explained
11053           fully in advanced_capsnego.xml or so.
11054
11055 2004-01-26  David Schleef  <ds@schleef.org>
11056
11057         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11058         * gst/gstpad.h: Add new function to allow element to (somewhat)
11059         specify non-fixed caps on a pad.
11060         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11061         that I added a few weeks ago.
11062
11063 2004-01-26  David Schleef  <ds@schleef.org>
11064
11065         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11066           making try_set_caps() work with non-fixed caps.
11067
11068 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11069
11070         * docs/pwg/advanced_types.xml:
11071         * docs/pwg/intro_basics.xml:
11072         * docs/pwg/intro_preface.xml:
11073         * docs/pwg/pwg.xml:
11074         * docs/pwg/titlepage.xml:
11075           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11076           in here (docs/random/mimetypes), and will from there on work on both
11077           updating outdated parts and adding missing parts.
11078           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11079
11080 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11081
11082         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11083           policy is set
11084
11085 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11086
11087         * gst/gstelement.h:
11088           remove gst_element_factory_get_version. It doesn't exist anymore.
11089         * gst/gstplugin.c:
11090         * gst/gstplugin.h:
11091           remove gst_plugin_set_name and change gst_plugin_get_longname to
11092           gst_plugin_get_description to match code.
11093         * gst/gsterror.h:
11094           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11095         * gst/gstpad.c: (gst_pad_try_set_caps):
11096           make it work with nonfixed caps.
11097           Note that even in the nonfixed case the link function of the pad
11098           that tries to set caps isn't called.
11099
11100 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11101
11102         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11103           fix bug where buffer was not assembled correctly
11104         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
11105           silence by default
11106         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11107           only seek if there's no more buffers that could work without seeking
11108
11109 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11110
11111         * gst/gsttag.c: (_gst_tag_initialize):
11112         * gst/gsttag.h:
11113           Add application tag (for encoding/muxing app).
11114
11115 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11116
11117         * autogen.sh:
11118           make autopoint force, and libtoolize not copy
11119         * common/m4/as-docbook.m4:
11120           added docbook xml catalog setup check
11121         * common/m4/gst-doc.m4:
11122           use docbook check
11123
11124 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11125
11126         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
11127         * gst/gsttag.h:
11128           add GstTagFlag
11129
11130 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11131
11132         * docs/gst/gstreamer-sections.txt:
11133         * docs/gst/tmpl/gst.sgml:
11134         * docs/gst/tmpl/gstbuffer.sgml:
11135         * docs/gst/tmpl/gstclock.sgml:
11136         * docs/gst/tmpl/gstelement.sgml:
11137         * docs/gst/tmpl/gstreamer-unused.sgml:
11138         * docs/gst/tmpl/gstxml.sgml:
11139           sync latest API changes to docs
11140
11141 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11142
11143         * gst/gstpluginfeature.c:
11144           fix doc snippet
11145         * tools/gst-inspect.c: (print_element_list):
11146           fix output of typefind
11147           add GPL header
11148         * tools/gst-launch.c:
11149           add GPL header
11150
11151 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11152
11153         * gst/elements/Makefile.am:
11154         * gst/elements/gstelements.c:
11155         * gst/elements/gsttypefindelement.c:
11156         * gst/elements/gsttypefindelement.h:
11157         * po/POTFILES.in:
11158         * po/fr.po:
11159         * po/nl.po:
11160           renamed gsttypefindelement to gsttypefind, conserving CVS history
11161
11162 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11163
11164         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
11165         * gst/gsttag.h:
11166           add some tags used in ogg as well
11167           fix _ in replaygain tags
11168
11169 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11170
11171         * gst/gsterror.h:
11172           fix wrong GST_LIBRARY_ERROR_ENCODE addition
11173
11174 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11175
11176         * gst/gstelement.c: (gst_element_error_full):
11177         * gst/gstelement.h:
11178           change _extended to _full
11179
11180 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11181
11182         reviewed by: <delete if not using a buddy>
11183
11184         * docs/gst/tmpl/gst.sgml:
11185         * docs/gst/tmpl/gstbuffer.sgml:
11186         * docs/gst/tmpl/gstclock.sgml:
11187         * docs/gst/tmpl/gstelement.sgml:
11188         * docs/gst/tmpl/gstreamer-unused.sgml:
11189         * docs/gst/tmpl/gstxml.sgml:
11190         * gst/gstelement.c: (gst_element_error_full):
11191         * gst/gstelement.h:
11192
11193 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11194
11195         * gst/gstelement.h: fix _gst_element_error_printf prototype
11196
11197 2004-01-20  David Schleef  <ds@schleef.org>
11198
11199         * gst/gststructure.c: (gst_structure_to_string):
11200         Convert function to use gst_value_serialize().
11201         * gst/gstvalue.c: (gst_value_serialize_list),
11202         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
11203         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
11204         (gst_value_serialize_int), (gst_value_serialize_double),
11205         (gst_string_wrap), (gst_value_serialize_string),
11206         (gst_value_serialize), (gst_value_deserialize):
11207         * gst/gstvalue.h:
11208         Add implementations for serialize.
11209
11210 2004-01-20  Julien MOUTTE  <julien@moutte.net>
11211
11212         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
11213         we want to keep that one in the future or change xvidenc.c to use 
11214         another error.
11215
11216 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11217
11218         * gst/gstelement.c: (_gst_element_error_printf):
11219         * gst/gstelement.h:
11220           privatise function
11221
11222 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11223
11224         * docs/random/error:
11225           doc explaining error system
11226         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11227           cleanup
11228
11229 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11230
11231         * gst/gst-i18n-app.h:
11232         * gst/gst-i18n-lib.h:
11233           remove inclusion of config.h
11234         * po/POTFILES.in:
11235         * po/nl.po:
11236           add gst/gstelement.c
11237
11238 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11239
11240         * po/nl.po: updated Dutch translation
11241
11242 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11243
11244         * gst/gsterror.c: (_gst_core_errors_init),
11245         (_gst_library_errors_init), (_gst_resource_errors_init),
11246         (_gst_stream_errors_init):
11247         remove ending punctuation dots
11248
11249 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11250
11251         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11252         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
11253         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11254         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11255         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11256         use GST_ERROR_SYSTEM
11257
11258 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11259
11260         * gst/gstelement.c: (gst_element_error_printf),
11261         (gst_element_error_extended):
11262         * gst/gstelement.h:
11263           add a helper printf function so we can have NULL values passed.
11264
11265 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11266
11267         * gst/gstelement.h:
11268           add G_STMT macros to gst_element_error, which isn't strictly
11269           necessary but people tell me to anyway.
11270
11271 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11272
11273         * gst/Makefile.am:
11274         * gst/autoplug/gstspideridentity.c:
11275         (gst_spider_identity_sink_loop_type_finding):
11276         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11277         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11278         (gst_filesink_close_file), (gst_filesink_handle_event),
11279         (gst_filesink_chain):
11280         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11281         (gst_filesrc_map_region), (gst_filesrc_get_read),
11282         (gst_filesrc_open_file):
11283         * gst/elements/gstidentity.c: (gst_identity_chain):
11284         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11285         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11286         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11287         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11288         * gst/gst.h:
11289         * gst/gst_private.h:
11290         * gst/gstelement.c: (gst_element_class_init),
11291         (gst_element_default_error), (gst_element_error_func),
11292         (gst_element_error_extended):
11293         * gst/gstelement.h:
11294         * gst/gsterror.c: (_gst_core_errors_init),
11295         (_gst_library_errors_init), (_gst_resource_errors_init),
11296         (_gst_stream_errors_init), (gst_error_get_message):
11297         * gst/gsterror.h:
11298         * gst/gstinfo.c: (_gst_debug_init):
11299         * gst/gstmarshal.list:
11300         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11301         (gst_pad_recover_caps_error), (gst_pad_pull):
11302         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11303         * gst/schedulers/gstbasicscheduler.c:
11304         (gst_basic_scheduler_chainhandler_proxy),
11305         (gst_basic_scheduler_gethandler_proxy),
11306         (gst_basic_scheduler_cothreaded_chain):
11307         * po/POTFILES.in:
11308         * po/fr.po:
11309         * po/nl.po:
11310           change error signal
11311           add error categories
11312
11313 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11314
11315         * gst/gsttag.c: (_gst_tag_initialize):
11316         * gst/gsttag.h:
11317         Add replaygain tag
11318
11319 2004-01-18  Colin Walters  <walters@verbum.org>
11320
11321         * examples/retag/retag.c: Call gst_init before processing
11322         program args.  Add g_assert to _link_many call.
11323
11324 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11325
11326         * gst/gstpad.c: (gst_pad_alloc_buffer):
11327           Return a newly allocated buffer when the pad has no peer.
11328
11329 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11330
11331         * gst/gstclock.c: (gst_clock_get_time):
11332           make it compile with gcc 2.95 again.
11333           Patch by Scott Wheeler
11334
11335 2004-01-15  David Schleef  <ds@schleef.org>
11336
11337         * gst/gstcaps.h:
11338         Added gst_caps_is_simple() macro.
11339         * testsuite/caps/caps.c: (test1):
11340         * testsuite/caps/intersect2.c: (main):
11341         * testsuite/caps/intersection.c: (main):
11342         Fixes to make 'make check' work again after removing
11343         gst_caps_is_chained().
11344
11345 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11346
11347         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11348         and additions to the MIDI document.
11349
11350 2004-01-15  David Schleef  <ds@schleef.org>
11351
11352         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11353         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11354         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11355
11356 2004-01-15  David Schleef  <ds@schleef.org>
11357
11358         * gst/gstqueue.c:
11359         * gst/gstqueue.h:
11360         Fix the spelling of "treshold" and make min_threshold actually
11361         affect the queue.
11362
11363 2004-01-15  David Schleef  <ds@schleef.org>
11364
11365         * gst/gstcaps.c:
11366         Add lots of documentation.
11367         * gst/gstcaps.h:
11368         Deprecate a few functions.
11369         * gst/gstpad.c:
11370         Removed use of deprecated functions.
11371
11372 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11373
11374         * gst/gstpad.c: (gst_pad_is_linked):
11375         * gst/gstpad.h:
11376           implement gst_pad_is_linked
11377         * gst/gstelement.h:
11378           reserve space for initiate_state_change
11379
11380 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11381
11382         * gst/autoplug/gstspideridentity.c:
11383         (gst_spider_identity_sink_loop_type_finding):
11384           break infinite loop by just returning instead of looping
11385         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11386           set event time difference correctly. Set it to 1 second instead
11387           of 100ms to be more tolerant
11388         * gst/gstelement.c: (gst_element_set_time):
11389           add debugging output
11390
11391 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11392
11393         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11394           query if buffers are inside the pool, ignore events
11395
11396 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11397
11398         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11399         (gst_clock_set_speed), (gst_clock_set_active),
11400         (gst_clock_is_active), (gst_clock_reset),
11401         (gst_clock_handle_discont):
11402         * gst/gstclock.h:
11403           deprecate old interface and disable functions that aren't in use
11404           anymore.
11405         * gst/gstelement.h:
11406         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11407         (gst_element_set_time), (gst_element_adjust_time):
11408           add concept of "element time" and functions to get/set this time.
11409         * gst/gstelement.c: (gst_element_change_state):
11410           update element time correctly.
11411         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11412           This is a debug message, not a g_critical.
11413         * gst/gstpad.c: (gst_pad_event_default):
11414           handle discontinuous events right with element time.
11415         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11416           update to clocking fixes.
11417           set clocks on elements in READY=>PAUSED. The old behaviour caused
11418           a wrong element time on the first element that started playing.
11419         * gst/schedulers/gstbasicscheduler.c:
11420         (gst_basic_scheduler_class_init):
11421         * gst/schedulers/gstoptimalscheduler.c:
11422         (gst_opt_scheduler_class_init):
11423           remove code that just implements the default behaviour.
11424         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11425           update to use new clocking functions
11426         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11427         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11428           update to test new element time.
11429         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11430           use _get_allowed_caps instead of _get_caps. This catches filtered
11431           caps correctly.
11432         * testsuite/debug/commandline.c:
11433           update for new GST_DEBUG syntax.
11434         * testsuite/threads/Makefile.am:
11435           disable a test that only works sometimes.
11436
11437 2004-01-13  Julien MOUTTE <julien@moutte.net>
11438
11439         * po/LINGUAS: Adding fr.
11440         * po/fr.po: Adding french translation.
11441
11442 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11443
11444         * gst/parse/grammar.y:
11445         * po/POTFILES.in:
11446         * po/nl.po:
11447         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11448           translate parsing error messages
11449
11450 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11451
11452         * po/POTFILES.in: adding gst-launch
11453         * po/nl.po: updated translation, all 99 strings translated
11454         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11455         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11456           fix strings for translation
11457
11458 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11459
11460         * gst/gst.c:
11461           - capitalize beginnings of popt options
11462           - fix strings for translation
11463           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11464
11465 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11466
11467         * po/README: add some notes on how to update translations
11468
11469 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11470
11471         * ABOUT-NLS: removed, is autogenerated from autopoint
11472         * autogen.sh: add autopoint stuff
11473         * configure.ac: fix up gettext stuff
11474         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11475         * gst/elements/gsttypefindelement.c: add header include
11476         * gst/gettext.h: add header, copy from system-installed header
11477         * gst/gst-i18n-app.h: to be included by each app having translations
11478         * gst/gst-i18n-lib.h: to be included by each lib having translations
11479         * gst/gst.c: (init_pre): fix up gettext calls
11480         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11481         * po/LINGUAS: the new way to specify translations present
11482         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11483         * po/Makevars: the variables filled in for GStreamer
11484         * po/POTFILES.in: added new files with translations
11485         * po/de.po: has new strings
11486         * po/nl.po: readded, has new strings
11487
11488 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11489
11490         * gst/gsttag.c: fix some strings marked for translation
11491
11492 2004-01-13  Iain <iain@prettypeople.org>
11493
11494         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11495         group when we add an element to it, cos we unref it when we remove one
11496
11497 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11498
11499         * testsuite/debug/commandline.c: (debug_not_reached):
11500         * testsuite/debug/output.c: (check_message):
11501           fix testsuite
11502
11503 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11504
11505         * examples/cutter/.cvsignore:
11506         * examples/helloworld/.cvsignore:
11507         * examples/launch/.cvsignore:
11508         * examples/manual/.cvsignore:
11509         * examples/mixer/.cvsignore:
11510         * examples/pingpong/.cvsignore:
11511         * examples/plugins/.cvsignore:
11512         * examples/queue/.cvsignore:
11513         * examples/queue2/.cvsignore:
11514         * examples/queue3/.cvsignore:
11515         * examples/queue4/.cvsignore:
11516         * examples/retag/.cvsignore:
11517         * examples/thread/.cvsignore:
11518         * examples/typefind/.cvsignore:
11519         * examples/xml/.cvsignore:
11520         * gst/.cvsignore:
11521         * gst/autoplug/.cvsignore:
11522         * gst/elements/.cvsignore:
11523         * gst/indexers/.cvsignore:
11524         * gst/parse/.cvsignore:
11525         * gst/registries/.cvsignore:
11526         * gst/schedulers/.cvsignore:
11527         * libs/gst/bytestream/.cvsignore:
11528         * libs/gst/control/.cvsignore:
11529         * libs/gst/getbits/.cvsignore:
11530         * tests/.cvsignore:
11531         * tests/bufspeed/.cvsignore:
11532         * tests/instantiate/.cvsignore:
11533         * tests/memchunk/.cvsignore:
11534         * tests/muxing/.cvsignore:
11535         * tests/sched/.cvsignore:
11536         * tests/seeking/.cvsignore:
11537         * tests/threadstate/.cvsignore:
11538         * testsuite/.cvsignore:
11539         * testsuite/caps/.cvsignore:
11540         * testsuite/cleanup/.cvsignore:
11541         * testsuite/dynparams/.cvsignore:
11542         * testsuite/plugin/.cvsignore:
11543         * tools/.cvsignore:
11544           update - this is huge, because it includes *.bb, *.bbg and *.da files
11545           which are generated for gcov.
11546
11547 2004-01-11  David Schleef  <ds@schleef.org>
11548
11549         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11550         a function to parse integers in ways that strto[u]l() does not.
11551
11552 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11553
11554         * tools/gst-inspect.c: (print_caps):
11555           improve output of caps a bit
11556
11557 2004-01-11  David Schleef  <ds@schleef.org>
11558
11559         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11560         inherit correct flags (READONLY and DONTKEEP).
11561
11562 2004-01-11  David Schleef  <ds@schleef.org>
11563
11564         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11565         (gst_filesrc_map_region):
11566         * gst/gstbuffer.c: (_gst_buffer_initialize),
11567         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11568         (gst_buffer_new), (gst_buffer_create_sub),
11569         (gst_buffer_is_span_fast), (gst_buffer_span):
11570         * gst/gstbuffer.h:
11571         Change GstBuffer private structure element names. (all files)
11572         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11573         (gst_queue_link):
11574         * gst/gstqueue.h:
11575         Implement getcaps/pad_link functions that handle the case where
11576         there are data in the queue.
11577
11578 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11579
11580         * gst/elements/gstbufferstore.c:
11581           initialize debugging structure correctly
11582         * gst/elements/gsttee.c: (gst_tee_set_property):
11583           g_object_notify when property was changed
11584         * gst/elements/gsttypefindelement.c:
11585         (gst_type_find_element_change_state):
11586           clear caps correctly
11587
11588 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11589
11590         * gst/gstqueue.c: (gst_queue_init):
11591           Use better defaults for when a queue should block. This
11592           gets rid of jerky playback for quite a few files.
11593           It takes more memory.
11594
11595 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11596
11597         (gst_xml_registry_parse_padtemplate):
11598           make critical message slightly more useful
11599
11600 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11601
11602         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11603         (gst_debug_message_get), (gst_debug_log_default):
11604         * gst/gstinfo.h:
11605           Change gst_debug_log(_valist) to take a const format string.
11606           Change prototype of log function and functions using those to 
11607           take a GstDebugMessage instead of a string that requires using
11608           gst_debug_message_get.
11609
11610 2004-01-08  David Schleef  <ds@schleef.org>
11611
11612         * Makefile.am:
11613         * configure.ac:
11614         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11615         and -ftest-coverage, which allows gcov to show information about
11616         testsuite coverage.
11617
11618 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11619
11620         * gst/gstutils.h:
11621           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11622           GST_PARENT_CALL_WITH_DEFAULT
11623         * gst/elements/gstaggregator.c: 
11624         * gst/elements/gstbufferstore.c: 
11625         * gst/elements/gstfakesink.c: 
11626         * gst/elements/gstfakesrc.c: 
11627         * gst/elements/gstfdsink.c: 
11628         * gst/elements/gstfdsrc.c: 
11629         * gst/elements/gstfilesink.c: 
11630         * gst/elements/gstfilesrc.c: 
11631         * gst/elements/gstidentity.c: 
11632         * gst/elements/gstmd5sink.c: 
11633         * gst/elements/gstmultidisksrc.c:
11634         * gst/elements/gstpipefilter.c: 
11635         * gst/elements/gstshaper.c:
11636         * gst/elements/gststatistics.c:
11637         * gst/elements/gsttee.c:
11638         * gst/elements/gsttypefindelement.c:
11639           use them.
11640
11641 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11642
11643         * docs/gst/gstreamer-docs.sgml: remove props
11644         * docs/gst/gstreamer-sections.txt: remove props
11645         * docs/gst/tmpl/gst.sgml:
11646         * docs/gst/tmpl/gstbin.sgml:
11647         * docs/gst/tmpl/gstbuffer.sgml:
11648         * docs/gst/tmpl/gstcaps.sgml:
11649         * docs/gst/tmpl/gstclock.sgml:
11650         * docs/gst/tmpl/gstelement.sgml:
11651         * docs/gst/tmpl/gstindex.sgml:
11652         * docs/gst/tmpl/gstobject.sgml:
11653         * docs/gst/tmpl/gstpad.sgml:
11654         * docs/gst/tmpl/gstpadtemplate.sgml:
11655         * docs/gst/tmpl/gstreamer-unused.sgml:
11656         * docs/gst/tmpl/gstthread.sgml:
11657         * docs/gst/tmpl/gstxml.sgml:
11658           sync with code reorganization
11659
11660 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11661
11662         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11663         Make the 'Could not find compatible pad' message more informative.
11664
11665 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11666                                                                                 
11667         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11668           Fix for if we pass NULL as property to location.
11669         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11670         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11671           Fix for instantiate-test (see below).
11672         * gst/gststructure.c: (_gst_structure_parse_value):
11673           Fix compile error on gcc-2.96.
11674         * configure.ac:
11675         * tests/Makefile.am:
11676         * tests/instantiate/Makefile.am:
11677         * tests/instantiate/create.c: (create_all_elements), (main):
11678           Add a test that instantiates all elements. This makes it easy to
11679           track dead code for old API/design (like setting event functions
11680           on sink pads and so on).
11681
11682 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11683
11684         * gst/gstcaps.c: (gst_caps_append_structure):
11685           Move the poisoning to allow a NULL structure
11686         * gst/gstevent.c: (_gst_event_free):
11687           When freeing a navigation event, free the structure
11688           also
11689
11690 2004-01-04  David Schleef  <ds@schleef.org>
11691
11692         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11693         Remove usage of gst_pad_proxy_fixate.
11694         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11695         (gst_caps_split_one), (gst_caps_replace):
11696         Add poisoning code.
11697         * gst/gstmarshal.list:
11698         Add pointer__pointer for fixate signal
11699         * gst/gstpad.c: (gst_real_pad_class_init),
11700         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11701         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11702         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11703         Add poisoning code. Add fixate signal on RealPad. Change
11704         set_explicit_caps() to take const GstCaps, like try_set_caps().
11705         * gst/gstpad.h:
11706         * testsuite/caps/Makefile.am:
11707         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11708
11709 2004-01-03  David Schleef  <ds@schleef.org>
11710
11711         * gst/elements/gsttypefindelement.c:
11712         (gst_type_find_element_have_type), (gst_type_find_element_init):
11713         Use gst_pad_use_explicit_caps for src pad.
11714         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11715         before using it.
11716
11717 2004-01-03  David Schleef  <ds@schleef.org>
11718
11719         * gst/gstelement.c: (gst_element_link_pads_filtered),
11720         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11721         that linking was successful.
11722         * gst/gstpad.c: (gst_pad_link_free),
11723         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11724         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11725         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11726         GstPadLinkReturn correctly between functions, and don't fail
11727         when DELAYED is used (DELAYED is very important).  Better
11728         cleanup on unlinking and unnegotiation.  Should fix some spider
11729         bugs.
11730
11731 2004-01-02  David Schleef  <ds@schleef.org>
11732
11733         * gst/gstelement.c: (gst_element_class_init),
11734         (gst_element_base_class_init): ->padtemplates should be cleared
11735         in base_init, since we need to have a fresh list for every
11736         class.  (Alternately, we chould copy the list and share the
11737         actual pad templates (not the list), but that would require
11738         changing every plugin to move pad template registration from
11739         base_init to class_init.)
11740
11741 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11742
11743         * gst/gstelement.c: (gst_element_class_add_pad_template):
11744           Refuse registering a pad template if another pad template
11745           with the same name already exists (#114715).
11746
11747 2004-01-02  David Schleef  <ds@schleef.org>
11748
11749         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11750         (gst_caps_is_equal_fixed): Add new function.
11751         * gst/gstcaps.h: ditto.
11752         * gst/gstpad.c: (gst_real_pad_class_init),
11753         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11754         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11755         check new caps against existing caps -- if they're the same, return
11756         OK without renegotiating.  caps-nego-failed signal fixed so that
11757         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11758         to save an extra caps copy.  Don't complete negotiation if a pad
11759         link function returns DELAYED.
11760
11761 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11762
11763         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11764           Fix wrong g_return_if_fail
11765
11766 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11767
11768         * gst/gstbin.c: (gst_bin_class_init):
11769         Change the marshalling of element_added/element_removed
11770         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11771         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11772
11773 2004-01-01  David Schleef  <ds@schleef.org>
11774
11775         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11776         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11777         (gst_pad_use_explicit_caps):
11778         * gst/gstpad.h:
11779         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11780         to use an internal getcaps and link fuction so that negotiation
11781         always results in the explicitly set caps.
11782         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11783         are particularly useful for decoders.
11784
11785 2003-12-31  David Schleef  <ds@schleef.org>
11786
11787         * gst/elements/gstidentity.c: (gst_identity_class_init),
11788         (gst_identity_init), (gst_identity_chain),
11789         (gst_identity_set_property), (gst_identity_get_property):
11790         * gst/elements/gstidentity.h:
11791         * gst/gstqueue.c: (gst_queue_init):
11792           Negotiation fixes.
11793
11794 2003-12-31  David Schleef  <ds@schleef.org>
11795
11796         * gst/gstcaps.c: (gst_caps_intersect),
11797         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11798           Implement gst_caps_normalize().
11799         * testsuite/caps/normalisation.c: (main):
11800           Add an additional test
11801
11802 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11803
11804         * gst/gstqueue.c: (gst_queue_init):
11805           use gst_pad_proxy_getcaps()
11806
11807 2003-12-31  David Schleef  <ds@schleef.org>
11808
11809         * gst/elements/gstshaper.c: (gst_shaper_link):
11810         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11811         * gst/gstqueue.c: (gst_queue_link):
11812           Negotiation fixes.
11813
11814 2003-12-31  David Schleef  <ds@schleef.org>
11815
11816         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11817         * gst/gstpad.h: Add functions that are useful as default pad
11818         link and fixate functions for elements.
11819
11820 2003-12-30  David Schleef  <ds@schleef.org>
11821
11822         * gst/gstpad.c: (gst_pad_link_try):
11823           Fix segfault when attempting to return to old caps
11824
11825 2003-12-29  David Schleef  <ds@schleef.org>
11826
11827         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11828         (gst_caps_structure_simplify), (gst_caps_simplify):
11829         * gst/gstcaps.h:
11830           Add simplify function
11831         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11832         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11833         * gst/gstpad.h:
11834           Copy over srcnotify, sinknotify when calling old pad_link
11835           functions.  Add new is_negotiated() function.
11836         * gst/gststructure.c: (gst_structure_copy):
11837           Fix an incredibly stupid bug that should have been noticed
11838           weeks ago.  _copy() returned the argument, not the new copy.
11839
11840 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11841
11842         * gst/gstcaps.c: (gst_caps_append):
11843           add sanity checks
11844         * gst/gstcaps.h: (gst_caps_debug):
11845           remove, it doesn't exist anymore.
11846         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11847         (gst_element_threadsafe_properties_post_run):
11848           make debugging messages not clutter up THREAD debug category
11849         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11850         (gst_element_change_state):
11851           update to new caps API
11852         * gst/gstinterface.c: (gst_implements_interface_cast):
11853           don't put vital code in g_return_if_fail
11854         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11855         (gst_pad_link_filtered):
11856           add pst_pad_try_link and use it.
11857         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11858           implement correctly, deprecate first one.
11859         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11860           add and implement.
11861         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11862           implement.
11863         (gst_pad_get_negotiated_caps):
11864           add and implement. Make GST_PAD_CAPS call this function.
11865         (gst_pad_get_caps):
11866           remove unneeded check..
11867         (gst_pad_recover_caps_error):
11868           disable, always return FALSE.
11869         (gst_real_pad_dispose):
11870           don't free caps and appfilter anymore, they're unused.
11871         * gst/gstpad.h:
11872           Reflect changes mentioned above.
11873         * gst/gstsystemclock.c: (gst_system_clock_wait):
11874           Make 'clock is way behind' a debugging message.
11875         * gst/gstthread.c: (gst_thread_change_state):
11876           Fix debugging message
11877
11878 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11879
11880         * gst/gstinfo.h:
11881           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11882         * docs/gst/tmpl/gstreamer-unused.sgml:
11883           removed all traces of cvs conflicts
11884
11885 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11886
11887         * configure.ac:
11888         * gst/schedulers/cothreads_compat.h:
11889         * libs/Makefile.am:
11890           remove last instances of wingo cothread usage
11891
11892 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11893
11894         * gst/gstplugin.c:
11895         * gst/gstversion.h.in:
11896         * gst/parse/grammar.y:
11897           change comment block from /** to /* when not gtk-doc comments
11898
11899 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11900
11901         * gst/gst.c: whitespace and doc style fixes
11902
11903 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11904
11905         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11906
11907 2003-12-24  Colin Walters  <walters@verbum.org>
11908
11909         * gst/elements/gsttypefindelement.c:
11910           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11911           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11912           Don't double-free caps.
11913
11914 2003-12-23  David Schleef  <ds@schleef.org>
11915
11916         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11917           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11918           Many little fixes and additions of debug statements to
11919           get rhythmbox working.
11920
11921 2003-12-23  Colin Walters  <walters@verbum.org>
11922
11923         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11924         Use GST_PAD_LINK_SUCCESSFUL.
11925
11926 2003-12-23  David Schleef  <ds@schleef.org>
11927
11928         * gst/elements/gstaggregator.c:
11929         * gst/elements/gsttee.c:
11930           Use gst_pad_proxy_getcaps().
11931         * gst/gstpad.c:
11932         * gst/gstpad.h:
11933           Add gst_pad_proxy_getcaps(), which filter elements can use
11934           as a generic getcaps implementation.
11935           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11936           was advertised.
11937
11938 2003-12-23  David Schleef  <ds@schleef.org>
11939
11940         * gst/gstpad.c:
11941           Rearrange/rewrite much of the pad negotiation code, since it
11942           resembled pasta.  This actually changes the way some
11943           negotiation works, since the previous code was inconsistent
11944           depending on how it was invoked.  Add (internal) structure
11945           GstPadLink, which is used to hold some information (more in
11946           the future) about the link between two pads.  Fixes a number
11947           of bugs, including random lossage of filter caps when the
11948           initial negotiation is delayed.  A few functions are still
11949           unimplemented.
11950         * gst/gstpad.h:
11951           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11952           these when testing GstPadLinkReturn values instead of comparing
11953           directly.
11954
11955 2003-12-23  David Schleef  <ds@schleef.org>
11956
11957         * gst/gstvalue.c: 
11958         * gst/gstvalue.h:
11959           Rearrange lots of code.  Change registration of compare function
11960           into registration of compare/serialize/deserialize functions.
11961           Doesn't include implementation of gst_value_[de]serialize(),
11962           but that should be easy.
11963
11964 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11965
11966         * docs/gst/gstreamer-sections.txt:
11967         * docs/gst/tmpl/gstprops.sgml: removed
11968         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
11969           David removed props and caps code, so let's remove their docs as well.
11970           Removed all no longer existing symbols from gstreamer-sections.txt
11971           
11972 2003-12-22  Colin Walters  <walters@verbum.org>
11973
11974         * gst/gsttaginterface.c, gst/gsttaginterface.h,
11975           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
11976           of tags directly.
11977
11978 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11979
11980         * gst/elements/gstelements.c:
11981           Set ranks of elements to NONE, so the autoplugger doesn't use them.
11982         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
11983           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
11984           gst_caps (peer).
11985
11986 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11987
11988         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
11989         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
11990         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
11991         (gst_spider_identity_sink_loop_type_finding):
11992         * gst/autoplug/gstspideridentity.h:
11993           Fix autoplugging in spider element, so it works with new caps.
11994           This was mainly caused by identifying empty caps incorrectly.
11995
11996 2003-12-22  David Schleef  <ds@schleef.org>
11997
11998         * gststructure.c, gstvalue.c, gstvalue.h: Add
11999           gst_value_init_and_copy() and use it, to avoid silly mistakes in
12000           using g_value_copy()
12001
12002 2003-12-21  David Schleef  <ds@schleef.org>
12003
12004         * many, many files: Merge CAPS branch.  This includes:
12005           - implemention of GstValue and several GstValue types
12006           - implemention of GstStructure
12007           - entire rewrite of GstCaps
12008           - removal of GstProps
12009           - many changes to GstPad to compensate for new caps paradigm
12010           - removal of GstBufferpool
12011         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
12012         gstvalue.h, gst/gstcaps[2]*.[ch]:
12013           - rename gstcaps2.[ch] to gstcaps.[ch]
12014
12015 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12016
12017         * gst/gstqueue.c: (gst_queue_handle_pending_events),
12018         (gst_queue_chain), (gst_queue_handle_src_event):
12019           implement timeout for sending events. Workaround for if the
12020           pipeline on this queue is not passing any data.
12021
12022 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
12023                                                                                 
12024         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12025         * moved CVS to freedesktop.org
12026