Added CHANGES-0.9 doc, updated status of other docs.
[platform/upstream/gstreamer.git] / ChangeLog
1 2005-06-30  Wim Taymans  <wim@fluendo.com>
2
3         * CHANGES-0.9:
4         * docs/design/draft-ghostpads.txt:
5         * docs/design/draft-push-pull.txt:
6         * docs/design/draft-query.txt:
7         * docs/design/part-TODO.txt:
8         * docs/design/part-query.txt:
9         Added CHANGES-0.9 doc, updated status of other docs.
10         
11         * gst/gstquery.h:
12         Remove "hmm" macro
13
14 2005-06-30  Wim Taymans  <wim@fluendo.com>
15
16         * gst/base/gstbasesink.c: (gst_base_sink_preroll_queue_empty),
17         (gst_base_sink_preroll_queue_flush), (gst_base_sink_handle_object),
18         (gst_base_sink_change_state):
19         * gst/base/gstbasesink.h:
20         Some tweaks, only EOS and a buffer complete a preroll.
21
22 2005-06-30  Andy Wingo  <wingo@pobox.com>
23
24         * gst/gstghostpad.c (gst_ghost_pad_do_activate_push): Proxy
25         activate_push down to the internal pad as well.
26
27 2005-06-30  Torsten Schoenfeld  <kaffeetisch@gmx.de>
28
29         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
30
31         * gst/gsttaginterface.c:
32           Some documentation fixes (#307394 and #307397).
33
34 2005-06-30  Antoine Tremblay  <hexa00@gmail.com>
35
36         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
37
38         * gst/gstvalue.c: (gst_value_intersect_list):
39           Fix memleak (#309125).
40
41 2005-06-30  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
42
43         * docs/manual/advanced-dataaccess.xml:
44           Fix fakesrc example to compile; doesn't work, bug somewhere...?
45         * docs/manual/basics-pads.xml:
46           Add reference for filtered caps to above chapter.
47
48 2005-06-30  Wim Taymans  <wim@fluendo.com>
49
50         * gst/gstbin.c: (clear_queue), (remove_all_from_queue),
51         (gst_bin_change_state):
52         Probes are gone.
53         Lame attempt at making the state change function a bit
54         more readable.
55
56 2005-06-30  Wim Taymans  <wim@fluendo.com>
57
58         * docs/design/part-clocks.txt:
59         * docs/design/part-element-sink.txt:
60         * docs/design/part-events.txt:
61         * docs/design/part-preroll.txt:
62         * docs/design/part-states.txt:
63         Some more tweeks and additions to the docs.
64
65 2005-06-30  Wim Taymans  <wim@fluendo.com>
66
67         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
68         (default_have_data), (gst_pad_class_init), (gst_pad_init),
69         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
70         (gst_pad_check_pull_range), (gst_pad_get_range),
71         (gst_pad_pull_range), (gst_pad_push_event), (gst_pad_send_event):
72         * gst/gstpad.h:
73         * gst/gstutils.c: (gst_atomic_int_set), (gst_pad_add_data_probe),
74         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
75         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
76         (gst_pad_remove_buffer_probe):
77         Removed atomic operations, use existing LOCK.
78         Move exception handling out of main code path.
79
80 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
81
82         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
83         (silly_return_true_function), (gst_pad_class_init),
84         (gst_pad_emit_have_data_signal), (gst_pad_chain), (gst_pad_push),
85         (gst_pad_get_range), (gst_pad_pull_range), (gst_pad_push_event),
86         (gst_pad_send_event):
87           Fix accumulator, add default value by using _emitv() instead
88           of _emit() for signal emission.
89
90 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
91
92         * docs/manual/advanced-dataaccess.xml:
93         * examples/manual/Makefile.am:
94           Add probe example.
95         * gst/gstpad.c: (_gst_do_pass_data_accumulator):
96           Make work (??).
97
98 2005-06-29  Tim-Philipp Müller  <tim at centricular dot net>
99
100         * gst/elements/gstfilesink.c: (gst_filesink_render):
101           Simplify code so that we don't have to handle short
102           writes and return GST_FLOW_ERROR if an error occured.
103
104 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
105
106         * docs/gst/gstreamer-docs.sgml:
107           Remove probes more.
108
109 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
110
111         * docs/gst/gstreamer-sections.txt:
112         * docs/gst/tmpl/gstpad.sgml:
113         * docs/gst/tmpl/gstprobe.sgml:
114         * gst/Makefile.am:
115         * gst/gstpad.c: (_gst_do_pass_data_accumulator),
116         (gst_pad_class_init), (gst_pad_init), (gst_pad_chain),
117         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
118         (gst_pad_push_event), (gst_pad_send_event):
119         * gst/gstpad.h:
120         * gst/gstutils.c: (gst_pad_add_data_probe),
121         (gst_pad_add_event_probe), (gst_pad_add_buffer_probe),
122         (gst_pad_remove_data_probe), (gst_pad_remove_event_probe),
123         (gst_pad_remove_buffer_probe):
124         * gst/gstutils.h:
125           Remove old probes, add new g-signal-based probes and some utility
126           functions.
127
128 2005-06-29  Edward Hervey  <edward@fluendo.com>
129
130         * gst/gstelementfactory.c:
131         * gst/gstutils.h:
132         * gst/gstutils.c:
133         Moved gst_element_factory_can_[sink|src]_caps() to gstutils and added
134         the definition to the header file.
135
136 2005-06-29  Andy Wingo  <wingo@pobox.com>
137
138         * docs/gst/Makefile.am (scan-build.stamp): Totally only check
139         plugins from the source directory.
140
141 2005-06-29  Wim Taymans  <wim@fluendo.com>
142
143         * docs/gst/tmpl/gstbuffer.sgml:
144         * docs/gst/tmpl/gstclock.sgml:
145         Some fixings for blantently wrong text.
146
147 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
148
149         * check/Makefile.am:
150         * gst/gst.c: (add_path_func), (init_pre):
151         * gst/gstregistry.c: (gst_registry_add_path):
152           add A GST_PLUGIN_PATH_ONLY env var; if it is set, it will
153           only scan the GST_PLUGIN_PATH locations, and not add
154           system locations
155
156 2005-06-29  Thomas Vander Stichele  <thomas at apestaart dot org>
157
158         * docs/gst/gstreamer-sections.txt:
159         * docs/gst/tmpl/gstbasesrc.sgml:
160         * gst/gstelement.c:
161         * gst/gstelement.h:
162         * gst/gstevent.c:
163         * gst/gstutils.c:
164           doc fixes
165
166 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
167
168         * docs/manual/advanced-autoplugging.xml:
169           Fix autoplugging example.
170
171 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
172
173         * docs/manual/advanced-autoplugging.xml:
174         * docs/manual/mime-world.fig:
175           Try to get autoplugging working, fix type detection. Fix text
176           in hello-world image.
177
178 2005-06-29  Wim Taymans  <wim@fluendo.com>
179
180         * gst/base/gstbasesink.c: (gst_base_sink_handle_object),
181         (gst_base_sink_change_state):
182         Small debug line.
183
184         * gst/gstclock.h:
185         map SIGNAL and BROADCAST to the right function.
186
187         * gst/gstobject.h:
188         Remove redundant braces.
189
190         * gst/gstpad.c: (gst_pad_set_caps):
191         Don't call setcaps function when reseting caps to NULL.
192
193         * gst/gstsystemclock.c: (gst_system_clock_dispose),
194         (gst_system_clock_async_thread), (gst_system_clock_id_wait_async),
195         (gst_system_clock_id_unschedule):
196         Use BROADCAST as this is what we do.
197
198 2005-06-29  Wim Taymans  <wim@fluendo.com>
199
200         * gst/base/gstbasesink.c: (gst_base_sink_handle_object):
201         We are actually prerolling before commiting the state
202         change. 
203
204 2005-06-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
205
206         * docs/manual/advanced-clocks.xml:
207         * docs/manual/advanced-interfaces.xml:
208         * docs/manual/advanced-metadata.xml:
209         * docs/manual/advanced-position.xml:
210         * docs/manual/advanced-schedulers.xml:
211         * docs/manual/advanced-threads.xml:
212         * docs/manual/appendix-porting.xml:
213         * docs/manual/basics-bins.xml:
214         * docs/manual/basics-bus.xml:
215         * docs/manual/basics-elements.xml:
216         * docs/manual/basics-helloworld.xml:
217         * docs/manual/basics-pads.xml:
218         * docs/manual/highlevel-components.xml:
219         * docs/manual/manual.xml:
220         * docs/manual/thread.fig:
221           Update (until threads/scheduling) Application Development Manual;
222           remove GstThread, add GstBus, add simple porting checklist, add
223           documentation for tag writing, clocks, make all examples until this
224           part compile and run.
225         * examples/manual/Makefile.am:
226           Update from changes to Application Development Manual; add bus
227           example, remove thread example.
228
229 2005-06-28  Wim Taymans  <wim@fluendo.com>
230
231         * gst/gstbus.c: (gst_bus_post), (gst_bus_have_pending),
232         (gst_bus_set_flushing), (gst_bus_pop), (gst_bus_peek),
233         (gst_bus_source_dispatch):
234         Add debugging messages.
235         Make internal methods static.
236         Handle the case where the bus is flushed in the handler.
237         
238         * gst/gstelement.c: (gst_element_get_bus):
239         Fix refcount in _get_bus();
240
241         * gst/gstpipeline.c: (gst_pipeline_change_state),
242         (gst_pipeline_get_clock_func):
243         Clock refcounting fixes.
244         Handle the case where preroll timed out more gracefully.
245         
246         * gst/gstsystemclock.c: (gst_system_clock_dispose):
247         Clean up the internal thread in dispose. This is needed
248         for subclasses that actually get disposed.
249         
250         * gst/schedulers/threadscheduler.c:
251         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
252         (gst_thread_scheduler_dispose):
253         Free thread pool in dispose.
254
255 2005-06-28  Andy Wingo  <wingo@pobox.com>
256
257         * tests/network-clock-utils.scm (debug, print-event): New utils.
258
259         * tests/network-clock.scm (*debug*, *with-graph*): New parameters.
260         (*packet-loss*): Unified loss probability.
261         (network-time): Report out-of-band events.
262
263         * tests/plot-data: Add support for out-of-band events. Hack it
264         into this script instead of passing it down the pipe; should fix
265         this later.
266
267 2005-06-28  Wim Taymans  <wim@fluendo.com>
268
269         * docs/gst/gstreamer.types:
270         * docs/gst/tmpl/gstbasesrc.sgml:
271         * docs/gst/tmpl/gstpad.sgml:
272         Docs fixes.
273
274 2005-06-28  Wim Taymans  <wim@fluendo.com>
275
276         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
277         (gst_proxy_pad_do_checkgetrange), (gst_proxy_pad_do_acceptcaps),
278         (gst_proxy_pad_do_fixatecaps):
279         Correctly proxy the check_pull_range function.
280
281 2005-06-28  Andy Wingo  <wingo@pobox.com>
282
283         * tests/network-clock.scm: Removed need for slib.
284         
285 2005-06-28  Wim Taymans  <wim@fluendo.com>
286
287         * gst/base/gstbasesink.c: (gst_basesink_set_pad_functions),
288         (gst_basesink_preroll_queue_flush):
289         * gst/base/gstbasesrc.c: (gst_basesrc_set_dataflow_funcs):
290         * gst/elements/gsttee.c: (gst_tee_update_pad_functions):
291         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
292         (gst_proxy_pad_do_acceptcaps), (gst_proxy_pad_do_fixatecaps),
293         (gst_proxy_pad_set_property):
294         * gst/gstpad.c:
295         * gst/gstpad.h:
296         * gst/gstqueue.c: (gst_queue_init):
297         The deprecated pad loop function is removed now.
298
299 2005-06-28  Andy Wingo  <wingo@pobox.com>
300
301         * tests/network-clock.scm (*timeout*, *send-loss*, *recv-loss*):
302         New parameters, simulate network packet loss.
303
304         * tests/network-clock-utils.scm: Initialize the RNG.
305
306 2005-06-28  Wim Taymans  <wim@fluendo.com>
307
308         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_flush),
309         (gst_basesink_event), (gst_basesink_deactivate):
310         Flushing the preroll queue always needs to unlock the waiters.
311
312 2005-06-28  Edward Hervey  <edward@fluendo.com>
313
314         * gst/gstpipeline.c: (gst_pipeline_send_event): 
315         Wheen a seek was successful on a pipeline, set the stream_time to the
316         seek offset in order to have a synchronized stream_time.
317
318 2005-06-28  Wim Taymans  <wim@fluendo.com>
319
320         * gst/gstghostpad.c: (gst_proxy_pad_do_bufferalloc),
321         (gst_proxy_pad_do_getrange), (gst_proxy_pad_do_checkgetrange),
322         (gst_proxy_pad_do_getcaps), (gst_proxy_pad_do_acceptcaps),
323         (gst_proxy_pad_do_fixatecaps):
324         Call wrapper function instead of just calling the function
325         pointers. This takes care of any locking and whatmore.
326
327 2005-06-28  Wim Taymans  <wim@fluendo.com>
328
329         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push),
330         (gst_pad_pull_range):
331         * gst/gstpad.h:
332         CONNECTED -> LINKED.
333
334 2005-06-28  Andy Wingo  <wingo@pobox.com>
335
336         * *.c: Don't cast to GST_OBJECT when reffing or unreffing. Large
337         source-munging commit!!!
338
339         * gst/gstobject.c (gst_object_unref, gst_object_ref) 
340         (gst_object_sink): Take gpointer arguments, not GstObject --
341         avoids casts. Like GLib.
342
343         * gst/gstghostpad.c (gst_proxy_pad_do_activate): Don't proxy
344         activate.
345
346 2005-06-27  Andy Wingo  <wingo@pobox.com>
347
348         * gst/base/gsttypefindhelper.c (gst_type_find_helper): Unref any
349         remaining buffer.
350
351         * gst/gsttrace.c (gst_alloc_trace_list_sorted): New helper,
352         returns a sorted copy of the trace list.
353         (gst_alloc_trace_print_live): New API, only prints traces with
354         live objects. Sort the list.
355         (gst_alloc_trace_print_all): Sort the list.
356         (gst_alloc_trace_print): Align columns.
357
358         * gst/elements/gstttypefindelement.c:
359         * gst/elements/gsttee.c:
360         * gst/base/gstbasesrc.c:
361         * gst/base/gstbasesink.c:
362         * gst/base/gstbasetransform.c:
363         * gst/gstqueue.c: Adapt for pad activation changes.
364
365         * gst/gstpipeline.c (gst_pipeline_init): Unref after parenting
366         sched.
367         (gst_pipeline_dispose): Drop ref on sched.
368
369         * gst/gstpad.c (gst_pad_init): Set the default activate func.
370         (gst_pad_activate_default): Push mode by default.
371         (pre_activate_switch, post_activate_switch): New stubs, things to
372         do before and after switching activation modes on pads.
373         (gst_pad_set_active): Take a boolean and not a mode, dispatch to
374         the pad's activate function to choose which mode to activate.
375         Shortcut on deactivation and call the right function directly.
376         (gst_pad_activate_pull): New API, (de)activates a pad in pull
377         mode.
378         (gst_pad_activate_push): New API, same for push mode.
379         (gst_pad_set_activate_function) 
380         (gst_pad_set_activatepull_function) 
381         (gst_pad_set_activatepush_function): Setters for new API.
382
383         * gst/gstminiobject.c (gst_mini_object_new, gst_mini_object_free):
384         Trace all miniobjects.
385         (gst_mini_object_make_writable): Unref the arg if we copy, like
386         gst_caps_make_writable.
387
388         * gst/gstmessage.c (_gst_message_initialize): No trace init.
389
390         * gst/gstghostpad.c (gst_proxy_pad_do_activate) 
391         (gst_proxy_pad_do_activatepull, gst_proxy_pad_do_activatepush):
392         Adapt for new pad API.
393
394         * gst/gstevent.c (_gst_event_initialize): Don't initialize trace.
395
396         * gst/gstelement.h:
397         * gst/gstelement.c (gst_element_iterate_src_pads) 
398         (gst_element_iterate_sink_pads): New API functions.
399         
400         * gst/gstelement.c (iterator_fold_with_resync): New utility,
401         should fold into gstiterator.c in some form.
402         (gst_element_pads_activate): Simplified via use of fold and
403         delegation of decisions to gstpad->activate.
404
405         * gst/gstbus.c (gst_bus_source_finalize): Set the bus to NULL,
406         help in debugging.
407
408         * gst/gstbuffer.c (_gst_buffer_initialize): Ref the buffer type
409         class once in init, like gstmessage. Didn't run into this issue
410         but it seems correct. Don't initialize a trace, gstminiobject does
411         that.
412
413         * check/pipelines/simple_launch_lines.c (test_stop_from_app): New
414         test, runs fakesrc ! fakesink, stopping on ::handoff via a message
415         to the bus.
416         (assert_live_count): New util function, uses alloc traces to check
417         cleanup.
418
419         * check/gst/gstghostpad.c (test_ghost_pads): More refcount checks.
420         To be modified when unlink drops the internal pad.
421
422 2005-06-27  Wim Taymans  <wim@fluendo.com>
423
424         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_iterate_state_order),
425         (gst_bin_change_state):
426         Cleanup the get_state() function a little, make sure it
427         iterates the same set of elements.
428         Added stub iterate_state_order().
429
430 2005-06-27  Thomas Vander Stichele  <thomas at apestaart dot org>
431
432         * docs/gst/gstreamer-docs.sgml:
433         * docs/gst/gstreamer-sections.txt:
434         * docs/gst/gstreamer.types:
435         * docs/gst/tmpl/gstbasesink.sgml:
436         * docs/gst/tmpl/gstbasesrc.sgml:
437         * docs/gst/tmpl/gstbasetransform.sgml:
438         * docs/gst/tmpl/gstelement.sgml:
439         * docs/gst/tmpl/gstiterator.sgml:
440         * gst/base/gstbasesrc.c:
441         * gst/base/gstbasesrc.h:
442         * gst/base/gstbasetransform.h:
443         * gst/gstelement.c:
444         * gst/gstiterator.h:
445           adding basetransform and iterator docs
446
447 2005-06-27  Andy Wingo  <wingo@pobox.com>
448
449         * docs/design/part-activation.txt: Notes on how activation should
450         work -- not quite implemented yet.
451
452 2005-06-25  Wim Taymans  <wim@fluendo.com>
453
454         * gst/gstghostpad.c: (gst_proxy_pad_do_chain):
455         At least get the chain function correct, needs more
456         fixing.
457
458 2005-06-25  Wim Taymans  <wim@fluendo.com>
459
460         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
461         (gst_basesink_handle_object), (gst_basesink_event),
462         (gst_basesink_do_sync), (gst_basesink_handle_event),
463         (gst_basesink_change_state):
464         * gst/gsttask.h:
465         Right, two problems here: ghostpads don't take locks and
466         glib _rec_mutex_lock_full() with depth==0 still locks.
467         Catch illegal locking and g_warn them.
468
469 2005-06-25  Wim Taymans  <wim@fluendo.com>
470
471         * check/states/sinks.c: (START_TEST), (gst_object_suite):
472         Have to check for completion now...
473
474 2005-06-25  Wim Taymans  <wim@fluendo.com>
475
476         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
477         (gst_basesink_handle_object), (gst_basesink_event),
478         (gst_basesink_do_sync), (gst_basesink_handle_event),
479         (gst_basesink_change_state):
480         * gst/gstpad.h:
481         Unlock STREAM_LOCK whatever the recursion was.
482
483 2005-06-25  Wim Taymans  <wim@fluendo.com>
484
485         * gst/base/gstbasesink.c: (gst_basesink_set_property),
486         (gst_basesink_preroll_queue_empty),
487         (gst_basesink_preroll_queue_flush), (gst_basesink_handle_object),
488         (gst_basesink_event), (gst_basesink_do_sync),
489         (gst_basesink_handle_event), (gst_basesink_handle_buffer),
490         (gst_basesink_chain), (gst_basesink_loop), (gst_basesink_activate),
491         (gst_basesink_change_state):
492         Reworked the base sink, handle event and buffer serialisation
493         correctly and removed possible deadlock.
494         Handle EOS correctly.
495
496 2005-06-25  Wim Taymans  <wim@fluendo.com>
497
498         * gst/gstpipeline.c: (is_eos), (pipeline_bus_handler),
499         (gst_pipeline_change_state):
500         * tools/gst-launch.c: (check_intr), (event_loop), (main):
501         Allow elements to post EOS in the state change function.
502         Fix up -launch, make it exit the poll loop when the
503         pipeline actually changed state.
504         Fix up warning parsing in -launch.
505
506 2005-06-25  Wim Taymans  <wim@fluendo.com>
507
508         * gst/elements/gsttee.c: (gst_tee_chain), (gst_tee_loop),
509         (gst_tee_sink_activate):
510         Core takes STREAM_LOCK for us now.
511
512 2005-06-25  Wim Taymans  <wim@fluendo.com>
513
514         * gst/gstelement.c: (gst_element_get_state_func),
515         (gst_element_set_state):
516         * gst/gstelement.h:
517         * gst/gstmessage.c: (gst_message_parse_error),
518         (gst_message_parse_warning):
519         Keep track of current target state while performing a state
520         change so that subclasses can do something interesting.
521         Fix parsing of warning/error messages when GError is NULL.
522
523 2005-06-24  Thomas Vander Stichele  <thomas at apestaart dot org>
524
525         * docs/gst/Makefile.am:
526         * docs/gst/gstreamer-docs.sgml:
527         * docs/gst/gstreamer-sections.txt:
528         * docs/gst/gstreamer.types:
529         * docs/gst/tmpl/gstbasesink.sgml:
530         * docs/gst/tmpl/gstbasesrc.sgml:
531         * docs/gst/tmpl/gstbin.sgml:
532         * docs/gst/tmpl/gstcompat.sgml:
533         * docs/gst/tmpl/gstfakesink.sgml:
534         * docs/gst/tmpl/gstfakesrc.sgml:
535         * docs/gst/tmpl/gstfilesink.sgml:
536         * docs/gst/tmpl/gstfilesrc.sgml:
537         * docs/gst/tmpl/gstindex.sgml:
538         * docs/manual/appendix-quotes.xml:
539         * gst/base/gstbasesrc.h:
540         * gst/elements/gstfakesrc.h:
541         * gst/gstmessage.h:
542           start pulling in base classes and elements in our docs
543
544 2005-06-24  Stefan Kost  <ensonic@users.sf.net>
545
546         * docs/gst/Makefile.am:
547         * docs/libs/Makefile.am:
548           fixed make distcheck with gtk-doc 1.3
549
550 2005-06-23  Wim Taymans  <wim@fluendo.com>
551
552         * gst/gstelement.c: (gst_element_get_state_func),
553         (gst_element_set_state), (gst_element_change_state):
554         When the state did not change, also report NO_PREROLL
555         when it matters.
556
557 2005-06-23  Wim Taymans  <wim@fluendo.com>
558
559         * gst/gstpad.c: (gst_pad_event_default):
560         * gst/gstqueue.c: (gst_queue_loop):
561         No unsafe task pausing please.
562
563 2005-06-23  Wim Taymans  <wim@fluendo.com>
564
565         * gst/schedulers/threadscheduler.c:
566         (gst_thread_scheduler_task_start),
567         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_func):
568         Ref the task before pushing it on the threadpool. This
569         makes sure that we have a ref when the threadfunction is
570         actually called.
571
572 2005-06-23  Andy Wingo  <wingo@pobox.com>
573
574         * gst/base/gstbasesrc.c (gst_basesrc_get_range): Check if the
575         offset is greater than the file's size.
576
577         * gst/gstobject.h (GST_CLASS_LOCK, GST_CLASS_TRYLOCK) 
578         (GST_CLASS_UNLOCK, GST_CLASS_GET_LOCK, GstObjectClass)
579         * gst/gstobject.c (gst_object_class_init): Make the class lock
580         recursive. Wim won't let me drop deep_notify. Decodebin works
581         again, whoopdy doo.
582
583         * gst/gstghostpad.c (on_int_notify): Catches notify::caps on the
584         internal pad, and hacks accordingly. Doesn't do it on the target
585         pad because we change its caps. Probably catches all cases of
586         interest tho.
587         (gst_ghost_pad_set_property): Connect to notify::caps as
588         appropritate.
589
590         * tests/network-clock.scm (plot-simulation): Pipe data to the
591         elite python skript.
592
593         * tests/network-clock-utils.scm (define-parameter): New macro,
594         defines a parameter that can be set via the command line.
595         (set-parameter!, parse-parameter-arguments): Command line args
596         parser.
597
598         * tests/plot-data: Simple matplotlib-based plotter, takes input on
599         stdin.
600
601 2005-06-23  Jan Schmidt  <thaytan@mad.scientist.com>
602
603         * gst/elements/gsttypefindelement.c:
604         (gst_type_find_element_handle_event):
605           Don't restart typefinding on a discont.
606         * gst/gstelement.c: (gst_element_set_state):
607           Debug spelling fix.
608         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_send_event):
609           Allow changing mode of an active pad.
610           Debug output fixes.
611         * gst/registries/gstlibxmlregistry.c: (load_feature):
612           Don't cast a static pad template to a normal pad template.
613
614 2005-06-23  Thomas Vander Stichele  <thomas at apestaart dot org>
615
616         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
617         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
618           remove gst_strtoll completely, since it didn't actually do
619           anything more than what g_ascii_strtoull already does.
620           check for range errors when deserializing
621           do a cast for the unsigned cases; but further fixing needs
622           a decision on what the interpretation of "(int)" and
623           deserialization should be for values that fall outside the
624           type's boundaries (ie, refuse, or interpret as casting)
625
626 2005-06-23  Wim Taymans  <wim@fluendo.com>
627
628         * check/Makefile.am:
629         * check/states/sinks.c: (START_TEST), (gst_object_suite), (main):
630         * docs/design/part-live-source.txt:
631         * docs/design/part-states.txt:
632         * gst/base/gstbasesrc.c: (gst_basesrc_init),
633         (gst_basesrc_set_live), (gst_basesrc_is_live),
634         (gst_basesrc_get_range), (gst_basesrc_activate),
635         (gst_basesrc_change_state):
636         * gst/base/gstbasesrc.h:
637         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
638         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
639         * gst/gstbin.c: (gst_bin_get_state), (gst_bin_change_state):
640         * gst/gstelement.c: (gst_element_get_state_func),
641         (gst_element_set_state):
642         * gst/gstelement.h:
643         * gst/gsttypes.h:
644         * tools/gst-launch.c: (event_loop), (main):
645         Added support for live sources and other elements that
646         cannot do preroll.
647         Updated design docs, added live-source design doc.
648         Implemented live source functionality in basesrc
649         Fix error condition in _bin_get_state()
650         Implement live source handling in -launch.
651         Added check for live sources.
652         Fixed case in GstBin where elements were changed state
653         multiple times.
654
655
656 2005-06-23  Andy Wingo  <wingo@pobox.com>
657
658         * check/gst/gstpad.c (test_get_allowed_caps, test_refcount): Fix
659         borken refcounting.
660
661         * gst/gstpad.c (gst_pad_set_caps): Remove needless refs,
662         gst_caps_replace takes care of this for us.
663
664         * gst/gstghostpad.c (gst_proxy_pad_do_setcaps): Call the full
665         gst_pad_set_caps on the target, not just its setcaps() function.
666
667         * tests/network-clock.scm: 
668         * tests/network-clock-utils.scm: A network clock simulator.
669         Something of an algorithmic testbed before doing something in C.
670
671 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
672
673         * check/Makefile.am:
674         * check/gst/capslist.h:
675           copy over from 0.8, and add two with bitmasks specified with
676           (int) 0xFF...
677         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
678           add test to parse everything from capslist.h
679         * check/gst/gststructure.c: (START_TEST), (gst_value_suite),
680         (main):
681           add test for structure deserialization
682         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
683           add tests for deserialization of strings to int types
684         * gst/gststructure.c: (gst_structure_nth_field_name):
685         * gst/gststructure.h:
686           add a way to get the name of a field referenced by index
687         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
688           instead of checking if the resulting long long lies between
689           min and max, we check if the long long would fit into
690           a number of bytes for the final type.
691           This fixes cases where a string represents 2^32 - 1, which
692           when cast to int would be the (valid) -1, but is bigger than
693           G_MAXINT
694
695 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
696
697         * gst/parse/grammar.y:
698           add a log line for type deserialization
699
700 2005-06-22  Thomas Vander Stichele  <thomas at apestaart dot org>
701
702         * check/gst/gstvalue.c: (START_TEST):
703         * gst/gstvalue.c: (gst_value_deserialize):
704           return long long, not int, so gint64 deserialization actually
705           works.  Is there any flag that makes the compiler check this ?
706           Fixes #308559
707
708 2005-06-22  Wim Taymans  <wim@fluendo.com>
709
710         * gst/gstbuffer.h:
711         Added convenience macros for setting buffers in GValue.
712
713 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
714
715         * check/gst/.cvsignore:
716         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite):
717           add a test deserializing int64, and comment part out because
718           it fails, yay !
719
720 2005-06-21  Thomas Vander Stichele  <thomas at apestaart dot org>
721
722         * check/Makefile.am:
723         * check/gst/gstvalue.c: (START_TEST), (gst_value_suite), (main):
724         * testsuite/Makefile.am:
725         * testsuite/caps/Makefile.am:
726         * testsuite/caps/value_serialize.c:
727         * testsuite/test_gst_init.c:
728           move a value_serialize test over
729
730 2005-06-20  Wim Taymans  <wim@fluendo.com>
731
732         * gst/gstpad.c:
733         Small doc updates.
734         
735         * gst/gstvalue.c: (gst_value_compare_buffer),
736         (gst_value_serialize_buffer), (gst_value_deserialize_buffer),
737         (gst_value_compare_flags), (gst_value_serialize_flags),
738         (gst_value_deserialize_flags), (_gst_value_initialize):
739         Fix serialisation of buffers, they are not boxed types anymore
740
741 2005-06-20  Wim Taymans  <wim@fluendo.com>
742
743         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite):
744         Testcase to show error in buffer-on-caps serialisation.
745
746 2005-06-20  Andy Wingo  <wingo@pobox.com>
747
748         * docs/random/wingo/porting-plugins-to-0.9: A pitiful document I
749         will be adding to later.
750
751         * gst/gstsystemclock.c (gst_system_clock_init): Unlock the clock
752         if its socks fill with rocks.
753         (gst_system_clock_obtain): Set the name on object construction.
754         Avoid double-checked locking.
755
756 2005-06-20  Tim-Philipp Müller  <tim at centricular dot net>
757
758         * gst/gsturi.c: (gst_element_make_from_uri):
759           Fix potential endless loop.
760
761 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
762
763         * check/Makefile.am:
764           add gsttag
765         * check/gst/gsttag.c: (check_tags), (START_TEST), (gst_tag_suite),
766         (main):
767           move over from testsuite dir and clean up
768         * configure.ac:
769         * gst/gsttag.c:
770         * testsuite/Makefile.am:
771         * testsuite/tags/.cvsignore:
772         * testsuite/tags/Makefile.am:
773         * testsuite/tags/merge.c:
774           remove testsuite/tags
775
776 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
777
778         * docs/gst/gstreamer-sections.txt:
779         * docs/gst/tmpl/gstenumtypes.sgml:
780         * win32/gstenumtypes.c:
781           clean up documentation build a little
782
783 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
784
785         * check/gstcheck.h:
786           add macros for checking refcounts on objects and caps
787         * check/gst/gstpad.c: (START_TEST), (gst_pad_suite):
788           add some more unit tests
789         * gst/gstpad.c: (gst_pad_link_check_compatible_unlocked),
790         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_allowed_caps):
791           fix leaked refcounts (I hope :)) so unittest works
792         * gst/gstpad.h:
793           whitespace removal
794
795 2005-06-19  Thomas Vander Stichele  <thomas at apestaart dot org>
796
797         * configure.ac: back to HEAD
798
799 === release 0.9.1 ===
800
801 2005-06-17  Thomas Vander Stichele  <thomas at apestaart dot org>
802
803         * NEWS:
804         * RELEASE:
805           updated
806
807 2005-06-17  Andy Wingo  <wingo@pobox.com>
808
809         * gst/base/gstbasesink.c (gst_basesink_chain): Remove bogus
810         assert; it's always possible that the pad gets deactivated in
811         between the checks in gstpad.c and the implementation. Rely on
812         finish_preroll() to return a FLUSHING or similar instead of on the
813         assert.
814         
815         * gst/base/gstbasesink.c (gst_basesink_event): Only wait for the
816         clock and post an EOS message if we come out of finish_preroll in
817         the playing state.
818
819 2005-06-16  David Schleef  <ds@schleef.org>
820
821         * gst/elements/gstcapsfilter.c: (gst_capsfilter_class_init),
822         (gst_capsfilter_set_property): Allow NULL as possible value
823         for filter_caps property, indicating GST_CAPS_ANY.
824
825 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
826
827         * gst/elements/gstfakesrc.c: (gst_fakesrc_create):
828           fix debug output
829         * gst/schedulers/Makefile.am:
830           use libgst prefix
831         * gstreamer.spec.in:
832           fix spec for it
833
834 2005-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
835
836         * gstreamer.spec.in:
837           clean up
838
839 2005-06-08  Andy Wingo  <wingo@pobox.com>
840
841         * gst/gstutils.c: RPAD fixes all around.
842         (gst_element_link_pads): Refcounting fixes.
843
844         * tools/gst-inspect.c:
845         * tools/gst-xmlinspect.c:
846         * parse/grammar.y:
847         * gst/base/gsttypefindhelper.c:
848         * gst/base/gstbasesink.c:
849         * gst/gstqueue.c: RPAD fixes.
850
851         * gst/gstghostpad.h:
852         * gst/gstghostpad.c: New ghost pad implementation as full proxy
853         pads. The tricky thing is they provide both source and sink
854         interfaces, since they proxy the internal pad for the external
855         pad, and vice versa. Implement with lower-level ProxyPad objects,
856         with the interior proxy pad as a child of the exterior ghost pad.
857         Should write a doc on this.
858         
859         * gst/gstpad.h: s/RPAD/PAD/, s/RealPad/Pad/.
860         (gst_pad_set_name, gst_pad_set_parent): Macros removed, use
861         gst_object API.
862         
863         * gst/gstpad.c: Big changes. No more stub base GstPad, now all
864         pads are real pads. No ghost pads in this file. Not documenting
865         the myriad s/RPAD/PAD/ and REALIZE fixes.
866         (gst_pad_class_init): Add properties for "direction" and
867         "template". Both are construct-only, so they can't change during
868         the life of the pad. Fixes properly deriving from GstPad.
869         (gst_pad_custom_new, gst_pad_custom_new_from_template): Gone. For
870         derived objects, just set properties when creating the objects via
871         g_object_new.
872         (gst_pad_get_parent): Implement as a function, return NULL if the
873         parent is not an element.
874         (gst_pad_get_real_parent, gst_pad_add_ghost_pad)
875         (gst_pad_remove_ghost_pad, gst_pad_realize): Removed.
876         
877         * gst/gstobject.c (gst_object_class_init): Make name a construct
878         property. Don't set it in the object init.
879
880         * gst/gstelement.c (gst_element_add_pad): Don't allow adding pads
881         with UNKNOWN direction.
882         (gst_element_add_ghost_pad): Remove non-orthogonal API. Replace
883         with gst_element_add_pad (e, gst_ghost_pad_new (name, pad)).
884         (gst_element_remove_pad): Remove ghost-pad special cases.
885         (gst_element_pads_activate): Remove rpad cruft.
886
887         * gst/gstbin.c (gst_bin_change_state): Use gst_pad_get_parent to
888         catch the pad's-parent-not-an-element case.
889
890         * gst/gst.h: Include gstghostpad.h.
891
892         * gst/gst.c (init_post): No more real, ghost pads.
893
894         * gst/Makefile.am: Add gstghostpad.[ch].
895
896         * check/Makefile.am:
897         * check/gst/gstbin.c:
898         * check/gst/gstghostpad.c (test_ghost_pads): Check that linking
899         into a bin creates ghost pads, and that the refcounts are right.
900         Partly moved from gstbin.c.
901
902 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
903
904         * check/gst-libs/.cvsignore:
905         * check/gst/.cvsignore:
906         * check/pipelines/.cvsignore:
907           ignore more
908         * check/pipelines/cleanup.c: (setup_pipeline), (run_pipeline),
909         (START_TEST), (cleanup_suite), (main):
910           add some tests related to cleanup after running pipelines
911
912 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
913
914         * check/gst/gstbuffer.c: (START_TEST), (gst_test_suite), (main):
915           add a testsuite for GstBuffer
916
917 2005-06-08  Thomas Vander Stichele  <thomas at apestaart dot org>
918
919         * gst/gstminiobject.h:
920           add defines for accessing the refcount
921
922 2005-06-03  Stefan Kost  <ensonic@users.sf.net>
923
924         * Makefile.am: added support for html unit test coverage reports
925
926 2005-06-03  Jan Schmidt  <thaytan@mad.scientist.com>
927
928         * gst/elements/gstcapsfilter.c: (gst_capsfilter_set_property):
929           Free existing caps if the capsfilter changes. Add a FIXME about
930           setting those caps on the pads.
931
932         * gst/gstutils.c: (gst_element_get_compatible_pad), (ghost_up):
933           Before adding a ghost pad to a parent bin, check that there isn't
934           already one for the element on the bin. Prevents infinite recursion
935           when using decodebin in parse pipelines. Andy says he'll rewrite the
936           way this works anyway, so ignore the hack.
937
938 2005-06-02  Andy Wingo  <wingo@pobox.com>
939
940         * gst/elements/gsttypefindelement.c (do_pull_typefind): Query the
941         file size, pass it on to the type find helper.
942
943         * gst/base/gstbasesrc.c (gst_basesrc_do_seek): Set the
944         segment_start and segment_end properly according to the seek
945         method. Segment_end is still a bit flaky because offset can be
946         negative for CUR and END cases, but it takes -1 as an "unset"
947         value.
948
949 2005-06-02  Wim Taymans  <wim@fluendo.com>
950
951         * gst/base/gstbasesink.c: (gst_basesink_pad_buffer_alloc),
952         (gst_base_sink_buffer_alloc), (gst_basesink_preroll_queue_push),
953         (gst_basesink_activate):
954         * gst/base/gstbasesink.h:
955         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
956         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
957         (gst_pad_query), (gst_pad_start_task):
958         * gst/gstpad.h:
959         * gst/gstqueue.c: (gst_queue_bufferalloc),
960         (gst_queue_handle_sink_event), (gst_queue_chain):
961         Bufferalloc: return GstFlowReturn to more accuratly report
962         why allocation failed.
963
964 2005-06-02  Wim Taymans  <wim@fluendo.com>
965
966         * gst/gstpipeline.c: (gst_pipeline_send_event):
967         Take snapshot of state without blocking.
968
969 2005-06-02  Wim Taymans  <wim@fluendo.com>
970
971         * docs/design/part-TODO.txt:
972         * docs/design/part-caps.txt:
973         * docs/design/part-clocks.txt:
974         * docs/design/part-negotiation.txt:
975         * docs/design/part-preroll.txt:
976         Small doc updates 
977
978 2005-05-30  Wim Taymans  <wim@fluendo.com>
979
980         * gst/elements/gstidentity.c: (gst_identity_event),
981         (gst_identity_transform), (gst_identity_get_property):
982         Protect last_message property as it is accessed from
983         multiple threads.
984
985 2005-05-30  Wim Taymans  <wim@fluendo.com>
986
987         * gst/gstelement.c: (gst_element_init),
988         (gst_element_pads_activate), (gst_element_change_state):
989         Slicker pad activation code.
990
991 2005-05-30  Wim Taymans  <wim@fluendo.com>
992
993         * gst/Makefile.am:
994         * gst/gstelement.h:
995         * gst/gstelementfactory.h:
996         * gst/gsttypes.h:
997         Move elementfactory methods to separate .h file.
998
999 2005-05-30  Wim Taymans  <wim@fluendo.com>
1000
1001         * docs/design/part-overview.txt:
1002         * gst/gstsystemclock.h:
1003         Small typo fixes, doc updates.
1004
1005 2005-05-30  Wim Taymans  <wim@fluendo.com>
1006
1007         * gst/gst.c: (gst_init_get_popt_table), (init_post),
1008         (init_popt_callback):
1009         Remove cpu-opt flag.
1010
1011 2005-05-30  Wim Taymans  <wim@fluendo.com>
1012
1013         * gst/gstbuffer.c: (gst_subbuffer_finalize),
1014         (gst_buffer_create_sub), (gst_buffer_is_span_fast):
1015         * gst/gstbuffer.h:
1016         Avoid typechecking in places where not needed.
1017         Added accessor for malloc_data.
1018
1019 2005-05-30  Wim Taymans  <wim@fluendo.com>
1020
1021         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_set_active),
1022         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_accept_caps),
1023         (gst_pad_configure_sink), (gst_pad_configure_src),
1024         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_send_event),
1025         (gst_pad_start_task):
1026         Propagate errors from _set_caps() in configure_src/sink
1027         functions instead of returning TRUE.
1028         FLUSH events can travel up and downstream
1029
1030
1031 2005-05-30  Wim Taymans  <wim@fluendo.com>
1032
1033         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1034         (gst_basesink_activate):
1035         Handle EOS in preroll.
1036
1037 2005-05-30  Wim Taymans  <wim@fluendo.com>
1038
1039         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1040         (gst_queue_loop), (gst_queue_handle_src_event):
1041         Remove old pieces of code
1042         Flushing the queue in an upstream event is a very bad idea.
1043
1044 2005-05-26  Andy Wingo  <wingo@pobox.com>
1045
1046         * gst/gstminiobject.c (gst_value_mini_object_collect): Use
1047         gst_value_set_mini_object so as to add a ref on the object (which
1048         will be removed when the value is unset).
1049
1050         * gst/elements/gstfakesink.c (gst_fakesink_class_init): Fix signal
1051         arg type in ::handoff.
1052
1053         * gst/gstelement.c (gst_element_change_state): Also deactivate
1054         pads in READY->NULL, just in case the element didn't make it to
1055         PAUSED. Wingo tested, Wim approved.
1056
1057 2005-05-26  Wim Taymans  <wim@fluendo.com>
1058
1059         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1060         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_alloc_buffer),
1061         (gst_pad_query), (gst_pad_send_event), (gst_pad_start_task):
1062         A flushing pad cannot be used to alloc_buffer from.
1063
1064 2005-05-26  Wim Taymans  <wim@fluendo.com>
1065
1066         * gst/gstbus.c: (gst_bus_init), (gst_bus_dispose), (gst_bus_post),
1067         (gst_bus_pop), (gst_bus_source_prepare), (gst_bus_source_check),
1068         (gst_bus_source_dispatch), (gst_bus_source_finalize),
1069         (gst_bus_create_watch), (gst_bus_add_watch_full):
1070         * gst/gstbus.h:
1071         Implement a real GSource and use g_main_context_wakeup() to
1072         signal new messages instead of the socketpair.
1073
1074 2005-05-25  Wim Taymans  <wim@fluendo.com>
1075
1076         * gst/gstbin.c: (bin_element_is_sink), (has_ancestor),
1077         (bin_element_is_semi_sink), (append_child), (gst_bin_change_state):
1078         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1079         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1080         (gst_pad_send_event), (gst_pad_start_task):
1081         * gst/gstqueue.c: (gst_queue_init), (gst_queue_locked_flush),
1082         (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop),
1083         (gst_queue_sink_activate), (gst_queue_src_activate),
1084         (gst_queue_change_state):
1085         * gst/gstqueue.h:
1086         Fix state changes for non sinks. We now change sinks, then elements
1087         with unconnected srcpads, then the rest.
1088         More efficient queue unlocking in flush and state changes.
1089         Set the pad activate mode even if it does not have an activate
1090         function.
1091
1092 2005-05-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1093
1094         * gst/base/gstbasesrc.c: (gst_basesrc_activate):
1095           Don't go in pull mode for non-seekable sources.
1096         * gst/elements/gsttypefindelement.h:
1097         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1098         (gst_type_find_element_dispose), (gst_type_find_handle_src_query),
1099         (free_entry), (stop_typefinding),
1100         (gst_type_find_element_handle_event), (find_peek),
1101         (gst_type_find_element_chain), (do_pull_typefind),
1102         (gst_type_find_element_change_state):
1103           Allow typefinding (w/o seeking) in push-mode, simplified version
1104           of what was in 0.8.
1105         * gst/gstutils.c: (gst_buffer_join):
1106         * gst/gstutils.h:
1107           gst_buffer_join() from 0.8.
1108
1109 2005-05-25  Wim Taymans  <wim@fluendo.com>
1110
1111         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_prepare),
1112         (gst_pad_link), (gst_pad_accept_caps), (gst_pad_query),
1113         (gst_pad_send_event), (gst_pad_start_task):
1114         Disable attempt at mode switching until it is figured out.
1115
1116 2005-05-25  Wim Taymans  <wim@fluendo.com>
1117
1118         * gst/base/gstadapter.c: (gst_adapter_peek), (gst_adapter_flush):
1119         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_push),
1120         (gst_basesink_finish_preroll), (gst_basesink_chain),
1121         (gst_basesink_loop), (gst_basesink_activate),
1122         (gst_basesink_change_state):
1123         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek),
1124         (gst_basesrc_get_range), (gst_basesrc_loop),
1125         (gst_basesrc_activate):
1126         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1127         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
1128         (gst_real_pad_init), (gst_real_pad_set_property),
1129         (gst_real_pad_get_property), (gst_pad_set_active),
1130         (gst_pad_is_active), (gst_pad_get_query_types), (gst_pad_unlink),
1131         (gst_pad_link_prepare), (gst_pad_link), (gst_pad_get_real_parent),
1132         (gst_real_pad_get_caps_unlocked), (gst_pad_peer_get_caps),
1133         (gst_pad_accept_caps), (gst_pad_get_peer), (gst_pad_realize),
1134         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1135         (gst_pad_dispatcher), (gst_pad_query), (gst_real_pad_dispose),
1136         (gst_pad_save_thyself), (handle_pad_block), (gst_pad_chain),
1137         (gst_pad_push), (gst_pad_get_range), (gst_pad_pull_range),
1138         (gst_pad_send_event), (gst_pad_start_task), (gst_pad_pause_task),
1139         (gst_pad_stop_task):
1140         * gst/gstpad.h:
1141         * gst/gstqueue.c: (gst_queue_handle_sink_event), (gst_queue_chain),
1142         (gst_queue_loop), (gst_queue_src_activate):
1143         * gst/gsttask.c: (gst_task_init), (gst_task_set_lock),
1144         (gst_task_get_state):
1145         * gst/gsttask.h:
1146         * gst/schedulers/threadscheduler.c:
1147         (gst_thread_scheduler_task_start), (gst_thread_scheduler_func):
1148         Implement gst_pad_pause/start/stop_task(), take STREAM lock
1149         in task function.
1150         Remove ACTIVE pad flag, use FLUSHING everywhere
1151         Added _pad_chain(), _pad_get_range() to call chain/getrange 
1152         functions.
1153         Add locks around IS_FLUSHING when reading.
1154         Take STREAM lock in chain(), get_range() functions so plugins
1155         don't need to take it anymore.
1156         
1157
1158
1159 2005-05-25  Wim Taymans  <wim@fluendo.com>
1160
1161         * tools/gst-launch.c: (event_loop):
1162         Unref message after using its contents instead of
1163         before.
1164
1165 2005-05-24  Wim Taymans  <wim@fluendo.com>
1166
1167         * docs/design/draft-ghostpads.txt:
1168         * docs/design/draft-push-pull.txt:
1169         * docs/design/draft-query.txt:
1170         * docs/design/part-overview.txt:
1171         Docs updates, added general overview doc.
1172
1173 2005-05-21  David Schleef  <ds@schleef.org>
1174
1175         * docs/gst/tmpl/old/GstBin.sgml:
1176         * docs/gst/tmpl/old/GstBuffer.sgml:
1177         * docs/gst/tmpl/old/GstCaps.sgml:
1178         * docs/gst/tmpl/old/GstClock.sgml:
1179         * docs/gst/tmpl/old/GstCompat.sgml:
1180         * docs/gst/tmpl/old/GstData.sgml:
1181         * docs/gst/tmpl/old/GstElement.sgml:
1182         * docs/gst/tmpl/old/GstEvent.sgml:
1183         * docs/gst/tmpl/old/GstIndex.sgml:
1184         * docs/gst/tmpl/old/GstStructure.sgml:
1185         * docs/gst/tmpl/old/GstTag.sgml:
1186         * docs/gst/tmpl/old/cothreads.sgml:
1187         * docs/gst/tmpl/old/cothreads_compat.sgml:
1188         * docs/gst/tmpl/old/gettext.sgml:
1189         * docs/gst/tmpl/old/gobject2gtk.sgml:
1190         * docs/gst/tmpl/old/grammar.tab.sgml:
1191         * docs/gst/tmpl/old/gst-i18n-app.sgml:
1192         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
1193         * docs/gst/tmpl/old/gst_private.sgml:
1194         * docs/gst/tmpl/old/gstaggregator.sgml:
1195         * docs/gst/tmpl/old/gstarch.sgml:
1196         * docs/gst/tmpl/old/gstatomic_impl.sgml:
1197         * docs/gst/tmpl/old/gstbufferstore.sgml:
1198         * docs/gst/tmpl/old/gstdata_private.sgml:
1199         * docs/gst/tmpl/old/gstdisksink.sgml:
1200         * docs/gst/tmpl/old/gstdisksrc.sgml:
1201         * docs/gst/tmpl/old/gstelementfactory.sgml:
1202         * docs/gst/tmpl/old/gstextratypes.sgml:
1203         * docs/gst/tmpl/old/gstfakesink.sgml:
1204         * docs/gst/tmpl/old/gstfakesrc.sgml:
1205         * docs/gst/tmpl/old/gstfdsink.sgml:
1206         * docs/gst/tmpl/old/gstfdsrc.sgml:
1207         * docs/gst/tmpl/old/gstfilesink.sgml:
1208         * docs/gst/tmpl/old/gstfilesrc.sgml:
1209         * docs/gst/tmpl/old/gsthttpsrc.sgml:
1210         * docs/gst/tmpl/old/gstidentity.sgml:
1211         * docs/gst/tmpl/old/gstindexfactory.sgml:
1212         * docs/gst/tmpl/old/gstmarshal.sgml:
1213         * docs/gst/tmpl/old/gstmd5sink.sgml:
1214         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
1215         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
1216         * docs/gst/tmpl/old/gstpadtemplate.sgml:
1217         * docs/gst/tmpl/old/gstpipefilter.sgml:
1218         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
1219         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
1220         * docs/gst/tmpl/old/gstshaper.sgml:
1221         * docs/gst/tmpl/old/gstspider.sgml:
1222         * docs/gst/tmpl/old/gstspideridentity.sgml:
1223         * docs/gst/tmpl/old/gststatistics.sgml:
1224         * docs/gst/tmpl/old/gsttee.sgml:
1225         * docs/gst/tmpl/old/gsttimecache.sgml:
1226         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
1227         * docs/gst/tmpl/old/gstxmlregistry.sgml:
1228         * docs/gst/tmpl/old/gthread-cothreads.sgml:
1229         * docs/gst/tmpl/old/types.sgml:
1230           I didn't intend to add these or check them in.
1231
1232 2005-05-19  David Schleef  <ds@schleef.org>
1233
1234         * configure.ac: Use -no-common everywhere.  In a sane world, it
1235           would be the default in libtool, because without it, you can't
1236           build DLLs on Windows.
1237         * docs/gst/gstreamer-docs.sgml: Remove GstCpu, GstData, GstThread
1238         * docs/gst/gstreamer-sections.txt:
1239         * docs/gst/tmpl/gstcpu.sgml:
1240         * docs/gst/tmpl/gstdata.sgml:
1241         * docs/gst/tmpl/gstthread.sgml:
1242
1243 2005-05-19  David Schleef  <ds@schleef.org>
1244
1245         * gst/gstminiobject.c: (gst_value_set_mini_object),
1246         (gst_value_take_mini_object), (gst_value_get_mini_object):
1247         * gst/gstminiobject.h: Add GValue set/get functions.
1248
1249 2005-05-19  Wim Taymans  <wim@fluendo.com>
1250
1251         * gst/gstbuffer.c: (gst_buffer_init), (gst_subbuffer_get_type),
1252         (gst_subbuffer_class_init), (gst_subbuffer_finalize),
1253         (gst_subbuffer_init), (gst_buffer_is_span_fast):
1254         * gst/gstbuffer.h:
1255         * gst/gstbus.c: (gst_bus_post):
1256         * gst/gstelement.c: (gst_element_get_random_pad):
1257         * gst/gstmessage.c: (gst_message_init), (gst_message_finalize):
1258         Make subbufer unref the parent in finalize.
1259         some more debugging info.
1260
1261
1262 2005-05-19  Wim Taymans  <wim@fluendo.com>
1263
1264         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1265         (gst_basesink_init), (gst_basesink_finalize),
1266         (gst_basesink_activate), (gst_basesink_change_state):
1267         Don't free preroll queue too early.
1268
1269 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1270
1271         * gst/Makefile.am:
1272         * gst/ROADMAP:
1273           Hi, I'm outdated. Please shoot me.
1274
1275 2005-05-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1276
1277         * gst/gstpipeline.c: (gst_pipeline_send_event):
1278           Do not access variables after they have been deleted.
1279
1280 2005-05-19  Wim Taymans  <wim@fluendo.com>
1281
1282         * tools/gst-inspect.c: (print_plugin_features):
1283         A plugin feature does unfortunatly not use the
1284         object name yet...
1285
1286 2005-05-18  Wim Taymans  <wim@fluendo.com>
1287
1288         * gst/gstbuffer.c: (gst_buffer_is_span_fast), (gst_buffer_span):
1289         Port _span() functions to new subbuffers.
1290
1291 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1292
1293         * gst/gstbin.c: (gst_bin_add_func):
1294           Fix clock settery in bins when adding kids after the clock has
1295           been selected.
1296
1297 2005-05-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1298
1299         * gst/elements/gstidentity.c: (gst_identity_class_init):
1300           Workaround until signals support GstMiniObject.
1301
1302 2005-05-18  Jan Schmidt  <thaytan@mad.scientist.com>
1303
1304         * gst/gstbuffer.c:
1305         Oops, fix a typo GST_TYPE_BUFFER -> GST_TYPE_SUBBUFFER.
1306
1307 2005-05-18  Wim Taymans  <wim@fluendo.com>
1308
1309         * gst/base/Makefile.am:
1310         * gst/base/gstadapter.c: (gst_adapter_base_init),
1311         (gst_adapter_class_init), (gst_adapter_init),
1312         (gst_adapter_dispose), (gst_adapter_finalize), (gst_adapter_new),
1313         (gst_adapter_clear), (gst_adapter_push), (gst_adapter_peek),
1314         (gst_adapter_flush), (gst_adapter_available),
1315         (gst_adapter_available_fast):
1316         * gst/base/gstadapter.h:
1317         Ported and added adapter to the base classes.
1318
1319 2005-05-17  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1320
1321         * gst/gst.c:
1322         * gst/gstmessage.c:
1323           Make sure the class is reffed/unreffed once before threads can be
1324           used.  Fixes #304551.
1325
1326 2005-05-17  Wim Taymans  <wim@fluendo.com>
1327
1328         * gst/base/gstbasesink.c: (gst_basesink_finish_preroll),
1329         (gst_basesink_chain_unlocked), (gst_basesink_activate):
1330         * gst/gstminiobject.c: (gst_mini_object_get_type),
1331         (gst_mini_object_free):
1332         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query),
1333         (gst_pad_push), (gst_pad_push_event):
1334         * gst/gstqueue.c: (gst_queue_change_state):
1335         Don't queue buffers in basesink when we are flushing.
1336         Unref buffer when flushing in basesink.
1337         Flush queue when going to READY
1338         Unref buffer when _push() returns an error.
1339         Don't free MiniObject instance when refcount is incremented
1340         in _finalize() so that we can recover objects.
1341
1342 2005-05-17  Thomas Vander Stichele  <thomas at apestaart dot org>
1343
1344         * docs/manual/advanced-schedulers.xml:
1345         * docs/manual/appendix-checklist.xml:
1346         * docs/pwg/advanced-clock.xml:
1347         * docs/pwg/advanced-interfaces.xml:
1348         * docs/pwg/advanced-request.xml:
1349         * docs/pwg/advanced-types.xml:
1350         * docs/pwg/intro-preface.xml:
1351         * examples/plugins/example.c: (gst_example_get_type),
1352         (gst_example_class_init), (gst_example_chain),
1353         (gst_example_set_property), (gst_example_get_property),
1354         (gst_example_change_state), (plugin_init):
1355         * examples/plugins/example.h:
1356           small doc fixes
1357
1358 2005-05-17  Wim Taymans  <wim@fluendo.com>
1359
1360         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_set_caps),
1361         (gst_pad_alloc_buffer), (gst_pad_query), (gst_pad_push):
1362         * gst/gstqueue.c: (gst_queue_change_state):
1363         Clear queue when going to READY.
1364         Remove IN_SETCAPS flag too.
1365
1366 2005-05-17  Tim-Philipp Müller  <tim at centricular dot net>
1367
1368         * gst/base/gstbasesrc.c: (gst_basesrc_change_state):
1369           Remove implicit cast from gboolean to GstElementStateReturn;
1370           make sure we still return failure in paused => ready case if
1371           the parent class fails to change state and our own stop 
1372           vfunc succeeds.
1373
1374 2005-05-17  Wim Taymans  <wim@fluendo.com>
1375
1376         * tools/gst-launch.c: (event_loop):
1377         Message was unreffed too soon.
1378
1379 2005-05-16  Andy Wingo  <wingo@pobox.com>
1380
1381         * gst/gstbin.c (sink_iterator_filter): Err... um...
1382
1383         * check/gst/gstbin.c (test_ghost_pads): New test for the
1384         ghosting-if-elements-not-in-same-bin behavior.
1385
1386 2005-05-16  David Schleef  <ds@schleef.org>
1387
1388         * gst/gstminiobject.c: Use g_atomic_int_get() instead of
1389         accessing refcount directly.
1390
1391 2005-05-15  David Schleef  <ds@schleef.org>
1392
1393         * check/Makefile.am: remove GstData checks
1394         * check/gst-libs/gdp.c: (START_TEST): fix for API changes
1395         * gst/Makefile.am: add miniobject, remove data
1396         * gst/gst.h: add miniobject, remove data
1397         * gst/gstdata.c: remove
1398         * gst/gstdata.h: remove
1399         * gst/gstdata_private.h: remove
1400         * gst/gsttypes.h: remove GstEvent and GstMessage
1401         * gst/gstelement.c: (gst_element_post_message): fix for API changes
1402         * gst/gstmarshal.list: change BOXED -> OBJECT
1403
1404         Implement GstMiniObject.
1405         * gst/gstminiobject.c:
1406         * gst/gstminiobject.h:
1407
1408         Modify to be subclasses of GstMiniObject.
1409         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
1410         (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy),
1411         (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc),
1412         (gst_subbuffer_get_type), (gst_subbuffer_init),
1413         (gst_buffer_create_sub), (gst_buffer_is_span_fast),
1414         (gst_buffer_span):
1415         * gst/gstbuffer.h:
1416         * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type),
1417         (gst_event_class_init), (gst_event_init), (gst_event_finalize),
1418         (_gst_event_copy), (gst_event_new):
1419         * gst/gstevent.h:
1420         * gst/gstmessage.c: (_gst_message_initialize),
1421         (gst_message_get_type), (gst_message_class_init),
1422         (gst_message_init), (gst_message_finalize), (_gst_message_copy),
1423         (gst_message_new), (gst_message_new_error),
1424         (gst_message_new_warning), (gst_message_new_tag),
1425         (gst_message_new_state_changed), (gst_message_new_application):
1426         * gst/gstmessage.h:
1427         * gst/gstprobe.c: (gst_probe_perform),
1428         (gst_probe_dispatcher_dispatch):
1429         * gst/gstprobe.h:
1430         * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type),
1431         (gst_query_class_init), (gst_query_finalize), (gst_query_init),
1432         (_gst_query_copy), (gst_query_new):
1433
1434         Update elements for GstData -> GstMiniObject changes
1435         * gst/gstquery.h:
1436         * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush),
1437         (gst_queue_chain), (gst_queue_loop):
1438         * gst/elements/gstbufferstore.c:
1439         (gst_buffer_store_add_buffer_func),
1440         (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer):
1441         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1442         (gst_fakesink_render):
1443         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
1444         * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type),
1445         (gst_mmap_buffer_class_init), (gst_mmap_buffer_init),
1446         (gst_mmap_buffer_finalize), (gst_filesrc_map_region),
1447         (gst_filesrc_create_read):
1448         * gst/elements/gstidentity.c: (gst_identity_class_init):
1449         * gst/elements/gsttypefindelement.c:
1450         (gst_type_find_element_src_event), (free_entry_buffers),
1451         (gst_type_find_element_handle_event):
1452         * libs/gst/dataprotocol/dataprotocol.c:
1453         (gst_dp_header_from_buffer):
1454         * libs/gst/dataprotocol/dataprotocol.h:
1455         * libs/gst/dataprotocol/dp-private.h:
1456
1457 2005-05-15  David Schleef  <ds@schleef.org>
1458
1459         * gst/elements/gstelements.c: Don't include headers that were
1460         just removed.
1461
1462 2005-05-15  David Schleef  <ds@schleef.org>
1463
1464         * gst/elements/Makefile.am: Remove some elements that don't
1465         need to be in the core (or even exist at all).
1466         * gst/elements/gstaggregator.c:
1467         * gst/elements/gstaggregator.h:
1468         * gst/elements/gstmd5sink.c:
1469         * gst/elements/gstmd5sink.h:
1470         * gst/elements/gstmultifilesrc.c:
1471         * gst/elements/gstmultifilesrc.h:
1472         * gst/elements/gstpipefilter.c:
1473         * gst/elements/gstpipefilter.h:
1474         * gst/elements/gstshaper.c:
1475         * gst/elements/gstshaper.h:
1476         * gst/elements/gststatistics.c:
1477         * gst/elements/gststatistics.h:
1478         * po/POTFILES.in: Remove above files.
1479
1480 2005-05-14  Andy Wingo  <wingo@pobox.com>
1481
1482         * gst/gstbin.c (gst_bin_iterate_sinks): Use sink_iterator_filter
1483         so as to get the refs right.
1484         (sink_iterator_filter): New function, wraps bin_element_is_sink,
1485         unreffing objects that don't pass the filter.
1486
1487         * gst/gstpipeline.c (gst_pipeline_init): Drop ref on bus after
1488         gst_element_set_bus.
1489         (gst_pipeline_dispose): Set the bus on the pipeline to NULL. In
1490         normal cases, this will destroy the bus.
1491
1492         * gst/gstutils.c (prepare_link_maybe_ghosting): Drop ref on root
1493         object.
1494
1495         * gst/gstbin.c (gst_bin_change_state): Fix state changes if a bin
1496         has no sinks.
1497
1498 2005-05-13  Andy Wingo  <wingo@pobox.com>
1499
1500         * gst/gstutils.c (gst_element_link_pads): Instead of calling
1501         gst_pad_link, call pad_link_maybe_ghosting,
1502         (pad_link_maybe_ghosting): Links pads, making sure that the
1503         elements being linked are in the same bin.
1504         (find_common_root, object_has_ancestor, ghost_up, remove_pad):
1505         Helpers for pad_link_maybe_ghosting.
1506
1507 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1508
1509         * configure.ac:
1510           Require GLib >= 2.4.0 (for the g_atomic_* funcs)
1511
1512 2005-05-13  Tim-Philipp Müller  <tim at centricular dot net>
1513
1514         * docs/design/part-element-source.txt:
1515           Mention GstPushSrc
1516
1517 2005-05-12  Wim Taymans  <wim@fluendo.com>
1518
1519         * gst/base/gstbasesink.c: (gst_basesink_init),
1520         (gst_basesink_activate):
1521         * gst/base/gstbasesrc.c: (gst_basesrc_unlock),
1522         (gst_basesrc_is_seekable):
1523         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
1524         (bin_element_is_sink), (gst_bin_change_state):
1525         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1526         * gst/gstelement.h:
1527         Identify sinks by their flag to avoid overly complicated
1528         checks (fow now).
1529         Do state changes even for elements not reachable from the
1530         sinks.
1531         BaseSink is a sink now :)
1532         Some more debugging info in the basesrc.
1533
1534
1535 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1536
1537         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_query):
1538           Implement _query on a bin, similar to _send_event.
1539
1540 2005-05-12  Tim-Philipp Müller  <tim at centricular dot net>
1541
1542         * gst/base/gstbasesrc.c: (gst_basesrc_do_seek):
1543           Discont event offset format should be GST_FORMAT_BYTES,
1544           not GST_FORMAT_TIME.
1545
1546 2005-05-12  Wim Taymans  <wim@fluendo.com>
1547
1548         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_get_state):
1549         Same fix as Ronald's but without the signal. 
1550
1551 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1552
1553         * gst/gstutils.c: (gst_element_query_position):
1554           No, an element is not a pad.
1555
1556 2005-05-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1557
1558         * gst/gstbin.c: (gst_bin_add_func), (cb_parent_unset),
1559         (gst_bin_get_state):
1560           If a child is removed from a bin while we remove the child from
1561           the bin and while we're retrieving its state, signal this to the
1562           get_state function so we abort the wait (instead of waiting for
1563           a timeout) and can immediately re-iterate over all other elements.
1564
1565 2005-05-12  Wim Taymans  <wim@fluendo.com>
1566
1567         * gst/base/Makefile.am:
1568         * gst/base/gstbasesrc.c: (gst_basesrc_is_seekable),
1569         (gst_basesrc_start):
1570         * gst/base/gstbasesrc.h:
1571         * gst/base/gstpushsrc.c: (gst_pushsrc_get_type),
1572         (gst_pushsrc_base_init), (gst_pushsrc_class_init),
1573         (gst_pushsrc_init), (gst_pushsrc_create):
1574         * gst/base/gstpushsrc.h:
1575         Added is_seekable to BaseSrc
1576         Added simple PushSrc.
1577
1578 2005-05-11  Wim Taymans  <wim@fluendo.com>
1579
1580         * gst/gstelement.c: (gst_element_add_pad), (gst_element_query):
1581         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1582         (gst_element_link_pads), (gst_element_query_position),
1583         (gst_element_query_convert), (intersect_caps_func),
1584         (gst_pad_query_position), (gst_pad_query_convert):
1585         Fix refcounting in utils function.
1586         No point in trying to activate a pad when it's added, it could
1587         be added from the state change function and then we deadlock, the
1588         element has to decide what to do.
1589
1590 2005-05-10  Andy Wingo  <wingo@pobox.com>
1591
1592         * gst/elements/gstfakesink.c (gst_fakesink_render): Er, emit with
1593         *all* the arguments.
1594
1595         * gst/base/gstbasetransform.c (gst_base_transform_event): Grab the
1596         stream lock if it's a FLUSH_DONE; normal flushes don't get the
1597         lock (according to the docs -- if this is wrong change the docs).
1598
1599         * gst/gstpipeline.c (gst_pipeline_change_state): Set the bus to
1600         flush messages in the NULL state.
1601
1602         * gst/gstbus.c (gst_bus_post): If a bus is flushing, unref the
1603         message immediately and return.
1604         (gst_bus_set_flushing): New function. If a bus is flushing, it
1605         flushes out any queued messages and immediately unrefs new
1606         messages. This is so when an element goes to NULL, all of the
1607         unhandled messages coming from it can be freed, and their
1608         references to the element dropped. In other words: message source
1609         ref considered harmful :P
1610
1611         * gst/gstbin.c (gst_bin_change_state): Unref peer element when
1612         we're finished with it.
1613
1614         * gst/gstmessage.c (gst_message_new_state_changed): 
1615
1616 2005-05-10  Wim Taymans  <wim@fluendo.com>
1617
1618         * gst/gstvalue.c: (gst_value_compare_flags),
1619         (gst_value_serialize_flags), (gst_value_deserialize_flags),
1620         (_gst_value_initialize):
1621         Added flags serialize/deserialize/compare code.
1622
1623 2005-05-09  Andy Wingo  <wingo@pobox.com>
1624
1625         * gst/base/gstbasetransform.c (gst_base_transform_proxy_getcaps):
1626         Intersect the peer's caps with our caps.
1627
1628 2005-05-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
1629
1630         * gst/base/gsttypefindhelper.c: (helper_find_peek):
1631         * gst/elements/gsttypefindelement.c: (find_peek):
1632           Handle negative offsets better. Fixes decodebin.
1633
1634 2005-05-09  Wim Taymans  <wim@fluendo.com>
1635
1636         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps),
1637         (gst_base_transform_event):
1638         * gst/gstpad.c: (gst_pad_accept_caps), (gst_pad_query):
1639         Implement accept_caps.
1640         Fix silly lock/unlock mismatch in base class.
1641
1642 2005-05-09  Wim Taymans  <wim@fluendo.com>
1643
1644         * docs/design/draft-push-pull.txt:
1645         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_query):
1646         * gst/elements/gstfilesink.c: (gst_filesink_init),
1647         (gst_filesink_query):
1648         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
1649         (gst_type_find_handle_src_query), (find_element_get_length):
1650         * gst/gstelement.c: (gst_element_seek), (gst_element_query):
1651         * gst/gstelement.h:
1652         * gst/gstmessage.c:
1653         * gst/gstmessage.h:
1654         * gst/gstpad.c: (gst_real_pad_init), (gst_pad_get_query_types),
1655         (gst_real_pad_get_caps_unlocked),
1656         (gst_pad_get_internal_links_default), (gst_pad_get_internal_links),
1657         (gst_pad_event_default_dispatch), (gst_pad_event_default),
1658         (gst_pad_dispatcher), (gst_pad_query), (gst_pad_query_default),
1659         (gst_real_pad_dispose), (gst_real_pad_finalize),
1660         (gst_pad_load_and_link), (gst_pad_save_thyself),
1661         (gst_ghost_pad_save_thyself), (handle_pad_block), (gst_pad_push),
1662         (gst_pad_check_pull_range), (gst_pad_pull_range),
1663         (gst_pad_template_get_type), (gst_pad_template_class_init),
1664         (gst_pad_template_init), (gst_pad_template_dispose),
1665         (name_is_valid), (gst_static_pad_template_get),
1666         (gst_pad_template_new), (gst_static_pad_template_get_caps),
1667         (gst_pad_template_get_caps), (gst_pad_set_element_private),
1668         (gst_pad_get_element_private), (gst_pad_start_task),
1669         (gst_pad_pause_task), (gst_pad_stop_task),
1670         (gst_ghost_pad_get_type), (gst_ghost_pad_class_init),
1671         (gst_ghost_pad_init), (gst_ghost_pad_dispose),
1672         (gst_ghost_pad_set_property), (gst_ghost_pad_get_property),
1673         (gst_ghost_pad_new):
1674         * gst/gstpad.h:
1675         * gst/gstquery.c: (_gst_query_initialize), (gst_query_new),
1676         (gst_query_new_position), (gst_query_set_position),
1677         (gst_query_parse_position), (gst_query_new_convert),
1678         (gst_query_set_convert), (gst_query_parse_convert):
1679         * gst/gstquery.h:
1680         * gst/gstqueryutils.c:
1681         * gst/gstqueryutils.h:
1682         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1683         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1684         (gst_queue_handle_src_query):
1685         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1686         (gst_element_query_position), (gst_element_query_convert),
1687         (intersect_caps_func), (gst_pad_query_position),
1688         (gst_pad_query_convert):
1689         * gst/gstutils.h:
1690         * tools/gst-inspect.c: (print_pad_info):
1691         * tools/gst-xmlinspect.c: (print_element_info):
1692         Remove old query functions. Ported old code.
1693         Added position/convert helper functions to gstutils.
1694         Reordered gstpad.c code, grouping relevant things.
1695         Remove gst_message_new(), always need to speficy a specific
1696         message.
1697
1698
1699 2005-05-09  Andy Wingo  <wingo@pobox.com>
1700
1701         * gst/gstiterator.h: Add some includes.
1702
1703         * gst/gstqueryutils.h: Include more headers.
1704
1705         * gst/gstpad.h:
1706         * gst/gstpad.c (gst_pad_query_position): New routine, replaces
1707         some uses of gst_pad_query.
1708
1709         * gst/gstqueryutils.c: Build fixes. Make parse functions ignore
1710         NULL out parameters.
1711         (gst_query_new_position): New proc, allocates a new position
1712         query.
1713
1714         * gst/Makefile.am (libgstreamer_@GST_MAJORMINOR@_la_SOURCES): Add
1715         gstqueryutils.c to the build.
1716
1717         * gst/gststructure.c (gst_structure_set_valist): Implement with
1718         the generic G_VALUE_COLLECT.
1719         
1720 2005-05-08  Edward Hervey  <bilboed@bilboed.com>
1721
1722         * gst/Makefile.am: (gst_headers):
1723         Added gstqueryutils.h to the list of headers to install, that was
1724         a 'nachty' move wingo :)
1725
1726 2005-05-06  Andy Wingo  <wingo@pobox.com>
1727
1728         * gst/gstquery.h
1729         * gst/gstquery.c (_gst_query_initialize): Extend GstQuery from
1730         GstData, init a memchunk.
1731         (standard_definitions): Add a few query types, deprecate a few.
1732         (gst_query_get_type): New proc.
1733         (_gst_query_copy, _gst_query_free, gst_query_new): GstData
1734         implementation.
1735         (gst_query_new_application, gst_query_get_structure): New public
1736         procs.
1737
1738         * docs/design/draft-query.txt: Removed LINKS from the query types,
1739         because all the rest can be dispatched to other pads -- seemed
1740         ugly to have a query that couldn't be dispatched. internal_links
1741         is fine as a pad method.
1742
1743         * gst/gstpad.h: Add query2 as a pad method, add the new functions
1744         in gstpad.c, but maintain binary compatibility for the moment.
1745         Will fix before 0.9 is out.
1746
1747         * gst/gstqueryutils.c: 
1748         * gst/gstqueryutils.h: New files, implement 3 methods for each
1749         query type: parse_query, parse_response, and set. Probably need an
1750         allocator as well.
1751
1752         * gst/gst.h: Add gstquery.h and gstqueryutils.h to the list.
1753
1754         * gst/elements/gstfilesink.c (gst_filesink_query2):
1755         * gst/base/gstbasesrc.c (gst_basesrc_query2): Replace old query,
1756         query_types, and formats methods.
1757
1758         * gst/gstpad.c (gst_pad_query2, gst_pad_query2_default)
1759         (gst_pad_set_query2_function): New functions.
1760         (gst_real_pad_init): Set query2_default as the default query2
1761         function. Basically just dispatches to internally linked pads.
1762
1763         Needs review!
1764         
1765         * gst/gstdata_private.h (_GST_DATA_INIT): Set data->refcount to 1
1766         without using the atomic operations. Only one thread can possibly
1767         be accessing the data at this point. Changed so as to avoid
1768         gst_atomic operations.
1769
1770 2005-05-06  Wim Taymans  <wim@fluendo.com>
1771
1772         * gst/gstpad.c: (gst_pad_alloc_buffer), (gst_pad_push):
1773         Also set caps if we use the fallback buffer alloc.
1774
1775 2005-05-06  Tim-Philipp Müller  <tim at centricular dot net>
1776
1777         * docs/gst/Makefile.am:
1778         * docs/gst/gstreamer-docs.sgml:
1779         * docs/gst/gstreamer-sections.txt:
1780         * docs/gst/tmpl/gstatomic.sgml:
1781         * docs/gst/tmpl/gstmemchunk.sgml:
1782         * testsuite/elements/struct_i386.h:
1783         * win32/GStreamer.vcproj:
1784         * win32/Makefile:
1785           Purge GstAtomic stuff from docs and win32 makefiles as well
1786
1787 2005-05-06  Wim Taymans  <wim@fluendo.com>
1788
1789         * gst/base/gstbasetransform.c: (gst_base_transform_proxy_getcaps):
1790         * gst/elements/gstcapsfilter.c: (gst_capsfilter_getcaps):
1791         * gst/gstpad.c: (gst_pad_peer_get_caps):
1792         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
1793         (gst_queue_bufferalloc), (gst_queue_handle_sink_event),
1794         (gst_queue_src_activate), (gst_queue_change_state):
1795         * gst/gstqueue.h:
1796         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1797         (intersect_caps_func):
1798         Fix gst_pad_peer_get_caps(), make it return NULL if no peer.
1799         Always take QUEUE_LOCK after STREAM_LOCK or we might deadlock.
1800         Some fixes for the peer_get_caps() change.
1801
1802 2005-05-06  Wim Taymans  <wim@fluendo.com>
1803
1804         * gst/base/gstbasesink.c: (gst_basesink_preroll_queue_empty),
1805         (gst_basesink_handle_buffer), (gst_basesink_chain_unlocked),
1806         (gst_basesink_activate):
1807         Actually do something with error codes returned from the push
1808         functions.
1809
1810 2005-05-06  Wim Taymans  <wim@fluendo.com>
1811
1812         * docs/design/part-element-sink.txt:
1813         * docs/design/part-element-source.txt:
1814         * gst/base/gstbasesink.c: (gst_basesink_class_init),
1815         (gst_basesink_event), (gst_basesink_activate):
1816         * gst/base/gstbasesink.h:
1817         * gst/base/gstbasesrc.c: (gst_basesrc_init), (gst_basesrc_unlock),
1818         (gst_basesrc_activate):
1819         * gst/base/gstbasesrc.h:
1820         * gst/gstelement.c: (gst_element_pads_activate):
1821         Some more documentation.
1822         Fixed scheduling decision in _pads_activate().
1823
1824 2005-05-05  Andy Wingo  <wingo@pobox.com>
1825
1826         * check/pipelines/simple_launch_lines.c (test_2_elements): "Fix"
1827         the test suite.
1828
1829 2005-05-05  Wim Taymans  <wim@fluendo.com>
1830
1831         * gst/base/Makefile.am:
1832         * gst/base/gstbasesink.h:
1833         * gst/base/gstbasesrc.c: (gst_basesrc_init),
1834         (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query):
1835         * gst/base/gstcollectpads.c: (gst_collectpads_get_type),
1836         (gst_collectpads_class_init), (gst_collectpads_init),
1837         (gst_collectpads_finalize), (gst_collectpads_new),
1838         (gst_collectpads_set_function), (gst_collectpads_add_pad),
1839         (find_pad), (gst_collectpads_remove_pad),
1840         (gst_collectpads_is_active), (gst_collectpads_collect),
1841         (gst_collectpads_collect_range), (gst_collectpads_start),
1842         (gst_collectpads_stop), (gst_collectpads_peek),
1843         (gst_collectpads_pop), (gst_collectpads_available),
1844         (gst_collectpads_read), (gst_collectpads_flush),
1845         (gst_collectpads_chain):
1846         * gst/base/gstcollectpads.h:
1847         * gst/elements/Makefile.am:
1848         * gst/elements/gstelements.c:
1849         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
1850         (gst_fakesink_get_times), (gst_fakesink_event),
1851         (gst_fakesink_preroll), (gst_fakesink_render):
1852         * gst/elements/gstfilesink.c: (gst_filesink_class_init),
1853         (gst_filesink_init), (gst_filesink_set_location),
1854         (gst_filesink_open_file), (gst_filesink_close_file),
1855         (gst_filesink_pad_query), (gst_filesink_event),
1856         (gst_filesink_render), (gst_filesink_change_state):
1857         * gst/elements/gstfilesink.h:
1858         Added object to help in making collect pad based elements.
1859         Ported filesink.
1860         Make event function in sink baseclass return gboolean.
1861
1862 2005-05-05  Wim Taymans  <wim@fluendo.com>
1863
1864         * gst/gstbin.c: (gst_bin_send_event), (compare_name),
1865         (gst_bin_get_by_name):
1866         * gst/gstbuffer.h:
1867         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_class_init),
1868         (gst_clock_finalize):
1869         * gst/gstdata.c: (gst_data_replace):
1870         * gst/gstdata.h:
1871         * gst/gstelement.c: (gst_element_request_pad),
1872         (gst_element_pads_activate):
1873         * gst/gstobject.c: (gst_object_init), (gst_object_ref),
1874         (gst_object_unref):
1875         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
1876         (gst_pad_set_checkgetrange_function),
1877         (gst_pad_link_check_compatible_unlocked), (gst_pad_set_caps),
1878         (gst_pad_check_pull_range), (gst_pad_pull_range),
1879         (gst_static_pad_template_get_caps), (gst_pad_start_task),
1880         (gst_pad_pause_task), (gst_pad_stop_task):
1881         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
1882         (gst_element_request_pad), (gst_pad_proxy_getcaps):
1883         Fix name lookup in GstBin.
1884         Added _data_replace() function and _buffer_replace()
1885         Use finalize method to clean up clock.
1886         Fix refcounting on request pads.
1887         Fix pad schedule mode error.
1888         Some more object refcounting debug info,
1889
1890
1891 2005-05-04  Andy Wingo <wingo@pobox.com>
1892
1893         * check/Makefile.am:
1894         * docs/gst/tmpl/gstatomic.sgml:
1895         * docs/gst/tmpl/gstplugin.sgml:
1896         * gst/base/gstbasesink.c: (gst_basesink_activate):
1897         * gst/base/gstbasesrc.c: (gst_basesrc_class_init),
1898         (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs),
1899         (gst_basesrc_query), (gst_basesrc_set_property),
1900         (gst_basesrc_get_property), (gst_basesrc_check_get_range),
1901         (gst_basesrc_activate):
1902         * gst/base/gstbasesrc.h:
1903         * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate),
1904         (gst_base_transform_src_activate):
1905         * gst/elements/gstelements.c:
1906         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
1907         (gst_fakesrc_set_property), (gst_fakesrc_get_property):
1908         * gst/elements/gsttee.c: (gst_tee_sink_activate):
1909         * gst/elements/gsttypefindelement.c: (find_element_get_length),
1910         (gst_type_find_element_checkgetrange),
1911         (gst_type_find_element_activate):
1912         * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself):
1913         * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself),
1914         (gst_caps_load_thyself):
1915         * gst/gstelement.c: (gst_element_pads_activate),
1916         (gst_element_save_thyself), (gst_element_restore_thyself):
1917         * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself),
1918         (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range):
1919         * gst/gstpad.h:
1920         * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc),
1921         (gst_xml_parse_file), (gst_xml_parse_memory),
1922         (gst_xml_get_element), (gst_xml_make_element):
1923         * gst/indexers/gstfileindex.c: (gst_file_index_load),
1924         (_file_index_id_save_xml), (gst_file_index_commit):
1925         * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint),
1926         (read_enum), (load_pad_template), (load_feature), (load_plugin),
1927         (load_paths):
1928         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps),
1929         (gst_dp_packet_from_event), (gst_dp_caps_from_packet):
1930         * tools/gst-complete.c: (main):
1931         * tools/gst-compprep.c: (main):
1932         * tools/gst-inspect.c: (print_element_properties_info):
1933         * tools/gst-launch.c: (xmllaunch_parse_cmdline):
1934         * tools/gst-xmlinspect.c: (print_element_properties):
1935         GCC 4 fixen.
1936         
1937 2005-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
1938
1939         * gst/gstplugin.c: (gst_plugin_check_module),
1940         (gst_plugin_check_file), (gst_plugin_load_file):
1941             apply patch from #172526 to make register work on MacOSX
1942
1943 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1944
1945         * docs/gst/tmpl/gstconfig.sgml:
1946         * gst/gstconfig.h.in:
1947           move documentation for some symbols.  Add doc for GST_PTR_FORMAT
1948         * testsuite/debug/printf_extension.c: (main):
1949           Do not use GST_PTR_FORMAT on pointers to types with
1950           sizeof < sizeof(gpointer).  Fixes test on 64-bit
1951         * testsuite/elements/property.h:
1952           use correct printf format
1953
1954 2005-05-02  Wim Taymans  <wim@fluendo.com>
1955
1956         * docs/design/draft-push-pull.txt:
1957         * docs/design/draft-query.txt:
1958         * gst/base/gstbasesrc.c: (gst_basesrc_get_range_unlocked),
1959         (gst_basesrc_start):
1960         Added draft for new query API.
1961         Added draft for better selecting scheduling methods.
1962         Make basesrc ignore length if the subclass does not support
1963         it.
1964
1965 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1966
1967         * gst/Makefile.am:
1968           possible fixes for automake-1.5 - _LIBADD is reserved
1969
1970 2005-05-02  Thomas Vander Stichele  <thomas at apestaart dot org>
1971
1972         * docs/faq/Makefile.am:
1973         * docs/manual/Makefile.am:
1974         * docs/manuals.mak:
1975         * docs/pwg/Makefile.am:
1976         * gst/Makefile.am:
1977           possible fixes for automake-1.5
1978
1979 2005-04-28  Wim Taymans  <wim@fluendo.com>
1980
1981         * gst/base/gstbasesink.c: (gst_basesink_base_init),
1982         (gst_basesink_pad_getcaps), (gst_basesink_init),
1983         (gst_basesink_do_sync):
1984         * gst/gstclock.c: (gst_clock_entry_new):
1985         * gst/gstevent.c: (gst_event_discont_get_value):
1986         * gst/gstpipeline.c: (pipeline_bus_handler),
1987         (gst_pipeline_change_state):
1988         * gst/gstsystemclock.c: (gst_system_clock_id_wait_unlocked):
1989         Better debugging of clocking info.
1990         Allow NULL values when getting discont values.
1991
1992 2005-04-27  Wim Taymans  <wim@fluendo.com>
1993
1994         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
1995         * check/gst/gstpad.c: (gst_pad_suite):
1996         Increase timeout for checks.
1997
1998 2005-04-27  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
1999
2000         * check/Makefile.am:
2001           fix the broken rule for cleanup.  Apparently this rule is
2002           only needed on FC2, so maybe this warrants further autotool
2003           inspection.
2004
2005 2005-04-26  Wim Taymans  <wim@fluendo.com>
2006
2007         * gst/gsttrashstack.h:
2008         Ooohh. a nasty one! After having a failed pop() from the stack,
2009         it's possible that the stack is empty. In that case, don't
2010         follow the NULL pointer.
2011
2012 2005-04-25  Wim Taymans  <wim@fluendo.com>
2013
2014         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2015         (gst_pad_set_checkgetrange_function),
2016         (gst_pad_link_check_compatible_unlocked), (gst_pad_link_prepare),
2017         (gst_pad_check_pull_range), (gst_pad_pull_range),
2018         (gst_static_pad_template_get_caps), (gst_pad_start_task),
2019         (gst_pad_pause_task), (gst_pad_stop_task):
2020         * gst/gstplugin.c: (gst_plugin_load):
2021         * gst/gstplugin.h:
2022         Remove gst_library_load as it does more harm than good with
2023         the new g_module flags.
2024         Revert bogus caps template check in pad linking, pad caps
2025         are important when linking not the template, which is more
2026         general than the current caps.
2027
2028 2005-04-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2029
2030         * gst/autoplug/.cvsignore:
2031         * gst/autoplug/Makefile.am:
2032         * gst/autoplug/gstsearchfuncs.c:
2033         * gst/autoplug/gstsearchfuncs.h:
2034         * gst/autoplug/gstspider.c:
2035         * gst/autoplug/gstspider.h:
2036         * gst/autoplug/gstspideridentity.c:
2037         * gst/autoplug/gstspideridentity.h:
2038         * gst/autoplug/spidertest.c:
2039           Die, spider, die.
2040
2041 2005-04-25  Wim Taymans  <wim@fluendo.com>
2042
2043         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2044         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2045         (gst_pad_pull_range), (gst_static_pad_template_get_caps),
2046         (gst_pad_start_task), (gst_pad_pause_task), (gst_pad_stop_task):
2047         * gst/gstpad.h:
2048         Added stubs for unimplemented functions. 
2049
2050 2005-04-24  David Schleef  <ds@schleef.org>
2051
2052         * gst/gstpad.h: Disable some unimplemented functions.  Wim,
2053         please fix.
2054
2055 2005-04-24  David Schleef  <ds@schleef.org>
2056
2057         Convert everything from GstAtomicInt to g_atomic_int_*, and
2058         remove gstatomic.
2059         * gst/Makefile.am:
2060         * gst/gstatomic.c:
2061         * gst/gstatomic.h:
2062         * gst/gstatomic_impl.h:
2063         * gst/gstbuffer.c:
2064         * gst/gstcaps.c:
2065         * gst/gstcaps.h:
2066         * gst/gstclock.c:
2067         * gst/gstclock.h:
2068         * gst/gstdata.c:
2069         * gst/gstdata.h:
2070         * gst/gstdata_private.h:
2071         * gst/gstevent.c:
2072         * gst/gstinfo.c:
2073         * gst/gstinfo.h:
2074         * gst/gstmessage.c:
2075         * gst/gstobject.c:
2076         * gst/gstobject.h:
2077         * gst/gststructure.c:
2078         * gst/gststructure.h:
2079         * gst/gstutils.c: Add gst_atomic_int_set() compaitibility function.
2080         * gst/gstutils.h:
2081
2082 2005-04-24  David Schleef  <ds@schleef.org>
2083
2084         * check/gst/gstpad.c: (START_TEST): Oh yeah, it's always nice to
2085         make the regressions tests work.  Remove some code that is no
2086         longer true.
2087         * gst/gstpad.c: (gst_pad_link_check_templates_compatible_unlocked):
2088         Disable warning for pads without templates.
2089
2090 2005-04-24  David Schleef  <ds@schleef.org>
2091
2092         * gst/gstpad.c: Remove handling of filtered caps.  Fix/merge
2093         functions that handle filtered links.
2094         * gst/gstpad.h: Remove 'appfilter' field and prototypes of
2095         removed functions.
2096         * gst/gstutils.c: Fix/remove utility functions that handle
2097         filtered caps.
2098         * gst/gstutils.h:
2099         * gst/gstvalue.c: Add serialization/deserialization of caps
2100         * gst/parse/grammar.y: Ignore filtered caps when linking.  This
2101         requires fixing so that the filter caps notation creates
2102         a capsfilter element and sets the filter_caps property.  I
2103         think everyone probably wants to keep the shorthand notation.
2104         * docs/gst/tmpl/gstelement.sgml: updates for API changes.
2105         * docs/gst/tmpl/gstpad.sgml:
2106
2107         * gst/elements/gstelements.c: Register capsfilter element.
2108         * gst/Makefile.am: fix spacing
2109         * docs/random/ds/0.9-suggested-changes: random
2110
2111 2005-04-23  David Schleef  <ds@schleef.org>
2112
2113         * gst/elements/Makefile.am:
2114         * gst/elements/gstcapsfilter.c: New element that acts like an
2115         identity, but filters caps.  Will eventually replace filtered
2116         caps in pad linking.
2117         * gst/gstutils.c: (gst_element_create_all_pads): New function
2118         to create all the ALWAYS pads that are registered with an
2119         element class.  This functionality should eventually be
2120         merged in with GstElement initialization.
2121         * gst/gstutils.h:
2122         * testsuite/trigger/README: part of trigger test code that should
2123         have been checked in a long time ago.
2124
2125 2005-04-23  David Schleef  <ds@schleef.org>
2126
2127         * gst/Makefile.am: Remove as-libtool stuff.  It's likely not
2128         needed with new versions of libtool (nobody will confirm this),
2129         and hard to carry around.
2130         * gst/autoplug/Makefile.am:
2131         * gst/base/Makefile.am:
2132         * gst/elements/Makefile.am:
2133         * gst/indexers/Makefile.am:
2134         * gst/schedulers/Makefile.am:
2135         * libs/gst/bytestream/Makefile.am:
2136         * libs/gst/control/Makefile.am:
2137         * libs/gst/dataprotocol/Makefile.am:
2138         * libs/gst/getbits/Makefile.am:
2139
2140 2005-04-21  Wim Taymans  <wim@fluendo.com>
2141
2142         * docs/design/draft-push-pull.txt:
2143         * docs/design/part-MT-refcounting.txt:
2144         * docs/design/part-TODO.txt:
2145         * docs/design/part-caps.txt:
2146         * docs/design/part-events.txt:
2147         * docs/design/part-gstbus.txt:
2148         * docs/design/part-gstpipeline.txt:
2149         * docs/design/part-messages.txt:
2150         * docs/design/part-push-pull.txt:
2151         * docs/design/part-query.txt:
2152         Some more docs.
2153
2154 2005-04-21  Wim Taymans  <wim@fluendo.com>
2155
2156         * gst/gstmessage.c: (_gst_message_copy), (_gst_message_free),
2157         (gst_message_new), (gst_message_new_error),
2158         (gst_message_new_warning), (gst_message_new_tag),
2159         (gst_message_new_state_changed), (gst_message_new_application),
2160         (gst_message_get_structure):
2161         * gst/gstmessage.h:
2162         * gst/gststructure.c: (gst_structure_set_parent_refcount),
2163         (gst_structure_copy_conditional):
2164         Use parent refcount in GstMessage to ensure GstStructure
2165         consistency.
2166         Cleaned up headers a bit.
2167         
2168
2169 2005-04-20  Wim Taymans  <wim@fluendo.com>
2170
2171         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2172         (gst_basesink_pad_getcaps), (gst_basesink_init),
2173         (gst_basesink_chain_unlocked):
2174         * gst/base/gsttypefindhelper.c: (helper_find_suggest),
2175         (gst_type_find_helper):
2176         * gst/elements/gsttypefindelement.c:
2177         (gst_type_find_element_have_type), (gst_type_find_element_init),
2178         (stop_typefinding), (gst_type_find_element_handle_event),
2179         (find_suggest), (gst_type_find_element_chain),
2180         (gst_type_find_element_checkgetrange),
2181         (gst_type_find_element_getrange), (do_typefind),
2182         (gst_type_find_element_activate):
2183         * gst/gstbuffer.c: (_gst_buffer_sub_free),
2184         (gst_buffer_default_free), (gst_buffer_default_copy),
2185         (gst_buffer_set_caps):
2186         * gst/gstcaps.c: (gst_caps_ref), (gst_caps_unref),
2187         (gst_caps_replace):
2188         * gst/gstmessage.c: (gst_message_new),
2189         (gst_message_new_state_changed):
2190         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2191         (gst_pad_set_checkgetrange_function),
2192         (gst_pad_link_prepare_filtered), (gst_pad_relink_filtered),
2193         (gst_pad_set_caps), (gst_pad_check_pull_range),
2194         (gst_pad_pull_range), (gst_static_pad_template_get_caps):
2195         * gst/gstpad.h:
2196         * gst/gsttypefind.c: (gst_type_find_register):
2197         Make gst_caps_replace() work like other _replace() functions.
2198         Use _caps_replace() where possible.
2199         Make sure _message_new() initialises its field.
2200         Add gst_static_pad_template_get_caps()
2201
2202
2203 2005-04-18  Andy Wingo  <wingo@pobox.com>
2204
2205         * gst/gstelement.c (gst_element_pads_activate): Check pull_range
2206         on the peer, not the pad. I think that was a typo. Pass an extra
2207         arg to see if random access is possible. Activate the pads as
2208         PULL_RANGE if possible.
2209
2210         * gst/elements/gstfakesrc.c: s/ARG_/PROP_/.
2211
2212         * gst/base/gstbasesrc.c (gst_basesrc_set_property) 
2213         (gst_basesrc_get_property): BLOCKSIZE is a ULONG. Rename ARG_...
2214         to PROP_....
2215
2216 2005-04-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2217
2218         * docs/faq/using.xml:
2219           Add note on gstreamer-properties (#154996).
2220
2221 2005-04-13  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2222
2223         * docs/random/bbb/optional-properties:
2224           Some analysis on optional properties.
2225
2226 2005-04-12  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2227
2228         * docs/gst/tmpl/gstelementfactory.sgml:
2229         * gst/gstelement.h:
2230         * gst/gstelementfactory.c: (gst_element_factory_init),
2231         (gst_element_factory_cleanup), (gst_element_register),
2232         (__gst_element_factory_add_static_pad_template),
2233         (gst_element_factory_get_static_pad_templates),
2234         (gst_element_factory_can_src_caps),
2235         (gst_element_factory_can_sink_caps):
2236         * gst/registries/Makefile.am:
2237         * gst/registries/gstlibxmlregistry.c: (gst_xml_registry_get_type),
2238         (gst_xml_registry_class_init), (gst_xml_registry_init),
2239         (gst_xml_registry_new), (gst_xml_registry_set_property),
2240         (gst_xml_registry_get_property), (get_time), (make_dir),
2241         (gst_xml_registry_get_perms_func),
2242         (plugin_times_older_than_recurse), (plugin_times_older_than),
2243         (gst_xml_registry_open_func), (gst_xml_registry_load_func),
2244         (gst_xml_registry_save_func), (gst_xml_registry_close_func),
2245         (add_to_char_array), (read_string), (read_uint), (read_enum),
2246         (load_pad_template), (load_feature), (load_plugin), (load_paths),
2247         (gst_xml_registry_load), (gst_xml_registry_load_plugin),
2248         (gst_xml_registry_save_caps), (gst_xml_registry_save_pad_template),
2249         (gst_xml_registry_save_feature), (gst_xml_registry_save_plugin),
2250         (gst_xml_registry_save), (gst_xml_registry_rebuild_recurse),
2251         (gst_xml_registry_rebuild):
2252         * gst/registries/gstlibxmlregistry.h:
2253         * tools/gst-compprep.c: (main):
2254         * tools/gst-inspect.c: (print_pad_templates_info):
2255         * tools/gst-xmlinspect.c: (print_element_info):
2256           Use libxml2 for registry parsing, use staticpadtemplates in
2257           elementfactories. Makes gst_init() +/- 10x faster.
2258
2259 2005-04-12  Wim Taymans  <wim@fluendo.com>
2260
2261         * gst/base/Makefile.am:
2262         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2263         (gst_basesink_pad_getcaps), (gst_basesink_init),
2264         (gst_basesink_event), (gst_basesink_change_state):
2265         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2266         (gst_basesrc_init), (gst_basesrc_query),
2267         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2268         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2269         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2270         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2271         (gst_basesrc_stop), (gst_basesrc_activate),
2272         (gst_basesrc_change_state):
2273         * gst/base/gsttypefindhelper.c: (helper_find_peek),
2274         (helper_find_suggest), (gst_type_find_helper):
2275         * gst/base/gsttypefindhelper.h:
2276         * gst/elements/Makefile.am:
2277         * gst/elements/gstelements.c:
2278         * gst/elements/gstfakesink.c: (gst_fakesink_class_init),
2279         (gst_fakesink_get_times), (gst_fakesink_event),
2280         (gst_fakesink_preroll), (gst_fakesink_render):
2281         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2282         (gst_fakesrc_init), (gst_fakesrc_event_handler),
2283         (gst_fakesrc_get_property), (gst_fakesrc_create),
2284         (gst_fakesrc_start), (gst_fakesrc_stop):
2285         * gst/elements/gstfakesrc.h:
2286         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init),
2287         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2288         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2289         (gst_filesrc_create_read), (gst_filesrc_create),
2290         (gst_filesrc_is_seekable), (gst_filesrc_get_size),
2291         (gst_filesrc_start):
2292         * gst/elements/gsttypefindelement.c:
2293         (gst_type_find_element_have_type), (gst_type_find_element_init),
2294         (start_typefinding), (stop_typefinding), (push_buffer_store),
2295         (gst_type_find_element_handle_event),
2296         (gst_type_find_element_chain),
2297         (gst_type_find_element_checkgetrange),
2298         (gst_type_find_element_getrange), (do_typefind),
2299         (gst_type_find_element_activate),
2300         (gst_type_find_element_change_state):
2301         * gst/elements/gsttypefindelement.h:
2302         * gst/gstpipeline.c: (pipeline_bus_handler):
2303         Added typefind helper.
2304         Small preroll fix in the base sink.
2305         Disable typefind code in basesrc.
2306         Crude port of typefindelement.
2307         Fakesrc cleanups.
2308
2309
2310 2005-04-11  Wim Taymans  <wim@fluendo.com>
2311
2312         * check/gst/gstbus.c: (gstbus_suite):
2313         * check/gst/gstdata.c: (thread_ref), (gst_data_suite):
2314         * check/gstcheck.h:
2315           Fix up the timeout so that the test does not fail.
2316
2317 2005-04-06  Wim Taymans  <wim@fluendo.com>
2318
2319         * gst/base/README:
2320         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2321         (gst_basesrc_init), (gst_basesrc_get_formats), (gst_basesrc_query),
2322         (gst_basesrc_get_event_mask), (gst_basesrc_do_seek),
2323         (gst_basesrc_event_handler), (gst_basesrc_get_range_unlocked),
2324         (gst_basesrc_check_get_range), (gst_basesrc_loop),
2325         (gst_basesrc_unlock), (gst_basesrc_get_size), (gst_basesrc_start),
2326         (gst_basesrc_stop), (gst_basesrc_activate),
2327         (gst_basesrc_change_state), (basesrc_find_peek),
2328         (basesrc_find_suggest), (gst_basesrc_type_find):
2329         * gst/base/gstbasesrc.h:
2330         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
2331         (gst_filesrc_class_init), (gst_filesrc_init),
2332         (gst_filesrc_finalize), (gst_filesrc_set_location),
2333         (gst_filesrc_set_property), (gst_filesrc_get_property),
2334         (gst_filesrc_free_parent_mmap), (gst_filesrc_map_region),
2335         (gst_filesrc_map_small_region), (gst_filesrc_create_mmap),
2336         (gst_filesrc_create_read), (gst_filesrc_create),
2337         (gst_filesrc_get_size), (gst_filesrc_start), (gst_filesrc_stop):
2338         * gst/elements/gstfilesrc.h:
2339         * gst/gstelement.c: (gst_element_get_state_func),
2340         (gst_element_lost_state), (gst_element_pads_activate):
2341         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2342         (gst_pad_set_checkgetrange_function), (gst_pad_check_pull_range),
2343         (gst_pad_pull_range):
2344         * gst/gstpad.h:
2345         More work on the generic source base class, implement seeking,
2346         query.
2347         Make filesrc extend the base source class.
2348         Added gst_pad_set_checkgetrange_function to GstPad.
2349
2350 2005-04-06  Andy Wingo  <wingo@pobox.com>
2351
2352         * pkgconfig/gstreamer-base.pc.in:
2353         * pkgconfig/gstreamer-base-uninstalled.pc.in: New files.
2354
2355         * pkgconfig/Makefile.am:
2356         * configure.ac (AC_OUTPUT): Add gstreamer-base pkgconfig files.
2357
2358 2005-04-04  Wim Taymans  <wim@fluendo.com>
2359
2360         * gst/base/Makefile.am:
2361         * gst/base/README:
2362         * gst/base/gstbasesink.c: (gst_basesink_base_init),
2363         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2364         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2365         (gst_basesink_do_sync), (gst_basesink_chain_unlocked):
2366         * gst/base/gstbasesrc.c: (gst_basesrc_get_type),
2367         (gst_basesrc_base_init), (gst_basesrc_class_init),
2368         (gst_basesrc_init), (gst_basesrc_get_formats),
2369         (gst_basesrc_get_query_types), (gst_basesrc_query),
2370         (gst_basesrc_get_event_mask), (gst_basesrc_event_handler),
2371         (gst_basesrc_set_property), (gst_basesrc_get_property),
2372         (gst_basesrc_get_range_unlocked), (gst_basesrc_get_range),
2373         (gst_basesrc_loop), (gst_basesrc_activate),
2374         (gst_basesrc_change_state):
2375         * gst/base/gstbasesrc.h:
2376         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
2377         (gst_fakesrc_class_init), (gst_fakesrc_init),
2378         (gst_fakesrc_event_handler), (gst_fakesrc_set_property),
2379         (gst_fakesrc_get_property), (gst_fakesrc_create):
2380         * gst/elements/gstfakesrc.h:
2381         * gst/elements/gstfilesrc.c: (gst_filesrc_getrange),
2382         (gst_filesrc_open_file), (gst_filesrc_loop),
2383         (gst_filesrc_activate), (filesrc_find_peek),
2384         (gst_filesrc_type_find):
2385         Made base source class, make fakesrc extend it.
2386         Add comments to basesink class.
2387         Some filesrc cleanup.
2388
2389 2005-03-31  David Schleef  <ds@schleef.org>
2390
2391         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
2392         Switch to using G_MODULE_BIND_LOCAL, which means plugins are now
2393         expected to link against libgstreamer.
2394         * gst/base/Makefile.am: link against libgstreamer
2395         * gst/elements/Makefile.am: same
2396
2397 2005-03-31  Andy Wingo  <wingo@pobox.com>
2398
2399         * tests/instantiate/Makefile.am:
2400         * tests/instantiate/caps.c: Add test to test speed of caps copy
2401         and free.
2402
2403         * tests/memchunk/gmemchunktest.c (main): Use alloc only on the
2404         GMemChunk to be fair.
2405
2406         * gst/gsttrashstack.h: Remove warning about using the fallback
2407         trash stack implementation, it's still faster than malloc.
2408
2409 2005-03-30  Andy Wingo  <wingo@pobox.com>
2410
2411         * tests/complexity.c: Add a copyright.
2412
2413 2005-03-31  Wim Taymans  <wim@fluendo.com>
2414
2415         * gst/base/gstbasetransform.c: (gst_base_transform_base_init),
2416         (gst_base_transform_class_init), (gst_base_transform_init),
2417         (gst_base_transform_setcaps), (gst_base_transform_handle_buffer),
2418         (gst_base_transform_get_property),
2419         (gst_base_transform_sink_activate),
2420         (gst_base_transform_src_activate),
2421         (gst_base_transform_change_state):
2422         * gst/base/gstbasetransform.h:
2423         * gst/elements/gstidentity.c: (gst_identity_class_init),
2424         (gst_identity_event), (gst_identity_check_perfect),
2425         (gst_identity_transform), (gst_identity_start),
2426         (gst_identity_stop):
2427         Added start/stop methods to transform base class so subclasses 
2428         don't need to deal with state changes even.
2429
2430 2005-03-31  Wim Taymans  <wim@fluendo.com>
2431
2432         * gst/gstevent.c: (gst_event_new_discontinuous_valist),
2433         (gst_event_new_discontinuous), (gst_event_discont_get_value):
2434         * gst/gstevent.h:
2435         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2436         (gst_pad_pull_range):
2437         Added rate to the discont event to prepare for variable speed
2438         and reverse playback.
2439
2440 2005-03-29  David Schleef  <ds@schleef.org>
2441
2442         * configure.ac:
2443         * testsuite/trigger/Makefile.am:
2444         * testsuite/trigger/trigger.c: A little example program to show
2445         how trigger-based elements can work.
2446
2447 2005-03-29  Wim Taymans  <wim@fluendo.com>
2448
2449         * gst/base/Makefile.am:
2450         * gst/base/README:
2451         * gst/base/gstbasesink.c: (gst_basesink_get_type),
2452         (gst_basesink_base_init), (gst_basesink_class_init),
2453         (gst_basesink_pad_getcaps), (gst_basesink_init),
2454         (gst_basesink_activate), (gst_basesink_change_state):
2455         * gst/base/gstbasesink.h:
2456         * gst/base/gstbasetransform.c: (gst_base_transform_get_type),
2457         (gst_base_transform_base_init), (gst_base_transform_finalize),
2458         (gst_base_transform_class_init), (gst_base_transform_init),
2459         (gst_base_transform_proxy_getcaps), (gst_base_transform_setcaps),
2460         (gst_base_transform_event), (gst_base_transform_getrange),
2461         (gst_base_transform_chain), (gst_base_transform_handle_buffer),
2462         (gst_base_transform_set_property),
2463         (gst_base_transform_get_property),
2464         (gst_base_transform_sink_activate),
2465         (gst_base_transform_src_activate),
2466         (gst_base_transform_change_state):
2467         * gst/base/gstbasetransform.h:
2468         * gst/elements/gstidentity.c: (gst_identity_finalize),
2469         (gst_identity_class_init), (gst_identity_init),
2470         (gst_identity_event), (gst_identity_check_perfect),
2471         (gst_identity_transform), (gst_identity_set_property),
2472         (gst_identity_get_property), (gst_identity_change_state):
2473         * gst/elements/gstidentity.h:
2474         * gst/gstelement.c: (gst_element_get_state_func),
2475         (gst_element_lost_state), (gst_element_pads_activate):
2476         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_peer_set_active),
2477         (gst_pad_check_pull_range), (gst_pad_pull_range):
2478         * gst/gstpad.h:
2479         Simplify pad activation.
2480         Added function to check if pull_range can be performed.
2481         Error out when pulling inactive or flushing pads.
2482         Removed const from refcounted types as it does not make sense.
2483         Simplify pad templates in basesink
2484         Added base class for simple 1-to-1 transforms.
2485         Make identity subclass the base transform.
2486
2487 2005-03-29  Andy Wingo  <wingo@pobox.com>
2488
2489         * docs/libs/gstreamer-libs-overrides.txt: 
2490         * docs/gst/gstreamer-overrides.txt: Add these files to CVS. Now I
2491         really don't understand what's going on, but like whatever. I want
2492         green buildbot!
2493
2494         * docs/gst/Makefile.am:
2495         * docs/libs/Makefile.am: Dist the overrides files.
2496
2497         * check/Makefile.am (clean-local): Remove .libs directories.
2498
2499         * gst/elements/Makefile.am (EXTRA_DIST): Add all the attic
2500         elements to EXTRA_DIST, so po/ files are happy.
2501
2502         * po/POTFILES.in: Er, remove it here.
2503
2504         * po/POTFILES: Remove gstspider.c.
2505
2506         * configure.ac (AC_OUTPUT): Add missing testsuite makefiles.
2507
2508         * docs/libs/gstreamer-libs-docs.sgml: 
2509         * docs/libs/gstreamer-libs-sections.txt: Remove the section on
2510         bytestream.
2511
2512         * tests/complexity.c (main): Set the length of the preroll queue
2513         on the sinks to prevent a lockup.
2514
2515         * libs/gst/dataprotocol/Makefile.am: 
2516         * libs/gst/dataprotocol/dataprotocol-test.c: Remove test, it's
2517         the same as the one in check/gst-libs/gdp.c.
2518
2519         * po/, docs/gst/: Commit automatic changes to docs and po files.
2520
2521         * gst/elements/Makefile.am (libgstelements_la_LDFLAGS): Link to
2522         the versioned libgstbase.
2523
2524         * check/Makefile.am: Depend on an unversioned gst-register, seems
2525         to make autoconf happier.
2526
2527         * gst/base/Makefile.am: Make libgstbase a versioned lib.
2528
2529 2005-03-28  Wim Taymans  <wim@fluendo.com>
2530
2531         * configure.ac:
2532         * docs/design/part-gstelement.txt:
2533         * docs/design/part-negotiation.txt:
2534         * docs/design/part-preroll.txt:
2535         * docs/design/part-scheduling.txt:
2536         * docs/design/part-states.txt:
2537         * gst/Makefile.am:
2538         * gst/base/Makefile.am:
2539         * gst/base/README:
2540         * gst/base/gstbasesink.c: (gst_basesink_get_template),
2541         (gst_basesink_base_init), (gst_basesink_class_init),
2542         (gst_basesink_pad_getcaps), (gst_basesink_pad_setcaps),
2543         (gst_basesink_pad_buffer_alloc), (gst_basesink_init),
2544         (gst_basesink_set_pad_functions),
2545         (gst_basesink_set_all_pad_functions), (gst_basesink_set_clock),
2546         (gst_basesink_set_property), (gst_basesink_get_property),
2547         (gst_base_sink_get_template), (gst_base_sink_get_caps),
2548         (gst_base_sink_set_caps), (gst_base_sink_buffer_alloc),
2549         (gst_basesink_preroll_queue_push),
2550         (gst_basesink_preroll_queue_empty),
2551         (gst_basesink_preroll_queue_flush), (gst_basesink_finish_preroll),
2552         (gst_basesink_event), (gst_basesink_get_times),
2553         (gst_basesink_do_sync), (gst_basesink_handle_buffer),
2554         (gst_basesink_chain_unlocked), (gst_basesink_chain),
2555         (gst_basesink_loop), (gst_basesink_activate),
2556         (gst_basesink_change_state):
2557         * gst/base/gstbasesink.h:
2558         * gst/elements/Makefile.am:
2559         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
2560         (gst_fakesink_class_init), (gst_fakesink_init),
2561         (gst_fakesink_set_property), (gst_fakesink_get_property),
2562         (gst_fakesink_get_times), (gst_fakesink_event),
2563         (gst_fakesink_preroll), (gst_fakesink_render),
2564         (gst_fakesink_change_state):
2565         * gst/elements/gstfakesink.h:
2566         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2567         (gst_bin_get_state), (gst_bin_change_state), (gst_bin_send_event):
2568         * gst/gstelement.c: (gst_element_add_pad),
2569         (gst_element_get_state_func), (gst_element_abort_state),
2570         (gst_element_commit_state), (gst_element_lost_state),
2571         (gst_element_set_state), (gst_element_pads_activate):
2572         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_event_default):
2573         * gst/gstpipeline.c: (gst_pipeline_send_event),
2574         (gst_pipeline_change_state):
2575         Added state change code.
2576         Added/updated docs.
2577         Added sink base class, make fakesink extend the base class.
2578         Small cleanups in GstPipeline.
2579
2580 2005-03-26  David Schleef  <ds@schleef.org>
2581
2582         * gst/Makefile.am: remove gstcpu.[ch].  The gst_cpu functionality
2583         is broken and should be implemented in a different library.
2584         * gst/gst.c: (init_post): don't call _gst_cpu_initialize()
2585         * gst/gst.h: remove gstcpu.h
2586         * gst/gstcpu.c: remove
2587         * gst/gstcpu.h: remove
2588         * gst/Makefile.am.future: Remove this file.  It's ancient.
2589
2590 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2591
2592         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_manager),
2593         (gst_bin_send_event):
2594           Add default event/set_manager handlers. The set_manager handler
2595           takes care that the manager is distributed over kids that were
2596           already in the bin before the manager was set. The event handler
2597           is a utility virtual function that sends the event over all sinks,
2598           so that gst_element_send_event (bin, event); has the expected
2599           behaviour.
2600         * gst/gstpad.c: (gst_pad_event_default):
2601           Re-install default event handling for discontinuities, so that
2602           seeking works without requiring hacks in applications or extra
2603           code in sinks.
2604         * gst/gstpipeline.c: (gst_pipeline_class_init),
2605         (gst_pipeline_send_event):
2606           Half hack, half utility: set a pipeline to PAUSED for seek events,
2607           since that is the only way we can guarantee a/v sync. Means that
2608           you can do gst_element_seek (pipeline, method, pos); on a pipeline
2609           and it "just works".
2610
2611 2005-03-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
2612
2613         * gst/gstpipeline.c: (gst_pipeline_use_clock):
2614           Lock/unlock mismatch.
2615
2616 2005-03-25  Thomas Vander Stichele  <thomas at apestaart dot org>
2617
2618         * docs/faq/gst-uninstalled:
2619           add gst-plugins-base
2620         * docs/gst/Makefile.am:
2621           don't error out until docs are fixed
2622         * docs/gst/gstreamer.types:
2623           remove thread
2624
2625 2005-03-22  Wim Taymans  <wim@fluendo.com>
2626
2627         * check/Makefile.am:
2628         * check/gst/gstmessage.c: (START_TEST), (gst_data_suite), (main):
2629         * gst/gststructure.c: (gst_structure_set_valist),
2630         (gst_structure_copy_conditional):
2631         Activated more tests.
2632         Added message test.
2633         Added G_TYPE_POINTER to GstStructure.
2634         
2635
2636 2005-03-22  Wim Taymans  <wim@fluendo.com>
2637
2638         * docs/design/part-TODO.txt:
2639         * docs/design/part-events.txt:
2640         * docs/design/part-gstbin.txt:
2641         * docs/design/part-gstbus.txt:
2642         * docs/design/part-gstpipeline.txt:
2643         * docs/design/part-messages.txt:
2644         * gst/gstbus.c:
2645         * gst/gstmessage.c:
2646         Docs updates
2647
2648 2005-03-21  Wim Taymans  <wim@fluendo.com>
2649
2650         * gst/gstbus.c: (gst_bus_post):
2651         Fix copy-and-paste error.
2652
2653 2005-03-21  Wim Taymans  <wim@fluendo.com>
2654
2655         * check/Makefile.am:
2656         * gst/Makefile.am:
2657         * gst/elements/Makefile.am:
2658         * gst/elements/gstelements.c:
2659         * gst/elements/gstfakesink.c: (gst_fakesink_init),
2660         (gst_fakesink_event), (gst_fakesink_chain):
2661         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
2662         (gst_fakesrc_init), (gst_fakesrc_get_event_mask),
2663         (gst_fakesrc_event_handler), (gst_fakesrc_set_pad_functions),
2664         (gst_fakesrc_set_all_pad_functions), (gst_fakesrc_request_new_pad),
2665         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
2666         (gst_fakesrc_get_range_unlocked), (gst_fakesrc_get_range),
2667         (gst_fakesrc_loop), (gst_fakesrc_activate),
2668         (gst_fakesrc_change_state):
2669         * gst/elements/gstfakesrc.h:
2670         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
2671         (gst_filesrc_get_read), (gst_filesrc_getrange), (gst_filesrc_get),
2672         (gst_filesrc_open_file), (gst_filesrc_loop),
2673         (gst_filesrc_activate), (gst_filesrc_change_state),
2674         (filesrc_find_peek), (filesrc_find_suggest),
2675         (gst_filesrc_type_find):
2676         * gst/elements/gstidentity.c: (gst_identity_finalize),
2677         (gst_identity_class_init), (gst_identity_init),
2678         (gst_identity_proxy_getcaps), (identity_queue_push),
2679         (identity_queue_pop), (identity_queue_flush), (gst_identity_event),
2680         (gst_identity_getrange), (gst_identity_chain),
2681         (gst_identity_sink_loop), (gst_identity_src_loop),
2682         (gst_identity_handle_buffer), (gst_identity_set_dataflow_funcs),
2683         (gst_identity_set_property), (gst_identity_get_property),
2684         (gst_identity_change_state):
2685         * gst/elements/gstidentity.h:
2686         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init),
2687         (gst_tee_update_pad_functions), (gst_tee_request_new_pad),
2688         (gst_tee_set_property), (gst_tee_get_property), (gst_tee_do_push),
2689         (gst_tee_handle_buffer), (gst_tee_chain), (gst_tee_loop),
2690         (gst_tee_sink_activate):
2691         * gst/elements/gsttee.h:
2692         * gst/gst.c: (gst_register_core_elements), (init_post):
2693         * gst/gst.h:
2694         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_bus),
2695         (gst_bin_set_scheduler), (gst_bin_add_func), (gst_bin_add),
2696         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_get_state),
2697         (gst_bin_change_state):
2698         * gst/gstbin.h:
2699         * gst/gstbus.c: (gst_bus_get_type), (gst_bus_class_init),
2700         (gst_bus_init), (gst_bus_dispose), (gst_bus_set_property),
2701         (gst_bus_get_property), (gst_bus_new), (gst_bus_post),
2702         (gst_bus_have_pending), (gst_bus_pop), (gst_bus_peek),
2703         (gst_bus_set_sync_handler), (gst_bus_create_watch),
2704         (bus_watch_callback), (bus_watch_destroy),
2705         (gst_bus_add_watch_full), (gst_bus_add_watch), (poll_handler),
2706         (poll_timeout), (gst_bus_poll):
2707         * gst/gstbus.h:
2708         * gst/gstcaps.h:
2709         * gst/gstdata.h:
2710         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
2711         (gst_element_post_message), (gst_element_message_full),
2712         (gst_element_get_state_func), (gst_element_get_state),
2713         (gst_element_abort_state), (gst_element_commit_state),
2714         (gst_element_lost_state), (gst_element_set_state),
2715         (gst_element_pads_activate), (gst_element_change_state),
2716         (gst_element_dispose), (gst_element_set_manager_func),
2717         (gst_element_set_bus_func), (gst_element_set_scheduler_func),
2718         (gst_element_set_manager), (gst_element_get_manager),
2719         (gst_element_set_bus), (gst_element_get_bus),
2720         (gst_element_set_scheduler), (gst_element_get_scheduler):
2721         * gst/gstelement.h:
2722         * gst/gstevent.c: (gst_event_new_segment_seek),
2723         (gst_event_new_flush):
2724         * gst/gstevent.h:
2725         * gst/gstmessage.c: (_gst_message_initialize), (_gst_message_copy),
2726         (_gst_message_free), (gst_message_get_type), (gst_message_new),
2727         (gst_message_new_eos), (gst_message_new_error),
2728         (gst_message_new_warning), (gst_message_new_tag),
2729         (gst_message_new_state_changed), (gst_message_new_application),
2730         (gst_message_get_structure), (gst_message_parse_tag),
2731         (gst_message_parse_state_changed), (gst_message_parse_error),
2732         (gst_message_parse_warning):
2733         * gst/gstmessage.h:
2734         * gst/gstpad.c: (gst_real_pad_class_init), (gst_real_pad_init),
2735         (gst_real_pad_set_property), (gst_pad_set_active),
2736         (gst_pad_is_active), (gst_pad_set_blocked_async),
2737         (gst_pad_set_blocked), (gst_pad_is_blocked),
2738         (gst_pad_set_activate_function), (gst_pad_set_loop_function),
2739         (gst_pad_set_getrange_function), (gst_pad_set_acceptcaps_function),
2740         (gst_pad_set_fixatecaps_function), (gst_pad_set_setcaps_function),
2741         (gst_pad_unlink), (gst_pad_link_prepare_filtered),
2742         (gst_pad_link_filtered), (gst_pad_relink_filtered),
2743         (gst_real_pad_get_caps_unlocked), (gst_pad_get_caps),
2744         (gst_pad_peer_get_caps), (gst_pad_fixate_caps),
2745         (gst_pad_accept_caps), (gst_pad_peer_accept_caps),
2746         (gst_pad_set_caps), (gst_pad_configure_sink),
2747         (gst_pad_configure_src), (gst_pad_get_negotiated_caps),
2748         (gst_pad_get_filter_caps), (gst_pad_alloc_buffer),
2749         (gst_real_pad_dispose), (gst_real_pad_finalize),
2750         (handle_pad_block), (gst_pad_push), (gst_pad_pull_range),
2751         (gst_pad_event_default_dispatch), (gst_pad_event_default),
2752         (gst_pad_push_event), (gst_pad_send_event), (gst_pad_get_formats):
2753         * gst/gstpad.h:
2754         * gst/gstpipeline.c: (gst_pipeline_init), (is_eos),
2755         (pipeline_bus_handler), (gst_pipeline_change_state),
2756         (gst_pipeline_get_scheduler), (gst_pipeline_get_bus):
2757         * gst/gstpipeline.h:
2758         * gst/gstprobe.h:
2759         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_init),
2760         (gst_queue_finalize), (gst_queue_getcaps), (gst_queue_link_sink),
2761         (gst_queue_link_src), (gst_queue_bufferalloc),
2762         (gst_queue_locked_flush), (gst_queue_handle_sink_event),
2763         (gst_queue_is_empty), (gst_queue_is_filled), (gst_queue_chain),
2764         (gst_queue_loop), (gst_queue_handle_src_event),
2765         (gst_queue_handle_src_query), (gst_queue_src_activate),
2766         (gst_queue_change_state):
2767         * gst/gstqueue.h:
2768         * gst/gstscheduler.c: (gst_scheduler_init),
2769         (gst_scheduler_dispose), (gst_scheduler_create_task),
2770         (gst_scheduler_factory_create):
2771         * gst/gstscheduler.h:
2772         * gst/gststructure.c: (gst_structure_get_type),
2773         (gst_structure_copy_conditional):
2774         * gst/gststructure.h:
2775         * gst/gsttaginterface.h:
2776         * gst/gsttask.c: (gst_task_get_type), (gst_task_class_init),
2777         (gst_task_init), (gst_task_dispose), (gst_task_create),
2778         (gst_task_get_state), (gst_task_start), (gst_task_stop),
2779         (gst_task_pause):
2780         * gst/gsttask.h:
2781         * gst/gstthread.c:
2782         * gst/gstthread.h:
2783         * gst/gsttypes.h:
2784         * gst/schedulers/Makefile.am:
2785         * gst/schedulers/cothreads_compat.h:
2786         * gst/schedulers/entryscheduler.c:
2787         * gst/schedulers/faircothreads.c:
2788         * gst/schedulers/faircothreads.h:
2789         * gst/schedulers/fairscheduler.c:
2790         * gst/schedulers/gstbasicscheduler.c:
2791         * gst/schedulers/gstoptimalscheduler.c:
2792         * gst/schedulers/gthread-cothreads.h:
2793         * gst/schedulers/threadscheduler.c:
2794         (gst_thread_scheduler_task_get_type),
2795         (gst_thread_scheduler_task_class_init),
2796         (gst_thread_scheduler_task_init),
2797         (gst_thread_scheduler_task_start),
2798         (gst_thread_scheduler_task_stop),
2799         (gst_thread_scheduler_task_pause), (gst_thread_scheduler_get_type),
2800         (gst_thread_scheduler_class_init), (gst_thread_scheduler_func),
2801         (gst_thread_scheduler_init), (gst_thread_scheduler_create_task),
2802         (gst_thread_scheduler_setup), (gst_thread_scheduler_reset),
2803         (plugin_init):
2804         * libs/gst/Makefile.am:
2805         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf):
2806         * libs/gst/bytestream/filepad.c: (gst_file_pad_init),
2807         (gst_file_pad_parent_set):
2808         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event),
2809         (gst_dp_event_from_packet):
2810         * tests/complexity.c: (main):
2811         * tests/mass_elements.c: (main):
2812         * testsuite/states/locked.c: (message_received), (main):
2813         * testsuite/states/parent.c: (main):
2814         * tools/gst-inspect.c: (print_element_flag_info),
2815         (print_implementation_info), (print_pad_info):
2816         * tools/gst-launch.c: (check_intr), (play_handler), (event_loop),
2817         (main):
2818         * tools/gst-md5sum.c: (event_loop), (main):
2819         * tools/gst-typefind.c: (main):
2820         * tools/gst-xmlinspect.c: (print_element_info):
2821         Next big merge.
2822         Added GstBus for mainloop integration.
2823         Added GstMessage for sending notifications on the bus.
2824         Added GstTask as an abstraction for pipeline entry points.
2825         Removed GstThread.
2826         Removed Schedulers.
2827         Simplified GstQueue for multithreaded core.
2828         Made _link threadsafe, removed old capsnego.
2829         Added STREAM_LOCK and PREROLL_LOCK in GstPad.
2830         Added pad blocking functions.
2831         Reworked scheduling functions in GstPad to prepare for
2832         scheduling updates soon.
2833         Moved events out of data stream.
2834         Simplified GstEvent types.
2835         Added return values to push/pull.
2836         Removed clocking from GstElement.
2837         Added prototypes for state change function for next merge.
2838         Removed iterate from bins and state change management.
2839         Fixed some elements, disabled others for now.
2840         Fixed -inspect and -launch.
2841         Added check for GstBus.
2842
2843 2005-03-10  Wim Taymans  <wim@fluendo.com>
2844
2845         * docs/design/part-MT-refcounting.txt:
2846         * docs/design/part-clocks.txt:
2847         * docs/design/part-gstelement.txt:
2848         * docs/design/part-gstobject.txt:
2849         * docs/design/part-standards.txt:
2850         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2851         (gst_bin_remove_func), (gst_bin_remove):
2852         * gst/gstbin.h:
2853         * gst/gstbuffer.c:
2854         * gst/gstcaps.h:
2855         * testsuite/clock/clock1.c: (main):
2856         * testsuite/clock/clock2.c: (gst_clock_debug), (element_wait),
2857         (main):
2858         * testsuite/dlopen/loadgst.c: (do_test):
2859         * testsuite/refcounting/bin.c: (add_remove_test1),
2860         (add_remove_test2), (main):
2861         * testsuite/refcounting/element.c: (main):
2862         * testsuite/refcounting/element_pad.c: (main):
2863         * testsuite/refcounting/pad.c: (main):
2864         * tools/gst-launch.c: (sigint_handler_sighandler):
2865         * tools/gst-typefind.c: (main):
2866         Doc updates.
2867         Added doc about clock.
2868         removed gst_bin_iterate_recurse_up(), marked methods
2869         for removal.
2870         Fix more testsuites.
2871
2872 2005-03-09  Wim Taymans  <wim@fluendo.com>
2873
2874         * gst/gstpad.c: (gst_pad_get_direction),
2875         (_gst_pad_default_fixate_foreach), (gst_pad_collectv),
2876         (gst_pad_collect_valist):
2877         * testsuite/bins/interface.c: (main):
2878         * testsuite/caps/audioscale.c: (test_caps):
2879         * testsuite/caps/caps.c: (test1), (test2), (test3):
2880         * testsuite/caps/deserialize.c: (main):
2881         * testsuite/caps/enumcaps.c: (main):
2882         * testsuite/caps/filtercaps.c: (main):
2883         * testsuite/caps/intersect2.c: (main):
2884         * testsuite/caps/random.c: (main):
2885         * testsuite/caps/renegotiate.c: (my_fixate), (main):
2886         * testsuite/caps/sets.c: (check_caps):
2887         * testsuite/caps/simplify.c: (check_caps), (main):
2888         * testsuite/caps/subtract.c: (check_caps):
2889         Fix _pad_get_direction wrt ghostpads.
2890         Fix caps testsuite.
2891
2892 2005-03-09  Wim Taymans  <wim@fluendo.com>
2893
2894         * check/Makefile.am:
2895         * check/gst/gstbin.c: (START_TEST), (gst_bin_suite), (main):
2896         * check/gst/gstsystemclock.c: (START_TEST), (gst_clock_debug),
2897         (ok_callback), (error_callback), (gst_systemclock_suite), (main):
2898         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_index_func),
2899         (gst_bin_set_clock_func), (gst_bin_get_clock_func),
2900         (gst_bin_add_func), (gst_bin_add), (gst_bin_remove_func),
2901         (gst_bin_remove), (gst_bin_iterate_recurse_up),
2902         (bin_element_is_sink), (gst_bin_iterate_sinks),
2903         (gst_bin_iterate_all_by_interface):
2904         * gst/gstbin.h:
2905         * gst/gstelement.c: (gst_element_init), (gst_element_error_full),
2906         (gst_element_change_state), (gst_element_dispose),
2907         (gst_element_finalize), (gst_element_set_loop_function):
2908         * gst/gstelement.h:
2909         * gst/gstiterator.c: (find_custom_fold_func):
2910         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2911         (gst_pad_collectv), (gst_pad_collect_valist),
2912         (gst_pad_template_new):
2913         * gst/gstpipeline.c: (gst_pipeline_class_init),
2914         (gst_pipeline_dispose), (gst_pipeline_set_property),
2915         (gst_pipeline_get_property), (gst_pipeline_get_clock_func),
2916         (gst_pipeline_get_clock), (gst_pipeline_use_clock),
2917         (gst_pipeline_set_clock), (gst_pipeline_auto_clock):
2918         * gst/gstutils.h:
2919         * gst/schedulers/entryscheduler.c:
2920         * gst/schedulers/gstbasicscheduler.c:
2921         (gst_basic_scheduler_cothreaded_chain),
2922         (gst_basic_scheduler_chain_add_element):
2923         * testsuite/bins/interface.c: (main):
2924         Added GstBin test.
2925         Added GstSystemClock test.
2926         Implemented clock distribution code in GstBin.
2927         Implemented iterate sinks method for future use.
2928         Rearranged gstelement.h
2929         Fix GstIterator comparison bug.
2930         Moved some code to GstPipeline, mostly clocking related.
2931
2932 2005-03-09  Wim Taymans  <wim@fluendo.com>
2933
2934         * configure.ac:
2935         * gst/gst_private.h:
2936         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
2937         (gst_bin_remove_func), (gst_bin_remove),
2938         (gst_bin_get_by_name_recurse_up):
2939         * gst/gstclock.c: (gst_clock_id_ref), (gst_clock_id_unref),
2940         (gst_clock_id_compare_func), (gst_clock_id_wait),
2941         (gst_clock_id_wait_async), (gst_clock_init),
2942         (gst_clock_adjust_unlocked), (gst_clock_get_time):
2943         * gst/gstelement.h:
2944         * gst/gstinfo.c: (_gst_debug_init):
2945         * gst/gstobject.h:
2946         * gst/gstpad.c: (_gst_pad_default_fixate_foreach),
2947         (gst_pad_collectv), (gst_pad_collect_valist), (gst_pad_query):
2948         * gst/gstpad.h:
2949         Bump version number, we're now 0.9.0
2950         Add future debugging category.
2951         Fix NULL _unref() in _get_by_name_recurse_up
2952         Rearrange gstpad.h.
2953         Update some docs.
2954
2955 2005-03-08  Wim Taymans  <wim@fluendo.com>
2956
2957         * gst/elements/gstaggregator.c: (gst_aggregator_class_init):
2958         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
2959         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
2960         * gst/elements/gstfdsink.c: (gst_fdsink_class_init):
2961         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init):
2962         * gst/elements/gstfilesink.c: (gst_filesink_class_init):
2963         * gst/elements/gstfilesrc.c: (gst_filesrc_class_init):
2964         * gst/elements/gstidentity.c: (gst_identity_class_init):
2965         * gst/elements/gstmd5sink.c: (gst_md5sink_class_init):
2966         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
2967         * gst/elements/gstshaper.c: (gst_shaper_class_init):
2968         * gst/elements/gststatistics.c: (gst_statistics_class_init):
2969         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_getcaps),
2970         (gst_tee_link):
2971         * gst/gstelement.c: (gst_element_class_init),
2972         (gst_element_base_class_init), (gst_element_init),
2973         (gst_element_get_random_pad), (gst_element_wait_state_change),
2974         (gst_element_change_state), (gst_element_dispose),
2975         (gst_element_finalize), (gst_element_set_loop_function):
2976         * gst/gstelement.h:
2977         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_link_src):
2978         * gst/gstthread.c: (gst_thread_class_init),
2979         (gst_thread_release_children_locks), (gst_thread_change_state):
2980         * gst/schedulers/gstbasicscheduler.c:
2981         (gst_basic_scheduler_loopfunc_wrapper),
2982         (gst_basic_scheduler_chain_wrapper),
2983         (gst_basic_scheduler_src_wrapper),
2984         (gst_basic_scheduler_remove_element):
2985         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
2986         Remove threadsafe properties. Fix elements because GObject
2987         complains when installing a property before declaring a
2988         set/get_property handler.
2989         Rearrange gstelement.h file, use STATE macros for state locks.
2990         Free mutexes in the finalize method instead of dispose.
2991
2992 2005-03-08  Wim Taymans  <wim@fluendo.com>
2993
2994         * check/gst/gstobject.c: (START_TEST), (gst_object_suite):
2995         * gst/gstthread.c: (gst_thread_release_children_locks):
2996         Added parentage check.
2997         Fix build og GstThread again.
2998
2999 2005-03-08  Wim Taymans  <wim@fluendo.com>
3000
3001         * docs/design/part-MT-refcounting.txt:
3002         * docs/design/part-conventions.txt:
3003         * docs/design/part-gstobject.txt:
3004         * docs/design/part-relations.txt:
3005         * docs/design/part-standards.txt:
3006         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_add),
3007         (gst_bin_remove_func), (gst_bin_remove), (gst_bin_iterate_recurse),
3008         (gst_bin_get_by_name), (gst_bin_get_by_interface),
3009         (gst_bin_iterate_all_by_interface):
3010         * gst/gstbuffer.h:
3011         * gst/gstclock.h:
3012         * gst/gstelement.c: (gst_element_class_init),
3013         (gst_element_change_state), (gst_element_set_loop_function):
3014         * gst/gstelement.h:
3015         * gst/gstiterator.c:
3016         * gst/gstobject.c: (gst_object_class_init), (gst_object_ref),
3017         (gst_object_unref), (gst_object_sink), (gst_object_dispose),
3018         (gst_object_dispatch_properties_changed), (gst_object_set_name),
3019         (gst_object_set_parent), (gst_object_unparent),
3020         (gst_object_check_uniqueness):
3021         * gst/gstobject.h:
3022         Docs updates, clean up some headers.
3023
3024 2005-03-07  Wim Taymans  <wim@fluendo.com>
3025
3026         * check/.cvsignore:
3027         * check/Makefile.am:
3028         * check/gst-libs/.cvsignore:
3029         * check/gst-libs/gdp.c: (START_TEST), (gst_object_suite), (main):
3030         * check/gst/.cvsignore:
3031         * check/gst/gstbus.c: (pound_bus_with_messages), (pull_messages),
3032         (START_TEST), (gstbus_suite), (main):
3033         * check/gst/gstcaps.c: (START_TEST), (gst_caps_suite), (main):
3034         * check/gst/gstdata.c: (START_TEST), (thread_ref), (thread_unref),
3035         (gst_data_suite), (main):
3036         * check/gst/gstiterator.c: (make_list_of_ints), (START_TEST),
3037         (add_fold_func), (gstiterator_suite), (main):
3038         * check/gst/gstobject.c: (gst_fake_object_get_type), (START_TEST),
3039         (thread_name_object), (thread_name_object_default),
3040         (gst_object_name_compare), (gst_object_suite), (main):
3041         * check/gst/gstpad.c: (START_TEST), (thread_link_unlink),
3042         (gst_pad_suite), (main):
3043         * check/gstcheck.c: (gst_check_log_message_func),
3044         (gst_check_log_critical_func), (gst_check_init):
3045         * check/gstcheck.h:
3046         * check/pipelines/simple_launch_lines.c: (setup_pipeline),
3047         (run_pipeline), (START_TEST), (simple_launch_lines_suite), (main):
3048         Added checks.
3049
3050 2005-03-07  Wim Taymans  <wim@fluendo.com>
3051
3052         * gst/gstiterator.c: (gst_iterator_init), (gst_iterator_new),
3053         (gst_list_iterator_next), (gst_list_iterator_resync),
3054         (gst_list_iterator_free), (gst_iterator_new_list),
3055         (gst_iterator_pop), (gst_iterator_next), (gst_iterator_resync),
3056         (gst_iterator_free), (gst_iterator_push), (filter_next),
3057         (filter_resync), (filter_uninit), (filter_free),
3058         (gst_iterator_filter), (gst_iterator_fold), (foreach_fold_func),
3059         (gst_iterator_foreach), (find_custom_fold_func),
3060         (gst_iterator_find_custom):
3061         * gst/gstiterator.h:
3062         Added missing files.
3063
3064 2005-03-07  Wim Taymans  <wim@fluendo.com>
3065
3066         * Makefile.am:
3067         * configure.ac:
3068         * docs/design/part-MT-refcounting.txt:
3069         * docs/design/part-conventions.txt:
3070         * docs/design/part-gstobject.txt:
3071         * docs/design/part-relations.txt:
3072         * examples/mixer/mixer.c: (main):
3073         * examples/thread/thread.c: (eos), (main):
3074         * gst/Makefile.am:
3075         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
3076         * gst/autoplug/gstspider.c: (gst_spider_identity_plug),
3077         (gst_spider_plug_from_srcpad):
3078         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps),
3079         (gst_spider_identity_change_state),
3080         (gst_spider_identity_sink_loop_type_finding):
3081         * gst/elements/gstfakesrc.c: (gst_fakesrc_loop):
3082         * gst/elements/gstidentity.c: (gst_identity_init):
3083         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_getcaps),
3084         (gst_tee_link), (gst_tee_request_new_pad), (gst_tee_chain):
3085         * gst/elements/gsttypefindelement.c: (free_entry):
3086         * gst/gst.c:
3087         * gst/gst.h:
3088         * gst/gstbin.c: (gst_bin_init), (gst_bin_get_clock_func),
3089         (gst_bin_set_clock_func), (gst_bin_auto_clock),
3090         (gst_bin_set_index), (gst_bin_set_element_sched),
3091         (gst_bin_unset_element_sched), (gst_bin_add_func), (gst_bin_add),
3092         (gst_bin_remove_func), (gst_bin_remove), (iterate_child),
3093         (gst_bin_iterate_elements), (iterate_child_recurse),
3094         (gst_bin_iterate_recurse), (gst_bin_dispose), (compare_name),
3095         (gst_bin_get_by_name), (gst_bin_get_by_name_recurse_up),
3096         (compare_interface), (gst_bin_get_by_interface),
3097         (gst_bin_iterate_all_by_interface), (gst_bin_iterate_func):
3098         * gst/gstbin.h:
3099         * gst/gstbuffer.c: (gst_buffer_get_type), (_gst_buffer_sub_free),
3100         (gst_buffer_default_free), (gst_buffer_default_copy),
3101         (gst_buffer_new), (gst_buffer_get_caps), (gst_buffer_set_caps),
3102         (gst_buffer_create_sub):
3103         * gst/gstbuffer.h:
3104         * gst/gstcaps.c: (gst_caps_get_type), (gst_caps_new_empty),
3105         (_gst_caps_free), (gst_caps_make_writable), (gst_caps_ref),
3106         (gst_caps_unref), (gst_static_caps_get),
3107         (gst_caps_remove_and_get_structure), (gst_caps_append),
3108         (gst_caps_append_structure), (gst_caps_remove_structure),
3109         (gst_caps_copy_nth), (gst_caps_set_simple),
3110         (gst_caps_set_simple_valist), (gst_caps_is_fixed_foreach),
3111         (gst_structure_is_equal_foreach), (gst_caps_is_subset),
3112         (gst_caps_structure_intersect_field), (gst_caps_intersect),
3113         (gst_caps_structure_subtract_field), (gst_caps_subtract),
3114         (gst_caps_normalize_foreach), (gst_caps_compare_structures),
3115         (gst_caps_structure_figure_out_union),
3116         (gst_caps_switch_structures), (gst_caps_do_simplify),
3117         (gst_caps_replace), (gst_caps_from_string),
3118         (gst_caps_copy_conditional):
3119         * gst/gstcaps.h:
3120         * gst/gstclock.c: (gst_clock_entry_new), (gst_clock_id_ref),
3121         (_gst_clock_id_free), (gst_clock_id_unref),
3122         (gst_clock_id_compare_func), (gst_clock_id_wait),
3123         (gst_clock_id_wait_async), (gst_clock_class_init),
3124         (gst_clock_init), (gst_clock_dispose), (gst_clock_adjust_unlocked),
3125         (gst_clock_get_time), (gst_clock_set_time_adjust),
3126         (gst_clock_set_property), (gst_clock_get_property):
3127         * gst/gstclock.h:
3128         * gst/gstcompat.h:
3129         * gst/gstcpu.c: (_gst_cpu_initialize_i386), (gst_cpu_get_flags):
3130         * gst/gstdata.c: (gst_data_is_writable), (gst_data_copy_on_write):
3131         * gst/gstdata.h:
3132         * gst/gstelement.c: (gst_element_class_init), (gst_element_init),
3133         (gst_element_requires_clock), (gst_element_provides_clock),
3134         (gst_element_set_clock), (gst_element_clock_wait),
3135         (gst_element_wait), (gst_element_set_time_delay),
3136         (gst_element_is_indexable), (gst_element_add_pad),
3137         (gst_element_add_ghost_pad), (gst_element_remove_pad),
3138         (pad_compare_name), (gst_element_get_static_pad),
3139         (gst_element_request_pad), (gst_element_get_request_pad),
3140         (gst_element_get_pad), (iterate_pad), (gst_element_iterate_pads),
3141         (gst_element_class_get_pad_template_list),
3142         (gst_element_class_get_pad_template), (gst_element_error_func),
3143         (gst_element_get_random_pad), (gst_element_get_event_masks),
3144         (gst_element_send_event), (gst_element_seek),
3145         (gst_element_get_query_types), (gst_element_query),
3146         (gst_element_get_formats), (gst_element_convert),
3147         (gst_element_is_locked_state), (gst_element_set_locked_state),
3148         (gst_element_sync_state_with_parent), (gst_element_change_state),
3149         (gst_element_finalize), (gst_element_yield),
3150         (gst_element_interrupt), (gst_element_set_scheduler),
3151         (gst_element_get_scheduler), (gst_element_set_loop_function):
3152         * gst/gstelement.h:
3153         * gst/gstevent.h:
3154         * gst/gstformat.c: (_gst_format_initialize), (gst_format_register),
3155         (gst_format_get_by_nick), (gst_format_get_details),
3156         (gst_format_iterate_definitions):
3157         * gst/gstformat.h:
3158         * gst/gstindex.c: (gst_index_gtype_resolver):
3159         * gst/gstinfo.c:
3160         * gst/gstinfo.h:
3161         * gst/gstmemchunk.c: (gst_mem_chunk_alloc), (gst_mem_chunk_alloc0),
3162         (gst_mem_chunk_free):
3163         * gst/gstobject.c: (gst_object_class_init), (gst_object_init),
3164         (gst_object_ref), (gst_object_unref), (gst_object_sink),
3165         (gst_object_replace), (gst_object_dispose), (gst_object_finalize),
3166         (gst_object_dispatch_properties_changed),
3167         (gst_object_set_name_default), (gst_object_set_name),
3168         (gst_object_get_name), (gst_object_set_name_prefix),
3169         (gst_object_get_name_prefix), (gst_object_set_parent),
3170         (gst_object_get_parent), (gst_object_unparent),
3171         (gst_object_check_uniqueness), (gst_object_save_thyself),
3172         (gst_object_restore_thyself), (gst_object_real_restore_thyself),
3173         (gst_object_set_property), (gst_object_get_property),
3174         (gst_object_get_path_string):
3175         * gst/gstobject.h:
3176         * gst/gstpad.c: (gst_pad_dispose), (gst_real_pad_class_init),
3177         (gst_real_pad_init), (gst_real_pad_get_property),
3178         (gst_pad_custom_new), (gst_pad_get_direction),
3179         (gst_pad_set_active), (gst_pad_is_active),
3180         (gst_pad_set_event_function), (gst_pad_is_linked),
3181         (gst_pad_link_free), (gst_pad_link_intersect),
3182         (gst_pad_link_fixate), (gst_pad_set_caps),
3183         (gst_pad_try_set_caps_nonfixed), (gst_pad_set_pad_template),
3184         (gst_pad_get_real_parent), (gst_pad_add_ghost_pad),
3185         (gst_pad_remove_ghost_pad), (_gst_pad_default_fixate_foreach),
3186         (gst_pad_link_unnegotiate), (gst_pad_proxy_fixate),
3187         (gst_pad_get_caps), (gst_pad_peer_get_caps),
3188         (gst_pad_get_pad_template_caps), (gst_pad_get_peer),
3189         (gst_pad_realize), (gst_pad_get_allowed_caps),
3190         (gst_real_pad_dispose), (gst_real_pad_finalize),
3191         (gst_pad_collectv), (gst_pad_collect_valist),
3192         (gst_pad_template_dispose), (gst_pad_template_new),
3193         (gst_pad_get_internal_links):
3194         * gst/gstpad.h:
3195         * gst/gstpipeline.c: (gst_pipeline_dispose),
3196         (gst_pipeline_change_state):
3197         * gst/gstpipeline.h:
3198         * gst/gstplugin.c:
3199         * gst/gstpluginfeature.c: (gst_plugin_feature_get_name),
3200         (gst_plugin_feature_set_rank), (gst_plugin_feature_get_rank):
3201         * gst/gstpluginfeature.h:
3202         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3203         * gst/gstquery.c: (_gst_query_type_initialize),
3204         (gst_query_type_register), (gst_query_type_get_by_nick),
3205         (gst_query_type_get_details), (gst_query_type_iterate_definitions):
3206         * gst/gstquery.h:
3207         * gst/gstqueue.c: (gst_queue_link_sink), (gst_queue_link_src):
3208         * gst/gstscheduler.c: (gst_scheduler_add_element),
3209         (gst_scheduler_factory_create):
3210         * gst/gststructure.c: (gst_structure_set_parent_refcount),
3211         (gst_structure_free), (gst_structure_set_name),
3212         (gst_structure_id_set_value), (gst_structure_set_value),
3213         (gst_structure_set_valist), (gst_structure_remove_field),
3214         (gst_structure_remove_fields),
3215         (gst_structure_remove_fields_valist),
3216         (gst_structure_remove_all_fields), (gst_structure_foreach),
3217         (gst_structure_map_in_place),
3218         (gst_caps_structure_fixate_field_nearest_int),
3219         (gst_caps_structure_fixate_field_nearest_double):
3220         * gst/gststructure.h:
3221         * gst/gstsystemclock.c: (gst_system_clock_class_init),
3222         (gst_system_clock_init), (gst_system_clock_dispose),
3223         (gst_system_clock_async_thread),
3224         (gst_system_clock_id_wait_unlocked), (gst_system_clock_id_wait),
3225         (gst_system_clock_id_wait_async), (gst_system_clock_id_unschedule):
3226         * gst/gstsystemclock.h:
3227         * gst/gsttag.c: (gst_tag_list_add_value_internal),
3228         (gst_tag_list_copy_foreach), (structure_foreach_wrapper):
3229         * gst/gsttaginterface.c:
3230         * gst/gstthread.c: (gst_thread_dispose),
3231         (gst_thread_release_children_locks), (gst_thread_change_state),
3232         (gst_thread_main_loop):
3233         * gst/gsttrashstack.h:
3234         * gst/gsttypefind.c: (gst_type_find_factory_dispose):
3235         * gst/gsttypes.h:
3236         * gst/gstutils.c: (gst_element_get_compatible_pad_template),
3237         (gst_element_request_pad), (gst_element_get_pad_from_template),
3238         (gst_element_request_compatible_pad),
3239         (gst_element_get_compatible_pad_filtered),
3240         (gst_element_get_compatible_pad), (gst_element_state_get_name),
3241         (gst_element_link_pads_filtered), (gst_element_link_filtered),
3242         (gst_element_link_many), (gst_element_link),
3243         (gst_element_link_pads), (gst_element_unlink_pads),
3244         (gst_element_unlink_many), (gst_element_unlink),
3245         (gst_pad_can_link_filtered), (gst_pad_can_link),
3246         (gst_pad_use_fixed_caps), (gst_pad_get_fixed_caps_func),
3247         (gst_object_default_error), (gst_bin_add_many),
3248         (gst_bin_remove_many), (gst_element_populate_std_props),
3249         (gst_element_class_install_std_props), (gst_buffer_merge),
3250         (gst_buffer_stamp), (intersect_caps_func), (gst_pad_proxy_getcaps),
3251         (link_fold_func), (gst_pad_proxy_setcaps):
3252         * gst/gstutils.h:
3253         * gst/gstvalue.c: (gst_value_deserialize_string):
3254         * gst/parse/grammar.y:
3255         * gst/schedulers/gstbasicscheduler.c:
3256         (gst_basic_scheduler_cothreaded_chain),
3257         (gst_basic_scheduler_chain_recursive_add),
3258         (gst_basic_scheduler_pad_link):
3259         * gst/schedulers/gstoptimalscheduler.c:
3260         (get_group_schedule_function),
3261         (gst_opt_scheduler_state_transition),
3262         (gst_opt_scheduler_add_element), (element_get_reachables_func):
3263         * libs/gst/bytestream/bytestream.c:
3264         * libs/gst/dataprotocol/dataprotocol.c:
3265         (gst_dp_header_from_buffer):
3266         * po/nb.po:
3267         * po/ru.po:
3268         * tests/threadstate/threadstate2.c: (eos):
3269         * tools/gst-compprep.c: (main):
3270         * tools/gst-inspect.c: (print_field), (print_element_flag_info),
3271         (print_pad_info), (print_children_info):
3272         * tools/gst-launch.c: (idle_func), (main):
3273         * tools/gst-md5sum.c: (idle_func), (main):
3274         * tools/gst-xmlinspect.c: (print_element_info):
3275         First THREADED backport attempt, focusing on adding locks and
3276         making sure the API is threadsafe. Needs more work. More docs
3277         follow this week.
3278
3279 2005-02-24  Andy Wingo  <wingo@pobox.com>
3280
3281         * tests/bench-complexity.scm:
3282         * tests/complexity.gnuplot: New files, good for running complexity
3283         benchmarks.
3284
3285         * tests/Makefile.am:
3286         * tests/complexity.c: New test, sets up N elements, at each level
3287         teeing into M streams per element. Eeeenteresting.
3288
3289         * tests/mass_elements.gnuplot: gnuplot file for the mass_elements
3290         benchmark. Run as gnuplot mass_elements.gnuplot > foo.ps, after
3291         running bench-mass_elements.scm.
3292
3293         * tests/bench-mass_elements.scm: New script, runs mass_elements
3294         for various numbers of identities, outputting the results to a
3295         file. Requires guile 1.6. Just for testing.
3296
3297 2005-02-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3298
3299         * gst/schedulers/fairscheduler.c:
3300           compile with debug disabled
3301
3302 2005-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
3303
3304         * configure.ac:
3305           hunting season on 0.9 is now OPEN
3306
3307 2005-02-22  Stefan Kost  <ensonic@users.sf.net>
3308
3309         * docs/libs/tmpl/gstcontrol.sgml:
3310         * docs/libs/tmpl/gstdparam.sgml:
3311         * docs/libs/tmpl/gstdplinint.sgml:
3312         * docs/libs/tmpl/gstdpman.sgml:
3313         * docs/libs/tmpl/gstdpsmooth.sgml:
3314         * docs/libs/tmpl/gstunitconvert.sgml:
3315           more docs for the state of dparams
3316
3317 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3318
3319         * gst/gstelementfactory.c: (gst_element_factory_create):
3320         * gst/gstobject.c: (gst_object_init),
3321         (gst_object_set_name_default), (gst_object_set_name):
3322           name objects by default, not in gst_element_factory_create. Allows
3323           using elements created with g_object_new. (fixes #167283)
3324
3325 2005-02-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
3326
3327         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_log_default):
3328           make the time that debugging functions print relative to when
3329           gst_init was called
3330
3331 2005-02-18  Tim-Philipp Müller  <tim at centricular dot net>
3332
3333         * gst/gsttaginterface.c:
3334           Fix inline docs: tag setter vararg functions are NULL-terminated,
3335           GST_TAG_INVALID doesn't exist any more.
3336
3337 2005-02-18  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
3338
3339         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array):
3340         Allocate the 1 byte more memory that was forgotten!!!!!
3341         fixes memory corruption on 64bit platforms
3342
3343 2005-02-15  Stefan Kost  <ensonic@users.sf.net>
3344
3345         * docs/pwg/building-pads.xml:
3346         * docs/pwg/intro-basics.xml:
3347           fixed a few typos, relabeled introductionary list of types
3348         * docs/random/ensonic/dparams.txt:
3349           more notes abut dparam changes
3350         * libs/gst/control/dparam.c: (gst_dparam_attach):
3351         * libs/gst/control/dparammanager.c:
3352         * libs/gst/control/dparammanager.h:
3353           - many comments and notes on dparam implementation
3354           - new dparams are were not initialized to the default value
3355             from param spec
3356
3357 2005-02-14  Thomas Vander Stichele  <thomas at apestaart dot org>
3358
3359         submitted by: Peter Astakhov
3360
3361         * po/LINGUAS:
3362         * po/ru.po:
3363           adding Russian translation
3364
3365 2005-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
3366
3367         * configure.ac:
3368         * docs/gst/Makefile.am:
3369         * docs/libs/Makefile.am:
3370           make sure popt is added to gtk-doc flags.  Fixes #147782.
3371
3372 2005-02-09  Tim-Philipp Müller  <tim at centricular dot net>
3373
3374         * docs/faq/using.xml:
3375           Fix typo in FAQ (artssink => artsdsink)
3376
3377 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3378
3379         * tools/gst-launch.1.in:
3380           Fix typo (#166699).
3381
3382 2005-02-08  Tim-Philipp Müller  <tim at centricular dot net>
3383
3384         * docs/faq/using.xml:
3385           Add -v argument to fakesrc/fakesink gst-launch line,
3386           so that the promised output will actually show up.
3387
3388 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3389
3390         * gst/gstthread.c: (gst_thread_change_state):
3391           Implement state-change error handling (#166073).
3392
3393 2005-02-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3394
3395         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3396           Release interrupt after handling (#166250).
3397
3398 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3399
3400         * configure.ac:
3401           back to HEAD
3402
3403 === release 0.8.9 ===
3404
3405 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3406
3407         * NEWS:
3408         * RELEASE:
3409         * configure.ac:
3410           releasing 0.8.9, "Like Eating Glass"
3411
3412 2005-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
3413
3414         submitted by: Clytie Siddall
3415
3416         * po/vi.po: Added Vietnamese translation
3417
3418 2005-02-07  Thomas Vander Stichele  <thomas at apestaart dot org>
3419
3420         patch by: Tim Philipp-Müller
3421
3422         * configure.ac:
3423         * gst/gstpad.c:
3424           unref data when probe function returns FALSE.  Fixes #166362
3425
3426 2005-02-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3427
3428         * gst/gst.c: (gst_init_get_popt_table):
3429           Fix typo (#166269).
3430
3431 2005-02-04  Andy Wingo  <wingo@pobox.com>
3432
3433         * gst/gstelement.c (gst_element_get_compatible_pad_template): Fix
3434         the debugging on whether the caps are compatible.
3435
3436 2005-02-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3437
3438         * docs/manual/basics-elements.xml:
3439           Fix two typos.
3440
3441 2005-02-02  Wim Taymans  <wim@fluendo.com>
3442
3443         * gst/schedulers/gstoptimalscheduler.c: (remove_decoupled),
3444         (schedule_chain), (get_invalid_call), (chain_invalid_call),
3445         (loop_group_schedule_function), (gst_opt_scheduler_iterate):
3446         Remove some FIXMEs after analysing and commenting why they
3447         are not issues.
3448
3449 2005-02-02  Wim Taymans  <wim@fluendo.com>
3450
3451         * gst/schedulers/gstoptimalscheduler.c:
3452         (gst_opt_scheduler_class_init), (gst_opt_scheduler_init),
3453         (gst_opt_scheduler_finalize), (remove_decoupled), (schedule_chain),
3454         (get_invalid_call), (chain_invalid_call),
3455         (get_group_schedule_function), (loop_group_schedule_function),
3456         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
3457         (gst_opt_scheduler_state_transition),
3458         (gst_opt_scheduler_add_element),
3459         (gst_opt_scheduler_remove_element), (gst_opt_scheduler_interrupt),
3460         (gst_opt_scheduler_error), (gst_opt_scheduler_pad_link),
3461         (gst_opt_scheduler_pad_unlink), (gst_opt_scheduler_iterate),
3462         (gst_opt_scheduler_show):
3463         Added lock to protect scheduler data structures.
3464
3465 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3466
3467         * testsuite/threads/threadi.c: (cb_data):
3468           Fix buglet in test.
3469
3470 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3471
3472         * testsuite/threads/Makefile.am:
3473         * testsuite/threads/threadi.c: (cb_data), (cb_play), (main):
3474           On Wim's request, split the test in three separately-compiled
3475           tests that each test a very specific bug. Two of them still fail,
3476           will create bugs for those. threadi.c indicates why they fail.
3477
3478 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3479
3480         * gst/schedulers/gstoptimalscheduler.c:
3481         (get_group_schedule_function):
3482           Try to work with the threading mess that queue_link is.
3483
3484 2005-02-01  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3485
3486         * gst/gstbin.c: (gst_bin_remove_func):
3487           Explicitely make an element release locks in a group when being
3488           remove from a bin.
3489         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
3490           If there's no scheduler, always return immediately (similar to
3491           gst_element_interrupt).
3492
3493 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3494
3495         * gst/gstbin.c: (gst_bin_child_state_change_func):
3496           Remove a piece of code that could never be reached.
3497         * docs/gst/gstreamer-sections.txt:
3498         * gst/gstpad.c: (gst_pad_push), (gst_pad_pull),
3499         (gst_pad_call_get_function):
3500         * gst/gstpad.h:
3501         * testsuite/pad/Makefile.am:
3502           Fix #150546, enable tests.
3503
3504 2005-01-31  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3505
3506         * docs/pwg/advanced-types.xml:
3507           Fix description for buffer-frames=0.
3508         * docs/gst/tmpl/gstbin.sgml:
3509         * gst/gstbin.c: (gst_bin_child_state_change_func),
3510         (gst_bin_change_state), (gst_bin_change_state_norecurse):
3511         * gst/gstbin.h:
3512         * testsuite/threads/Makefile.am:
3513         * testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
3514         (cb_state), (cb_play), (main):
3515           Fix non-recursive state changes to *really* change the state
3516           of the object, and not just call parent_class->state_change.
3517           Fix a lot of lockups caused by this. Fixes #132775. Add test
3518           for the problem. Also enable test to show #142588 (fixed).
3519         * gst/gstthread.c: (gst_thread_change_state),
3520         (gst_thread_child_state_change):
3521           Don't exit the thread if we go to NULL and are inside thread
3522           context. Instead, return control to the main thread context
3523           and exit from there.
3524         * gst/gstelement.c: (gst_element_disable_threadsafe_properties):
3525           Don't unset virtual functions, since those may still be used.
3526           That's not necessarily correct, but suffices for now.
3527         * configure.ac:
3528         * testsuite/Makefile.am:
3529         * testsuite/pad/Makefile.am:
3530         * testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
3531         (gst_test_sink_base_init), (gst_test_sink_chain),
3532         (gst_test_sink_init), (main):
3533         * testsuite/pad/getnopush.c: (gst_test_src_class_init),
3534         (gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
3535         (main):
3536         * testsuite/pad/link.c: (gst_test_element_class_init),
3537         (gst_test_element_base_init), (gst_test_src_get),
3538         (gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
3539         (gst_test_filter_loop), (gst_test_filter_init),
3540         (gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
3541         (cb_error), (main):
3542           Add tests to show #150546. Pass, but should fail (currently
3543           disabled from the testsuite).
3544         * gst/gstscheduler.c: (gst_scheduler_dispose):
3545           Dereference child schedulers on dispose (#94464).
3546         * testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
3547           Fix typo.
3548         * testsuite/threads/thread.c: (main):
3549           Add more debug.
3550
3551 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3552
3553         * gst/gstpad.c: (gst_pad_push):
3554           Oops, revert previous commit, broke testsuite...
3555
3556 2005-01-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3557
3558         * gst/gstpad.c: (gst_pad_push):
3559           Add check that the pad on which the push is performed is not a
3560           get-based pad (#150546).
3561
3562 2005-01-28  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3563
3564         * gst/elements/gsttypefindelement.c:
3565         (gst_type_find_element_handle_event):
3566           Fix buffer pushing if stream EOSes during typefinding.
3567
3568 2005-01-28  Edward Hervey  <bilboed@bilboed.com>
3569
3570         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3571
3572         * gst/gstvalue.c: (gst_string_wrap):
3573           Allow NULL-strings as argument (#165365).
3574
3575 2005-01-27  Stephane Wirtel  <stephane.wirtel@belgacom.net>
3576
3577         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3578
3579         * gst/schedulers/faircothreads.c:
3580         (gst_fair_scheduler_cothread_queue_show):
3581           Fix build without debug enabled.
3582
3583 2005-01-26  Stefan Kost  <ensonic@users.sf.net>
3584
3585         * docs/gst/gstreamer-sections.txt:
3586         * docs/libs/gstreamer-libs-docs.sgml:
3587         * docs/libs/gstreamer-libs-sections.txt:
3588         * docs/libs/tmpl/gstcontrol.sgml:
3589         * docs/libs/tmpl/gstdparam.sgml:
3590         * docs/libs/tmpl/gstdplinint.sgml:
3591         * docs/libs/tmpl/gstdpman.sgml:
3592         * docs/libs/tmpl/gstdpsmooth.sgml:
3593         * docs/libs/tmpl/gstputbits.sgml:
3594         * docs/libs/tmpl/gstunitconvert.sgml:
3595         * libs/gst/control/dparam.c:
3596         * libs/gst/control/dparam.h:
3597         * libs/gst/control/dparammanager.c:
3598         (gst_dpman_add_required_dparam_callback),
3599         (gst_dpman_add_required_dparam_direct),
3600         (gst_dpman_add_required_dparam_array),
3601         (gst_dpman_remove_required_dparam), (gst_dpman_attach_dparam),
3602         (gst_dpman_get_dparam), (gst_dpman_get_dparam_type),
3603         (gst_dpman_get_manager)
3604           restructured DParam docs
3605
3606 2005-01-25  Tim-Philipp Müller  <tim at centricular dot net>
3607
3608         * gst-element-check.m4:
3609           Only check for gst-inspect if we haven't already
3610           found it in previous element check runs
3611
3612 2005-01-25  Stefan Kost  <ensonic@users.sf.net>
3613
3614         * docs/gst/Makefile.am:
3615         * docs/libs/Makefile.am:
3616           fixed install rules to treat style.css as optional
3617
3618 2005-01-24  Stefan Kost  <ensonic@users.sf.net>
3619
3620         * docs/gst/Makefile.am:
3621         * docs/libs/Makefile.am:
3622           install style.css along with docs
3623         * docs/gst/tmpl/gstbin.sgml:
3624         * docs/gst/tmpl/gstclock.sgml:
3625         * docs/gst/tmpl/gstdata.sgml:
3626         * docs/gst/tmpl/gstelement.sgml:
3627         * gst/gstbin.h:
3628         * gst/gstelement.c: (gst_element_class_init):
3629         * gst/gstelement.h:
3630           fixing incomplete docs
3631
3632 2005-01-24  Tim-Philipp Müller  <tim at centricular dot net>
3633
3634         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
3635           Don't unref seek event twice when fflush() fails
3636           
3637 2005-01-22  David Schleef  <ds@schleef.org>
3638
3639         * configure.ac: Add --disable-valgrind. (partial fix for #164890)
3640
3641 2005-01-21  Stefan Kost  <ensonic@users.sf.net>
3642
3643         * docs/gst/Makefile.am:
3644         * docs/libs/Makefile.am:
3645           added params for deprecation guards
3646         * gst/gst.c:
3647         * gst/gst.h:
3648         * gst/gsterror.c: (_gst_resource_errors_init),
3649         (_gst_stream_errors_init):
3650         * gst/gsterror.h:
3651           documented some more enums
3652
3653 2005-01-19  Jan Schmidt  <thaytan@mad.scientist.com>
3654         * gst/autoplug/gstspideridentity.c:
3655         Cosmetic fix - spider_find_peek should be static
3656         * gst/parse/parse.l:
3657         Applying fix for #164261
3658
3659 2005-01-18  Stefan Kost  <ensonic@users.sf.net>
3660
3661         * docs/gst/gstreamer-sections.txt:
3662         * docs/gst/tmpl/gstplugin.sgml:
3663         * docs/libs/gstreamer-libs-sections.txt:
3664         * docs/libs/tmpl/gstcontrol.sgml:
3665         * gst/gstbuffer.h:
3666         * gst/gsttag.h:
3667         * gst/gstvalue.c:
3668           added docs for the TAG defines
3669
3670 2005-01-18  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3671
3672         * gst/schedulers/gstoptimalscheduler.c: (schedule_group):
3673           Only unref entry if there is an entry.
3674
3675 2005-01-17  Wim Taymans  <wim@fluendo.com>
3676
3677         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
3678         (remove_from_group), (schedule_group), (normalize_group),
3679         (gst_opt_scheduler_iterate):
3680         Also ref/unref decoupled elements before iterating the
3681         group since they are not added to the list of elements.
3682
3683 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3684
3685         * docs/manual/highlevel-components.xml:
3686           Add subtitle/streamselection as new features to playbin.
3687
3688 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3689
3690         * docs/manual/manual.xml:
3691           Re-enable dataaccess docs (oops).
3692
3693 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3694
3695         * docs/pwg/advanced-types.xml:
3696         * docs/random/mimetypes:
3697           Add documentation on libsndfile types (#163309), by Steve Baker
3698           <steve@stevebaker.org>.
3699         * gst/gstelement.c: (gst_element_release_request_pad):
3700           If an element has no explicit function, just remove the pad.
3701
3702 2005-01-17  Luca Ognibene  <luogni@tin.it>
3703
3704         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3705
3706         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
3707           Fix memleak (#163801).
3708
3709 2005-01-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3710
3711         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link):
3712           I think this is actually more correct...
3713
3714 2005-01-16  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3715
3716         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3717           Another workaround for memory access while destroyed in callback.
3718           Please, someone with refcount knowledge, have a look at this.
3719
3720 2005-01-15  Thomas Vander Stichele  <thomas at apestaart dot org>
3721
3722         * docs/faq/faq.xml:
3723         * docs/faq/legal.xml:
3724           move the legal Q&A here
3725
3726 2005-01-14  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3727
3728         * gst/elements/gsttee.c: (gst_tee_getcaps), (gst_tee_link),
3729         (gst_tee_request_new_pad):
3730           Fix negotiation.
3731
3732 2005-01-14  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3733
3734         * docs/random/omega/caps2:
3735         * testsuite/caps/caps_strings:
3736           replace framerate aproximations by their real value
3737           (24000/1001, 30000/1001, 60000/1001)
3738           Partially fixes bug #164049
3739
3740 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3741
3742         * docs/gst/Makefile.am:
3743           don't fail on the stupid GstPoptOption
3744
3745 2005-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
3746
3747         * gst/gstpad.h:
3748         * gst/gstprobe.c:
3749           allow probes to work on ghost pads by realizing the pad
3750           probe debugging
3751
3752 2005-01-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3753
3754         * docs/gst/gstreamer-sections.txt:
3755         * docs/gst/tmpl/gstpad.sgml:
3756         * gst/gstpad.c: (gst_pad_set_active_recursive):
3757         * gst/gstpad.h:
3758           Add gst_pad_set_active_recursive().
3759
3760 2005-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
3761
3762         * docs/random/release:
3763           updates
3764         * gst/gst_private.h:
3765         * gst/gstinfo.c:
3766         * gst/gstobject.c:
3767           move deep_notify logging to a new category
3768         * gst/gstprobe.c:
3769         * gst/gstprobe.h:
3770           add stuff so bindings can wrap probes
3771
3772 2005-01-09  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3773
3774         * gst/gstplugin.c: (gst_plugin_load):
3775           Fix plugin loading if plugin/lib was already loaded. Fixes
3776           #163383
3777
3778 2005-01-09  Sebastien Cote  <sc5@hermes.usherb.ca>
3779
3780         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3781
3782         * gst/gstpluginfeature.c: (gst_plugin_feature_ensure_loaded):
3783           Protect plugin loading by a mutex so it's threadsafe. Fixes
3784           #163234.
3785
3786 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3787
3788         * gst/gstevent.c: (_gst_event_copy):
3789           Reference source object when copying events, since it'll be
3790           dereferenced on event dereferencing as well.
3791
3792 2005-01-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3793
3794         * docs/gst/gstreamer-sections.txt:
3795         * docs/gst/tmpl/gstevent.sgml:
3796         * gst/gstevent.c: (gst_event_new_filler_stamped),
3797         (gst_event_filler_get_duration):
3798         * gst/gstevent.h:
3799           Add two new functions for filler events (which are used to
3800           synchronize streams if one of them is not having any data
3801           for a while) without interrupting the actual data-stream.
3802           Basically a no-op.
3803         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
3804         (gst_queue_link_sink), (gst_queue_link_src),
3805         (gst_queue_change_state):
3806           Allow for renegotiation while filled. Required for stream
3807           switching while playing.
3808
3809 2005-01-08  Benjamin Otte  <otte@gnome.org>
3810
3811         * gst/gstelement.c: (gst_element_link_many):
3812           fix up g_return_if_fail's
3813         * po/LINGUAS:
3814         * po/de.po:
3815           add German translation, that was somehow not included
3816
3817 2005-01-08  Stephane LOEUILLET  <stephane.loeuillet@tiscali.fr>
3818
3819         * docs/random/mimetypes:
3820           add 2 more 4CC code for DV (HDTV and SDTV-LongPlay profiles)
3821           do not add them to riff-lib as they are not common
3822
3823 2005-01-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3824
3825         * gst/gstprobe.c: (gst_probe_dispatcher_dispatch):
3826           Check for existence of probe after performing the probe before
3827           re-accessing it to prevent segfaults caused by removal of the
3828           probe in the callback.
3829
3830 2005-01-05  David Schleef  <ds@schleef.org>
3831
3832         * testsuite/registry/Makefile.am:
3833         * testsuite/registry/gst-print-formats.c:
3834         (print_pad_templates_info), (print_element_list),
3835         (print_typefind_list), (list_sort_func), (get_typefind_mime_list),
3836         (g_list_uniqify), (get_pad_templates_info),
3837         (get_element_mime_list), (print_mime_list), (main): A little
3838         program that looks through the registry to find elements of
3839         a given type.  Not particularly interesting as a test, except
3840         that there's no other test covering the same area.
3841
3842 2005-01-05  David Schleef  <ds@schleef.org>
3843
3844         * tools/gst-launch.c: (idle_func), (fault_handler_sighandler),
3845         (fault_handler_sigaction), (fault_spin),
3846         (sigint_handler_sighandler), (play_handler), (main): Fix deadlocks
3847         in signal.h-type signal handlers by not calling forbidden functions,
3848         including gst_element_set_state().
3849
3850 2005-01-05  David Schleef  <ds@schleef.org>
3851
3852         * gst/gstvalue.h: Mark _gst_reserved[] as private
3853
3854 2005-01-05  David Schleef  <ds@schleef.org>
3855
3856         * gst/gstvalue.c: Fix doc build problem.
3857
3858 2005-01-05  David Schleef  <ds@schleef.org>
3859
3860         * gst/gstvalue.c: Add some documentation
3861
3862 2005-01-05  Stefan Kost  <ensonic@users.sf.net>
3863
3864         * docs/README:
3865           another shell oneliner for empty return value docs
3866         * gst/gstcaps.c:
3867         * gst/gstvalue.c:
3868         * libs/gst/control/dparam.c:
3869           more doc fixes (parameters and return values)
3870
3871 2005-01-05  Vincent Torri  <torri@iecn.u-nancy.fr>
3872
3873         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3874
3875         * gst/gstregistry.h:
3876         * gst/registries/gstxmlregistry.c:
3877           Fix macro's for Mingw (fixes #162276).
3878
3879 2005-01-04  Stefan Kost  <ensonic@users.sf.net>
3880
3881         * docs/README:
3882           quick shell oneliner to find undocumented members
3883         * docs/gst/tmpl/gstplugin.sgml:
3884         * docs/gst/tmpl/gstscheduler.sgml:
3885         * docs/gst/tmpl/gstthread.sgml:
3886           more enumtypes cleanup
3887         * gst/gsterror.h:
3888           activated documentation comments, now someone needs to document
3889           the enums :(
3890
3891 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3892
3893         * docs/manual/manual.xml:
3894           Add dataaccess part (doh!).
3895
3896 2005-01-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3897
3898         * docs/manual/advanced-autoplugging.xml:
3899           Fix typo (intiate -> initiate).
3900
3901 2005-01-02  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3902
3903         * docs/random/bbb/streamselection:
3904           Add some notes on how to handle multi-subtitle/-audio streams.
3905
3906 2004-12-30  Stefan Kost  <ensonic@users.sf.net>
3907
3908         * docs/gst/gstreamer-docs.sgml:
3909         * docs/gst/gstreamer-sections.txt:
3910         * docs/gst/tmpl/gstenumtypes.sgml:
3911         * docs/gst/tmpl/gsterror.sgml:
3912         * docs/gst/tmpl/gstevent.sgml:
3913         * docs/gst/tmpl/gstpad.sgml:
3914         * docs/gst/tmpl/gstpadtemplate.sgml:
3915         * docs/gst/tmpl/gstthread.sgml:
3916           removed gstenumtypes section from docs and put all the enums into
3917           their sections
3918
3919 2004-12-27  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
3920
3921         * gst/gstplugin.c:
3922           document gst_library_load a bit more (riff special case + return
3923           value if already loaded)
3924         * testsuite/bytestream/filepadsink.c:
3925           plugin name is 'gstbytestream', not 'bytestream'
3926
3927 2004-12-25  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3928
3929         * docs/random/bbb/subtitles:
3930           Add some first mind rumblings on proper subtitle support.
3931
3932 2004-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
3933
3934         * po/ca.po:
3935         * po/sv.po:
3936           updated translations
3937
3938 2004-12-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
3939
3940         * docs/manual/advanced-dataaccess.xml:
3941           Add section on how to use fakesrc/fakesink/identity in your
3942           application, plus section on how to embed plugins. Also mention
3943           probes.
3944         * docs/manual/appendix-checklist.xml:
3945         * docs/manual/appendix-debugging.xml:
3946         * docs/manual/appendix-gnome.xml:
3947         * docs/manual/appendix-integration.xml:
3948           Debug -> checklist, GNOME -> integration, add sections on Linux,
3949           KDE integration and add other things useful for application
3950           development.
3951         * docs/manual/manual.xml:
3952           Remove some fixmes, update some file pointers.
3953         * docs/pwg/appendix-checklist.xml:
3954           Fix typo.
3955         * docs/pwg/building-boiler.xml:
3956           Remove ugly header and add commented fixme.
3957         * docs/pwg/pwg.xml:
3958           Add fixme.
3959         * examples/manual/Makefile.am:
3960           Add example for added docs.
3961
3962 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3963
3964         * configure.ac:
3965           back to HEAD
3966
3967 === release 0.8.8 ===
3968
3969 2004-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
3970
3971         * NEWS:
3972         * RELEASE:
3973         * configure.ac:
3974           Releasing 0.8.8, "I'll Take Care Of You"
3975
3976 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3977
3978         * configure.ac:
3979           second prerelease
3980
3981 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3982
3983         patch by: Wim Taymans
3984
3985         * gst/gstbin.c:
3986           Fix for #159852 - make iterate emission threadsafe
3987
3988 2004-12-21  Thomas Vander Stichele  <thomas at apestaart dot org>
3989
3990         * docs/faq/cvs.xml:
3991           notes about new fdo account request
3992
3993 2004-12-20  Stefan Kost  <ensonic@users.sf.net>
3994
3995         * docs/gst/gstreamer-docs.sgml:
3996         * docs/gst/tmpl/gstenumtypes.sgml:
3997         * docs/gst/tmpl/gstplugin.sgml:
3998         * docs/libs/gstreamer-libs-docs.sgml:
3999           Added missing short docs. Added ids for navigation.
4000
4001 2004-12-19  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4002
4003         * docs/manual/advanced-autoplugging.xml:
4004         * docs/manual/advanced-schedulers.xml:
4005         * docs/manual/advanced-threads.xml:
4006           Rewrites. Remove cothreads, go a bit into opt specifically,
4007           document threads and their gotchas, and do some technical stuff
4008           on autoplugging plus add some working examples. Fixes #157395.
4009         * examples/manual/Makefile.am:
4010           Add typefind/autoplugger example (one that actually works).
4011           Remove queue example since it's a duplicate of the thread one.
4012
4013 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4014
4015         * gst/gstvalue.c: (gst_value_deserialize_string):
4016           use deprecated g_value_set_string_take_ownership to keep compatible
4017           with glib 2.2
4018
4019 2004-12-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4020
4021         * gst/gstvalue.c: (gst_value_deserialize_string):
4022           revert last patch, only dom a g_utf8_validate now before accepting
4023           the string - caps parsing strips " from strings so we can't rely on
4024           them
4025         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4026           disable a test that tested the above and comment it
4027
4028 2004-12-16  Steve Lhomme <steve.lhomme@free.fr>
4029
4030         Patch reviewed by David Schleef  <ds@schleef.org>
4031
4032         * win32/gstenumtypes.c: Update from gst/gstenumtypes.c (See
4033         bug #153882)
4034         * win32/gstenumtypes.h: same
4035
4036 2004-12-17  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4037
4038         * gst/gstpad.c: (gst_pad_query):
4039           Do query on realized pad, similar to how convert/send_event handle
4040           this. Also makes sense, since this pad belongs to the function to
4041           which this query will be sent. Fixes #158163.
4042
4043 2004-12-16  Christian Fredrik Kalager Schaller  <uraeus@gnome.org>
4044
4045         * docs/manual/appendix-programs.xml: fix pipeline to actually work
4046
4047 2004-12-16  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4048
4049         * docs/faq/general.xml: fix pipeline to actually work
4050
4051 2004-12-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4052
4053         * gst/gstvalue.c: (gst_value_deserialize_string):
4054           check that a simple string that gets deserialized does not contain
4055           invalid characters
4056         * testsuite/caps/value_serialize.c: (test_string_deserialization):
4057           remove a test that tested a wring behaviour
4058
4059 2004-12-16  Matt Kraai  <kraai@alumni.cmu.edu>
4060
4061         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4062
4063         * docs/manual/intro-motivation.xml:
4064           Fix typos.
4065
4066 2004-12-16  Edward Hervey  <bilboed@bilboed.com>
4067
4068         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4069
4070         * docs/gst/tmpl/gstprobe.sgml:
4071           Fix documentation of probe callback - it is supposed to return
4072           FALSE, not TRUE, to remove data from the stream (#159087).
4073
4074 2004-12-16  Daniel Gazard  <dany42@free.fr>
4075
4076         Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4077
4078         * gst/gstelementfactory.c: (gst_element_factory_create):
4079           Fix compile failure if compiling without libxml2 support (#149936).
4080
4081 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4082
4083         * docs/manual/advanced-autoplugging.xml:
4084         * docs/manual/highlevel-components.xml:
4085           Move spider from autoplugging to components. Autoplugging is for
4086           internals, not for solutions. ;-).
4087
4088 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4089
4090         * docs/random/ds/0.9-suggested-changes:
4091           Make note on device/location/uri property names.
4092
4093 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4094
4095         * docs/manual/advanced-autoplugging.xml:
4096         * docs/manual/advanced-clocks.xml:
4097         * docs/manual/advanced-interfaces.xml:
4098         * docs/manual/advanced-metadata.xml:
4099         * docs/manual/advanced-position.xml:
4100         * docs/manual/advanced-schedulers.xml:
4101         * docs/manual/advanced-threads.xml:
4102         * docs/manual/appendix-gnome.xml:
4103         * docs/manual/appendix-programs.xml:
4104         * docs/manual/appendix-quotes.xml:
4105         * docs/manual/autoplugging.xml:
4106         * docs/manual/basics-bins.xml:
4107         * docs/manual/basics-data.xml:
4108         * docs/manual/basics-elements.xml:
4109         * docs/manual/basics-helloworld.xml:
4110         * docs/manual/basics-init.xml:
4111         * docs/manual/basics-pads.xml:
4112         * docs/manual/basics-plugins.xml:
4113         * docs/manual/bins-api.xml:
4114         * docs/manual/bins.xml:
4115         * docs/manual/buffers-api.xml:
4116         * docs/manual/buffers.xml:
4117         * docs/manual/clocks.xml:
4118         * docs/manual/components.xml:
4119         * docs/manual/cothreads.xml:
4120         * docs/manual/debugging.xml:
4121         * docs/manual/dparams-app.xml:
4122         * docs/manual/dynamic.xml:
4123         * docs/manual/elements-api.xml:
4124         * docs/manual/elements.xml:
4125         * docs/manual/factories.xml:
4126         * docs/manual/gnome.xml:
4127         * docs/manual/goals.xml:
4128         * docs/manual/helloworld.xml:
4129         * docs/manual/helloworld2.xml:
4130         * docs/manual/highlevel-components.xml:
4131         * docs/manual/highlevel-xml.xml:
4132         * docs/manual/init-api.xml:
4133         * docs/manual/intro-basics.xml:
4134         * docs/manual/intro-motivation.xml:
4135         * docs/manual/intro-preface.xml:
4136         * docs/manual/intro.xml:
4137         * docs/manual/links-api.xml:
4138         * docs/manual/links.xml:
4139         * docs/manual/manual.xml:
4140         * docs/manual/motivation.xml:
4141         * docs/manual/pads-api.xml:
4142         * docs/manual/pads.xml:
4143         * docs/manual/plugins-api.xml:
4144         * docs/manual/plugins.xml:
4145         * docs/manual/programs.xml:
4146         * docs/manual/queues.xml:
4147         * docs/manual/quotes.xml:
4148         * docs/manual/schedulers.xml:
4149         * docs/manual/states-api.xml:
4150         * docs/manual/states.xml:
4151         * docs/manual/threads.xml:
4152         * docs/manual/typedetection.xml:
4153         * docs/manual/win32.xml:
4154         * docs/manual/xml.xml:
4155           Try 2. This time, include a short preface as a "general
4156           introduction", also add code blocks around all code samples
4157           so they get compiled. We still need a way to tell readers
4158           the filename of the code sample. In some cases, don't show
4159           all code in the documentation, but do include it in the generated
4160           code. This allows for focussing on specific bits in the docs,
4161           while still having a full test application available.
4162         * examples/manual/Makefile.am:
4163           Fix up examples for new ADM. Add several of the new examples that
4164           were either added or were missing from the build system.
4165         * examples/manual/extract.pl:
4166           Allow nameless blocks.
4167
4168 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4169
4170         * docs/manual/elements-api.xml:
4171         * docs/manual/helloworld.xml:
4172         * examples/manual/extract.pl:
4173           fix last example.  Add example of adding code blocks that are not
4174           shown in docbook output.
4175
4176 2004-12-15  Thomas Vander Stichele  <thomas at apestaart dot org>
4177
4178         * docs/manual/dynamic.xml:
4179         * docs/manual/elements-api.xml:
4180         * docs/manual/gnome.xml:
4181         * docs/manual/helloworld2.xml:
4182         * docs/manual/init-api.xml:
4183         * docs/manual/queues.xml:
4184         * docs/manual/threads.xml:
4185         * docs/manual/xml.xml:
4186         * examples/manual/extract.pl:
4187           Make it possible to extract example code from separate blocks.
4188           Should make Ronald happy.
4189
4190 2004-12-15  Wim Taymans  <wim@fluendo.com>
4191
4192         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4193         (remove_from_group), (group_elements_set_visited),
4194         (normalize_group), (gst_opt_scheduler_iterate):
4195         Fix bug where a flag was not updated on a decoupled entry point 
4196         because we were just checking the group element list and decoupled
4197         elements are not in that list..
4198
4199 2004-12-15  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4200
4201         * docs/manual/advanced-autoplugging.xml:
4202         * docs/manual/advanced-clocks.xml:
4203         * docs/manual/advanced-dparams.xml:
4204         * docs/manual/advanced-interfaces.xml:
4205         * docs/manual/advanced-metadata.xml:
4206         * docs/manual/advanced-position.xml:
4207         * docs/manual/advanced-schedulers.xml:
4208         * docs/manual/advanced-threads.xml:
4209         * docs/manual/appendix-debugging.xml:
4210         * docs/manual/appendix-gnome.xml:
4211         * docs/manual/appendix-programs.xml:
4212         * docs/manual/appendix-quotes.xml:
4213         * docs/manual/appendix-win32.xml:
4214         * docs/manual/autoplugging.xml:
4215         * docs/manual/basics-bins.xml:
4216         * docs/manual/basics-data.xml:
4217         * docs/manual/basics-elements.xml:
4218         * docs/manual/basics-helloworld.xml:
4219         * docs/manual/basics-init.xml:
4220         * docs/manual/basics-pads.xml:
4221         * docs/manual/basics-plugins.xml:
4222         * docs/manual/bins-api.xml:
4223         * docs/manual/bins.xml:
4224         * docs/manual/buffers-api.xml:
4225         * docs/manual/buffers.xml:
4226         * docs/manual/clocks.xml:
4227         * docs/manual/components.xml:
4228         * docs/manual/cothreads.xml:
4229         * docs/manual/debugging.xml:
4230         * docs/manual/dparams-app.xml:
4231         * docs/manual/dynamic.xml:
4232         * docs/manual/elements-api.xml:
4233         * docs/manual/elements.xml:
4234         * docs/manual/factories.xml:
4235         * docs/manual/gnome.xml:
4236         * docs/manual/goals.xml:
4237         * docs/manual/helloworld.xml:
4238         * docs/manual/helloworld2.xml:
4239         * docs/manual/highlevel-components.xml:
4240         * docs/manual/highlevel-xml.xml:
4241         * docs/manual/init-api.xml:
4242         * docs/manual/intro-motivation.xml:
4243         * docs/manual/intro-preface.xml:
4244         * docs/manual/intro.xml:
4245         * docs/manual/links-api.xml:
4246         * docs/manual/links.xml:
4247         * docs/manual/manual.xml:
4248         * docs/manual/motivation.xml:
4249         * docs/manual/pads-api.xml:
4250         * docs/manual/pads.xml:
4251         * docs/manual/plugins-api.xml:
4252         * docs/manual/plugins.xml:
4253         * docs/manual/programs.xml:
4254         * docs/manual/queues.xml:
4255         * docs/manual/quotes.xml:
4256         * docs/manual/schedulers.xml:
4257         * docs/manual/states-api.xml:
4258         * docs/manual/states.xml:
4259         * docs/manual/threads.xml:
4260         * docs/manual/typedetection.xml:
4261         * docs/manual/win32.xml:
4262         * docs/manual/xml.xml:
4263           First try at rewriting the ADM. Needs lotsamore work, but some
4264           parts might already be somewhat useful.
4265         * docs/pwg/advanced-interfaces.xml:
4266           Remove properties interface, it never actually existed (except for
4267           on my HD...).
4268
4269 2004-12-13  David Schleef  <ds@schleef.org>
4270
4271         * gst/gstpad.c: (gst_pad_set_explicit_caps): Allow caps to
4272         be NULL (bug #160220).
4273
4274 2004-12-13  David Schleef  <ds@schleef.org>
4275
4276         * configure.ac: remove all mmx stuff, because it's not used.
4277         * docs/random/ds/0.9-suggested-changes: additional notes
4278         * include/Makefile.am: we don't use these anymore
4279         * include/mmx.h: remove
4280         * include/sse.h: remove
4281
4282 2004-12-13  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4283
4284         * docs/random/mimetypes:
4285           Add FOURCC code for h264 codec (VSSH)
4286           Add alternate FOURCC codes for h263 related codecs
4287
4288 2004-12-10  Stefan Kost  <ensonic@users.sf.net>
4289
4290         * docs/manual/programs.xml:
4291           Added more gst-launch examples.
4292
4293 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4294
4295         * gst/gstqueue.c: (gst_queue_handle_src_query):
4296           Check for availability again.
4297
4298 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4299
4300         * gst/gstcaps.c: (gst_caps_compare_structures):
4301           Simple caps go first. This has the nice side-effect of fixing an
4302           obscure warning.
4303
4304 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4305
4306         * gst/gstversion.h.in:
4307           Protect header.
4308
4309 2004-12-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4310
4311         * gst/schedulers/gstoptimalscheduler.c:
4312         (gst_opt_scheduler_schedule_run_queue), (schedule_chain),
4313         (gst_opt_scheduler_get_wrapper):
4314           When we're recursing into a chain run, only run the directly
4315           related group, not all queued ones. This will fix a possible
4316           deadlock in chains with more than two groups.
4317
4318 2004-12-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4319
4320         * autogen.sh:
4321           remove patch if autopoint fails
4322
4323 2004-12-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4324
4325         * docs/gst/gstreamer-sections.txt:
4326           Document Thomas' addition, fix build, make Luis the sheriff happy.
4327
4328 2004-12-07  Thomas Vander Stichele  <thomas at apestaart dot org>
4329
4330         * gst/gstplugin.c:
4331         * gst/gstplugin.h:
4332           add accessor for version field
4333
4334 2004-12-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4335
4336         submitted by: Luca Ferretti <elle.uca@infinito.it>
4337
4338         * po/LINGUAS:
4339         * po/it.po:
4340           New tranlation added: Italian
4341
4342 2004-12-03  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4343
4344         * gst/gstpad.c: (gst_pad_is_negotiated),
4345         (gst_pad_get_negotiated_caps):
4346           GST_RPAD_* will only operate on a RealPad (it casts the pointer,
4347           it doesn't actually check the contents), so be sure to hand it
4348           a RealPad else we'll crash.
4349
4350 2004-12-03  Wim Taymans  <wim@fluendo.com>
4351
4352         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
4353         (gst_queue_link), (gst_queue_handle_src_query):
4354         Reverted to 1.110 until this makes the testsuite and various
4355         apps work.
4356
4357 2004-12-01  Christian Fredrik Kalager Schaller <christian@fluendo.com>
4358
4359         * docs/upload.mak: fix included CVS conflict strings
4360
4361 2004-12-01  William Jon McCann  <mccann@jhu.edu>
4362
4363         Reviewed by: Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4364
4365         * gst/gstelement.c: (gst_element_error_full):
4366           Use g_error_new_literal because error text may have
4367           percentage signs in it. Fixes #160019.
4368
4369 2004-12-01  Benjamin Otte  <otte@gnome.org>
4370
4371         * gst/elements/gstbufferstore.c:
4372         (gst_buffer_store_add_buffer_func):
4373           don't try to make subbuffers bigger than they can be. (fixes
4374           #159970)
4375
4376 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4377
4378         * docs/gst/gstreamer-sections.txt:
4379         * docs/gst/tmpl/gstvalue.sgml:
4380           Add new function to docs to fix build.
4381
4382 2004-11-29  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4383
4384         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
4385         * gst/gstpad.c: (_gst_pad_default_fixate_value),
4386         (_gst_pad_default_fixate_foreach):
4387         * gst/gstvalue.c: (gst_type_is_fixed), (gst_value_is_fixed):
4388         * gst/gstvalue.h:
4389           Deprecate _type_is_fixed, use _value_is_fixed instead, since
4390           in some cases (arrays), the fixedness depends on the content.
4391         * gst/gstqueue.c: (gst_queue_handle_src_query):
4392           Check for availability before doing something.
4393
4394 2004-11-29  Wim Taymans  <wim@fluendo.com>
4395
4396         * testsuite/threads/Makefile.am:
4397         * testsuite/threads/signals.c: (gst_test_get_type),
4398         (gst_test_class_init), (gst_test_init), (gst_test_dispose),
4399         (gst_test_set_property), (gst_test_get_property),
4400         (gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
4401         (gst_test_do_prop), (run_thread), (main):
4402         Added a bunch of testcases that show threadsafety bugs in glib.
4403
4404 2004-11-29  Stefan Kost  <ensonic@users.sf.net>
4405
4406         * docs/manual/programs.xml:
4407           Added a first batch of gst-launch examples, as provided by Ronald
4408           and others from the devel-mlist
4409
4410 2004-11-28  Benjamin Otte  <otte@gnome.org>
4411
4412         * gst/gstelement.c: (gst_element_negotiate_pads):
4413           simplify
4414         * gst/gstvalue.c: (gst_string_wrap), (gst_string_unwrap),
4415         (gst_value_serialize_string), (gst_value_deserialize_string):
4416           add unwrapping of previously wrapped strings. Fix bug in wrapping
4417           while at it.
4418         * testsuite/caps/value_serialize.c: (test1),
4419         (test_string_serialization), (test_string_deserialization), (main):
4420           add tests for string (de)serialization
4421
4422 2004-11-26  Wim Taymans  <wim@fluendo.com>
4423
4424         * testsuite/threads/159566.c: (object_deep_notify), (main):
4425         * testsuite/threads/Makefile.am:
4426         Added testsuite to show bug #159566
4427
4428 2004-11-25  Wim Taymans  <wim@fluendo.com>
4429
4430         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_change_state),
4431         (gst_thread_child_state_change), (gst_thread_main_loop):
4432         Ref the thread object in the GThread mainloop. Break out of the
4433         thread mainloop if it holds the last ref. This properly exits
4434         the threads when disposing the thread from its own context. It
4435         also avoids possible deadlocks in the dispose function.
4436
4437 2004-11-24  Martin Soto  <martinsoto@users.sourceforge.net>
4438
4439         * gst/gstqueue.c (gst_queue_link_sink): Grab the lock only when
4440         it is necessary to wait.
4441
4442 2004-11-24  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4443
4444         * docs/pwg/building-boiler.xml:
4445           Make description somewhat clearer.
4446
4447 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4448
4449         * docs/upload.mak:
4450           Apparently docs changed location on FDO's server.
4451
4452 2004-11-23  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4453
4454         * docs/pwg/appendix-checklist.xml:
4455           Add some random notes on things to check when writing an element.
4456           This list can be extended as people see fit.
4457
4458 2004-11-23  Martin Soto  <martinsoto@users.sourceforge.net>
4459
4460         * gst/gstqueue.c (gst_queue_init, gst_queue_link_sink)
4461         (gst_queue_link_src): Allow for renegotiating the caps of the sink
4462         pad. The queue will now wait until it is empty and forward the new
4463         caps to the source.
4464         * gst/gstbin.c (gst_bin_set_element_sched)
4465         (gst_bin_unset_element_sched): Make sure that all elements and
4466         links are registered and unregistered with the scheduler exactly
4467         once. This elaborates on a fix by Benjamin Otte, but
4468         guarantees that decoupled elements are also registered.
4469
4470 2004-11-11  Thomas Vander Stichele  <thomas at apestaart dot org>
4471
4472         * docs/manual/quotes.xml:
4473           add a quote
4474         * configure.ac:
4475         * gst/gst.c:
4476         * gst/gstinfo.c:
4477           add LIBDIR and move init message higher up so it's at the start
4478
4479 2004-11-08  Christian Fredrik Kalager Schaller  <christian@fluendo.com>
4480
4481         * gst/schedulers/Makefile.am: fix disted build fair by including .h file
4482         * gstreamer.spec.in: add fair
4483
4484 2004-11-08  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4485
4486         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4487         * gst/elements/gstidentity.c: (gst_identity_class_init):
4488           Use G_SIGNAL_TYPE_STATIC_SCOPE, patch by Christophe Fergeau
4489           <teuf@gnome.org> (#157263).
4490         * gst/elements/gsttypefindelement.c: (gst_type_find_element_init),
4491         (gst_type_find_handle_src_query):
4492           Subtract size of internally stored data from position queries.
4493
4494 2004-11-07  Martin Soto  <martinsoto@users.sourceforge.net>
4495
4496         * gst/schedulers/fairscheduler.c:
4497         * gst/schedulers/faircothreads.c:
4498         * gst/schedulers/faircothreads.h:
4499         New cothread based scheduler: Fair scheduler.
4500         * gst/schedulers/gthread-cothreads.h: 
4501         Add the standard #if around the whole file.
4502         Defining symbol GTHREAD_COTHREADS_NO_DEFINITIONS will now prevent
4503         compilation of the functions defined in this file. This is
4504         necessary to be able to use this file as a normal header.
4505         * gst/schedulers/Makefile.am: Add compiling support for fair
4506         scheduler.
4507         * docs/gst/Makefile.am (IGNORE_HFILES): Exclude internal fair
4508         scheduler cothreads layer from documentation generation.
4509
4510 2004-11-07  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4511
4512         * gst/autoplug/gstspideridentity.c:
4513         (gst_spider_identity_sink_loop_type_finding):
4514           Don't crash if that function is not implemented.
4515
4516 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4517
4518         * docs/pwg/advanced-types.xml:
4519           Another typo.
4520
4521 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4522
4523         * docs/pwg/intro-preface.xml:
4524           Hm, ok, so the brackets weren't really useful...
4525         * docs/pwg/other-ntoone.xml:
4526           Fix embarassing typo.
4527
4528 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4529
4530         * docs/pwg/intro-preface.xml:
4531           Rewrite preface.
4532
4533 2004-11-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4534
4535         * docs/pwg/advanced-scheduling.xml:
4536         * docs/pwg/advanced-tagging.xml:
4537         * docs/pwg/advanced-types.xml:
4538         * docs/pwg/building-boiler.xml:
4539         * docs/pwg/building-chainfn.xml:
4540         * docs/pwg/building-signals.xml:
4541         * docs/pwg/building-state.xml:
4542         * docs/pwg/building-testapp.xml:
4543         * docs/pwg/intro-basics.xml:
4544         * docs/pwg/other-manager.xml:
4545         * docs/pwg/other-source.xml:
4546           Typo fixes.
4547         * docs/pwg/other-manager.xml:
4548           Add some first content. No example code yet.
4549         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
4550           Remove double newlines.
4551
4552 2004-11-04  Wim Taymans  <wim@fluendo.com>
4553
4554         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4555         (remove_from_group), (normalize_group), (group_migrate_connected),
4556         (gst_opt_scheduler_iterate):
4557         * testsuite/schedulers/.cvsignore:
4558         * testsuite/schedulers/Makefile.am:
4559         * testsuite/schedulers/queue_link.c: (main):
4560         Added testcase for scheduler segfault.
4561         Fix scheduler segfault when removing a decoupled
4562         entry point as the last element from a group.
4563
4564 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4565
4566         * gst/gstmarshal.list: add missing marshaller, fixes build
4567
4568 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4569
4570         * docs/random/signal: added notes about using BOXED for GstBuffer
4571         signal marshallers, not POINTER
4572
4573 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4574
4575         * gst/elements/gstfakesink.c: (gst_fakesink_class_init):
4576         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): more
4577         POINTER=>BOXED changes to marshal GstBuffers
4578
4579 2004-11-03  Christophe Fergeau  <teuf@gnome.org>
4580
4581         * gst/elements/gstidentity.c: (gst_identity_class_init): GstBuffer is 
4582         a boxed type, marshal the signal with VOID__BOXED, not VOID__POINTER
4583
4584 2004-11-03  Stefan Kost  <ensonic@users.sf.net>
4585
4586         * docs/gst/gstreamer-sections.txt:
4587         * docs/gst/tmpl/gstcaps.sgml:
4588         * docs/gst/tmpl/gsterror.sgml:
4589         * docs/gst/tmpl/gstinfo.sgml:
4590         * docs/gst/tmpl/gstmacros.sgml:
4591         * docs/gst/tmpl/gstutils.sgml:
4592         * docs/random/ensonic/interfaces.txt:
4593         * gst/gstinfo.h:
4594           added some more docs, removed two obsolete defines
4595
4596 2004-11-02  Kjartan Maraas <as at gnome.org>
4597
4598         reviewed by: Wim Taymans, Ronald Bultje.
4599
4600         * gst/cothreads.c: (cothread_create):
4601         * gst/gstbin.c: (gst_bin_add_func), (gst_bin_remove_func),
4602         (gst_bin_child_state_change_func):
4603         * gst/gstbuffer.c: (gst_buffer_span):
4604         * gst/gstelement.c: (gst_element_get_index),
4605         (gst_element_get_event_masks), (gst_element_get_query_types),
4606         (gst_element_get_formats):
4607         * gst/gsterror.c: (_gst_core_errors_init),
4608         (_gst_library_errors_init), (_gst_resource_errors_init),
4609         (_gst_stream_errors_init):
4610         * gst/gstobject.c: (gst_object_default_deep_notify):
4611         * gst/gstpad.c: (gst_pad_get_event_masks),
4612         (gst_pad_get_internal_links_default):
4613         * gst/gstplugin.c: (gst_plugin_register_func),
4614         (gst_plugin_get_module):
4615         * gst/gststructure.c: (gst_structure_get_string),
4616         (gst_structure_get_abbrs), (gst_structure_from_abbr),
4617         (gst_structure_to_abbr):
4618         * gst/gstutils.c: (gst_print_element_args):
4619         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4620         (setup_group_scheduler), (gst_opt_scheduler_iterate):
4621         Aplied part of patch #157127: Cleanup of issues reported by 
4622         sparse.
4623         Also do not try to use cothreads when there is no cothread
4624         context yet.
4625
4626 2004-11-02  Sebastien Cote <sc5 at hermes.usherb.ca>
4627
4628         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4629         (gst_opt_scheduler_iterate):
4630         Applied patch #154061. Running a pipeline in which an element 
4631         calls GST_ELEMENT_ERROR in the chain function, the opt 
4632         scheduler doesn't unref the chain so it never gets freed.
4633
4634 2004-11-02  Wim Taymans  <wim@fluendo.com>
4635
4636         * gst/gststructure.c: (gst_structure_get_abbrs),
4637         (gst_structure_from_abbr), (gst_structure_to_abbr):
4638         Remove that ugly if-then thing in the code that converts
4639         between strings and types.
4640
4641 2004-11-02  Wim Taymans  <wim@fluendo.com>
4642
4643         * gst/gstscheduler.c: (gst_scheduler_add_element),
4644         (gst_scheduler_remove_element), (gst_scheduler_state_transition):
4645         Aplied clock distribution patch, this should fix bug
4646         #148787.
4647
4648 2004-10-27  Thomas Vander Stichele  <thomas at apestaart dot org>
4649
4650         Submitted by: Kjartan Maraas <kmaraas@broadpark.no>
4651
4652         * po/LINGUAS:
4653         * po/nb.po:
4654           Added Norwegian Bokmaal translation
4655
4656 2004-10-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4657
4658         * tools/gst-inspect.c: (print_signal_info):
4659           print signal arguments as pointers if they are
4660
4661 2004-10-22  Stefan Kost  <ensonic@users.sf.net>
4662
4663         * docs/pwg/building-boiler.xml:
4664           exchanged GTK_ macros with G_TYPE macros (as pointed out by mathrick)
4665
4666 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4667
4668         * gst/parse/parse.l:
4669         * testsuite/parse/parse1.c: (main):
4670         Since parse can do 'element name=a:b' make 'a:b.' work as
4671         well. 
4672         Added testcase to verify fix.
4673
4674 2004-10-19  Wim Taymans  <wim at fluendo dot com>
4675
4676         * tools/gst-inspect.c: (print_pad_info), (print_plugin_features):
4677         Use the realpad when printing the direction.
4678         Add extra \n when printing extensions of typefind factories.
4679
4680 2004-10-13  David Schleef  <ds@schleef.org>
4681
4682         * examples/manual/Makefile.am: $< isn't portable in Makefile
4683         rules.
4684
4685 2004-10-13  Stefan Kost  <ensonic@users.sf.net>
4686
4687         * docs/gst/tmpl/gstobject.sgml:
4688         * docs/gst/tmpl/gstplugin.sgml:
4689         * docs/gst/tmpl/gstpluginfeature.sgml:
4690         * docs/gst/tmpl/gstregistry.sgml:
4691         * docs/gst/tmpl/gstversion.sgml:
4692         * gst/gstbin.c:
4693           more api documentation
4694         * gst/gstplugin.c: (gst_plugin_register_func),
4695         (gst_plugin_check_file), (gst_plugin_load_file):
4696           better error signaling and logging
4697
4698 2004-10-11  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4699
4700         * gst/gstqueue.c: (gst_queue_init), (gst_queue_handle_src_query):
4701           Subtract current queue contents from position queries.
4702
4703 2004-10-11  Johan Dahlin  <johan@gnome.org>
4704
4705         * gst/gsturi.c (gst_uri_get_location): unescape string
4706         (gst_uri_construct): escape string.
4707
4708 2004-10-11  Benjamin Otte  <otte@gnome.org>
4709
4710         * gst/gstpad.c: (gst_pad_renegotiate), (gst_pad_try_set_caps),
4711         (gst_pad_try_set_caps_nonfixed):
4712           allow renegotiation of unconnected pads (as inside spider). Simply
4713           return OK if unconnected - mimic try_set_caps there.
4714
4715 2004-10-09  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4716
4717         * gst/gstbin.c: (gst_bin_sync_children_state):
4718           Add missing break.
4719
4720 2004-10-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
4721
4722         * gst/elements/gstfakesrc.c: (gst_fakesrc_get):
4723         Set element to EOS before sending EOS event
4724
4725 2004-10-08  Wim Taymans  <wim at fluendo dot com>
4726
4727         * gst/elements/gsttypefindelement.c:
4728         (gst_type_find_element_handle_event):
4729         Handle EOS events when doing the transition from
4730         typefind to data passing. This should fix the
4731         infinite loops in short files.
4732
4733 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4734
4735         * gst/gstthread.c: (gst_thread_change_state),
4736         (gst_thread_child_state_change):
4737         Make sure no iteration happens while performing
4738         the state change as it could mess up the internal
4739         consistency of the thread state.
4740
4741 2004-10-07  Wim Taymans  <wim at fluendo dot com>
4742
4743         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
4744         (gst_thread_change_state), (gst_thread_child_state_change):
4745         Do not try to grab the iterate lock in the state change method
4746         when we are in the same thread as the iterate or else we
4747         could deadlock. Some other cleanups.
4748
4749 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4750
4751         * configure.ac:
4752           bump nano to cvs
4753
4754 === release 0.8.7 ===
4755
4756 2004-10-06  Thomas Vander Stichele  <thomas at apestaart dot org>
4757
4758         * configure.ac:
4759         * NEWS:
4760         * RELEASE:
4761         * configure.ac:
4762           releasing 0.8.7, "A Cruise"
4763
4764 2004-10-06  Stephane Loeuillet  <stephane.loeuillet@tiscali.fr>
4765
4766         * docs/random/mimetypes:
4767         Add an entry for Sony ATRAC3 audio format with mime-type
4768         used by rmdemux et riff-read
4769
4770 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4771
4772         * gst/elements/gsttypefindelement.c: (stop_typefinding):
4773         Push the buffer store instead of clearing it in case that
4774         the stream is not seekable.
4775
4776 2004-10-06  Wim Taymans  <wim at fluendo dot com>
4777
4778         * gst/gstthread.c: (gst_thread_init), (gst_thread_change_state),
4779         (gst_thread_main_loop):
4780         Lock the iteration and the state change so that automatic
4781         negotiation and fixation does not happen at the same time
4782         as the in stream negotiation.
4783
4784 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4785
4786         * configure.ac:
4787           bump nano to cvs
4788
4789 === release 0.8.6 ===
4790
4791 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4792
4793         * configure.ac:
4794         * NEWS:
4795         * RELEASE:
4796         * configure.ac:
4797           releasing 0.8.6, "Narc"
4798
4799 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4800
4801         * configure.ac:
4802           prerel bump
4803
4804 2004-10-05  Thomas Vander Stichele  <thomas at apestaart dot org>
4805
4806         patch by: Steve Lhomme
4807
4808         * gst/elements/gstfakesrc.c:
4809         * gst/elements/gstidentity.c:
4810         * gst/gstthread.c:
4811           Fix for #153881
4812
4813 2004-10-01  Wim Taymans  <wim at fluendo dot com>
4814
4815         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc):
4816         Fix threadsafety of the crc checking function.
4817
4818 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4819
4820         patch by: Ronald Bultje
4821
4822         * gst/elements/gsttypefindelement.c: (stop_typefinding),
4823         (gst_type_find_element_handle_event),
4824         (gst_type_find_element_chain):
4825         * gst/elements/gsttypefindelement.h:
4826          #153657.
4827          Filter out discont event from seekable sources when typefind
4828          asks them to seek.  Fixes typefind with demuxers for
4829          avi, asf and matroska.
4830
4831 2004-09-26  Thomas Vander Stichele  <thomas at apestaart dot org>
4832
4833         * docs/gst/gstreamer-sections.txt:
4834         * gst/gstcaps.c:
4835         * gst/gstcaps.h:
4836         * gst/gstpad.c:
4837           Revert preferred caps: (#147789)
4838
4839 2004-09-19  Steve Lhomme  <steve.lhomme@free.fr>
4840
4841         * win32/dirent.c:
4842           fix a memory leak
4843
4844 2004-09-10  Thomas Vander Stichele  <thomas at apestaart dot org>
4845
4846         * configure.ac:
4847           bump for prerelease
4848
4849 2004-09-09  Thomas Vander Stichele  <thomas at apestaart dot org>
4850
4851         * docs/Makefile.am:
4852         * docs/manual/elements-api.xml:
4853           restructure so that common stuff is shown first
4854         * docs/manual/init-api.xml:
4855           convert to examples
4856         * docs/manual/manual.xml:
4857         * docs/manuals.mak:
4858         * docs/url.entities:
4859           link to API on the website, possibly override later in build
4860         * examples/manual/.cvsignore:
4861           ignore more
4862         * examples/manual/Makefile.am:
4863           add more examples
4864         * examples/manual/extract.pl:
4865           error out on failure
4866
4867 2004-09-08  Thomas Vander Stichele  <thomas at apestaart dot org>
4868
4869         * docs/gst/tmpl/gstthread.sgml:
4870         * docs/manual/init-api.xml:
4871         * examples/manual/Makefile.am:
4872           convert two code bits to examples
4873
4874 2004-09-06  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
4875
4876         * gst/gstelement.c: (gst_element_change_state):
4877           Well, actually, I was about to remove this insane assert when
4878           I noticed Wim already did that. A warning is nice so we can
4879           fix actual ugs (using --g-fatal-warnings and backtraces), so
4880           I added that instead.
4881
4882 2004-09-06  Wim Taymans  <wim@fluendo.com>
4883
4884         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
4885         (gst_element_threadsafe_properties_post_run),
4886         (gst_element_set_state), (gst_element_change_state):
4887         Added extra refcounting around various places. 
4888
4889 2004-09-06  Wim Taymans  <wim@fluendo.com>
4890
4891         * gst/gstpad.c: (gst_pad_link_call_link_functions):
4892         Fix debug info.
4893
4894 2004-09-06  Wim Taymans  <wim@fluendo.com>
4895
4896         * gst/schedulers/gstoptimalscheduler.c: (add_to_group),
4897         (remove_from_group):
4898         Some more debug info.
4899
4900 2004-09-03  Wim Taymans  <wim@fluendo.com>
4901
4902         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init),
4903         (gst_fakesrc_init), (gst_fakesrc_set_clock),
4904         (gst_fakesrc_set_property), (gst_fakesrc_get_property),
4905         (gst_fakesrc_get), (gst_fakesrc_change_state):
4906         * gst/elements/gstfakesrc.h:
4907         * gst/elements/gstidentity.c: (gst_identity_class_init),
4908         (gst_identity_init), (gst_identity_chain),
4909         (gst_identity_set_property), (gst_identity_get_property),
4910         (gst_identity_change_state):
4911         * gst/elements/gstidentity.h:
4912         Added datarate properties to limit the datarate.
4913
4914 2004-08-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4915
4916         * gst/autoplug/gstspider.c: (plugin_init):
4917           don't set a rank. We don't want to autoplug by inserting spiders.
4918
4919 2004-08-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4920
4921         * gst/autoplug/gstspider.c: (gst_spider_class_init),
4922         (gst_spider_identity_plug):
4923           add a template for spider's sink
4924         * gst/gst.c: (gst_register_core_elements):
4925           queue's rank should be NULL, we don't want spider to add it.
4926
4927 2004-08-18  David Schleef  <ds@schleef.org>
4928
4929         * docs/gst/Makefile.am: Remove --ignore-fail-on-non-empty (#150331)
4930         * docs/libs/Makefile.am: same
4931         * docs/gst/tmpl/gstxml.sgml: Remove GstXMLNs
4932         * docs/random/ds/0.9-planning: random additions
4933         * docs/random/ds/0.9-suggested-changes: same
4934         * gst/gstxml.h: remove vestigal GstXMLNs definition
4935
4936         Preferred caps: (#147789)
4937         * docs/gst/gstreamer-sections.txt: Add symbols
4938         * docs/gst/tmpl/gstcaps.sgml: Add symbols
4939         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
4940         (gst_caps_append), (gst_caps_copy_1), (gst_caps_intersect),
4941         (gst_caps_union), (gst_caps_save_thyself), (gst_caps_load_thyself),
4942         (gst_caps_get_preferred), (gst_caps_set_preferred),
4943         (gst_caps_get_structure_by_id), (gst_caps_prefer_foreach),
4944         (gst_caps_use_preferred): Handle caps preferences
4945         * gst/gstcaps.h: Add caps preferences
4946         * gst/gstpad.c: (gst_pad_link_get_preferred),
4947         (gst_pad_link_fixate), (gst_pad_link_call_link_functions),
4948         (gst_pad_renegotiate), (gst_pad_guess_preferred),
4949         (gst_pad_get_caps), (gst_pad_push):  Use caps preferences for
4950         negotiation.
4951
4952 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4953
4954         * gst/autoplug/gstspideridentity.c:
4955         (gst_spider_identity_request_new_pad):
4956         * gst/elements/gstaggregator.c: (gst_aggregator_base_init),
4957         (gst_aggregator_init):
4958         * gst/elements/gstfakesink.c: (gst_fakesink_base_init),
4959         (gst_fakesink_init):
4960         * gst/elements/gstfakesrc.c: (gst_fakesrc_base_init),
4961         (gst_fakesrc_init):
4962         * gst/elements/gstfdsink.c: (gst_fdsink_base_init),
4963         (gst_fdsink_init):
4964         * gst/elements/gstfdsrc.c: (gst_fdsrc_base_init), (gst_fdsrc_init):
4965         * gst/elements/gstfilesink.c: (gst_filesink_base_init),
4966         (gst_filesink_init):
4967         * gst/elements/gstfilesrc.c: (gst_filesrc_base_init),
4968         (gst_filesrc_init):
4969         * gst/elements/gstidentity.c: (gst_identity_base_init),
4970         (gst_identity_init):
4971         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
4972         (gst_multifilesrc_init):
4973         * gst/elements/gstpipefilter.c: (gst_pipefilter_base_init),
4974         (gst_pipefilter_init):
4975         * gst/elements/gststatistics.c: (gst_statistics_base_init),
4976         (gst_statistics_init):
4977         * gst/elements/gsttee.c: (gst_tee_base_init), (gst_tee_init):
4978         * gst/gstqueue.c: (gst_queue_base_init), (gst_queue_init):
4979           s/gst_pad_new/&_from_template/
4980           register pad templates in the base_init function
4981           add static pad template definitions
4982
4983 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
4984
4985         * testsuite/bytestream/gstbstest.c: (gst_bstest_init):
4986         * testsuite/dynparams/dparamstest.c: (gst_dptest_init):
4987         * testsuite/refcounting/pad.c: (main):
4988         * testsuite/refcounting/thread.c: (create_thread_ghostpads):
4989           s/gst_pad_new/&_from_template/
4990           prepare deprecation of gst_pad_new
4991
4992 2004-08-17  Thomas Vander Stichele  <thomas at apestaart dot org>
4993
4994         patch by: Luca Ognibene <skaboy81@virgilio.it>
4995
4996         * gst/gstcaps.c:
4997         * gst/gstelement.c:
4998         * gst/gstpad.c:
4999         * gst/gstxml.c:
5000           fix memleaks.  Fixes #150001
5001
5002 2004-08-17  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5003
5004         * docs/random/ds/0.9-suggested-changes:
5005           add notes - mostly about pad templates
5006
5007 2004-08-16  Steve Lhomme  <steve.lhomme@free.fr>
5008
5009         * win32/GStreamer.vcproj:
5010           temporary locale files are .gmo not .mo
5011
5012 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5013
5014         * configure.ac: bump nano to cvs
5015
5016 === release 0.8.5 ===
5017
5018 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5019
5020         * configure.ac:
5021           releasing 0.8.5, "Stuttgart"
5022         * NEWS:
5023         * RELEASE:
5024         * configure.ac:
5025         * docs/random/release:
5026           updates for release
5027
5028 2004-08-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5029
5030         patch by: Wim Taymans (wim@fluendo.com)
5031
5032         * gst/gstbuffer.c:
5033         * gst/gstindex.h:
5034         * libs/gst/dataprotocol/dataprotocol.c:
5035           copy KEY_UNIT and DELTA_UNIT flags correctly.  Fixes #150242
5036
5037 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5038
5039         * Makefile.am:
5040         * win32/MANIFEST:
5041           add win32 dir to the build.  Fixes #149981.
5042
5043 2004-08-13  Thomas Vander Stichele  <thomas at apestaart dot org>
5044
5045         * configure.ac:
5046           bump libtool versioning
5047         * gst/gststructure.c:
5048           mark function as static
5049         * po/af.po:
5050         * po/az.po:
5051         * po/ca.po:
5052         * po/cs.po:
5053         * po/en_GB.po:
5054         * po/fr.po:
5055         * po/nl.po:
5056         * po/sq.po:
5057         * po/sr.po:
5058         * po/sv.po:
5059         * po/tr.po:
5060         * po/uk.po:
5061           translations update
5062         * win32/README.txt:
5063           trademark protection
5064
5065 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5066
5067         * configure.ac:
5068           fix GST_ORIGIN
5069           set GST_PACKAGE to source, and distinguish between release and other
5070         * tools/gst-inspect.c:
5071           print out plugin an element factory is part of so we see this info
5072
5073 2004-08-12  Thomas Vander Stichele  <thomas at apestaart dot org>
5074
5075         * docs/gst/gstreamer-sections.txt:
5076         * docs/gst/tmpl/gstbuffer.sgml:
5077         * docs/gst/tmpl/gstschedulerfactory.sgml:
5078           reorder docs a little, make GstBuffer's more sensible.
5079         * gst/gstbuffer.h:
5080           API: added GST_BUFFER_FLAG_DELTA_UNIT
5081         * gst/gstscheduler.c:
5082           comment API addition
5083
5084 2004-08-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
5085
5086         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
5087           work with non-regular files that can be mmapped (like /dev/zero)
5088         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
5089           get rid of typefinds that require a seek when we can't seek instead
5090           of trying them over and over again
5091         * tools/gst-launch.c: (idle_func), (error_cb), (main):
5092           return non-zero failure value when the pipeline was interrupted or
5093           an error occurred
5094
5095 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5096
5097         * win32/config.h:
5098         * win32/GStreamer.vcproj:
5099           compile and install the locales
5100
5101 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5102
5103         * gst/gstvalue.c:
5104           fix a possible memory leak under Windows
5105
5106 2004-08-11  Steve Lhomme  <steve.lhomme@free.fr>
5107
5108         * win32/GStreamer.vcproj:
5109           fix a memory leak that occured under Windows
5110         * win32/gstreamer.def:
5111           add gst_scheduler_register
5112
5113 2004-08-11  Benjamin Otte  <otte@gnome.org>
5114
5115         * docs/gst/gstreamer-sections.txt:
5116         * gst/gstscheduler.c: (gst_scheduler_register):
5117         * gst/gstscheduler.h:
5118           API:
5119           add gst_scheduler_register shortcut similar to gst_element_register
5120         * gst/schedulers/entryscheduler.c: (plugin_init):
5121         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
5122         * gst/schedulers/gstoptimalscheduler.c: (plugin_init):
5123           use it
5124
5125 2004-08-10  Steve Lhomme  <steve.lhomme@free.fr>
5126
5127         * gst/gstvalue.h:
5128           fix a memory leak that occured under Windows
5129
5130 2004-08-10  Colin Walters  <walters@redhat.com>
5131
5132         * gst/registries/gstxmlregistry.c (gst_xml_registry_open_func):
5133         Don't use O_EXCL to open temporary registry.  It will prevent
5134         registry creation if a temporary one already exists, which
5135         is unnecessary.
5136
5137 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5138
5139         * docs/gst/gstreamer-sections.txt:
5140         * docs/gst/tmpl/gstvalue.sgml:
5141           remove some valuable stuff from the documentation due to the use of GST_EXPORT
5142
5143 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5144
5145         * win32/gstbytestream.vcproj:
5146         * win32/gstelements.vcproj:
5147         * win32/gstgetbits.vcproj:
5148         * win32/gst-inspect.vcproj:
5149         * win32/gst-launch.vcproj:
5150         * win32/gstoptimalscheduler.vcproj:
5151         * win32/GStreamer.vcproj:
5152         * win32/gst-register.vcproj:
5153         * win32/gstspider.vcproj:
5154           update the include and lib dirs to fit standard libraries as
5155           described in the Win32 manual
5156
5157 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5158
5159         * win32/config.h:
5160         * win32/gstversion.h:
5161           enable NLS again, push the version number for the coming 0.8.5 release
5162
5163 2004-08-09  Steve Lhomme  <steve.lhomme@free.fr>
5164
5165         * gst/gstvalue.h:
5166           export gst_type_XXX for windows DLLs
5167
5168 2004-08-09  Thomas Vander Stichele  <thomas at apestaart dot org>
5169
5170         * docs/faq/gst-uninstalled:
5171           fix PKG_CONFIG_PATH and PYTHONPATH
5172         * gst/schedulers/Makefile.am:
5173           cleanup
5174         * libs/gst/bytestream/bytestream.c:
5175           remove newline
5176         * po/LINGUAS:
5177         * po/sq.po:
5178           adding Albanian translation (Laurent Dhima)
5179         * po/cs.po:
5180           updated
5181
5182 2004-08-05  Thomas Vander Stichele  <thomas at apestaart dot org>
5183
5184         * po/ca.po:
5185         * po/sv.po:
5186           updated translations
5187
5188 2004-08-04  Benjamin Otte  <otte@gnome.org>
5189
5190         * tests/mass_elements.c: (main):
5191           allow specifying src and sink element explicitly, so I can test
5192           videotestsrc instead of fakesrc
5193
5194 2004-08-04  Benjamin Otte  <otte@gnome.org>
5195
5196         * gst/gststructure.c: (gst_structure_id_empty_new_with_size),
5197         (gst_structure_id_empty_new), (gst_structure_empty_new),
5198         (gst_structure_copy):
5199           add gst_structure_id_empty_new_with_size to allow preallocating
5200           value array sizes. Use this in gst_structure_copy to get rid of
5201           reallocs.
5202           don't do quark=>string=>quark when copying structures
5203
5204 2004-08-03  Steve Lhomme  <steve.lhomme@free.fr>
5205
5206         * docs/manual/win32.xml:
5207         * win32/README.txt:
5208           update documentation with the clean version of dependencies
5209
5210 2004-08-03  Benjamin Otte  <otte@gnome.org>
5211
5212         * gst/schedulers/entryscheduler.c:
5213         (gst_entry_scheduler_remove_element):
5214           fix for GST_DISABLE_DEBUG
5215         * tools/gst-launch.c: (print_tag):
5216           fixes for G_DISABLE_ASSERT
5217
5218 2004-08-03  Benjamin Otte  <otte@gnome.org>
5219
5220         * gst/gst.c: (gst_register_core_elements):
5221           fix for G_DISABLE_ASSERT
5222         * gst/gstinfo.c: (__gst_in_valgrind):
5223           add for GST_DISABLE_DEBUG
5224
5225 2004-08-03  Benjamin Otte  <otte@gnome.org>
5226
5227         * gst/parse/parse.l:
5228           fix for G_DISABLE_ASSERT
5229
5230 2004-08-03  Wim Taymans  <wim@fluendo.com>
5231
5232         * gst/gstbin.c: (gst_bin_get_type),
5233         (gst_bin_child_state_change_func):
5234         * gst/gstthread.c: (gst_thread_change_state):
5235         Backported some debug logging from a reverted patch
5236         Don't try to destroy the thread twice. Added some more
5237         debugging in GstThread. Unlock and signal even if we
5238         are in the thread context.
5239
5240 2004-08-03  Thomas Vander Stichele  <thomas at apestaart dot org>
5241
5242         * po/uk.po:
5243           updated translation
5244
5245 2004-07-30  David Schleef  <ds@schleef.org>
5246
5247         * gst/gstatomic_impl.h: Enable atomic code for x86_64
5248
5249 2004-07-29  David Schleef  <ds@schleef.org>
5250
5251         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test):
5252         Use GST_READ_GUINTxx_BE(), since it accesses unaligned memory.
5253
5254 2004-07-29  Thomas Vander Stichele  <thomas at apestaart dot org>
5255
5256         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5257         (gst_bin_add_func), (gst_bin_remove_func),
5258         (gst_bin_child_state_change), (gst_bin_child_state_change_func),
5259         (set_kid_state_func), (gst_bin_change_state), (gst_bin_set_state),
5260         (gst_bin_change_state_norecurse), (gst_bin_dispose),
5261         (gst_bin_sync_children_state):
5262         * gst/gstbin.h:
5263         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_release),
5264         (gst_thread_change_state):
5265         * testsuite/states/Makefile.am:
5266           revert state change patches as agreed so we can rework them
5267           gradually
5268
5269 2004-07-29  Benjamin Otte  <otte@gnome.org>
5270
5271         * libs/gst/control/Makefile.am:
5272           link to libgstreamer (fixes Debian bug 262019, see
5273           http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=262019 )
5274
5275 2004-07-29  Wim Taymans  <wim@fluendo.com>
5276
5277         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5278         (check_from_fraction_convert), (transform_test), (main):
5279         Make the test less pedantic about float roundoff errors.
5280
5281 2004-07-29  Benjamin Otte  <otte@gnome.org>
5282
5283         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file),
5284         (gst_filesrc_srcpad_event):
5285           make seek events to before start/after end of file not fail, but
5286           seek to start/end instead
5287         * testsuite/caps/fraction-convert.c: (check_from_double_convert):
5288           add more output
5289
5290 2004-07-29  Benjamin Otte  <otte@gnome.org>
5291
5292         * gst/gstpad.c: (gst_pad_set_explicit_caps):
5293           check that caps are fixed
5294         * gst/gstpad.c: (gst_pad_template_new):
5295           don't try to simplify caps, costs too much time on gst_init
5296         * gst/gstplugin.c: (gst_plugin_add_feature):
5297           G_ERROR if features are added twice
5298         * gst/gsttypefind.c: (gst_type_find_register):
5299         * gst/gstelementfactory.c: (gst_element_register):
5300           don't add features twice
5301         * docs/random/ds/0.9-suggested-changes:
5302           add note about possible gst_init optimization
5303
5304 2004-07-28  David Schleef  <ds@schleef.org>
5305
5306         * testsuite/elements/Makefile.am:
5307         * testsuite/elements/struct_i386.h:
5308         * testsuite/elements/struct_size.c: (main):  A little test
5309         to keep distcheck from working if someone changes a structure
5310         size accidentally.
5311
5312 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5313
5314         * docs/libs/Makefile.am:
5315         * docs/libs/gstreamer-libs-docs.sgml:
5316         * docs/libs/gstreamer-libs-sections.txt:
5317         * docs/libs/tmpl/gstbytestream.sgml:
5318         * docs/libs/tmpl/gstcontrol.sgml:
5319         * docs/libs/tmpl/gstdataprotocol.sgml:
5320         * docs/libs/tmpl/gstgetbits.sgml:
5321         * libs/gst/bytestream/Makefile.am:
5322         * libs/gst/bytestream/bytestream.c:
5323         * libs/gst/bytestream/bytestream.h:
5324         * libs/gst/control/Makefile.am:
5325         * libs/gst/dataprotocol/Makefile.am:
5326         * libs/gst/getbits/Makefile.am:
5327         * libs/gst/getbits/getbits.h:
5328           various doc and style fixes, adding bytestream to libs docs.
5329
5330 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5331
5332         * docs/gst/gstreamer-docs.sgml:
5333         * docs/libs/Makefile.am:
5334         * docs/libs/gstreamer-libs-docs.sgml:
5335         * docs/libs/gstreamer-libs-sections.txt:
5336         * libs/gst/control/dparam.c:
5337           more doc fixes.  gst-libs docs now build the same way as gst.
5338
5339 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5340
5341         * configure.ac:
5342         * testsuite/Makefile.am:
5343         * testsuite/bins/Makefile.am:
5344         * testsuite/caps/Makefile.am:
5345         * testsuite/cleanup/Makefile.am:
5346         * testsuite/clock/Makefile.am:
5347         * testsuite/debug/Makefile.am:
5348         * testsuite/dlopen/Makefile.am:
5349         * testsuite/dynparams/Makefile.am:
5350         * testsuite/elements/.cvsignore:
5351         * testsuite/elements/Makefile.am:
5352         * testsuite/enumcaps/Makefile.am:
5353         * testsuite/enumcaps/enumcaps.c:
5354         * testsuite/ghostpads/Makefile.am:
5355         * testsuite/indexers/Makefile.am:
5356         * testsuite/negotiation/Makefile.am:
5357         * testsuite/parse/Makefile.am:
5358         * testsuite/plugin/Makefile.am:
5359         * testsuite/refcounting/Makefile.am:
5360         * testsuite/schedulers/.cvsignore:
5361         * testsuite/states/Makefile.am:
5362         * testsuite/tags/Makefile.am:
5363         * testsuite/threads/Makefile.am:
5364           fold enumcaps into caps dir
5365           clean up Makefile.am's for testsuite
5366
5367 2004-07-28  Thomas Vander Stichele  <thomas at apestaart dot org>
5368
5369         * docs/gst/Makefile.am:
5370         * docs/libs/Makefile.am:
5371           clean up docs build.  Fixes needless rebuilding of template files.
5372
5373 2004-07-28  Wim Taymans  <wim@fluendo.com>
5374
5375         * gst/gstbin.c: (set_kid_state_func), (gst_bin_set_state):
5376         * gst/gstthread.c: (gst_thread_release), (gst_thread_set_state):
5377         Make sure that a bin state change tries to keep the children
5378         in sync. 
5379         Added debug logging to the thread.
5380
5381 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5382
5383         * win32/GStreamer.vcproj:
5384         * win32/gstreamer.def:
5385           more exports for the plugins
5386
5387 2004-07-27  Steve Lhomme  <steve.lhomme@free.fr>
5388
5389         * win32/gstgetbits.vcproj:
5390         * win32/gstgetbits.def:
5391         * win32/msvc71.sln:
5392           add support for the getbits plugin
5393
5394 2004-07-27  Wim Taymans  <wim@fluendo.com>
5395
5396         * gst/gstvalue.c: (gst_value_transform_double_fraction),
5397         (gst_value_transform_fraction_double), (_gst_value_initialize):
5398         * testsuite/caps/Makefile.am:
5399         * testsuite/caps/fraction-convert.c: (check_from_double_convert),
5400         (check_from_fraction_convert), (transform_test), (main):
5401         Added transform functions between double and fraction.
5402         Added testcase to verify transforms
5403
5404 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5405
5406         * win32/GStreamer.vcproj:
5407           rename GStreamer-0.8.lib to libgstreamer.lib
5408
5409 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5410
5411         * win32/gstelements.vcproj:
5412         * win32/gstoptimalscheduler.vcproj:
5413           fixes for the Release build
5414
5415 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5416
5417         * win32/config.h:
5418           update the version number
5419
5420 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5421
5422         * win32/GStreamer.vcproj:
5423           add gstinterface to the build
5424
5425 2004-07-26  Steve Lhomme  <steve.lhomme@free.fr>
5426
5427         * win32/gstreamer.def:
5428           add many definitions needed by plugins,
5429           GST_CAT_DEFAULT only available in the Debug build ?
5430
5431 2004-07-26  Thomas Vander Stichele  <thomas at apestaart dot org>
5432
5433         * gst/gstelement.c: (gst_element_set_eos_recursive):
5434           various whitespace fixes.
5435           doc fix, fixes #148497
5436
5437 2004-07-25  Benjamin Otte  <otte@gnome.org>
5438
5439         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
5440           don't delay links on the sink elements, it causes unnegotiated
5441           links.
5442         * gst/elements/gsttypefindelement.c:
5443         (gst_type_find_element_base_init):
5444           add our padtemplates, we indeed do have some.
5445         * gst/elements/gsttypefindelement.c:
5446         (gst_type_find_element_handle_event),
5447         (gst_type_find_element_chain):
5448           don't push data when typefinding failed.
5449         * gst/gstpad.c: (gst_pad_link_fixate):
5450           check that no fixate function returns empty caps.
5451         * gst/gstpad.c: (gst_pad_push):
5452           check that the link is negotiated before data gets pushed.
5453         * tools/gst-register.c: (main):
5454           don't assert (fixes #148283)
5455
5456 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5457
5458         * docs/gst/gstreamer-sections.txt:
5459         * docs/gst/tmpl/gstconfig.sgml:
5460           add GST_PLUGIN_EXPORT definition
5461
5462 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5463
5464         * gst/gstplugin.h:
5465         * gst/gstconfig.h.in:
5466         * win32/gstconfig.h:
5467         * win32/gstelements.def:
5468         * win32/gstelements.vcproj:
5469         * win32/gstoptimalscheduler.def:
5470         * win32/gstoptimalscheduler.vcproj:
5471         * win32/gstspider.def:
5472         * win32/gstspider.vcproj:
5473           remove unused .def files and export symbols using GST_PLUGIN_DEFINE
5474
5475 2004-07-25  Thomas Vander Stichele  <thomas at apestaart dot org>
5476
5477         * docs/gst/gstreamer-sections.txt:
5478           remove GST_CAT_DEFAULT because the type has changed
5479
5480 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5481
5482         * win32/gstbytestream.vcproj:
5483         * win32/gstelements.vcproj:
5484         * win32/gst-inspect.vcproj:
5485         * win32/gst-launch.vcproj:
5486         * win32/gstoptimalscheduler.vcproj:
5487         * win32/GStreamer.vcproj:
5488         * win32/gst-register.vcproj:
5489         * win32/gstspider.vcproj:
5490         * win32/msvc71.sln:
5491           Copy the files where needed after building, The testsuite will be
5492           built separately
5493
5494 2004-07-25  Steve Lhomme  <steve.lhomme@free.fr>
5495
5496         * win32/config.h:
5497         * win32/README.txt:
5498         * docs/manual/win32.xml:
5499         Fixed the plugin and GStreamer location
5500
5501 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5502
5503         * win32/gstreamer.def:
5504         More exports for the plugins
5505
5506 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5507
5508         * gst/gstinfo.h:
5509         Marc was right, we need to export literally GST_CAT_DEFAULT
5510
5511 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5512
5513         * win32/config.h:
5514         NLS crashes in gettext, disabled until this is solved
5515
5516 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5517
5518         * win32/gst-inspect.vcproj:
5519         * win32/gst-launch.vcproj:
5520         Should use NLS when available
5521
5522 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5523
5524         * gst/registries/gstxmlregistry.c:
5525         removing the file doesn't seem to be a good idea on Linux
5526
5527 2004-07-24  Steve Lhomme  <steve.lhomme@free.fr>
5528
5529         * gst/registries/gstxmlregistry.c:
5530         Remove the registry before renaming the tempfile (needed for Windows)
5531
5532 2004-07-23  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5533
5534         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init),
5535         (gst_multifilesrc_init), (gst_multifilesrc_set_property),
5536         (gst_multifilesrc_get_property), (gst_multifilesrc_get):
5537         * gst/elements/gstmultifilesrc.h:
5538         Added newmedia property so it generates newmedia events between each
5539         file when property is set, as well as fixed eos handling
5540
5541 2004-07-22  David Schleef  <ds@schleef.org>
5542
5543         * gst/gststructure.c: (gst_structure_id_empty_new),
5544         (gst_structure_empty_new):  Set type field correctly.
5545         * gst/gststructure.h: Check type field correctly.
5546         * testsuite/caps/Makefile.am:
5547         * testsuite/caps/structure.c: (test1), (main): Add a very small
5548         test for structures.
5549
5550 2004-07-22  David Schleef  <ds@schleef.org>
5551
5552         * docs/random/ds/0.9-suggested-changes: more comments
5553         * tools/gst-launch.c: (idle_func): Fix hard-to-translate string.
5554
5555 2004-07-22  Benjamin Otte  <otte@gnome.org>
5556
5557         * gst/gstelementfactory.c: (gst_element_register):
5558           set the factory in the class struct, so gst_element_get_factory
5559           actually works
5560         * gst/parse/grammar.y:
5561           set element to playing when it gets unlocked as we can't rely on the
5562           bin state - all elements in the bin state might still be locked in
5563           NULL)
5564
5565 2004-07-22  Benjamin Otte  <otte@gnome.org>
5566
5567         * gst/gstelement.c: (gst_element_set_state_func):
5568           make this a static function
5569
5570 2004-07-22  Wim Taymans  <wim@fluendo.com>
5571
5572         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
5573         (gst_opt_scheduler_pad_link):
5574         fix 147894-2 and the group_link problem.
5575
5576 2004-07-22  Wim Taymans  <wim@fluendo.com>
5577
5578         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5579         (handoff_identity), (main):
5580         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5581         (handoff_identity), (main):
5582         * testsuite/schedulers/Makefile.am:
5583         * testsuite/schedulers/group_link.c: (main):
5584         Show bug in scheduler when linking chain and loop based element 
5585         where the chain based element was not yet in a group.
5586
5587 2004-07-21  Benjamin Otte  <otte@gnome.org>
5588
5589         * gst/.cvsignore:
5590         * gst/autoplug/.cvsignore:
5591         * gst/elements/.cvsignore:
5592         * gst/indexers/.cvsignore:
5593         * libs/gst/bytestream/.cvsignore:
5594         * libs/gst/control/.cvsignore:
5595         * libs/gst/getbits/.cvsignore:
5596         * testsuite/states/.cvsignore:
5597         * testsuite/threads/.cvsignore:
5598           keep this up to date, since I seem to be the only one who cares
5599           about not missing files on commits (editor's note: no you don't,
5600           but feel free to change them at the time you add stuff instead
5601           of later on)
5602
5603 2004-07-21  Benjamin Otte  <otte@gnome.org>
5604
5605         * gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
5606         (gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
5607         (gst_bin_child_state_change_func), (set_kid_state_func),
5608         (gst_bin_set_state), (gst_bin_change_state_norecurse):
5609           make state changes work correctly and reentrant (so removing
5610           elements from bins during state changes of bins doesn't cause
5611           segfaults or even wrong states)
5612           add debugging category and debugging output to print children states
5613         * gst/gstbin.c: (gst_bin_dispose): 
5614           add some assertion checks
5615         * gst/gstbin.h:
5616         * gst/gstbin.c: (gst_bin_sync_children_state):
5617           deprecate this function - it just does gst_bin_set_state (bin,
5618           GST_STATE (bin)) 
5619         * testsuite/threads/queue.c: (main):
5620           don't use gst_bin_sync_children_state anymore
5621         * testsuite/states/Makefile.am:
5622         * testsuite/states/bin.c:
5623           test that the state changes of bins work as expected
5624         * gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
5625           some adjustments to change states correctly, too
5626         * gst/gstthread.c: (gst_thread_change_state):
5627           don't enable/disable "threadsafe" properties, they're unused and
5628           cause random segfaults
5629         * testsuite/threads/Makefile.am:
5630           the queue check randomly passes now, ignore it
5631
5632 2004-07-21  Benjamin Otte  <otte@gnome.org>
5633
5634         * gst/gstpad.c:
5635           check if data is NULL before outputting debug info. (fixes #145100)
5636
5637 2004-07-21  Benjamin Otte  <otte@gnome.org>
5638
5639         * gst/schedulers/entryscheduler.c:
5640         (gst_entry_scheduler_loop_wrapper),
5641         (gst_entry_scheduler_chain_wrapper),
5642         (gst_entry_scheduler_get_wrapper):
5643           reset the state when the cothread starts, so we don't get assertion
5644           failures on restarting of cothreads
5645
5646 2004-07-20  Benjamin Otte  <otte@gnome.org>
5647
5648         * gst/gstelement.c: (gst_element_link_pads_filtered):
5649           use correct sinkpad, if only sinkpad is specified, but not srcpad
5650           (fixes #147889)
5651         * gst/gstelement.c: (gst_element_set_state_func),
5652         (gst_element_change_state): ref/unref the element, signal handlers
5653         could get rid of the element otherwise
5654
5655 2004-07-20  Ronald Bultje  <rbultje@ronald.bitfreak.net>
5656
5657         * docs/random/ds/0.9-suggested-changes:
5658           Make note about renaming fixed-list to array.
5659         * gst/gstvalue.c: (gst_value_intersect_fixed_list),
5660         (_gst_value_initialize):
5661           Add array intersections.
5662         * testsuite/caps/intersect2.c: (main):
5663           Add test for array intersections.
5664
5665 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5666
5667         * configure.ac: back to cvs
5668
5669 === release 0.8.4 ===
5670
5671 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5672
5673         * configure.ac:
5674           releasing 0.8.4, "Paella"
5675           bump libtool versioning
5676
5677 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5678
5679         * po/LINGUAS:
5680         * po/ca.po:
5681           adding Catalan translation (Jordi Mallach)
5682
5683 2004-07-20  Wim Taymans  <wim@fluendo.com>
5684
5685         * testsuite/schedulers/147894-2.c: (queue_empty), (queue_filled),
5686         (handoff_identity), (main):
5687         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5688         (handoff_identity), (main):
5689         * testsuite/schedulers/Makefile.am:
5690         Added failing testcase for variant of #147894
5691
5692 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5693
5694         patch by: David Moore
5695
5696         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5697         (schedule_group), (gst_opt_scheduler_schedule_run_queue),
5698         (group_migrate_connected):
5699         * testsuite/schedulers/Makefile.am:
5700           fix for #142813 (Deadlock in optimal scheduler)
5701
5702 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5703
5704         patch by: Wim Taymans
5705
5706         * gst/schedulers/gstoptimalscheduler.c: (group_has_element),
5707         (gst_opt_scheduler_schedule_run_queue),
5708         (gst_opt_scheduler_get_wrapper), (get_group),
5709         (group_migrate_connected):
5710         * testsuite/schedulers/Makefile.am:
5711           fix for #147819 (Add some checks in the opt scheduler)
5712
5713 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5714
5715         patch by: Benjamin Otte
5716
5717         * gst/gstelementfactory.c: (__gst_element_details_set):
5718           fix for #147929: running gst-register in non-utf8 locale can cause
5719           invalid registry
5720
5721 2004-07-20  Thomas Vander Stichele  <thomas at apestaart dot org>
5722
5723         patch by: Wim Taymans
5724
5725         * gst/schedulers/gstoptimalscheduler.c: (group_num_elements),
5726         (group_has_element), (element_get_reachables_func),
5727         (group_migrate_connected):
5728           fix for #147894 (opt scheduler decoupled elements mismanagement)
5729         * testsuite/schedulers/Makefile.am:
5730           testsuite app now passes
5731
5732 2004-07-19  Wim Taymans  <wim@fluendo.com>
5733
5734         * testsuite/schedulers/147819.c: (handoff_identity1),
5735         (handoff_identity2), (main):
5736         * testsuite/schedulers/Makefile.am:
5737         Added testcase for bug 147819
5738
5739 2004-07-19  Wim Taymans  <wim@fluendo.com>
5740
5741         * testsuite/schedulers/147894.c: (queue_empty), (queue_filled),
5742         (handoff_identity), (main):
5743         * testsuite/schedulers/Makefile.am:
5744         Added testcase for bug 147894
5745
5746 2004-07-16  Wim Taymans  <wim@fluendo.com>
5747
5748         * testsuite/schedulers/142183-2.c: (handoff_identity), (main):
5749         * testsuite/schedulers/142183.c: (handoff_identity), (main):
5750         * testsuite/schedulers/Makefile.am:
5751         Added testsuite for bug 142183 in its two incarnations. Refcount
5752         is not increased for scheduled elements and threadsafe properties
5753         mutexes are not properly unlocked.
5754
5755 2004-07-16  Wim Taymans  <wim@fluendo.com>
5756
5757         * gst/schedulers/gstoptimalscheduler.c: (gst_opt_scheduler_init),
5758         (create_chain), (destroy_chain), (create_group), (destroy_group),
5759         (add_to_group), (merge_groups), (group_elements), (group_inc_link),
5760         (group_dec_link), (gst_opt_scheduler_pad_link),
5761         (group_inc_links_for_element), (group_migrate_connected):
5762         Call group_inc_link with the proper src->sink ordering -- 
5763         break this, and we break sort_chain. patch from wingo for bug
5764         147713.
5765         Partially revert patch 1.89. When adding a loop based element to 
5766         the scheduler, the links to other groups are automatically followed
5767         and incremented. This should not happen because the bin will call
5768         pad_link explicitly for those connection, resulting in them counted 
5769         twice. Results in assertion failure on pipeline cleanup.
5770
5771 2004-07-16  Wim Taymans  <wim@fluendo.com>
5772
5773         * testsuite/schedulers/143777-2.c: (main):
5774         * testsuite/schedulers/147713.c: (handoff_src), (handoff_sink),
5775         (main):
5776         * testsuite/schedulers/Makefile.am:
5777         Added cleanup code to testcase 143777-2.
5778         Added testcase to show bug 147713, does not really show the
5779         deadlock as I can't figure out how to trigger it, but it does
5780         demonstrate bad ordering in the scheduler.
5781
5782 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5783
5784         * gst/gstvalue.c: (gst_value_deserialize_fraction):
5785           change strndup to g_strndup.  Fixes #147707
5786
5787 2004-07-16  Thomas Vander Stichele  <thomas at apestaart dot org>
5788
5789         * po/af.po:
5790         * po/az.po:
5791         * po/cs.po:
5792         * po/en_GB.po:
5793         * po/fr.po:
5794         * po/nl.po:
5795         * po/sr.po:
5796         * po/sv.po:
5797         * po/tr.po:
5798         * po/uk.po:
5799           updated translations
5800
5801 2004-07-16  Benjamin Otte  <otte@gnome.org>
5802
5803         * gst/gstvalue.c: (gst_greatest_common_divisor):
5804           use ints and return ints, fractions only use ints, too, so this
5805           avoids accidently casting multiplications to unsigned
5806         (gst_value_lcopy_fraction): it's ints, not uint32
5807         (gst_value_set_fraction): disallow minint, multiplying and negation
5808           are broken with it
5809         (gst_value_fraction_multiply): fix to make large numbers work and get
5810         rid of the assumption that the multiplication of two ints fits an
5811         int64 - dunno if that's true for all systems
5812         * testsuite/caps/Makefile.am:
5813         * testsuite/caps/fraction-multiply-and-zero.c:
5814         (check_multiplication), (check_equal), (zero_test), (main):
5815           add tests for all the stuff above
5816         * testsuite/caps/value_compare.c: (test1):
5817           fix comment
5818         * tests/.cvsignore:
5819         * testsuite/caps/.cvsignore:
5820         * testsuite/debug/.cvsignore:
5821         * testsuite/dlopen/.cvsignore:
5822         * testsuite/states/.cvsignore:
5823           get up to date
5824
5825 2004-07-16  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5826
5827         * docs/manual/bins-api.xml:
5828         * docs/manual/factories.xml:
5829         * docs/manual/helloworld.xml:
5830         * docs/manual/links-api.xml: 
5831           fixes for out of date info, incorrect info and grammar
5832
5833 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5834
5835         * docs/manual/pads.xml:
5836         * docs/manual/pads-api.xml: grammar fix
5837
5838 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5839
5840         * docs/manual/pads-api.xml: typo + grammar fix
5841
5842 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5843
5844         * docs/gst/gstreamer-sections.txt:
5845           add new symbols
5846         * docs/gst/tmpl/gstelement.sgml:
5847         * docs/gst/tmpl/gstpad.sgml:
5848         * docs/gst/tmpl/gsttypes.sgml:
5849         * docs/gst/tmpl/gstvalue.sgml:
5850           update docs
5851         * gst/gststructure.c: (gst_structure_set_valist),
5852         (gst_structure_from_abbr), (gst_structure_to_abbr):
5853         * gst/gstvalue.c: (gst_value_compare_double), (gst_type_is_fixed),
5854         (gst_greatest_common_divisor), (gst_value_init_fraction),
5855         (gst_value_copy_fraction), (gst_value_collect_fraction),
5856         (gst_value_lcopy_fraction), (gst_value_set_fraction),
5857         (gst_value_get_fraction_numerator),
5858         (gst_value_get_fraction_denominator),
5859         (gst_value_fraction_multiply), (gst_value_serialize_fraction),
5860         (gst_value_deserialize_fraction),
5861         (gst_value_transform_fraction_string),
5862         (gst_value_transform_string_fraction),
5863         (gst_value_compare_fraction), (_gst_value_initialize):
5864         * gst/gstvalue.h:
5865           adding GstFraction GValue type, get/set, and multiply
5866         * testsuite/caps/Makefile.am:
5867         * testsuite/caps/fraction.c: (test), (main):
5868         * testsuite/caps/string-conversions.c: (main):
5869         * testsuite/caps/value_compare.c: (test1), (main):
5870           add regression tests for GstFraction
5871
5872 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5873         
5874         * docs/manual/init-api.xml: Grammar fix
5875
5876 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5877
5878         * docs/manual/states.xml: Fix inconsistent information
5879
5880 2004-07-15  Thomas Vander Stichele  <thomas at apestaart dot org>
5881
5882         * gst/gstelement.c: (gst_element_set_state):
5883         * gst/gstpad.c: (gst_pad_try_set_caps):
5884         * gst/gststructure.c:
5885         * gst/gstthread.c: (gst_thread_child_state_change):
5886         * gst/gstvalue.c: (gst_value_compare_double):
5887         * gst/gstvalue.h:
5888         * testsuite/parse/parse1.c: (main):
5889           debugging additions and style cleanups
5890
5891 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5892
5893         * docs/manual/states.xml: Grammar fix
5894
5895 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5896
5897         * docs/manual/pads.xml: Grammar fix
5898
5899 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5900
5901         * docs/manual/elements.xml: Fixed image reference
5902
5903 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5904
5905         * docs/manual/goals.xml: Grammar fix
5906
5907 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5908
5909         * docs/manual/motivation.xml:
5910         Bonobo is no longer "emerging" and added sentence regarding tcp plugins
5911
5912 2004-07-15  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
5913
5914         * docs/manual/motivation.xml: Fix spelling
5915
5916 2004-07-15  Benjamin Otte  <otte@gnome.org>
5917
5918         * gst/gstelement.h: 
5919           Don't GST_ERROR_OBJECT empty strings - Solaris doesn't like NULL
5920           strings.
5921         * gst/gstelement.c (gst_element_class_init):
5922           GError's are boxed, not objects
5923         * gst/gstmarshal.list:
5924           update list for the fixed error signal
5925
5926 2004-07-14  Andy Wingo  <wingo@pobox.com>
5927
5928         * gst/gsttag.c: Add a tag merge func for pointers. The header was
5929         there all along, but the function wasn't. (guile-gstreamer's build
5930         system uses the address of the function -- I wasn't actually
5931         trying to use this.)
5932
5933 2004-07-14  Andy Wingo  <wingo@pobox.com>
5934
5935         * gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
5936         as gst_pad_proxy_pad_link) just link to every other pad when they
5937         are called. In the case where the graph has cycles, this will mean
5938         that a call to try_set_caps will recurse. Allow this recursion
5939         and return OK, while we wait for the first try_set_caps to give a
5940         proper return value.
5941         (gst_pad_link_call_link_functions): Since this function is the
5942         only one to set the NEGOTIATING flag on a pad, if the flag is set
5943         it means that the link functions have indirectly recursed. If this
5944         happens, error out to avoid infinite recursion and an eventual
5945         SEGV.
5946         (gst_real_pad_class_init): Remove a crufty GtkObject comment.
5947         (gst_pad_proxy_getcaps): Intersect the result with the template
5948         caps to ensure that the return value is valid.
5949
5950 2004-07-14  Andy Wingo  <wingo@pobox.com>
5951
5952         * gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
5953         one refcount, the calling function is the owner of the buffer.
5954
5955 2004-07-14  Wim Taymans  <wim@fluendo.com>
5956
5957         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5958         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5959         Fix stupid warning when an element is to be migrated but
5960         is already migrated.
5961
5962 2004-07-14  Wim Taymans  <wim@fluendo.com>
5963
5964         * gst/schedulers/gstoptimalscheduler.c: (group_dec_link),
5965         (gst_opt_scheduler_pad_link), (group_migrate_connected):
5966         Make sure that a single non-loop-based element does not 
5967         end up in a group. This fixes the testsuite again.
5968
5969 2004-07-14  Wim Taymans  <wim@fluendo.com>
5970
5971         * gst/schedulers/gstoptimalscheduler.c: (create_group),
5972         (add_to_group), (merge_groups), (schedule_group),
5973         (gst_opt_scheduler_get_wrapper), (group_elements),
5974         (group_dec_link), (gst_opt_scheduler_pad_link),
5975         (group_migrate_connected), (gst_opt_scheduler_pad_unlink),
5976         (gst_opt_scheduler_iterate):
5977         move isolated groups to a new chain.
5978         Emit a warning instead of segfaulting in some error cases.
5979         Fix a bug where the link count between groups was not calculated 
5980         correctly. Fixes #144510.
5981
5982 2004-07-13  Steve Lhomme  <steve.lhomme@free.fr>
5983         * gst/elements/gstfilesrc.c:
5984           Binary files support under Windows now OK
5985       
5986 2004-07-13  Benjamin Otte  <otte@gnome.org>
5987
5988           compatibility fixes for Solaris 8/gcc 2.95
5989         * configure.ac:
5990           include libintl libs in LDFLAGS
5991         * gstvalue.c (gst_value_deserialize_buffer):
5992           cast isxdigit stuff to int to silence compiler warning
5993
5994 2004-07-12  Benjamin Otte  <otte@gnome.org>
5995
5996         * gst/gsttypes.h:
5997           get rid of GST_O_READONLY, GST_FILE_MODE_READ and
5998           GST_FILE_MODE_WRITE, I don't want them in the exported headers. It
5999           just causes support madness
6000         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
6001           make it work without this
6002         * gst/indexers/gstfileindex.c: (_file_index_id_save_entries),
6003         (gst_file_index_commit):
6004           glib IO channels don't want binary mode
6005         * testsuite/bytestream/filepadsink.c: (main):
6006         * testsuite/bytestream/test1.c: (read_param_file):
6007           use "rb" instead of GST_FILE_MODE_READ, it works on POSIX systems
6008
6009 2004-07-12  Benjamin Otte  <otte@gnome.org>
6010
6011         * gst/gstelement.c: (gst_element_class_init),
6012         (gst_element_set_state), (gst_element_set_state_func):
6013           virutalize gst_element_set_state, use set_state member in class
6014           struct that was already added in 0.7 for this.
6015         * gst/gstbin.c: (gst_bin_foreach), (set_kid_state_func), 
6016         (gst_bin_change_state):
6017           make gst_bin_foreach works similar to other foreach functions, plug
6018           memleaks in it. Make functions using it work with the new approach.
6019           Document gst_bin_foreach, so it can be exported if we want to
6020         * gst/gstbin.c: (gst_bin_class_init), (gst_bin_set_state):
6021           use virtualized set_state to make set_state on bins set the state of
6022           all its children.
6023
6024 2004-07-12  Benjamin Otte  <otte@gnome.org>
6025
6026         * configure.ac:
6027           require valgrind >= 2.1 (fixes Gentoo bug 53967, see
6028           http://bugs.gentoo.org/show_bug.cgi?id=53967)
6029         * gst/gstpad.c: (gst_pad_alloc_buffer):
6030           allow buffer_alloc functions to return NULL and allocate a normal
6031           buffer in that case
6032
6033 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6034         * gst/elements/gstfilesink.c:
6035         * gst/elements/gstfilesrc.c:
6036         * gst/indexers/gstfileindex.c:
6037         * gst/gsttypes.h:
6038         * testsuite/bytestream/filepadsink.c:
6039         * testsuite/bytestream/test1.c:
6040           Handle binary files under Windows
6041
6042 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6043         * docs/manual/win32.xml:
6044         * win32/config.h:
6045         * win32/gst-register.vcproj:
6046         * win32/gstreamer.def:
6047           Update to another gettext public build
6048
6049 2004-07-12  Steve Lhomme  <steve.lhomme@free.fr>
6050         * gst/gstplugin.c:
6051           Fix an impossible C syntax
6052         * win32/config.h:
6053           Disable i18n under Windows for the moment
6054         * win32/gst-register.vcproj:
6055           Use this configuration
6056
6057 2004-07-12  Jan Schmidt  <thaytan@mad.scientis.com>
6058         * docs/manual/quotes.xml:
6059           Keep the quotes file alive
6060         * docs/random/ds/0.9-suggested-changes:
6061           Add the suggestion of including a 'rowstride' as part of video
6062           format caps
6063
6064 2004-07-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6065
6066         * gst/gstelement.c: (gst_element_set_state),
6067         (gst_element_change_state):
6068           d'oh.  Set PENDING state correctly before forcing bin to change.
6069         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6070         (gst_structure_parse_fixed_list):
6071         * gst/schedulers/gstoptimalscheduler.c:
6072         (gst_opt_scheduler_state_transition):
6073         * testsuite/states/parent.c: (main):
6074           remove comment now that it's fixed.
6075
6076 2004-07-11  Benjamin Otte  <otte@gnome.org>
6077
6078         * gst/gstclock.h:
6079           GST_SECOND shouldn't cause a conversion to unsigned.
6080         * testsuite/clock/.cvsignore:
6081         * testsuite/clock/Makefile.am:
6082         * testsuite/clock/signedness.c: (main):
6083           make sure it never will again
6084
6085 2004-07-11  Andy Wingo  <wingo@pobox.com>
6086
6087         * gst/gstbin.c (gst_bin_add_func): If we're adding an element
6088         whose state is higher than the bin state, raise the bin state to
6089         ensure that bin state := highest child state.
6090         
6091 2004-07-11  Andy Wingo  <wingo@pobox.com>
6092
6093         * gst/gstbin.c (gst_bin_foreach): New static function. Calls a
6094         procedure on the children of a bin. Assumes that the procedure can
6095         change the set of children.
6096         (set_kid_state_func): New static function.
6097         (gst_bin_change_state): Use gst_bin_foreach to call
6098         set_kid_state_func. Fixes a bug: if a child had a state-change
6099         handler that removes it from the bin, there would be a segfault.
6100         Hopefully it should also work in the case where the state-change
6101         handler on one child adds or removes other children. In any case,
6102         fixes should go to gst_bin_foreach.
6103
6104 2004-07-10  Thomas Vander Stichele  <thomas at apestaart dot org>
6105
6106         * gst/gstelement.c: (gst_element_set_state):
6107           compatibility fix for latest plugins release.  Change loop back
6108           to while {}
6109
6110 2004-07-09  Wim Taymans  <wim@fluendo.com>
6111
6112         * gst/gstbin.c: (gst_bin_remove), (gst_bin_dispose):
6113         * gst/gstthread.c: (gst_thread_dispose), (gst_thread_catch),
6114         (gst_thread_main_loop):
6115         Since remove is virtual in GstBin we must not assume the 
6116         elements GList to have anothing useful.
6117         Add some more logging to GstThread and be a bit more paranoid
6118         when resetting the scheduler.
6119         Set the state of the bin to NULL before removing the children.
6120
6121 2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6122
6123         * testsuite/threads/Makefile.am:
6124         * testsuite/threads/threadg.c:
6125           added test to check if problem when removing all elements from a
6126           GstThread before setting GstThread state to NULL
6127
6128 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6129
6130         * docs/gst/tmpl/gstelement.sgml:
6131         * docs/gst/tmpl/gsttypes.sgml:
6132         * gst/gstbin.c: (gst_bin_change_state):
6133         * gst/gstelement.c: (gst_element_set_state),
6134         (gst_element_change_state):
6135           rework so that for bins we try to set the state on all children
6136           as well even if the bin is in the correct state already.
6137           change while to do so at least one iteration is done.
6138           For regular elements, we fall back to the previous behaviour for
6139           now since we first need a new plugins release.
6140         * testsuite/states/parent.c: (main):
6141           test for this case
6142           Fixes #123774
6143
6144 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6145
6146         * gst/gstqueue.c: (gst_queue_class_init), (gst_queue_finalize),
6147         (gst_queue_chain), (gst_queue_get), (gst_queue_handle_src_event),
6148         (gst_queue_release_locks), (gst_queue_change_state),
6149         (gst_queue_set_property):
6150           add proper lock debugging.  Change dispose to finalize, since
6151           we're freeing mutexes and other stuff which should happen only once.
6152
6153 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6154
6155         * docs/gst/tmpl/gstelement.sgml:
6156         * docs/gst/tmpl/gstplugin.sgml:
6157         * docs/gst/tmpl/gsttypes.sgml:
6158         * docs/pwg/building-state.xml:
6159         * gst/elements/gstfakesrc.c: (gst_fakesrc_change_state):
6160         * gst/gstelement.c: (gst_element_change_state):
6161         * gst/gstthread.c: (gst_thread_change_state):
6162           catch wrong state changes in element base class.
6163
6164 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6165
6166         * gst/gstinfo.h:
6167           clean up layout a little.
6168
6169 2004-07-09  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6170
6171         * configure.ac:
6172         * testsuite/Makefile.am:
6173         * testsuite/states/Makefile.am:
6174         * testsuite/states/parent.c: (main):
6175           re-enable states testsuite dir.  Add test for state changes and
6176           parent behaviour
6177
6178 2004-07-09  Wim Taymans  <wim@fluendo.com>
6179
6180         * gst/schedulers/gstoptimalscheduler.c:
6181         (gst_opt_scheduler_pad_link), (group_elements_set_visited),
6182         (element_get_reachables_func), (element_get_reachables),
6183         (debug_element), (rechain_group), (group_migrate_connected),
6184         (gst_opt_scheduler_pad_unlink):
6185         Do not try to migrate decoupled elements to a new group since
6186         they are not added to groups.
6187
6188 2004-07-08  Benjamin Otte  <otte@gnome.org>
6189
6190         * gst/gstelement.c: (gst_element_error_func):
6191           make reentrant (= allow removing elements in error handler)
6192
6193 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6194
6195         * gst/gstpad.c: (gst_pad_event_default_dispatch),
6196         (gst_pad_send_event), (gst_pad_call_chain_function):
6197           events sent to elements below PAUSED cannot be handled, so
6198           don't try to
6199
6200 2004-07-08  Wim Taymans  <wim@fluendo.com>
6201
6202         * gst/schedulers/gstoptimalscheduler.c:
6203         (chain_recursively_migrate_group), (create_group),
6204         (schedule_group), (gst_opt_scheduler_pad_link),
6205         (group_elements_set_visited), (element_get_reachables_func),
6206         (element_get_reachables), (group_can_reach_group), (debug_element),
6207         (rechain_group), (group_migrate_connected),
6208         (gst_opt_scheduler_pad_unlink):
6209         * testsuite/schedulers/Makefile.am:
6210         Implemented group splitting and rechaining.
6211         Fixes 143777 and 143777-2 in the testsuite.
6212
6213 2004-07-08  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6214
6215         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6216           extra debugging
6217         * gst/gstevent.h:
6218         * gst/gstinfo.c: (gst_debug_log_default):
6219           print time nicely.  add thread pointer until someone figures out
6220           a completely portable way of getting at thread id's.
6221         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_try),
6222         (_invent_event), (gst_pad_pull), (gst_pad_event_default_dispatch),
6223         (gst_pad_call_chain_function):
6224           extra debugging
6225         * gst/schedulers/gstoptimalscheduler.c:
6226         (get_group_schedule_function), (loop_group_schedule_function),
6227         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
6228         (pad_clear_queued), (gst_opt_scheduler_iterate):
6229           rename BUFPEN and friends to DATAPEN since that's what they are.
6230
6231 2004-07-07  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6232
6233         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_chain):
6234         * gst/gstbuffer.h:
6235         * gst/gstpad.c:
6236           cleanups and debugging
6237
6238 2004-07-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
6239
6240         * configure.ac:
6241         * gst/gstvalue.c: (gst_value_compare_enum),
6242         (gst_value_serialize_enum), (gst_value_deserialize_enum),
6243         (gst_value_can_compare), (gst_value_compare):
6244         * testsuite/Makefile.am:
6245         * testsuite/enumcaps/Makefile.am:
6246         * testsuite/enumcaps/enumcaps.c:
6247           Fix enum serialization, deserialization, comparison in caps, add
6248           a test to ensure that this continues working in the future.
6249
6250 2004-07-06  David Schleef  <ds@schleef.org>
6251
6252         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6253         Fix memleak.
6254
6255 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6256
6257         * gst/gstplugin.c: (gst_plugin_check_file), (gst_plugin_load_file):
6258         * gst/gstplugin.h:
6259         * gst/registries/gstxmlregistry.c:
6260         (plugin_times_older_than_recurse), (plugin_times_older_than),
6261         (gst_xml_registry_parse_padtemplate):
6262           only rebuild registry when actual plugins have a newer time than
6263           the registry.  Fixes #145520
6264
6265 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6266
6267         * docs/manual/manual.xml:
6268         * docs/manual/win32.xml:
6269           add chapter on win32 building.  fixes #142422
6270
6271 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6272
6273         patch by: Sebastien Cote <sc5 at hermes.usherb.ca>
6274
6275         * gst/autoplug/gstspider.c: (gst_spider_init),
6276         (gst_spider_dispose):
6277           fix spider memleaks.  fixes #137863
6278
6279 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6280
6281         patch by: Joe Marcus Clarke <marcus at freebsd dot org>
6282
6283         * gst/schedulers/gstoptimalscheduler.c:
6284         (gst_opt_scheduler_pad_unlink):
6285           fix SIGBUS error, fixes #145338
6286
6287 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6288
6289         * gst/gstobject.c: (gst_object_replace):
6290         * gst/gstscheduler.c: (gst_scheduler_get_clock):
6291         * gst/gstsystemclock.c: (gst_system_clock_obtain):
6292           clean up clock lifecycle.  Fixes #109831
6293
6294 2004-07-06  Thomas Vander Stichele  <thomas at apestaart dot org>
6295
6296         * po/LINGUAS:
6297         * po/cs.po:
6298           added Czech translation (Miloslav Trmac)
6299
6300 2004-07-04  David Schleef  <ds@schleef.org>
6301
6302         * tools/Makefile.am:
6303         * tools/gst-xmlinspect.1.in:  Add man page. (bug #140219)
6304
6305 2004-07-04  David Schleef  <ds@schleef.org>
6306
6307         * common/m4/gst-doc.m4: Check for docbook2html 0.6.10 (bug #139909)
6308
6309 2004-07-04  Thomas Vander Stichele  <thomas at apestaart dot org>
6310
6311         * gst/gstbin.c: (gst_bin_restore_thyself):
6312           chain to parent restore so the bins get restored correctly
6313           in the editor
6314
6315 2004-07-03  David Schleef  <ds@schleef.org>
6316
6317         * gst/gstcaps.c: (gst_caps_save_thyself), (gst_caps_load_thyself):
6318         Actually do something in these functions, like before the big
6319         caps change.  (bug #145137)
6320
6321 2004-07-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6322
6323         * gst/gstelement.c: (gst_element_get_compatible_pad_template),
6324         (gst_element_get_compatible_pad_filtered):
6325         * gst/gstthread.c: (gst_thread_main_loop):
6326           more debugging
6327
6328 2004-07-02  David Schleef  <ds@schleef.org>
6329
6330         * gst/gstinfo.h: wrap #pragmas in #ifdefs for the correct compiler
6331         * gst/gstobject.h:
6332         * gst/gstparse.h:
6333         * gst/gsttrace.h:
6334         * gst/gstxml.h:
6335
6336 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6337
6338         * gst/gstpad.c: (gst_pad_check_schedulers),
6339         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6340         (gst_pad_link_prepare):
6341           revert until testsuite is fixed
6342
6343 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6344
6345         * testsuite/Makefile.am:
6346         * testsuite/caps/filtercaps.c: (main):
6347         * testsuite/clock/clock1.c: (main):
6348         * testsuite/dynparams/dparamstest.c: (gst_dptest_chain), (main):
6349           fix some more tests
6350
6351 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6352
6353         * testsuite/cleanup/cleanup1.c: (create_pipeline):
6354         * testsuite/cleanup/cleanup2.c: (create_pipeline):
6355         * testsuite/cleanup/cleanup4.c: (main):
6356           fix testsuite
6357
6358 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6359
6360         * libs/gst/control/control.c:
6361         * libs/gst/control/dparam.c:
6362         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_get_type):
6363         * libs/gst/control/dparammanager.c:
6364         * libs/gst/control/dparammanager.h:
6365         * testsuite/dynparams/Makefile.am:
6366         * testsuite/dynparams/dparamstest.c: (gst_dptest_base_init),
6367         (gst_dptest_change_state), (gst_dptest_chain), (main):
6368           fix testcase for dparams
6369           add debugging category
6370
6371 2004-07-02  Thomas Vander Stichele  <thomas at apestaart dot org>
6372
6373         * testsuite/Rules:
6374           change path
6375
6376 2004-07-02  Benjamin Otte  <otte@gnome.org>
6377
6378         * tests/.cvsignore:
6379         * tests/Makefile.am:
6380         * tests/mass_elements.c: (gst_get_current_time), (main):
6381           add simple benchmark to test various speeds of fakesrc ! identity !
6382           identity ! ... ! fakesink.
6383           Usage: mass_elements [num_identities] [num_buffers]
6384           If not specified they default to 1000.
6385
6386 2004-07-02  Benjamin Otte  <otte@gnome.org>
6387
6388         * gst/gstpad.c: (gst_pad_check_schedulers),
6389         (gst_pad_can_link_filtered), (gst_pad_link_filtered),
6390         (gst_pad_link_prepare):
6391           check that pads that get linked belong to the same manager. The old
6392           code allowed linking elements before putting them into bins, so it
6393           worked to link them and then put them in different threads, which
6394           lead to weird behaviour.
6395           Since this effectively disallows linking elements before putting
6396           them in a bin, some applications might not work after this and error
6397           out. If these applications are too critical, we might need to revert
6398           that patch. Please test this before the next release...
6399
6400 2004-06-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6401
6402         * gst/gstpad.c: (gst_pad_get_caps):
6403           throw an error if the getcaps function does not return a subset of
6404           the template caps.
6405         * libs/gst/bytestream/filepad.c: (gst_file_pad_chain):
6406           make disconts without position info an error in debugging
6407         * tests/spidey_bench.c: (handoff), (main):
6408           don't count first try when averaging
6409
6410 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6411
6412         * gst/gstplugin.c: (gst_plugin_load_file):
6413           figure out problem with dynamic test
6414
6415 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6416
6417         * docs/gst/Makefile.am:
6418           fix docs build
6419
6420 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6421
6422         * po/POTFILES.in:
6423         * po/af.po:
6424         * po/az.po:
6425         * po/en_GB.po:
6426         * po/fr.po:
6427         * po/nl.po:
6428         * po/sr.po:
6429         * po/sv.po:
6430         * po/tr.po:
6431         * po/uk.po:
6432         * tools/gst-register.c: (plugin_added_func), (main):
6433           i18n-ize -register, fix plural
6434
6435 2004-06-26  Thomas Vander Stichele  <thomas at apestaart dot org>
6436
6437         * gst/elements/gstidentity.c: (gst_identity_class_init),
6438         (gst_identity_init), (gst_identity_chain),
6439         (gst_identity_set_property), (gst_identity_get_property):
6440         * gst/elements/gstidentity.h:
6441           check for perfect stream
6442
6443 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6444
6445         * gst/elements/gstidentity.c: (gst_identity_chain):
6446           print offset_end
6447
6448 2004-06-25  Thomas Vander Stichele  <thomas at apestaart dot org>
6449
6450         * docs/gst/Makefile.am:
6451         * docs/gst/gstreamer-docs.sgml:
6452           doc fixes
6453
6454 2004-06-24  David Schleef  <ds@schleef.org>
6455
6456         * autogen.sh:  Remove call to env, since the buildbot isn't
6457         broken anymore.
6458
6459 2004-06-24  Wim Taymans  <wim@fluendo.com>
6460
6461         * gst/elements/Makefile.am:
6462         * gst/elements/gstelements.c:
6463         * gst/elements/gstmultifdsink.c: (gst_multifdsink_base_init),
6464         (gst_multifdsink_class_init), (gst_multifdsink_init),
6465         (gst_multifdsink_add), (gst_multifdsink_remove),
6466         (gst_multifdsink_clear), (gst_multifdsink_chain),
6467         (gst_multifdsink_set_property), (gst_multifdsink_get_property):
6468         * gst/elements/gstmultifdsink.h:
6469         Added an element that writes to multiple filedescriptors at once.
6470
6471 2004-06-24  Benjamin Otte  <otte@gnome.org>
6472
6473         * gst/parse/grammar.y:
6474           don't try to link elements before they have been added to bins
6475
6476 2004-06-24  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6477
6478         * libs/gst/bytestream/filepad.c: (gst_file_pad_available),
6479         (gst_file_pad_get_length):
6480         * libs/gst/bytestream/filepad.h:
6481           add 2 new functions
6482
6483 2004-06-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>
6484
6485         * docs/gst/gstreamer-sections.txt:
6486         remove from docs, the define that Benjamin removed from gstelement.h
6487
6488 2004-06-22  Benjamin Otte  <otte@gnome.org>
6489
6490         * gst/gstelement.h:
6491           remove define that referenced a nonexisting GstElement struct member
6492
6493 2004-06-20  Benjamin Otte  <otte@gnome.org>
6494
6495         * gst/gstdata.c: (gst_data_is_writable):
6496           whoops, return values were wrong, so writable data was marked as
6497           non-writable and vice versa. (fixes #143953, spotted by Francis
6498           Labonte)
6499           Shows how rarely we need to copy data ;)
6500
6501 2004-06-20  Benjamin Otte  <otte@gnome.org>
6502
6503         * testsuite/schedulers/.cvsignore:
6504         * testsuite/schedulers/Makefile.am:
6505         * testsuite/schedulers/143777-2.c: (main):
6506           add test for opt breakage in bug #143777
6507
6508 2004-06-20  Benjamin Otte  <otte@gnome.org>
6509
6510         * gst/gstpad.c: (gst_pad_call_chain_function):
6511           check for if we were unlinked while inside the chainfunction (fixes
6512           entrygthread having issues with #143777)
6513         * testsuite/schedulers/143777.c: (main):
6514         * testsuite/schedulers/Makefile.am:
6515           add a test for that fix
6516
6517 2004-06-20  Benjamin Otte  <otte@gnome.org>
6518
6519         * gst/gstvalue.c: (gst_value_set_int_range):
6520           test that start is smaller then end
6521         * libs/gst/bytestream/Makefile.am:
6522         * libs/gst/bytestream/filepad.c: 
6523         * libs/gst/bytestream/filepad.h:
6524           add GstFilePad - a pad that behaves like a FILE*
6525         * testsuite/bytestream/.cvsignore:
6526         * testsuite/bytestream/Makefile.am:
6527         * testsuite/bytestream/filepadsink.c: 
6528           test for the GstFilePad
6529
6530 2004-06-18  Thomas Vander Stichele  <thomas at apestaart dot org>
6531
6532         * gst/elements/gstidentity.c: (gst_identity_class_init),
6533         (gst_identity_init), (gst_identity_set_clock),
6534         (gst_identity_chain), (gst_identity_set_property),
6535         (gst_identity_get_property):
6536         * gst/elements/gstidentity.h:
6537         * gst/gstclock.c: (gst_clock_id_wait):
6538           add a "sync" property to sync to the clock
6539
6540 2004-06-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6541
6542         * gst/gstelementfactory.c: (gst_element_factory_create):
6543           make the freakin "elementfactory bla has no type" message more
6544           useful. So we actually can do something when someone shows up
6545           complaining about it.
6546
6547 2004-06-15  Johan Dahlin  <johan@gnome.org>
6548
6549         * tools/gst-inspect.c (main): Fallback to plugin if no element is
6550         found. This matches the old behavior better. Thanks to Thomas for
6551         pointing out.
6552
6553 2004-06-14  David Schleef  <ds@schleef.org>
6554
6555         * gst/gstcpu.c: (gst_cpuid_i386): Fix problem when using
6556         -fomit-frame-pointer.  Appears to generate correct code in
6557         other cases as well.
6558
6559 2004-06-14  Johan Dahlin  <johan@gnome.org>
6560
6561         * tools/gst-inspect.c (main): Add two new command line options: -a
6562         to print all elements and -n to print the name on each line. Also
6563         fix some error reporting.
6564         (main): Simplify, remove -n and always print names if -a is specified
6565
6566 2004-06-13  Steve Lhomme  <steve.lhomme@free.fr>
6567
6568         * win32/gstconfig.h:
6569         * win32/GSTreamer.vcproj:
6570         * win32/Makefile:
6571         * gst/gstconfig.h.in:
6572         * gst/gst.h:
6573         * gst/gstbin.h:
6574         * gst/gstelement.h:
6575         * gst/gstevent.h:
6576         * gst/gstobject.h:
6577         * gst/gstpad.h:
6578         * docs/gst/gstreamer-sections.txt:
6579         * docs/gst/tmpl/gstconfig.sgml:
6580           rename GSTREAMER_EXPORT(S) to GST_EXPORT(S)
6581
6582 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6583         * docs/gst/gstreamer-sections.txt:
6584         * docs/gst/tmpl/gstconfig.sgml:
6585         Add the GSTREAMER_EXPORT macro to the docs
6586
6587 2004-06-13  Jan Schmidt  <thaytan@mad.scientist.com>
6588
6589         * tools/gst-compprep.c: (handle_xmlerror), (main):
6590         Add a check for the version that introduced SetStructuredError to fix
6591         the build on FC1
6592
6593 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6594
6595         * win32/msvc71.sln:
6596         * win32/testsuite/:
6597           prepare to compile the testsuite with MSVC
6598
6599 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6600
6601         * docs/manual/win32.xml:
6602           attempt to transform the Win32 README into an XML doc
6603
6604 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6605
6606         * gst/gst.c:
6607         * gst/gstbin.*:
6608         * gst/config.h.in:
6609         * gst/gstelement.*:
6610         * gst/gstevent.h:
6611         * gst/gstobject.*:
6612         * gst/gstpad.h:
6613         * tools/gst-register.c:
6614         * win32/gstreamer.def:
6615           extern symbols are now exported for the Windows DLL
6616
6617 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6618
6619         * gst/gstinfo.h:
6620           fix a problem to enable/disable DEBUG under MSVC
6621
6622 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6623
6624         * win32/:
6625           enable more debug code in DEBUG build
6626
6627 2004-06-12  Steve Lhomme  <steve.lhomme@free.fr>
6628
6629         * win32/config.h:
6630         * gst/gst-i18n-app.h:
6631           enable NLS under Windows
6632
6633 2004-06-12  Jan Schmidt  <thaytan@mad.scientist.com>
6634         * tools/gst-compprep.c: (handle_xmlerror), (main):
6635           Make an error that baffled me a bit clearer
6636
6637 2004-06-12  Thomas Vander Stichele  <thomas at apestaart dot org>
6638
6639         * gst/gstqueue.c:
6640           don't use g_queue_get_length () because it's 2.4, use ->length
6641
6642 2004-06-11  Steve Lhomme  <steve.lhomme@free.fr>
6643
6644         reviewed by Benjamin Otte  <in7y118@public.uni-hamburg.de>
6645
6646         * tools/gst-inspect.c: (print_signal_info):
6647           don't free random data twice. (fixes #144185)
6648
6649 2004-06-11  Thomas Vander Stichele  <thomas at apestaart dot org>
6650
6651         * gst/gstqueue.c:
6652         * gst/gstqueue.h:
6653           fix removing from the wrong queue on event timeout
6654           fix disposing of the event queue by casting correctly
6655           add mutexes for handling the event queue
6656           someone was sleeping when fixing queue last time around :)
6657
6658 2004-06-10  Johan Dahlin  <johan@gnome.org>
6659
6660         * gst/gst.c (gst_init_check_with_popt_table): Do not fail on
6661         errors, like gtk. It makes it more useful in bindings.  Fixes #141692.
6662
6663 2004-06-09  Thomas Vander Stichele  <thomas at apestaart dot org>
6664
6665         * docs/random/gdp:
6666         * libs/gst/dataprotocol/dataprotocol-test.c: (buffer_test):
6667         * libs/gst/dataprotocol/dataprotocol.c:
6668         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6669         (gst_dp_buffer_from_header):
6670         * libs/gst/dataprotocol/dataprotocol.h:
6671         * libs/gst/dataprotocol/dp-private.h:
6672           rev version to 0.1, add buffer flags and copy them
6673
6674 2004-06-09  Johan Dahlin  <johan@gnome.org>
6675
6676         * gst/gstbuffer.c (gst_buffer_default_copy): Don't forget to merge
6677         the flags from the buffer we're copying.
6678
6679 2004-06-09  Wim Taymans  <wim@fluendo.com>
6680
6681         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
6682         * gst/elements/gstidentity.c: (gst_identity_init),
6683         (gst_identity_chain):
6684         Print more buffer info in fakesink.
6685         Make identity output similar to fakesink.
6686
6687 2004-06-07  Daniel Gazard  <dany42@free.fr>
6688
6689         reviewed by Benjamin Otte  <otte@gnome.org>
6690
6691         * configure.ac:
6692           fix cross compiling not working. (fixes #143741)
6693
6694 2004-06-07  Benjamin Otte  <otte@gnome.org>
6695
6696         * gst/gstelement.c: (gst_element_set_time_delay):
6697           add failure check
6698         * gst/gstinfo.h:
6699           put brackets around macro arguments of GST_TIME_ARGS, add note to
6700           move it to correct header in 0.9
6701
6702 2004-06-07  Benjamin Otte  <otte@gnome.org>
6703
6704         * gst/indexers/gstfileindex.c: (gst_file_index_get_writer_id),
6705         (gst_file_index_load), (_file_index_id_save_entries),
6706         (gst_file_index_commit), (gst_file_index_add_association),
6707         (gst_file_index_add_entry), (gst_file_index_get_assoc_entry),
6708         (gst_file_index_plugin_init):
6709           make debugging use a default category
6710
6711 2004-06-06  David Moore  <dcm@acm.org>
6712
6713         reviewed by Benjamin Otte  <otte@gnome.org>
6714
6715         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
6716         (gst_fdsrc_change_state):
6717           reset offset counter when going READY => PAUSED. (fixes #142903)
6718
6719 2004-06-06  ed@catmur.co.uk
6720
6721         reviewed by Benjamin Otte  <otte@gnome.org>
6722
6723         * gst/registries/gstxmlregistry.c:
6724         (gst_xml_registry_rebuild_recurse):
6725           don't rely on g_dir_open to figure out if a file is a directory, use
6726           explicit G_TEST_IS_DIR. Reiserfs4 allows opening files as
6727           directories. (fixes #142850)
6728
6729 2004-06-06  Benjamin Otte  <otte@gnome.org>
6730
6731         * gst/gstqueue.c: (gst_queue_dispose), (gst_queue_change_state):
6732           fix memory leaks (fixes #142795). Initial patch by Sebastien Cote
6733         * libs/gst/bytestream/adapter.c:
6734         * libs/gst/bytestream/adapter.h:
6735           fix copyright in header and typo in debugging category name
6736
6737 2004-06-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6738
6739         * configure.ac:
6740           bump nano to cvs
6741
6742 === release 0.8.3 ===
6743
6744 2004-06-05  Thomas Vander Stichele  <thomas at apestaart dot org>
6745
6746         * configure.ac:
6747           update libtool versioning
6748           do a new release
6749         * docs/gst/tmpl/gstelement.sgml:
6750         * docs/gst/tmpl/gsttypes.sgml:
6751         * gst/gstinfo.c: (_gst_debug_init):
6752           put back GST_CAT_DATAFLOW to fix API breakage
6753
6754 2004-06-04  David Schleef  <ds@schleef.org>
6755
6756         * autogen.sh: Add a temporary 'env' to test buildbot problems.
6757
6758 2004-06-04  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6759
6760         * configure.ac:
6761           bump nano to cvs
6762
6763 === release 0.8.2 ===
6764
6765 2004-06-03  Thomas Vander Stichele  <thomas at apestaart dot org>
6766
6767         * gst/gst.c: (parse_debug_list), (gst_init_check_with_popt_table):
6768           check GST_DEBUG environment variable which is parsed the same way
6769           as --gst-debug=
6770
6771 2004-05-28  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
6772
6773         * gst/elements    : gstaggregator.c gstfakesink.c gstfakesrc.c
6774                             gstmd5sink.c gstshaper.c gsttee.c
6775                             gsttypefindelement.c
6776         * gst/schedulers  : gstbasicscheduler.c gstoptimalscheduler.c
6777
6778           - removing trailing commas at end of enums
6779             it is correct C99 code but C90 compilers would complain
6780             (AIX, Forte, ...)
6781             ('should' fix #143290, at least partially)
6782
6783 2004-05-27  Wim Taymans  <wim@fluendo.com>
6784
6785         * gst/schedulers/gstoptimalscheduler.c: (remove_from_chain),
6786         (chain_group_set_enabled), (create_group), (add_to_group),
6787         (merge_groups), (setup_group_scheduler), (group_elements),
6788         (gst_opt_scheduler_iterate), (gst_opt_scheduler_show):
6789         Don't try to follow the pad connections with other groups
6790         when a loop based element is added to the scheduler because
6791         the bin will inform the scheduler about the pad links a little
6792         later.
6793
6794 2004-05-27  Wim Taymans  <wim@fluendo.com>
6795
6796         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6797         (remove_from_chain), (chain_group_set_enabled),
6798         (setup_group_scheduler), (group_element_set_enabled),
6799         (gst_opt_scheduler_state_transition), (gst_opt_scheduler_iterate),
6800         (gst_opt_scheduler_show):
6801         Elements without a group can do a state change as well, just wait
6802         with the setup of the scheduling function when it is added to a
6803         chain.
6804
6805 2004-05-27  Wim Taymans  <wim@fluendo.com>
6806
6807         * gst/schedulers/gstoptimalscheduler.c: (add_to_chain),
6808         (remove_from_chain), (chain_group_set_enabled), (add_to_group),
6809         (merge_groups), (setup_group_scheduler),
6810         (group_inc_links_for_element), (gst_opt_scheduler_iterate),
6811         (gst_opt_scheduler_show):
6812         Fixes to maintain internal consistency of the scheduler data
6813         structures. 
6814          - adding an enabled group to a chain should increment the
6815            number of enabled elements in that chain.
6816          - removing an enabled group from a chain could disable the
6817            chain.
6818          - removing a disabled group from a chain could enable the
6819            chain.
6820          - add g_assert when internal inconsistency is detected.
6821          - adding an element to a group could increase the number of
6822            links this group has with other groups.
6823          - merging two groups also merges the chains.
6824          - also show group links in the _show method.
6825            
6826
6827 2004-05-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6828
6829         * gst/gstcaps.c: (gst_caps_structure_simplify):
6830           don't print error messages when there is no error
6831         * gst/gstvalue.c: (gst_value_compare_int_range):
6832           compare the second value, too
6833         * testsuite/caps/Makefile.am:
6834         * testsuite/caps/random.c: (assert_on_error), (main):
6835           add tests to make sure the two things above are checked for
6836
6837 2004-05-24  Thomas Vander Stichele  <thomas at apestaart dot org>
6838
6839         * configure.ac:
6840         * libs/gst/dataprotocol/Makefile.am:
6841         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps):
6842         * libs/gst/dataprotocol/dataprotocol.h:
6843           wrap header in GST_ENABLE_NEW.  make code use it
6844
6845 2004-05-23  Johan Dahlin  <johan@gnome.org>
6846
6847         * tools/gst-inspect.c (main): Cleanup most parts of it, don't be
6848         so verbose and print GstElement signal names all the time.
6849
6850 2004-05-22  David Schleef  <ds@schleef.org>
6851
6852         * gst/registries/gstxmlregistry.c:
6853         (gst_xml_registry_parse_padtemplate): Fix warning on OS X.
6854         (bug #142957)
6855
6856 2004-05-22  Thomas Vander Stichele  <thomas at apestaart dot org>
6857
6858         * configure.ac:
6859           scrub cflags for glib2 so gcc doesn't complain when glib is in
6860           /usr/local
6861
6862 2004-05-21  Johan Dahlin  <johan@gnome.org>
6863
6864         * gst/gstcpu.c (gst_cpuid_i386): Protect some gcc asm stuff with
6865         __GNUC__, patch from Brian Cameron, fixes bug #142804
6866
6867 2004-05-20  David Schleef  <ds@schleef.org>
6868
6869         * gst/gstindex.c: (gst_index_compare_func): Fix overflows in
6870         comparison code.  (bug #142819)
6871
6872 2004-05-20  Wim Taymans  <wim@fluendo.com>
6873
6874         * gst/gstbuffer.c: (gst_buffer_default_copy):
6875         * gst/gstbuffer.h:
6876         Added Comment to a flag.
6877         copy relevant flags in _buffer_copy.
6878
6879 2004-05-20  Thomas Vander Stichele  <thomas at apestaart dot org>
6880
6881         reviewed by: Wim Taymans <wim at fluendo dot com>
6882
6883         * gst/gstbuffer.h:
6884           add GST_BUFFER_IN_CAPS buffer flag
6885         * gst/gststructure.c: (gst_structure_value_get_generic_type),
6886         (gst_structure_parse_any_list), (gst_structure_parse_list),
6887         (gst_structure_parse_fixed_list), (gst_structure_parse_value):
6888         * gst/gstvalue.c: (gst_value_serialize_any_list),
6889         (gst_value_transform_any_list_string),
6890         (gst_value_list_prepend_value), (gst_value_list_append_value),
6891         (gst_value_list_get_size), (gst_value_list_get_value),
6892         (gst_value_transform_list_string),
6893         (gst_value_transform_fixed_list_string),
6894         (gst_value_serialize_list), (gst_value_serialize_fixed_list),
6895         (gst_value_deserialize_fixed_list), (gst_type_is_fixed),
6896         (_gst_value_initialize):
6897         * gst/gstvalue.h:
6898           add a GST_TYPE_FIXED_LIST which is fixed by definition and uses
6899           < , > as a format.
6900         * testsuite/caps/string-conversions.c: (main):
6901           add regression tests for < >
6902
6903 2004-05-20  Johan Dahlin  <johan@gnome.org>
6904
6905         * docs/gst/Makefile.am (all-local): Re-add
6906
6907 2004-05-20  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
6908
6909         * docs/gst/Makefile.am:
6910         * docs/gst/gstreamer-docs.sgml:
6911         * docs/libs/Makefile.am:
6912         * docs/libs/gstreamer-libs-docs.sgml:
6913           fix distcheck issues
6914
6915 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6916
6917         * libs/gst/dataprotocol/Makefile.am:
6918           add to autotest
6919
6920 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6921
6922         * libs/gst/dataprotocol/Makefile.am:
6923         * libs/gst/dataprotocol/dataprotocol.c:
6924         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6925         (gst_dp_packet_from_event), (gst_dp_event_from_packet):
6926         * libs/gst/dataprotocol/dp-private.h:
6927           use GST macros to read/write fixed length ints
6928           add some more asserts
6929
6930 2004-05-19  Thomas Vander Stichele  <thomas at apestaart dot org>
6931
6932         * docs/libs/gstreamer-libs-docs.sgml:
6933         * docs/libs/gstreamer-libs-sections.txt:
6934           remove idct and putbits
6935         * configure.ac:
6936         * docs/libs/tmpl/gstdataprotocol.sgml:
6937         * libs/gst/Makefile.am:
6938         * libs/gst/dataprotocol/Makefile.am:
6939         * libs/gst/dataprotocol/dataprotocol-test.c: (conversion_test),
6940         (buffer_test), (caps_test), (event_test), (main):
6941         * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc),
6942         (gst_dp_dump_byte_array), (gst_dp_init),
6943         (gst_dp_header_payload_length), (gst_dp_header_payload_type),
6944         (gst_dp_header_from_buffer), (gst_dp_packet_from_caps),
6945         (gst_dp_packet_from_event), (gst_dp_buffer_from_header),
6946         (gst_dp_caps_from_packet), (gst_dp_event_from_packet),
6947         (gst_dp_validate_header), (gst_dp_validate_payload),
6948         (gst_dp_validate_packet), (plugin_init):
6949         * libs/gst/dataprotocol/dataprotocol.h:
6950         * libs/gst/dataprotocol/dp-private.h:
6951           add dataprotocol
6952
6953 2004-05-19  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6954
6955         * gst/gstvalue.c: (gst_value_deserialize_int_helper):
6956           fix int variable deserialization and add a helper so we can actually
6957           debug this.
6958
6959 2004-05-18  David Schleef  <ds@schleef.org>
6960
6961         * testsuite/debug/commandline.c: (main): Call ./commandline, not
6962           argv[0].  Calling yourself is probably not the best way to
6963           construct a test like this, btw.
6964
6965 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
6966
6967         * gst/gstbin.c: (gst_bin_iterate_func), (gst_bin_iterate):
6968           don't claim to be more intelligent than a scheduler when the
6969           scheduler claims the pipeline is stopped
6970         * gst/schedulers/entryscheduler.c: (safe_cothread_switch),
6971         (safe_cothread_destroy),
6972         (gst_entry_scheduler_remove_all_cothreads),
6973         (gst_entry_scheduler_reset), (_remove_cothread),
6974         (gst_entry_scheduler_state_transition):
6975           hold off cothread destruction if we're not in main cothread
6976         * configure.ac:
6977         * testsuite/Makefile.am:
6978           add new test dir
6979         * testsuite/schedulers/.cvsignore:
6980         * testsuite/schedulers/Makefile.am:
6981           add tests
6982         * testsuite/schedulers/relink.c: (cb_handoff), (main):
6983           check relinking and adding/removing elements from a running pipeline
6984         * testsuite/schedulers/unlink.c: (cb_handoff), (main):
6985           check unlinking in a running pipeline
6986         * testsuite/schedulers/unref.c: (cb_handoff), (main):
6987           check unreffing a running pipeline
6988         * testsuite/schedulers/useless_iteration.c: (main):
6989           check iterating a pipeline that contains running threads works
6990
6991 2004-05-18  David Schleef  <ds@schleef.org>
6992
6993         * docs/gst/Makefile.am: Add all-local target for when HAVE_GTK_DOC
6994           is false.
6995
6996 2004-05-18  Wim Taymans  <wim@fluendo.com>
6997
6998         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
6999         (setup_group_scheduler), (gst_opt_scheduler_pad_link):
7000         Fixed an error introduced with patch for 1.63. When setting
7001         a get based element as the entry point in a group, make sure
7002         to mark the group as GET based.
7003
7004 2004-05-18  Wim Taymans  <wim@fluendo.com>
7005
7006         * gst/schedulers/gstoptimalscheduler.c: (create_group),
7007         (setup_group_scheduler), (loop_group_schedule_function),
7008         (gst_opt_scheduler_pad_link):
7009         Added some more debug info and fixed a bug where the group
7010         type was set to LOOP but it was in fact unknown.
7011
7012 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7013
7014         * gst/schedulers/entryscheduler.c: (gst_entry_scheduler_reset):
7015           make resetting scheduler work twice in a row
7016
7017 2004-05-18  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7018
7019         * gst/gstvalue.c: (gst_strtoll), (CREATE_SERIALIZATION),
7020         (CREATE_USERIALIZATION), (_gst_value_initialize),
7021         (gst_value_compare_float), (gst_value_serialize_float),
7022         (gst_value_deserialize_float), (gst_value_compare_enum),
7023         (gst_value_serialize_enum), (gst_value_deserialize_enum):
7024           add serialization and comparison functions for long, int64, enum and
7025           float values
7026         * gst/gstvalue.c: (gst_value_serialize), (gst_value_deserialize):
7027           use best serialization function in type hierarchy instead of only a
7028           matching one. This is required for enums to work.
7029         * gst/parse/grammar.y:
7030           use gst_caps_deserialize
7031         * testsuite/parse/Makefile.am:
7032           parse1 now works
7033         * testsuite/parse/parse1.c: (main):
7034           remove aggregator check, aggregator is broken, this test works now
7035           but fails because of bug #138012
7036         * testsuite/parse/parse2.c: (main):
7037           s/xvideosink/xvimagesink - this test looks a lot like we should
7038           disable it
7039
7040 2004-05-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7041
7042         * gst/gstelement.c: (gst_element_class_init):
7043           whoops, store the signal id correctly
7044         * gst/schedulers/gstbasicscheduler.c:
7045         (gst_basic_scheduler_chain_wrapper):
7046           detect infinfinfinfinfinf^Cinite loops in chain wrapper when the
7047           chain function isn't linked
7048
7049 2004-05-13  Jan Schmidt  <thaytan@mad.scientist.com>
7050         * configure.ac:
7051         Add $GST_PKG_CFLAGS back into GST_INT_CFLAGS so I have large file
7052         support until we decide where the flags should be used
7053         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_query):
7054         Use GST_FORMAT_BYTES when GST_FORMAT_DEFAULT is passed
7055         * gst/gstpad.c: (gst_pad_link_call_link_functions):
7056         Output refused caps in the debug info
7057
7058 2004-05-13  Thomas Vander Stichele  <thomas at apestaart dot org>
7059
7060         * gst/elements/gstidentity.c: (gst_identity_chain):
7061           add duration debug
7062         * gst/gstinfo.c: (gst_debug_log_default):
7063           add timestamp
7064
7065 2004-05-13  Benjamin Otte  <otte@gnome.org>
7066
7067         * gst/gstpipeline.c: (gst_pipeline_dispose),
7068         (gst_pipeline_change_state):
7069           call gst_scheduler_reset on dispose (fixes #141416)
7070
7071 2004-05-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7072
7073         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7074           compute mapsize correctly
7075         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap):
7076           use correct datatypes when calling a varargs function
7077         * gst/elements/gsttypefindelement.c: (stop_typefinding):
7078           push a DISCONT event as first thing
7079         * gst/gst_private.h:
7080         * gst/gstinfo.c: (_gst_debug_init):
7081           remove GST_DATAFLOW debugging category
7082         * gst/gstbin.c: (gst_bin_iterate):
7083           use GST_SCHEDULING category
7084         * gst/gstpad.c: (gst_pad_get_type), (_invent_event),
7085         (gst_pad_push), (gst_pad_pull), (gst_pad_call_chain_function),
7086         (gst_pad_call_get_function):
7087           add GST_DATAFLOW to easily track flow of buffers or events.
7088         * gst/gstqueue.c: (gst_queue_get_type),
7089         (gst_queue_handle_pending_events), (gst_queue_chain),
7090         (gst_queue_get), (gst_queue_handle_src_event):
7091           use own static debugging category GST_DATAFLOW for dataflow,
7092           use DEBUG category for showing which path events go, use LOG
7093           category for buffers.
7094
7095 2004-05-10  David Schleef  <ds@schleef.org>
7096
7097         * docs/gst/gstreamer-sections.txt: Add gst_element_no_more_pads.
7098
7099 2004-05-10  David Schleef  <ds@schleef.org>
7100
7101         * docs/gst/Makefile.am: Dear gtk-doc, please print out the unused
7102         symbols, because otherwise we don't know what they are.  Thanks,
7103         the GStreamer team.
7104         * gst/registries/gstxmlregistry.c: (make_dir): Remove a spurious ;
7105
7106 2004-05-10  David Schleef  <ds@schleef.org>
7107
7108         (from Steve Lhomme)
7109         * win32/Makefile: When using make clean the MS Visual Studio makefiles
7110         are deleted.  Fix.
7111         * win32/Makefile.inspect:
7112         * win32/Makefile.launch:
7113         * win32/Makefile.register:
7114
7115 2004-05-10  David Schleef  <ds@schleef.org>
7116
7117         * gst/gstinfo.h: Add missing inline function.
7118         * gst/gsttrace.c: add include
7119         * gst/parse/grammar.y: remove unused code
7120         * gst/registries/gstxmlregistry.c: (make_dir): make mkdir call
7121         more portable.
7122         * tools/gst-register.c: wrap unistd.h
7123         
7124         More additions/fixes from Steve for the MSVC build.
7125         * win32/GStreamer.vcproj:
7126         * win32/Makefile:
7127         * win32/Makefile.inspect:
7128         * win32/Makefile.launch:
7129         * win32/Makefile.register:
7130         * win32/README.txt:
7131         * win32/gst-inspect.vcproj:
7132         * win32/gst-launch.vcproj:
7133         * win32/gst-register.vcproj:
7134         * win32/gstbytestream.def:
7135         * win32/gstbytestream.vcproj:
7136         * win32/gstconfig.h:
7137         * win32/gstelements.def:
7138         * win32/gstelements.vcproj:
7139         * win32/gstenumtypes.c:
7140         * win32/gstenumtypes.h:
7141         * win32/gstoptimalscheduler.def:
7142         * win32/gstoptimalscheduler.vcproj:
7143         * win32/gstreamer.def:
7144         * win32/gstspider.def:
7145         * win32/gstspider.vcproj:
7146         * win32/gstversion.h:
7147         * win32/msvc71.sln:
7148
7149 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7150
7151         * gst/gstelement.c: (gst_element_class_init),
7152         (gst_element_no_more_pads):
7153         * gst/gstelement.h:
7154           add gst_element_no_more_pads and the "no-more-pads" signal
7155
7156 2004-05-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7157
7158         * gst/gstregistry.c: (gst_registry_add_plugin):
7159           refuse to add plugins when a plugin with same name is already
7160           registered. Fixes a bunch of "How to remove plugins?" issues.
7161           May lead to other problems though, let's test
7162
7163 2004-05-10  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7164
7165         * testsuite/caps/caps_strings : audio/ac3 => audio/x-ac3
7166         * docs/manual/pads-api.xml : audio/wav => audio/x-wav
7167         * docs/random/uraeus/gstreamer_and_midi.txt : audio/wav => audio/x-wav
7168
7169 2004-05-09  Thomas Vander Stichele  <thomas at apestaart dot org>
7170
7171         * tests/Makefile.am: fix am16 issue
7172
7173 2004-05-09  Benjamin Otte  <otte@gnome.org>
7174
7175         * libs/gst/bytestream/Makefile.am:
7176           we should indeed add .c files to makefiles or they won't be built
7177           (d'oh)
7178
7179 2004-05-08  Benjamin Otte  <otte@gnome.org>
7180
7181         * gst/gstpad.c: (gst_pad_proxy_fixate):
7182           really reduce the set of caps
7183
7184 2004-05-08  Benjamin Otte  <otte@gnome.org>
7185
7186         * tests/Makefile.am:
7187         * tests/spidey_bench.c: (handoff), (main):
7188           add benchmark to test how long spider needs to create a pipeline
7189
7190 2004-05-08  Benjamin Otte  <otte@gnome.org>
7191
7192         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_unnegotiate):
7193           mark links as unengaged when unnegotiating instead of deactivating.
7194           This way pads aren't marked as unengaged when going PLAYING=>PAUSED
7195
7196 2004-05-08  Benjamin Otte  <otte@gnome.org>
7197
7198         * docs/manual/helloworld.xml:
7199           s/audiosink/osssink (patch by Patrick Guimond)
7200
7201 2004-05-07  David Schleef  <ds@schleef.org>
7202
7203         * configure.ac: Make sure GST_INT_CFLAGS is not clobbered,
7204         since it contains important stuff.
7205
7206 2004-05-07  David Schleef  <ds@schleef.org>
7207
7208         * testsuite/caps/caps.c: (test3), (main): A check for appending
7209         ANY caps.
7210
7211 2004-05-07  David Schleef  <ds@schleef.org>
7212
7213         * common/m4/as-compiler-flag.m4: Properly quote arguments,
7214         which may contain commas.  Fixes detection of -Wa,-mregnames
7215
7216 2004-05-06  David Schleef  <ds@schleef.org>
7217
7218         Changes to handle compilers that don't have variadic macro
7219         support.  In particular, glib headers define some inlines
7220         that need G_LOG_DOMAIN defined.  Additional fixes for MSVC
7221         builds.
7222         * gst/Makefile.am:
7223         * gst/cothreads.c:
7224         * gst/elements/gstfdsink.c:
7225         * gst/elements/gstfdsrc.c:
7226         * gst/elements/gstfilesink.c:
7227         * gst/elements/gstfilesrc.c:
7228         * gst/gst_private.h:
7229         * gst/gstatomic.c:
7230         * gst/gstcaps.c: (gst_caps_append):
7231         * gst/gstcpu.c: (gst_cpuid_i386):
7232         * gst/gstelement.c:
7233         * gst/gsterror.c:
7234         * gst/gstfilter.c:
7235         * gst/gstinfo.h:
7236         * gst/gstprobe.c:
7237         * gst/gstquery.c:
7238         * gst/gstregistry.c:
7239         * gst/gststructure.c:
7240         * gst/gsttaginterface.c:
7241         * gst/gsttrace.c: (gst_trace_new):
7242         * gst/gsttrashstack.c:
7243         * gst/gsturi.c:
7244         * gst/gstvalue.c:
7245         * gst/parse/grammar.y:
7246         * gst/parse/parse.l:
7247         * tools/gst-inspect.c: (main):
7248         * tools/gst-launch.c: (main):
7249         * tools/gst-xmlinspect.c: (PUT_STRING):
7250
7251 2004-05-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7252
7253         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
7254         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
7255         * gst/elements/gstfilesrc.h:
7256           send NEW_MEDIA events correctly
7257         * gst/elements/gsttypefindelement.c: (start_typefinding),
7258         (gst_type_find_element_handle_event):
7259           restart typefinding when we get a NEW_MEDIA event
7260         * gst/gstbin.c: (gst_bin_remove_func), (gst_bin_change_state),
7261         (gst_bin_dispose):
7262           don't die when someone removes elements in callbacks
7263         * gst/gstelement.c: (gst_element_change_state):
7264           improve debugging
7265         * gst/gstpad.c: (gst_pad_pull), (gst_pad_call_chain_function):
7266           we need a NEW_MEDIA event to engage a link
7267         * gst/gsttrace.c: (gst_trace_new), (gst_alloc_trace_set_flags_all):
7268           don't g_print debugging stuff
7269         * testsuite/caps/simplify.c: (check_caps):
7270
7271 2004-05-04  Benjamin Otte  <otte@gnome.org>
7272
7273         * gst/parse/grammar.y:
7274           use GST_ERROR instead of g_warning, and always throw a GST_ERROR 
7275
7276 2004-05-04  Benjamin Otte  <otte@gnome.org>
7277
7278         * testsuite/caps/renegotiate.c: (main):
7279           improve output in error case
7280
7281 2004-05-04  Benjamin Otte  <otte@gnome.org>
7282
7283         * gst/parse/grammar.y:
7284           fix assert to not trigger when there's no error argument
7285         * gst/parse/parse.l:
7286           fix definition of caps to allow more than two structures
7287         * testsuite/caps/Makefile.am:
7288         * testsuite/caps/renegotiate.c: (main):
7289           it's sinesrc and works in that case
7290
7291 2004-05-04  Wim Taymans  <wim@fluendo.com>
7292
7293         * gst/schedulers/gstoptimalscheduler.c: (remove_from_group),
7294         (group_dec_link), (gst_opt_scheduler_pad_unlink):
7295         when removing an element from a group, we always need to
7296         decrement the link count that this group had with other 
7297         groups through the element.
7298         added an extra assert to catch inconsistencies when decrementing
7299         the link count.
7300
7301 2004-05-04  Thomas Vander Stichele  <thomas at apestaart dot org>
7302
7303         * configure.ac:
7304         * docs/gst/Makefile.am:
7305         * docs/gst/gstreamer-sections.txt:
7306         * docs/gst/tmpl/gstcompat.sgml:
7307         * examples/appreader/Makefile.am:
7308         * examples/cutter/Makefile.am:
7309         * examples/events/Makefile.am:
7310         * examples/helloworld/Makefile.am:
7311         * examples/helloworld2/Makefile.am:
7312         * examples/launch/Makefile.am:
7313         * examples/manual/Makefile.am:
7314         * examples/mixer/Makefile.am:
7315         * examples/pingpong/Makefile.am:
7316         * examples/plugins/Makefile.am:
7317         * examples/queue/Makefile.am:
7318         * examples/queue2/Makefile.am:
7319         * examples/queue3/Makefile.am:
7320         * examples/queue4/Makefile.am:
7321         * examples/retag/Makefile.am:
7322         * examples/thread/Makefile.am:
7323         * examples/typefind/Makefile.am:
7324         * examples/xml/Makefile.am:
7325         * gst/Makefile.am:
7326         * gst/autoplug/Makefile.am:
7327         * gst/elements/Makefile.am:
7328         * gst/gstcompat.h:
7329         * gst/indexers/Makefile.am:
7330         * gst/parse/Makefile.am:
7331         * gst/registries/Makefile.am:
7332         * gst/schedulers/Makefile.am:
7333         * libs/gst/bytestream/Makefile.am:
7334         * libs/gst/control/Makefile.am:
7335         * libs/gst/getbits/Makefile.am:
7336         * po/af.po:
7337         * po/az.po:
7338         * po/en_GB.po:
7339         * po/fr.po:
7340         * po/nl.po:
7341         * po/sr.po:
7342         * po/sv.po:
7343         * po/tr.po:
7344         * po/uk.po:
7345         * tests/Makefile.am:
7346         * tests/bufspeed/Makefile.am:
7347         * tests/instantiate/Makefile.am:
7348         * tests/memchunk/Makefile.am:
7349         * tests/muxing/Makefile.am:
7350         * tests/negotiation/Makefile.am:
7351         * tests/probes/Makefile.am:
7352         * tests/sched/Makefile.am:
7353         * tests/seeking/Makefile.am:
7354         * tests/threadstate/Makefile.am:
7355         * testsuite/caps/Makefile.am:
7356         * testsuite/cleanup/Makefile.am:
7357         * testsuite/dlopen/Makefile.am:
7358         * testsuite/dynparams/Makefile.am:
7359         * testsuite/plugin/Makefile.am:
7360         * testsuite/states/Makefile.am:
7361         * tools/Makefile.am:
7362           reorganize compile/link flags to be consistent
7363           put gst_info in gstcompat.h and actually use GST_DISABLE_DEPRECATED
7364
7365 2004-05-04  David Schleef  <ds@schleef.org>
7366
7367         The "once more, with feeling" check-in.
7368         * testsuite/caps/Makefile.am: dist caps_strings
7369         * testsuite/caps/renegotiate.c: (main): This test triggers a
7370           segfault in the core.  Marking as failing.
7371
7372 2004-05-03  David Schleef  <ds@schleef.org>
7373
7374         * testsuite/caps/deserialize.c: (main): Fix problems noticed
7375           by the build bots.
7376         * testsuite/caps/renegotiate.c: (main): Same.
7377
7378 2004-05-03  David Schleef  <ds@schleef.org>
7379
7380         * testsuite/caps/renegotiate.c: (my_fixate), (main): Another test.
7381
7382 2004-05-03  David Schleef  <ds@schleef.org>
7383
7384         * testsuite/caps/deserialize.c: (main): Use the srcdir environment
7385           variable to find our source file.
7386
7387 2004-05-03  David Schleef  <ds@schleef.org>
7388
7389         * configure.ac:  Link plugins with libgstreamer and dependent
7390           libraries
7391         * testsuite/caps/Makefile.am:
7392         * testsuite/caps/caps_strings:
7393         * testsuite/caps/deserialize.c: (main): Add a little test to slog
7394           through a file of caps strings and test each one
7395
7396 2004-05-04  Benjamin Otte  <otte@gnome.org>
7397
7398         * libs/gst/bytestream/Makefile.am:
7399         * libs/gst/bytestream/adapter.c: 
7400         * libs/gst/bytestream/adapter.h:
7401           add GstAdapter, similar to bytestream, but doesn't require ugly event
7402           handling or uglier loopbased elements
7403
7404 2004-05-03  David Schleef  <ds@schleef.org>
7405
7406         * testsuite/caps/Makefile.am: Fix spelling of Ηρατοσθενες
7407         * testsuite/caps/erathostenes.c:
7408         * testsuite/caps/eratosthenes.c: (eratosthenes), (main):
7409
7410 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7411
7412         * docs/pwg/pwg.xml:
7413           remove hardcoded stylesheet path (duh)
7414         * docs/random/release:
7415         * docs/gst/gstreamer-sections.txt:
7416         * gst/Makefile.am:
7417         * gst/gst.h:
7418         * gst/gst_private.h:
7419         * gst/gstcaps.c:
7420         * gst/gstevent.c:
7421         * gst/gstformat.c:
7422         * gst/gstinfo.c:
7423         * gst/gstinfo.h:
7424         * gst/gstinterface.c:
7425         * gst/gstmemchunk.c:
7426         * gst/gstprobe.c:
7427         * gst/gstquery.c:
7428         * gst/gstregistry.c:
7429         * gst/gstregistrypool.c:
7430         * gst/gststructure.c:
7431         * gst/gsttaginterface.c:
7432         * gst/gstthread.c:
7433         * gst/gsttrace.c:
7434         * gst/gsttypefind.c: (gst_type_find_factory_get_type):
7435         * gst/gsturi.c:
7436         * gst/gstvalue.c:
7437           deprecate gst_info; remove gstlog.h
7438    
7439
7440 2004-05-03  Thomas Vander Stichele  <thomas at apestaart dot org>
7441
7442         * Makefile.am:
7443         * po/en_GB.po:
7444         * po/sv.po:
7445         * po/uk.po:
7446           updated translations
7447
7448 2004-05-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7449
7450         * gst/gstbin.c: (gst_bin_dispose):
7451           better debugging
7452
7453 2004-05-03  Johan Dahlin  <johan@gnome.org>
7454
7455         * gst/schedulers/gstoptimalscheduler.c
7456         (gst_opt_scheduler_pad_unlink): Check if element is non-NULL and
7457         really is a GstElement. Avoids critical when running gst-launch -v
7458         and a oggdemux/decoding pipeline.
7459
7460 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7461
7462         * docs/gst/tmpl/gstpipeline.sgml :
7463         * docs/manual/elements-api.xml :
7464                 doc fix by Patrick Guimond (Protector) from devel ML
7465                 reviewed by ronald
7466
7467 2004-05-02  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7468
7469         * docs/gst/Makefile.am :
7470         * docs/libs/Makefile.am :
7471                 apply a patch from Arwed v. Merkatz so that gtk-doc
7472                 generated docs install (same for .devhelp file)
7473                 (fixes part 1 of #138836)
7474
7475 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7476
7477         * docs/faq/dependencies.xml: typo
7478         * docs/faq/getting.xml :
7479             - fix download URL for new gstreamer site
7480             - hide sf.net download page as latest version aren't there
7481             - fix apt URLs
7482             - fill "get via CVS" paragraph (link to dev page on the site)
7483         * docs/faq/general.xml:
7484             hide status tables as they no more exists
7485             change case on plugins license file to reflect reality
7486         * docs/faq/troubleshooting.xml:
7487             remove the wiki question/answer as there is no more wiki
7488
7489 2004-04-30  Thomas Vander Stichele  <thomas at apestaart dot org>
7490
7491         * gst/gsterror.h:
7492           include the headers needed for declarations used in this header
7493
7494 2004-04-30  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7495
7496         * docs/random/uraeus/gstreamer_and_midi.txt :
7497           add .kar (midi + karaoke/lyrics 'track') doc to midi doc.
7498           (fixes #132288)
7499
7500 2004-04-30  Sebastien Cote  <sc5@hermes.usherb.ca>
7501
7502         reviewed by Benjamin Otte  <otte@gnome.org>
7503
7504         * gst/schedulers/gthread-cothreads.h:
7505           free allocated data for main cothread, too when destroying context
7506           (fixes #141417)
7507
7508 2004-04-29  Stephane Loeuillet <stephane.loeuillet@tiscali.fr>
7509
7510         * docs/manual/goals.xml : remove duplicated paragraph at end 
7511         of doc page (fixes #141448)
7512
7513 2004-04-29  David Schleef  <ds@schleef.org>
7514
7515         * gst/elements/gstfilesink.c: (gst_filesink_handle_event):
7516         Patch from Sebastien Cote to fix leakage of events. (bug #141414)
7517
7518 2004-04-29  Thomas Vander Stichele  <thomas at apestaart dot org>
7519
7520         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
7521           fix property
7522         * gst/gstcaps.c:
7523           fix doc string
7524         * po/POTFILES.in:
7525           rename typefind source file
7526
7527 2004-04-28  David Schleef  <ds@schleef.org>
7528
7529         Several new files from Steve Lhomme's MSVC patch (bug #141317):
7530         * win32/GStreamer.vcproj:
7531         * win32/Makefile:
7532         * win32/config.h:
7533         * win32/dirent.c: (_topendir), (_treaddir), (_tclosedir),
7534         (_trewinddir), (_ttelldir), (_tseekdir):
7535         * win32/dirent.h:
7536         * win32/gst-inspect.vcproj:
7537         * win32/gst-launch.vcproj:
7538         * win32/gst-register.vcproj:
7539         * win32/gstbytestream.vcproj:
7540         * win32/gstelements.vcproj:
7541         * win32/gstoptimalscheduler.vcproj:
7542         * win32/gstspider.vcproj:
7543         * win32/gtchar.h:
7544         * win32/mman.c: (mmap), (mprotect), (msync), (munmap):
7545         * win32/mman.h:
7546         * win32/mman.inl:
7547         * win32/msvc71.sln:
7548
7549 2004-04-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7550
7551         * gst/gst.c: (init_post):
7552         * gst/gstinfo.c:
7553           remove useless _gst_progname stuff
7554         * tools/gst-inspect.c: (print_field), (print_caps):
7555           improve caps output
7556
7557 2004-04-28  David Schleef  <ds@schleef.org>
7558
7559         Disable parsing of a lot of files that aren't part of the
7560         exported API.  Move corresponding template files to old/,
7561         waiting for removal when they don't contain anything
7562         interesting.
7563         * docs/gst/Makefile.am:
7564         * docs/gst/gstreamer-sections.txt:
7565         * docs/gst/tmpl/cothreads.sgml:
7566         * docs/gst/tmpl/cothreads_compat.sgml:
7567         * docs/gst/tmpl/gettext.sgml:
7568         * docs/gst/tmpl/gobject2gtk.sgml:
7569         * docs/gst/tmpl/grammar.tab.sgml:
7570         * docs/gst/tmpl/gst-i18n-app.sgml:
7571         * docs/gst/tmpl/gst-i18n-lib.sgml:
7572         * docs/gst/tmpl/gst_private.sgml:
7573         * docs/gst/tmpl/gstaggregator.sgml:
7574         * docs/gst/tmpl/gstarch.sgml:
7575         * docs/gst/tmpl/gstatomic_impl.sgml:
7576         * docs/gst/tmpl/gstbufferstore.sgml:
7577         * docs/gst/tmpl/gstdata_private.sgml:
7578         * docs/gst/tmpl/gstdisksink.sgml:
7579         * docs/gst/tmpl/gstdisksrc.sgml:
7580         * docs/gst/tmpl/gstelementfactory.sgml:
7581         * docs/gst/tmpl/gstextratypes.sgml:
7582         * docs/gst/tmpl/gstfakesink.sgml:
7583         * docs/gst/tmpl/gstfakesrc.sgml:
7584         * docs/gst/tmpl/gstfdsink.sgml:
7585         * docs/gst/tmpl/gstfdsrc.sgml:
7586         * docs/gst/tmpl/gstfilesink.sgml:
7587         * docs/gst/tmpl/gstfilesrc.sgml:
7588         * docs/gst/tmpl/gsthttpsrc.sgml:
7589         * docs/gst/tmpl/gstidentity.sgml:
7590         * docs/gst/tmpl/gstindexfactory.sgml:
7591         * docs/gst/tmpl/gstmarshal.sgml:
7592         * docs/gst/tmpl/gstmd5sink.sgml:
7593         * docs/gst/tmpl/gstmultidisksrc.sgml:
7594         * docs/gst/tmpl/gstmultifilesrc.sgml:
7595         * docs/gst/tmpl/gstpadtemplate.sgml:
7596         * docs/gst/tmpl/gstpipefilter.sgml:
7597         * docs/gst/tmpl/gstschedulerfactory.sgml:
7598         * docs/gst/tmpl/gstsearchfuncs.sgml:
7599         * docs/gst/tmpl/gstshaper.sgml:
7600         * docs/gst/tmpl/gstspider.sgml:
7601         * docs/gst/tmpl/gstspideridentity.sgml:
7602         * docs/gst/tmpl/gststatistics.sgml:
7603         * docs/gst/tmpl/gsttee.sgml:
7604         * docs/gst/tmpl/gsttimecache.sgml:
7605         * docs/gst/tmpl/gsttypefind.sgml:
7606         * docs/gst/tmpl/gsttypefindfactory.sgml:
7607         * docs/gst/tmpl/gstxmlregistry.sgml:
7608         * docs/gst/tmpl/gthread-cothreads.sgml:
7609         * docs/gst/tmpl/old/cothreads.sgml:
7610         * docs/gst/tmpl/old/cothreads_compat.sgml:
7611         * docs/gst/tmpl/old/gettext.sgml:
7612         * docs/gst/tmpl/old/gobject2gtk.sgml:
7613         * docs/gst/tmpl/old/grammar.tab.sgml:
7614         * docs/gst/tmpl/old/gst-i18n-app.sgml:
7615         * docs/gst/tmpl/old/gst-i18n-lib.sgml:
7616         * docs/gst/tmpl/old/gst_private.sgml:
7617         * docs/gst/tmpl/old/gstaggregator.sgml:
7618         * docs/gst/tmpl/old/gstarch.sgml:
7619         * docs/gst/tmpl/old/gstatomic_impl.sgml:
7620         * docs/gst/tmpl/old/gstbufferstore.sgml:
7621         * docs/gst/tmpl/old/gstdata_private.sgml:
7622         * docs/gst/tmpl/old/gstdisksink.sgml:
7623         * docs/gst/tmpl/old/gstdisksrc.sgml:
7624         * docs/gst/tmpl/old/gstelementfactory.sgml:
7625         * docs/gst/tmpl/old/gstextratypes.sgml:
7626         * docs/gst/tmpl/old/gstfakesink.sgml:
7627         * docs/gst/tmpl/old/gstfakesrc.sgml:
7628         * docs/gst/tmpl/old/gstfdsink.sgml:
7629         * docs/gst/tmpl/old/gstfdsrc.sgml:
7630         * docs/gst/tmpl/old/gstfilesink.sgml:
7631         * docs/gst/tmpl/old/gstfilesrc.sgml:
7632         * docs/gst/tmpl/old/gsthttpsrc.sgml:
7633         * docs/gst/tmpl/old/gstidentity.sgml:
7634         * docs/gst/tmpl/old/gstindexfactory.sgml:
7635         * docs/gst/tmpl/old/gstmarshal.sgml:
7636         * docs/gst/tmpl/old/gstmd5sink.sgml:
7637         * docs/gst/tmpl/old/gstmultidisksrc.sgml:
7638         * docs/gst/tmpl/old/gstmultifilesrc.sgml:
7639         * docs/gst/tmpl/old/gstpadtemplate.sgml:
7640         * docs/gst/tmpl/old/gstpipefilter.sgml:
7641         * docs/gst/tmpl/old/gstschedulerfactory.sgml:
7642         * docs/gst/tmpl/old/gstsearchfuncs.sgml:
7643         * docs/gst/tmpl/old/gstshaper.sgml:
7644         * docs/gst/tmpl/old/gstspider.sgml:
7645         * docs/gst/tmpl/old/gstspideridentity.sgml:
7646         * docs/gst/tmpl/old/gststatistics.sgml:
7647         * docs/gst/tmpl/old/gsttee.sgml:
7648         * docs/gst/tmpl/old/gsttimecache.sgml:
7649         * docs/gst/tmpl/old/gsttypefindfactory.sgml:
7650         * docs/gst/tmpl/old/gstxmlregistry.sgml:
7651         * docs/gst/tmpl/old/gthread-cothreads.sgml:
7652         * docs/gst/tmpl/old/types.sgml:
7653         * docs/gst/tmpl/types.sgml:
7654
7655         Rename gsttypefind.[ch] back to gsttypefindelement.[ch], since
7656         gtkdoc-scan doesn't like files with the same name in different
7657         directories.
7658         * gst/elements/Makefile.am:
7659         * gst/elements/gstelements.c:
7660         * gst/elements/gsttypefind.c: 
7661         * gst/elements/gsttypefind.h:
7662         * gst/elements/gsttypefindelement.c:
7663         * gst/elements/gsttypefindelement.h:
7664
7665 2004-04-28  David Schleef  <ds@schleef.org>
7666
7667         A bunch of portability fixes, derived from Steve Lhomme's MSVC
7668         patch (bug #141317):
7669         * gst/gst-i18n-lib.h: Allow disabling gettext.
7670         * gst/gstatomic_impl.h: disable warning when it's dumb.
7671         * gst/gstclock.c: fix include
7672         * gst/gstcompat.h: fix variadic macro
7673         * gst/gstinfo.c: fix include
7674         * gst/gstmacros.h: add defines for inlines on MSVC
7675         * gst/gstplugin.c: fix includes
7676         * gst/gstregistry.c: fix includes
7677         * gst/gstregistry.h: use S_IREAD, etc., if S_IRUSR isn't defined
7678         * gst/gstsystemclock.c: fix include
7679         * gst/gsttrace.c: (gst_trace_new), (gst_trace_text_flush): use
7680         S_IREAD if S_IRUSR isn't defined.  fix use of non-portable functions
7681         * gst/registries/gstxmlregistry.c:
7682         (gst_xml_registry_parse_element_factory): fix use of non-portable
7683         functions
7684         * libs/gst/control/dparam.h: Remove trailing comma in enum definition
7685         * libs/gst/control/dparammanager.h: same
7686
7687 2004-04-28  David Schleef  <ds@schleef.org>
7688
7689         Move a bunch of unused files to old/ with names that are
7690         not case-insensitive-unique.  These files still contain some
7691         useful information that needs to be merged into gstbin.sgml,
7692         etc., so they shouldn't be deleted yet.
7693         * docs/gst/tmpl/GstBin.sgml:
7694         * docs/gst/tmpl/GstBuffer.sgml:
7695         * docs/gst/tmpl/GstCaps.sgml:
7696         * docs/gst/tmpl/GstClock.sgml:
7697         * docs/gst/tmpl/GstCompat.sgml:
7698         * docs/gst/tmpl/GstData.sgml:
7699         * docs/gst/tmpl/GstElement.sgml:
7700         * docs/gst/tmpl/GstEvent.sgml:
7701         * docs/gst/tmpl/GstIndex.sgml:
7702         * docs/gst/tmpl/GstStructure.sgml:
7703         * docs/gst/tmpl/GstTag.sgml:
7704         * docs/gst/tmpl/old/GstBin.sgml:
7705         * docs/gst/tmpl/old/GstBuffer.sgml:
7706         * docs/gst/tmpl/old/GstCaps.sgml:
7707         * docs/gst/tmpl/old/GstClock.sgml:
7708         * docs/gst/tmpl/old/GstCompat.sgml:
7709         * docs/gst/tmpl/old/GstData.sgml:
7710         * docs/gst/tmpl/old/GstElement.sgml:
7711         * docs/gst/tmpl/old/GstEvent.sgml:
7712         * docs/gst/tmpl/old/GstIndex.sgml:
7713         * docs/gst/tmpl/old/GstStructure.sgml:
7714         * docs/gst/tmpl/old/GstTag.sgml:
7715
7716 2004-04-28  David Schleef  <ds@schleef.org>
7717
7718         * gst/gstcaps.c: (gst_caps_copy), (gst_caps_free),
7719         (gst_caps_append), (gst_caps_append_structure),
7720         (gst_caps_get_size), (gst_caps_get_structure), (gst_caps_copy_1),
7721         (gst_caps_set_simple), (gst_caps_set_simple_valist),
7722         (gst_caps_is_any), (gst_caps_is_empty), (gst_caps_is_chained),
7723         (gst_caps_is_fixed), (gst_caps_is_always_compatible),
7724         (gst_caps_intersect), (gst_caps_normalize),
7725         (gst_caps_transform_to_string):  Patch from Tim-Philipp Müller
7726         to fix GST_CAPS() and GST_IS_CAPS(). (bug #141304)
7727         * gst/gstcaps.h: use GST_IS_CAPS().
7728
7729 2004-04-26  David Schleef  <ds@schleef.org>
7730
7731         * gst/gstcpu.c: (gst_cpuid_i386): Don't clobber ebx in inline
7732         assembly.  gcc doesn't handle it correctly. (bug #141083)
7733         * gst/gsttrashstack.h: same
7734
7735 2004-04-25  Benjamin Otte  <otte@gnome.org>
7736
7737         * gst/gstelement.c: (gst_element_change_state):
7738           fix assertion to do an int comparison
7739
7740 2004-04-25  Benjamin Otte  <otte@gnome.org>
7741
7742         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
7743           better debugging output on error
7744
7745 2004-04-25  Benjamin Otte  <otte@gnome.org>
7746
7747         * gst/gstcaps.c: (gst_caps_subtract):
7748           fix memleak
7749
7750 2004-04-23  Benjamin Otte  <otte@gnome.org>
7751
7752         * gst/gstvalue.c: (gst_value_compare_buffer),
7753         (_gst_value_initialize):
7754           add comparison function for buffers
7755
7756 2004-04-22  Ronald Bultje  <rbultje@ronald.bitfreak.net>
7757
7758         * docs/pwg/pwg.xml:
7759           Just found out that this so-called "ima-wav" format is really
7760           just "dvi adpcm" (according to the MS WAV documentation). So
7761           renaming it. We didn't use it yet anyway.
7762
7763 2004-04-23  Benjamin Otte  <otte@gnome.org>
7764
7765         * gst/gstcaps.c: (gst_caps_is_always_compatible):
7766           call gst_caps_is_subset
7767
7768 2004-04-23  Benjamin Otte  <otte@gnome.org>
7769
7770         * gst/gstcaps.c: (gst_caps_subtract), (gst_caps_is_equal), 
7771         (gst_caps_is_subset):
7772           add documentation
7773
7774 2004-04-23  Benjamin Otte  <otte@gnome.org>
7775           
7776         * gst/gstcaps.c: (gst_caps_structure_subtract_field),
7777         (gst_caps_structure_subtract), (gst_caps_subtract),
7778         (gst_caps_structure_figure_out_union),
7779         (gst_caps_structure_simplify), (gst_caps_do_simplify):
7780           fix simplifying and subtracting not working correctly with optional
7781           properties
7782           solve assorted problems that make it now simplify ebven more
7783         * docs/gst/tmpl/gstcaps.sgml:
7784         * gst/gstcaps.h:
7785           make gst_caps_do_simplify return a bool to indicate if it simplified
7786         * testsuite/caps/simplify.c: (main):
7787           add more checks. The tests is quite a bit useless right now because
7788           the core is heavily simplifying itself.
7789         * testsuite/caps/caps.h:
7790           fix caps to contain all optional properties
7791
7792 2004-04-22  Benjamin Otte  <otte@gnome.org>
7793
7794         * docs/gst/tmpl/gstcaps.sgml:
7795         * docs/gst/tmpl/gstfilesrc.sgml:
7796         * docs/gst/tmpl/gststructure.sgml:
7797         * docs/gst/tmpl/gstvalue.sgml:
7798           update for recent API changes
7799         * gst/gstcaps.c: (gst_caps_do_simplify):
7800           fix to stop trying with a freed structure
7801         * gst/gstpad.c: (gst_pad_link_fixate):
7802           simplify caps
7803         * gst/gstpad.c: (gst_pad_template_get_caps_by_name):
7804           remove C++ comment
7805         * gst/gstpad.h:
7806           deprecate gst_pad_template_get_caps_by_name, it doesn't work anyway
7807         * gst/gststructure.c: (gst_structure_value_get_generic_type),
7808         (gst_structure_to_string):
7809           keep the correct type when using lists of ranges
7810         * gst/gstvalue.c: (gst_value_list_prepend_value),
7811         (gst_value_list_append_value):
7812           copy the value before adding to the list (d'oh)
7813         * gst/gstvalue.c: (gst_value_subtract_int_range_int),
7814         (gst_value_subtract_int_range_int_range):
7815           handle overflows correctly
7816         * gst/gstvalue.c: (gst_value_subtract_from_list):
7817           fix memleak
7818         * testsuite/caps/caps.h:
7819           add a caps that caused segfaults
7820
7821 2004-04-22  Benjamin Otte  <otte@gnome.org>
7822
7823         * testsuite/refcounting/pad.c: (main):
7824           fix test
7825
7826 2004-04-22  Benjamin Otte  <otte@gnome.org>
7827
7828         * gst/gstcaps.c: (gst_caps_subtract):
7829           allow subtracting ANY and EMPTY from ANY caps
7830
7831 2004-04-22  Benjamin Otte  <otte@gnome.org>
7832
7833         * gst/gstcaps.c: (gst_caps_append), (gst_caps_intersect),
7834         (gst_caps_union):
7835           only simplify in functions that create new caps. Simplifying in
7836           gst_caps_append breaks tests.
7837
7838 2004-04-22  Benjamin Otte  <otte@gnome.org>
7839
7840         * gst/gstcaps.c: (gst_caps_structure_simplify):
7841           unset GValue after use
7842         * gst/gstcaps.c: (gst_caps_append), 
7843         * gst/gstpad.c: (gst_pad_link_fixate), (gst_pad_template_new):
7844           use gst_caps_simplify (reduces registry size by 30%)
7845         * gst/gstpad.c: (gst_pad_template_new):
7846           don't allow NULL caps
7847
7848 2004-04-22  Benjamin Otte  <otte@gnome.org>
7849
7850         * docs/gst/gstreamer-sections.txt:
7851           add gst_caps_do_simplify
7852         * gst/gstcaps.c:
7853           add documentation for gst_caps_do_simplify
7854         * gst/gstvalue.h:
7855           fix typo in gst_value_register_subtract_func declaration for gst-doc
7856
7857 2004-04-22  Benjamin Otte  <otte@gnome.org>
7858
7859         * gst/gstcaps.c: (gst_caps_from_string_inplace):
7860           fix bug when converting from empty string.
7861         * gst/gstcaps.c: (gst_caps_new_any), (gst_caps_new_simple),
7862         (gst_caps_new_full_valist), (gst_caps_copy), (gst_caps_copy_1):
7863           use gst_caps_new_empty to allocate a new caps. Only that function
7864           allocates memory for caps now.
7865         * gst/gstcaps.c: (gst_caps_remove_and_get_structure),
7866         (gst_caps_remove_structure):
7867           add ability to remove one structure (but not to header yet)
7868         * gst/gstcaps.c: (gst_caps_compare_structures),
7869         (gst_caps_simplify), (gst_caps_structure_figure_out_union),
7870         (gst_caps_structure_simplify), (gst_caps_do_simplify),
7871         * gst/gstcaps.h:
7872           add gst_caps_do_simplify that tries to simplify a caps in place.
7873           Deprecate old gst_caps_simplify function.
7874         * testsuite/caps/caps.h:
7875           add caps.h containing a common set of caps to test against.
7876         * testsuite/caps/sets.c: (check_caps), (main):
7877           use it.
7878         * testsuite/caps/.cvsignore:
7879         * testsuite/caps/Makefile.am:
7880         * testsuite/caps/simplify.c: (check_caps), (main):
7881           add test to check correctness and efficency of caps simplification.
7882
7883 2004-04-22  Sebastien Cote <sc5@hermes.usherb.ca>
7884
7885         reviewed by Benjamin Otte  <otte@gnome.org>
7886
7887         * gst/gstparse.c: (_gst_parse_escape):
7888           Free the GString used in _gst_parse_escape()
7889
7890 2004-04-21  Benjamin Otte  <in7y118@public.uni-hamburg.de>
7891
7892         * gst/gstpad.c: (gst_pad_link_negotiate):
7893           refuse to link if the link is not possible
7894         * configure.ac:
7895         * testsuite/Makefile.am:
7896         * testsuite/negotiation/.cvsignore:
7897         * testsuite/negotiation/Makefile.am:
7898         * testsuite/negotiation/pad_link.c: (main):
7899           add test that checks the above behaviour
7900
7901 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7902
7903         * docs/gst/gstreamer-sections.txt:
7904           add newly added API
7905
7906 2004-04-21  Thomas Vander Stichele  <thomas at apestaart dot org>
7907
7908         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
7909         (gst_filesrc_get_mmap), (gst_filesrc_get_read), (gst_filesrc_get),
7910         (gst_filesrc_open_file), (gst_filesrc_close_file),
7911         (gst_filesrc_srcpad_query), (gst_filesrc_srcpad_event):
7912         * gst/elements/gstfilesrc.h:
7913           add support for non-regular files (#140734)
7914
7915 2004-04-21  Benjamin Otte  <otte@gnome.org>
7916
7917         * gst/gstpad.c: (gst_pad_link_fixate):
7918           add sophisticated error checking code to see if fixation functions
7919           did their fixation right
7920
7921 2004-04-21  Benjamin Otte  <otte@gnome.org>
7922
7923         * gst/gstcaps.c: (gst_caps_append), (gst_caps_union):
7924           check for ANY caps before appending/unioning
7925         * gst/gstcaps.c: (gst_caps_is_subset),
7926         (gst_caps_is_equal), (gst_caps_structure_subtract_field),
7927         (gst_caps_structure_subtract), (gst_caps_subtract):
7928         * gst/gstcaps.h:
7929           add gst_caps_is_equal, gst_caps_is_subset and gst_caps_subtract to
7930           the API. deprecate gst_caps_is_equal_fixed
7931         * gst/gstpad.c: (gst_pad_try_set_caps):
7932         * gst/gstqueue.c: (gst_queue_link):
7933           s/gst_caps_is_equal_fixed/gst_caps_is_equal/
7934         * gst/gststructure.c: (gst_structure_get_name_id):
7935         * gst/gststructure.h:
7936           add function gst_structure_get_name_id
7937         * gst/gstvalue.c: (gst_value_subtract_int_int_range),
7938         (gst_value_create_new_range), (gst_value_subtract_int_range_int),
7939         (gst_value_subtract_int_range_int_range),
7940         (gst_value_subtract_double_double_range),
7941         (gst_value_subtract_double_range_double),
7942         (gst_value_subtract_double_range_double_range),
7943         (gst_value_subtract_from_list), (gst_value_subtract_list),
7944         (gst_value_can_intersect), (gst_value_subtract),
7945         (gst_value_can_subtract), (gst_value_register_subtract_func),
7946         (_gst_value_initialize):
7947         * gst/gstvalue.h:
7948           add support for subtracting values from each other. Note that
7949           subtracting means subtracting as in set theory. Required for caps
7950           stuff above.
7951         * testsuite/caps/.cvsignore:
7952         * testsuite/caps/Makefile.am:
7953         * testsuite/caps/erathostenes.c: (erathostenes), (main):
7954         * testsuite/caps/sets.c: (check_caps), (main):
7955         * testsuite/caps/subtract.c: (check_caps), (main):
7956           add tests for subtraction and equality code.
7957
7958 2004-04-20  David Schleef  <ds@schleef.org>
7959
7960         * gst/autoplug/Makefile.am:  Fix some little buglets in last checkin.
7961         * gst/indexers/Makefile.am:
7962         * gst/schedulers/Makefile.am:
7963         * libs/gst/bytestream/Makefile.am:
7964         * libs/gst/control/Makefile.am:
7965         * libs/gst/getbits/Makefile.am:
7966
7967 2004-04-20  David Schleef  <ds@schleef.org>
7968
7969         * common/as-libtool.mak: Fine-tune DLL building.
7970         * configure.ac: Link plugins against libgstreamer.  Define plugindir
7971         (like gst-plugins)
7972         * examples/plugins/Makefile.am: remove plugindir
7973         * gst/autoplug/Makefile.am: DLL building fixes
7974         * gst/elements/Makefile.am: DLL building fixes.  Disable pipefilter on
7975         Windows.
7976         * gst/elements/gstelements.c: Conditionally disable pipefilter.
7977         * gst/indexers/Makefile.am: DLL building fixes
7978         * gst/schedulers/Makefile.am: DLL building fixes.
7979         * libs/gst/bytestream/Makefile.am: DLL building fixes.
7980         * libs/gst/control/Makefile.am: same
7981         * libs/gst/getbits/Makefile.am: same
7982         * testsuite/Makefile.am: New dlopen directory
7983         * testsuite/dlopen/Makefile.am: Tests to check if libgstreamer works
7984         when dlopened.
7985         * testsuite/dlopen/dlopen_gst.c: (main): same
7986         * testsuite/dlopen/loadgst.c: (do_test): same
7987
7988 2004-04-20  David Schleef  <ds@schleef.org>
7989
7990         * gst/parse/grammar.y:  Apply patch from Sebastien Cote
7991         <sc5@hermes.usherb.ca> to fix a memleak. (bug #140594)
7992
7993 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
7994
7995         * gst/gstelement.c: (gst_element_wait),
7996         (gst_element_set_time_delay), (gst_element_change_state):
7997           Use GST_TIME_*
7998
7999 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8000
8001         * gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
8002         (gst_spider_identity_plug):
8003           improve debugging messages
8004         * gst/gstbin.c: (gst_bin_remove_func):
8005           make sure the state_change function is only called with simple state
8006           transitions
8007
8008 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8009
8010         * gst/elements/gstfakesink.c: (gst_fakesink_state_error_get_type),
8011         (gst_fakesink_set_property), (gst_fakesink_chain):
8012         * gst/elements/gstfakesrc.c: (gst_fakesrc_set_property):
8013         * gst/elements/gstfdsrc.c: (gst_fdsrc_set_property):
8014         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property):
8015         * gst/elements/gstidentity.c: (gst_identity_chain),
8016         (gst_identity_set_property):
8017         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_set_property):
8018         * gst/elements/gstpipefilter.c: (gst_pipefilter_set_property):
8019           add warnings to _set_property for unknown arguments
8020           use GST_TIME_FORMAT/GST_TIME_ARGS for timestamp printing
8021
8022 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8023
8024         * Makefile.am:
8025         * docs/manuals.mak:
8026           add .po file download snippet
8027           fix a bug in the doc makefile
8028
8029 2004-04-20  Thomas Vander Stichele  <thomas at apestaart dot org>
8030
8031         * Makefile.am:
8032         * po/LINGUAS:
8033         * po/en_GB.po:
8034           Added en_GB translation (Gareth Owen)
8035
8036 2004-04-20  Johan Dahlin  <johan@gnome.org>
8037
8038         * gst/gstpad.c (_invent_event): Clean up
8039
8040 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8041
8042         * testsuite/caps/filtercaps.c: (main):
8043           fix test to test things correctly (caps are complicated)
8044
8045 2004-04-20  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8046
8047         * testsuite/caps/Makefile.am:
8048         * testsuite/caps/filtercaps.c: (main):
8049           add test (that doesn't work right now, but should)
8050
8051 2004-04-19  David Schleef  <ds@schleef.org>
8052
8053         * configure.ac: Add test for allowing unaligned access.  Add define
8054         to put in gstconfig.h.
8055         * docs/gst/gstreamer-sections.txt: New symbols
8056         * docs/gst/tmpl/gstcompat.sgml: Check in changes made by gtkdoc
8057         * docs/gst/tmpl/gstfilesrc.sgml:
8058         * docs/gst/tmpl/gstparse.sgml:
8059         * docs/gst/tmpl/gsttypes.sgml:
8060         * docs/gst/tmpl/gstutils.sgml:
8061         * docs/gst/tmpl/gstvalue.sgml:
8062         * gst/gstconfig.h.in: Add GST_HAVE_UNALIGNED_ACCESS
8063         * gst/gstutils.h: Add macros for unaligned memory access.  Useful
8064         on most !i386/!powerpc architectures.  From Daniel Gazard
8065         <daniel.gazard@free.fr>.  (bug #140156)
8066         * po/af.po: Check in changes made by gettext.
8067         * po/az.po:
8068         * po/fr.po:
8069         * po/nl.po:
8070         * po/sr.po:
8071         * po/sv.po:
8072
8073 2004-04-20  Benjamin Otte  <otte@gnome.org>
8074
8075         * gst/schedulers/entryscheduler.c: 
8076         (gst_entry_scheduler_yield):
8077           refuse to yield when decoupled elements insist on doing that.
8078           At least it's better than crashing
8079
8080 2004-04-19  David Schleef  <ds@schleef.org>
8081
8082         * docs/libs/Makefile.am: Change sinclude to include
8083         * docs/gst/Makefile.am: same
8084         * pkgconfig/Makefile.am:  Remove GNU-ism from makefile target
8085
8086 2004-04-19  Thomas Vander Stichele  <thomas at apestaart dot org>
8087
8088         * po/LINGUAS:
8089         * po/uk.po:
8090           Added Ukrainian translation (Maxim V. Dziumanenko)
8091
8092 2004-04-19  Johan Dahlin  <johan@gnome.org>
8093
8094         * gst/parse/grammar.y (__gst_parse_chain_free): Don't do null
8095         checking here, do it before calling the function.
8096         Clean up, use for loops instead of while loops while iterating
8097         over lists.
8098
8099         * gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
8100         in debug message.
8101         (gst_spider_create_and_plug): Improve debug message.
8102         General: Replace while loops which iterates over GLists with for
8103         loops. Which are much cleaner, improves readability, especially
8104         for gst_spider_identity_plug
8105
8106         * gst/gstpad.c (_invent_event): Fix parameters to warning macros,
8107         fixes bug 140477
8108
8109 2004-04-18  Thomas Vander Stichele  <thomas at apestaart dot org>
8110
8111         * po/LINGUAS:
8112         * po/tr.po:
8113           Added Turkish translation (Baris Cicek)
8114
8115 2004-04-18  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8116
8117         * docs/faq/troubleshooting.xml:
8118           Mention gst-register in the FAQ (fixes 139045).
8119
8120 2004-04-17  Thomas Vander Stichele  <thomas at apestaart dot org>
8121
8122         * docs/gst/gstreamer-sections.txt:
8123
8124 2004-04-17  Benjamin Otte  <otte@gnome.org>
8125
8126         * gst/gstelement.c: (gst_element_dispose):
8127           simplify
8128         * gst/gstpad.c: (gst_pad_call_chain_function):
8129           don't create loads of events due to bad macro usage
8130
8131 2004-04-16  David Schleef  <ds@schleef.org>
8132
8133         * gst/gstcaps.c: (gst_caps_is_fixed_foreach):
8134         * gst/gstpad.c: (_gst_pad_default_fixate_foreach):
8135         * gst/gstvalue.c: (gst_value_serialize_buffer),
8136         (gst_value_deserialize_buffer), (gst_type_is_fixed),
8137         (_gst_value_initialize): Create a new function gst_type_is_fixed()
8138         to indicate types that are fixed wrt caps or not.  Switching to
8139         this function fixes (bug #140298).
8140         * gst/gstvalue.h:
8141
8142 2004-04-16  David Schleef  <ds@schleef.org>
8143
8144         * common/m4/gst-arch.m4:  Implmenent a whitelist and blacklist
8145         for GST_UNALIGNED_ACESS, since we essentially know which archs
8146         are ok.
8147
8148 2004-04-17  Benjamin Otte  <otte@gnome.org>
8149
8150         * docs/gst/Makefile.am:
8151           ignore gst/parse directory when building docs (fixes #140205)
8152
8153 2004-04-16  Thomas Vander Stichele  <thomas at apestaart dot org>
8154
8155         * testsuite/refcounting/mem.c: (vmsize):
8156           do error checking
8157
8158 2004-04-16  Johan Dahlin  <johan@gnome.org>
8159
8160         * docs/gst/gstreamer-sections.txt: Add gst_pad_call_chain_function
8161         and gst_pad_call_get_function.
8162
8163 2004-04-15  David Schleef  <ds@schleef.org>
8164
8165         * common/m4/gst-arch.m4: Add GST_UNALIGNED_ACCESS() macro that
8166         checks if we can access unaligned memory.
8167         * configure.ac: Use it.
8168
8169 2004-04-16  Benjamin Otte  <otte@gnome.org>
8170
8171         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get),
8172         (gst_filesrc_change_state), (gst_filesrc_srcpad_event):
8173         * gst/elements/gstfilesrc.h:
8174           s/seek_happened/need_discont/ and require discont before sending any
8175           data
8176
8177 2004-04-15  David Schleef  <ds@schleef.org>
8178
8179         * gst/gstvalue.c: (gst_value_serialize_buffer),
8180         (gst_value_deserialize_buffer), (_gst_value_initialize):
8181         Register these types as fundamental types. (bug #140015)
8182
8183 2004-04-16  Benjamin Otte  <otte@gnome.org>
8184
8185         * gst/gstpad.c: (gst_pad_set_active), (gst_pad_link_new),
8186         (gst_pad_link_free), (gst_pad_link_try), (_invent_event),
8187         (gst_pad_pull):
8188           implement enforcing discont events before buffers are passed. This
8189           allows state changes of only some elements and later correctly going
8190           on where they left off (or in short: you can now set audio sinks to
8191           NULL to release the device when the pipeline is paused)
8192         * gst/gstpad.c: (gst_pad_call_chain_function),
8193         (gst_pad_call_get_function):
8194         * gst/gstpad.h:
8195           add gst_pad_call_chain_function and gst_pad_call_get_function for
8196           scheduler interaction. They are required because of the changes
8197           above.
8198         * gst/schedulers/entryscheduler.c: (get_buffer),
8199         (gst_entry_scheduler_chain_wrapper),
8200         (gst_entry_scheduler_get_wrapper),
8201         (gst_entry_scheduler_state_transition),
8202         (gst_entry_scheduler_pad_link):
8203         * gst/schedulers/gstbasicscheduler.c:
8204         (gst_basic_scheduler_chain_wrapper),
8205         (gst_basic_scheduler_src_wrapper),
8206         (gst_basic_scheduler_chainhandler_proxy),
8207         (gst_basic_scheduler_gethandler_proxy),
8208         (gst_basic_scheduler_cothreaded_chain),
8209         (gst_basic_scheduler_chain_elements):
8210         * gst/schedulers/gstoptimalscheduler.c:
8211         (get_group_schedule_function), (pad_clear_queued),
8212         (gst_opt_scheduler_pad_link):
8213           use the new functions instead of calling get/chain-functions
8214           directly.
8215
8216 2004-04-15  David Schleef  <ds@schleef.org>
8217
8218         * docs/gst/gstreamer-sections.txt: Remove deprecated symbols.
8219         * docs/gst/tmpl/gstinfo.sgml: same
8220         * docs/gst/tmpl/gstutils.sgml: Remove a bunch of bogus crap that
8221         gtk-doc put here.
8222         * gst/gstutils.h: Remove the \ that was confusing gtk-doc.
8223         * examples/queue/queue.c: (main):  We iterate pipelines, not
8224         bins.  (bug #139996)
8225
8226 2004-04-15  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8227
8228         * docs/pwg/advanced-types.xml:
8229           Add MS RLE support. Also document Qt RLE although I have no sample
8230           files for that yet. And document an extra property for ADPCM.
8231
8232 2004-04-15  David Schleef  <ds@schleef.org>
8233
8234         * gst/gstplugin.c: (_gst_plugin_fault_handler_restore),
8235         (_gst_plugin_fault_handler_setup):  Disable more stuff on
8236         Windows.
8237
8238 2004-04-15  David Schleef  <ds@schleef.org>
8239
8240         * gst/gstinfo.c: (_gst_debug_init): Change some internal
8241         symbol names to not conflict with new gstinfo.h symbols.
8242         * gst/gstinfo.h: Add inline functions for all those crazy
8243         compilers that don't know how to handle variadic macros (MSVC).
8244
8245 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8246
8247         * configure.ac: bump nano to 1
8248
8249 === release 0.8.1 ===
8250
8251 2004-04-15  Thomas Vander Stichele  <thomas at apestaart dot org>
8252
8253         * NEWS:
8254         * RELEASE:
8255         * configure.ac:
8256           releasing 0.8.1, "Snow Brigade"
8257
8258 2004-04-14  David Schleef  <ds@schleef.org>
8259
8260         * testsuite/Makefile.am: define tests_ignore
8261         * testsuite/Rules: Added new tests_ignore, which get compiled,
8262         but not run (generally because they're inconsistent or have
8263         heisenbugs).  Now we can ensure all the .c files compile in
8264         testsuite/.
8265         * testsuite/bins/Makefile.am: define tests_ignore
8266         * testsuite/bytestream/Makefile.am:
8267         * testsuite/caps/Makefile.am:
8268         * testsuite/clock/Makefile.am:
8269         * testsuite/debug/Makefile.am:
8270         * testsuite/debug/global.c: (gst_debug_log_one),
8271         (gst_debug_log_two): Fix compilation problem.
8272         * testsuite/dynparams/Makefile.am:
8273         * testsuite/elements/Makefile.am:
8274         * testsuite/ghostpads/Makefile.am:
8275         * testsuite/indexers/Makefile.am:
8276         * testsuite/parse/Makefile.am:
8277         * testsuite/plugin/Makefile.am:
8278         * testsuite/refcounting/Makefile.am:
8279         * testsuite/refcounting/element_pad.c: (main): Don't return leak
8280         results, because it's not calculated correctly.
8281         * testsuite/refcounting/pad.c: (main): same
8282         * testsuite/states/Makefile.am:
8283         * testsuite/tags/Makefile.am:
8284         * testsuite/threads/Makefile.am:
8285
8286 2004-04-14  David Schleef  <ds@schleef.org>
8287
8288         * gst/gstcpu.c: (gst_cpuid_i386): Add workaround for gcc-3.2
8289         generating bad code around the cpu detection asm code.
8290
8291 2004-04-14  Thomas Vander Stichele  <thomas at apestaart dot org>
8292
8293         * tools/gst-inspect.c: (print_element_info):
8294           print numeric version of rank as well, since we added some - 1
8295           rank values to elements
8296
8297 2004-04-13  David Schleef  <ds@schleef.org>
8298
8299         * configure.ac:  Disable various code when compiling for MinGW.
8300         * gst/elements/Makefile.am:
8301         * gst/elements/gstelements.c:
8302         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
8303         * gst/elements/gstfilesrc.c: (gst_filesrc_init), (gst_filesrc_get):
8304         * gst/registries/gstxmlregistry.c: (make_dir):
8305
8306 2004-04-13  David Schleef  <ds@schleef.org>
8307
8308         * gst/Makefile.am:
8309         * gst/gstcpu.c: (gst_cpuid_i386): Convert asm source into inline
8310         assembly.
8311         * gst/gstcpuid_i386.s: remove
8312
8313 2004-04-13  David Schleef  <ds@schleef.org>
8314
8315         * docs/gst/tmpl/gstaggregator.sgml: Random checkin because gtk-doc
8316         seems to think it needs to be done.
8317         * docs/gst/tmpl/gstfakesink.sgml:
8318         * docs/gst/tmpl/gstfakesrc.sgml:
8319         * docs/gst/tmpl/gstfdsink.sgml:
8320         * docs/gst/tmpl/gstfdsrc.sgml:
8321         * docs/gst/tmpl/gstfilesink.sgml:
8322         * docs/gst/tmpl/gstfilesrc.sgml:
8323         * docs/gst/tmpl/gstidentity.sgml:
8324         * docs/gst/tmpl/gstmd5sink.sgml:
8325         * docs/gst/tmpl/gstmultifilesrc.sgml:
8326         * docs/gst/tmpl/gstpipefilter.sgml:
8327         * docs/gst/tmpl/gstshaper.sgml:
8328         * docs/gst/tmpl/gstspider.sgml:
8329         * docs/gst/tmpl/gstspideridentity.sgml:
8330         * docs/gst/tmpl/gststatistics.sgml:
8331         * docs/gst/tmpl/gsttee.sgml:
8332         * docs/gst/tmpl/gsttypefind.sgml:
8333         * docs/gst/tmpl/gstutils.sgml:
8334
8335 2004-04-13  David Schleef  <ds@schleef.org>
8336
8337         * configure.ac: Changes to remove POSIXisms (mmap in this case)
8338         and to build DLLs on Windows.
8339         * gst/Makefile.am:
8340         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
8341         (gst_filesrc_open_file):
8342         * gst/schedulers/Makefile.am:
8343
8344 2004-04-13  David Schleef  <ds@schleef.org>
8345
8346         * gst/gstcaps.c: (gst_caps_structure_fixate_field_nearest_int),
8347         (gst_caps_structure_fixate_field_nearest_double):  Fix bug in
8348         fixating lists.
8349
8350 2004-04-12  David Schleef  <ds@schleef.org>
8351
8352         * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type),
8353         (gst_buffer_free_chunk): Added gst_buffer_get_type() and changed
8354         to using it.
8355         * gst/gstbuffer.h: Changed GST_BUFFER_TYPE to gst_buffer_get_type()
8356         * gst/gstcaps.c: (gst_caps_is_fixed_foreach): Buffer is a fixed type
8357         * gst/gstpad.c: (_gst_pad_default_fixate_foreach): same
8358         * gst/gststructure.c: (gst_structure_set_valist),
8359         (gst_structure_from_abbr), (gst_structure_to_abbr): Add vararg
8360         support for buffers.
8361         * gst/gsttag.c: (gst_tag_register): Constify a prototype that was
8362         intended to be const.
8363         * gst/gsttag.h: same
8364         * gst/gstvalue.c: (gst_value_serialize_buffer),
8365         (gst_value_deserialize_buffer), (_gst_value_initialize):  Add code
8366         to (de)serialize buffers.
8367         * testsuite/caps/Makefile.am:  Add a bit of buffer testing
8368         * testsuite/caps/string-conversions.c: (main):
8369         * testsuite/caps/value_serialize.c: add new test
8370
8371 2004-04-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8372
8373         * docs/pwg/advanced-types.xml:
8374           Document MS video 1 (video/x-msvideocodec) mimetype/format.
8375
8376 2004-04-11  Benjamin Otte  <otte@gnome.org>
8377
8378         * gst/schedulers/gstbasicscheduler.c: (plugin_init):
8379           rename categories to basic_*
8380         * gst/schedulers/gstbasicscheduler.c: 
8381         (gst_basic_scheduler_chain_wrapper),
8382         (gst_basic_scheduler_chainhandler_proxy),
8383         (gst_basic_scheduler_gethandler_proxy),
8384         (gst_basic_scheduler_eventhandler_proxy):
8385           debugging category fixes - put common stuff in log category
8386         * gst/schedulers/gstbasicscheduler.c: 
8387         (gst_basic_scheduler_chain_elements):
8388           dirty fix: call gst_basic_scheduler_cothreaded_chain when already
8389           active and linking two active chains
8390
8391 2004-04-10  Benjamin Otte  <otte@gnome.org>
8392
8393         * docs/pwg/intro-preface.xml:
8394           fix dead links and remove reference to Wiki
8395
8396 2004-04-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8397
8398         * gst/schedulers/gstbasicscheduler.c:
8399           make sure we can switch back to the main function if we're still in
8400           the main function (supposed to fix #139617)
8401         * gst/schedulers/gthread-cothreads.h:
8402           don't throw an error when switching to the same cothread
8403
8404 2004-04-09  Benjamin Otte  <otte@gnome.org>
8405
8406         * gst/gstbin.c: (gst_bin_get_type):
8407         * gst/gstclock.c: (gst_clock_get_type):
8408         * gst/gstindex.c: (gst_index_get_type):
8409         * gst/gstobject.c: (gst_object_get_type),
8410         (gst_signal_object_get_type):
8411         * gst/gstpad.c: (gst_pad_get_type), (gst_real_pad_get_type),
8412         (gst_pad_template_get_type), (gst_ghost_pad_get_type):
8413         * gst/gstpluginfeature.c: (gst_plugin_feature_get_type):
8414         * gst/gstqueue.c: (gst_queue_get_type):
8415         * gst/gstregistry.c: (gst_registry_get_type):
8416         * gst/gstsystemclock.c: (gst_system_clock_get_type):
8417         * gst/gstthread.c: (gst_thread_get_type):
8418           don't use memchunks for these objects, use malloc instead
8419
8420 2004-04-08  Thomas Vander Stichele  <thomas at apestaart dot org>
8421
8422         * docs/gst/.cvsignore:
8423         * docs/gst/Makefile.am:
8424         * docs/gst/gstreamer-sections.txt:
8425         * docs/gst/tmpl/gstaggregator.sgml:
8426         * docs/gst/tmpl/gstbuffer.sgml:
8427         * docs/gst/tmpl/gstclock.sgml:
8428         * docs/gst/tmpl/gstelement.sgml:
8429         * docs/gst/tmpl/gstfakesink.sgml:
8430         * docs/gst/tmpl/gstfakesrc.sgml:
8431         * docs/gst/tmpl/gstfdsink.sgml:
8432         * docs/gst/tmpl/gstfdsrc.sgml:
8433         * docs/gst/tmpl/gstfilesink.sgml:
8434         * docs/gst/tmpl/gstfilesrc.sgml:
8435         * docs/gst/tmpl/gstidentity.sgml:
8436         * docs/gst/tmpl/gstindex.sgml:
8437         * docs/gst/tmpl/gstinfo.sgml:
8438         * docs/gst/tmpl/gstmd5sink.sgml:
8439         * docs/gst/tmpl/gstmultifilesrc.sgml:
8440         * docs/gst/tmpl/gstpad.sgml:
8441         * docs/gst/tmpl/gstpipefilter.sgml:
8442         * docs/gst/tmpl/gstpipeline.sgml:
8443         * docs/gst/tmpl/gstpluginfeature.sgml:
8444         * docs/gst/tmpl/gstqueue.sgml:
8445         * docs/gst/tmpl/gstregistry.sgml:
8446         * docs/gst/tmpl/gstscheduler.sgml:
8447         * docs/gst/tmpl/gstshaper.sgml:
8448         * docs/gst/tmpl/gstspider.sgml:
8449         * docs/gst/tmpl/gstspideridentity.sgml:
8450         * docs/gst/tmpl/gststatistics.sgml:
8451         * docs/gst/tmpl/gstsystemclock.sgml:
8452         * docs/gst/tmpl/gsttee.sgml:
8453         * docs/gst/tmpl/gstthread.sgml:
8454         * docs/gst/tmpl/gsttypefind.sgml:
8455         * docs/gst/tmpl/gstutils.sgml:
8456           further doc build fixes
8457
8458 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8459
8460         * docs/gst/Makefile.am:
8461           make docs exit on scanning problems
8462           fix nonsrcdir build issues
8463         * docs/gst/gstreamer-sections.txt:
8464           adding stuff from -unused
8465         * gst/gstqueue.h:
8466           create GstQueueSize
8467         * gst/schedulers/cothreads_compat.h:
8468           fix cothread warnings
8469
8470 2004-04-07  Thomas Vander Stichele  <thomas at apestaart dot org>
8471
8472         * docs/gst/gstreamer-sections.txt:
8473           remove defines deprecated by Benjamin
8474
8475 2004-04-07  Benjamin Otte  <otte@gnome.org>
8476
8477         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8478           when the buffer is complete, don't check if other buffers are needed
8479         * gst/elements/gstfilesrc.c: (gst_filesrc_srcpad_event):
8480           check that the offset is >0 so we don't try to read before the
8481           beginning of the file
8482         * gst/gstpad.c: (gst_pad_set_pad_template):
8483           sink the template, so we don't end up with 130k pad templates
8484
8485 2004-04-06  Benjamin Otte  <otte@gnome.org>
8486
8487         * gst/autoplug/gstspider.c: (gst_spider_link_add):
8488           don't ref the element, adding already reffed it. And we didn't unref
8489           it later anyway... (huge memleak when you used many spider elements)
8490         * gst/gstelement.c: (gst_element_base_class_finalize):
8491         * gst/gstelementfactory.c: (gst_element_factory_cleanup),
8492         (gst_element_register):
8493         * gst/gsturi.c: (gst_element_make_from_uri):
8494           use gst_object_(un)ref instead of g_object(un)ref
8495
8496 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8497
8498         * gst/gstbuffer.h:
8499           remove macro that wouldn't work anymore because struct member has
8500           been removed.
8501         * gst/schedulers/entryscheduler.c: (schedule_forward):
8502           fix segfault for unconnected pads
8503         
8504 2004-04-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8505
8506         reviewed by David Schleef <ds@schleef.org>
8507
8508         * gst/gstinfo.h:
8509           *_FORMAT modifiers should require putting a % in front of them for
8510           consistency reasons.
8511
8512 2004-04-05  Colin Walters  <walters@redhat.com>
8513
8514         * configure.ac (VALGRIND_CFLAGS, VALGRIND_LIBS): Remove spurious
8515         space.
8516
8517 2004-04-05  Benjamin Otte  <otte@gnome.org>
8518
8519         * configure.ac:
8520         * gst/Makefile.am:
8521         * gst/gst_private.h:
8522         * gst/gstinfo.c: (__gst_in_valgrind), (_gst_debug_init):
8523           add support for detecting if GStreamer runs inside valgrind.
8524           requires valgrind (d'oh) and --enable-debug for correct cdetection.
8525           print a big message in valgrind that GStreamer has detected it's
8526           running inside and might now use different code.
8527         * gst/gstmemchunk.c: (populate), (free_area),
8528         (gst_mem_chunk_destroy), (gst_mem_chunk_alloc),
8529         (gst_mem_chunk_free):
8530           flag memchunks for valgrind, so it can detect leaking of chunks.
8531           This allows detecting leaks of GstBuffer and GstEvent correctly
8532           inside valgrind.
8533
8534 2004-04-05  David Schleef  <ds@schleef.org>
8535
8536         * gst/gsttrace.h:  Fix #ifdef nesting (bug #139109) Patch from
8537           jensgr@gmx.net (Jens Granseuer)
8538
8539 2004-04-05  David Schleef  <ds@schleef.org>
8540
8541         * gst/gstbuffer.c: (_gst_buffer_sub_free),
8542         (gst_buffer_default_free), (gst_buffer_default_copy),
8543         (gst_buffer_alloc_chunk), (gst_buffer_free_chunk),
8544         (gst_buffer_new), (gst_buffer_create_sub):  Allocate GstBuffer
8545         structures in one place.
8546
8547 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8548
8549         * gst/gstinfo.h: adding Ronald's timestamp debugging defines
8550           (GST_TIME_FORMAT, GST_TIME_ARGS)
8551
8552 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8553
8554         * testsuite/elements/Makefile.am:
8555           disable test until it stops breaking make distcheck
8556
8557 2004-04-05  Johan Dahlin  <johan@gnome.org>
8558
8559         * po/sv.po: Updated translation
8560
8561 2004-04-05  Thomas Vander Stichele  <thomas at apestaart dot org>
8562
8563         * gst/gstplugin.c: (gst_plugin_load_file):
8564           fix segfault for when original plugin was loaded statically
8565
8566 2004-04-05  Benjamin Otte  <otte@gnome.org>
8567
8568         * testsuite/debug/category.c: (main):
8569         * testsuite/debug/commandline.c: (main):
8570         * testsuite/debug/output.c: (main):
8571           fix tests to work again with debugging enabled
8572
8573 2004-04-05  Benjamin Otte  <otte@gnome.org>
8574
8575         * gst/schedulers/gstbasicscheduler.c:
8576         (gst_basic_scheduler_pad_link):
8577           fix to work with recent scheduling changes
8578
8579 2004-04-05  Benjamin Otte  <otte@gnome.org>
8580
8581         * gst/schedulers/entryscheduler.c: (some functions, dunno which,
8582         prepareChangeLog doesn't work when cvs indents):
8583           don't throw an error when no element can be scheduled, there's too
8584           many weird reasons why it doesn't work. Return STOPPED instead.
8585           decoupled elemts' schedulability doesn't depend on bufpens.
8586
8587 2004-04-04  Benjamin Otte  <otte@gnome.org>
8588
8589         * gst/schedulers/gstbasicscheduler.c:
8590         (gst_basic_scheduler_pad_select):
8591           fix uninitialized variable warnings
8592
8593 2004-04-04  Benjamin Otte  <otte@gnome.org>
8594
8595         * gst/gstpad.c: (gst_pad_collect_valist):
8596           fix uninitialized variable warning
8597         * gst/schedulers/entryscheduler.c: (schedule_forward):
8598           fix shadowed variable
8599
8600 2004-04-04  Benjamin Otte  <otte@gnome.org>
8601
8602         * gst/gstpad.c: (gst_pad_collect_array), (gst_pad_collectv),
8603         (gst_pad_collect), (gst_pad_collect_valist), (gst_pad_selectv),
8604         (gst_pad_select):
8605         * gst/gstpad.h:
8606         * gst/gstscheduler.c: (gst_scheduler_pad_select),
8607         (gst_scheduler_lock_element), (gst_scheduler_unlock_element):
8608         * gst/gstscheduler.h:
8609           implement gst_pad_collect as replacement for gst_pad_select.
8610           deprecate gst_pad_select and gst_scheduler_(un)lock_element
8611           add new flag GST_SCHEDULER_FLAG_NEW_API for API that implements the
8612           new pad_select, lock and unlock calls.
8613         * gst/cothreads.c: (cothread_destroy), (cothread_switch):
8614         * gst/cothreads.h:
8615         * gst/schedulers/cothreads_compat.h:
8616         * gst/schedulers/gthread-cothreads.h:
8617           remove unused cothread_lock and cothread_unlock calls
8618         * gst/schedulers/entryscheduler.c:
8619         (gst_entry_scheduler_class_init), (gst_entry_scheduler_init),
8620         (_can_schedule_loop), (gst_entry_scheduler_get_handler),
8621         (gst_entry_scheduler_pad_select):
8622           update to new API
8623         * gst/schedulers/gstbasicscheduler.c:
8624         (gst_basic_scheduler_class_init), (gst_basic_scheduler_init),
8625         (gst_basic_scheduler_pad_select):
8626           remove useless lock and unlock calls, update pad_select to new API
8627           (untested)
8628         * gst/schedulers/gstoptimalscheduler.c:
8629         (gst_opt_scheduler_class_init):
8630           remove useless select, lock and unlock function calls
8631         * gst/elements/gstaggregator.c: (gst_aggregator_loop):
8632           use gst_pad_collect instead of gst_pad_select
8633
8634 2004-04-04  Benjamin Otte  <otte@gnome.org>
8635
8636         * gst/schedulers/entryscheduler.c: (_can_schedule_get),
8637         (can_schedule_pad), (can_schedule), (schedule), (schedule_forward),
8638         (schedule_next_element), (print_entry):
8639           add can_schedule_pad to handle element states.
8640           add schedule_forward to select the correct entry to schedule next
8641
8642 2004-04-03  Benjamin Otte  <otte@gnome.org>
8643
8644         * gst/schedulers/entryscheduler.c: 
8645           remove unused variable, fix error inside Rb, fix compile warning in
8646           unreachable code
8647
8648 2004-04-03  Benjamin Otte  <otte@gnome.org>
8649
8650         * gst/schedulers/entryscheduler.c:
8651           completely revamp the inner workings, so it's a lot easier to
8652           understand and extend
8653
8654 2004-04-03  Andy Wingo  <wingo@pobox.com>
8655
8656         * gst/schedulers/gstoptimalscheduler.c (GstOptSchedulerGroupLink):
8657         Rename ->group1 and ->group2 to ->src and ->sink, respectively.
8658         This allows better introspection of pipeline topology.
8659         (add_to_chain): Don't do trickery to put loop elements first;
8660         rather, queue a chain sort by marking the chain as dirty.
8661         (remove_from_chain): Mark the chain dirty.
8662         (sort_chain): New function. Sorts the group list so that terminal
8663         sinks are first. This means elements on the sink side will be
8664         preferentially sscheduled before elements on the src side of the
8665         pipeline.
8666         (chain_recursively_migrate_group): Use OTHER_GROUP_LINK.
8667         (schedule_chain): If the chain is marked DIRTY, call sort_chain.
8668         (gst_opt_scheduler_pad_link, gst_opt_scheduler_pad_unlink)
8669         (group_inc_link): Change argument and variable names to match the
8670         new link structure member names (src and sink).
8671         (group_dec_link): Add some description
8672
8673 2004-04-03  Benjamin Otte  <otte@gnome.org>
8674
8675         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
8676         * gst/gstinfo.h:
8677         * testsuite/debug/category.c: (main):
8678         * testsuite/debug/commandline.c: (main):
8679         * testsuite/debug/output.c: (main):
8680         * testsuite/debug/printf_extension.c: (main):
8681           fix to successfully build and test with --disable-gst-debug
8682           configure switch (fixes #138705)
8683
8684 2004-04-03  Benjamin Otte  <otte@gnome.org>
8685
8686         * docs/pwg/building-boiler.xml:
8687           add cvs login line and s/anonymous/anoncvs/
8688
8689 2004-04-03  Tim-Phillip Müller  <t.i.m@zen.co.uk>
8690
8691         reviewed by Benjamin Otte  <otte@gnome.org>
8692
8693         * gst/gststructure.c: (gst_structure_free):
8694           memleak fix: free fields array (partial fix for #134839)
8695
8696 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8697
8698         * docs/random/ds/0.9-suggested-changes:
8699           Add a note to change handoff use in fakesrc to be usable in
8700           a more generic way (fakesrc should be renamed to appsrc or so).
8701         * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init):
8702           Change signal type to scope, so we can fill the buffer in the
8703           handoff handler (that's the whole use of this signal...).
8704
8705 2004-04-01  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8706
8707         * docs/pwg/other-ntoone.xml:
8708           Document muxers and n-to-1 elements.
8709
8710 2004-04-01  Martin Soto  <martinsoto@users.sourceforge.net>
8711
8712         * gst/registries/gstxmlregistry.c
8713         (gst_xml_registry_rebuild_recurse): Fix the algorithm to
8714         determine if a file is a G_MODULE. The old one discards paths
8715         containing "so" somewhere in the middle. My home directory is
8716         called "soto". Go figure...
8717
8718 2004-03-31  David Schleef  <ds@schleef.org>
8719
8720         * gst/gstbuffer.c: (gst_buffer_join):  Add function gst_buffer_join()
8721         to eventually deprecate gst_buffer_merge().  (bug: #136408)
8722         * gst/gstbuffer.h:
8723
8724 2004-03-31  David Schleef  <ds@schleef.org>
8725
8726         * gst/gstvalue.c: (gst_value_union_int_int_range),
8727         (gst_value_union_int_range_int_range), (gst_value_can_union),
8728         (gst_value_union), (_gst_value_initialize):  Add some union
8729         implementations.  We didn't have any previously.
8730         * testsuite/caps/Makefile.am:
8731         * testsuite/caps/audioscale.c: (gst_audioscale_expand_value),
8732         (gst_audioscale_getcaps), (test_caps), (main): A little test
8733         that is the same as the caps manipulation in audioscale.
8734
8735 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8736
8737         * docs/faq/general.xml:
8738           add entry about "does gst support format X?"
8739
8740 2004-03-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
8741
8742         * gst/gstthread.c:
8743           fix docs
8744         * gst/gstutils.h:
8745           fix GST_BOILERPLATE_FULL to not throw casting errors on C++
8746
8747 2004-03-30  Benjamin Otte  <otte@gnome.org>
8748
8749         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
8750           set the offset of the buffer to the requested offset
8751         * gst/elements/gsttypefind.c: (stop_typefinding):
8752           revert patch 1.18 (which I unfortunately don't know the reason for).
8753           This is needed to allow downstream elements to seek. Otherwise
8754           typefind might overwrite a previous seek by downstream elements.
8755           This lead to errors with id3tag and typefind on some mp3s.
8756         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8757         (gst_entry_scheduler_iterate):
8758           be more verbose when debugging
8759
8760 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8761
8762         * gst/gstcaps.c: (gst_caps_from_string_inplace):
8763           make sure we don't get NULL strings
8764
8765 2004-03-30  Thomas Vander Stichele  <thomas at apestaart dot org>
8766
8767         * gst/gstcaps.c:
8768         * gst/gstelement.c:
8769         * gst/gstelementfactory.c: (gst_element_factory_get_type):
8770         * gst/gstindex.c: (gst_index_resolver_get_type),
8771         (gst_index_get_type), (gst_index_factory_get_type):
8772         * gst/gstinfo.c:
8773         * gst/gstpad.c:
8774         * gst/gstplugin.c:
8775         * gst/gsturi.c: (gst_uri_handler_get_type):
8776         * gst/gstvalue.c:
8777           first batch of documentation fixes
8778
8779 2004-03-29  David Schleef  <ds@schleef.org>
8780
8781         * docs/gst/Makefile.am:  Disable a bunch of headers from being scanned
8782         * docs/gst/gstreamer-docs.sgml:  More hacking
8783         * docs/gst/gstreamer-sections.txt:
8784         * docs/gst/tmpl/cothreads_compat.sgml:
8785         * docs/gst/tmpl/gstcaps.sgml:
8786         * docs/gst/tmpl/gstclock.sgml:
8787         * docs/gst/tmpl/gstelement.sgml:
8788         * docs/gst/tmpl/gstevent.sgml:
8789         * docs/gst/tmpl/gstpad.sgml:
8790         * docs/gst/tmpl/gstutils.sgml:
8791         * docs/gst/tmpl/gstxml.sgml:
8792         * docs/gst/tmpl/gthread-cothreads.sgml:
8793         * docs/random/ds/0.9-suggested-changes:
8794         * gst/elements/gstfakesink.h: doc fixes
8795         * gst/elements/gstfakesrc.h: doc fixes
8796         * gst/gstcaps.c: doc fixes
8797         * gst/gstcaps.h: doc fixes
8798         * gst/gstelement.c: doc fixes
8799         * gst/gstelement.h: doc fixes
8800         * gst/gstindex.c: doc fixes
8801         * gst/gstinfo.c: doc fixes
8802         * gst/gstpad.c: doc fixes
8803         * gst/gstpad.h: doc fixes
8804         * gst/gstplugin.c: doc fixes
8805         * gst/gsttypefind.h: doc fixes
8806         * gst/gsturi.c: doc fixes
8807         * gst/gstvalue.c: doc fixes
8808
8809 2004-03-29  Colin Walters  <walters@redhat.com>
8810
8811         * gst/registries/gstxmlregistry.c (get_time)
8812         (plugin_times_older_than_recurse):
8813         Use the result of stat to determine whether a path is a file,
8814         so we don't attempt to opendir() files.
8815
8816 2004-03-29  Benjamin Otte  <otte@gnome.org>
8817
8818         * gst/gstpad.c: (gst_pad_set_explicit_caps):
8819           print caps in debugging output when setting caps failed
8820         * gst/schedulers/entryscheduler.c: (COTHREADS_TYPE),
8821         (schedule_next_element), (get_buffer), (run_chainhandler),
8822         (element_may_start), (gst_entry_scheduler_chain_handler),
8823         (gst_entry_scheduler_get_handler),
8824         (gst_entry_scheduler_state_transition),
8825         (gst_entry_scheduler_pad_link):
8826           make this scheduler a testcase for mandatory
8827           discont-before-first-buffer which is needed if we want to allow apps
8828           to release the sound device.
8829           add SCHED_ASSERT macro to print scheduler state before an assertion
8830           triggers.
8831
8832 2004-03-29  Benjamin Otte  <otte@gnome.org>
8833
8834         * COPYING:
8835           replace by LGPL (former COPYING.LIB). The core is completely
8836           licensed LGPL.
8837         * COPYING.LIB:
8838           remove
8839
8840 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8841
8842         * po/af.po:
8843         * po/sv.po:
8844           updated Afrikaans and Swedish
8845
8846 2004-03-29  Thomas Vander Stichele  <thomas at apestaart dot org>
8847
8848         * po/LINGUAS:
8849         * po/az.po:
8850           adding Azerbaijani (Mətin Əmirov)
8851
8852 2004-03-28  Martin Soto  <martinsoto@users.sourceforge.net>
8853
8854         * gst/gstelement.h: 
8855         * gst/gstelement.c (gst_element_set_time_delay): New function for
8856         setting element time taking into account a hardware buffering
8857         delay.
8858         (gst_element_set_time): Now just an invocation of
8859         gst_element_set_time_delay.
8860         * gst/gstclock.h: 
8861         * gst/gstclock.c (gst_clock_get_event_time_delay): New function
8862         allowing to set event times in the future.
8863         (gst_clock_get_event_time): Now just an invocation of
8864         gst_clock_get_event_time_delay.
8865
8866 2004-03-28  Benjamin Otte  <otte@gnome.org>
8867
8868         * gst/gstbin.c: (gst_bin_set_element_sched),
8869         (gst_bin_unset_element_sched):
8870           don't add decoupled elements to schedulers - otherwise it's
8871           impossible to control if a link to a decoupled element was already
8872           removed from a scheduler or not.
8873         * gst/schedulers/cothreads_compat.h:
8874         * gst/schedulers/gthread-cothreads.h:
8875           add COTHREADS_TYPE macro. Make do_cothread_set_func a macro so there
8876           is no "unused" warning.
8877         * gst/schedulers/Makefile.am:
8878         * gst/schedulers/entryscheduler.c:
8879           add new scheduler, based on ideas from talking to David and Martin.
8880           It's supposed to be small and correct. Currently it's also slow (but
8881           it's not noticable)
8882         * examples/retag/retag.c: (main):
8883         * testsuite/bytestream/test1.c: (main):
8884           fix missing NULLs at end of variadic functions
8885         * testsuite/elements/.cvsignore:
8886           update
8887
8888 2004-03-28  Jan Schmidt  <thaytan@mad.scientist.com>
8889
8890         * gst/gstevent.h:
8891         Added GST_EVENT_ANY for GstEvents that pass a GstStructure
8892
8893 2004-03-25  David Schleef  <ds@schleef.org>
8894
8895         * docs/gst/gstreamer-sections.txt:  More doc hacking.
8896         * docs/gst/tmpl/gstaggregator.sgml:
8897         * docs/gst/tmpl/gstautoplugfactory.sgml:
8898         * docs/gst/tmpl/gstbin.sgml:
8899         * docs/gst/tmpl/gstbuffer.sgml:
8900         * docs/gst/tmpl/gstbufferstore.sgml:
8901         * docs/gst/tmpl/gstfakesink.sgml:
8902         * docs/gst/tmpl/gstfakesrc.sgml:
8903         * docs/gst/tmpl/gstmd5sink.sgml:
8904         * docs/gst/tmpl/gstreamer-unused.sgml:
8905         * docs/gst/tmpl/gstsearchfuncs.sgml:
8906         * docs/gst/tmpl/gstshaper.sgml:
8907         * docs/gst/tmpl/gstspider.sgml:
8908         * docs/gst/tmpl/gsttee.sgml:
8909         * docs/gst/tmpl/gstutils.sgml:
8910         * docs/gst/tmpl/gstvalue.sgml:
8911         * docs/gst/tmpl/gstxml.sgml:
8912         * gst/Makefile.am:  Remove gstthreaddummy.c.  It never worked,
8913         and we don't support it.
8914         * gst/gst.c: (gst_init_get_popt_table), (init_pre), (init_post),
8915         (gst_use_threads), (gst_has_threads): same
8916         * gst/gstthreaddummy.c: same
8917         * gst/autoplug/gstspider.c: Make gst_spider_details static.
8918         * gst/autoplug/gstspider.h: same
8919         * gst/elements/gstaggregator.h: Remove bogus function from header
8920         * gst/elements/gstfakesink.h: same
8921         * gst/elements/gstfakesrc.h: same
8922         * gst/elements/gstmd5sink.h: same
8923         * gst/elements/gstshaper.h: same
8924         * gst/elements/gsttee.h: same
8925         * gst/gstbin.c: doc fixes
8926         * gst/gstbin.h: Remove unused definition.
8927         * gst/gstbuffer.c: doc fixes
8928         * gst/gstcaps.c: (gst_caps_is_always_compatible): doc fixes
8929         * gst/gstfilter.c: doc fixes
8930         * gst/gsttag.c: doc fixes
8931         * gst/gstvalue.c: doc fixes
8932
8933 2004-03-25  Ronald Bultje  <rbultje@ronald.bitfreak.net>
8934
8935         * docs/pwg/advanced-types.xml:
8936           Document typefinding.
8937         * docs/pwg/other-oneton.xml:
8938           Document one-to-n elements, demuxers and parsers.
8939
8940 2004-03-25  Tim-Philipp Müller <t.i.m@zen.co.uk>
8941
8942         reviewed by: David Schleef  <ds@schleef.org>
8943
8944         * configure.ac: Check bison version (bug #127838)
8945
8946 2004-03-25  David Schleef  <ds@schleef.org>
8947
8948         * docs/gst/gstreamer-docs.sgml: More fine tuning.
8949         * docs/gst/gstreamer-sections.txt:
8950         * docs/gst/tmpl/gstautoplug.sgml:
8951         * docs/gst/tmpl/gststaticautoplug.sgml:
8952         * docs/gst/tmpl/gststaticautoplugrender.sgml:
8953         * docs/gst/tmpl/gstutils.sgml:
8954         * docs/gst/tmpl/gstxml.sgml:
8955
8956 2004-03-24  David Schleef  <ds@schleef.org>
8957
8958         * docs/gst/gstreamer-docs.sgml:  I got tired of the reference
8959         manual being such complete crap, that I decided to do major
8960         hacking of it.  This checkin replaces any fine tuning that
8961         may have been done previously, with the benefit of actually
8962         being complete for much of the API that was changed since
8963         0.6.  Further fine tuning will occur shortly.  (bug #134721)
8964         * docs/gst/gstreamer-sections.txt:
8965         * docs/gst/tmpl/GstBin.sgml:
8966         * docs/gst/tmpl/GstBuffer.sgml:
8967         * docs/gst/tmpl/GstCaps.sgml:
8968         * docs/gst/tmpl/GstClock.sgml:
8969         * docs/gst/tmpl/GstCompat.sgml:
8970         * docs/gst/tmpl/GstData.sgml:
8971         * docs/gst/tmpl/GstElement.sgml:
8972         * docs/gst/tmpl/GstEvent.sgml:
8973         * docs/gst/tmpl/GstIndex.sgml:
8974         * docs/gst/tmpl/GstStructure.sgml:
8975         * docs/gst/tmpl/GstTag.sgml:
8976         * docs/gst/tmpl/cothreads.sgml:
8977         * docs/gst/tmpl/cothreads_compat.sgml:
8978         * docs/gst/tmpl/gettext.sgml:
8979         * docs/gst/tmpl/grammar.tab.sgml:
8980         * docs/gst/tmpl/gst-i18n-app.sgml:
8981         * docs/gst/tmpl/gst-i18n-lib.sgml:
8982         * docs/gst/tmpl/gst.sgml:
8983         * docs/gst/tmpl/gst_private.sgml:
8984         * docs/gst/tmpl/gstaggregator.sgml:
8985         * docs/gst/tmpl/gstarch.sgml:
8986         * docs/gst/tmpl/gstatomic.sgml:
8987         * docs/gst/tmpl/gstatomic_impl.sgml:
8988         * docs/gst/tmpl/gstbin.sgml:
8989         * docs/gst/tmpl/gstbuffer.sgml:
8990         * docs/gst/tmpl/gstbufferstore.sgml:
8991         * docs/gst/tmpl/gstcaps.sgml:
8992         * docs/gst/tmpl/gstclock.sgml:
8993         * docs/gst/tmpl/gstcompat.sgml:
8994         * docs/gst/tmpl/gstconfig.sgml:
8995         * docs/gst/tmpl/gstcpu.sgml:
8996         * docs/gst/tmpl/gstdata.sgml:
8997         * docs/gst/tmpl/gstdata_private.sgml:
8998         * docs/gst/tmpl/gstelement.sgml:
8999         * docs/gst/tmpl/gstenumtypes.sgml:
9000         * docs/gst/tmpl/gsterror.sgml:
9001         * docs/gst/tmpl/gstevent.sgml:
9002         * docs/gst/tmpl/gstfakesink.sgml:
9003         * docs/gst/tmpl/gstfakesrc.sgml:
9004         * docs/gst/tmpl/gstfilesink.sgml:
9005         * docs/gst/tmpl/gstfilter.sgml:
9006         * docs/gst/tmpl/gstindex.sgml:
9007         * docs/gst/tmpl/gstinfo.sgml:
9008         * docs/gst/tmpl/gstinterface.sgml:
9009         * docs/gst/tmpl/gstlog.sgml:
9010         * docs/gst/tmpl/gstmacros.sgml:
9011         * docs/gst/tmpl/gstmarshal.sgml:
9012         * docs/gst/tmpl/gstmd5sink.sgml:
9013         * docs/gst/tmpl/gstmultifilesrc.sgml:
9014         * docs/gst/tmpl/gstobject.sgml:
9015         * docs/gst/tmpl/gstpad.sgml:
9016         * docs/gst/tmpl/gstparse.sgml:
9017         * docs/gst/tmpl/gstpipeline.sgml:
9018         * docs/gst/tmpl/gstplugin.sgml:
9019         * docs/gst/tmpl/gstpluginfeature.sgml:
9020         * docs/gst/tmpl/gstqueue.sgml:
9021         * docs/gst/tmpl/gstreamer-unused.sgml:
9022         * docs/gst/tmpl/gstregistry.sgml:
9023         * docs/gst/tmpl/gstregistrypool.sgml:
9024         * docs/gst/tmpl/gstscheduler.sgml:
9025         * docs/gst/tmpl/gstsearchfuncs.sgml:
9026         * docs/gst/tmpl/gstshaper.sgml:
9027         * docs/gst/tmpl/gstspider.sgml:
9028         * docs/gst/tmpl/gstspideridentity.sgml:
9029         * docs/gst/tmpl/gststructure.sgml:
9030         * docs/gst/tmpl/gstsystemclock.sgml:
9031         * docs/gst/tmpl/gsttag.sgml:
9032         * docs/gst/tmpl/gsttaginterface.sgml:
9033         * docs/gst/tmpl/gsttee.sgml:
9034         * docs/gst/tmpl/gstthread.sgml:
9035         * docs/gst/tmpl/gsttrace.sgml:
9036         * docs/gst/tmpl/gsttrashstack.sgml:
9037         * docs/gst/tmpl/gsttypefind.sgml:
9038         * docs/gst/tmpl/gsttypes.sgml:
9039         * docs/gst/tmpl/gsturi.sgml:
9040         * docs/gst/tmpl/gsturitype.sgml:
9041         * docs/gst/tmpl/gstutils.sgml:
9042         * docs/gst/tmpl/gstvalue.sgml:
9043         * docs/gst/tmpl/gstversion.sgml:
9044         * docs/gst/tmpl/gstxml.sgml:
9045         * docs/gst/tmpl/gstxmlregistry.sgml:
9046         * docs/gst/tmpl/gthread-cothreads.sgml:
9047         * docs/gst/tmpl/types.sgml:
9048
9049 2004-03-24  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9050
9051         * docs/pwg/other-sink.xml:
9052         * docs/pwg/other-source.xml:
9053           Documentation on how to write source and sink elements. Other
9054           stuff in chapter 4 (1-to-n/demuxer, n-to-1/muxer, n-to-n,
9055           manager, autoplugger) are all still pending.
9056
9057 2004-03-25  Benjamin Otte  <otte@gnome.org>
9058
9059         * testsuite/elements/Makefile.am:
9060         * testsuite/elements/gst-compprep-check:
9061           add check to make sure gst-compprep works
9062         * testsuite/elements/gst-inspect-check.in:
9063           improve initialization output
9064         * testsuite/Makefile.am:
9065         * testsuite/gst-inspect-check:
9066           remove old file
9067
9068 2004-03-24  David Schleef  <ds@schleef.org>
9069
9070         * testsuite/elements/Makefile.am:
9071         * testsuite/elements/gst-inspect-check.in: Add gst-inspect-check
9072         to the testsuite.
9073
9074 2004-03-24  Benjamin Otte  <otte@gnome.org>
9075
9076         * libs/gst/control/dparam.c: (gst_dparam_attach),
9077         (gst_dparam_detach):
9078         * libs/gst/control/dparammanager.c: (gst_dpman_init):
9079           fix lvalue casts for real
9080
9081 2004-03-24  Benjamin Otte  <otte@gnome.org>
9082
9083         * gst/schedulers/gstbasicscheduler.c:
9084         (gst_basic_scheduler_src_wrapper):
9085         * gst/schedulers/gstoptimalscheduler.c:
9086         (gst_opt_scheduler_loop_wrapper), (gst_opt_scheduler_get_wrapper),
9087         (pad_clear_queued), (gst_opt_scheduler_add_element),
9088         (gst_opt_scheduler_remove_element):
9089           fix GStreamer to not have issues with lvalue casts anymore (fixes
9090           #136841)
9091
9092 2004-03-24  Benjamin Otte  <otte@gnome.org>
9093
9094         * gst/gstelement.c:
9095           add documentation about a gobject quirk where the object hasn't the
9096           correct class pointer set on initialization
9097         * gst/schedulers/gstbasicscheduler.c:
9098         (gst_basic_scheduler_src_wrapper):
9099           make sure to not run into an infinite loop
9100
9101 2004-03-22  Benjamin Otte  <otte@gnome.org>
9102
9103         * gst/gstutils.c: (gst_util_dump_mem):
9104         * gst/gstutils.h:
9105           first argument of gst_util_dump_mem should be const
9106
9107 2004-03-22  Johan Dahlin  <johan@gnome.org>
9108
9109         * gst/gstvalue.h: Clean up a little bit.
9110
9111 2004-03-21  Tim-Philipp Müller <t.i.m@zen.co.uk>
9112
9113         reviewed by Benjamin Otte  <otte@gnome.org>
9114
9115         * gst/autoplug/gstspider.c: (gst_spider_dispose):
9116         * gst/elements/gstaggregator.c: (gst_aggregator_finalize),
9117         (gst_aggregator_class_init), (gst_aggregator_init):
9118         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
9119         (gst_filesrc_dispose), (gst_filesrc_set_location):
9120         * gst/elements/gstidentity.c: (gst_identity_finalize),
9121         (gst_identity_class_init), (gst_identity_chain):
9122         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9123         * gst/elements/gststatistics.c: (gst_statistics_finalize),
9124         (gst_statistics_class_init):
9125         * gst/elements/gsttee.c: (gst_tee_finalize), (gst_tee_class_init),
9126         (gst_tee_get_property):
9127           clean up used memory in this elements correctly on teardown (closes
9128           #137279)
9129
9130 2004-03-20  Colin Walters  <walters@redhat.com>
9131
9132         * gst/registries/gstxmlregistry.c:
9133         (gst_xml_registry_open_func, gst_xml_registry_close_func): Make
9134         registry saving atomic.
9135
9136 2004-03-20  Colin Walters  <walters@redhat.com>
9137
9138         * gst/registries/gstxmlregistry.c (gst_xml_registry_get_perms_func):
9139         Just use
9140         access() instead of actually creating and deleting files.
9141
9142 2004-03-18  David Schleef  <ds@schleef.org>
9143
9144         * configure.ac:  Remove HAVE_ATOMIC_H test, since it's unused.
9145         (bug #137625)
9146
9147 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9148
9149         * po/sv.po: updated translation (Christian Rose)
9150
9151 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9152
9153         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
9154         (gst_filesink_get_query_types), (_do_init),
9155         (gst_filesink_handle_event), (gst_filesink_uri_get_protocols):
9156           return FALSE silently
9157         * po/af.po: updated translation (Petri Jooste)
9158
9159 2004-03-18  Thomas Vander Stichele  <thomas at apestaart dot org>
9160
9161         * Makefile.am:
9162         * configure.ac:
9163           dist common properly
9164         * po/af.po:
9165         * po/fr.po:
9166         * po/nl.po:
9167         * po/sr.po:
9168         * po/sv.po:
9169           refreshing translations
9170
9171 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9172
9173         * po/LINGUAS:
9174         * po/sv.po:
9175         * po/af.po:
9176           adding Swedish (Christian Rose) and Afrikaans (Petri Jooste)
9177
9178 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9179
9180         * Makefile.am: use common/release.mak
9181
9182 2004-03-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9183
9184         * docs/faq/gst-uninstalled:
9185           adding gst-monkeysaudio to the list of possible plugin dirs
9186
9187 2004-03-16  David Schleef  <ds@schleef.org>
9188
9189         * gst/gst.c: (gst_get_popt_options), (gst_init_get_popt_table),
9190         (gst_init_check_with_popt_table):  Fix some gettext strings to
9191         make them easier to translate.  Required making the strings
9192         non-const.
9193
9194 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9195
9196         * configure.ac: bump nano to 1
9197
9198 === release 0.8.0 ===
9199
9200 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9201
9202         * configure.ac: release 0.8.0, "Executive Slacks"
9203
9204 2004-03-16  Johan Dahlin  <johan@gnome.org>
9205
9206         * gst/schedulers/gstoptimalscheduler.c
9207         (gst_opt_scheduler_pad_unlink): Remove double ;,
9208         spotted by Scott Wheeler
9209
9210 2004-03-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9211
9212         * configure.ac: bump libtool version
9213
9214 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9215
9216         * gst/gstcaps.h:
9217         * gst/gststructure.h:
9218           add reserved padding
9219
9220 2004-03-15  Benjamin Otte  <otte@gnome.org>
9221
9222         * gst/elements/gstfdsrc.c: (gst_fdsrc_get):
9223           set the first parameter for select call correctly.
9224           (fixes #137230)
9225
9226 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9227
9228         * *.c,*.h: don't mix tabs and spaces
9229
9230 2004-03-15  Johan Dahlin  <johan@gnome.org>
9231
9232         * gst/schedulers/gstoptimalscheduler.c
9233         (gst_opt_scheduler_pad_unlink): Fix bug that causes totem to
9234         crash on MPEG playback. My boolean arithmetic is a bit rusty.
9235
9236         * tools/Makefile.am (EXTRA_DIST): Add gst-indent
9237         
9238 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9239
9240         * testsuite/Rules:
9241           fix gst-register rules
9242
9243 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9244
9245         * testsuite/Rules:
9246           use versioned gst-register
9247
9248 2004-03-15  Thomas Vander Stichele  <thomas at apestaart dot org>
9249
9250         * docs/libs/gstreamer-libs-sections.txt:
9251           remove </SUBSECTION>
9252         * gst/gstplugin.c:
9253         * gst/gstregistry.c: (gst_registry_add_plugin):
9254         * gst/registries/gstxmlregistry.c: (gst_xml_registry_get_type),
9255         (gst_xml_registry_open_func), (gst_xml_registry_close_func):
9256           add debugging and fix some comment blocks
9257
9258 2004-03-15  Johan Dahlin  <johan@gnome.org>
9259
9260         * *.h: Revert indent changes.
9261         
9262 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9263
9264         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load_plugin):
9265           g_error_free the g_error
9266         * tools/gst-feedback-m.m:
9267           check for other versions of gstreamer
9268         * tools/gst-indent:
9269           use sh, not bash
9270
9271 2004-03-14  Thomas Vander Stichele  <thomas at apestaart dot org>
9272
9273         * tools/gst-register.c: do not spill paths when registries are not
9274           writable, until we fix the "user running gst-register" case.
9275
9276 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9277
9278         * *.c, *.h: commit of gst-indent run on core
9279
9280 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9281
9282         * tools/gst-indent:
9283         * tools/Makefile.am:
9284           add our indentation style as a script
9285
9286 2004-03-13  Thomas Vander Stichele  <thomas at apestaart dot org>
9287
9288         * po/sr.po:
9289         * po/LINGUAS:
9290           added Serbian translation
9291
9292 2004-03-13  Benjamin Otte  <otte@gnome.org>
9293
9294         * gst/gstelement.c:
9295           add documentation note about gst_element_found_tags_for_pad not
9296           being usable in getfunctions. (see #137042)
9297
9298 2004-03-12  David Schleef  <ds@schleef.org>
9299
9300         * gst/gstcaps.h: jdahlin, what are you smoking?  We can't just
9301         change API right now!  Readd gst_caps_is_simple() macro.
9302         * gst/gstelement.c: (gst_element_base_class_finalize): Fix
9303         uninitialized variable.  I'd bet this caused crashes.
9304         * gst/gstinfo.c: (gst_debug_print_object):  Fix 64-bit cleanliness.
9305
9306 2004-03-12  Johan Dahlin  <johan@gnome.org>
9307
9308         * gst/gstcaps.h (GST_CAPS_IS_SIMPLE): Capitalize macro
9309         * gst/gstcaps.h: Clean up
9310
9311         * gst/gst.c (init_post): call gst_caps_get_type() instead of
9312         _gst_caps_initalize()
9313
9314         * gst/gstcaps.c: Style fixes, stay closer to glib and friends
9315         (_gst_caps_initialize): Remove, in favor for gst_caps_get_type()
9316
9317         * gst/gststructure.c (gst_structure_get_type): Ditto
9318
9319         * gst/gststructure.h: Ditto
9320         
9321 2004-03-11  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9322
9323         * gst/gstqueue.c: (gst_queue_init):
9324           Reset default max. values in queues. Reason is simply to avoid
9325           braindead use. If you want wider values, use the properties. The
9326           default is supposed to always work. Wider values would make this
9327           beast a memory hog by default (250 full-PAL RGB32 video frames?
9328           That's 440 MB! No thank you).
9329
9330 2004-03-10  David Schleef  <ds@schleef.org>
9331
9332         * tools/gst-run.c: (main):  Fix crash when no relevant tools
9333         were found.  (bug #136793)
9334
9335 2004-03-10  Johan Dahlin  <johan@gnome.org>
9336
9337         * gst/schedulers/gstoptimalscheduler.c
9338         (gst_opt_scheduler_pad_unlink): Implement unlink for elements with
9339         links to elements within the same group, so we can finally remove
9340         that annoying warning. Refactor the code a little bit
9341         (group_dec_links_for_element): Split out
9342
9343 2004-03-09  David Schleef  <ds@schleef.org>
9344
9345         * docs/manual/dparams-app.xml:  Fix to handle double dparams.
9346         (bug #134863)
9347
9348 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9349
9350         * configure.ac: first bug fix due to major/minor bump
9351
9352 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9353
9354         * configure.ac: bump nano to 1
9355
9356 === release 0.7.6 ===
9357
9358 2004-03-09  Thomas Vander Stichele  <thomas at apestaart dot org>
9359
9360         * NEWS:
9361         * RELEASE:
9362         * configure.ac:
9363           releasing 0.7.6, "Almost"
9364         * po/fr.po:
9365         * po/nl.po:
9366         * tools/Makefile.am:
9367         * tools/gst-feedback-m.m:
9368           unversioned source
9369
9370 2004-03-09  Johan Dahlin  <johan@gnome.org>
9371
9372         Reviewed by: Thomas Vander Stichele
9373
9374         * gst/gstelement.c (gst_element_class_init): register second
9375         parameter as GST_TYPE_G_ERROR instead of G_TYPE_POINTER, so
9376         language bindings can (de)marshall correctly.
9377
9378         * gst/gsterror.h: Add GST_TYPE_G_ERROR and cleanup a little bit
9379
9380         * gst/gsterror.c (gst_g_error_get_type): New function
9381
9382         * gst/gstmarshal.list: Remove VOID:OBJECT,POINTER,STRING, replace
9383         with VOID:OBJECT,OBJECT,STRING 
9384
9385 2004-03-10  Jan Schmidt  <thaytan@mad.scientist.com>
9386
9387         * gst/registries/gstxmlregistry.c: (gst_xml_registry_load):
9388         Free a leaked g_timer on early returns.
9389
9390 2004-03-08  Ronald Bultje  <rbultje@ronald.bitfreak.net>
9391
9392         * docs/pwg/advanced-types.xml:
9393           Add cinepak description.
9394
9395 2004-03-07  David Schleef  <ds@schleef.org>
9396
9397         * docs/random/mimetypes:  Added cinepak description
9398
9399 2004-03-07  Andy Wingo  <wingo@pobox.com>
9400
9401         * gst/gstbin.c (gst_bin_remove): Debugging fixes.
9402
9403         * gst/schedulers/gstoptimalscheduler.c (destroy_group): Assert
9404         there are no links to other groups when a group is destroyed.
9405         (gst_opt_scheduler_pad_unlink): If the unlink means an element is
9406         removed from a group, make sure the link count to elements linked
9407         to other pads is appropriately decremented. This really fixes
9408         #135672.
9409
9410         The 1.60->1.61 patch has been reapplied in light of this fix.
9411
9412         * gst/gstelement.c (gst_element_dispose): Really protect against
9413         multiple invocations this time.
9414
9415 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9416
9417         * docs/gst/gstreamer-sections.txt:
9418         * docs/gst/tmpl/gsttag.sgml:
9419           remove some deprecated functions, document some existing ones
9420         * gst/gsttag.c: (gst_tag_get_flag):
9421         * gst/gsttag.h:
9422           add accessor function
9423
9424 2004-03-06  Thomas Vander Stichele  <thomas at apestaart dot org>
9425
9426         * docs/gst/gstreamer-sections.txt:
9427         * docs/gst/tmpl/gsttag.sgml:
9428         * docs/gst/tmpl/gstxml.sgml:
9429         * gst/gsttag.c: (gst_tag_get_flag):
9430         * gst/gsttag.h:
9431
9432 2004-03-06  Christophe Fergeau  <teuf@gnome.org>
9433
9434         * gst/autoplug/gstspider.c: (gst_spider_identity_plug): fixed caps
9435         leak
9436
9437 2004-03-05  David Schleef  <ds@schleef.org>
9438
9439         * REQUIREMENTS: Add bison and flex.
9440         * configure.ac: Fix comment about bison.
9441         * docs/random/ds/0.9-suggested-changes: yer ma
9442         * tools/gst-inspect.c: (print_element_info):  Fix warning.
9443
9444 2004-03-05  Benjamin Otte  <otte@gnome.org>
9445
9446         * gst/gstelement.c: (gst_element_error_full):
9447           revert recent recursive state changing commit - messing with other
9448           elements' states is evil and should be done by apps only.
9449
9450 2004-03-05  Benjamin Otte  <otte@gnome.org>
9451
9452         * gst/gstelement.c: (gst_element_get_compatible_pad_template):
9453           check for empty intersection instead of NULL caps
9454         (gst_element_get_compatible_pad_filtered):
9455           remove old workaround that is only a bug nowadays
9456
9457 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9458
9459         * gst/gstelement.c: (gst_element_error_full):
9460           make elements try to recursively change state to PAUSED on all
9461           parents after an error to suppress ensuing warnings
9462         * gst/parse/grammar.y:
9463           make it check if it was able to sync the state, and throw an error
9464           if not, so stuff like
9465           oggdemux ! vorbisdec ! osssink gets caught
9466
9467 2004-03-05  Thomas Vander Stichele  <thomas at apestaart dot org>
9468
9469         * configure.ac: use ${libdir} for PLUGINS_DIR since on 64bit
9470           it contains lib64; use AS_AC_EXPAND to handle it properly
9471
9472 2004-03-05  David Schleef  <ds@schleef.org>
9473
9474         * gst/gstcpuid_i386.s:  Remove unused code
9475         * libs/gst/getbits/getbits.c: (gst_getbits_init),
9476         (gst_getbits_newbuf): Remove MMX code
9477         * libs/gst/getbits/getbits.h: Remove MMX code
9478
9479 2004-03-04  David I. Lehn  <dlehn@users.sourceforge.net>
9480
9481         * debian/.cvsignore:
9482         * debian/README.Debian:
9483         * debian/changelog:
9484         * debian/control:
9485         * debian/control.in:
9486         * debian/copyright:
9487         * debian/gstreamer-core-libs-dev.files:
9488         * debian/gstreamer-core-libs.files:
9489         * debian/gstreamer-core.files:
9490         * debian/gstreamer-core.postinst:
9491         * debian/gstreamer-core.postrm:
9492         * debian/gstreamer-doc.files:
9493         * debian/gstreamer-doc.links:
9494         * debian/gstreamer-doc.lintian:
9495         * debian/gstreamer-runtime.files:
9496         * debian/gstreamer-runtime.manpages:
9497         * debian/gstreamer-runtime.postinst:
9498         * debian/gstreamer-runtime.postrm:
9499         * debian/gstreamer-tools.files:
9500         * debian/gstreamer-tools.manpages:
9501         * debian/libgstreamer-dev.files:
9502         * debian/libgstreamer0.4.1.files:
9503         * debian/libgstreamerVERSION.files:
9504         * debian/rules:
9505         Debian package info not maintained here.
9506
9507 2004-03-04  Thomas Vander Stichele  <thomas at apestaart dot org>
9508
9509         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9510         * gst/gstbin.c: (gst_bin_class_init):
9511         * gst/gstelement.c: (gst_element_class_init):
9512         * gst/gstindex.c: (gst_index_class_init):
9513         * gst/gstobject.c: (gst_object_class_init),
9514         (gst_signal_object_class_init):
9515         * gst/gstpad.c: (gst_pad_template_class_init):
9516         * gst/gstregistry.c: (gst_registry_class_init):
9517         * gst/gsturi.c: (gst_uri_handler_base_init):
9518         * gst/gstxml.c: (gst_xml_class_init):
9519         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9520         * libs/gst/control/dparammanager.c: (gst_dpman_class_init):
9521           make all signal names use dashes instead of underscore
9522
9523 2004-03-03  Thomas Vander Stichele  <thomas at apestaart dot org>
9524
9525         * configure.ac: AC_SUBST GLIB_ONLY CFLAGS and LIBS
9526
9527 2004-03-03  Benjamin Otte  <otte@gnome.org>
9528
9529         * gst/schedulers/gstoptimalscheduler.c:
9530           revert last commit by Andy Wingo. It causes segfaults on unreffing
9531           in Rhythmbox. (see bug #135672)
9532
9533 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9534
9535         * po/fr.po: fix typo
9536
9537 2004-03-02  Christophe Fergeau  <teuf@gnome.org>
9538
9539         * tools/gst-inspect.c: (main): 
9540         * tools/gst-launch.c: (main): add calls to bind_textdomain_codeset
9541
9542 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9543
9544         * configure.ac:
9545           get GLIB_ONLY and POPT flags for the nonversioned binaries
9546         * tools/Makefile.am:
9547           use them
9548
9549 2004-03-02  Thomas Vander Stichele  <thomas at apestaart dot org>
9550
9551         * gst/gst.c: (init_post):
9552           change so that GST_REGISTRY now is where the global registry gets
9553           saved, since that is where plugins now get attached to first, and
9554           spilled over to the user registry.  Note that in the case of using
9555           GST_REGISTRY env var, we don't want to affect any real registries
9556           beyond the one given by this var, and thus we don't set a user
9557           registry to spill to.  So make sure GST_REGISTRY is writable.
9558
9559 2004-03-01  David Schleef  <ds@schleef.org>
9560
9561         * AUTHORS:  Added some names.  Add yourself if you're missing.
9562
9563 2004-03-01  David Schleef  <ds@schleef.org>
9564
9565         * MAINTAINERS: Add
9566
9567 2004-03-01  Thomas Vander Stichele  <thomas at apestaart dot org>
9568
9569         * configure.ac:
9570           remove whitespace
9571         * docs/gst/tmpl/gstbuffer.sgml:
9572         * docs/gst/tmpl/gstdata.sgml:
9573         * docs/gst/tmpl/gstreamer-unused.sgml:
9574         * docs/gst/tmpl/gstxml.sgml:
9575           doc update
9576         * docs/manuals.mak:
9577           add a FIXME
9578         * docs/pwg/intro-preface.xml:
9579         * docs/pwg/pwg.xml:
9580           remove GNOME
9581         * gst/gst.c: (init_post):
9582           try GST_PLUGIN_PATH paths for the _global_registry first
9583         * gst/gstelement.h:
9584           add the error message as well, otherwise (null) debug info doesn't
9585           make much sense
9586         * tools/gst-register.c: (main):
9587           spill paths to next registry if this registry is not writable
9588         * po/fr.po:
9589         * po/nl.po:
9590           translation updates
9591
9592 2004-03-01  Johan Dahlin  <johan@gnome.org>
9593
9594         * gst/gstbuffer.c (_gst_buffer_initialize): 
9595         * gst/gstdata.c (gst_data_get_type): 
9596         * gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
9597         instead of ref, since some applications that uses GBoxed
9598         routines depends on a function that actually returns a copy.
9599
9600 2004-02-27  Benjamin Otte  <otte@gnome.org>
9601
9602         * gst/gstbuffer.h:
9603           remove gst_buffer_free, use gst_data_unref
9604         * gst/gstdata.c: (gst_data_get_type):
9605           use refcounting in GstData GBoxed registration
9606         * gst/gstdata.h:
9607           remove gst_data_free, use gst_data_unref
9608
9609 2004-02-27  Johan Dahlin  <johan@gnome.org>
9610
9611         * gst/gstdata.c (gst_data_get_type): New function, register
9612         GstData as a GBoxed type.
9613
9614         * gst/gstdata.h (GST_TYPE_DATA): New macro
9615
9616 2004-02-27  Thomas Vander Stichele  <thomas at apestaart dot org>
9617
9618         * Makefile.am:
9619         * gstreamer.spec.in:
9620           put back RELEASE
9621         * gst/Makefile.am:
9622           clean up non-disting of built files
9623         * testsuite/debug/commandline.c:
9624           test fix for option rename
9625
9626 2004-02-26  David Schleef  <ds@schleef.org>
9627
9628         * configure.ac:  We don't really need glib-2.3.  Also remove
9629         some unneeded checks for library functions.
9630         * gst/Makefile.am:  Instead, we need to not dist files created
9631         by glib-genmarshal.
9632
9633 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9634
9635         * configure.ac:
9636           bump glib required version to 2.3.0 for g_value_takes_boxed
9637
9638  2004-02-25  Christian Fredrik Kalager Schaller <uraeus@gnome.org>
9639
9640         * common/m4/gst-docs.m4
9641         change flavour text from enable to disable as enable is our default
9642         closes bug Bug 135304
9643
9644 === release 0.7.5 ===
9645  
9646  2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9647  
9648         * NEWS:
9649           instate NEWS file
9650         * Makefile.am:
9651         * gstreamer.spec.in:
9652         * RELEASE:
9653           put back release
9654         * configure.ac:
9655         * docs/random/release:
9656           more updates
9657
9658 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9659
9660         * gst/gsttag.c: (_gst_tag_initialize):
9661         * po/fr.po:
9662         * po/nl.po:
9663           remove hyphen from codec tags
9664
9665 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9666
9667         * gst/parse/Makefile.am:
9668           fix dependency so that a make from a clean build works the first
9669           time
9670
9671 2004-02-26  Thomas Vander Stichele  <thomas at apestaart dot org>
9672
9673         * docs/random/release:
9674           update release strategy
9675         * po/fr.po:
9676           auto-update po file
9677         * po/nl.po:
9678           update dutch translation
9679
9680 2004-02-25  Thomas Vander Stichele  <thomas at apestaart dot org>
9681
9682         * docs/manual/debugging.xml:
9683         fix manual for new debugging system
9684
9685 2004-02-25  Andy Wingo  <wingo@pobox.com>
9686
9687         * gst/gstpad.c (gst_pad_link_prepare): Re-add
9688         gst_pad_link_prepare. Please email the list with specific reasons
9689         for reverting.
9690
9691 2004-02-24  Andy Wingo  <wingo@pobox.com>
9692
9693         * gst/gstelement.c (gst_element_dispose): Protect against multiple
9694         invocations.
9695
9696         * gst/schedulers/gstoptimalscheduler.c:
9697         I added a mess of prototypes at the top of the file by way of
9698         documentation. Some of the operations on chains and groups were
9699         re-organized.
9700
9701         (create_group): Added a type argument so if the group is enabled,
9702         the setup_group_scheduler knows what to do.
9703         (group_elements): Added a type argument here, too, to be passed on
9704         to create_group.
9705         (group_element_set_enabled): If an unlinked PLAYING element is
9706         added to a bin, we have to create a new group to hold the element,
9707         and this function will be called before the group is added to the
9708         chain. Thus we have a valid case for group->chain==NULL. Instead
9709         of calling chain_group_set_enabled, just set the flag on the group
9710         (the chain's status will be set when the group is added to it).
9711         (gst_opt_scheduler_state_transition, chain_group_set_enabled):
9712         Setup the group scheduler when the group is enabled, not
9713         specifically when an element goes PAUSED->PLAYING. This means
9714         PLAYING elements can be added, linked, and scheduled into a
9715         PLAYING pipeline, as was intended.
9716         (add_to_group): Don't ref the group twice. I don't know when this
9717         double-ref got in here. Removing it has the potential to cause
9718         segfaults if other parts of the scheduler are buggy. If you find
9719         that the scheduler is segfaulting for you, put in an extra ref
9720         here and see if that hacks over the underlying issue. Of course,
9721         then find out what code is unreffing a group it doesn't own...
9722         (create_group): Make the extra refcount floating, and remove it
9723         after adding the element. This means that...
9724         (unref_group): Destroy when the refcount reaches 0, not 1, like
9725         every other refcounted object in the known universe.
9726         (remove_from_group): When a group becomes empty, set it to be not
9727         active, and remove it from its chain. Don't unref it again,
9728         there's no floating reference any more.
9729         (destroy_group): We have to remove the group from the chain in
9730         remove_from_group (rather than here) to break refcounting cycles
9731         (the chain always has a ref on the group). So assert that
9732         group->chain==NULL.
9733         (ref_group_by_count): Removed, it was commented out anyway.
9734         (merge_chains): Use the remove_from_chain and add_to_chain
9735         primitives to do the reparenting, instead of rolling our own
9736         implementation.
9737         (add_to_chain): The first non-disabled group in the chain's group
9738         list will be the entry point for the chain. Because buffers can
9739         accumulate in loop elements' peer bufpens, we preferentially
9740         schedule loop groups before get groups to avoid unnecessary
9741         execution of get-based groups when the bufpens are already full.
9742         (gst_opt_scheduler_schedule_run_queue): Debug fixes.
9743         (get_group_schedule_function): Ditto.
9744         (loop_group_schedule_function): Ditto.
9745         (gst_opt_scheduler_loop_wrapper): Ditto.
9746         (gst_opt_scheduler_iterate): Ditto.
9747
9748         I understand the opt scheduler now, yippee!
9749
9750         * gst/gstpad.c: All throughout, added FIXMEs to look at for 0.9.
9751         (gst_pad_get_name, gst_pad_set_chain_function) 
9752         (gst_pad_set_get_function, gst_pad_set_event_function) 
9753         (gst_pad_set_event_mask_function, gst_pad_get_event_masks) 
9754         (gst_pad_get_event_masks_default, gst_pad_set_convert_function) 
9755         (gst_pad_set_query_function, gst_pad_get_query_types) 
9756         (gst_pad_get_query_types_default) 
9757         (gst_pad_set_internal_link_function) 
9758         (gst_pad_set_formats_function, gst_pad_set_link_function) 
9759         (gst_pad_set_fixate_function, gst_pad_set_getcaps_function) 
9760         (gst_pad_set_bufferalloc_function, gst_pad_unlink) 
9761         (gst_pad_renegotiate, gst_pad_set_parent, gst_pad_get_parent) 
9762         (gst_pad_add_ghost_pad, gst_pad_proxy_getcaps) 
9763         (gst_pad_proxy_pad_link, gst_pad_proxy_fixate) 
9764         (gst_pad_get_pad_template_caps, gst_pad_check_compatibility) 
9765         (gst_pad_get_peer, gst_pad_get_allowed_caps) 
9766         (gst_pad_alloc_buffer, gst_pad_push, gst_pad_pull) 
9767         (gst_pad_selectv, gst_pad_select, gst_pad_template_get_caps) 
9768         (gst_pad_event_default_dispatch, gst_pad_event_default) 
9769         (gst_pad_dispatcher, gst_pad_send_event, gst_pad_convert_default) 
9770         (gst_pad_convert, gst_pad_query_default, gst_pad_query) 
9771         (gst_pad_get_formats_default, gst_pad_get_formats): Better
9772         argument checks, and some doc fixes.
9773
9774         (gst_pad_custom_new_from_template): Um, does anyone
9775         use these functions? Actually make a custom pad instead of a
9776         normal one.
9777         (gst_pad_try_set_caps): Transpose some checks.
9778         (gst_pad_try_set_caps_nonfixed): Same, and use a macro to check if
9779         the pad is in negotiation.
9780         (gst_pad_try_relink_filtered): Use pad_link_prepare.
9781         
9782         * gst/gstelement.c: Remove prototypes also defined in gstclock.h.
9783
9784         * gst/gstelement.h: 
9785         * gst/gstclock.h: Un-deprecate the old clocking API, as discussed
9786         on the list.
9787
9788 2004-02-24  Thomas Vander Stichele  <thomas at apestaart dot org>
9789
9790         * gst/gstbin.c: (gst_bin_add):
9791           add error for not being able to add elements
9792
9793 2004-02-22  Julien MOUTTE <julien@moutte.net>
9794
9795         * gst/gsttag.c: (_gst_tag_initialize): Registering 2 new tags,
9796         audio-codec and video-codec.
9797
9798 2004-02-22  Benjamin Otte  <otte@gnome.org>
9799
9800         reported by: Padraig O'Briain <padraig.obriain@sun.com>
9801
9802         * autogen.sh:
9803           replace test -e with test -x for mkinstalldirs to be more portable.
9804           (fixes #134816)
9805
9806 2004-02-22  Benjamin Otte  <otte@gnome.org>
9807
9808         * gst/gstpad.c:
9809           revert last patch from Andy, it makes gst_pad_can_link_filtered much
9810           too noisy
9811         * gst/gsttag.c: (_gst_tag_initialize):
9812         * gst/gsttag.h:
9813           add GST_TAG_ALBUM_VOLUME_{COUNT,NUMBER}
9814         * libs/gst/control/dparam.c: (gst_dparam_attach):
9815         * libs/gst/control/dparammanager.c: (gst_dpman_attach_dparam):
9816           check that types for attached dparams match
9817
9818 2004-02-22  Thomas Vander Stichele  <thomas at apestaart dot org>
9819
9820         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
9821         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
9822         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_open_file):
9823           fix errors
9824
9825 2004-02-20  Andy Wingo  <wingo@pobox.com>
9826
9827         * gst/gstbin.c:
9828         * gst/gstbuffer.c:
9829         * gst/gstplugin.c:
9830         * gst/registries/gstxmlregistry.c: 
9831         * gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.
9832
9833         * gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
9834         (gst_element_add_pad): DEBUG->INFO, some fixes.
9835         (gst_element_get_compatible_pad_template): Just see if the
9836         templates' caps intersect, not if one is a strict subset of the
9837         other. This conforms more to what gst_pad_link_intersect() does.
9838         (gst_element_class_add_pad_template): Don't memcpy the pad
9839         template, just ref it.
9840         (gst_element_get_compatible_pad_filtered): Clean up debug messages
9841
9842         * gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
9843         (gst_pad_link_filtered): Debug changes.
9844         (gst_pad_link_prepare): New function, consolidated from
9845         can_link_filtered and link_filtered.
9846
9847         * gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
9848         look more like that of the functions in gstelement.c
9849
9850         * gst/gstinfo.c (gst_debug_print_object): Put a space before the
9851         object, and return the empty string if object is NULL.
9852
9853         * gst/parse/parse.l: Remove trailing newlines when calling PRINT.
9854         * gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
9855         LOG, not DEBUG. We still get flex info on debug.
9856
9857         * gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
9858         debug string more verbose.
9859         (plugin_times_older_than): DEBUG->LOG.
9860
9861 2004-02-20  Julien MOUTTE <julien@moutte.net>
9862
9863         * gst/gsttag.h: Adding video-codec and audio-codec for demuxers which
9864         will emit found_tag for each stream they demux with the codec.
9865
9866 2004-02-20  Benjamin Otte  <otte@gnome.org>
9867
9868         * gst/gstevent.c: (_gst_event_copy), (_gst_event_free):
9869           copy navigation event correctly. Check freeing tag lists. 
9870         * gst/gstthread.c: (gst_thread_change_state):
9871           don't abort() on state changing mess - it might happen because of
9872           bugs.
9873         * gst/gstvalue.c: (gst_value_set_caps), (gst_value_get_caps):
9874           use boxed functions
9875         * gst/gstvalue.h:
9876           fix GST_VALUE_HOLDS_CAPS
9877
9878 2004-02-19  David Schleef  <ds@schleef.org>
9879
9880         * gst/gstinfo.h:  Copy G_STRFUNC implementation from glib-2.4
9881         and use it for GST_FUNCTION.  (bug #134750)
9882
9883 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9884
9885         * po/fr.po:
9886         * po/nl.po:
9887           updating translations
9888
9889 2004-02-19  Thomas Vander Stichele  <thomas at apestaart dot org>
9890
9891         * tools/gst-run.c: (get_candidates), (main): some fixes from jdahlin
9892
9893 2004-02-18  kost@imn.htwk-leipzig.de
9894
9895         reviewed by: David Schleef  <ds@schleef.org>
9896
9897         * docs/libs/gstreamer-libs-sections.txt:  Add missing sections
9898         for libgstcontrol.
9899
9900 2004-02-18  David Schleef  <ds@schleef.org>
9901
9902         * libs/gst/control/dparam.c: (gst_dparam_class_init):
9903         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9904         (gst_dpsmooth_new): Additional fixes to get double dparams working.
9905         * tools/gst-inspect.c: (print_element_info): Support dumping of
9906         double dparam information.
9907
9908 2004-02-17  David Schleef  <ds@schleef.org>
9909
9910         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_class_init):
9911         Use G_TYPE_STRING in signal prototype instead of G_TYPE_POINTER.
9912         * gst/elements/gsttypefind.c: (gst_type_find_element_class_init):
9913         Use GST_TYPE_CAPS in signal prototype.
9914         * gst/gstcaps.c: (_gst_caps_initialize), (gst_caps_copy_conditional):
9915         Convert GST_TYPE_CAPS to boxed.
9916         * gst/gstelement.c: (gst_element_class_init):
9917         Use GST_TYPE_TAG_LIST in signal prototype.
9918         * gst/gstindex.c: (gst_index_class_init):
9919         * gst/gstindex.h:
9920         Add GST_TYPE_INDEX_ENTRY type.
9921         * gst/gstmarshal.list:
9922         Add necessary marshal types.
9923         * gst/gstpad.c: (gst_real_pad_class_init),
9924         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
9925         (gst_pad_recover_caps_error):
9926         Use GST_TYPE_CAPS in signal prototypes.  Fix some debugging strings.
9927         * gst/gststructure.c: (_gst_structure_initialize),
9928         (gst_structure_copy), (_gst_structure_copy_conditional):
9929         * gst/gststructure.h:
9930         Convert GST_TYPE_STRUCTURE to boxed.
9931         * gst/gsttag.c: (gst_tag_list_get_type):
9932         * gst/gsttag.h:
9933         Add GST_TYPE_TAG_LIST type.
9934
9935 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9936
9937         * gst/gstpad.c: (gst_pad_try_set_caps): Reverting my change according
9938         to what we agreed with david.
9939         * gst/gstpad.h: adding GST_PAD_IS_NEGOTIATING macro.
9940
9941 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9942
9943         * po/nl.po: update translation
9944
9945 2004-02-17  Thomas Vander Stichele  <thomas at apestaart dot org>
9946
9947         * gst/autoplug/gstspider.c: (gst_spider_identity_plug):
9948           throw an error if spider is trying to play a mime type there is
9949           no decoder for
9950         * po/POTFILES.in:
9951           add gst/autoplug/gstspider.c for translation
9952
9953 2004-02-17  Julien MOUTTE  <julien@moutte.net>
9954
9955         * gst/gstpad.c: (gst_pad_try_set_caps): We are nice people. Return 
9956         silently when the pad is negotiating.
9957
9958 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9959
9960         * docs/faq/Makefile.am:
9961           add script to run gstreamer uninstalled 
9962         * docs/faq/faq.xml:
9963         * docs/faq/developing.xml:
9964         * docs/faq/gst-uninstalled:
9965           extract script to run gstreamer uninstalled
9966         * docs/manuals.mak:
9967           add EXTRA_SOURCES variable for Makefile.am's to set to
9968           use additional SOURCE files for the doc build
9969
9970 2004-02-16  Thomas Vander Stichele  <thomas at apestaart dot org>
9971
9972         * gst/gstatomic_impl.h: Fedora 2 test package patch for S390
9973
9974 2004-02-15  Julien MOUTTE  <julien@moutte.net>
9975
9976         * gst/gstbin.c: (gst_bin_change_state), (gst_bin_iterate): Fix a big
9977         bug that was breaking pipelines like sinesrc ! { queue ! osssink } when
9978         an error was thrown by osssink. Basically a state change failure for
9979         an element in a different scheduling group was considered as
9980         successful, which means that caps nego was going on and weird stuff
9981         happened. Like I wrote in the comment there, if someone wants to
9982         revert that please drop me a mail explaining why because I really see
9983         no point in keeping that broken behaviour there.
9984         * gst/gstqueue.c: (gst_queue_get): Add a safety check as the queue CAN
9985         be empty, we then return NULL which will trigger a nice error when 
9986         pulling from the pad.
9987
9988 2004-02-13  David Schleef  <ds@schleef.org>
9989
9990         * libs/gst/control/dparam.c: (gst_dparam_class_init),
9991         (gst_dparam_get_property), (gst_dparam_set_property),
9992         (gst_dparam_do_update_default):
9993         * libs/gst/control/dparam.h:
9994         * libs/gst/control/dparam_smooth.c: (gst_dpsmooth_class_init),
9995         (gst_dpsmooth_new), (gst_dpsmooth_set_property),
9996         (gst_dpsmooth_get_property), (gst_dpsmooth_value_changed_double),
9997         (gst_dpsmooth_do_update_double):
9998         * libs/gst/control/dparam_smooth.h:
9999         * libs/gst/control/dparammanager.c:
10000         (gst_dpman_inline_direct_update):
10001         Add support for double dparams.
10002
10003 2004-02-13  David Schleef  <ds@schleef.org>
10004
10005         * gst/elements/gstfdsrc.c: (gst_fdsrc_get): Use GST_TIME_TO_TIMEVAL()
10006         * gst/gstclock.h: Avoid using 64-bit % operator (slow!)
10007
10008 2004-02-13  Mattias Wadman  <mattias@sudac.org>
10009
10010         reviewed by: David Schleef  <ds@schleef.org>
10011
10012         * gst/elements/gstfdsrc.c: (gst_fdsrc_class_init),
10013         (gst_fdsrc_init), (gst_fdsrc_set_property),
10014         (gst_fdsrc_get_property), (gst_fdsrc_get):
10015         * gst/elements/gstfdsrc.h:  Adds timeout property to fdsrc,
10016         and sends an EOS event if file descriptor reading times out.
10017
10018 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10019
10020         * configure.ac:
10021           add calls to AM_CONDITIONAL for subsystems for automake 1.6.x
10022
10023 2004-02-13  Thomas Vander Stichele  <thomas at apestaart dot org>
10024
10025         * configure.ac: pass required libxml version as argument
10026         (bug reported by Christophe Fergeau)
10027
10028 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10029   
10030         * docs/gst/gstreamer-docs.sgml:
10031         * docs/gst/tmpl/gstxml.sgml:
10032         * docs/libs/gstreamer-libs-docs.sgml:
10033           version API docs
10034
10035 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10036
10037         * gst/gstinfo.c:
10038         * gst/gstregistrypool.c: (gst_registry_pool_plugin_filter),
10039         (gst_registry_pool_feature_filter):
10040         * gst/gstthread.c: (gst_thread_class_init):
10041         * gst/gstvalue.c:
10042           add includes exposed by building without libxml
10043         * gst/indexers/Makefile.am:
10044           do not build fileindex when LOADSAVE disabled; we should have
10045           a better libxml check later since fileindex depends on xml, not
10046           LOADSAVE or REGISTRY
10047         * libs/gst/control/Makefile.am:
10048           link with m
10049         * tools/Makefile.am:
10050           fix wrong source code for gst-xmlinspect
10051
10052 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10053
10054         * configure.ac:
10055           fix gcov help output
10056           move calls to and use new GST_CHECK_DISABLE_SUBSYSTEM
10057         * docs/random/release:
10058           some updated releasing notes
10059         * gstreamer.spec.in:
10060           more updates
10061
10062 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10063
10064         * docs/faq/faq.xml:
10065         * docs/manual/manual.xml:
10066         * docs/pwg/pwg.xml:
10067         * docs/pwg/titlepage.xml:
10068           put version in documentation
10069
10070 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10071
10072         * tools/Makefile.am: fix man page installation
10073
10074 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10075
10076         * configure.ac:
10077           don't check for libxml when load/save and registry disabled (#105844)
10078         * gstreamer.spec.in:
10079           sync with fedora candidate spec
10080
10081 2004-02-12  Thomas Vander Stichele  <thomas at apestaart dot org>
10082
10083         * po/fr.po:
10084         * po/nl.po:
10085           replace multidisksrc with multifilesrc
10086
10087 2004-02-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10088
10089         * po/POTFILES.in:
10090           update to multidisksrc => multifilesrc file renaming (#134145)
10091
10092 2004-02-11  David Schleef  <ds@schleef.org>
10093
10094         * docs/gst/tmpl/gstcaps.sgml:  Fix stuff that mentions GstProps
10095         * docs/gst/tmpl/gstpadtemplate.sgml: same
10096         * docs/gst/tmpl/gstreamer-unused.sgml: Remove GstProps
10097         * gst/gstobject.c: (gst_object_set_name_default): Do the memleak
10098         fixing dance.
10099         * gst/gstutils.c: Remove disabled code that uses GstProps.
10100         * gst/registries/gstxmlregistry.h: same
10101         * docs/random/ds/0.9-suggested-changes: random notes
10102
10103 2004-02-11  kost@imn.htwk-leipzig.de
10104
10105         reviewed by: David Schleef  <ds@schleef.org>
10106
10107         * gst/gstclock.c: (gst_clock_entry_new): fixes structure
10108         initialisation of clock (bug #134128)
10109
10110 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10111
10112         * configure.ac:
10113         * gst/elements/Makefile.am:
10114         * gst/elements/gstelements.c:
10115         * gst/elements/gstmultifilesrc.c: (gst_multifilesrc_base_init),
10116         (gst_multifilesrc_class_init), (gst_multifilesrc_init),
10117         (gst_multifilesrc_set_property), (gst_multifilesrc_get_property),
10118         (gst_multifilesrc_get), (gst_multifilesrc_open_file),
10119         (gst_multifilesrc_close_file), (gst_multifilesrc_change_state):
10120         * gst/elements/gstmultifilesrc.h:
10121           rename multidisksrc to multifilesrc (part of #122200)
10122
10123 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10124
10125         * docs/manuals.mak:
10126           fix automake complaints
10127         * gst-element-check.m4:
10128           fix unquotedness
10129
10130 2004-02-11  David Schleef  <ds@schleef.org>
10131
10132         * docs/gst/Makefile.am: Call gst_init() in built gstreamer-scan.
10133         * gst/gstatomic_impl.h: Disable sparc implementation.
10134
10135 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10136
10137         * gst-element-check.m4:
10138           fix underquoted macros as reported by automake 1.8.x (#133800)
10139         * configure.ac:
10140           require gettext 0.11.5 so ulonglong.m4 gets checked out and copied
10141           by autopoint (fixes #132996)
10142
10143 2004-02-10  Andy Wingo  <wingo@pobox.com>
10144
10145         * gst/gstpad.c (gst_pad_custom_new): Add a FIXME, this is a hacky
10146         way to do inheritance.
10147         (gst_pad_get_event_masks, gst_pad_get_event_masks_default) 
10148         (gst_pad_get_query_types, gst_pad_get_query_types_default):
10149         Routine docs.
10150         (gst_pad_set_link_function, gst_pad_set_fixate_function) 
10151         (gst_pad_set_getcaps_function): Doc from Dave's negotation random
10152         doc.
10153         (gst_pad_unlink, gst_pad_is_linked): Docs.
10154         (gst_pad_renegotiate): A brief description of capsnego.
10155         (gst_pad_try_set_caps): Document.
10156         (gst_pad_try_set_caps_nonfixed): Document.
10157         (gst_pad_can_link_filtered, gst_pad_link_filtered): Doc fixes.
10158         (gst_pad_set_parent): Deprecated (although not out of the API).
10159         (gst_pad_get_parent): Deprecated, although many plugins use this.
10160         (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad): Doc that these
10161         are private and will go away in 0.9.
10162         (gst_pad_perform_negotiate): Doc.
10163         (gst_pad_link_unnegotiate): I think this is meant to be static.
10164         (gst_pad_get_negotiated_caps, gst_pad_get_pad_template_caps) 
10165         (gst_pad_template_get_caps_by_name, gst_pad_check_compatibility) 
10166         (gst_pad_get_peer): Doc updates.
10167         (gst_pad_caps_change_notify): Doc.
10168         (gst_pad_alloc_buffer, gst_pad_push, gst_static_pad_template_get) 
10169         (gst_ghost_pad_new): Doc fixes.
10170
10171         * gst/gstobject.c (gst_object_get_parent, gst_object_unparent) 
10172         (gst_object_check_uniqueness): 
10173
10174         * gst/gstelement.c (gst_element_add_pad) 
10175         (gst_element_add_ghost_pad, gst_element_remove_pad) 
10176         (gst_element_remove_ghost_pad, gst_element_get_pad) 
10177         (gst_element_get_static_pad, gst_element_get_pad_list) 
10178         (gst_element_class_get_pad_template_list) 
10179         (gst_element_class_get_pad_template): Work on the docs.
10180         (gst_element_get_pad_template_list): Uses the class method.
10181         (gst_element_get_compatible_pad_template): Docs, and consolidate
10182         some test conditions. 
10183         (gst_element_get_pad_from_template): New static function.
10184         (gst_element_request_compatible_pad): Docs, and work with
10185         non-request compatible templates. 
10186         (gst_element_get_compatible_pad_filtered): Docs and remove
10187         redundant checks.
10188         (gst_element_get_compatible_pad, gst_element_link_pads_filtered) 
10189         (gst_element_link_filtered, gst_element_link_many) 
10190         (gst_element_link, gst_element_link_pads) 
10191         (gst_element_unlink_many): Docs.
10192
10193 2004-02-05  Andy Wingo  <wingo@pobox.com>
10194
10195         * gst/gstpad.c (_gst_real_pad_fixate_accumulator):
10196         s/pointer/boxed/.
10197
10198         * gst/gstmarshal.list (VOID:BOXED, BOXED:BOXED): New marshallers.
10199
10200         * gst/gstpad.c (gst_real_pad_class_init): Use a BOXED:BOXED
10201         marshaller for ::fixate, and VOID:BOXED for ::caps-nego-failed,
10202         with the type=GST_TYPE_CAPS. This allows language bindings to know
10203         what kind of data they're dealing with.
10204
10205         * gst/gstcaps.c (_gst_caps_value_init): GBoxed values initialize
10206         to NULL when g_value_init is called. GstCaps, which rolls its own
10207         type implementation, now does the same instead of allocating empty
10208         caps.
10209         (_gst_caps_initialize, _gst_caps_collect_value,
10210         _gst_caps_lcopy_value): Provide collect_value and lcopy_value type
10211         table methods. This allows G_VALUE_COLLECT to work.
10212
10213 2004-02-05  Andy Wingo  <wingo@pobox.com>
10214
10215         * configure.ac:
10216         * testsuite/Makefile.am (SUBDIRS): 
10217         * testsuite/ghostpads/Makefile.am: 
10218         * testsuite/ghostpads/ghostpads.c: A new test for ghost pads.
10219
10220         * gst/gstpad.c (gst_pad_add_ghost_pad, gst_pad_remove_ghost_pad):
10221         These two routines are the only ones that set
10222         GST_GPAD_REALPAD(gpad), the ghost pad list, and the ghost pad's
10223         pad template. They should be made static, depending on ABI needs.
10224         (gst_real_pad_dispose): Handle the case of ghost pads without a
10225         parent. Assert after dealing with ghost pads that the ghost pad
10226         list is empty.
10227         (gst_ghost_pad_class_init): New property added, ::real-pad. Can be
10228         set after creation.
10229         (gst_ghost_pad_dispose): Set ::real-pad to NULL.
10230         (gst_ghost_pad_set_property, gst_ghost_pad_get_property): New
10231         functions. set_property will call add_ghost_pad/remove_ghost_pad
10232         as appropriate.
10233         (gst_ghost_pad_new): All the work is offloaded to g_object_new.
10234
10235         * gst/gstelement.c (gst_element_add_pad): Handle ghost pads as well.
10236         (gst_element_add_ghost_pad): Remove code duplicated from _add_pad.
10237         (gst_element_remove_pad): Handle ghost pads as well.
10238         (gst_element_remove_ghost_pad): Deprecated (could be removed,
10239         depending on API-stability needs).
10240
10241 2004-02-05  Andy Wingo  <wingo@pobox.com>
10242
10243         * gst/gstbin.[ch]: (gst_bin_get_by_interface): GTypes are scalars,
10244         of course they're const
10245
10246 2004-02-11  Thomas Vander Stichele  <thomas at apestaart dot org>
10247
10248         * tools/Makefile.am:
10249         * tools/gst-feedback:
10250         * tools/gst-feedback-0.7:
10251           make gst-feedback versioned too for consistency
10252
10253 2004-02-11  David Schleef  <ds@schleef.org>
10254
10255         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10256         (gst_pad_try_set_caps): Fix format strings for GST_PTR_FORMAT.
10257
10258 2004-02-10  Julien MOUTTE <julien@moutte.net>
10259
10260         * gst/gstevent.c: (_gst_event_free): Sometimes a tag event arrives but
10261         the structure does not contain a valid tag list. Adding a safety check
10262         to remove a noisy warning in that case.
10263
10264 2004-02-10  Thomas Vander Stichele  <thomas at apestaart dot org>
10265
10266         * gst/gst.c: fix name to be in line with others
10267
10268 2004-02-09  Julien MOUTTE <julien@moutte.net>
10269
10270         * libs/gst/bytestream/bytestream.c: (gst_bytestream_peek): We should
10271         not shout that loud when len is 0. Just return 0 silently.
10272
10273 2004-02-09  Julien MOUTTE  <julien@moutte.net>
10274
10275         * gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
10276         because data_unref has one and I prefer the debug to be symetric.
10277         * gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
10278         were refed when added to the queue and unrefed only once when the queue
10279         was flushed. Now the flush handler unref the buffers two times : first
10280         unref for the ref added when pushing in the queue's tail and second
10281         unref to destroy the flushed buffer.
10282
10283 2004-02-08  Thomas Vander Stichele  <thomas at apestaart dot org>
10284
10285         * docs/pwg/building-boiler.xml: fix cvs checkout documentation
10286
10287 2004-02-06  David Schleef  <ds@schleef.org>
10288
10289         * docs/random/ds/0.9-suggested-changes: Random ramblings
10290         * gst/elements/gstfilesrc.c: (gst_filesrc_get_mmap): Cast size_t
10291         to int before printing.
10292         * gst/parse/grammar.y: Fix gcc-2.95 style variadic macros.
10293         * gst/parse/parse.l: same.  See bug #129600
10294
10295 2004-02-06  David Schleef  <ds@schleef.org>
10296
10297         * gst/gstindex.c: (gst_index_add_format), (gst_index_add_id),
10298         (gst_index_add_entry), (gst_index_add_associationv),
10299         (gst_index_add_association): Add gst_index_add_associationv()
10300         and clean up gst_index_add_association(). #127133
10301
10302 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10303
10304         * autogen.sh: check out common with right tag if CVS/Tag exists
10305
10306 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10307
10308         * testsuite/ghostpads/ghostpads.c: (main):
10309           fix testsuite from segfaulting
10310
10311 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10312
10313         * Makefile.am: add release target
10314         * configure.ac: bump nano to 1
10315         * docs/random/release:
10316
10317 2004-02-06  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10318
10319         * gst/gstcaps.h:
10320         * gst/gstelement.c: (gst_element_base_class_init),
10321         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10322         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10323         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10324         (gst_real_pad_dispose):
10325         * gst/gststructure.c: (gst_structure_free),
10326         (gst_structure_from_string):
10327           put reverted patch back in
10328         * gst/gstelement.c: (gst_element_remove_pad):
10329           free explicit caps if they're set
10330         * gst/gstpad.c: (_gst_pad_default_fixate_func):
10331           copy the structure when fixating
10332
10333 2004-02-05  David Schleef  <ds@schleef.org>
10334
10335         * gst/gstmarshal.list:
10336         * gst/gstpad.c: (gst_real_pad_class_init),
10337         (_gst_real_pad_fixate_accumulator):
10338         Revert POINTER->BOXED change in signal marshaller.
10339
10340 === release 0.7.4 ===
10341                                                                                 
10342 2004-02-06  Thomas Vander Stichele  <thomas at apestaart dot org>
10343                                                                                 
10344         * NEWS: GStreamer 0.7.4 "Wooden Eels" released
10345         * configure.ac: changed for release
10346
10347 2004-02-05  Thomas Vander Stichele  <thomas (at) apestaart (dot) org>
10348
10349         * gstreamer.spec.in:
10350           bump required version of gtk-doc
10351
10352 2004-02-05  Thomas Vander Stichele  <thomas at apestaart dot org>
10353
10354         * gst/gstcaps.h:
10355         * gst/gstelement.c: (gst_element_base_class_init),
10356         (gst_element_class_set_details), (gst_element_clear_pad_caps):
10357         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10358         (gst_pad_try_set_caps), (gst_pad_can_link_filtered),
10359         (gst_real_pad_dispose):
10360         * gst/gststructure.c: (gst_structure_free),
10361         (gst_structure_from_string):
10362           revert patch that breaks applications, reapply after release
10363           to get this fixed properly
10364
10365 2004-02-05  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10366
10367         * gst/gsttag.c: (_gst_tag_initialize):
10368         * gst/gsttag.h:
10369           remove duplicated field GST_TAG_APPLICATION. It's GST_TAG_ENCODER
10370
10371 2004-02-04  David Schleef  <ds@schleef.org>
10372
10373         Fix some memleaks:
10374         * gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
10375         (gst_spider_plug_from_srcpad):
10376         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
10377
10378 2004-02-04  David Schleef  <ds@schleef.org>
10379
10380         * gst/gstelement.c: (gst_element_clear_pad_caps): Make sure we have
10381         a GstRealPad before accessing its structure members.
10382
10383 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10384
10385         * gst/gstclock.c: (gst_clock_init), (gst_clock_set_speed),
10386         (gst_clock_get_speed):
10387         * gst/gstclock.h:
10388           reset padding, remove unused fields
10389
10390 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10391
10392         * gst/autoplug/gstspideridentity.c:
10393         (gst_spider_identity_sink_loop_type_finding):
10394           use get_allowed_caps, not get_caps (fixes #132519)
10395         * gst/elements/gsttypefind.c: (stop_typefinding):
10396           use correct order when sending buffers and seeking
10397
10398 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10399
10400         * configure.ac:
10401         * gst/gstelement.h:
10402         * gst/gstpad.h:
10403         * gst/gstqueue.h:
10404           upgrade libtool CURRENT, reset padding
10405
10406 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10407
10408         * configure.ac:
10409           bump to prerelease
10410           put back AM_PROG_LIBTOOL to make libtoolize stop complaining
10411
10412 2004-02-04  David Schleef  <ds@schleef.org>
10413
10414         * docs/random/ds/0.9-suggested-changes: random notes
10415         * gst/elements/gstfakesrc.c: (gst_fakesrc_get_formats),
10416         (gst_fakesrc_get_query_types), (gst_fakesrc_get_event_mask):
10417         Replace GST_PAD_EVENT_MASK_FUNCTION() (et al.) with its
10418         expansion.
10419         * gst/elements/gstfilesink.c: (gst_filesink_get_formats),
10420         (gst_filesink_get_query_types): same
10421         * gst/elements/gstfilesrc.c: (gst_filesrc_get_event_mask),
10422         (gst_filesrc_get_query_types), (gst_filesrc_get_formats): same
10423         * gst/gstcaps.h: deprecate GST_DEBUG_CAPS(), and fix the macro
10424         to use new GST_PTR_FORMAT.
10425         * gst/gstelement.h: deprecate function factory macros
10426         GST_ELEMENT_QUERY_TYPE_FUNCTION(), GST_ELEMENT_EVENT_MASK_FUNCTION().
10427         These are our last variadic macros that can't be replaced with
10428         inlines.  Celebrate!  Also fix a typo in an #ifdef that was
10429         attempting to deprecate gst_element_clock_wait().
10430         * gst/gstevent.h: same
10431         * gst/gstpad.c: (gst_pad_link_intersect), (gst_pad_link_fixate),
10432         (gst_pad_try_set_caps): replace GST_DEBUG_CAPS() with GST_DEBUG()
10433         * gst/gstpad.h: deprecate function factory macros similar to above.
10434
10435 2004-02-04  Thomas Vander Stichele  <thomas at apestaart dot org>
10436
10437         * configure.ac:
10438         * tools/Makefile.am:
10439         * tools/gst-run.c: (popt_callback), (hash_print_key),
10440         (find_highest_version), (unmangle_libtool), (get_dir_of_binary),
10441         (get_candidates), (main):
10442           add new source file to generate non-versioned wrapper binaries
10443           for our tools.
10444
10445 2004-02-04  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10446
10447         * gst/gstevent.c: (_gst_event_free):
10448           actually break; inside the switch statement
10449         * gst/parse/grammar.y:
10450           fix memleak where GValues weren't unset
10451
10452 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10453
10454         * gst/gststructure.c: (gst_structure_from_string):
10455           fix huge memleak
10456         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10457         (new_entry), (gst_type_find_element_chain):
10458         * gst/gstelement.c: (gst_element_base_class_init),
10459         (gst_element_class_set_details):
10460         * gst/gstpad.c: (gst_pad_can_link_filtered):
10461           fix smaller memleaks
10462         * gst/gstpad.c: (gst_real_pad_dispose):
10463           check that explicit caps are gone
10464         * gst/gststructure.c: (gst_structure_free):
10465           actually free the structure
10466         * gst/gstelement.c: (gst_element_clear_pad_caps):
10467           unset explicit caps
10468
10469 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10470
10471         * tools/Makefile.am:
10472           use AM_CFLAGS since all the CFLAGS are the same
10473           use AM_LDFAGS
10474
10475 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10476
10477         * docs/manual/gnome.xml:
10478           expand example a little
10479         * gst/gst.c: (gst_init_with_popt_table),
10480         (gst_init_check_with_popt_table), (init_pre), (init_popt_callback):
10481           make sure popt option displays are done with right textdomain
10482           use GstPoptOption type
10483         * gst/gst.h:
10484           create GstPoptOption type
10485
10486 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10487
10488         * gst/gsterror.c: (_gst_stream_errors_init):
10489         * gst/gsterror.h:
10490           adding error type for no codec
10491         * po/POTFILES.in:
10492           add gst-inspect
10493         * po/nl.po:
10494           update dutch translation
10495         * tools/gst-inspect.c: (print_element_list), (main):
10496           do proper internationalization
10497         * tools/gst-launch.c: (idle_func):
10498           remove commented out function call
10499
10500 2004-02-03  Thomas Vander Stichele  <thomas at apestaart dot org>
10501
10502         * docs/README:
10503           add some error fixing notes
10504         * docs/gst/gstreamer-sections.txt:
10505           remove double entries
10506         * docs/gst/tmpl/gstbin.sgml:
10507         * docs/gst/tmpl/gstclock.sgml:
10508           remove override
10509         * docs/gst/tmpl/gstelement.sgml:
10510         * docs/gst/tmpl/gstindex.sgml:
10511         * docs/gst/tmpl/gstobject.sgml:
10512         * docs/gst/tmpl/gstpadtemplate.sgml:
10513         * docs/gst/tmpl/gstreamer-unused.sgml:
10514         * docs/gst/tmpl/gsttag.sgml:
10515         * docs/gst/tmpl/gstthread.sgml:
10516         * docs/gst/tmpl/gstxml.sgml:
10517         * gst/gsttag.h:
10518           sync header prototypes with c decls
10519         * gst/gsttaginterface.c:
10520           fix doc headers
10521
10522 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10523
10524         * gst/parse/Makefile.am:
10525         * gst/gstobject.h:
10526           get rid of gstmarshal.h dependency. It's not needed.
10527         * gst/gst.h:
10528         * gst/elements/gstfakesink.c:
10529         * gst/elements/gstfakesrc.c:
10530         * gst/elements/gstidentity.c:
10531         * gst/gstbin.c:
10532         * gst/gstelement.c:
10533         * gst/gstindex.c:
10534         * gst/gstobject.c:
10535         * gst/gstpad.c:
10536         * gst/gstthread.c:
10537         * gst/gstxml.c:
10538         * libs/gst/control/dparam.c:
10539         * libs/gst/control/dparammanager.c:
10540           include gstmarshal.h.
10541         Fixes #132045
10542
10543 2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10544
10545         * gst/elements/gstfilesrc.c: (gst_filesrc_init),
10546         (gst_filesrc_dispose), (gst_filesrc_free_parent_mmap),
10547         (gst_filesrc_map_region), (gst_filesrc_get_mmap):
10548         * gst/elements/gstfilesrc.h:
10549           don't ref the filesrc when creating mmaped buffers. Don't keep a
10550           list of not-yet-destroyed buffers.
10551         * gst/gstbuffer.h:
10552           Deprecated BST_BUFFER_FREE_FUNC and GST_BUFFER_COPY_FUNC
10553
10554 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10555
10556         * gst/gst.c: (init_pre):
10557           remove textdomain
10558
10559 2004-02-02  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10560
10561         * docs/pwg/advanced-events.xml:
10562         * docs/pwg/advanced-scheduling.xml:
10563         * docs/pwg/intro-basics.xml:
10564         * docs/pwg/other-manager.xml:
10565         * docs/pwg/other-nton.xml:
10566         * docs/pwg/other-ntoone.xml:
10567         * docs/pwg/other-oneton.xml:
10568         * docs/pwg/pwg.xml:
10569           All sort of documentation... Forgot what. Point is that I want this
10570           in before I leave. The 'other-*' will be the last section and will
10571           explain issues specific to these type of elements.
10572
10573 2004-02-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10574
10575         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10576         (gst_filesrc_get_read):
10577           set all the values on buffers that we can
10578
10579 2004-02-02  David Schleef  <ds@schleef.org>
10580
10581         Change usage of isblah() to g_ascii_isblah() to be more locale
10582         independent.  (#133076)
10583         * gst/gsturi.c: (gst_uri_protocol_check_internal):
10584         * gst/gstutils.c:
10585         * gst/parse/parse.l:
10586
10587 2004-02-02  Jon Trowbridge  <trow@gnu.org>
10588
10589         reviewed by: David Schleef  <ds@schleef.org>
10590
10591         Fix memory leaks:
10592         * gst/gstcaps.c: (gst_caps_to_string):
10593         * gst/registries/gstxmlregistry.c:
10594         (gst_xml_registry_add_path_list_func),
10595         (gst_xml_registry_parse_padtemplate):
10596
10597 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
10598
10599         * gst/gstelement.c: (gst_element_default_error):
10600           suffix error messages with period
10601
10602 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10603
10604         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
10605         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10606         * gst/gsterror.c: (gst_error_get_message):
10607           Suffix with dots
10608         * po/fr.po:
10609         * po/nl.po:
10610           Update translation files
10611
10612 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10613
10614         * gst/autoplug/gstspideridentity.c:
10615         (gst_spider_identity_sink_loop_type_finding):
10616         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10617         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10618         (gst_filesink_close_file), (gst_filesink_handle_event),
10619         (gst_filesink_chain):
10620         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10621         (gst_filesrc_get_read), (gst_filesrc_open_file):
10622         * gst/elements/gstidentity.c: (gst_identity_chain):
10623         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10624         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10625         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10626         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10627         * gst/gsterror.c: (_gst_core_errors_init),
10628         (_gst_library_errors_init), (_gst_resource_errors_init),
10629         (_gst_stream_errors_init), (gst_error_get_message):
10630         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10631         (gst_pad_recover_caps_error), (gst_pad_pull):
10632         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10633         * gst/schedulers/gstbasicscheduler.c:
10634         (gst_basic_scheduler_chainhandler_proxy),
10635         (gst_basic_scheduler_gethandler_proxy),
10636         (gst_basic_scheduler_cothreaded_chain):
10637           Suffix error messages with period.
10638           Use (NULL) instead of NULL
10639
10640 2004-01-31  Thomas Vander Stichele  <thomas at apestaart dot org>
10641
10642         * docs/gst/tmpl/gstelement.sgml:
10643         * docs/gst/tmpl/gstxml.sgml:
10644         * gst/gstelement.c: (gst_element_error_full):
10645           add element path to error
10646
10647 2004-01-31  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10648
10649         * docs/random/mimetypes:
10650           update raw int/float info
10651         * gst/gsttag.c: (_gst_tag_initialize):
10652         * gst/gsttag.h:
10653           add GST_TAG_ENCODER
10654
10655 2004-01-30  David Schleef  <ds@schleef.org>
10656
10657         * gst/cothreads.c: Add another fallback if MAP_ANONYMOUS is
10658           missing (#132991)
10659
10660 2004-01-30  Laurent Vivier <Laurent.Vivier@bull.net>
10661
10662         reviewed by Benjamin Otte 
10663           parts of the patch submitted in bug #113913
10664
10665         * configure.ac:
10666           use AC_C_INLINE. Use = instead of == with test
10667         * examples/plugins/example.c:
10668         * gst/autoplug/gstspideridentity.c:
10669         * gst/elements/gstfdsrc.c:
10670         * gst/elements/gstfilesrc.c:
10671         * gst/elements/gstidentity.c:
10672         * gst/elements/gstmultidisksrc.c:
10673         * gst/elements/gststatistics.c:
10674         * gst/gstelement.c:
10675         * gst/gstobject.c:
10676         * gst/gstpad.c:
10677         * gst/gstpipeline.c:
10678         * gst/gstthread.c:
10679           don't end enums with a comma
10680         * gst/gstindex.c: (gst_index_compare_func):
10681           do explicit casting to gint
10682         * gst/gsttrace.c: (gst_trace_text_flush):
10683           #define strsize as a macro
10684
10685 2004-01-30  Thomas Vander Stichele  <thomas at apestaart dot org>
10686
10687         * docs/README:
10688         * docs/gst/gstreamer-docs.sgml:
10689         * docs/gst/gstreamer-sections.txt:
10690         * docs/gst/tmpl/gstelement.sgml:
10691         * docs/gst/tmpl/gsterror.sgml:
10692         * docs/gst/tmpl/gstinterface.sgml:
10693         * docs/gst/tmpl/gstreamer-unused.sgml:
10694         * docs/gst/tmpl/gststructure.sgml:
10695         * docs/gst/tmpl/gsttag.sgml:
10696         * docs/gst/tmpl/gsttaginterface.sgml:
10697         * docs/gst/tmpl/gstvalue.sgml:
10698         make sure all API ends up in the built docs
10699         * gst/gstinterface.c:
10700         * gst/gststructure.c: (gst_structure_id_set_value),
10701         (gst_structure_set_value), (gst_structure_id_get_value):
10702         * gst/gststructure.h:
10703         * gst/gstvalue.h:
10704         sync .h with .c declarations
10705
10706 2004-01-30  Julien Moutte  <julien@moutte.net>
10707
10708         * libs/gst/bytestream/bytestream.c: Reverting my event handling patch.
10709         Ronald will fix riffread.
10710
10711 2004-01-30  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10712
10713         * docs/pwg/advanced-interfaces.xml:
10714           Added tuner interface docs.
10715
10716 2004-01-30  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10717
10718         * docs/random/mimetypes:
10719           correct Theora information
10720         * gst/gstelement.h:
10721           make GST_ELEMENT_ERROR do a GST_ERROR_OBJECT
10722
10723 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10724
10725         * gst/gstelement.c: (gst_element_error_full):
10726         * gst/gstelement.h:
10727           GST_ELEMENT_ERROR in enum -> _IN_ERROR
10728
10729 2004-01-29  Julien MOUTTE  <julien@moutte.net>
10730
10731         * gst/elements/gstfilesrc.c: (gst_filesrc_get),
10732         (gst_filesrc_uri_handler_init): Fixing seeking by making FLUSH happen
10733         again and even before DISCONT.
10734         * gst/gstpad.c: (gst_pad_event_default): Remove a unused switch case.
10735         * libs/gst/bytestream/bytestream.c: (gst_bytestream_get_next_buf): Fix
10736         bytestream so that it's not stopping to fill the bytestream if events
10737         different than EOS or DISCONT are received. Instead it process them so
10738         that they go downstream.
10739
10740 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10741
10742         * docs/gst/tmpl/gstelement.sgml:
10743         * docs/gst/tmpl/gstreamer-unused.sgml:
10744         * docs/gst/tmpl/gstxml.sgml:
10745         * gst/autoplug/gstspideridentity.c:
10746         (gst_spider_identity_sink_loop_type_finding):
10747         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
10748         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
10749         (gst_filesink_close_file), (gst_filesink_handle_event),
10750         (gst_filesink_chain):
10751         * gst/elements/gstfilesrc.c: (gst_filesrc_map_region),
10752         (gst_filesrc_get_read), (gst_filesrc_open_file):
10753         * gst/elements/gstidentity.c: (gst_identity_chain):
10754         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
10755         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
10756         (gst_pipefilter_chain), (gst_pipefilter_open_file):
10757         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
10758         * gst/gstelement.h:
10759         * gst/gstpad.c: (gst_pad_set_explicit_caps),
10760         (gst_pad_recover_caps_error), (gst_pad_pull):
10761         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
10762         * gst/schedulers/gstbasicscheduler.c:
10763         (gst_basic_scheduler_chainhandler_proxy),
10764         (gst_basic_scheduler_gethandler_proxy),
10765         (gst_basic_scheduler_cothreaded_chain):
10766           gst_element_error -> GST_ELEMENT_ERROR
10767
10768 2004-01-29  Thomas Vander Stichele  <thomas at apestaart dot org>
10769
10770         * docs/Makefile.am:
10771         * docs/gst/tmpl/gstelement.sgml:
10772         * docs/gst/tmpl/gstxml.sgml:
10773         * docs/manuals.mak:
10774         * docs/pwg/advanced-request.xml:
10775         * docs/pwg/advanced-scheduling.xml:
10776         * docs/pwg/advanced-tagging.xml:
10777           fix non-validating docbook using CDATA
10778           make sure make check-local gets run first to check if it validates
10779
10780 2004-01-29  Julien MOUTTE <julien@moutte.net>
10781
10782         * docs/pwg/advanced-events.xml: Adding documentation on advanced event
10783         handling (up and downstream).
10784         * docs/pwg/advanced-interfaces.xml: Make it coherent with the
10785         my_filter thing.
10786
10787 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10788
10789         * docs/pwg/advanced-tagging.xml:
10790           Add docs about tag writing.
10791
10792 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10793
10794         * docs/pwg/advanced-tagging.xml:
10795           Add a part about tag reading and application signalling... Tag
10796           writing still needs to be documented.
10797         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10798           We can set file locations in READY, too.
10799
10800 2004-01-29  Julien MOUTTE <julien@moutte.net>
10801
10802         * docs/random/ds/element-checklist: Adding some notes about src
10803         events.
10804
10805 2004-01-29  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10806
10807         * docs/random/mimetypes:
10808           Update docs to point to correct elements for various mimetypes, and
10809           some more errors pointed out by Stéphane LOEUILLET (aka LeRoutier)
10810           <stephane.loeuillet@tiscali.fr>.
10811
10812 2004-01-28  David Schleef  <ds@schleef.org>
10813
10814         * docs/pwg/intro-basics.xml: rewrite bufferpool stuff.
10815
10816 2004-01-29  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10817
10818         * docs/random/mimetypes:
10819           update docs for audio/x-raw-float. Add "buffer-frames=0 means
10820           undefined"
10821         * gst/elements/gstfilesrc.c: (gst_filesrc_set_location):
10822           make it only work in NULL.
10823         * gst/gstcaps.c:
10824           don't posion NULL caps
10825         * gst/gstelement.c: (gst_element_set_time):
10826           add debugging statement
10827         * gst/gstelement.c: (gst_element_emit_found_tag),
10828         (gst_element_found_tag_func), (gst_element_found_tags):
10829         * gst/gstelement.h:
10830           These functions take const taglists
10831         * gst/gstpad.c: (gst_pad_proxy_getcaps):
10832           fix memleak
10833         * gst/gstpad.c: (gst_pad_event_default):
10834           make more effort on handling discont and clocks, g_warn if everything
10835           fails
10836         * gst/gststructure.c: (gst_structure_remove_fields),
10837         (gst_structure_remove_fields_valist):
10838         * gst/gststructure.h:
10839           add gst_structure_remove_fields(_valist)
10840         * gst/gsttag.c:
10841           fix doc glitch
10842
10843 2004-01-28  David Schleef  <ds@schleef.org>
10844
10845         * docs/random/ds/element-checklist: Notes about gst_caps_to_string()
10846         * gst/registries/gstxmlregistry.c: (gst_xml_registry_save_caps):
10847         Fix memory leakage of gst_caps_to_string().
10848
10849         Use GST_PTR_FORMAT instead of gst_caps_to_string():
10850         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_sp):
10851         * gst/autoplug/gstspideridentity.c: (spider_find_suggest),
10852         (gst_spider_identity_sink_loop_type_finding):
10853         * gst/elements/gsttypefind.c: (gst_type_find_element_have_type),
10854         (find_suggest):
10855         * gst/gstpad.c: (gst_pad_try_relink_filtered),
10856         (gst_pad_set_explicit_caps):
10857         * gst/parse/grammar.y:
10858
10859 2004-01-28  David Schleef  <ds@schleef.org>
10860
10861         * configure.ac: Add detection for HAVE_PRINTF_EXTENSION and
10862         GST_PRINTF_EXTENSION_FORMAT_DEFINE.
10863         * docs/random/ds/0.9-suggested-changes: Notes from Company.
10864         * gst/gstcaps.c: (gst_caps_to_string): Add comment.
10865         * gst/gstconfig.h.in: Add define for GST_PTR_FORMAT
10866         * gst/gstinfo.c: (_gst_debug_init), (gst_debug_print_object),
10867         (gst_debug_log_default), (_gst_info_printf_extension),
10868         (_gst_info_printf_extension_arginfo):  Add printf extension.
10869         * gst/gstinfo.h: remove G_GNUC_PRINTF, because it doesn't work with %P
10870         * gst/gststructure.c: (gst_structure_to_string),
10871         (_gst_structure_parse_value): Use gst_value_deserialize() and
10872         remove old code.
10873         * gst/gstvalue.c: (gst_value_deserialize_fourcc),
10874         (gst_value_deserialize_boolean), (gst_strtoi),
10875         (gst_value_deserialize_int), (gst_value_deserialize_double),
10876         (gst_value_deserialize_string), (gst_value_deserialize): Implement
10877         a bunch of deserialize functions and gst_value_deserialize.
10878         * gst/gstvalue.h: er, _de_serialize, not unserialize
10879         * testsuite/caps/string-conversions.c: (main): We don't currently
10880         handle (float) in caps, so convert these to (double).
10881         * testsuite/debug/Makefile.am: Add new test for the printf extension
10882         * testsuite/debug/printf_extension.c: (main): same
10883
10884 2004-01-28  Benjamin Otte  <in7y118@public.uni-hamburg.de>
10885
10886         * docs/random/company/time:
10887           Add some docs about clocking and time
10888
10889 2004-01-28  Julien MOUTTE <julien@moutte.net>
10890
10891         * docs/pwg/advanced-interfaces.xml: Adding XOverlay documentation.
10892
10893 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10894
10895         * docs/pwg/advanced-clock.xml:
10896         * docs/pwg/advanced-dparams.xml:
10897         * docs/pwg/advanced-events.xml:
10898         * docs/pwg/advanced-interfaces.xml:
10899         * docs/pwg/advanced-midi.xml:
10900         * docs/pwg/advanced-request.xml:
10901         * docs/pwg/advanced-scheduling.xml:
10902         * docs/pwg/advanced-tagging.xml:
10903         * docs/pwg/advanced-types.xml:
10904         * docs/pwg/appendix-checklist.xml:
10905         * docs/pwg/building-boiler.xml:
10906         * docs/pwg/building-chainfn.xml:
10907         * docs/pwg/building-filterfactory.xml:
10908         * docs/pwg/building-pads.xml:
10909         * docs/pwg/building-props.xml:
10910         * docs/pwg/building-signals.xml:
10911         * docs/pwg/building-state.xml:
10912         * docs/pwg/building-testapp.xml:
10913         * docs/pwg/intro-basics.xml:
10914         * docs/pwg/intro-preface.xml:
10915         * docs/pwg/other-autoplugger.xml:
10916         * docs/pwg/other-sink.xml:
10917         * docs/pwg/other-source.xml:
10918         * docs/pwg/titlepage.xml:
10919           fix up id's
10920
10921 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10922
10923         * docs/95NonPath:
10924         * docs/HACKING:
10925         * docs/README:
10926         * docs/building-the-docs-on-debian:
10927           collect relevant bits of doc info
10928
10929 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10930
10931         * docs/pwg/advanced_tagging.xml:
10932           Half-assed commit so Thomas can re-arrange document IDs here to be
10933           consistent, too.
10934
10935 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10936
10937         * docs/manual/autoplugging.xml:
10938         * docs/manual/bins-api.xml:
10939         * docs/manual/bins.xml:
10940         * docs/manual/buffers-api.xml:
10941         * docs/manual/buffers.xml:
10942         * docs/manual/clocks.xml:
10943         * docs/manual/components.xml:
10944         * docs/manual/cothreads.xml:
10945         * docs/manual/debugging.xml:
10946         * docs/manual/dparams-app.xml:
10947         * docs/manual/dynamic.xml:
10948         * docs/manual/elements-api.xml:
10949         * docs/manual/elements.xml:
10950         * docs/manual/factories.xml:
10951         * docs/manual/gnome.xml:
10952         * docs/manual/goals.xml:
10953         * docs/manual/helloworld.xml:
10954         * docs/manual/helloworld2.xml:
10955         * docs/manual/init-api.xml:
10956         * docs/manual/intro.xml:
10957         * docs/manual/links-api.xml:
10958         * docs/manual/links.xml:
10959         * docs/manual/manual.xml:
10960         * docs/manual/motivation.xml:
10961         * docs/manual/pads-api.xml:
10962         * docs/manual/pads.xml:
10963         * docs/manual/plugins-api.xml:
10964         * docs/manual/plugins.xml:
10965         * docs/manual/programs.xml:
10966         * docs/manual/queues.xml:
10967         * docs/manual/quotes.xml:
10968         * docs/manual/schedulers.xml:
10969         * docs/manual/states-api.xml:
10970         * docs/manual/states.xml:
10971         * docs/manual/threads.xml:
10972         * docs/manual/typedetection.xml:
10973         * docs/manual/xml.xml:
10974           use chapter, part, section or misc as id starts for all bits
10975
10976 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
10977
10978         * docs/gst/gstreamer-sections.txt:
10979           Fix up TITLE of the sections
10980
10981 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10982
10983         * docs/pwg/advanced_interfaces.xml:
10984           Add documentation on propertyprobing.
10985         * docs/pwg/advanced_events.xml:
10986         * docs/pwg/advanced_tagging.xml:
10987         * docs/pwg/building_boiler.xml:
10988         * docs/pwg/building_filterfactory.xml:
10989         * docs/pwg/pwg.xml:
10990           Move filterfactory and tagging into their own chapter, add a chapter
10991           on events. all these are empty placeholders that will be filled in
10992           some day.
10993
10994 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
10995
10996         * docs/pwg/advanced_interfaces.xml:
10997           Docs for mixer interface. Also a check for website uploading.
10998
10999 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11000
11001         * docs/HACKING:
11002         * docs/Makefile.am:
11003         * docs/faq/Makefile.am:
11004         * docs/gst/Makefile.am:
11005         * docs/gst/tmpl/gstelement.sgml:
11006         * docs/gst/tmpl/gstplugin.sgml:
11007         * docs/gst/tmpl/gstreamer-unused.sgml:
11008         * docs/libs/Makefile.am:
11009         * docs/manual/Makefile.am:
11010         * docs/manuals.mak:
11011         * docs/pwg/Makefile.am:
11012         * docs/upload.mak:
11013           Separate out upload target and make it similar for
11014           both docbook and gtk-doc docs
11015
11016 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11017
11018         * docs/manuals.mak:
11019           Fix upload target to work with freedesktop
11020
11021 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11022
11023         * docs/pwg/advanced_types.xml:
11024           Add notes on creating your own types.
11025         * docs/pwg/building_boiler.xml:
11026         * docs/pwg/building_pads.xml:
11027         * docs/pwg/building_state.xml:
11028           Add some stuff about how to retrieve values from structures, how
11029           that relates to types and change layout slightly again to be almost
11030           perfect.
11031
11032 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11033
11034         * docs/pwg/advanced_dparams.xml:
11035         * docs/pwg/advanced_scheduling.xml:
11036           Change index layout slightly.
11037
11038 2004-01-28  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11039
11040         * docs/pwg/advanced_clock.xml:
11041         * docs/pwg/advanced_interfaces.xml:
11042         * docs/pwg/advanced_midi.xml:
11043           General placeholders for now.
11044         * docs/pwg/advanced_request.xml:
11045           Explanation about sometimes and request pads.
11046         * docs/pwg/advanced_scheduling.xml:
11047           Concept of bytestream, loopfunctions and schedulers.
11048         * docs/pwg/building_boiler.xml:
11049           Add something about plugin-init.
11050
11051 2004-01-28  Thomas Vander Stichele  <thomas at apestaart dot org>
11052
11053         * docs/pwg/building_pads.xml:
11054           Fix broken docbook
11055
11056 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11057
11058         * docs/pwg/advanced_interfaces.xml:
11059         * docs/pwg/pwg.xml:
11060           Add as a placeholder for future filling-in.
11061         * docs/pwg/basics_autoplugging.xml:
11062         * docs/pwg/basics_buffers.xml:
11063         * docs/pwg/basics_elements.xml:
11064         * docs/pwg/basics_events.xml:
11065         * docs/pwg/basics_plugins.xml:
11066         * docs/pwg/basics_types.xml:
11067           Remove, because unused (this is all in intro_basics.xml).
11068         * docs/pwg/building_signals.xml:
11069           Short intro to signals + reference to GObject docs - we really
11070           shouldn't go into these sort of things to deply because we don't
11071           use them that extensively anyway.
11072         * docs/pwg/building_state.xml:
11073           Explanation of states. Benjamin, please check.
11074         * docs/pwg/building_testapp.xml:
11075           Put everything in one page - putting only a few lines of content
11076           per page doesn't really make sense.
11077
11078           Time to get into the advanced topics. ;).
11079
11080 2004-01-27  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11081
11082         * docs/pwg/advanced_types.xml:
11083           Finish documenting the current state of mimetypes.
11084         * docs/pwg/building_boiler.xml:
11085         * docs/pwg/building_chainfn.xml:
11086         * docs/pwg/building_pads.xml:
11087         * docs/pwg/building_props.xml:
11088         * docs/pwg/building_testapp.xml:
11089           Start documenting the "how to build a simple audio filter" part
11090           of the PWG. Most stuff is ready by now. Stuff remaining: signals,
11091           states and (maybe?) a short introduction to capsnego in the chapter
11092           on pads (building_pads.xml). Capsnego should probably be explained
11093           fully in advanced_capsnego.xml or so.
11094
11095 2004-01-26  David Schleef  <ds@schleef.org>
11096
11097         * gst/gstpad.c: (gst_pad_try_set_caps_nonfixed):
11098         * gst/gstpad.h: Add new function to allow element to (somewhat)
11099         specify non-fixed caps on a pad.
11100         * gst/gstqueue.c: (gst_queue_chain): Remove noisy g_object_notify()
11101         that I added a few weeks ago.
11102
11103 2004-01-26  David Schleef  <ds@schleef.org>
11104
11105         * gst/gstpad.c: (gst_pad_try_set_caps): Revert last change
11106           making try_set_caps() work with non-fixed caps.
11107
11108 2004-01-26  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11109
11110         * docs/pwg/advanced_types.xml:
11111         * docs/pwg/intro_basics.xml:
11112         * docs/pwg/intro_preface.xml:
11113         * docs/pwg/pwg.xml:
11114         * docs/pwg/titlepage.xml:
11115           First try to resurrect the PWG. I'm halfway integrating the mimetypes
11116           in here (docs/random/mimetypes), and will from there on work on both
11117           updating outdated parts and adding missing parts.
11118           That doesn't mean I'll fix it completely, but I'll try at least. ;).
11119
11120 2004-01-26  Thomas Vander Stichele  <thomas at apestaart dot org>
11121
11122         * gst/gsterror.h: reinstate GST_LIBRARY_ERROR_ENCODE until
11123           policy is set
11124
11125 2004-01-26  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11126
11127         * gst/gstelement.h:
11128           remove gst_element_factory_get_version. It doesn't exist anymore.
11129         * gst/gstplugin.c:
11130         * gst/gstplugin.h:
11131           remove gst_plugin_set_name and change gst_plugin_get_longname to
11132           gst_plugin_get_description to match code.
11133         * gst/gsterror.h:
11134           remove GST_LIBRARY_ERROR_ENCODE. It's GST_STREAM_ERROR_ENCODE.
11135         * gst/gstpad.c: (gst_pad_try_set_caps):
11136           make it work with nonfixed caps.
11137           Note that even in the nonfixed case the link function of the pad
11138           that tries to set caps isn't called.
11139
11140 2004-01-25  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11141
11142         * gst/elements/gstbufferstore.c: (gst_buffer_store_get_buffer):
11143           fix bug where buffer was not assembled correctly
11144         * gst/elements/gsttee.c: (gst_tee_class_init), (gst_tee_init):
11145           silence by default
11146         * gst/elements/gsttypefind.c: (gst_type_find_element_chain):
11147           only seek if there's no more buffers that could work without seeking
11148
11149 2004-01-23  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11150
11151         * gst/gsttag.c: (_gst_tag_initialize):
11152         * gst/gsttag.h:
11153           Add application tag (for encoding/muxing app).
11154
11155 2004-01-23  Thomas Vander Stichele  <thomas at apestaart dot org>
11156
11157         * autogen.sh:
11158           make autopoint force, and libtoolize not copy
11159         * common/m4/as-docbook.m4:
11160           added docbook xml catalog setup check
11161         * common/m4/gst-doc.m4:
11162           use docbook check
11163
11164 2004-01-22  Thomas Vander Stichele  <thomas at apestaart dot org>
11165
11166         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_register):
11167         * gst/gsttag.h:
11168           add GstTagFlag
11169
11170 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11171
11172         * docs/gst/gstreamer-sections.txt:
11173         * docs/gst/tmpl/gst.sgml:
11174         * docs/gst/tmpl/gstbuffer.sgml:
11175         * docs/gst/tmpl/gstclock.sgml:
11176         * docs/gst/tmpl/gstelement.sgml:
11177         * docs/gst/tmpl/gstreamer-unused.sgml:
11178         * docs/gst/tmpl/gstxml.sgml:
11179           sync latest API changes to docs
11180
11181 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11182
11183         * gst/gstpluginfeature.c:
11184           fix doc snippet
11185         * tools/gst-inspect.c: (print_element_list):
11186           fix output of typefind
11187           add GPL header
11188         * tools/gst-launch.c:
11189           add GPL header
11190
11191 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11192
11193         * gst/elements/Makefile.am:
11194         * gst/elements/gstelements.c:
11195         * gst/elements/gsttypefindelement.c:
11196         * gst/elements/gsttypefindelement.h:
11197         * po/POTFILES.in:
11198         * po/fr.po:
11199         * po/nl.po:
11200           renamed gsttypefindelement to gsttypefind, conserving CVS history
11201
11202 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11203
11204         * gst/gsttag.c: (_gst_tag_initialize), (gst_tag_list_add_valist):
11205         * gst/gsttag.h:
11206           add some tags used in ogg as well
11207           fix _ in replaygain tags
11208
11209 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11210
11211         * gst/gsterror.h:
11212           fix wrong GST_LIBRARY_ERROR_ENCODE addition
11213
11214 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11215
11216         * gst/gstelement.c: (gst_element_error_full):
11217         * gst/gstelement.h:
11218           change _extended to _full
11219
11220 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11221
11222         reviewed by: <delete if not using a buddy>
11223
11224         * docs/gst/tmpl/gst.sgml:
11225         * docs/gst/tmpl/gstbuffer.sgml:
11226         * docs/gst/tmpl/gstclock.sgml:
11227         * docs/gst/tmpl/gstelement.sgml:
11228         * docs/gst/tmpl/gstreamer-unused.sgml:
11229         * docs/gst/tmpl/gstxml.sgml:
11230         * gst/gstelement.c: (gst_element_error_full):
11231         * gst/gstelement.h:
11232
11233 2004-01-20  Thomas Vander Stichele  <thomas at apestaart dot org>
11234
11235         * gst/gstelement.h: fix _gst_element_error_printf prototype
11236
11237 2004-01-20  David Schleef  <ds@schleef.org>
11238
11239         * gst/gststructure.c: (gst_structure_to_string):
11240         Convert function to use gst_value_serialize().
11241         * gst/gstvalue.c: (gst_value_serialize_list),
11242         (gst_value_serialize_fourcc), (gst_value_serialize_int_range),
11243         (gst_value_serialize_double_range), (gst_value_serialize_boolean),
11244         (gst_value_serialize_int), (gst_value_serialize_double),
11245         (gst_string_wrap), (gst_value_serialize_string),
11246         (gst_value_serialize), (gst_value_deserialize):
11247         * gst/gstvalue.h:
11248         Add implementations for serialize.
11249
11250 2004-01-20  Julien MOUTTE  <julien@moutte.net>
11251
11252         * gst/gsterror.h: xvidenc.c needs GST_LIBRARY_ERROR_ENCODE. Dunno if
11253         we want to keep that one in the future or change xvidenc.c to use 
11254         another error.
11255
11256 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11257
11258         * gst/gstelement.c: (_gst_element_error_printf):
11259         * gst/gstelement.h:
11260           privatise function
11261
11262 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11263
11264         * docs/random/error:
11265           doc explaining error system
11266         * gst/elements/gstfilesrc.c: (gst_filesrc_open_file):
11267           cleanup
11268
11269 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11270
11271         * gst/gst-i18n-app.h:
11272         * gst/gst-i18n-lib.h:
11273           remove inclusion of config.h
11274         * po/POTFILES.in:
11275         * po/nl.po:
11276           add gst/gstelement.c
11277
11278 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11279
11280         * po/nl.po: updated Dutch translation
11281
11282 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11283
11284         * gst/gsterror.c: (_gst_core_errors_init),
11285         (_gst_library_errors_init), (_gst_resource_errors_init),
11286         (_gst_stream_errors_init):
11287         remove ending punctuation dots
11288
11289 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11290
11291         * gst/elements/gstfilesink.c: (gst_filesink_open_file):
11292         * gst/elements/gstfilesrc.c: (gst_filesrc_get_read):
11293         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11294         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11295         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11296         use GST_ERROR_SYSTEM
11297
11298 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11299
11300         * gst/gstelement.c: (gst_element_error_printf),
11301         (gst_element_error_extended):
11302         * gst/gstelement.h:
11303           add a helper printf function so we can have NULL values passed.
11304
11305 2004-01-19  Thomas Vander Stichele  <thomas at apestaart dot org>
11306
11307         * gst/gstelement.h:
11308           add G_STMT macros to gst_element_error, which isn't strictly
11309           necessary but people tell me to anyway.
11310
11311 2004-01-18  Thomas Vander Stichele  <thomas at apestaart dot org>
11312
11313         * gst/Makefile.am:
11314         * gst/autoplug/gstspideridentity.c:
11315         (gst_spider_identity_sink_loop_type_finding):
11316         * gst/elements/gstfakesink.c: (gst_fakesink_change_state):
11317         * gst/elements/gstfilesink.c: (gst_filesink_open_file),
11318         (gst_filesink_close_file), (gst_filesink_handle_event),
11319         (gst_filesink_chain):
11320         * gst/elements/gstfilesrc.c: (gst_filesrc_set_property),
11321         (gst_filesrc_map_region), (gst_filesrc_get_read),
11322         (gst_filesrc_open_file):
11323         * gst/elements/gstidentity.c: (gst_identity_chain):
11324         * gst/elements/gstmultidisksrc.c: (gst_multidisksrc_open_file):
11325         * gst/elements/gstpipefilter.c: (gst_pipefilter_get),
11326         (gst_pipefilter_chain), (gst_pipefilter_open_file):
11327         * gst/elements/gsttypefindelement.c: (gst_type_find_element_chain):
11328         * gst/gst.h:
11329         * gst/gst_private.h:
11330         * gst/gstelement.c: (gst_element_class_init),
11331         (gst_element_default_error), (gst_element_error_func),
11332         (gst_element_error_extended):
11333         * gst/gstelement.h:
11334         * gst/gsterror.c: (_gst_core_errors_init),
11335         (_gst_library_errors_init), (_gst_resource_errors_init),
11336         (_gst_stream_errors_init), (gst_error_get_message):
11337         * gst/gsterror.h:
11338         * gst/gstinfo.c: (_gst_debug_init):
11339         * gst/gstmarshal.list:
11340         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11341         (gst_pad_recover_caps_error), (gst_pad_pull):
11342         * gst/gstqueue.c: (gst_queue_chain), (gst_queue_get):
11343         * gst/schedulers/gstbasicscheduler.c:
11344         (gst_basic_scheduler_chainhandler_proxy),
11345         (gst_basic_scheduler_gethandler_proxy),
11346         (gst_basic_scheduler_cothreaded_chain):
11347         * po/POTFILES.in:
11348         * po/fr.po:
11349         * po/nl.po:
11350           change error signal
11351           add error categories
11352
11353 2004-01-18  Jeremy Simon  <jesimon@libertysurf.fr>
11354
11355         * gst/gsttag.c: (_gst_tag_initialize):
11356         * gst/gsttag.h:
11357         Add replaygain tag
11358
11359 2004-01-18  Colin Walters  <walters@verbum.org>
11360
11361         * examples/retag/retag.c: Call gst_init before processing
11362         program args.  Add g_assert to _link_many call.
11363
11364 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11365
11366         * gst/gstpad.c: (gst_pad_alloc_buffer):
11367           Return a newly allocated buffer when the pad has no peer.
11368
11369 2004-01-16  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11370
11371         * gst/gstclock.c: (gst_clock_get_time):
11372           make it compile with gcc 2.95 again.
11373           Patch by Scott Wheeler
11374
11375 2004-01-15  David Schleef  <ds@schleef.org>
11376
11377         * gst/gstcaps.h:
11378         Added gst_caps_is_simple() macro.
11379         * testsuite/caps/caps.c: (test1):
11380         * testsuite/caps/intersect2.c: (main):
11381         * testsuite/caps/intersection.c: (main):
11382         Fixes to make 'make check' work again after removing
11383         gst_caps_is_chained().
11384
11385 2004-01-15  Leif Johnson <leif@ambient.2y.net>
11386
11387         * docs/random/uraeus/gstreamer_and_midi.txt: Rather large edits
11388         and additions to the MIDI document.
11389
11390 2004-01-15  David Schleef  <ds@schleef.org>
11391
11392         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered),
11393         (gst_element_link_pads_filtered): Use GST_PAD_ macros instead
11394         of GST_RPAD_, since we don't know if it's a real or ghost pad.
11395
11396 2004-01-15  David Schleef  <ds@schleef.org>
11397
11398         * gst/gstqueue.c:
11399         * gst/gstqueue.h:
11400         Fix the spelling of "treshold" and make min_threshold actually
11401         affect the queue.
11402
11403 2004-01-15  David Schleef  <ds@schleef.org>
11404
11405         * gst/gstcaps.c:
11406         Add lots of documentation.
11407         * gst/gstcaps.h:
11408         Deprecate a few functions.
11409         * gst/gstpad.c:
11410         Removed use of deprecated functions.
11411
11412 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11413
11414         * gst/gstpad.c: (gst_pad_is_linked):
11415         * gst/gstpad.h:
11416           implement gst_pad_is_linked
11417         * gst/gstelement.h:
11418           reserve space for initiate_state_change
11419
11420 2004-01-15  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11421
11422         * gst/autoplug/gstspideridentity.c:
11423         (gst_spider_identity_sink_loop_type_finding):
11424           break infinite loop by just returning instead of looping
11425         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_set_property):
11426           set event time difference correctly. Set it to 1 second instead
11427           of 100ms to be more tolerant
11428         * gst/gstelement.c: (gst_element_set_time):
11429           add debugging output
11430
11431 2004-01-14  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11432
11433         * gst/gstqueue.c: (gst_queue_getcaps), (gst_queue_link):
11434           query if buffers are inside the pool, ignore events
11435
11436 2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11437
11438         * gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
11439         (gst_clock_set_speed), (gst_clock_set_active),
11440         (gst_clock_is_active), (gst_clock_reset),
11441         (gst_clock_handle_discont):
11442         * gst/gstclock.h:
11443           deprecate old interface and disable functions that aren't in use
11444           anymore.
11445         * gst/gstelement.h:
11446         * gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
11447         (gst_element_set_time), (gst_element_adjust_time):
11448           add concept of "element time" and functions to get/set this time.
11449         * gst/gstelement.c: (gst_element_change_state):
11450           update element time correctly.
11451         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11452           This is a debug message, not a g_critical.
11453         * gst/gstpad.c: (gst_pad_event_default):
11454           handle discontinuous events right with element time.
11455         * gst/gstscheduler.c: (gst_scheduler_state_transition):
11456           update to clocking fixes.
11457           set clocks on elements in READY=>PAUSED. The old behaviour caused
11458           a wrong element time on the first element that started playing.
11459         * gst/schedulers/gstbasicscheduler.c:
11460         (gst_basic_scheduler_class_init):
11461         * gst/schedulers/gstoptimalscheduler.c:
11462         (gst_opt_scheduler_class_init):
11463           remove code that just implements the default behaviour.
11464         * gst/elements/gstfakesink.c: (gst_fakesink_chain):
11465           update to use new clocking functions
11466         * testsuite/clock/clock1.c: (gst_clock_debug), (main):
11467         * testsuite/clock/clock2.c: (gst_clock_debug), (main):
11468           update to test new element time.
11469         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
11470           use _get_allowed_caps instead of _get_caps. This catches filtered
11471           caps correctly.
11472         * testsuite/debug/commandline.c:
11473           update for new GST_DEBUG syntax.
11474         * testsuite/threads/Makefile.am:
11475           disable a test that only works sometimes.
11476
11477 2004-01-13  Julien MOUTTE <julien@moutte.net>
11478
11479         * po/LINGUAS: Adding fr.
11480         * po/fr.po: Adding french translation.
11481
11482 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11483
11484         * gst/parse/grammar.y:
11485         * po/POTFILES.in:
11486         * po/nl.po:
11487         * tools/gst-launch.c: (xmllaunch_parse_cmdline), (main):
11488           translate parsing error messages
11489
11490 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11491
11492         * po/POTFILES.in: adding gst-launch
11493         * po/nl.po: updated translation, all 99 strings translated
11494         * tools/gst-launch.c: (idle_func), (xmllaunch_parse_cmdline),
11495         (found_tag), (sigint_handler_sighandler), (play_handler), (main):
11496           fix strings for translation
11497
11498 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11499
11500         * gst/gst.c:
11501           - capitalize beginnings of popt options
11502           - fix strings for translation
11503           - change gst-debug format from =N1=V1:N2=V2 to =N1:V1,N2:V2
11504
11505 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11506
11507         * po/README: add some notes on how to update translations
11508
11509 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11510
11511         * ABOUT-NLS: removed, is autogenerated from autopoint
11512         * autogen.sh: add autopoint stuff
11513         * configure.ac: fix up gettext stuff
11514         * gst/Makefile.am: add i18n headers to noinst_HEADERS
11515         * gst/elements/gsttypefindelement.c: add header include
11516         * gst/gettext.h: add header, copy from system-installed header
11517         * gst/gst-i18n-app.h: to be included by each app having translations
11518         * gst/gst-i18n-lib.h: to be included by each lib having translations
11519         * gst/gst.c: (init_pre): fix up gettext calls
11520         * gst/gst_private.h: remove i18n stuff, moving to separate headers
11521         * po/LINGUAS: the new way to specify translations present
11522         * po/Makefile.in.in: removed from cvs, autogenerated from autopoint
11523         * po/Makevars: the variables filled in for GStreamer
11524         * po/POTFILES.in: added new files with translations
11525         * po/de.po: has new strings
11526         * po/nl.po: readded, has new strings
11527
11528 2004-01-13  Thomas Vander Stichele  <thomas at apestaart dot org>
11529
11530         * gst/gsttag.c: fix some strings marked for translation
11531
11532 2004-01-13  Iain <iain@prettypeople.org>
11533
11534         * gst/schedulers/gstoptimalscheduler.c (add_to_group): Reference the
11535         group when we add an element to it, cos we unref it when we remove one
11536
11537 2004-01-12  Thomas Vander Stichele  <thomas at apestaart dot org>
11538
11539         * testsuite/debug/commandline.c: (debug_not_reached):
11540         * testsuite/debug/output.c: (check_message):
11541           fix testsuite
11542
11543 2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11544
11545         * examples/cutter/.cvsignore:
11546         * examples/helloworld/.cvsignore:
11547         * examples/launch/.cvsignore:
11548         * examples/manual/.cvsignore:
11549         * examples/mixer/.cvsignore:
11550         * examples/pingpong/.cvsignore:
11551         * examples/plugins/.cvsignore:
11552         * examples/queue/.cvsignore:
11553         * examples/queue2/.cvsignore:
11554         * examples/queue3/.cvsignore:
11555         * examples/queue4/.cvsignore:
11556         * examples/retag/.cvsignore:
11557         * examples/thread/.cvsignore:
11558         * examples/typefind/.cvsignore:
11559         * examples/xml/.cvsignore:
11560         * gst/.cvsignore:
11561         * gst/autoplug/.cvsignore:
11562         * gst/elements/.cvsignore:
11563         * gst/indexers/.cvsignore:
11564         * gst/parse/.cvsignore:
11565         * gst/registries/.cvsignore:
11566         * gst/schedulers/.cvsignore:
11567         * libs/gst/bytestream/.cvsignore:
11568         * libs/gst/control/.cvsignore:
11569         * libs/gst/getbits/.cvsignore:
11570         * tests/.cvsignore:
11571         * tests/bufspeed/.cvsignore:
11572         * tests/instantiate/.cvsignore:
11573         * tests/memchunk/.cvsignore:
11574         * tests/muxing/.cvsignore:
11575         * tests/sched/.cvsignore:
11576         * tests/seeking/.cvsignore:
11577         * tests/threadstate/.cvsignore:
11578         * testsuite/.cvsignore:
11579         * testsuite/caps/.cvsignore:
11580         * testsuite/cleanup/.cvsignore:
11581         * testsuite/dynparams/.cvsignore:
11582         * testsuite/plugin/.cvsignore:
11583         * tools/.cvsignore:
11584           update - this is huge, because it includes *.bb, *.bbg and *.da files
11585           which are generated for gcov.
11586
11587 2004-01-11  David Schleef  <ds@schleef.org>
11588
11589         * gst/gststructure.c: (gst_strtoi), (gst_value_from_string): Add
11590         a function to parse integers in ways that strto[u]l() does not.
11591
11592 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11593
11594         * tools/gst-inspect.c: (print_caps):
11595           improve output of caps a bit
11596
11597 2004-01-11  David Schleef  <ds@schleef.org>
11598
11599         * gst/gstbuffer.c: (gst_buffer_create_sub): Subbuffers should
11600         inherit correct flags (READONLY and DONTKEEP).
11601
11602 2004-01-11  David Schleef  <ds@schleef.org>
11603
11604         * gst/elements/gstfilesrc.c: (gst_filesrc_free_parent_mmap),
11605         (gst_filesrc_map_region):
11606         * gst/gstbuffer.c: (_gst_buffer_initialize),
11607         (_gst_buffer_sub_free), (gst_buffer_default_copy),
11608         (gst_buffer_new), (gst_buffer_create_sub),
11609         (gst_buffer_is_span_fast), (gst_buffer_span):
11610         * gst/gstbuffer.h:
11611         Change GstBuffer private structure element names. (all files)
11612         * gst/gstqueue.c: (gst_queue_init), (gst_queue_getcaps),
11613         (gst_queue_link):
11614         * gst/gstqueue.h:
11615         Implement getcaps/pad_link functions that handle the case where
11616         there are data in the queue.
11617
11618 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11619
11620         * gst/elements/gstbufferstore.c:
11621           initialize debugging structure correctly
11622         * gst/elements/gsttee.c: (gst_tee_set_property):
11623           g_object_notify when property was changed
11624         * gst/elements/gsttypefindelement.c:
11625         (gst_type_find_element_change_state):
11626           clear caps correctly
11627
11628 2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11629
11630         * gst/gstqueue.c: (gst_queue_init):
11631           Use better defaults for when a queue should block. This
11632           gets rid of jerky playback for quite a few files.
11633           It takes more memory.
11634
11635 2004-01-10  Thomas Vander Stichele  <thomas at apestaart dot org>
11636
11637         (gst_xml_registry_parse_padtemplate):
11638           make critical message slightly more useful
11639
11640 2004-01-10  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11641
11642         * gst/gstinfo.c: (gst_debug_log), (gst_debug_log_valist),
11643         (gst_debug_message_get), (gst_debug_log_default):
11644         * gst/gstinfo.h:
11645           Change gst_debug_log(_valist) to take a const format string.
11646           Change prototype of log function and functions using those to 
11647           take a GstDebugMessage instead of a string that requires using
11648           gst_debug_message_get.
11649
11650 2004-01-08  David Schleef  <ds@schleef.org>
11651
11652         * Makefile.am:
11653         * configure.ac:
11654         Add option --enable-gcov to build GStreamer with -fprofile-arcs
11655         and -ftest-coverage, which allows gcov to show information about
11656         testsuite coverage.
11657
11658 2004-01-08  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11659
11660         * gst/gstutils.h:
11661           Add GST_BOILERPLATE(_FULL), GST_PARENT_CALL and
11662           GST_PARENT_CALL_WITH_DEFAULT
11663         * gst/elements/gstaggregator.c: 
11664         * gst/elements/gstbufferstore.c: 
11665         * gst/elements/gstfakesink.c: 
11666         * gst/elements/gstfakesrc.c: 
11667         * gst/elements/gstfdsink.c: 
11668         * gst/elements/gstfdsrc.c: 
11669         * gst/elements/gstfilesink.c: 
11670         * gst/elements/gstfilesrc.c: 
11671         * gst/elements/gstidentity.c: 
11672         * gst/elements/gstmd5sink.c: 
11673         * gst/elements/gstmultidisksrc.c:
11674         * gst/elements/gstpipefilter.c: 
11675         * gst/elements/gstshaper.c:
11676         * gst/elements/gststatistics.c:
11677         * gst/elements/gsttee.c:
11678         * gst/elements/gsttypefindelement.c:
11679           use them.
11680
11681 2004-01-07  Thomas Vander Stichele  <thomas at apestaart dot org>
11682
11683         * docs/gst/gstreamer-docs.sgml: remove props
11684         * docs/gst/gstreamer-sections.txt: remove props
11685         * docs/gst/tmpl/gst.sgml:
11686         * docs/gst/tmpl/gstbin.sgml:
11687         * docs/gst/tmpl/gstbuffer.sgml:
11688         * docs/gst/tmpl/gstcaps.sgml:
11689         * docs/gst/tmpl/gstclock.sgml:
11690         * docs/gst/tmpl/gstelement.sgml:
11691         * docs/gst/tmpl/gstindex.sgml:
11692         * docs/gst/tmpl/gstobject.sgml:
11693         * docs/gst/tmpl/gstpad.sgml:
11694         * docs/gst/tmpl/gstpadtemplate.sgml:
11695         * docs/gst/tmpl/gstreamer-unused.sgml:
11696         * docs/gst/tmpl/gstthread.sgml:
11697         * docs/gst/tmpl/gstxml.sgml:
11698           sync with code reorganization
11699
11700 2004-01-07  Jan Schmidt  <thaytan@mad.scientist.com>
11701
11702         * gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
11703         Make the 'Could not find compatible pad' message more informative.
11704
11705 2004-01-07  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11706                                                                                 
11707         * gst/elements/gstfilesink.c: (gst_filesink_set_location):
11708           Fix for if we pass NULL as property to location.
11709         * gst/elements/gstpipefilter.c: (gst_pipefilter_init),
11710         (gst_pipefilter_handle_event), (gst_pipefilter_chain):
11711           Fix for instantiate-test (see below).
11712         * gst/gststructure.c: (_gst_structure_parse_value):
11713           Fix compile error on gcc-2.96.
11714         * configure.ac:
11715         * tests/Makefile.am:
11716         * tests/instantiate/Makefile.am:
11717         * tests/instantiate/create.c: (create_all_elements), (main):
11718           Add a test that instantiates all elements. This makes it easy to
11719           track dead code for old API/design (like setting event functions
11720           on sink pads and so on).
11721
11722 2004-01-06  Jan Schmidt  <thaytan@mad.scientist.com>
11723
11724         * gst/gstcaps.c: (gst_caps_append_structure):
11725           Move the poisoning to allow a NULL structure
11726         * gst/gstevent.c: (_gst_event_free):
11727           When freeing a navigation event, free the structure
11728           also
11729
11730 2004-01-04  David Schleef  <ds@schleef.org>
11731
11732         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11733         Remove usage of gst_pad_proxy_fixate.
11734         * gst/gstcaps.c: (gst_caps_append), (gst_caps_append_structure),
11735         (gst_caps_split_one), (gst_caps_replace):
11736         Add poisoning code.
11737         * gst/gstmarshal.list:
11738         Add pointer__pointer for fixate signal
11739         * gst/gstpad.c: (gst_real_pad_class_init),
11740         (_gst_real_pad_fixate_accumulator), (gst_pad_link_fixate),
11741         (_gst_pad_default_fixate_func), (gst_pad_proxy_fixate),
11742         (gst_pad_set_explicit_caps), (gst_pad_template_new):
11743         Add poisoning code. Add fixate signal on RealPad. Change
11744         set_explicit_caps() to take const GstCaps, like try_set_caps().
11745         * gst/gstpad.h:
11746         * testsuite/caps/Makefile.am:
11747         * testsuite/caps/app_fixate.c: Add a test for the fixate signal
11748
11749 2004-01-03  David Schleef  <ds@schleef.org>
11750
11751         * gst/elements/gsttypefindelement.c:
11752         (gst_type_find_element_have_type), (gst_type_find_element_init):
11753         Use gst_pad_use_explicit_caps for src pad.
11754         * gst/gstpad.c: (gst_pad_try_set_caps):  Check that link exists
11755         before using it.
11756
11757 2004-01-03  David Schleef  <ds@schleef.org>
11758
11759         * gst/gstelement.c: (gst_element_link_pads_filtered),
11760         (gst_element_negotiate_pads): Fix to allow DELAYED to indicate
11761         that linking was successful.
11762         * gst/gstpad.c: (gst_pad_link_free),
11763         (gst_pad_link_call_link_functions), (gst_pad_link_negotiate),
11764         (gst_pad_link_try), (gst_pad_link_unnegotiate),
11765         (gst_pad_unnegotiate), (gst_pad_set_explicit_caps): Pass
11766         GstPadLinkReturn correctly between functions, and don't fail
11767         when DELAYED is used (DELAYED is very important).  Better
11768         cleanup on unlinking and unnegotiation.  Should fix some spider
11769         bugs.
11770
11771 2004-01-02  David Schleef  <ds@schleef.org>
11772
11773         * gst/gstelement.c: (gst_element_class_init),
11774         (gst_element_base_class_init): ->padtemplates should be cleared
11775         in base_init, since we need to have a fresh list for every
11776         class.  (Alternately, we chould copy the list and share the
11777         actual pad templates (not the list), but that would require
11778         changing every plugin to move pad template registration from
11779         base_init to class_init.)
11780
11781 2004-01-03  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11782
11783         * gst/gstelement.c: (gst_element_class_add_pad_template):
11784           Refuse registering a pad template if another pad template
11785           with the same name already exists (#114715).
11786
11787 2004-01-02  David Schleef  <ds@schleef.org>
11788
11789         * gst/gstcaps.c: (_gst_structure_is_equal_foreach),
11790         (gst_caps_is_equal_fixed): Add new function.
11791         * gst/gstcaps.h: ditto.
11792         * gst/gstpad.c: (gst_real_pad_class_init),
11793         (gst_pad_link_call_link_functions), (gst_pad_try_set_caps),
11794         (gst_pad_set_explicit_caps), (gst_pad_get_caps):  In try_set_caps,
11795         check new caps against existing caps -- if they're the same, return
11796         OK without renegotiating.  caps-nego-failed signal fixed so that
11797         the marshaller isn't VOID__OBJECT.  Also changed to G_TYPE_POINTER
11798         to save an extra caps copy.  Don't complete negotiation if a pad
11799         link function returns DELAYED.
11800
11801 2004-01-02  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11802
11803         * gst/gstpad.c: (gst_pad_try_relink_filtered):
11804           Fix wrong g_return_if_fail
11805
11806 2004-01-03  Jan Schmidt  <thaytan@mad.scientist.com>
11807
11808         * gst/gstbin.c: (gst_bin_class_init):
11809         Change the marshalling of element_added/element_removed
11810         to use gst_marshal_VOID__OBJECT, since gst_marshal_VOID__POINTER 
11811         complains that GST_TYPE_ELEMENT is not G_TYPE_POINTER
11812
11813 2004-01-01  David Schleef  <ds@schleef.org>
11814
11815         * gst/gstpad.c: (gst_pad_set_explicit_caps),
11816         (gst_pad_explicit_getcaps), (gst_pad_explicit_link),
11817         (gst_pad_use_explicit_caps):
11818         * gst/gstpad.h:
11819         Add new functions.  gst_pad_use_explicit_caps() sets up a pad
11820         to use an internal getcaps and link fuction so that negotiation
11821         always results in the explicitly set caps.
11822         gst_pad_set_explicit_caps() sets the explicit caps.  These functions
11823         are particularly useful for decoders.
11824
11825 2003-12-31  David Schleef  <ds@schleef.org>
11826
11827         * gst/elements/gstidentity.c: (gst_identity_class_init),
11828         (gst_identity_init), (gst_identity_chain),
11829         (gst_identity_set_property), (gst_identity_get_property):
11830         * gst/elements/gstidentity.h:
11831         * gst/gstqueue.c: (gst_queue_init):
11832           Negotiation fixes.
11833
11834 2003-12-31  David Schleef  <ds@schleef.org>
11835
11836         * gst/gstcaps.c: (gst_caps_intersect),
11837         (_gst_caps_normalize_foreach), (gst_caps_normalize):
11838           Implement gst_caps_normalize().
11839         * testsuite/caps/normalisation.c: (main):
11840           Add an additional test
11841
11842 2003-12-31  Ronald Bultje  <rbultje@ronald.bitfreak.net>
11843
11844         * gst/gstqueue.c: (gst_queue_init):
11845           use gst_pad_proxy_getcaps()
11846
11847 2003-12-31  David Schleef  <ds@schleef.org>
11848
11849         * gst/elements/gstshaper.c: (gst_shaper_link):
11850         * gst/elements/gsttee.c: (gst_tee_init), (gst_tee_request_new_pad):
11851         * gst/gstqueue.c: (gst_queue_link):
11852           Negotiation fixes.
11853
11854 2003-12-31  David Schleef  <ds@schleef.org>
11855
11856         * gst/gstpad.c: (gst_pad_proxy_pad_link), (gst_pad_proxy_fixate):
11857         * gst/gstpad.h: Add functions that are useful as default pad
11858         link and fixate functions for elements.
11859
11860 2003-12-30  David Schleef  <ds@schleef.org>
11861
11862         * gst/gstpad.c: (gst_pad_link_try):
11863           Fix segfault when attempting to return to old caps
11864
11865 2003-12-29  David Schleef  <ds@schleef.org>
11866
11867         * gst/gstcaps.c: (gst_caps_normalize), (simplify_foreach),
11868         (gst_caps_structure_simplify), (gst_caps_simplify):
11869         * gst/gstcaps.h:
11870           Add simplify function
11871         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps),
11872         (gst_pad_perform_negotiate), (gst_pad_is_negotiated):
11873         * gst/gstpad.h:
11874           Copy over srcnotify, sinknotify when calling old pad_link
11875           functions.  Add new is_negotiated() function.
11876         * gst/gststructure.c: (gst_structure_copy):
11877           Fix an incredibly stupid bug that should have been noticed
11878           weeks ago.  _copy() returned the argument, not the new copy.
11879
11880 2003-12-27  Benjamin Otte  <in7y118@public.uni-hamburg.de>
11881
11882         * gst/gstcaps.c: (gst_caps_append):
11883           add sanity checks
11884         * gst/gstcaps.h: (gst_caps_debug):
11885           remove, it doesn't exist anymore.
11886         * gst/gstelement.c: (gst_element_threadsafe_properties_pre_run),
11887         (gst_element_threadsafe_properties_post_run):
11888           make debugging messages not clutter up THREAD debug category
11889         (gst_element_negotiate_pads), (gst_element_clear_pad_caps),
11890         (gst_element_change_state):
11891           update to new caps API
11892         * gst/gstinterface.c: (gst_implements_interface_cast):
11893           don't put vital code in g_return_if_fail
11894         * gst/gstpad.c: (gst_pad_link_try), (gst_pad_try_set_caps), 
11895         (gst_pad_link_filtered):
11896           add pst_pad_try_link and use it.
11897         (gst_pad_perform_negotiate), (gst_pad_renegotiate):
11898           implement correctly, deprecate first one.
11899         (gst_pad_link_unnegotiate), (gst_pad_unnegotiate):
11900           add and implement.
11901         (gst_pad_try_relink_filtered), (gst_pad_relink_filtered):
11902           implement.
11903         (gst_pad_get_negotiated_caps):
11904           add and implement. Make GST_PAD_CAPS call this function.
11905         (gst_pad_get_caps):
11906           remove unneeded check..
11907         (gst_pad_recover_caps_error):
11908           disable, always return FALSE.
11909         (gst_real_pad_dispose):
11910           don't free caps and appfilter anymore, they're unused.
11911         * gst/gstpad.h:
11912           Reflect changes mentioned above.
11913         * gst/gstsystemclock.c: (gst_system_clock_wait):
11914           Make 'clock is way behind' a debugging message.
11915         * gst/gstthread.c: (gst_thread_change_state):
11916           Fix debugging message
11917
11918 2003-12-25  Thomas Vander Stichele  <thomas at apestaart dot org>
11919
11920         * gst/gstinfo.h:
11921           fix GST_DEBUG_CATEGORY_INIT gtk-doc description
11922         * docs/gst/tmpl/gstreamer-unused.sgml:
11923           removed all traces of cvs conflicts
11924
11925 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11926
11927         * configure.ac:
11928         * gst/schedulers/cothreads_compat.h:
11929         * libs/Makefile.am:
11930           remove last instances of wingo cothread usage
11931
11932 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11933
11934         * gst/gstplugin.c:
11935         * gst/gstversion.h.in:
11936         * gst/parse/grammar.y:
11937           change comment block from /** to /* when not gtk-doc comments
11938
11939 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11940
11941         * gst/gst.c: whitespace and doc style fixes
11942
11943 2003-12-24  Thomas Vander Stichele  <thomas at apestaart dot org>
11944
11945         * gst/gstformat.h: remove trailing whitespace from enum for gtk-doc
11946
11947 2003-12-24  Colin Walters  <walters@verbum.org>
11948
11949         * gst/elements/gsttypefindelement.c:
11950           gst/elements/gsttypefindelement.h: Make GstCaps parameter const.
11951           Copy caps parameter. Use _POINTER to marshal caps instead of _BOXED.
11952           Don't double-free caps.
11953
11954 2003-12-23  David Schleef  <ds@schleef.org>
11955
11956         * gst/gstelement.c, gst/gstpad.c, gst/parse/grammar.y,
11957           gst/gstcaps.c, gst/autoplug/gstspideridentity.c:
11958           Many little fixes and additions of debug statements to
11959           get rhythmbox working.
11960
11961 2003-12-23  Colin Walters  <walters@verbum.org>
11962
11963         * gst/autoplug/gstspideridentity.c (gst_spider_identity_sink_loop_type_finding):
11964         Use GST_PAD_LINK_SUCCESSFUL.
11965
11966 2003-12-23  David Schleef  <ds@schleef.org>
11967
11968         * gst/elements/gstaggregator.c:
11969         * gst/elements/gsttee.c:
11970           Use gst_pad_proxy_getcaps().
11971         * gst/gstpad.c:
11972         * gst/gstpad.h:
11973           Add gst_pad_proxy_getcaps(), which filter elements can use
11974           as a generic getcaps implementation.
11975           Fix gst_pad_get_allowed_caps().  It just wasn't doing what
11976           was advertised.
11977
11978 2003-12-23  David Schleef  <ds@schleef.org>
11979
11980         * gst/gstpad.c:
11981           Rearrange/rewrite much of the pad negotiation code, since it
11982           resembled pasta.  This actually changes the way some
11983           negotiation works, since the previous code was inconsistent
11984           depending on how it was invoked.  Add (internal) structure
11985           GstPadLink, which is used to hold some information (more in
11986           the future) about the link between two pads.  Fixes a number
11987           of bugs, including random lossage of filter caps when the
11988           initial negotiation is delayed.  A few functions are still
11989           unimplemented.
11990         * gst/gstpad.h:
11991           Add GST_PAD_LINK_{SUCESSFUL|FAILED}() macros.  Please use
11992           these when testing GstPadLinkReturn values instead of comparing
11993           directly.
11994
11995 2003-12-23  David Schleef  <ds@schleef.org>
11996
11997         * gst/gstvalue.c: 
11998         * gst/gstvalue.h:
11999           Rearrange lots of code.  Change registration of compare function
12000           into registration of compare/serialize/deserialize functions.
12001           Doesn't include implementation of gst_value_[de]serialize(),
12002           but that should be easy.
12003
12004 2003-12-23  Thomas Vander Stichele  <thomas at apestaart dot org>
12005
12006         * docs/gst/gstreamer-sections.txt:
12007         * docs/gst/tmpl/gstprops.sgml: removed
12008         * docs/gst/tmpl/gstreamer-bufferpool.sgml: removed
12009           David removed props and caps code, so let's remove their docs as well.
12010           Removed all no longer existing symbols from gstreamer-sections.txt
12011           
12012 2003-12-22  Colin Walters  <walters@verbum.org>
12013
12014         * gst/gsttaginterface.c, gst/gsttaginterface.h,
12015           gst/gsttag.c, gst/gsttag.h:  Add interface to setting GValues
12016           of tags directly.
12017
12018 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12019
12020         * gst/elements/gstelements.c:
12021           Set ranks of elements to NONE, so the autoplugger doesn't use them.
12022         * gst/elements/gstshaper.c: (gst_shaper_getcaps):
12023           Fix proxying to new CAPS stuff. Don't call get_allowed_caps but
12024           gst_caps (peer).
12025
12026 2003-12-22  Benjamin Otte  <in7y118@public.uni-hamburg.de>
12027
12028         * gst/autoplug/gstsearchfuncs.c: (gst_autoplug_caps_intersect):
12029         * gst/autoplug/gstspideridentity.c: (gst_spider_identity_link),
12030         (gst_spider_identity_getcaps), (gst_spider_identity_change_state),
12031         (gst_spider_identity_sink_loop_type_finding):
12032         * gst/autoplug/gstspideridentity.h:
12033           Fix autoplugging in spider element, so it works with new caps.
12034           This was mainly caused by identifying empty caps incorrectly.
12035
12036 2003-12-22  David Schleef  <ds@schleef.org>
12037
12038         * gststructure.c, gstvalue.c, gstvalue.h: Add
12039           gst_value_init_and_copy() and use it, to avoid silly mistakes in
12040           using g_value_copy()
12041
12042 2003-12-21  David Schleef  <ds@schleef.org>
12043
12044         * many, many files: Merge CAPS branch.  This includes:
12045           - implemention of GstValue and several GstValue types
12046           - implemention of GstStructure
12047           - entire rewrite of GstCaps
12048           - removal of GstProps
12049           - many changes to GstPad to compensate for new caps paradigm
12050           - removal of GstBufferpool
12051         * gst/Makefile.am, gst/gst.h, gst/gstpad.h, gst/gsttypefind.h,
12052         gstvalue.h, gst/gstcaps[2]*.[ch]:
12053           - rename gstcaps2.[ch] to gstcaps.[ch]
12054
12055 2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>
12056
12057         * gst/gstqueue.c: (gst_queue_handle_pending_events),
12058         (gst_queue_chain), (gst_queue_handle_src_event):
12059           implement timeout for sending events. Workaround for if the
12060           pipeline on this queue is not passing any data.
12061
12062 2003-12-21  Ronald Bultje <rbultje@ronald.bitfreak.net>
12063                                                                                 
12064         * ChangeLog: moved to gstreamer/docs/random/old/ChangeLog.gstreamer
12065         * moved CVS to freedesktop.org
12066